DTrace
作者Bryan Cantrill
在2015
年4
月6
日参加了reddit
的AMA
访谈,感兴趣的朋友可以关注一下。我也问了两个和DTrace
相关的问题:
(1)如何看待DTrace
的前景?会不会有新feature
加入DTrace
?如何看待Oracle
把DTrace
移植到Linux
?
[……]
Adam Leventhal
在github
上建立了一个dtrace-example
项目,介绍如何使用DTrace
的API
做一个单独的trace
工具。在这篇文章里,我就对这个项目的源码做一个简单的分析。
dtrace-example.c
包含了4
个函数,其中最主要的是main
函数,代码如下:
i[......]
上个月的DTrace mailing list
里,有人问到,在DTrace
的教程里,总被提到的“Per CPU
”到底指的是什么?对此问题,Robert Mustacchi
给出的解释是指一个“logic CPU
”。我们知道,现在CPU
早已经进入多核时代,一颗“Physical CPU
”可以包含多个co[......]
昨天看到Adam
发的推特:“hoping for DTrace in the next Red Star OS update!
”,我就在想:如果想把DTrace
移植到一个新的操作系统上,从哪里获得DTrace
的源码包呢?现在Mac OS X
,FreeBSD
都有DTrace
了,难道从这些系统上fork[......]
一直以来没太注意“arg0...arg9
”和args[]
之间的区别,基本就是混用。前几天在调试一个DTrace
脚本时,才注意起来,也在DTrace
的mailing list
里讨论了一下。以下就是我做的一些总结:
(1) “arg0...arg9
”是64位整数类型。如果probe
有参数,都可以通过“[……]