跟踪 - ikarishinjieva/unixV6-code-analyze-chs GitHub Wiki
- 跟踪原理如图
- 1] 子进程 调用 ptrace(0,0,0,0),提出跟踪许可,允许父进程跟踪,子进程继续运行
- 2] 到了 子进程 检测信号的时机,子进程开始处理跟踪,调用stop
- 3] stop
- 4] 子进程 暂停,置SSTOP,等待切换到父进程
- 5] 父进程 调用 ptrace(0,0,0,0),向子进程提出跟踪要求
- 6] 父进程 进入睡眠,等待子进程处理跟踪要求
- 7] 子进程 procxmt 处理跟踪要求
唤醒父进程,等待父进程响应 - 从3] - 7],构成 一个跟踪过程,不断循环