从 C 程序访问 dtrace 探针
Posted
技术标签:
【中文标题】从 C 程序访问 dtrace 探针【英文标题】:Access dtrace probe from C program 【发布时间】:2012-10-06 19:54:01 【问题描述】:runocc.d dtrace 脚本可以打印每个处理器的运行队列。我需要在 Mac OS X 上的 C++ 程序中获取运行队列长度。是否有可能以某种方式将 dtrace 构造嵌入到 C++ 程序中?
【问题讨论】:
【参考方案1】:好的,发现有dtrace API,虽然它是“私有的”和“不稳定的”,而且你似乎不能只要求一次探测的值——你需要开始监控,然后定期轮询探测。由于这不是我们项目中的最高优先级,我不会立即尝试,但很高兴知道它存在 - http://www.osdevcon.org/2008/files/osdevcon2008-petr.pdf
还快速检查确认有一个文件 /usr/include/dtrace.h 并且它确实具有 PDF 中提到的功能。
【讨论】:
以上是关于从 C 程序访问 dtrace 探针的主要内容,如果未能解决你的问题,请参考以下文章
Leopard 上的 DTrace:没有指定探针,即使我指定了探针