【发布时间】:2021-11-04 07:06:26
【问题描述】:
我知道 tracee 调用 ptrace(TRACEME) 的行为。但是 TRACE_ATTACH 行为呢? 这是我的猜测:
- tracer 发送 SIGSTOP 给 tracee,tracee SIGSTOP-handler 函数将自己标记为 TRACED(但是如何?为什么它知道被跟踪)然后发送 SIGTRAP 给自己,SIGTRAP-handler 发送 SIGCHLD 给 tracer 然后暂停自己。 或
- tracer 将 SIGSTOP 发送给 tracee,tracee SIGSTOP-handler 函数将自己标记为 TRACED(也如何?)然后将 SIGCHLD 发送给 tracer 并暂停其efl。
【问题讨论】: