9.5. Usando a GDB para interceptar chamadas de sistema de aplicação
O GNU Debugger (GDB) permite interromper uma execução em várias situações que surgem durante a execução do programa. Para interromper a execução quando o programa executa uma chamada ao sistema, use um GDB catchpoint.
Pré-requisitos
Procedimento
Defina o ponto de captação:
(gdb) catch syscall syscall-name
O comando
catch syscall
define um tipo especial de ponto de parada que interrompe a execução quando o programa executa uma chamada ao sistema.O
syscall-name
especifica o nome da chamada. Você pode especificar vários pontos de captura para várias chamadas de sistema. Deixando de fora osyscall-name
faz com que a GDB pare em qualquer chamada ao sistema.Iniciar a execução do programa.
Se o programa ainda não começou a ser executado, inicie-o:
(gdb) r
Se a execução do programa for interrompida, retomá-la:
(gdb) c
- A GDB suspende a execução depois que o programa executa qualquer chamada de sistema especificada.
Recursos adicionais