首页> 外文会议>ACM SIGPLAN workshop on languages, compilers, and tools for embedded systems >Approximation of Worst-Case Execution Time for Preemptive Multitasking Systems
【24h】

Approximation of Worst-Case Execution Time for Preemptive Multitasking Systems

机译:抢占式多任务系统的最坏情况执行时间的近似

获取原文

摘要

The control system of many complex mechatronic products requires for each task the Worst Case Execution Time (WCET), which is needed for the scheduler's admission tests and subsequently limits a task's execution time during operation. If a task exceeds the WCET, this situation is detected and either a handler is invoked or control is transferred to a human operator. Such control systems usually support preemptive multitasking, and if an object-oriented programming language (e.g., Java, C++, Oberon) is used, then the system may also provide dynamic loading and unloading of software components (modules). Only modern, state-of-the art microprocessors can provide the necessary compute cycles, but this combination of features (preemption, dynamic un/loading of modules, advanced processors) creates unique challenges when estimating the WCET. Preemption makes it difficult to take the state of the caches and pipelines into account when determining the WCET, yet for modern processors, a WCET based on worst-case assumptions about caches and pipelines is too large to be useful, especially for big and complex real-time products. Since modules can be loaded and unloaded, each task must be analyzed in isolation, without explicit reference to other tasks that may execute concurrently. To obtain a realistic estimate of a task's execution time, we use static analysis of the source code combined with information about the task's runtime behavior. Runtime information is gathered by the performance monitor that is included in the processor's hardware implementation. Our predictor is able to compute a good estimation of the WCET even for complex tasks that contain a lot of dynamic cache usage, and its requirements are met by today's performance monitoring hardware. The paper includes data to evaluate the effectiveness of the proposed technique for a number of robotics control kernels that are written in an object-oriented programming language and execute on a PowerPC 604e-based system.
机译:许多复杂机电产品的控制系统需要每个任务所需的最坏情况执行时间(WCET),所以调度程序的准入测试需要,并且随后在操作期间限制任务的执行时间。如果任务超过WCET,则检测到这种情况,并调用处理程序或将控制传输到人类运营商。这种控制系统通常支持抢占式多任务处理,如果使用面向对象的编程语言(例如,Java,C ++,Oberon),则系统还可以提供动态加载和卸载软件组件(模块)。只有现代的最先进的微处理器可以提供必要的计算周期,但这种功能组合(抢占,动态UN /模块,高级处理器)在估计WCET时会产生独特的挑战。在确定WCET时,抢占使高速缓存和管道的状态难以考虑到现代处理器的WCET,这是一个基于关于高速缓存和管道的最坏情况假设的WCET太大而无法有用,特别是对于大而复杂的真实 - 时间产品。由于可以加载和卸载模块,因此必须以隔离分析每个任务,而不会对可能同时执行的其他任务进行显式引用。为了获得任务执行时间的现实估计,我们使用源代码的静态分析与任务的运行时行为的信息相结合。运行时信息由处理器的硬件实现中包含的性​​能监视器收集。即使对于包含大量动态高速缓存使用情况的复杂任务,我们的预测器也能够计算WCET的良好估计,并且其要求由今天的性能监控硬件满足。本文包括评估所提出的技术的有效性,用于多个机器人控制内核,这些机器人控制核心以面向对象的编程语言编写并在基于PowerPC 604E的系统上执行。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号