【发布时间】:2015-04-22 17:26:57
【问题描述】:
在 Linux x86_64 上,当我使用 ptrace 停止进程时,会保存所有线程的 CPU 上下文,还是只保存进程的 CPU 上下文?
上下文是在进程的用户空间堆栈还是内核堆栈上?或者别的地方?还是多份?
对于其他情况(不是 ptrace),中断(包括异常和系统调用)的 CPU 上下文、内核堆栈、用户空间堆栈或其他位置可以保存在哪里?
ptrace 是中断吗?
更新
看来,ptrace的上下文pt_regs_x86_t,保存在哪里是程序员自己决定的。但是内核是否也会为中断的上下文存储一份副本?
【问题讨论】:
标签: linux exception linux-kernel interrupt ptrace