9.5. Uso de GDB para interceptar las llamadas del sistema de la aplicación
El depurador de GNU (GDB) le permite detener una ejecución en varias situaciones que surgen durante la ejecución del programa. Para detener la ejecución cuando el programa realiza una llamada al sistema, utilice un GDB catchpoint.
Requisitos previos
Procedimiento
Establece el punto de captura:
(gdb) catch syscall syscall-name
(gdb) catch syscall syscall-nameCopy to Clipboard Copied! Toggle word wrap Toggle overflow El comando
catch syscallestablece un tipo especial de punto de interrupción que detiene la ejecución cuando el programa realiza una llamada al sistema.La opción
syscall-nameespecifica el nombre de la llamada. Puede especificar varios puntos de captura para varias llamadas al sistema. Si se omite la opciónsyscall-namehace que GDB se detenga en cualquier llamada al sistema.Iniciar la ejecución del programa.
Si el programa no ha iniciado su ejecución, inícielo:
(gdb) r
(gdb) rCopy to Clipboard Copied! Toggle word wrap Toggle overflow Si la ejecución del programa se detiene, reanúdela:
(gdb) c
(gdb) cCopy to Clipboard Copied! Toggle word wrap Toggle overflow
- GDB detiene la ejecución después de que el programa realice cualquier llamada al sistema especificada.
Recursos adicionales