两个进程可以通过跟踪附加到同一个 PID 吗?
Can two process attach to same PID via ptrace
所以,标题说明了一切。
一个进程是否有可能有两个示踪剂?
我正在玩 ptrace,我可以看到每当有人附加到进程时,在 TracerPID 下的/proc//status 中将是跟踪器的 PID。但是,是否可以有两个示踪剂?
我有两个程序(跟踪器和跟踪(。我在调试模式下运行跟踪,然后我运行跟踪器,并得到错误操作不允许(即使具有root权限(。
问候 戈洛比奇
他们不能。在 ptrace 手册页中间接确认:
EPERM The specified process cannot be traced. This could be because
the tracer has insufficient privileges (the required capability
is CAP_SYS_PTRACE); unprivileged processes cannot trace pro‐
cesses that they cannot send signals to or those running set-
user-ID/set-group-ID programs, for obvious reasons. Alterna‐
tively, the process may already be being traced, or (on kernels
before 2.6.26) be init(1) (PID 1).
相关文章:
- 为什么std::async使用同一个线程运行函数
- 使用 VID、PID、+SN 查找 USB 端口号
- 多个"常量引用"变量可以共享同一个内存吗?
- 对于四轴飞行器,PID中I控制器的理想值应该是多少
- 在什么情况下,两个堆栈分配的结构对象的 this 点指向同一个地址?
- 为什么同一个变量的内存地址不同?
- 在 fork() 之后,我在我的程序中不断得到相同的 pid
- 两个进程可以通过跟踪附加到同一个 PID 吗?
- 如何在同一个 CMAKE 项目中强制链接到共享库?
- 是否可以在文本文件中找到最长单词的长度,并在同一个文本文件中读取,只需 1 个 while 循环?
- 是否可以使用非常量指针调用非常量函数,以及当两个unique_ptrs指向同一个对象时程序的行为方式?
- 如何获取进程的整数PID?
- 不同C++文件中未命名命名空间中的名称可以引用同一个命名事物吗?
- 我应该如何使用 epoll 从同一个 FD 读取和写入
- cuda:多个线程访问同一个全局变量
- 两个抽象类,派生自同一个基类.如何访问从一个抽象类到另一个抽象类的指针
- 如何将不同的函数签名映射到同一个 std::map?
- 多个线程可以读取同一个类成员变量吗?
- 如果我使用同一个密钥推送用户数据两次,会发生什么
- 多个孩子的pid脱离了同一个父母