JPH05204667A - 計算機システムのタスク実行制御装置 - Google Patents
計算機システムのタスク実行制御装置Info
- Publication number
- JPH05204667A JPH05204667A JP1206992A JP1206992A JPH05204667A JP H05204667 A JPH05204667 A JP H05204667A JP 1206992 A JP1206992 A JP 1206992A JP 1206992 A JP1206992 A JP 1206992A JP H05204667 A JPH05204667 A JP H05204667A
- Authority
- JP
- Japan
- Prior art keywords
- task
- cpu
- load
- load factor
- execution
- 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)【要約】
【目的】 複数のタスクを備えた計算機システムにおい
て、タスク実行が短期間に集中するのを防止するととも
に、優先順位の高いタスクの実行要求が長時間保留され
る確率を低減する。 【構成】 現在から過去一定期間内におけるCPUのタ
スク実行時間割合を示す負荷率でもってタスクの実行タ
イミングを判断し、タスク実行要求が集中した場合に
は、優先順位の低いタスクはたとえ現在時点でCPUが
空き状態であったとしても直ぐに起動せずに、CPUの
負荷率が該当タスクに設定された起動許容負荷率以下に
低下した時点で起動するようにしている。
て、タスク実行が短期間に集中するのを防止するととも
に、優先順位の高いタスクの実行要求が長時間保留され
る確率を低減する。 【構成】 現在から過去一定期間内におけるCPUのタ
スク実行時間割合を示す負荷率でもってタスクの実行タ
イミングを判断し、タスク実行要求が集中した場合に
は、優先順位の低いタスクはたとえ現在時点でCPUが
空き状態であったとしても直ぐに起動せずに、CPUの
負荷率が該当タスクに設定された起動許容負荷率以下に
低下した時点で起動するようにしている。
Description
【0001】
【産業上の利用分野】本発明は、複数のタスクを備え、
ランダムに発生するタスク実行要求に応じて、指定され
たタスクをCPU(中央処理装置)でもって実行する計
算機システムに係わり、特に複数のタスク実行要求が短
期間に集中した場合における各タスクの起動タイミング
を制御する計算機システムのタスク実行制御装置に関す
る。
ランダムに発生するタスク実行要求に応じて、指定され
たタスクをCPU(中央処理装置)でもって実行する計
算機システムに係わり、特に複数のタスク実行要求が短
期間に集中した場合における各タスクの起動タイミング
を制御する計算機システムのタスク実行制御装置に関す
る。
【0002】
【従来の技術】各種製造設備の制御や各種プラントの監
視設備等に用いられる計算機システムにおいては、プラ
ント等の制御対象からの入力に対して、一定時間内に応
答を返す必要がある。
視設備等に用いられる計算機システムにおいては、プラ
ント等の制御対象からの入力に対して、一定時間内に応
答を返す必要がある。
【0003】しかし、ある事象の発生した時点のみに多
数のタスク実行要求が発生することがある。このよう
に、短期間のうちに多数のタスク実行要求が発生した場
合に備えて、各タスクには予め優先度が割当てられてい
る。そして、優先度が高いタスクに優先的にCPUを割
当てるようにスケジューリングを行っている。
数のタスク実行要求が発生することがある。このよう
に、短期間のうちに多数のタスク実行要求が発生した場
合に備えて、各タスクには予め優先度が割当てられてい
る。そして、優先度が高いタスクに優先的にCPUを割
当てるようにスケジューリングを行っている。
【0004】しかし、負荷が高いという状況をよくよく
内情を見てみると、計算機システムにおけるCPUに対
して実行要求される多数のタスクのうちには、実行要求
発生と同時に実行する必要のあるタスクと、実行要求の
発生時点から、多少遅れて実行されても業務には支障が
ないタスクもある。
内情を見てみると、計算機システムにおけるCPUに対
して実行要求される多数のタスクのうちには、実行要求
発生と同時に実行する必要のあるタスクと、実行要求の
発生時点から、多少遅れて実行されても業務には支障が
ないタスクもある。
【0005】したがって、短期間のうちに多数のタスク
の実行要求が発生すると、原則とし、入力した各タスク
の実効要求を一旦起動待行列に登録して、先頭のタスク
から順番に実行していくのであるが、優先順位の高いタ
スクに対する実行要求が発生すると、この実行要求を前
記起動待行列の最終の位置ではなく、先頭近傍位置に割
込ませるようにしている。したがって、直ちに実行する
必要のあるタスクは、たとえタスク実行要求がすでに多
数発生していたとしても、比較的短時間で起動される。
の実行要求が発生すると、原則とし、入力した各タスク
の実効要求を一旦起動待行列に登録して、先頭のタスク
から順番に実行していくのであるが、優先順位の高いタ
スクに対する実行要求が発生すると、この実行要求を前
記起動待行列の最終の位置ではなく、先頭近傍位置に割
込ませるようにしている。したがって、直ちに実行する
必要のあるタスクは、たとえタスク実行要求がすでに多
数発生していたとしても、比較的短時間で起動される。
【0006】
【発明が解決しようとする課題】しかしながら、優先順
位の高いタスクの実行要求が発生すると、このタスクに
優先的にCPUを割当てるタスク実行制御装置において
もまだ改良すべき次のような課題があった。
位の高いタスクの実行要求が発生すると、このタスクに
優先的にCPUを割当てるタスク実行制御装置において
もまだ改良すべき次のような課題があった。
【0007】すなわち、優先度が低いタスクの実行要求
が発生したときに、たまたま、優先度が高いタスクの実
行要求が発生していなければ、優先度の低いタスクは即
座に実行される。そして、一旦実行が開始されると、最
低限のCPU単位時間は、そのタスクに与えられてしま
うようなタスクスケジューリングの計算機システムが多
い。また、優先度の低いタスクでも、共有メモリやファ
イル使用の為に排他的な実行を開始すると、優先度の高
いタスクが動けずに待ち状態になってしまう。
が発生したときに、たまたま、優先度が高いタスクの実
行要求が発生していなければ、優先度の低いタスクは即
座に実行される。そして、一旦実行が開始されると、最
低限のCPU単位時間は、そのタスクに与えられてしま
うようなタスクスケジューリングの計算機システムが多
い。また、優先度の低いタスクでも、共有メモリやファ
イル使用の為に排他的な実行を開始すると、優先度の高
いタスクが動けずに待ち状態になってしまう。
【0008】具体例を上げると、ソースプログラムのコ
ンパイル等の開発作業等においては、CPUの負荷が高
い期間は、処理を控えるように設定しておきたい。ま
た、1日に1回帳票を出力するような機能があって、そ
れが、たまたまピーク負荷の時期にタスクの実行を必要
とした場合には、CPUの負荷がある程度低下した後
に、この帳票を出力するタスクを実行するのが望まし
い。
ンパイル等の開発作業等においては、CPUの負荷が高
い期間は、処理を控えるように設定しておきたい。ま
た、1日に1回帳票を出力するような機能があって、そ
れが、たまたまピーク負荷の時期にタスクの実行を必要
とした場合には、CPUの負荷がある程度低下した後
に、この帳票を出力するタスクを実行するのが望まし
い。
【0009】なお、高速でタスクを実行できる大容量の
CPUを採用すれば、上述したように高負荷期間におい
て優先順位の低いタスクの実行中に優先順位の高いタス
クの実行要求が待たされる確率は小さくなる。しかし、
CPUの高負荷状態と低負荷状態との差が大きくなるの
で、CPUの機能が有効に使用されないことになり、非
常に不経済である。
CPUを採用すれば、上述したように高負荷期間におい
て優先順位の低いタスクの実行中に優先順位の高いタス
クの実行要求が待たされる確率は小さくなる。しかし、
CPUの高負荷状態と低負荷状態との差が大きくなるの
で、CPUの機能が有効に使用されないことになり、非
常に不経済である。
【0010】本発明はこのような事情に鑑みてなされた
ものであり、現在から過去一定期間内におけるCPUの
タスク実行時間割合を示す負荷率でもってタスクの実行
タイミングを判断することによって、タスク実行要求が
集中した場合には、優先順位の低いタスクは、たとえ現
在時点でCPUが空き状態であったとしても暫くしてか
ら起動され、CPUに対す負荷を平準化できると共に、
優先順位の高いタスクの実行要求が保留されることが極
力防止できる計算機システムのタスク実行制御装置を提
供することを目的とする。
ものであり、現在から過去一定期間内におけるCPUの
タスク実行時間割合を示す負荷率でもってタスクの実行
タイミングを判断することによって、タスク実行要求が
集中した場合には、優先順位の低いタスクは、たとえ現
在時点でCPUが空き状態であったとしても暫くしてか
ら起動され、CPUに対す負荷を平準化できると共に、
優先順位の高いタスクの実行要求が保留されることが極
力防止できる計算機システムのタスク実行制御装置を提
供することを目的とする。
【0011】
【課題を解決するための手段】上記課題を解消するため
に本発明は、複数のタスクを備え、ランダムに発生する
タスク実行要求に応じて、実行が要求されたタスクをC
PUにて実行するとともに、複数のタスク実行要求が重
なった場合、これらのタスクの実行順をスケジューリン
グする計算機システムのタスク実行制御装置において、
に本発明は、複数のタスクを備え、ランダムに発生する
タスク実行要求に応じて、実行が要求されたタスクをC
PUにて実行するとともに、複数のタスク実行要求が重
なった場合、これらのタスクの実行順をスケジューリン
グする計算機システムのタスク実行制御装置において、
【0012】CPUにおける現在のタスク実行状況を監
視する負荷状況監視手段と、現在から過去一定期間内に
おけるCPUのタスク実行状態の時間割合で示す負荷率
を算出する負荷率算出手段と、各タスク毎に負荷率が幾
らに低下したら起動許可するかを示す起動許容負荷率を
記憶する起動許容負荷率メモリと、発生するタスク実行
要求を一旦記憶する起動待タスクメモリと、CPUがタ
スクを実行していない期間において、起動待タスクメモ
リの各タスクの起動許容負荷率が負荷率より高い場合に
該当タスクを起動させるタスク起動判断手段とを備えた
ものである。
視する負荷状況監視手段と、現在から過去一定期間内に
おけるCPUのタスク実行状態の時間割合で示す負荷率
を算出する負荷率算出手段と、各タスク毎に負荷率が幾
らに低下したら起動許可するかを示す起動許容負荷率を
記憶する起動許容負荷率メモリと、発生するタスク実行
要求を一旦記憶する起動待タスクメモリと、CPUがタ
スクを実行していない期間において、起動待タスクメモ
リの各タスクの起動許容負荷率が負荷率より高い場合に
該当タスクを起動させるタスク起動判断手段とを備えた
ものである。
【0013】
【作用】このように構成された計算機システムのタスク
実行制御装置においては、現在から過去一定期間内にお
けるCPUのタスク実行状態の時間割合を示す負荷率が
常時計算されている。すなわち、CPUが連続して各タ
スクを実行している期間は負荷率が100%であり、各
タスクが一定の時間間隔を明けて実行されている場合、
負荷率は100%より低い値となる。すなわち、タスク
処理が終了すると時間経過とともに負荷率が低下する。
実行制御装置においては、現在から過去一定期間内にお
けるCPUのタスク実行状態の時間割合を示す負荷率が
常時計算されている。すなわち、CPUが連続して各タ
スクを実行している期間は負荷率が100%であり、各
タスクが一定の時間間隔を明けて実行されている場合、
負荷率は100%より低い値となる。すなわち、タスク
処理が終了すると時間経過とともに負荷率が低下する。
【0014】また、この計算機システムで実行される各
タスクはその優先順位に従って、負荷率が幾らに低下し
たら起動許可するかを示す起動許可負荷率が起動許可負
荷率メモリに予め設定されている。そして、一つのタス
クに対する実行要求が発生すると、現時点でのCPUの
負荷率が該当タスクの起動許可負荷率よりも低い場合に
のみ、該当タスクが実行される。
タスクはその優先順位に従って、負荷率が幾らに低下し
たら起動許可するかを示す起動許可負荷率が起動許可負
荷率メモリに予め設定されている。そして、一つのタス
クに対する実行要求が発生すると、現時点でのCPUの
負荷率が該当タスクの起動許可負荷率よりも低い場合に
のみ、該当タスクが実行される。
【0015】よって、負荷率が高い期間において優先順
位の低いタスクの実行要求が入力されると、たとえ現在
時点でCPUが空き状態であったとしても、負荷率が低
下するまで、該当タスクは起動されない。すなわち、C
PUの負荷が分散される。また、この期間に優先順位の
高いタスクの実行要求が発生すると、そのタスクは優先
順位の低いタスクより先に実行される。
位の低いタスクの実行要求が入力されると、たとえ現在
時点でCPUが空き状態であったとしても、負荷率が低
下するまで、該当タスクは起動されない。すなわち、C
PUの負荷が分散される。また、この期間に優先順位の
高いタスクの実行要求が発生すると、そのタスクは優先
順位の低いタスクより先に実行される。
【0016】
【実施例】以下本発明の一実施例を図面を用いて説明す
る。図1は実施例の計算機システムのタスク実行制御装
置の概略構成を示すブロック図である。
る。図1は実施例の計算機システムのタスク実行制御装
置の概略構成を示すブロック図である。
【0017】タイマ1は第1の周期ΔT1 経過する毎に
負荷率算出手段2に対して時間割込信号aを送出すると
共に、第2の周期ΔT2 経過する毎にタスク起動判断手
段3に対して時間割込信号bを送出する。
負荷率算出手段2に対して時間割込信号aを送出すると
共に、第2の周期ΔT2 経過する毎にタスク起動判断手
段3に対して時間割込信号bを送出する。
【0018】また、負荷率算出手段2には負荷状況監視
手段4および負荷率メモリ5が接続されている。さら
に、タスク起動判断手段3には起動許容負荷率メモリ
6,起動待タスクメモリ7およびタスクメモリ8が接続
されている。なお、上述した負荷率算出手段2,タスク
起動判断手段3,負荷状況監視手段4はそれぞれ制御プ
ログラムによるソフト的手法で構成されている。
手段4および負荷率メモリ5が接続されている。さら
に、タスク起動判断手段3には起動許容負荷率メモリ
6,起動待タスクメモリ7およびタスクメモリ8が接続
されている。なお、上述した負荷率算出手段2,タスク
起動判断手段3,負荷状況監視手段4はそれぞれ制御プ
ログラムによるソフト的手法で構成されている。
【0019】タスクメモリ8は例えば磁気ディスク記憶
装置等で構成されており、このタスクメモリ8内にはこ
の計算機システムが実際に各種業務を実行するためのア
プリケーションプログラムからなる複数のタスク8aが
記憶されている。
装置等で構成されており、このタスクメモリ8内にはこ
の計算機システムが実際に各種業務を実行するためのア
プリケーションプログラムからなる複数のタスク8aが
記憶されている。
【0020】負荷状況監視手段4は、計算機システムの
図示しないCPUが現在タスクを実行期間中であるか否
かを監視する。また、負荷率算出手段2内には、図2に
示すように、1番からM番まで領域番号Aが付された負
荷状態メモリ2aが形成されている。各領域には、前記
各ΔT1 時間経過する毎に負荷状況監視手段4から読出
されたCPUの負荷状態がビットデータRで記憶され
る。CPUがタスクを実行中の場合は[1]に設定さ
れ、CPUがタスクを実行中でない場合、すなわち空き
状態の場合は[0]に設定される。そして、負荷率算出
手段2はタイマ1からΔT1 毎に時間割込信号aが入力
すると、図3に示す流れ図に従って現在のCPUの負荷
率LR を算出する。
図示しないCPUが現在タスクを実行期間中であるか否
かを監視する。また、負荷率算出手段2内には、図2に
示すように、1番からM番まで領域番号Aが付された負
荷状態メモリ2aが形成されている。各領域には、前記
各ΔT1 時間経過する毎に負荷状況監視手段4から読出
されたCPUの負荷状態がビットデータRで記憶され
る。CPUがタスクを実行中の場合は[1]に設定さ
れ、CPUがタスクを実行中でない場合、すなわち空き
状態の場合は[0]に設定される。そして、負荷率算出
手段2はタイマ1からΔT1 毎に時間割込信号aが入力
すると、図3に示す流れ図に従って現在のCPUの負荷
率LR を算出する。
【0021】図3において、割込処理が開始されると、
負荷状態メモリ2aの領域番号Aを1だけ増加する(A
=A+1)。増加後の領域番号Aが最大領域数Mを越え
た場合、先頭の領域番号1に戻す(A=1)。次に、負
荷状況監視手段4にて検出されているCPUの負荷状況
を調べる。タスク実行中の場合、領域番号Aの指定する
領域のビットデータRA を[1]に設定する。また、C
PUが空き状態の場合、該当領域のビッドデータRA を
[0]に設定する。
負荷状態メモリ2aの領域番号Aを1だけ増加する(A
=A+1)。増加後の領域番号Aが最大領域数Mを越え
た場合、先頭の領域番号1に戻す(A=1)。次に、負
荷状況監視手段4にて検出されているCPUの負荷状況
を調べる。タスク実行中の場合、領域番号Aの指定する
領域のビットデータRA を[1]に設定する。また、C
PUが空き状態の場合、該当領域のビッドデータRA を
[0]に設定する。
【0022】以上の負荷状態メモリ2aに対するビッド
データRA の更新処理が終了すると、負荷状態メモリ2
aのM個のビットデータR1 〜RM のうち[1]に設定
されたビット数S(領域数)を算出する。そして、ビッ
ト数Sを領域数Mで除算して負荷率LR を算出する。 LR =(S/M)×100 (%)
データRA の更新処理が終了すると、負荷状態メモリ2
aのM個のビットデータR1 〜RM のうち[1]に設定
されたビット数S(領域数)を算出する。そして、ビッ
ト数Sを領域数Mで除算して負荷率LR を算出する。 LR =(S/M)×100 (%)
【0023】よって、この算出された負荷率LR は(Δ
T1 ×M)時間前から現在時刻までの一定期間(ΔT1
×M)におけるCPPのタスク実行状態の時間割合
(%)を示す。そして、算出した負荷率LR を負荷率メ
モリ5に書込んで、今回の時間割込処理を終了する。し
たがって、負荷率メモリ5内の負荷率LR はΔT1 毎に
最新の負荷率LR に更新される。
T1 ×M)時間前から現在時刻までの一定期間(ΔT1
×M)におけるCPPのタスク実行状態の時間割合
(%)を示す。そして、算出した負荷率LR を負荷率メ
モリ5に書込んで、今回の時間割込処理を終了する。し
たがって、負荷率メモリ5内の負荷率LR はΔT1 毎に
最新の負荷率LR に更新される。
【0024】前記起動許容負荷率メモリ6内には、図2
に示すように、各タスク8a毎に該当タスクがCPUの
負荷率LR が幾に低下すると起動許可するかを示す起動
許可負荷率が記憶されている。すなわち、前述したよう
に、優先順位の高いタスク8aに対しては100%また
はそれに近い値が設定され、優先順位の低いタスク8a
に対しては100%より低い値が設定されている。さら
に、起動待タスクメモリ7には、外部から入力されたタ
スク実行要求が時系列的に登録される。
に示すように、各タスク8a毎に該当タスクがCPUの
負荷率LR が幾に低下すると起動許可するかを示す起動
許可負荷率が記憶されている。すなわち、前述したよう
に、優先順位の高いタスク8aに対しては100%また
はそれに近い値が設定され、優先順位の低いタスク8a
に対しては100%より低い値が設定されている。さら
に、起動待タスクメモリ7には、外部から入力されたタ
スク実行要求が時系列的に登録される。
【0025】そして、タスク起動判断手段3は、タイマ
1からΔT2 毎に時間割込信号bが入力すると、図4に
示す流れ図に従って起動待タスクメモリ7に登録されて
いる各タスクに対する起動または保留の判断処理を実行
する。
1からΔT2 毎に時間割込信号bが入力すると、図4に
示す流れ図に従って起動待タスクメモリ7に登録されて
いる各タスクに対する起動または保留の判断処理を実行
する。
【0026】流れ図が開始されされると、負荷状況監視
手段4にて検出されているCPUの負荷状況を調べる。
タスク実行中の場合、新たなタスクを起動できないの
で、なにもせずに今回の時間割込処理を終了する。
手段4にて検出されているCPUの負荷状況を調べる。
タスク実行中の場合、新たなタスクを起動できないの
で、なにもせずに今回の時間割込処理を終了する。
【0027】CPUがタスクを実行していない場合で、
かつ起動待タスクメモリ7にタスクが登録されている場
合に、負荷率メモリ5に記憶されている現在の負荷率L
R を読取る。そして、起動待タスクメモリ7に登録され
ている各タスクの各起動許容負荷率を起動許容負荷率メ
モリ6から読出す。そして、読出した各起動許容負荷率
のうちで現在のCPUの負荷率LR より高い起動許容負
荷率が存在すると、この起動許容負荷率に対応するタス
ク8aが起動可能タスクとなる。そして、この起動可能
タスクが複数存在した場合には、最も起動許容負荷率が
高いタスクを起動する。起動可能タスクが1個の場合、
そのタスクを起動する。なお、起動可能タスクがなけれ
ば、今回の時間割込処理においては、なにもせずに流れ
図を終了する。このように構成された計算機システムの
タスク実行制御装置の特徴を従来タスク実行制御装置の
動作と対比しながら説明する。
かつ起動待タスクメモリ7にタスクが登録されている場
合に、負荷率メモリ5に記憶されている現在の負荷率L
R を読取る。そして、起動待タスクメモリ7に登録され
ている各タスクの各起動許容負荷率を起動許容負荷率メ
モリ6から読出す。そして、読出した各起動許容負荷率
のうちで現在のCPUの負荷率LR より高い起動許容負
荷率が存在すると、この起動許容負荷率に対応するタス
ク8aが起動可能タスクとなる。そして、この起動可能
タスクが複数存在した場合には、最も起動許容負荷率が
高いタスクを起動する。起動可能タスクが1個の場合、
そのタスクを起動する。なお、起動可能タスクがなけれ
ば、今回の時間割込処理においては、なにもせずに流れ
図を終了する。このように構成された計算機システムの
タスク実行制御装置の特徴を従来タスク実行制御装置の
動作と対比しながら説明する。
【0028】図5(a)は従来のタスク実行制御装置に
おける各タスクの起動タイミングを示すタイムチャート
であり、図5(b)は同一条件における実施例のタスク
実行制御装置における各タスクの起動タイミングを示す
タイムチャートである。
おける各タスクの起動タイミングを示すタイムチャート
であり、図5(b)は同一条件における実施例のタスク
実行制御装置における各タスクの起動タイミングを示す
タイムチャートである。
【0029】各タスクA,B,Xはそれぞれ高い同一優
先順位を有し、タスクCはタスクA,B,Xより低い優
先順位を有している。従って、各タスクA,B,C,X
は図2に示す100,100,70,100の起動許容
負荷率を有している。そして、各タスクA,B,C,X
がそれぞれ時刻tA ,tB ,tC ,tX に実行要求が入
力されたとする。
先順位を有し、タスクCはタスクA,B,Xより低い優
先順位を有している。従って、各タスクA,B,C,X
は図2に示す100,100,70,100の起動許容
負荷率を有している。そして、各タスクA,B,C,X
がそれぞれ時刻tA ,tB ,tC ,tX に実行要求が入
力されたとする。
【0030】図5(a)の従来装置においては、優先順
位が高いタスクXの実行要求の入力時刻tX は優先順位
の高いタスクBの終了時刻より遅いので、優先順位の低
いタスクCの実行期間中である。したがって、タスクX
はタスクCが所定の時間を消費した後に実行される。も
し、タスクCの実行中に排他的な処理を開始すると、タ
スクXの順番がまわってきても、走行できないケースが
発生する。よって、タスクXの待時間TX はかなり長い
時間となる。
位が高いタスクXの実行要求の入力時刻tX は優先順位
の高いタスクBの終了時刻より遅いので、優先順位の低
いタスクCの実行期間中である。したがって、タスクX
はタスクCが所定の時間を消費した後に実行される。も
し、タスクCの実行中に排他的な処理を開始すると、タ
スクXの順番がまわってきても、走行できないケースが
発生する。よって、タスクXの待時間TX はかなり長い
時間となる。
【0031】一方、図5(a)の実施例装置において
は、第1の周期ΔT1 毎にCPUの負荷状況が[1]ま
たは[0]で示される。そして、説明を簡略化するため
に図2に示す負荷状態メモリ2aの領域数Mを例えば5
に設定すると(M=5)、第1の周期ΔT1 経過毎のC
PUの負荷率が算出される。
は、第1の周期ΔT1 毎にCPUの負荷状況が[1]ま
たは[0]で示される。そして、説明を簡略化するため
に図2に示す負荷状態メモリ2aの領域数Mを例えば5
に設定すると(M=5)、第1の周期ΔT1 経過毎のC
PUの負荷率が算出される。
【0032】したがって、優先順位の低いタスクCに対
する実行要求が入力した時刻tC におけるCPUの負荷
率は100%である。また、タスクBの終了時刻のおけ
るCPUの負荷率は100%のままである。一方、タス
クCの起動許容負荷率は70%である。よって、たと
え、タスクBが終了して、CPUが空き状態になったと
してもタスクCは起動されない。
する実行要求が入力した時刻tC におけるCPUの負荷
率は100%である。また、タスクBの終了時刻のおけ
るCPUの負荷率は100%のままである。一方、タス
クCの起動許容負荷率は70%である。よって、たと
え、タスクBが終了して、CPUが空き状態になったと
してもタスクCは起動されない。
【0033】そして、時刻tX にタスクXの実行要求が
入力されると、この時刻tX におけるCPUの負荷率L
R はまだ100%であり、また、タスクXの起動許容負
荷率は100%である。よって、このタスクXは待ち時
間がほとんどなく、起動される。
入力されると、この時刻tX におけるCPUの負荷率L
R はまだ100%であり、また、タスクXの起動許容負
荷率は100%である。よって、このタスクXは待ち時
間がほとんどなく、起動される。
【0034】タスクXが終了して、CPUがタスクを実
行しない期間が継続して、CPUの負荷率LR が80%
から60%に変化した後の時刻tG にて初めてタスクC
が起動される。
行しない期間が継続して、CPUの負荷率LR が80%
から60%に変化した後の時刻tG にて初めてタスクC
が起動される。
【0035】このように、CPUの現在時点における負
荷率LR と実行要求のある各タスクの起動許容負荷率と
の大小関係から該当タスクを直ちに実行するか、または
暫く保留するかを判断している。したがって、多数のタ
スクの実行要求が短期間に発生した場合には、CPUの
負荷率LR が高い状態が継続する。よって、その期間に
入力された優先順位の低いタスクの実行要求はたとえ優
先順位の高いタスクの実行が終了してCPUが空き状態
になつたとしても、一定期間経過して、CPUの負荷率
LR が低下しない限り実行されない。従って、CPUの
負荷が大幅に分散される。よって、CPUの処理能力を
有効に使用でき、高処理能力のCPUを用いる必要がな
いので、計算機システム全体の設備費を低減できる。
荷率LR と実行要求のある各タスクの起動許容負荷率と
の大小関係から該当タスクを直ちに実行するか、または
暫く保留するかを判断している。したがって、多数のタ
スクの実行要求が短期間に発生した場合には、CPUの
負荷率LR が高い状態が継続する。よって、その期間に
入力された優先順位の低いタスクの実行要求はたとえ優
先順位の高いタスクの実行が終了してCPUが空き状態
になつたとしても、一定期間経過して、CPUの負荷率
LR が低下しない限り実行されない。従って、CPUの
負荷が大幅に分散される。よって、CPUの処理能力を
有効に使用でき、高処理能力のCPUを用いる必要がな
いので、計算機システム全体の設備費を低減できる。
【0036】また、CPUが忙しい状態においては、た
とえCPUに僅かに空き時間が存在したとしても、その
空き時間は優先順位の高いタスクの実行要求が入力する
場合に備えて待機状態となる。その結果、優先順位の高
いタスクの実行要求が優先順位の低いタスクが終了する
のまで待たされる確率が従来装置に比較して大幅に低減
できる。よって、このタスク実行制御装置が組込まれた
計算機システム全体の動作の信頼性を向上できる。
とえCPUに僅かに空き時間が存在したとしても、その
空き時間は優先順位の高いタスクの実行要求が入力する
場合に備えて待機状態となる。その結果、優先順位の高
いタスクの実行要求が優先順位の低いタスクが終了する
のまで待たされる確率が従来装置に比較して大幅に低減
できる。よって、このタスク実行制御装置が組込まれた
計算機システム全体の動作の信頼性を向上できる。
【0037】
【発明の効果】以上説明したように本発明のタスク実行
制御装置によれば、現在から過去一定期間内におけるC
PUのタスク実行時間割合を示す負荷率でもってタスク
の実行タイミングを判断し、タスク実行要求が集中した
場合には、優先順位の低いタスクはたとえ現在時点でC
PUが空き状態であったとしても直ぐに起動せずに、C
PUの負荷率が低下した時点で起動するようにしてい
る。したがって、CPUに対す負荷を平準化でき、処理
能力の高いCPUを用いる必要がないので、計算機シス
テム全体の製造費を低減できる。さらに、優先順位の高
いタスクの実行要求が保留されることが極力生じなくで
き、システム全体の動作の信頼性を向上できる。
制御装置によれば、現在から過去一定期間内におけるC
PUのタスク実行時間割合を示す負荷率でもってタスク
の実行タイミングを判断し、タスク実行要求が集中した
場合には、優先順位の低いタスクはたとえ現在時点でC
PUが空き状態であったとしても直ぐに起動せずに、C
PUの負荷率が低下した時点で起動するようにしてい
る。したがって、CPUに対す負荷を平準化でき、処理
能力の高いCPUを用いる必要がないので、計算機シス
テム全体の製造費を低減できる。さらに、優先順位の高
いタスクの実行要求が保留されることが極力生じなくで
き、システム全体の動作の信頼性を向上できる。
【図1】 本発明の一実施例に係わる計算機システムの
タスク実行制御装置の概略構成を示すブロック図、
タスク実行制御装置の概略構成を示すブロック図、
【図2】 同実施例装置における各メモリの記憶内容を
示す図、
示す図、
【図3】 同実施例装置の負荷率算出手順を示す流れ
図、
図、
【図4】 同実施例装置のタスク起動判断手順を示す流
れ図、
れ図、
【図5】 同実施例装置の効果を従来装置と対比して説
明するためのタイムチャート。
明するためのタイムチャート。
1…タイマ、2…負荷率算出手段、3…タスク起動判断
手段、4…負荷状況監視手段、5…負荷率メモリ、6…
起動許容負荷率メモリ、7…起動待タスクメモリ、8…
タスクメモリ。
手段、4…負荷状況監視手段、5…負荷率メモリ、6…
起動許容負荷率メモリ、7…起動待タスクメモリ、8…
タスクメモリ。
Claims (1)
- 【請求項1】 複数のタスクを備え、ランダムに発生す
るタスク実行要求に応じて、実行が要求されたタスクを
CPUにて実行するとともに、複数のタスク実行要求が
重なった場合、これらのタスクの実行順をスケジューリ
ングする計算機システムのタスク実行制御装置におい
て、 前記CPUにおける現在のタスク実行状況を監視する負
荷状況監視手段と、現在から過去一定期間内における前
記CPUのタスク実行状態の時間割合で示す負荷率を算
出する負荷率算出手段と、前記各タスク毎に前記負荷率
が幾らに低下したら起動許可するかを示す起動許容負荷
率を記憶する起動許容負荷率メモリと、前記発生するタ
スク実行要求を一旦記憶する起動待タスクメモリと、前
記CPUがタスクを実行していない期間において、前記
起動待タスクメモリの各タスクの起動許容負荷率が前記
負荷率より高い場合に該当タスクを起動させるタスク起
動判断手段とを備えた計算機システムのタスク実行制御
装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1206992A JPH05204667A (ja) | 1992-01-27 | 1992-01-27 | 計算機システムのタスク実行制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1206992A JPH05204667A (ja) | 1992-01-27 | 1992-01-27 | 計算機システムのタスク実行制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH05204667A true JPH05204667A (ja) | 1993-08-13 |
Family
ID=11795319
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1206992A Pending JPH05204667A (ja) | 1992-01-27 | 1992-01-27 | 計算機システムのタスク実行制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH05204667A (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102684512A (zh) * | 2011-02-16 | 2012-09-19 | 美信集成产品公司 | 用于ac-dc适配器中的低功率模式的负载检测 |
| JP2013101523A (ja) * | 2011-11-09 | 2013-05-23 | Fuji Xerox Co Ltd | 処理要求実行管理装置及びプログラム |
| US9483320B2 (en) | 2014-03-13 | 2016-11-01 | Fujitsu Limited | Computing apparatus, method of controlling computing apparatus, and computer-readable storage medium having program for controlling computing apparatus stored therein to move processes to a same processor core for execution |
| US11762691B2 (en) | 2019-09-11 | 2023-09-19 | Fujitsu Limited | Information processing system of task scheduling, method of task scheduling, and non-transitory computer-readable storage medium for storing program of task scheduling |
-
1992
- 1992-01-27 JP JP1206992A patent/JPH05204667A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102684512A (zh) * | 2011-02-16 | 2012-09-19 | 美信集成产品公司 | 用于ac-dc适配器中的低功率模式的负载检测 |
| JP2013101523A (ja) * | 2011-11-09 | 2013-05-23 | Fuji Xerox Co Ltd | 処理要求実行管理装置及びプログラム |
| US9483320B2 (en) | 2014-03-13 | 2016-11-01 | Fujitsu Limited | Computing apparatus, method of controlling computing apparatus, and computer-readable storage medium having program for controlling computing apparatus stored therein to move processes to a same processor core for execution |
| US11762691B2 (en) | 2019-09-11 | 2023-09-19 | Fujitsu Limited | Information processing system of task scheduling, method of task scheduling, and non-transitory computer-readable storage medium for storing program of task scheduling |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6006247A (en) | Method and system for scheduling threads and handling exceptions within a multiprocessor data processing system | |
| US5274823A (en) | Interrupt handling serialization for process level programming | |
| JP2002533807A (ja) | 割込み/ソフトウエア制御スレッド処理 | |
| JPH07182184A (ja) | 実行タスクのオーバーラン状態を監視する方法、タスク実行サイクルオーバーランを監視し制御する方法、及びタスク実行サイクルオーバーランを検出する装置 | |
| US7203823B2 (en) | Partial and start-over threads in embedded real-time kernel | |
| US7043729B2 (en) | Reducing interrupt latency while polling | |
| US6795873B1 (en) | Method and apparatus for a scheduling driver to implement a protocol utilizing time estimates for use with a device that does not generate interrupts | |
| JPH05204667A (ja) | 計算機システムのタスク実行制御装置 | |
| EP0052713B1 (en) | A process management system for scheduling work requests in a data processing system | |
| JP2636722B2 (ja) | マルチタスク実行管理方式 | |
| WO2019044226A1 (ja) | アクセス制御装置 | |
| JPH0926888A (ja) | 排他制御装置 | |
| JP2002099434A (ja) | 制御装置 | |
| JP3524961B2 (ja) | マルチプロセッサシステムおよび同システムにおけるタスクスケジューリング方法 | |
| JPS6368934A (ja) | タスクスケジユ−ル方式 | |
| CN113722078A (zh) | 一种基于线程池高并发数据库访问方法、系统及设备 | |
| JPH0855036A (ja) | タスクスケジューリング方法 | |
| JP2591036B2 (ja) | 入出力制御方法 | |
| JPH06309180A (ja) | コンピュータシステムの割込制御装置 | |
| EP1659493A1 (en) | Replacing idle process when doing fast messaging | |
| JPH01258135A (ja) | トランザクション実行制御方式 | |
| Green | Time sharing in a traffic control program | |
| JPS62271147A (ja) | タスク制御方法 | |
| JPS6388646A (ja) | ジヨブ対応cpuリソ−ス平均化方式 | |
| JPH08329022A (ja) | マルチプロセッサシステムの入出力処理負荷分散制御方式 |