JP2002541581A - レート単調リアルタイムシステムにおける動的貸し出し方法 - Google Patents

レート単調リアルタイムシステムにおける動的貸し出し方法

Info

Publication number
JP2002541581A
JP2002541581A JP2000611160A JP2000611160A JP2002541581A JP 2002541581 A JP2002541581 A JP 2002541581A JP 2000611160 A JP2000611160 A JP 2000611160A JP 2000611160 A JP2000611160 A JP 2000611160A JP 2002541581 A JP2002541581 A JP 2002541581A
Authority
JP
Japan
Prior art keywords
task
priority
execution time
real
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2000611160A
Other languages
English (en)
Inventor
カール エム アイシャム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Philips Electronics NV filed Critical Philips Electronics NV
Publication of JP2002541581A publication Critical patent/JP2002541581A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 リアルタイムコンピューティングシステムにおいて実行されるタスクの間で実行能力を共有する方法及び装置が開示されている。本発明は、システムタイミング挙動を特徴づけ、リアルタイムシステムを設計するためにRMA技法を拡張する。厳しいデッドラインを有する高い優先度のタスクは、柔軟なデッドラインを有する低い優先度のタスクと対にされる。過負荷状態の間、高い優先度のタスクは、システムの残りの部分のスケジューラビリティに影響を及ぼすことなく、低い優先度のタスクの実行能力から動的に実行時間を借りることができる。高い優先度のタスクは、低い優先度のタスクから借りる能力に比例して強化されるので、2つのタスクを組み合わせたユーティライゼーションは一定のままである。格下げされたタスクの期間は、高い優先度のタスクに貸し出された実行時間を補償するために増加される。更に、低い優先度のタスクの優先度は、新しい期間に合うように変更される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】
本発明は、リアルタイムコンピューティングシステムのタイミング挙動に関し
、特に、リアルタイムコンピューティングシステムにおいて実行されるタスクの
間で実行能力を貸し出す方法及び装置に関する。
【0002】
【従来の技術】
リアルタイムシステムは、それらが時間的且つ論理的に正しくなければならな
いという点で他のコンピューティング形態とは異なる。このようなシステムは、
保証されたタイミングデッドライン、速い応答時間、及び過負荷時の安定性とい
う3つの主要な基準を満足するように開発される。スケジューラビリティ(sche
dulability)とはシステムの能力(capacity)をいう。スケジュール可能なシス
テムは、そのクリティカルなタイミングデッドラインのすべてを満足することが
できる。待ち時間とはシステムの応答性をいう。リアルタイムシステムにおいて
、それは、重要なイベントに対する最悪の場合のシステム応答時間である。過負
荷時の安定性は、システムがすべてのデッドラインを満足することができなくて
もそのクリティカルなデッドラインを満足することができることを意味する。
【0003】 リアルタイムコンピューティングシステムを開発するために利用できる最も有
用なモデルの1つは、レート単調解析(Rate Monotonic Analysis、RMA)で
ある。RMAは、システムタイミング挙動について推論するための数学的フレー
ムワークを提供し、リアルタイムシステムを設計するための設計基準を提供する
。RMAについてはLiu及びLaylandによる「Scheduling Algorithms for Multi-
Programming in a Hard Real-Time Environment」(Journal of the Ass´n of
Computing Machinery (ACM) 20, 1, 40-61 ,1973年1月)において最初に開示さ
れている。その内容は参照によってここに盛り込まれる。概して、Liu及びLayla
ndは、各タスクの期間の終了時にデッドラインをもつn個の周期的タスクの組が
、それらの期間に従って優先順に並べられる場合にはそれらのデッドラインを満
足し、スケジューラビリティ制約テストを満足することを示した。この論文によ
り、RMAは、その元の形式から、元の理論を拡張させた方法の集まりに発展し
た。しかしながら、基本的なRMAリアルタイム保証は変わらないままであった
。これらの方法の集まりの一般的な考察については、例えばKlein他による「A P
ractitioner´s Handbook for Real-Time Analysis: Guide to Rate Monotonic
Analysis for Real-time Systems 」(Kluwer Academic Publishing, ISBN 0-7
923-9361-9, 1993)を参照されたい。その内容はここに参照によって盛り込まれ
る。
【0004】 システムのスケジューリング計画を変えるためにスペア能力を評価し、タスク
の優先度を動的に変更する方法は今日存在している。スペア能力とは、優先度の
低いイベントのスケジューラビリティを維持しながら、イベントの応答に追加す
ることができる実行時間量である。オーバーランを排除するための関連の方法は
、イベントがそのデッドラインを満足することができるようにするために除かれ
なければならない資源使用量を計算する。Klein他による「A Practitioner´s H
andbook for Real-Time Analysis: Guide to Rate Monotonic Analysis for Rea
l-time Systems, Chapter 4, Group 3」(Kluwer Academic Publishing, ISBN 0
-7923-9361-9, 1993)を参照されたい。複数のタスクが共通データを共有すると
き、優先度の逆転を避けるために、タスクの優先度の変更がいろいろな同期プロ
トコルにおいて使用される。
【0005】 レート単調解析の有効性は、個々のイベントタイミングに関する最悪のケース
及びイベントの同時発生に対する備えに依存する。言い換えると、システムは、
最悪の場合のすべてのイベントを同時に処理することができれば、そのすべての
デッドラインを満足することができる。数学的に確立されるときRMA解析によ
り要求される最悪の場合のタイミング及び同時発生を仮定することにより、典型
的なリアルタイムシステムにおいて通常制限されるハードウェアコンピューティ
ング能力について特徴/性能の厳しいトレードオフが行われる。最悪の場合の高
い優先度のイベントはかなり頻繁に生じることもあるが、このような最悪の場合
の高い優先度のイベントの実行時間は、なお、RMA計算の中で追求されなけれ
ばならない。このまれな最悪の場合のイベントを高い優先度で処理するために割
り当てられる能力は、低い優先度のイベントに利用可能な能力とのトレードオフ
の可能性をもつ。
【0006】 RMA計算により、システムがこれらの最大実行要求に関してもはやスケジュ
ール可能でないことが示される場合、デザイナーにはほんのわずかな選択肢だけ
が与えられる。通常、最悪の場合のイベントは、それらの実行時間を減らすよう
に再設計されなければならない。実行時間を減らすことができず、低い優先度の
イベントに対する時折のタイミング違反が許容されうるとすると、デザイナーは
、問題のイベントを過負荷として考慮に入れる。すべての低い優先度のイベント
が(デッドラインを逃すことが時折許容される)柔軟なデッドラインを有する場
合のみ、過負荷状態は、受け入れ可能なものとなる。残念ながら、このようなこ
とはめったに起こらない。上記のような過負荷状況が存在するシステムにおいて
は、過負荷時の安定性のリアルタイム基準について違反が生じてしまう。
【0007】
【発明が解決しようとする課題】
RMAは、現在のところ、システムがスケジュール可能かどうかを決定するの
に必要なツールを提供するにすぎない。言い換えると、RMAは、所与の設計が
動作するか否かを示すにすぎない。例えば、スペア能力を評価する方法は、タイ
ミング要求が破壊される前に、どれだけの実行時間をイベントに安全に追加する
ことができるかを決定するのに有用である。同様に、RMAは、タイミング要求
を満足するためにどれだけの実行時間が除かれなければならないかを決定する方
法を提供する。これらの方法は、再設計のための目標値を提供するのに有用であ
ることは分かっているが、実行時間が処理しにくい場合には役立たない。デザイ
ナが、処理しにくい過負荷を穏やかに(gracefully)処理することを可能にする
方法は今日存在しない。
【0008】
【課題を解決するための手段】 概して、厳しいデッドラインを有する高い優先度のタスクと、柔軟なデッドラ
インを有する低い優先度のタスクとを対にすることにより、リアルタイムコンピ
ューティングシステムにおいて実行されるタスクの間で実行能力を共有する方法
及び装置が開示されている。本発明は、システムタイミング挙動を特徴づけると
ともにリアルタイムシステムを設計するためにRMA技法を拡張する。過負荷状
態の間、高い優先度のタスクは、システムの残りの部分のスケジューラビリティ
に影響を及ぼすことなく、低い優先度のタスクの実行能力から実行時間を動的に
借りることができる。高い優先度のタスクは、低い優先度のタスクから借りる能
力に比例して強化されるので、2つのタスクを組み合わせたユーティライゼーシ
ョンは一定のままである。
【0009】 本発明の別の形態によれば、高い優先度のタスクに貸し出される実行時間を補
償するために、格下げされたタスクの期間が増やされる。このように、格下げさ
れたタスクのイベントは、なお、元の実行バジェットに従って割り振られてもよ
いが、借り入れ側の高い優先度のタスクにおける仕事の増加のため時間を延ばす
ことが許される。更に、低い優先度のタスクの優先度は、レート単調スケジュー
リングアルゴリズムに従って新しい期間に合わように変更される。
【0010】 本発明は、過負荷の影響を特定のタスク(すなわち格下げされたタスク)に隔
離する。更に、借り入れ時間を補償するために格下げされたタスクの期間が延長
されるので、実行能力を借りるという方法は、格下げされたタスクの元の実行バ
ジェットを低下させない。このように、過負荷状態のシステムでは、クリティカ
ルでないイベントを実施するのに要する時間が長くなるが、システムが一時点で
受け入れる仕事の量は同じままである。更に、本発明は、めったに使用されない
タスクの能力から過負荷でない実行時間を借りることにより、コンピューティン
グ資源のより良いユーティライゼーションを提供する。この場合、低い優先度の
タスクは、柔軟なデッドラインをもつ断続的なイベントを処理するように用意す
ることができる。本発明は、高い優先度のタスクが、上記のような断続的なタス
クからその通常動作に必要な能力のいくらかを借りることを可能にする。
【0011】 本発明の一層完全な理解並びに本発明の他の特徴及び利点は、以下の詳細な説
明及び図面を参照することにより得られるであろう。
【0012】
【発明の実施の形態】
本発明は、厳しいデッドラインをもつ高い優先度のタスクと、柔軟なデッドラ
インをもつ低い優先度のタスクとを対にする方法を提供する。過負荷の間、高い
優先度のタスクは、システムの残りの部分のスケジューラビリティに影響を及ぼ
すことなく、低い優先度のタスクの実行能力から動的に実行時間を借りることが
できる。このように、高い優先度のタスクを比例関係をもって強化することがで
きるので、2つのタスクを組み合わせたユーティライゼーションは一定のままと
なる。
【0013】 本発明の別の形態によれば、格下げされた貸し出し側のタスクの期間を延長し
て借り入れ時間を補償する。更に、格下げされたタスクの優先度が、新しい期間
に合うように変更される。更に、貸し出し側のタスクの全期間にわたって延長さ
れる借り入れ側のタスクの期間の間、貸し出し側のタスクの性能が格下げされる
【0014】 本発明は、過負荷の間、クリティカルなスケジューラビリティの保証を提供し
ながら、システム性能を穏やかに格下げする手段を提供する。これは、処理しに
くい過負荷について安定性を保つ唯一の実際的方法となりうる。第2に、格下げ
されるべきタスクは、設計段階の間に識別することができる。これは、予測性及
び隔離(isolation)の見地から重要視すべきことである。リアルタイム問題は
、この分野において、捕らえようとするのを免れるそれらの能力について有名で
ある。過負荷イベントが常に異なる低い優先度のイベントと同時に発生する場合
、正確に識別し補正することはほとんど不可能である。
【0015】 本発明は、過負荷の影響を特定のタスクに隔離する。更に、借り入れ時間を補
償するために格下げされたタスクの期間が延長されるので、実行能力を借りるた
めに本発明により使用される手段は、格下げされたタスクの元の実行バジェット
を減少させない。従って、過負荷状態のシステムは、クリティカルでないイベン
トを実施するのに要する時間が長くなるが、システムが一時点で受け入れる仕事
の量は同じままである。最後に、本発明の方法は、めったに使用されないタスク
の能力から過負荷でない実行時間を借りることによりコンピューティング資源の
より良いユーティライゼーションを提供するために利用することができる。この
場合、低い優先度のタスクは、柔軟なデッドラインをもつ断続的なイベントを処
理するように用意することができる。本発明は、高い優先度のタスクがその通常
動作に必要な能力のいくらかを断続的なタスクから借りることを可能にする。
【0016】 上述したように、Liu及びLaylandは、各タスクの期間の終了時にデッドライン
をもつn個の周期的タスクの組が、それらの期間に従って優先順に並べられる場
合にそれらのデッドラインを満足し、スケジューラビリティ制約テストを満足す
ることを示した。スケジューラビリティ制約テストの詳細な考察については、Li
u及びLaylandによる「Scheduling Algorithms for Multi-Programming in a Har
d Real-Time Environment」(Journal of the Ass´n of Computing Machinery
(ACM) 20, 1, 40-61, 1973年1月)を参照されたい。その内容は参照によってこ
こに盛り込まれる。
【0017】 概して、スケジューラビリティ制約テストによれば、
【数5】 の場合、レート単調アルゴリズムによりスケジュールされるn個の独立した周期
的タスクの組は、常に、すべてのタスクフェージングについてそのデッドライン
を満足する。ここで、C=taskの最悪の場合のタスク実行時間、T
taskの期間、U(n)=n個のタスクのユーティライゼーション、である
【0018】 上述したように、本発明は、厳しいデッドラインをもつクリティカルなタスク
と、柔軟なデッドラインをもつ低い優先度のタスクという2つのタスクを対にす
る。合計のユーティライゼーションが一定のままである一対のタスクについて考
える。これにより適用されるべきRMAはスケジューラビリティを保証すること
ができる。上記のような対は、リアルタイムシステムにおいてサービスレベルの
2つの異なる品質を満足するために存在しうる。タスク対の関係は、次のように
表わすことができる。
【数6】 ここで、C=taskの最悪の場合のタスク実行時間、T=task
期間、C=taskの最悪の場合のタスク実行時間、T=taskの期
間、U=両方のタスクのユーティライゼーション、である。
【0019】 このように、一定のユーティライゼーションUを維持するために、対の中の一
方のタスクのユーティライゼーションを比例的に減少させる場合、対の中の他方
のタスクのユーティライゼーションを増加させることができる。このようにして
一方のタスクの実行を補うために他方のタスクから実行時間を借りることができ
る。本発明の技法は、例えばイベントがサービスタスクtask又はtask に割り振られる前に、それらが利用可能な実行時間C又はCに対して有効
化された場合に有用である。一時的な過負荷は、RMA保証を犠牲にすることな
く高い優先度のタスクに割り振られることになる。ユーティライゼーションの貸
し出しは、
【数7】 によって表わすことができる。ここで、N=taskから借りるべき実行時
間の量、N=taskに貸し出すことができる実行時間の量、N<C
である。
【0020】 これら2つのタスクのユーティライゼーションとは、ユーティライゼーション
制約式には関係なく、それらの組み合わせのユーティライゼーションと同等であ
る。上記の説明において、taskは、高い優先度(緊急)のタスクをいい、
taskは、柔軟なデッドラインをもつ低い優先度(ルーチン)のタスクをい
う。RMAユーティライゼーション制約テストを有効に保つために、これらの2
つのタスクの合計は、上記の方法を適用するときは一定のままでなければならな
い。
【0021】 ユーティライゼーションUが一定のままであるとすると、低い優先度のタスク
のユーティライゼーションを比例的に低下させる限りにおいて、高い優先度のタ
スクのユーティライゼーションを増加させることができる。比例的な変更は、シ
ステムの残りの部分のスケジューラビリティを保証する。これは、ユーティライ
ゼーション制約式への正味(ネット)の影響が変更の前後で同じであるからであ
る。式(2)はこの比例的な変更を利用しており、この式を解くことにより高い
優先度のタスクが借りることができる実行時間の量が得られる。
【0022】 あるタスクへの実行時間の追加は、過負荷を処理する際に利用することができ
るが、通常、それを補償するために他のタスクから実行時間を現実に除くことは
実際的でない。多くのイベントの実行時間はランタイムに固定(決定)されるの
で制限することはできない。これは、元の実行バジェットは固定されていると仮
定するが、代わりにタスクの期間を変更することにより解決される。以下で説明
するように、式(3)及び式(4)は、貸し出し側のタスク期間の上述の変更を
扱う。レート単調環境においてタスクの期間はその優先度も決定するので、タス
クの優先度は、多くのリアルタイムオペレーティングシステムにおいて利用可能
な通常の優先度設定関数を使用して同様に変更されなければならない。
【0023】 借りた実行時間を補償するために、タスクの実行時間を制限する代わりに、貸
し出し側のタスクの期間を変更することができる。このように、貸し出し側のタ
スクのサービスのレベルは、穏やかに格下げされる。イベントは、なお、元の実
行バジェットCrに従って割り振られてもよいが、借り入れ側のタスクの仕事の
増加のため時間を延ばすことが許される。グレースフルデグラデーション(grac
eful degradation)は、次のように実現することができる。
【数8】 ここで、Tn=taskの新しい期間である。
【0024】 N<<Cとしたとき、タスクの実行期間Tnの無制限な増加を防ぐために
、Nは最大貸し出し量に制限されなければならない。最大値TnがTrの倍数
であるとすると、
【数9】 ここで、m=taskの期間の倍数、Nm=taskから貸し出し可能な最
大実行時間Nrである。
【0025】 図1は、本発明によるリアルタイムコンピューティングシステム100を示し
ている。図1に示すように、リアルタイムコンピューティングシステム100は
、プロセッサ110や、読出し専用メモリ及び/又はランダムアクセスメモリ(
RAM)のようなデータ記憶装置120といった特定の標準ハードウェア構成要
素を有する。
【0026】 データ記憶装置120は、図2に関連して以下で詳述するように能力貸し出し
プロセス200を含む。概して、能力貸し出しプロセス200は、本発明による
2つのタスクの間の能力の貸し出しを実現する。図1に示すように、データ記憶
装置120は更に、とりわけ本発明による能力貸し出しのためにtask及び
taskという2つのタスクの対を管理するオペレーティングシステム150
を有する。
【0027】 図2は、能力貸し出しプロセス200を状態図を示している。図2に示すよう
に、それぞれのタスクは、ここでは散発的なサーバとしてモデル化されており、
太字で表した能力貸し出しアルゴリズムによる変更を伴っている。ここで使用さ
れるUML記法の考察については、例えばhttp://www.omg.org/docs/ad/97-08-0
5.pdfからダウンロード可能なUML Notation Guide,version1.1(1997年9月1日)
を参照されたい。その内容は参照によってここに盛り込まれる。
【0028】 能力貸し出しプロセス200は2つの仮定を利用する。まず、緊急タスクによ
り要求される借り入れ時間の量は、タスクの実行期間の開始時に知られている。
これは、それぞれのイベントがその最悪の場合の実行時間に関してマークされな
ければならず、従ってランタイムにタスクによってバジェットの動的な評価が実
施されうることを意味する。第2に、貸し出しは、借り入れ側の期間の間のみ存
続できる。
【0029】 システムを初期化する際、両方のタスクは、貸し出すことができる最大能力に
ついて合意しなければならない。式(4)を使用して、ルーチンタスクは、その
元の実行バジェットと、その期間において無制限な増加が生じないようにするた
めの制限ファクタとに基づいて、貸し出すべき実行時間の最大量を計算する。こ
の貸し出し可能な量は緊急タスクに登録され、緊急タスクは、借りることができ
る実行時間の最大量を式(2)を用いて計算する(2つののタスクの異なる期間
による貸し出し量の違いを明らかにする)。
【0030】 それぞれの実行期間の初めに、緊急タスクは、状態220においてバジェット
を超える実行時間の量を計算し、この量(バジェットを超えない場合には0でも
よい)を含むルーチンタスクにメッセージ240を送る。緊急タスクは、通常は
、状態220の間にこれらのイベントを実行する。
【0031】 貸し出しは、借り入れ側のタスクの期間においてのみ存続しうるので、ルーチ
ンタスクは2つの状態の変数を維持する。要求される能力の量は、実施される必
要がある実行時間の量である。すなわち、この借り入れ時間は、貸し出し側の性
能をまだ格下げしていない。貸し出し中の能力の量は、貸し出し側を格下げする
ように現在作用している借り入れ時間である。緊急タスクからのメッセージ24
0に応答するルーチンタスクの動作は、タスクの現在の状態に依存する。状態2
50において待機している間、緊急タスクからのバジェット超過量は、要求され
る能力に与えられる。他方では、バジェット超過量は、貸し出し中の能力に追加
される。これを式(3)に関して使用して、そのタスクの新しい期間を設定する
。更に、タスクの優先度が、新しいタスク期間に合うように下げられなければな
らない。状態260におけるルーチンタスクの実行期間の初めに、要求される能
力から貸し出し中の能力が設定され、式(3)を使用してタスクの期間が計算さ
れる。レート単調スケジューリングアルゴリズムを満足するために、タスクの期
間が変更されるときはいつも対応する優先度がそれに応じて変更されなければな
らない。
【0032】 図示されここに記述されている実施例及び変形例は本発明の原則を単に説明す
るためのものであり、当業者であれば本発明の範囲及び精神から逸脱することな
くさまざまな変形を実現することができることを理解されたい。
【図面の簡単な説明】
【図1】本発明によるリアルタイムコンピューティングシステムを示す図。
【図2】図1の能力貸し出しプロセスの状態図。
【符号の説明】
100 リアルタイムコンピューティングシステム 110 プロセッサ 120 データ記憶装置 150 リアルタイムオペレーティングシステム 200 能力貸し出しシステム
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),JP

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】レート単調解析による性能仕様を具えるリアルタイムコンピュ
    ーティングシステムにおいて実行されるタスクの間で実行能力を共有する方法で
    あって、 高い優先度のタスクtaskと低い優先度のタスクtaskとを対にする
    ステップと、 過負荷状態の間、前記低い優先度のタスクtaskから前記高い優先度のタ
    スクtaskに実行時間を再割り当てするステップと、 前記再割り当てされた実行時間を補償するように前記低い優先度のタスクta
    skの期間を増やすステップと、 を含む方法。
  2. 【請求項2】N=taskから借りるべき実行時間の量、T=tas
    の期間、T=taskの期間、N<C、としたとき、前記低い優先
    度のタスクtaskから前記高い優先度のタスクtaskに貸し出し可能な
    前記実行時間の量は、 【数1】 から得られる請求項1に記載の方法。
  3. 【請求項3】C=taskの最悪の場合のタスク実行時間、T=ta
    skの期間、N=taskから借りるべき実行時間の量、N<C、と
    したとき、前記低い優先度のタスクtaskの増やされる前記期間は、 【数2】 から得られる請求項1に記載の方法。
  4. 【請求項4】C=taskの最悪の場合のタスク実行時間、Nr=ta
    skから借りるべき実行時間の量、N<<C、としたとき、前記低い優先
    度のタスクtaskから借りるべき実行時間の量Nを最大貸し出し量に制限
    するステップを更に含む請求項1に記載の方法。
  5. 【請求項5】前記低い優先度のタスクtaskの期間の倍数をmとしたと
    き、前記低い優先度のタスクtaskから借りることができる最大実行時間N
    mは、 【数3】 から得られる請求項4に記載の方法。
  6. 【請求項6】レート単調解析による性能仕様を具えるリアルタイムコンピュ
    ーティングシステムにおいて実行されるタスクの間で資源を割り当てる方法であ
    って、 高い優先度のタスクtaskと低い優先度のタスクtaskとを対にする
    ステップと、 通常動作状態の間、前記低い優先度のタスクtaskに第1の資源割り当て
    を行うステップと、 前記高い優先度のタスクtaskが実施可能なとき、前記低い優先度のタス
    クtaskから前記高い優先度のタスクtaskに前記第1の資源割り当て
    の一部を再割り当てするステップと、 を含む方法。
  7. 【請求項7】レート単調解析による性能仕様を具えるリアルタイムコンピュ
    ーティングシステムにおいて実行されるタスクの間で実行能力を共有する方法で
    あって、 高い優先度のタスクtaskと低い優先度のタスクtaskとを対にする
    ステップと、 過負荷状態の間、前記低い優先度のタスクtaskから前記高い優先度のタ
    スクtaskに実行時間を再割り当てするステップと、 前記高い優先度のタスクtaskのユーティライゼーションを増加させるス
    テップと、 一定のユーティライゼーションUを維持するために前記低い優先度のタスクt
    askのユーティライゼーションを比例的に低下させるステップと、 を含む方法。
  8. 【請求項8】C=taskの最悪の場合のタスク実行時間、T=ta
    skの期間、C=taskの最悪の場合のタスク実行時間、T=tas
    の期間、U=両方のタスクのユーティライゼーション、としたとき、前記タ
    スクの前記ユーティライゼーションは、 【数4】 に変更される請求項7に記載の方法。
  9. 【請求項9】レート単調解析による性能仕様を具えるリアルタイムコンピュ
    ーティングシステムであって、 コンピュータ読み込み可能なコードを記憶するメモリと、 前記メモリに動作可能に結合されたプロセッサと、 を有し、前記プロセッサは、 高い優先度のタスクtaskと低い優先度のタスクtaskとを対にし、 過負荷状態の間、前記低い優先度のタスクtaskから前記高い優先度のタ
    スクtaskに実行時間を再割り当てし、 再割り当てされた前記実行時間を補償するように前記低い優先度のタスクta
    skの期間を増やす、リアルタイムコンピューティングシステム。
  10. 【請求項10】レート単調解析による性能仕様を具えるリアルタイムコンピ
    ューティングシステムあって、 コンピュータ読み込み可能なコードを記憶するメモリと、 前記メモリに動作可能に結合されたプロセッサと、 を有し、前記プロセッサは、 高い優先度のタスクtaskと低い優先度のタスクtaskとを対にし、 通常動作状態の間、前記低い優先度のタスクtaskに第1の資源割り当て
    を行い、 前記高い優先度のタスクtaskが実施可能であるとき、前記低い優先度の
    タスクtaskから前記高い優先度のタスクtaskに前記第1の資源割り
    当ての一部を再割り当てする、リアルタイムコンピューティングシステム。
  11. 【請求項11】レート単調解析による性能仕様を具えるリアルタイムコンピ
    ューティングシステムであって、 コンピュータ読み込み可能なコードを記憶するメモリと、 前記メモリに動作可能に結合されたプロセッサと、 を有し、前記プロセッサは、 高い優先度のタスクtaskと低い優先度のタスクtaskとを対にし、 過負荷状態の間、前記低い優先度のタスクtaskから前記高い優先度のタ
    スクtaskに実行時間を再割り当てし、 前記高い優先度のタスクtaskのユーティライゼーションを増加させ、 一定のユーティライゼーションUを維持するように前記低い優先度のタスクt
    askのユーティライゼーションを比例的に低下させる、リアルタイムコンピ
    ューティングシステム。
