Programação sem libc: Dominando chamadas de sistema Linux com strace
O autor recentemente se aventurou a construir software sem a libc para obter uma compreensão mais profunda das chamadas de sistema Linux e de seus mecanismos internos. Isso envolveu a criação de um shell mínimo, um jogo de Snake, um servidor HTTP em assembly puro ARM64 e uma implementação de threads. A depuração dependia muito do strace, e o artigo detalha várias opções e sinalizadores úteis do strace. Esses vão desde o rastreamento de processos filhos e a impressão de informações detalhadas da estrutura até o rastreamento seletivo de chamadas de sistema e até mesmo a injeção de erros de chamada de sistema para fins de depuração. Isso fornece insights valiosos sobre técnicas avançadas de programação e depuração de sistemas Linux.