CPU reservations and time constraints: efficient, predictable scheduling of independent activities

Michael B. Jones, D. Rosu, Marcel-Catalin Rosu
{"title":"CPU reservations and time constraints: efficient, predictable scheduling of independent activities","authors":"Michael B. Jones, D. Rosu, Marcel-Catalin Rosu","doi":"10.1145/268998.266689","DOIUrl":null,"url":null,"abstract":"Workstations and personal computers are increasingly being used for applications with real-time characteristics such as speech understanding and synthesis, media computations and I/O, and animation, often concurrently executed with traditional non-real-time workloads. This paper presents a system that can schedule multiple independent activities so that: . activities can obtain minimum guaranteed execution rates with application-specified reservation granularities via CPU Reservations, CPU Reservations, which are of the form reserve X units of time out of every Y units, provide not just an average case execution rate of X/Y over long periods of time, but the stronger guarantee that from any instant of time, by Y time units later, the activity will have executed for at least X time units, . applications can use Time Constraints to schedule tasks by deadlines, with on-time completion guaranteed for tasks with accepted constraints, and . both CPU Reservations and Time Constraints are implemented very efficiently. In particular, . CPU scheduling overhead is bounded by a constant and is not a function of the number of schedulable tasks. Other key scheduler properties are: . activities cannot violate other activities' guarantees, . time constraints and CPU reservations may be used together, separately, or not at all (which gives a round-robin schedule), with well-defined interactions between all combinations, and . spare CPU time is fairly shared among all activities. The Rialto operating system, developed at Microsoft Research, achieves these goals by using a precomputed schedule, which is the fundamental basis of this work.","PeriodicalId":340271,"journal":{"name":"Proceedings of the sixteenth ACM symposium on Operating systems principles","volume":"208 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1997-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"361","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the sixteenth ACM symposium on Operating systems principles","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/268998.266689","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 361

Abstract

Workstations and personal computers are increasingly being used for applications with real-time characteristics such as speech understanding and synthesis, media computations and I/O, and animation, often concurrently executed with traditional non-real-time workloads. This paper presents a system that can schedule multiple independent activities so that: . activities can obtain minimum guaranteed execution rates with application-specified reservation granularities via CPU Reservations, CPU Reservations, which are of the form reserve X units of time out of every Y units, provide not just an average case execution rate of X/Y over long periods of time, but the stronger guarantee that from any instant of time, by Y time units later, the activity will have executed for at least X time units, . applications can use Time Constraints to schedule tasks by deadlines, with on-time completion guaranteed for tasks with accepted constraints, and . both CPU Reservations and Time Constraints are implemented very efficiently. In particular, . CPU scheduling overhead is bounded by a constant and is not a function of the number of schedulable tasks. Other key scheduler properties are: . activities cannot violate other activities' guarantees, . time constraints and CPU reservations may be used together, separately, or not at all (which gives a round-robin schedule), with well-defined interactions between all combinations, and . spare CPU time is fairly shared among all activities. The Rialto operating system, developed at Microsoft Research, achieves these goals by using a precomputed schedule, which is the fundamental basis of this work.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
CPU预留和时间限制:高效、可预测的独立活动调度
工作站和个人计算机越来越多地用于具有实时特性的应用程序,例如语音理解和合成、媒体计算和I/O以及动画,这些应用程序通常与传统的非实时工作负载同时执行。本文提出了一个可以调度多个独立活动的系统,以便:活动可以通过CPU reservation获得具有应用程序指定的保留粒度的最低保证执行率,CPU reservation的形式是在每Y个单位中预留X个单位的时间,它不仅提供了长时间内X/Y的平均执行速率,而且提供了更强的保证,即从任意时刻开始,到Y个时间单位之后,活动将至少执行X个时间单位。应用程序可以使用时间约束来按截止日期安排任务,并保证具有可接受约束的任务按时完成。CPU预留和时间限制都实现得非常有效。特别是……CPU调度开销由一个常数限定,而不是可调度任务数量的函数。其他键调度器属性有:。活动不得违反其他活动的保证。时间限制和CPU预留可以一起使用,也可以单独使用,或者根本不使用(这给出了一个循环调度),所有组合之间都有定义良好的交互,并且。空闲的CPU时间在所有活动之间公平地共享。微软研究院开发的Rialto操作系统通过使用预先计算的时间表来实现这些目标,这是这项工作的基础。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Extensible security architectures for Java Distributed schedule management in the Tiger video fileserver Free transactions with Rio Vista Exploiting the non-determinism and asynchrony of set iterators to reduce aggregate file I/O latency Cluster-based scalable network services
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1