Predicting execution time of real-time programs on contemporary machines

ACM-SE 28 Pub Date : 1990-04-01 DOI:10.1145/98949.99074
M. Harmon
{"title":"Predicting execution time of real-time programs on contemporary machines","authors":"M. Harmon","doi":"10.1145/98949.99074","DOIUrl":null,"url":null,"abstract":"A computer program that interacts with and reponds to real world processes in a timely fashion, and must com­ plete execution prior to its scheduled deadline, is called a ’’hard” real-time program. It is not sufficient for the implemented algorithm to be correct. The real-time pro­ gram must provide the correct response (computation) on time. A late computation is usually no better, possi­ bly even worse, than one that is on time but imprecise. The timing behavior of each real-time program compo­ nent (task) must be predictable if one is to build reliable deterministic real-time systems. Much of the research in real-time scheduling assumes that the execution lime of each task is known (e.g., Liu and Layland [2]). Work by Mok [3], on the use of semaphores, rendezvous, and monitors in real-time systems assumes that the (worst case) execution time of code segments is known. Stoyenko’s work [8] on the schedulability analyzer for Real-Time Euclid addressed the problem of worst case timing analysis of tasks, by assuming the execution time of each instruction is con­ stant. However, even the hardware builders [4] concede that the exact execution time of a given instruction may vary, depending upon the surrounding instructions and the current 6tate of the machine. Park and Shaw [5] implemented a timing tool for a subset of C, which is based on the notion of a timing schema presented in [7]. A method very similar to that of Shaw is presented by Puschner and Koza [6]. Shaw acknowledges that al­ though his approach seems to work well when applied to determinisitic hardware, more research is needed to determine timing predictability on contemporary ma­ chines.","PeriodicalId":409883,"journal":{"name":"ACM-SE 28","volume":"6 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1990-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"ACM-SE 28","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/98949.99074","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2

Abstract

A computer program that interacts with and reponds to real world processes in a timely fashion, and must com­ plete execution prior to its scheduled deadline, is called a ’’hard” real-time program. It is not sufficient for the implemented algorithm to be correct. The real-time pro­ gram must provide the correct response (computation) on time. A late computation is usually no better, possi­ bly even worse, than one that is on time but imprecise. The timing behavior of each real-time program compo­ nent (task) must be predictable if one is to build reliable deterministic real-time systems. Much of the research in real-time scheduling assumes that the execution lime of each task is known (e.g., Liu and Layland [2]). Work by Mok [3], on the use of semaphores, rendezvous, and monitors in real-time systems assumes that the (worst case) execution time of code segments is known. Stoyenko’s work [8] on the schedulability analyzer for Real-Time Euclid addressed the problem of worst case timing analysis of tasks, by assuming the execution time of each instruction is con­ stant. However, even the hardware builders [4] concede that the exact execution time of a given instruction may vary, depending upon the surrounding instructions and the current 6tate of the machine. Park and Shaw [5] implemented a timing tool for a subset of C, which is based on the notion of a timing schema presented in [7]. A method very similar to that of Shaw is presented by Puschner and Koza [6]. Shaw acknowledges that al­ though his approach seems to work well when applied to determinisitic hardware, more research is needed to determine timing predictability on contemporary ma­ chines.
预测当代机器上实时程序的执行时间
与现实世界的进程及时交互并对其作出反应的计算机程序,必须在预定的截止日期之前完成执行,称为“硬”实时程序。实现的算法仅仅是正确的是不够的。实时程序必须及时提供正确的响应(计算)。一个迟到的计算通常并不比一个准时但不精确的计算好,甚至可能更糟。如果要构建可靠的确定性实时系统,每个实时程序组件(任务)的时序行为必须是可预测的。许多实时调度研究都假设每个任务的执行时间是已知的(例如Liu和Layland[2])。Mok[3]在实时系统中使用信号量、集合和监视器的工作假设代码段的(最坏情况)执行时间是已知的。Stoyenko在实时欧几里德的可调度分析器上的工作[8]通过假设每条指令的执行时间是恒定的,解决了任务的最坏情况定时分析的问题。然而,即使是硬件构建者也承认,给定指令的确切执行时间可能会有所不同,这取决于周围的指令和机器的当前状态。Park和Shaw[5]为C语言的一个子集实现了一个计时工具,它基于[7]中提出的计时模式的概念。Puschner和Koza bbb提出了一种与Shaw的方法非常相似的方法。肖承认,尽管他的方法在应用于确定性硬件时似乎很有效,但需要更多的研究来确定当代机器的时间可预测性。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信