JPH10293694A - Cpu資源割当てを保証するためのプロセススケジューリング方式 - Google Patents
Cpu資源割当てを保証するためのプロセススケジューリング方式Info
- Publication number
- JPH10293694A JPH10293694A JP2570598A JP2570598A JPH10293694A JP H10293694 A JPH10293694 A JP H10293694A JP 2570598 A JP2570598 A JP 2570598A JP 2570598 A JP2570598 A JP 2570598A JP H10293694 A JPH10293694 A JP H10293694A
- Authority
- JP
- Japan
- Prior art keywords
- time
- time slice
- scheduling method
- processing
- cpu
- 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.)
- Pending
Links
Abstract
(57)【要約】
【課題】 動作中のプロセスに、それが必要とするCP
U資源の割り当てを保証するプロセススケジューリング
方式を提供する。 【解決手段】 CPU資源割当てを時分割方式(TS
S)により制御する。このTSS方式の制御では、将来
の(例えば一定時間範囲の)一連のタイムスライス中の
タイムスライスをプロセスが事前に予約する「静的な」
割り当て方式を採用する。この静的割り当てにより、時
間的制約の厳しい処理のサービス品質(QOS)を保証
する。また、動画像配信処理とトランザクション処理等
を混在させた場合にも、双方の処理のQOSを保証する
ことを可能とするような方法で、静的な資源割り当てを
行うことができる。
U資源の割り当てを保証するプロセススケジューリング
方式を提供する。 【解決手段】 CPU資源割当てを時分割方式(TS
S)により制御する。このTSS方式の制御では、将来
の(例えば一定時間範囲の)一連のタイムスライス中の
タイムスライスをプロセスが事前に予約する「静的な」
割り当て方式を採用する。この静的割り当てにより、時
間的制約の厳しい処理のサービス品質(QOS)を保証
する。また、動画像配信処理とトランザクション処理等
を混在させた場合にも、双方の処理のQOSを保証する
ことを可能とするような方法で、静的な資源割り当てを
行うことができる。
Description
【0001】
【発明の技術分野】本発明は、マルチプロセスをサポー
トするオペレーティングシステム(OS)におけるプロ
セススケジューリング方式の改良に関する。
トするオペレーティングシステム(OS)におけるプロ
セススケジューリング方式の改良に関する。
【0002】
【従来の技術】マルチプロセスをサポートするUNlX
等の汎用OSは、複数のプロセスを効率よく動作させる
ためにプロセススケジューリングを行う。以下に、従来
の代表的なプロセススケジューリング方式を示す。
等の汎用OSは、複数のプロセスを効率よく動作させる
ためにプロセススケジューリングを行う。以下に、従来
の代表的なプロセススケジューリング方式を示す。
【0003】時分割ラウンドロビン制御は、各プロセス
に公平にCPU資源を割当てる方式であり、CPU時間
をタイムスライスに分割し、各プロセスに順々にタイム
スライスを割当てる。時分割プライオリティ制御は、プ
ロセスに優先度を与えておき、あるプロセスがタイムス
ライスを使い切ると、その時点で一番優先度の高いプロ
セスに次のタイムスライスを割当てる。プライオリティ
は再計算されるので、相対的な優先順位が変化する。ま
た、リアルタイムプライオリティ制御は、通常プライオ
リティより優先度が高いリアルタイムプライオリティを
特定のプロセスに与えて、そのプロセスを常に最優先に
処理する。プライオリティは固定である。そのため、リ
アルタイムプライオリティを持ったプロセスは、それに
一度CPUが割当てられると、それより高いリアルタイ
ムプライオリティを持つプロセスか生成されるか、自発
的にCPUを手放さない限り、CPU資源を占有し続け
る。
に公平にCPU資源を割当てる方式であり、CPU時間
をタイムスライスに分割し、各プロセスに順々にタイム
スライスを割当てる。時分割プライオリティ制御は、プ
ロセスに優先度を与えておき、あるプロセスがタイムス
ライスを使い切ると、その時点で一番優先度の高いプロ
セスに次のタイムスライスを割当てる。プライオリティ
は再計算されるので、相対的な優先順位が変化する。ま
た、リアルタイムプライオリティ制御は、通常プライオ
リティより優先度が高いリアルタイムプライオリティを
特定のプロセスに与えて、そのプロセスを常に最優先に
処理する。プライオリティは固定である。そのため、リ
アルタイムプライオリティを持ったプロセスは、それに
一度CPUが割当てられると、それより高いリアルタイ
ムプライオリティを持つプロセスか生成されるか、自発
的にCPUを手放さない限り、CPU資源を占有し続け
る。
【0004】
【発明が解決しようとする課題】ここで、時間的制約の
厳しい処理(例えば、ビデオオンデマンド(VOD)シ
ステムのような動画像配信処理)と、所定時間内の応答
時間を要求される処理(例えば、トランザクション(T
R)処理)との混在的処理を汎用計算機上で行う場合を
想定する。時分割ラウンドロビン制御や時分割プライオ
リティ制御では、TR処理が動画像配信処理に擾乱を与
える、つまり、TR処理へのCPU割り当てが動画像配
信処理へのCPU割り当てを圧迫する可能性がある。そ
のため、動画像配信処理のサービス品質(Quality of S
ervice;QOS)を保証することができない。一方、動
画像配信処理にリアルタイムプライオリティを与えた場
合には、専ら動画像配信処理がCPU資源を占有し、T
R処理にCPU割当てが廻らない。従って、従来のプロ
セススケジューリング方式では、動画像配信処理のQO
Sを保証しつつTR処理との混在処理を行うことは困難
である。
厳しい処理(例えば、ビデオオンデマンド(VOD)シ
ステムのような動画像配信処理)と、所定時間内の応答
時間を要求される処理(例えば、トランザクション(T
R)処理)との混在的処理を汎用計算機上で行う場合を
想定する。時分割ラウンドロビン制御や時分割プライオ
リティ制御では、TR処理が動画像配信処理に擾乱を与
える、つまり、TR処理へのCPU割り当てが動画像配
信処理へのCPU割り当てを圧迫する可能性がある。そ
のため、動画像配信処理のサービス品質(Quality of S
ervice;QOS)を保証することができない。一方、動
画像配信処理にリアルタイムプライオリティを与えた場
合には、専ら動画像配信処理がCPU資源を占有し、T
R処理にCPU割当てが廻らない。従って、従来のプロ
セススケジューリング方式では、動画像配信処理のQO
Sを保証しつつTR処理との混在処理を行うことは困難
である。
【0005】この例が典型的に示すように、従来のプロ
セススケジューリングは、動作中のプロセスに、それが
必要とするCPU資源割り当てを保証することが難し
い。
セススケジューリングは、動作中のプロセスに、それが
必要とするCPU資源割り当てを保証することが難し
い。
【0006】従って、本発明の目的は、動作中のプロセ
スに、それが必要とするCPU資源の割り当てを保証す
るプロセススケジューリング方式を提供することにあ
る。
スに、それが必要とするCPU資源の割り当てを保証す
るプロセススケジューリング方式を提供することにあ
る。
【0007】
【課題を解決するための手段】従来のスケジューリング
方式はいずれも動的な割当てである。つまり、プロセス
ディスパッチを行う時点になって、初めて次にCPUを
割当てるプロセスが決定される。そのため、確実なCP
U資源割当てが保証されない。
方式はいずれも動的な割当てである。つまり、プロセス
ディスパッチを行う時点になって、初めて次にCPUを
割当てるプロセスが決定される。そのため、確実なCP
U資源割当てが保証されない。
【0008】これに対し、本発明は、事前に静的にCP
U資源の割当てを行うことにより、時間的制約の厳しい
処理のQOSを保証することを可能とする。また、VO
Dシステム等の動画像配信処理とTR処理等を混在させ
た場合にも、双方の処理のQOSを保証することを可能
とするような方法で、静的な資源割り当てを行うことが
できる。
U資源の割当てを行うことにより、時間的制約の厳しい
処理のQOSを保証することを可能とする。また、VO
Dシステム等の動画像配信処理とTR処理等を混在させ
た場合にも、双方の処理のQOSを保証することを可能
とするような方法で、静的な資源割り当てを行うことが
できる。
【0009】本発明では、CPU資源割当てを時分割方
式(TSS)により制御する。本発明によるTSS方式
の制御の一つの特徴は、将来の(例えば一定時間範囲
の)一連のタイムスライス中のタイムスライスをプロセ
スが事前に予約する「静的な」割り当て方式にある。こ
の静的割り当てにより、プロセスへのCPU資源割り当
てが保証される。
式(TSS)により制御する。本発明によるTSS方式
の制御の一つの特徴は、将来の(例えば一定時間範囲
の)一連のタイムスライス中のタイムスライスをプロセ
スが事前に予約する「静的な」割り当て方式にある。こ
の静的割り当てにより、プロセスへのCPU資源割り当
てが保証される。
【0010】この静的割り当てに当たっては、プロセス
の処理量を事前に見積もっておいて、その処理量の見積
もり値に応じて、処理量がより多いプロセスにはより多
くのタイムスライスを割り当てるように制御することが
できる。あるいは、(例えばプロセスの処理量に基づい
て)プロセスのサービス品質保証条件を求めておいて、
この条件を満たすようにタイムスライス割り当てを制御
することができる。例えば動画像配信処理に適用する場
合、配信される各コンテンツ毎に、それに含まれる個々
のデータセクションの処理量を前もって把握し、この処
理量から連続再生を保証するための条件として、各デー
タセクションを配信するべき時間範囲を求め、できるだ
け各データセクションをそれぞれの時間範囲内に配信で
きるように、各セクション処理に対してその時間範囲内
のタイムスライスを割り当てるようにすることができ
る。
の処理量を事前に見積もっておいて、その処理量の見積
もり値に応じて、処理量がより多いプロセスにはより多
くのタイムスライスを割り当てるように制御することが
できる。あるいは、(例えばプロセスの処理量に基づい
て)プロセスのサービス品質保証条件を求めておいて、
この条件を満たすようにタイムスライス割り当てを制御
することができる。例えば動画像配信処理に適用する場
合、配信される各コンテンツ毎に、それに含まれる個々
のデータセクションの処理量を前もって把握し、この処
理量から連続再生を保証するための条件として、各デー
タセクションを配信するべき時間範囲を求め、できるだ
け各データセクションをそれぞれの時間範囲内に配信で
きるように、各セクション処理に対してその時間範囲内
のタイムスライスを割り当てるようにすることができ
る。
【0011】また、静的割り当てを適用するプロセスの
クラスを限定し、かつ、静的割り当てによるタイムスラ
イス割り当て率に適当な上限を設定しておくことができ
る。これにより、他のクラスのプロセスに対しても資源
割り当てが保証されるので、特定のプロセスがCPU資
源を占有することを防ぐことができる。例えば、時間的
制約の強い動画像配信処理には静的割り当てを適用し、
それへのタイムスライス割り当て率には上限を設けてお
くことにより、予約されていないタイムスライスを確実
に残し、その残ったタイムスライスをTR処理に割り当
てることにより、動画像配信処理とTR処理との混在処
理が可能となる。さらに、この場合、一定時間後までの
範囲で静的割り当てを行うようにしておけば、TR処理
に割り当たられるタイムスライスは、一定時間以内のイ
ンターバルで確実に到来するから、一定時間以内の応答
というTR処理のサービス品質保証条件も満たすことが
できる。なお、本発明のスケジューリングをコンピュー
タに行わせるためのプログラムは、ディスク型ストレー
ジ、半導体メモリ、通信回線などの種々の媒体を通じて
コンピュータにインストール又はロードすることができ
る。
クラスを限定し、かつ、静的割り当てによるタイムスラ
イス割り当て率に適当な上限を設定しておくことができ
る。これにより、他のクラスのプロセスに対しても資源
割り当てが保証されるので、特定のプロセスがCPU資
源を占有することを防ぐことができる。例えば、時間的
制約の強い動画像配信処理には静的割り当てを適用し、
それへのタイムスライス割り当て率には上限を設けてお
くことにより、予約されていないタイムスライスを確実
に残し、その残ったタイムスライスをTR処理に割り当
てることにより、動画像配信処理とTR処理との混在処
理が可能となる。さらに、この場合、一定時間後までの
範囲で静的割り当てを行うようにしておけば、TR処理
に割り当たられるタイムスライスは、一定時間以内のイ
ンターバルで確実に到来するから、一定時間以内の応答
というTR処理のサービス品質保証条件も満たすことが
できる。なお、本発明のスケジューリングをコンピュー
タに行わせるためのプログラムは、ディスク型ストレー
ジ、半導体メモリ、通信回線などの種々の媒体を通じて
コンピュータにインストール又はロードすることができ
る。
【0012】
【発明の実施の形態】図1は、本発明のスケジューリン
グ方式を適用した動画像配信システムの一実施形態の全
体構成と、その動画像配信処理の全体流れとを示す。
グ方式を適用した動画像配信システムの一実施形態の全
体構成と、その動画像配信処理の全体流れとを示す。
【0013】記録ディスク上のデータベース1に、種々
のコンテンツ11が格納される(ステップS1)。この
データベース1から、配信すべきコンテンツのストリー
ムデータ13が1回に所定量づつメモリ3に読み込まれ
る(ステップS2)。メモリ3に読み込まれた各ストリ
ームデータ13は、n個の分割データ(Divided-Data;
dd)15にn等分される。CPU5は、メモリ3内の
ストリームデータ群からネットワーク処理を行うべきス
トリームデータを決定し(ステップS3)、そのストリ
ームデータをクライアントへ配信するために、各dd1
5毎にネットワーク処理を行う(ステップS4)。
のコンテンツ11が格納される(ステップS1)。この
データベース1から、配信すべきコンテンツのストリー
ムデータ13が1回に所定量づつメモリ3に読み込まれ
る(ステップS2)。メモリ3に読み込まれた各ストリ
ームデータ13は、n個の分割データ(Divided-Data;
dd)15にn等分される。CPU5は、メモリ3内の
ストリームデータ群からネットワーク処理を行うべきス
トリームデータを決定し(ステップS3)、そのストリ
ームデータをクライアントへ配信するために、各dd1
5毎にネットワーク処理を行う(ステップS4)。
【0014】本システムにおけるプロセススケジューリ
ングを以下に詳細に説明する。
ングを以下に詳細に説明する。
【0015】このプロセススケジューリングは時分割方
式(Time-Sharing-System;TSS)をベースとする。T
SSでは、CPU処理時間をタイムスライス(Time-Sli
ce;TS)に分割し個々のTSを各プロセスに割当て
る。従って、CPUは、あるプロセスの処理を行い、そ
のTSが経過するとその処理を中断し、別のプロセスに
処理を切り替える。
式(Time-Sharing-System;TSS)をベースとする。T
SSでは、CPU処理時間をタイムスライス(Time-Sli
ce;TS)に分割し個々のTSを各プロセスに割当て
る。従って、CPUは、あるプロセスの処理を行い、そ
のTSが経過するとその処理を中断し、別のプロセスに
処理を切り替える。
【0016】このプロセススケジューリングでは、TS
の長さは、1つのdd15のネットワーク処理に要する
CPU時間に等しく設定される。すなわち、ディスク1
からメモリ3に1回で読み込まれるデータストリーム1
3の量は、一定のaバイトに予め設定されている(ディ
スク読み出しの効率を高めるために、aは出来るだけ大
きいことが望ましい)。このaバイトをn等分したデー
タ量を分割データ量(divided-data-quantity;ddq)
という(aはnで割り切れる値であり、nはチューニン
グ値で、n>1である。)。ddqのネットワーク処理
を行うために必要なCPU時間をcとする(ddqが一
定であればcも一定である)。このcに等しくTSの長
さを設定する。
の長さは、1つのdd15のネットワーク処理に要する
CPU時間に等しく設定される。すなわち、ディスク1
からメモリ3に1回で読み込まれるデータストリーム1
3の量は、一定のaバイトに予め設定されている(ディ
スク読み出しの効率を高めるために、aは出来るだけ大
きいことが望ましい)。このaバイトをn等分したデー
タ量を分割データ量(divided-data-quantity;ddq)
という(aはnで割り切れる値であり、nはチューニン
グ値で、n>1である。)。ddqのネットワーク処理
を行うために必要なCPU時間をcとする(ddqが一
定であればcも一定である)。このcに等しくTSの長
さを設定する。
【0017】本システムのプロセススケジューリングで
は、各コンテンツ毎にTSの使用量を事前に見積もる。
つまり、図2に例示する再生時間表を作成する。コンテ
ンツはデータベースに格納されており、その処理量は事
前にわかる。この処理量に応じてTSの使用量を見積も
ることができる。再生時間表の作成作業は、データベー
スへのコンテンツ登録時に1度行えばよい。データベー
スに格納される全てのコンテンツについて、次のように
して再生時間表を作成する。
は、各コンテンツ毎にTSの使用量を事前に見積もる。
つまり、図2に例示する再生時間表を作成する。コンテ
ンツはデータベースに格納されており、その処理量は事
前にわかる。この処理量に応じてTSの使用量を見積も
ることができる。再生時間表の作成作業は、データベー
スへのコンテンツ登録時に1度行えばよい。データベー
スに格納される全てのコンテンツについて、次のように
して再生時間表を作成する。
【0018】対象のコンテンツのデータ量をyとする。
このyをddq単位に分割する。これによりコンテンツ
がm個のddに分割できたとすると、そのm個のddに
1からmまでの番号を付ける(以下、i番のddをdd
(i)という)。次に、各dd(i)毎の実再生時間を
求め、この実再生時間をTS単位の値(以下、TS値と
いう)に換算し、このTS値を再生時間表に登録する。
次に、次式により対象コンテンツのTS平均使用率を求
め、これを再生時間表に登録する。
このyをddq単位に分割する。これによりコンテンツ
がm個のddに分割できたとすると、そのm個のddに
1からmまでの番号を付ける(以下、i番のddをdd
(i)という)。次に、各dd(i)毎の実再生時間を
求め、この実再生時間をTS単位の値(以下、TS値と
いう)に換算し、このTS値を再生時間表に登録する。
次に、次式により対象コンテンツのTS平均使用率を求
め、これを再生時間表に登録する。
【0019】TS平均使用率=m/Σ(dd(i)のT
S値)×100% 例えば、図2に例示するように、コンテンツ#2が図示
のTS値をもつdd(1)〜dd(5)に分割されたと
すると、このコンテンツ#2のTS平均使用率は、 5/(4+4+3+4+4)×100%=26.31% となる。
S値)×100% 例えば、図2に例示するように、コンテンツ#2が図示
のTS値をもつdd(1)〜dd(5)に分割されたと
すると、このコンテンツ#2のTS平均使用率は、 5/(4+4+3+4+4)×100%=26.31% となる。
【0020】本システムのプロセススケジューリングで
は、また、次のようなQOS保証条件を使用する。すな
わち、動画像配信処理におけるQOSの一つに、コンテ
ンツの連続再生を保証することがあるが、これを保証す
るためには、各dd(i)を配信してからそのdd
(i)の実再生時間が経過するより以前に、次のdd
(i+1)を配信しなくてはならない。例えば、図2に
例示するコンテンツ#1では、dd(l)の実再生時間
は5TSであるから、コンテンツ#1の連続再生を保証
するためには、dd(l)を配信してから5TS以内に次
のdd(2)を配信しなければならない。
は、また、次のようなQOS保証条件を使用する。すな
わち、動画像配信処理におけるQOSの一つに、コンテ
ンツの連続再生を保証することがあるが、これを保証す
るためには、各dd(i)を配信してからそのdd
(i)の実再生時間が経過するより以前に、次のdd
(i+1)を配信しなくてはならない。例えば、図2に
例示するコンテンツ#1では、dd(l)の実再生時間
は5TSであるから、コンテンツ#1の連続再生を保証
するためには、dd(l)を配信してから5TS以内に次
のdd(2)を配信しなければならない。
【0021】このように連続再生を保証するために、図
3に示すようなQOS保証範囲を各dd(i)毎に計算
する。すなわち、あるdd(i)について、最初のdd
(1)を配信したTSから起算して、最初のdd(1)
から直前のdd(i−1)までのTS値の積算値だけ後
のTSを、dd(i)のQOS保証範囲の先頭レンジと
定め、また、この先頭レンジから起算してdd(i−
1)のTS値だけ後のTSを、dd(i)のQOS保証
範囲の後尾レンジと定める。この先頭レンジから後尾レ
ンジまでのQOS保証範囲が、連続再生を保証するため
のdd(i)を配信すべき時間範囲である。
3に示すようなQOS保証範囲を各dd(i)毎に計算
する。すなわち、あるdd(i)について、最初のdd
(1)を配信したTSから起算して、最初のdd(1)
から直前のdd(i−1)までのTS値の積算値だけ後
のTSを、dd(i)のQOS保証範囲の先頭レンジと
定め、また、この先頭レンジから起算してdd(i−
1)のTS値だけ後のTSを、dd(i)のQOS保証
範囲の後尾レンジと定める。この先頭レンジから後尾レ
ンジまでのQOS保証範囲が、連続再生を保証するため
のdd(i)を配信すべき時間範囲である。
【0022】図4は、本システムにおけるプロセススケ
ジューラの構成を示す。
ジューラの構成を示す。
【0023】プロセススケジューラは、変数として、時
刻21、先行スケジュール範囲(SR)23、TS割り
当て率25及びしきい値27を有する。時刻21は、T
S単位で表した現在時刻を示す。SR23は、予めプロ
セスを静的に割り当てておく一連のTSの範囲(SR)
を、TSの個数で示す(これは定数でもよい)。TS割
り当て率25は、SR23に含まれるTSの総個数に対
する、プロセスが既に割り当てられているTSの個数の
率を示す。しきい値27は、静的割り当て(Static-Ass
ign;SA)クラスのプロセスに対するTS割り当て率の
上限を示す(これは定数でもよい)。
刻21、先行スケジュール範囲(SR)23、TS割り
当て率25及びしきい値27を有する。時刻21は、T
S単位で表した現在時刻を示す。SR23は、予めプロ
セスを静的に割り当てておく一連のTSの範囲(SR)
を、TSの個数で示す(これは定数でもよい)。TS割
り当て率25は、SR23に含まれるTSの総個数に対
する、プロセスが既に割り当てられているTSの個数の
率を示す。しきい値27は、静的割り当て(Static-Ass
ign;SA)クラスのプロセスに対するTS割り当て率の
上限を示す(これは定数でもよい)。
【0024】ここに、SAクラスとは、このプロセスス
ケジューリングの対象となるプロセスのクラスのことで
ある。SAクラスは、TSSをベースとする他のプロセ
ススケジューリングの対象となる他のクラスと共存でき
る。SAクラスには、共存する他の全てのクラスより高
い優先順位が与えられる。SAクラスと他のクラスとが
共存する場合、しきい値27は100%未満の値に設定
される。すると、他のクラスに対して、最小でも、10
0%からしきい値を差し引いた値のTS割り当て率が保
証される。
ケジューリングの対象となるプロセスのクラスのことで
ある。SAクラスは、TSSをベースとする他のプロセ
ススケジューリングの対象となる他のクラスと共存でき
る。SAクラスには、共存する他の全てのクラスより高
い優先順位が与えられる。SAクラスと他のクラスとが
共存する場合、しきい値27は100%未満の値に設定
される。すると、他のクラスに対して、最小でも、10
0%からしきい値を差し引いた値のTS割り当て率が保
証される。
【0025】プロセススケジューラは、また、SR23
内のTSの割り当てを管理するためのTS表29を有す
る。TS表29は、SR23に余裕分のα個のTSを加
えた一連のTSに対応した領域41を有する。各TS領
域41には、そのTSに割当てられたプロセス(つま
り、そのTSで処理すべきプロセス)の識別子(以下、
プロセスIDという)が書かれている。プロセスが割り
当てられていないTS領域41は空きである。また、ポ
インタ43が、時刻21に対応するTSを指している。
なお、前述したように、1つのTSには1つのddが割
当てられる。
内のTSの割り当てを管理するためのTS表29を有す
る。TS表29は、SR23に余裕分のα個のTSを加
えた一連のTSに対応した領域41を有する。各TS領
域41には、そのTSに割当てられたプロセス(つま
り、そのTSで処理すべきプロセス)の識別子(以下、
プロセスIDという)が書かれている。プロセスが割り
当てられていないTS領域41は空きである。また、ポ
インタ43が、時刻21に対応するTSを指している。
なお、前述したように、1つのTSには1つのddが割
当てられる。
【0026】プロセススケジューラは、さらに、受入れ
たプロセスのQOS保証範囲を管理するためのプロセス
表31を有している。尚、本実施形態では、図1に示し
た1つのストリームデータ13の処理を1つのプロセス
とする。プロセス表31には、現在までに受入れた各プ
ロセスについて、プロセスIDと先頭レンジと後尾レン
ジとデータ番号とが書かれている。プロセス表31にお
ける先頭レンジ及び後尾レンジとは、そのプロセス中の
次に配信される予定のddの先頭レンジ及び後尾レンジ
のことである。また、プロセス表31におけるデータ番
号とは、そのプロセスのTS表41内のTSに割り当て
られたddの内の、最後のddの番号である。
たプロセスのQOS保証範囲を管理するためのプロセス
表31を有している。尚、本実施形態では、図1に示し
た1つのストリームデータ13の処理を1つのプロセス
とする。プロセス表31には、現在までに受入れた各プ
ロセスについて、プロセスIDと先頭レンジと後尾レン
ジとデータ番号とが書かれている。プロセス表31にお
ける先頭レンジ及び後尾レンジとは、そのプロセス中の
次に配信される予定のddの先頭レンジ及び後尾レンジ
のことである。また、プロセス表31におけるデータ番
号とは、そのプロセスのTS表41内のTSに割り当て
られたddの内の、最後のddの番号である。
【0027】図5は、このスケジューラが行うプロセス
スケジューリングの全体的な流れを示す。
スケジューリングの全体的な流れを示す。
【0028】定常的な処理として、プロセスの選択処理
(ステップS11)を行い、次いで選択したプロセスの
1TS部分の処理(ステップS13)を行い、次いでス
ケジューラのパラメータの更新処理(ステップS15)
を行うという流れを繰り返す。新しくSAクラスのプロ
セスが生成されると(ステップS14)、その受入処理
のためにTS表29内の最も早い空きの1TSを確保し
(ステップS17、S18)、そのTSが来ると(ステ
ップS12)、新規プロセスの受入処理を行う(ステッ
プ16)。
(ステップS11)を行い、次いで選択したプロセスの
1TS部分の処理(ステップS13)を行い、次いでス
ケジューラのパラメータの更新処理(ステップS15)
を行うという流れを繰り返す。新しくSAクラスのプロ
セスが生成されると(ステップS14)、その受入処理
のためにTS表29内の最も早い空きの1TSを確保し
(ステップS17、S18)、そのTSが来ると(ステ
ップS12)、新規プロセスの受入処理を行う(ステッ
プ16)。
【0029】図6は、図5ステップS11のプロセス選
択処理の詳細を示す。
択処理の詳細を示す。
【0030】プロセス選択処理では、SAクラスのプロ
セスを優先させる。まず、TS表29を参照し(ステッ
プS21)、ポインタ43の指すTS(つまり、現時刻
のTS)がいずれかのプロセスに予約されていれば、そ
のプロセスを選択する(ステップS22)。TS表29
で現時刻のTSが予約されていなければ、SAクラス以
外のクラスのプロセスを選択する(ステップS23)。
これにより、他のクラスのプロセスとの混在処理を可能
とする。
セスを優先させる。まず、TS表29を参照し(ステッ
プS21)、ポインタ43の指すTS(つまり、現時刻
のTS)がいずれかのプロセスに予約されていれば、そ
のプロセスを選択する(ステップS22)。TS表29
で現時刻のTSが予約されていなければ、SAクラス以
外のクラスのプロセスを選択する(ステップS23)。
これにより、他のクラスのプロセスとの混在処理を可能
とする。
【0031】図7は、図5ステップS16の新規プロセ
ス受入処理の詳細を示す。
ス受入処理の詳細を示す。
【0032】まず、現在のTS割当て率25と、再生時
間表(図2)に書かれた新規プロセスのTS平均使用率
とを加算することにより、新規プロセスを受け入れた後
のTS割当て率を概略的に予想し、その予想値がTS表
29に書かれたしきい値27を越えるか否かチェックす
る(ステップS31、S32)。その結果、予想値がし
きい値が越える場合その新規プロセスの受け入れを拒否
する(ステップS33)。つまり、新規プロセスを受け
入れるとCPU資源の割当てが困難となると判断し、そ
のプロセスを受け入れないことにより既に受け入れてい
るプロセスのCPU資源割当てを保証する。
間表(図2)に書かれた新規プロセスのTS平均使用率
とを加算することにより、新規プロセスを受け入れた後
のTS割当て率を概略的に予想し、その予想値がTS表
29に書かれたしきい値27を越えるか否かチェックす
る(ステップS31、S32)。その結果、予想値がし
きい値が越える場合その新規プロセスの受け入れを拒否
する(ステップS33)。つまり、新規プロセスを受け
入れるとCPU資源の割当てが困難となると判断し、そ
のプロセスを受け入れないことにより既に受け入れてい
るプロセスのCPU資源割当てを保証する。
【0033】一方、予想値がしきい値を越えない場合
は、新規プロセスを受け入れる。この場合、その新規プ
ロセスの各ddに、それぞれのQOSを保証するように
して、SR(先行スケジュール範囲)23内で空きTS
を割当てる。
は、新規プロセスを受け入れる。この場合、その新規プ
ロセスの各ddに、それぞれのQOSを保証するように
して、SR(先行スケジュール範囲)23内で空きTS
を割当てる。
【0034】すなわち、まず、新規プロセスにTS表1
9内の最も早い空きTSを割り当て(ステップS35、
S36)、また、再生時間表に書かれた新規プロセスの
最初のdd(1)の再生時間(TS値)から、次のdd
(2)のQOS保証範囲を計算しプロセス表31に書き
込む(ステップS34、S37)。次に、このQOS保
証範囲の先頭レンジが、現在時刻21からSR23の時
間長だけ遅れた時刻より以前であるならば、そのQOS
保証範囲内で最も早い空きTSをその新規プロセスに割
り当てる(ステップS39、S40)。もし、そのQO
S保証範囲内に空TSが無ければ、先頭レンジ以前で最
も遅い空きTSをその新規プロセスに割り当てる(ステ
ップS41)。もし、先頭レンジ以前にも空きTSが無
ければ、後尾レンジ以降で最も早い空きTSを新規プロ
セスに割り当てる(ステップS42)。この後、1番目
のdd(1)と2番目のdd(2)のTS値から、次の
dd(3)のQOS保証範囲を計算し、データ番号を1
だけ増やして、プロセス表31を更新する(ステップS
38、S43、S44)。以後、後続のddに関して、
そのQOS保証範囲の先頭レンジが、現在時刻21から
SR23の時間長だけ遅れた時刻より以前である限り、
ステップS38以下の処理を繰り返す。
9内の最も早い空きTSを割り当て(ステップS35、
S36)、また、再生時間表に書かれた新規プロセスの
最初のdd(1)の再生時間(TS値)から、次のdd
(2)のQOS保証範囲を計算しプロセス表31に書き
込む(ステップS34、S37)。次に、このQOS保
証範囲の先頭レンジが、現在時刻21からSR23の時
間長だけ遅れた時刻より以前であるならば、そのQOS
保証範囲内で最も早い空きTSをその新規プロセスに割
り当てる(ステップS39、S40)。もし、そのQO
S保証範囲内に空TSが無ければ、先頭レンジ以前で最
も遅い空きTSをその新規プロセスに割り当てる(ステ
ップS41)。もし、先頭レンジ以前にも空きTSが無
ければ、後尾レンジ以降で最も早い空きTSを新規プロ
セスに割り当てる(ステップS42)。この後、1番目
のdd(1)と2番目のdd(2)のTS値から、次の
dd(3)のQOS保証範囲を計算し、データ番号を1
だけ増やして、プロセス表31を更新する(ステップS
38、S43、S44)。以後、後続のddに関して、
そのQOS保証範囲の先頭レンジが、現在時刻21から
SR23の時間長だけ遅れた時刻より以前である限り、
ステップS38以下の処理を繰り返す。
【0035】図8は、図5ステップS15のパラメータ
更新処理の詳細を示す。
更新処理の詳細を示す。
【0036】TS表29に書かれている先頭レンジが現
在時刻21からSR29の時間長だけ遅れた時刻より前
であるプロセスの中から(ステップS51)、TS表2
9に書かれている後尾レンジが最も早いプロセスを選択
する(ステップS52)。そのプロセスに、TS表29
に書かれている先頭レンジから後尾レンジの間の範囲内
で最も早い空きTSをそのプロセスに割り当てる(ステ
ップS53)。もし、その範囲内に空きTSが無けれ
ば、先頭レンジ以前で最も遅い空きTSをそのプロセス
に割り当てる(ステップS54)。もし、先頭レンジ以
前にも空きTSが無ければ、後尾レンジ以降で最も早い
空きTSをそのプロセスに割り当てる(ステップS5
5)。この後、そのプロセスの既にTSを割り当てたd
dのTS値の積算値から、次のddのQOS保証範囲を
計算し、また、データ番号を1だけ増やして、プロセス
表31を更新する(ステップS56、S57)。以後、
TS表29に書かれた先頭レンジが、現在時刻21から
SR23の時間長だけ遅れた時刻より以前であるプロセ
スが存在する限り、後尾レンジが早いプロセスから順
に、それらプロセスについてステップS51以下の処理
を繰り返す。
在時刻21からSR29の時間長だけ遅れた時刻より前
であるプロセスの中から(ステップS51)、TS表2
9に書かれている後尾レンジが最も早いプロセスを選択
する(ステップS52)。そのプロセスに、TS表29
に書かれている先頭レンジから後尾レンジの間の範囲内
で最も早い空きTSをそのプロセスに割り当てる(ステ
ップS53)。もし、その範囲内に空きTSが無けれ
ば、先頭レンジ以前で最も遅い空きTSをそのプロセス
に割り当てる(ステップS54)。もし、先頭レンジ以
前にも空きTSが無ければ、後尾レンジ以降で最も早い
空きTSをそのプロセスに割り当てる(ステップS5
5)。この後、そのプロセスの既にTSを割り当てたd
dのTS値の積算値から、次のddのQOS保証範囲を
計算し、また、データ番号を1だけ増やして、プロセス
表31を更新する(ステップS56、S57)。以後、
TS表29に書かれた先頭レンジが、現在時刻21から
SR23の時間長だけ遅れた時刻より以前であるプロセ
スが存在する限り、後尾レンジが早いプロセスから順
に、それらプロセスについてステップS51以下の処理
を繰り返す。
【0037】以上のプロセス選択処理からパラメータ更
新処理までを1TSで行い、その後、この1TSが終わ
ると、現在時刻21を1進めると共にTS表29のポイ
ンタ43を次のTSへ進ませ(ステップS58)、今ま
でのTS割り当ての結果に従ってTS割り当て率25を
更新する(ステップS59)。
新処理までを1TSで行い、その後、この1TSが終わ
ると、現在時刻21を1進めると共にTS表29のポイ
ンタ43を次のTSへ進ませ(ステップS58)、今ま
でのTS割り当ての結果に従ってTS割り当て率25を
更新する(ステップS59)。
【0038】図9は、以上のスケジューリングの結果の
一例を示す。
一例を示す。
【0039】図9(A)はCPU割り当ての様子を示し
たもので、図9(C)の再生時間表に示すようなdd
(1)からdd(5)を有したコンテンツ#1に、10
TS分の先行スケジュール範囲が割当てられたときの例
を示す。現在、3番目のdd(3)までの割り当てが終
わっており、最初のdd(1)には0番のTSが割り当
てられ、2番目のdd(2)および3番目のdd(3)
にはそれぞれのQOS保証範囲内の最も早いTSが割り
当てられている。そして、4番目のdd(4)のQOS
保証範囲の先頭レンジ(10番目TS)と後尾レンジ
(13番目TS)とが図9(B)のプロセス表31に書
かれている。この時のTS割り当て率25は30%であ
り、しきい値27は90%であるから、さらに平均使用
率が60%以下のSAクラスの新規プロセスを受け入れ
ることができる。また、SAクラス以外のクラスに対し
て、最小でも10%のTS割り当て率が保証される。
たもので、図9(C)の再生時間表に示すようなdd
(1)からdd(5)を有したコンテンツ#1に、10
TS分の先行スケジュール範囲が割当てられたときの例
を示す。現在、3番目のdd(3)までの割り当てが終
わっており、最初のdd(1)には0番のTSが割り当
てられ、2番目のdd(2)および3番目のdd(3)
にはそれぞれのQOS保証範囲内の最も早いTSが割り
当てられている。そして、4番目のdd(4)のQOS
保証範囲の先頭レンジ(10番目TS)と後尾レンジ
(13番目TS)とが図9(B)のプロセス表31に書
かれている。この時のTS割り当て率25は30%であ
り、しきい値27は90%であるから、さらに平均使用
率が60%以下のSAクラスの新規プロセスを受け入れ
ることができる。また、SAクラス以外のクラスに対し
て、最小でも10%のTS割り当て率が保証される。
【0040】以上、本発明の実施形態を説明したが、本
発明は他の形態によっても実施することができることは
言うまでもない。
発明は他の形態によっても実施することができることは
言うまでもない。
【図1】 本発明のスケジューリング方式を適用した動
画像配信システムの一実施形態の全体構成と動画像配信
処理の全体流れとを示したブロック図。
画像配信システムの一実施形態の全体構成と動画像配信
処理の全体流れとを示したブロック図。
【図2】 再生時間表を例示した図。
【図3】 QOS保証範囲の説明図。
【図4】 プロセススケジューラの構成を示すブロック
図。
図。
【図5】 プロセススケジューリングの全体的な流れを
示すフローチャート。
示すフローチャート。
【図6】 図5ステップS11のプロセス選択処理の詳
細を示すフローチャート。
細を示すフローチャート。
【図7】 図5ステップS16の新規プロセス受入処理
の詳細を示すフローチャート。
の詳細を示すフローチャート。
【図8】 図5ステップS15のパラメータ更新処理の
詳細を示すフローチャート。
詳細を示すフローチャート。
【図9】 スケジューリングの結果の一例を示す。
1 データベース 2 メモリ 3 CPU 11 コンテンツ 13 ストリームデータ 15 分割データ(dd) 21 時刻 23 先行スケジュール範囲(SR) 25 タイムスライス(TS)割り当て率 27 しきい値 29 TS表 31 プロセス表
Claims (9)
- 【請求項1】 プロセスにCPU資源を割り当てるプロ
セススケジューリング方式において、CPU処理時間に
おける将来の一連のタイムスライスの中から少なくとも
一つのタイムスライスを選び、選んだタイムスライスを
事前に静的にプロセスに割り当てる静的割り当て手段を
備えたプロセススケジューリング方式。 - 【請求項2】 請求項1記載の方式において、プロセス
の所定のサービス品質を保証するためのQOS保証条件
を求める条件取得手段をさらに備え、前記静的割り当て
手段が、前記QOS保証条件を満たすように、プロセス
に割り当てるタイムスライスを選択するプロセススケジ
ューリング方式。 - 【請求項3】 請求項2記載の方式において、プロセス
の処理量を見積もる見積もり手段と、見積もった処理量
に応じてプロセスを受入可能か否か判断する判断手段と
をさらに備え、前記静的割り当て手段が、受入不可能な
プロセスに対してはタイムスライスの割り当てを拒否す
るプロセススケジューリング方式。 - 【請求項4】 請求項1記載の方式において、プロセス
の処理量を見積もる見積もり手段をさらに備え、前記静
的割り当て手段が、見積もったプロセスの処理量に応じ
て、プロセスに割り当てるタイムスライスを選択するプ
ロセススケジューリング方式。 - 【請求項5】 請求項4記載の方式において、見積もっ
た処理量に応じてプロセスを受入可能か否か判断する判
断手段をさらに備え、前記静的割り当て手段が、受入不
可能なプロセスに対してはタイムスライスの割り当てを
拒否するプロセススケジューリング方式。 - 【請求項6】 請求項1記載の方式において、前記静的
割り当て手段が、予め選択されたクラスのプロセスに対
してのみタイムスライスを静的に割り当て、 前記一連のタイムスライス中に別のクラスのプロセスに
割り当てることのできるタイムスライスを残すために、
前記静的割り当て手段によるタイムスライス割り当て率
を所定の上限値以下に制限する割り当て制限手段をさら
に備えたプロセススケジューリング方式。 - 【請求項7】 請求項1記載の方式において、前記一連
のタイムスライスが一定長の時間範囲であるプロセスス
ケジューリング方式。 - 【請求項8】 プロセスにCPU資源を割り当てるプロ
セススケジューリング方法において、CPU処理時間に
おける将来の一連のタイムスライスの中から少なくとも
一つのタイムスライスを選ぶステップと、選んだタイム
スライスを事前に静的にプロセスに割り当てるステップ
とを備えたプロセススケジューリング方法。 - 【請求項9】 CPU処理時間における将来の一連のタ
イムスライスの中から少なくとも一つのタイムスライス
を選ぶステップと、選んだタイムスライスを事前に静的
にプロセスに割り当てるステップとを備えたプロセスに
CPU資源を割り当てるためのプロセススケジューリン
グ方法を、コンピュータに実行させるためのコンピュー
タプログラムを担持したコンピュータ読み取り可能な記
録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2570598A JPH10293694A (ja) | 1997-02-24 | 1998-02-06 | Cpu資源割当てを保証するためのプロセススケジューリング方式 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3898997 | 1997-02-24 | ||
JP9-38989 | 1997-02-24 | ||
JP2570598A JPH10293694A (ja) | 1997-02-24 | 1998-02-06 | Cpu資源割当てを保証するためのプロセススケジューリング方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH10293694A true JPH10293694A (ja) | 1998-11-04 |
Family
ID=26363368
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2570598A Pending JPH10293694A (ja) | 1997-02-24 | 1998-02-06 | Cpu資源割当てを保証するためのプロセススケジューリング方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH10293694A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005316960A (ja) * | 2004-03-29 | 2005-11-10 | Matsushita Electric Ind Co Ltd | 処理端末、受信端末及び受信データ処理システム |
-
1998
- 1998-02-06 JP JP2570598A patent/JPH10293694A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005316960A (ja) * | 2004-03-29 | 2005-11-10 | Matsushita Electric Ind Co Ltd | 処理端末、受信端末及び受信データ処理システム |
JP4504236B2 (ja) * | 2004-03-29 | 2010-07-14 | パナソニック株式会社 | 処理端末、受信端末及び受信データ処理システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6560628B1 (en) | Apparatus, method, and recording medium for scheduling execution using time slot data | |
US6658449B1 (en) | Apparatus and method for periodic load balancing in a multiple run queue system | |
US6748593B1 (en) | Apparatus and method for starvation load balancing using a global run queue in a multiple run queue system | |
JP2940450B2 (ja) | クラスタ型コンピュータのジョブスケジュール方法及び装置 | |
US20030101084A1 (en) | Method and system for allocating a budget surplus to a task | |
US6212562B1 (en) | Criticality and quality of service (QoS) based resource management | |
US7155716B2 (en) | Weighted and prioritized task scheduler | |
US20040010667A1 (en) | Apparatus and method for load balancing of fixed priority threads in a multiple run queue environment | |
US5999963A (en) | Move-to-rear list scheduling | |
KR100196882B1 (ko) | 주문형 비디오 시스템 및 이 시스템의 비디오 스케쥴링방법,주문형고객서비스시스템의물리적자원스케쥴링방법,컴퓨터판독가능한메모리 | |
US8843652B2 (en) | Distributed real-time operating system | |
US5301324A (en) | Method and apparatus for dynamic work reassignment among asymmetric, coupled processors | |
US5870629A (en) | System for servicing plurality of queues responsive to queue service policy on a service sequence ordered to provide uniform and minimal queue interservice times | |
CN112996116B (zh) | 一种保障电力时延敏感业务质量的资源分配方法及系统 | |
JP2005505857A (ja) | サービス品質の規制に適合するリソースをスケジューリングする方法及び装置 | |
CN109617836B (zh) | 卫星数据传输的智能带宽分配方法及分配系统 | |
EP1410199A2 (en) | A method and a system for allocation of a budget to a task | |
CN110362391B (zh) | 资源调度方法、装置、电子设备及存储介质 | |
CN112463044B (zh) | 一种保证分布式存储系统服务器端读尾延迟的方法及系统 | |
US6882625B2 (en) | Method for scheduling packetized data traffic | |
US20030191794A1 (en) | Apparatus and method for dispatching fixed priority threads using a global run queue in a multiple run queue system | |
US6195699B1 (en) | Real-time scheduler method and apparatus | |
JP2000056992A (ja) | タスクスケジューリングシステム、方法及び記録媒体 | |
CN111817985A (zh) | 业务处理方法及装置 | |
JPH10293694A (ja) | Cpu資源割当てを保証するためのプロセススケジューリング方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD05 | Notification of revocation of power of attorney |
Effective date: 20040903 Free format text: JAPANESE INTERMEDIATE CODE: A7425 |