如何在Mac OS X上获取最近N次系统调用的列表?

时间:2015-11-21 14:00:24

标签: macos system-calls

我需要一种方法来从内核获取最后发生的系统调用。 内核是否保留了这样的日志?

这应该是可能的,但它可能比值得更复杂。

欢迎任何想法。编程语言并不重要。任何Unix的想法都应该做,因为它可能会将它应用到Mac OS X.

编辑:

几分钟前我发现了dtruss内置的shell脚本实际上做了我需要的东西,但是我想直接从Python或其他一些我可以用Python调用的编程语言来做这个。

我认为管道不足以提高效率。有谁知道dtruss的源代码是否存在于某处?或者至少是strace,如果我做对了,在Linux上做同样的事情?

2 个答案:

答案 0 :(得分:2)

dtruss是dtrace的一部分,可以从Apple open source获得。 HTH

答案 1 :(得分:0)

您可以使用history命令获取从上次终端重启时输入的所有命令。

您可以将其与history | grep ssh一起使用,以使用ssh

输入所有命令