WCET分析技术详解
1. WCET分析方法概述
WCET(Worst-Case Execution Time,最坏情况执行时间)估计方法主要根据任务是被执行还是被静态分析来进行分类,主要有以下三种方法:
- 基于测量的方法 :该方法在给定硬件或模拟器上执行任务并测量执行时间。需提供有代表性的输入数据集,以覆盖能测量到最大程序执行时间的场景。但它存在两个主要缺点:一是不安全,因为导致最坏情况行为的程序输入通常未知,要保证测量到WCET,需用所有可能的输入值执行程序,这在实际中不可行;二是测量常需对代码进行插桩,如添加控制硬件定时器的指令,而安全关键系统的认证通常要求在与最终产品完全相同的代码上进行验证,所以该方法在某些环境中不适用。不过,由于待分析的硬件或相应模拟器通常可用,基于测量的方法目前是工业界最常用的技术,但因无法保证测量到最大程序运行时间,会在测量执行时间上加安全余量,这常导致高度高估的计时结果。
- 静态方法 :强调安全性,能产生程序执行时间的边界,保证分析程序的执行时间不会超过该边界。与基于测量的方法不同,它考虑任务的所有可能输入值,使用安全抽象减少大量可能输入数据以降低分析复杂度,且不实际执行代码,而是分析程序的可能控制流路径,利用硬件架构的抽象模型确定执行时间最长的路径,即最坏情况执行路径(WCEP),其长度对应程序的WCET。该方法的成功高度依赖抽象硬件模型,若模型正确且精确描述底层系统,可定义程序执行时间的安全上限,但验证抽象模型的正确性通常较难。此外,若分析中因信息不足做出保守决策,可能产生高估结果,分析大型程序时复杂度也是问题,会导致较长的分析运行时间。目前,静态方法主要在学术界使用,但工业界也逐渐
超级会员免费看
订阅专栏 解锁全文
409

被折叠的 条评论
为什么被折叠?