JP2000611160A 1999-04-14 2000-04-11 レート単調リアルタイムシステムにおける動的貸し出し方法 Withdrawn JP2002541581A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US12930199P 1999-04-14 1999-04-14
US60/129,301 1999-04-14
US09/481,771 US6964048B1 (en) 1999-04-14 2000-01-11 Method for dynamic loaning in rate monotonic real-time systems
US09/481,771 2000-01-11
PCT/EP2000/003204 WO2000062157A2 (en) 1999-04-14 2000-04-11 Method for dynamic loaning in rate monotonic real-time systems

Publications (1)

Publication Number Publication Date
JP2002541581A true JP2002541581A (ja) 2002-12-03

Family

ID=26827453

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000611160A Withdrawn JP2002541581A (ja) 1999-04-14 2000-04-11 レート単調リアルタイムシステムにおける動的貸し出し方法

Country Status (4)

Country Link
US (1) US6964048B1 (ja)
EP (1) EP1088265A2 (ja)
JP (1) JP2002541581A (ja)
WO (1) WO2000062157A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102722402A (zh) * 2012-05-28 2012-10-10 上海微频莱机电科技有限公司 一种非抢占式实时调度多任务的处理系统及方法
KR20200129469A (ko) * 2019-05-08 2020-11-18 국방과학연구소 계층적 스케줄링 시스템에서 자원 공급 모델의 주기를 결정하는 방법 및 장치

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7140022B2 (en) * 2000-06-02 2006-11-21 Honeywell International Inc. Method and apparatus for slack stealing with dynamic threads
US20020129080A1 (en) * 2001-01-11 2002-09-12 Christian Hentschel Method of and system for running an algorithm
CN1258712C (zh) * 2000-11-06 2006-06-07 皇家菲利浦电子有限公司 为任务分配预算的方法和系统
KR20030045024A (ko) * 2001-06-05 2003-06-09 코닌클리케 필립스 일렉트로닉스 엔.브이. 태스크의 진행을 평가하는 방법 및 시스템
US20030069917A1 (en) * 2001-10-04 2003-04-10 Miller Larry J. Balanced client/server mechanism in a time-partitioned real-time operting system
US7117497B2 (en) 2001-11-08 2006-10-03 Honeywell International, Inc. Budget transfer mechanism for time-partitioned real-time operating systems
WO2003044655A2 (en) * 2001-11-19 2003-05-30 Koninklijke Philips Electronics N.V. Method and system for allocating a budget surplus to a task
WO2003081429A1 (fr) * 2002-03-22 2003-10-02 Toyota Jidosha Kabushiki Kaisha Procede et dispositif de gestion de taches, procede et dispositif d'evaluation de fonctionnement et programme devant etre evalue
US20040226014A1 (en) * 2002-12-31 2004-11-11 Moore Mark Justin System and method for providing balanced thread scheduling
US7152145B2 (en) * 2003-04-23 2006-12-19 Hoseotelnet Co. Ltd. Method for optimizing system performance by transferring a stack in a real time operating system
US7814490B2 (en) * 2004-10-14 2010-10-12 International Business Machines Corporation Apparatus and methods for performing computer system maintenance and notification activities in an opportunistic manner
US9361156B2 (en) * 2005-03-14 2016-06-07 2236008 Ontario Inc. Adaptive partitioning for operating system
WO2007104330A1 (en) * 2006-03-15 2007-09-20 Freescale Semiconductor, Inc. Task scheduling method and apparatus
EP1975794B1 (en) 2007-03-28 2012-07-11 Research In Motion Limited System and method for controlling processor usage according to user input
US8789052B2 (en) * 2007-03-28 2014-07-22 BlackBery Limited System and method for controlling processor usage according to user input
FR2919083B1 (fr) * 2007-07-18 2014-11-21 Wavecom Procede de gestion de l'execution d'une architecture logicielle d'un circuit de radiocommunication a frequence processeur constante, produit programme d'ordinateur et circuit correspondants
US20090307035A1 (en) * 2008-06-04 2009-12-10 Microsoft Corporation Resolution of resource over-allocations in project plans
EP2166450A1 (en) * 2008-09-23 2010-03-24 Robert Bosch Gmbh A method to dynamically change the frequency of execution of functions within tasks in an ECU
DE102009025572A1 (de) * 2009-06-19 2010-12-23 Wolfgang Pree Gmbh Eine Methode zur Entwicklung von garantiert korrekten Echtzeitsystemen
US20130014119A1 (en) * 2011-07-07 2013-01-10 Iolo Technologies, Llc Resource Allocation Prioritization Based on Knowledge of User Intent and Process Independence
US8875146B2 (en) 2011-08-01 2014-10-28 Honeywell International Inc. Systems and methods for bounding processing times on multiple processing units
US8621473B2 (en) * 2011-08-01 2013-12-31 Honeywell International Inc. Constrained rate monotonic analysis and scheduling
US9207977B2 (en) * 2012-02-06 2015-12-08 Honeywell International Inc. Systems and methods for task grouping on multi-processors
US20140068621A1 (en) * 2012-08-30 2014-03-06 Sriram Sitaraman Dynamic storage-aware job scheduling
US9612868B2 (en) 2012-10-31 2017-04-04 Honeywell International Inc. Systems and methods generating inter-group and intra-group execution schedules for instruction entity allocation and scheduling on multi-processors
CN104102491B (zh) * 2014-07-28 2017-07-14 深圳航天工业技术研究院有限公司 单片机实时任务与耗时任务并行执行的实现方法和系统
KR101707601B1 (ko) * 2015-12-31 2017-02-16 숭실대학교산학협력단 가상 머신 모니터 및 가상 머신 모니터의 스케줄링 방법
US10552215B1 (en) * 2017-08-05 2020-02-04 Jia Xu System and method of handling real-time process overruns on a multiprocessor
CN109491769A (zh) * 2017-09-11 2019-03-19 华为技术有限公司 一种业务调整方法、装置及芯片

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0954699A (ja) * 1995-08-11 1997-02-25 Fujitsu Ltd 計算機のプロセススケジューラ
US6438573B1 (en) * 1996-10-09 2002-08-20 Iowa State University Research Foundation, Inc. Real-time programming method
US6189022B1 (en) * 1997-08-20 2001-02-13 Honeywell International Inc. Slack scheduling for improved response times of period transformed processes
US5987492A (en) * 1997-10-31 1999-11-16 Sun Microsystems, Inc. Method and apparatus for processor sharing

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102722402A (zh) * 2012-05-28 2012-10-10 上海微频莱机电科技有限公司 一种非抢占式实时调度多任务的处理系统及方法
KR20200129469A (ko) * 2019-05-08 2020-11-18 국방과학연구소 계층적 스케줄링 시스템에서 자원 공급 모델의 주기를 결정하는 방법 및 장치
KR102184136B1 (ko) 2019-05-08 2020-11-27 국방과학연구소 계층적 스케줄링 시스템에서 자원 공급 모델의 주기를 결정하는 방법 및 장치

