21
A
回答
7
ptrace()
的细节是OS特有的。
在Linux上,孩子可能会要求其父母跟踪ptrace(PTRACE_TRACEME, ...)
;但是,或者,一个进程可能会自己附加到另一个进程ptrace(PTRACE_ATTACH, ...)
。
请参阅Linux ptrace(2)
man page(如果您确实需要详细信息,请参阅strace
source以及内核源代码,从kernel/ptrace.c
开始)。
26
strace -p <PID>
---->附加进程到strace。 “-p”选项是PID的过程。
strace -e trace=read,write -p <PID>
- >由此,您还可以跟踪事件的进程/程序,如读取和写入(在此示例中)。所以在这里它将打印所有这些事件,包括进程读写系统调用。
其它此类实例
-e trace= network (Trace all the network related system calls.)
-e trace=signal (Trace all signal related system calls.)
-e trace=ipc (Trace all IPC related system calls.)
-e trace=desc (Trace all file descriptor related system calls.)
-e trace=memory (Trace all memory mapping related system calls.)
等等..
跟踪是的,你可以用-e选项使用许多选项之一。
按Ctrl-C通过strace进行abbort跟踪。
检查HELP通过详细信息输入strace -h
和人页节小结上strace的。
注意:被跟踪的过程运行缓慢。
相关问题
- 1. Java守护进程并连接到已经运行的实例
- 2. 的WriteLine到已经运行的进程
- 3. 如何在连接到进程时退出strace?
- 4. Erlang - 连接到已经运行的外部程序?
- 5. 监视已经运行的进程
- 6. 如何把一个已经运行的子进程下的nohup
- 7. 脚本调试程序无法连接到目标进程。 Adebugger已经连接
- 8. 如何知道连接是否已经进行
- 9. 如何调试你已经连接到的进程引用的dll
- 10. 从已经运行的进程中创建子进程对象
- 11. 是否可以附加到已经运行的gdb进程?
- 12. 在linux下Qt如何检测进程已经在运行?
- 13. 如何知道进程已经运行了多长时间?
- 14. 你如何获得一个进程已经运行了多久?
- 15. 如何连接到进程
- 16. Dropzone.js已经连接
- 17. 无法对正在运行的JBoss进程执行“strace -p”
- 18. 如何在连接到Visual Studio 2008中已经运行的程序时找到PDB文件?
- 19. 运行配置 - 无法连接到运行时进程
- 20. 如何将java类与已运行的守护程序连接
- 21. Java kill程序如果已经运行
- 22. 如何在阴影根已经连接
- 23. 检查如果PHP进程已经运行
- 24. 如果进程已经运行,终止bash脚本
- 25. Null异常如果进程已经在运行
- 26. 如果我已经连接到服务器。那么我如何显示异常说它已经连接
- 27. 长时间运行的进程调试。 Strace,brk
- 28. 如何使用strace跟踪子进程?
- 29. 改变已经运行的进程的信号配置(SIGHUP)
- 30. linux:获取已经运行的进程的umask?