linux应用程序调试的基石-ptrace
ptrace是process和trace的简写,直译为进程的跟踪。它是操作系统提供给应用程序调试器诸于gdb,strace的系统调用接口(API)。 具体过程为: 父进程首先进行fork调用,并在子进程中执行Ptrace函数,将PTRACE_TRACEME赋值给request形参,紧接着在子进程中执行exec调用完后。将控制权交给父进程,通过使用PTRACE_ATTACH,父进程开始跟踪子进程,每一次被跟踪的子进程都会向父进程发送一个信号。父进程可以忽略掉大部分信号,仅有的一个
复制链接