【问题标题】:How can I know what built-in functions does the DTrace provide?我如何知道 DTrace 提供了哪些内置函数?
【发布时间】:2014-04-04 08:15:17
【问题描述】:

众所周知,在不同操作系统上运行的 DTrace 提供了不同的内置功能。例如,Solaris 的旧版本在 DTrace 中没有可用的inet_ntop()

那么当我编写一个运行在特殊操作系统上的 DTrace 脚本时,我如何才能提前知道 DTrace 提供了哪些内置函数呢?还是只能通过运行脚本并检查 DTrace 的投诉?

【问题讨论】:

    标签: dtrace


    【解决方案1】:

    最好的解决方案是参考相关操作系统版本的 DTrace 文档。对于 Solaris,新的 DTrace 功能几乎总是只出现在主要版本或更新中,并且文档同时(或应该)更新。因此,如果您运行的是 Solaris 11.1,那么您应该查阅“Oracle Solaris 11.1 动态跟踪指南”。

    Solaris 的 dtrace(1) 没有“显示当前支持的操作”选项,但您可以考虑记录 RFE。

    如果您编写的脚本需要特定版本的 DTrace 实现,则可以使用 option or pragma 绑定到它。这种机制应该存在于其他 DTrace 实现中,但任何特定版本号的含义对于每个分支都将不同。因此,一如既往,最好依靠文档。

    【讨论】:

      【解决方案2】:

      如果您想获取各种 Dtrace 模块公开的函数列表,可以使用dtrace -l

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-01-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-11-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多