术语“仪表”是什么意思?

时间:2012-01-06 08:29:40

标签: instrumentation

正如标题所暗示的那样。许多解释都很模糊,任何人都可以提供更加可靠的定义吗?

该术语在Android测试中经常使用,但我不认为它仅限于该平台。

4 个答案:

答案 0 :(得分:13)

一些性能测量工具会为代码添加工具。例如。它们可以进行二进制转换,并添加指令以在函数的开头和结尾读取定时器。或者,这种读取定时器的工具可以通过自动化工具或程序员添加到汇编或C代码中。

其他性能测量工具不会更改正在测量的代码。例如。 UNIX prof采样运行在定时器中断时调用的特殊代码,该代码中断生成接收中断的指令的直方图。

有些工具是混合的:例如UNIX gprof将prof风格的中断采样与编译器添加的mcount检测结合起来,使用-pg选项来计算哪些函数相互调用。

所有性能测量都有开销,但是仪器往往比基于中断的采样有更多的开销。另一方面,仪器可以测量更多的东西。

答案 1 :(得分:7)

好吧,我visited this link并且说:

  

在计算机编程的背景下,仪器指的是监控或测量产品性能水平,诊断错误和编写跟踪信息的能力。程序员以代码指令的形式实现仪器监视系统中的特定组件(例如,指令可能会输出记录信息以显示在屏幕上)。当应用程序包含检测代码时,可以使用管理工具对其进行管理。必须使用仪器来检查应用程序的性能。仪表方法可以有两种类型,源仪器和二进制仪表。

快乐编码

答案 2 :(得分:3)

仪器通常用于动态代码分析。

它与日志不同,因为仪器通常由软件自动完成,而日志记录需要人工智能来插入日志代码。

Source

答案 3 :(得分:3)

根据Oracle

  

Instrumentation是为方法添加字节码   收集数据以供工具使用的目的。自改变以来   纯粹是添加剂,这些工具不会修改应用程序状态或   行为。此类良性工具的示例包括监控代理,   分析器,覆盖分析器和事件记录器。