首页> 外文期刊>ACM Transactions on Embedded Computing Systems >Semantics-Preserving Multitask Implementation of Synchronous Programs
【24h】

Semantics-Preserving Multitask Implementation of Synchronous Programs

机译:同步程序的保留语义的多任务实现

获取原文
获取原文并翻译 | 示例
获取外文期刊封面目录资料

摘要

We study the implementation of a synchronous program as a set of multiple tasks running on the same computer, and scheduled by a real-time operating system using some preemptive scheduling policy, such as fixed priority or earliest-deadline first. Multitask implementations are necessary, for instance, in multiperiodic applications, when the worst-case execution time of the program is larger than its smallest period. In this case, a single-task implementation violates the schedulability assumption and, therefore, the synchrony hypothesis does not hold. We are aiming at semantics-preserving implementations, where, for a given input sequence, the output sequence produced by the implementation is the same as that produced by the original synchronous program, and this under all possible executions of the implementation. Straightforward implementation techniques are not semantics-preserving. We present an intertask communication protocol, called DBP, that is semantics-preserving and memory-optimal. DBP guarantees semantical preservation under all possible triggering patterns of the synchronous program: thus, it is applicable not only to time-, but also event-triggered applications. DBP works under both fixed priority and earliest-deadline first scheduling. DBP is a nonblocking protocol based on the use of intermediate buffers and manipulations of write-to/read-from pointers to these buffers: these manipulations happen upon arrivals, rather than executions of tasks, which is a distinguishing feature of DBP. DBP is memory-optimal in the sense that it uses as few buffers as needed, for any given triggering pattern. In the worst case, DBP requires, at most, N + 2 buffers for each writer, where N is the number of readers for this writer.
机译:我们将同步程序的实现研究为一组在同一台计算机上运行的多个任务的集合,并由实时操作系统使用一些抢先式调度策略(例如固定优先级或最早截止日期优先)进行调度。例如,在多周期应用程序中,当程序的最坏情况执行时间大于其最小周期时,必须执行多任务。在这种情况下,单任务实现违反了可调度性假设,因此,同步假设不成立。我们的目标是保留语义的实现,对于给定的输入序列,该实现产生的输出序列与原始同步程序产生的输出序列相同,并且在实现的所有可能执行情况下均如此。简单的实现技术不能保留语义。我们提出了一种称为DBP的任务间通信协议,该协议保留了语义并且优化了内存。 DBP保证在同步程序的所有可能触发模式下保留语义:因此,它不仅适用于时间触发的应用程序,而且还适用于事件触发的应用程序。 DBP在固定优先级和最早截止时间的优先调度下工作。 DBP是基于使用中间缓冲区和对这些缓冲区的写入/读取指针的操作的无阻塞协议:这些操作在到达时发生,而不是在任务执行时发生,这是DBP的一个独特功能。对于任何给定的触发模式,DBP在需要使用尽可能少的缓冲区的意义上是内存最佳的。在最坏的情况下,DBP每个写程序最多需要N + 2个缓冲区,其中N是该写程序的读者数。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号