首页> 外文会议>IEEE Real-Time Systems Symposium >From Code to Weakly Hard Constraints: A Pragmatic End-to-End Toolchain for Timed C
【24h】

From Code to Weakly Hard Constraints: A Pragmatic End-to-End Toolchain for Timed C

机译:从代码到弱硬约束:定时C的实用端到端工具链

获取原文

摘要

Complex real-time systems are traditionally developed in several disjoint steps: (i) decomposition of applications into sets of recurrent tasks, (ii) worst-case execution time estimation, and (iii) schedulability analysis. Each step is already in itself complex and error-prone, and the composition of all three poses a nontrivial integration problem. In particular, it is challenging to obtain an end-to-end analysis of timing properties of the whole system due to practical differences between the interfaces of tools for extracting task models, execution time analysis, and schedulability tests. To address this problem, we propose a seamless and pragmatic end-to-end compilation and timing analysis toolchain, where source programs are written in a real-time extension of C, called Timed C. The toolchain automatically translates timing primitives into executable code, measures execution times, and verifies temporal correctness using an extended schedulability test for non-preemptive generalized multiframe task sets. Novel aspects of our approach are: (i) both soft and firm tasks can be expressed at the programming language level and stated timing requirements are automatically verified by the schedulability test, and (ii) the schedulability test outputs per-job response-time information that enables a new approach to sensitivity analysis. Specifically, we perform a weakly hard sensitivity analysis that determines the worst-case execution time margins for the strongest still-satisfied (M,K) constraint, where M = m1 +...+ mN denotes the number of deadline misses across the entire task set, and K = {k1,..., kN} is the set of windows of interest of the different tasks. The toolchain is implemented as a source-to-source compiler, freely available as open source, and conveniently distributed as a Docker container.
机译:传统上,复杂的实时系统是通过几个不连贯的步骤开发的:(i)将应用程序分解为一组循环任务;(ii)最坏情况下的执行时间估计;以及(iii)可调度性分析。每个步骤本身就已经很复杂且容易出错,而这三个步骤的组合构成了一个不重要的集成问题。特别是,由于提取任务模型的工具,执行时间分析和可调度性测试的工具的界面之间存在实际差异,因此要获得整个系统的定时特性的端到端分析是一项挑战。为了解决这个问题,我们提出了一种无缝且实用的端到端编译和时序分析工具链,其中源程序是使用C的实时扩展名Timed C编写的。该工具链会自动将时序原语转换为可执行代码,测量执行时间,并使用扩展的可计划性测试针对非抢先的广义多帧任务集验证时间正确性。我们的方法的新颖方面是:(i)可以在编程语言级别上表达软任务和公司任务,并且可调度性测试会自动验证规定的计时要求,以及(ii)可调度性测试输出每个作业的响应时间信息这为敏感性分析提供了一种新方法。具体来说,我们执行弱硬敏感性分析,确定最强仍满足(M,K)约束的最坏情况执行时间裕度,其中M = m 1 + ... +米 N 表示整个任务集中错过最后期限的次数,并且K = {k 1 ,...,k N }是不同任务感兴趣的窗口集。该工具链实现为从源到源的编译器,可作为开放源代码免费提供,并作为Docker容器方便地分发。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号