Solaris 动态跟踪指南

词汇表

action(操作)

由 DTrace 框架实现的行为,可在触发探测器时执行,用于跟踪 DTrace 外部的数据或修改系统状态。操作包括跟踪数据、停止进程、捕获堆栈跟踪以及其他内容。

aggregation(聚合)

一个对象,用于存储第 9 章中正式定义的聚合函数的结果,由可用于组织结果的表达式元组建立索引。

clause(子句)

一种 D 程序声明,其中包含探测器说明符列表、可选谓词以及由大括号 { } 括起的可选操作语句列表。

consumer(使用者)

一种使用 DTrace 来启用检测过程并读出产生的跟踪数据流的程序。dtrace 命令为标准的 DTrace 使用者;lockstat(1M) 实用程序为另外一个专用的 DTrace 使用者。

DTrace

一种动态跟踪工具,用于为任意问题提供简明回答。

enabling(启用项)

一组已启用的探测器以及与其关联的谓词和操作。

predicate(谓词)

一个逻辑表达式,用于确定在触发探测器时是否应执行一组跟踪操作。每条 D 程序子句都可以包含一个与其关联的谓词,该谓词应放在斜杠 / / 中。

probe(探测器)

系统中的位置或活动,DTrace 可以将包括谓词和操作的检测过程动态地绑定到这些位置或活动中。每个探测器都通过一个元组命名,指示其提供器、模块、函数和语义名称。探测器可以固定到特定模块和函数,或者,如果探测器(如 profile 计时器)与任何特定程序位置都没有关联,则为不固定

provider(提供器)

一个内核模块,用于代表 DTrace 框架实现特定类型的检测过程。提供器可导出探测器的名称空间及其名称和数据语义的稳定性矩阵,如本书各章中所述。

subroutine(子例程)

由 DTrace 框架实现的行为,可在触发探测器时执行,用于修改内部 DTrace 状态,但不跟踪任何数据。与操作类似,使用 D 函数调用语法请求子例程。

translator(转换器)

一种 D 赋值语句集合,用于将特定受检测子系统的实现详细信息转换为 struct 类型的对象,以构成比输入表达式更稳定的接口。