Also Published As

Publication number Publication date
WO2000062157A3 (en) 2001-02-08
EP1088265A2 (en) 2001-04-04
US6964048B1 (en) 2005-11-08
WO2000062157A2 (en) 2000-10-19

Similar Documents

Publication Publication Date Title
JP2002541581A (ja) レート単調リアルタイムシステムにおける動的貸し出し方法
EP2312441B1 (en) Scheduling of instructions groups for cell processors
US8996811B2 (en) Scheduler, multi-core processor system, and scheduling method
US9785468B2 (en) Finding resource bottlenecks with low-frequency sampled data
US20080059712A1 (en) Method and apparatus for achieving fair cache sharing on multi-threaded chip multiprocessors
JP5305664B2 (ja) データ処理システムの区画相互間で資源をトレードするための方法、プログラム及び装置
US20060136695A1 (en) Method and system for controlling the capacity usage of a logically partitioned data processing system
JP2007529079A (ja) 自己調節スレッド化モデルによるアプリケーションサーバのためのシステム及び方法
KR20210084620A (ko) 프로세서에서의 여유시간 인식, 동적 우선순위 변경
Åsberg et al. Resource sharing using the rollback mechanism in hierarchically scheduled real-time open systems
Vardanega et al. On the dynamic semantics and the timing behavior of ravenscar kernels
JP5045576B2 (ja) マルチプロセッサシステム及びプログラム実行方法
Parikh et al. Performance parameters of RTOSs; comparison of open source RTOSs and benchmarking techniques
JP5480322B2 (ja) 性能制御方法、そのシステムおよびプログラム
Lei et al. Worst-case response time analysis for osek/vdx compliant real-time distributed control systems
Pitter et al. Time predictable CPU and DMA shared memory access
Glaß „Plan Based Thread Scheduling on HPC Nodes “
Sen Dynamic processor allocation for adaptively parallel work-stealing jobs
Takada et al. Inter-and intra-processor synchronizations in multiprocessor real-time kernel
Pinto Mecanismos Baseados em Reservas para Clusters de Instrumentação de Criticalidade Múltipla
Karwayun et al. STATIC AND DYNAMIC RESOURCE ALLOCATION STRATEGIES IN HIGH PERFORMANCE HETEROGENEOUS COMPUTING APPLICATION.
Xu A Semi-partitioned Model for Scheduling Mixed Criticality Multi-core Systems
Furr What is real time and why do i need it?
CN118093140A (zh) 一种内核级时间触发调度方法及装置
Gao et al. Effective Real-Time Scheduling Optimization for Multi-Functional Mixed-Criticality Systems

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070703