主要内容

插装代码分析器

插装代码分析器,代码添加到生成的代码来记录每个任务的起始和终止时间执行的处理器。每个任务的起始和终止时间记录发送到开发计算机得救,处理和显示。每个任务的瞬时状态被推断出从起始和终止时间和优先级进程内的所有任务。

考虑一个简单的模型有两个任务,一个高和低优先级嵌入式处理器上执行和衡量一个代码分析器工具。这个图表显示了测量仪器的代码分析器和个人任务状态上的推理结果从这些测量。

检查图,它显示了低优先级任务的状态推断从高优先级任务的执行。因为只有任务执行的开始和结束时间测量,一些相关的数据可能会丢失,特别是内核延迟。作为内核延迟开始之前的任务,中断事件的实际时间是不能直接观察和任务的开始时间可以认为是延迟的实际时间中断。此外,当一个任务抢占的运行状态,内核延迟添加到解释低优先级任务的执行时间。

从简单的生成和部署代码仪器分析好处。在模型部署到处理器和操作系统上运行一个进程在一个单一的任务模式,任务执行时间的测量是用足够的准确度和精密度。因为只有少量的代码记录任务的起始和终止时间添加到每个任务,任务执行时间的影响通过插装代码分析器,心底的情况下,可以被认为是可以忽略的。

限制

仪器分析提供了轻量级的测量工具生成的代码。然而,测量时必须考虑两个限制任务执行和持续时间乘以使用仪器的代码分析器。这些限制如下:

  • 不能测量内核延迟或组件的内核延迟。内核延迟通常可以被视为一个常数。作为内核延迟影响所有任务启动时间和大致相等的效果,估计内核的延迟可以推导出仿真比较任务计时。有关内核延迟的更多信息,请参阅内核延迟

  • 不能捕获效应从内部发出的命令操作系统内核任务使用自定义代码块。插装代码分析器记录开始时间,结束时间,抢占一个任务的其他任务。然而,当任务调用操作系统内核,插装代码分析器不记录的变化控制任务和内核之间抢占。内核调用,没有时间的详细知识,可视为非确定性,测量任务持续时间不能可靠地测量使用这种类型的分析器。任务持续时间的更多信息,请参阅任务持续时间

另请参阅

相关的话题