监控流程(一切)

时间:2012-06-26 21:46:17

标签: c++ linux process monitor

我想监视一个进程及其所做的一切(每个信号都给SIGINT提供了什么)。

有没有这样做?

我正在使用Linux(确切地说是Ubuntu 11)

2 个答案:

答案 0 :(得分:1)

如果您正在寻找命令行监控,strace unix命令将完成所有这些操作。

它使用ptrace系统调用基础架构进行监控,这本身就更加强大:另外还允许控制流程并与流程进行交互。引用维基百科:

  

ptrace由调试器(例如gdb和dbx),跟踪strace和ltrace等工具以及代码覆盖工具使用。专业程序还使用ptrace来修补正在运行的程序,以避免未修复的错误或克服安全功能。它还可以用作沙箱和运行时环境模拟器(如模拟非root软件的root访问权限)。

如果你想以编程方式而不是命令行进行监控,那么ptrace就是你的解决方案。

答案 1 :(得分:0)

strace应该有效,或该页面上“其他工具”部分列出的内容。