JP3093714B2 - マルチタスクの実行優先順位決定システム - Google Patents
マルチタスクの実行優先順位決定システムInfo
- Publication number
- JP3093714B2 JP3093714B2 JP10029555A JP2955598A JP3093714B2 JP 3093714 B2 JP3093714 B2 JP 3093714B2 JP 10029555 A JP10029555 A JP 10029555A JP 2955598 A JP2955598 A JP 2955598A JP 3093714 B2 JP3093714 B2 JP 3093714B2
- Authority
- JP
- Japan
- Prior art keywords
- priority
- execution
- task
- time
- queue
- 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.)
- Expired - Fee Related
Links
Description
【0001】
【発明の属する技術分野】本発明は、コンピュータのマ
ルチタスクの実行優先順位決定システムに関する。
ルチタスクの実行優先順位決定システムに関する。
【0002】
【従来の技術】従来、この種のタスク実行優先順位決定
システムは、たとえば特開平5−53836号公報に開
示されているように、自動的にタスクを実行する優先順
位を自動決定する方法を提供していた。
システムは、たとえば特開平5−53836号公報に開
示されているように、自動的にタスクを実行する優先順
位を自動決定する方法を提供していた。
【0003】図4は従来のマルチタスクシステムの内部
構造を説明する構造図である。図4に示すように、従来
の構成は複数のタスク5(5a〜5n)と、各タスク5
a〜5nが処理を行うための情報である要求内容6b
と、要求内容6bが記述されている処理イベント60b
と、処理イベント60bをキューイングする処理キュー
40b(4a〜4c)と、実行可能なタスクをキューイ
ングする複数の優先レベルからなる実行キュー1bを有
する。
構造を説明する構造図である。図4に示すように、従来
の構成は複数のタスク5(5a〜5n)と、各タスク5
a〜5nが処理を行うための情報である要求内容6b
と、要求内容6bが記述されている処理イベント60b
と、処理イベント60bをキューイングする処理キュー
40b(4a〜4c)と、実行可能なタスクをキューイ
ングする複数の優先レベルからなる実行キュー1bを有
する。
【0004】図5は従来のタスク内の処理の機能ブロッ
ク図である。
ク図である。
【0005】タスク処理手段20は、実行されたタスク
5に処理イベントが有るか判定する処理イベント判定手
段21と、処理イベント判定手段21が処理イベントが
有ると判定した場合は処理キュー40bから処理イベン
ト60bを取り出す処理イベント取り出し手段22と、
要求内容6bに従い処理を実行して処理イベント判定手
段21に戻る処理イベント実行手段23と、処理イベン
ト判定手段21が処理イベントが無いと判定した場合は
処理キュー40bに処理イベントがキューイングされる
まで処理を休止して処理イベント判定手段21に戻る処
理イベント休止手段とから構成されている。
5に処理イベントが有るか判定する処理イベント判定手
段21と、処理イベント判定手段21が処理イベントが
有ると判定した場合は処理キュー40bから処理イベン
ト60bを取り出す処理イベント取り出し手段22と、
要求内容6bに従い処理を実行して処理イベント判定手
段21に戻る処理イベント実行手段23と、処理イベン
ト判定手段21が処理イベントが無いと判定した場合は
処理キュー40bに処理イベントがキューイングされる
まで処理を休止して処理イベント判定手段21に戻る処
理イベント休止手段とから構成されている。
【0006】図6は従来のタスク内の処理の流れ図であ
る。
る。
【0007】タスクの実行処理は、優先レベルの高い実
行キュー1bからキューイングされたタスク5を取り出
し、タスクの処理を実行していく。また、図6に示すよ
うに、実行されたタスク5はステップS21で処理イベ
ント判定手段21が処理キュー40bに処理イベントが
有るか判定し、処理イベントが有ると判定した場合は、
ステップS22で処理イベント取り出し手段22が処理
キュー40bから処理イベント60bを取り出して、ス
テップS23で処理イベント実行手段23が処理イベン
ト60bに設定された要求内容6bに従い処理を実行
し、ステップS21に戻る。なお、ステップS21で処
理キュー40bに処理イベントが無いと判定した場合
は、ステップS24で処理イベント休止手段24が処理
キュー40bに処理イベントがキューイングされるまで
処理を休止してステップS21に戻る。
行キュー1bからキューイングされたタスク5を取り出
し、タスクの処理を実行していく。また、図6に示すよ
うに、実行されたタスク5はステップS21で処理イベ
ント判定手段21が処理キュー40bに処理イベントが
有るか判定し、処理イベントが有ると判定した場合は、
ステップS22で処理イベント取り出し手段22が処理
キュー40bから処理イベント60bを取り出して、ス
テップS23で処理イベント実行手段23が処理イベン
ト60bに設定された要求内容6bに従い処理を実行
し、ステップS21に戻る。なお、ステップS21で処
理キュー40bに処理イベントが無いと判定した場合
は、ステップS24で処理イベント休止手段24が処理
キュー40bに処理イベントがキューイングされるまで
処理を休止してステップS21に戻る。
【0008】
【発明が解決しようとする課題】第一の問題点は、前述
した従来のタスクの実行優先順位決定方式では、処理イ
ベントが集中したタスク、処理に時間がかかるタスクの
処理キューに多くの処理イベントが残される可能性があ
ることである。その理由は、タスクの優先度でタスクの
実行順位が決まり、同じ優先順位でのCPUの割り当て
が同じとすると、特定のタスクに処理イベントが集中し
ても変更する手段がないためである。
した従来のタスクの実行優先順位決定方式では、処理イ
ベントが集中したタスク、処理に時間がかかるタスクの
処理キューに多くの処理イベントが残される可能性があ
ることである。その理由は、タスクの優先度でタスクの
実行順位が決まり、同じ優先順位でのCPUの割り当て
が同じとすると、特定のタスクに処理イベントが集中し
ても変更する手段がないためである。
【0009】本発明の目的は、上記の問題点を解決する
ものであり、同じ優先度のタスクが処理イベントを取り
出して処理を行う際に、タスク間で処理イベント数に差
がある場合や、処理イベントに対する処理時間に差があ
る場合でも、処理キューにキューイングした時刻が古い
処理イベントが優先的に処理が行われるようにする。
ものであり、同じ優先度のタスクが処理イベントを取り
出して処理を行う際に、タスク間で処理イベント数に差
がある場合や、処理イベントに対する処理時間に差があ
る場合でも、処理キューにキューイングした時刻が古い
処理イベントが優先的に処理が行われるようにする。
【0010】
【課題を解決するための手段】本発明のマルチタスクの
実行優先順位決定システムは、複数のタスクと、キュー
イングされた時刻である要求時刻と、タスクが処理を行
うための情報である要求内容と、要求時刻と要求内容と
が記述されている処理イベントと、処理イベントをキュ
ーイングする処理キューと、複数の優先レベルを有して
各優先レベルごとに優先と非優先との2つのキューから
構成され実行可能なタスクをキューイングする実行キュ
ーと、タスクが処理イベントを取り出していない時は処
理キューの先頭の処理イベントの要求時刻が設定されて
処理イベントを処理中の場合は処理中の処理イベントの
要求時刻が設定されて処理イベントを処理中でなく処理
キューに全く処理イベントが無い場合は「0」が設定さ
れる実行中要求時刻と、実行キューの優先度を変更する
ために実行中要求時刻と比較する判定時刻と、判定時刻
を更新する値となる判定間隔とを有している。
実行優先順位決定システムは、複数のタスクと、キュー
イングされた時刻である要求時刻と、タスクが処理を行
うための情報である要求内容と、要求時刻と要求内容と
が記述されている処理イベントと、処理イベントをキュ
ーイングする処理キューと、複数の優先レベルを有して
各優先レベルごとに優先と非優先との2つのキューから
構成され実行可能なタスクをキューイングする実行キュ
ーと、タスクが処理イベントを取り出していない時は処
理キューの先頭の処理イベントの要求時刻が設定されて
処理イベントを処理中の場合は処理中の処理イベントの
要求時刻が設定されて処理イベントを処理中でなく処理
キューに全く処理イベントが無い場合は「0」が設定さ
れる実行中要求時刻と、実行キューの優先度を変更する
ために実行中要求時刻と比較する判定時刻と、判定時刻
を更新する値となる判定間隔とを有している。
【0011】また、判定時刻は優先レベルごとに判定時
刻を記憶し、タスクの実行の優先度を下げる時の判定値
として使用され、初期値は現時刻とし、タスク実行処理
で更新される。
刻を記憶し、タスクの実行の優先度を下げる時の判定値
として使用され、初期値は現時刻とし、タスク実行処理
で更新される。
【0012】また、判定間隔は予め設定している任意の
値で、判定時刻を更新するときの加算値である。
値で、判定時刻を更新するときの加算値である。
【0013】また、判定時刻、判定間隔および処理イベ
ントの要求時刻の時間の単位は優先順位を変更するタイ
ミングにより決まり、秒単位に優先順位を変更するなら
秒以下、10ミリ秒単位に優先順位を変更するなら10
ミリ秒以下の単位を有する。また、優先レベルの高い実
行キューから順にキューイングする優先レベル実行手段
と、優先レベル実行手段でキューイングされたタスクを
取り出すタスク取り出し手段と、実行キューが優先か非
優先か判定する優先キュー判定手段と、優先キュー判定
手段で非優先キューと判定された場合はタスクから実行
中要求時刻を取り出して判定時刻と比較する実行中要求
時間判定手段と、実行中要求時間判定手段で実行中要求
時刻≦判定時刻ならタスクの実行を行うタスク処理実行
手段と、実行中要求時間判定手段で実行中要求時刻≦判
定時刻でないなら実行キューの非優先キューにキューイ
ングする非優先キューイング手段と、タスク処理実行手
段でタスクを実行するか非優先キューイング手段で実行
キューの非優先キューにキューイングした場合は同じ優
先度のタスクの実行中要求時刻と判定時刻を比較して実
行中要求時刻≦判定時刻の場合は優先レベル実行手段に
戻る優先レベルタスク判定手段と、優先レベルタスク判
定手段で全てのタスクで実行中要求時刻≦判定時刻の場
合は判定時刻を現時刻を超えない範囲で判定間隔の分加
算する判定時間更新手段と、判定時間更新手段の加算終
了後に実行キューの非優先キュー上のタスクを優先キュ
ーに移動して優先レベル実行手段に戻る優先キュー移動
手段とを有する。
ントの要求時刻の時間の単位は優先順位を変更するタイ
ミングにより決まり、秒単位に優先順位を変更するなら
秒以下、10ミリ秒単位に優先順位を変更するなら10
ミリ秒以下の単位を有する。また、優先レベルの高い実
行キューから順にキューイングする優先レベル実行手段
と、優先レベル実行手段でキューイングされたタスクを
取り出すタスク取り出し手段と、実行キューが優先か非
優先か判定する優先キュー判定手段と、優先キュー判定
手段で非優先キューと判定された場合はタスクから実行
中要求時刻を取り出して判定時刻と比較する実行中要求
時間判定手段と、実行中要求時間判定手段で実行中要求
時刻≦判定時刻ならタスクの実行を行うタスク処理実行
手段と、実行中要求時間判定手段で実行中要求時刻≦判
定時刻でないなら実行キューの非優先キューにキューイ
ングする非優先キューイング手段と、タスク処理実行手
段でタスクを実行するか非優先キューイング手段で実行
キューの非優先キューにキューイングした場合は同じ優
先度のタスクの実行中要求時刻と判定時刻を比較して実
行中要求時刻≦判定時刻の場合は優先レベル実行手段に
戻る優先レベルタスク判定手段と、優先レベルタスク判
定手段で全てのタスクで実行中要求時刻≦判定時刻の場
合は判定時刻を現時刻を超えない範囲で判定間隔の分加
算する判定時間更新手段と、判定時間更新手段の加算終
了後に実行キューの非優先キュー上のタスクを優先キュ
ーに移動して優先レベル実行手段に戻る優先キュー移動
手段とを有する。
【0014】また、マルチタスクの実行優先順位決定シ
ステムを動作させるコンピュータのプログラムが記憶さ
れた記憶媒体を有する。
ステムを動作させるコンピュータのプログラムが記憶さ
れた記憶媒体を有する。
【0015】
【発明の実施の形態】先ず、本発明の作用について説明
する。
する。
【0016】本発明は、同じ優先度のタスクでは、要求
時刻が新しい処理イベントを処理しようとするタスクの
優先順位が下がり、その結果、要求時刻の古い処理イベ
ントのタスクの処理が優先されるため、各タスクの処理
に違いがあっても、要求時刻に従って処理が行われるよ
うになる。
時刻が新しい処理イベントを処理しようとするタスクの
優先順位が下がり、その結果、要求時刻の古い処理イベ
ントのタスクの処理が優先されるため、各タスクの処理
に違いがあっても、要求時刻に従って処理が行われるよ
うになる。
【0017】次に、本発明の実施の形態について図面を
参照して詳細に説明する。
参照して詳細に説明する。
【0018】図1は本発明の実施の形態で、タスク実行
優先順位方法の内部構造の構造図である。
優先順位方法の内部構造の構造図である。
【0019】図1を参照すると、本発明の構成は、複数
のタスク5(5a〜5n)と、キューイングされた時刻
である要求時刻6aと、各タスク5が処理を行うための
情報である要求内容6bと、要求時刻6aと要求内容6
bとが記述されている処理イベント60aと、処理イベ
ント60aをキューイングする処理キュー40aと、複
数の優先レベルを有して各優先レベルごとに優先と非優
先との2つのキューから構成され実行可能なタスク5を
キューイングする実行キュー1aと、タスク5が処理イ
ベント60aを取り出していない時は処理キュー40a
の先頭の処理イベント60aの要求時刻が設定されて処
理イベント60aを処理中の場合は処理中の処理イベン
ト60aの要求時刻が設定されて処理イベント60aを
処理中でなく処理キュー40aに全く処理イベント60
aが無い場合は「0」が設定される実行中要求時刻7
と、実行キューの優先度を変更するための基準値となる
判定時刻2と、その判定時刻2を更新する値となる判定
間隔3とから構成される。
のタスク5(5a〜5n)と、キューイングされた時刻
である要求時刻6aと、各タスク5が処理を行うための
情報である要求内容6bと、要求時刻6aと要求内容6
bとが記述されている処理イベント60aと、処理イベ
ント60aをキューイングする処理キュー40aと、複
数の優先レベルを有して各優先レベルごとに優先と非優
先との2つのキューから構成され実行可能なタスク5を
キューイングする実行キュー1aと、タスク5が処理イ
ベント60aを取り出していない時は処理キュー40a
の先頭の処理イベント60aの要求時刻が設定されて処
理イベント60aを処理中の場合は処理中の処理イベン
ト60aの要求時刻が設定されて処理イベント60aを
処理中でなく処理キュー40aに全く処理イベント60
aが無い場合は「0」が設定される実行中要求時刻7
と、実行キューの優先度を変更するための基準値となる
判定時刻2と、その判定時刻2を更新する値となる判定
間隔3とから構成される。
【0020】判定時刻2は優先レベルごとに判定時刻を
記憶し、タスク5の実行の優先度を下げる時の判定値と
して使用され、初期値は現時刻とし、タスク実行処理手
段8で更新される。
記憶し、タスク5の実行の優先度を下げる時の判定値と
して使用され、初期値は現時刻とし、タスク実行処理手
段8で更新される。
【0021】判定間隔3は予め設定している任意の値
で、判定時刻2を更新するときの加算値にあたる。
で、判定時刻2を更新するときの加算値にあたる。
【0022】判定時刻2、判定間隔3および処理イベン
ト60aの要求時刻6aの時間の単位は優先順位を変更
するタイミングにより決まり、秒単位に優先順位を変更
するなら秒以下、10ミリ秒単位に優先順位を変更する
なら10ミリ秒以下の単位を持つ。
ト60aの要求時刻6aの時間の単位は優先順位を変更
するタイミングにより決まり、秒単位に優先順位を変更
するなら秒以下、10ミリ秒単位に優先順位を変更する
なら10ミリ秒以下の単位を持つ。
【0023】図2は本発明の実施の形態で、タスク実行
処理手段の機能ブロック図である。タスク実行処理手段
8は、優先レベルの高い実行キュー1aから順にキュー
イングする優先レベル実行手段9と、優先レベル実行手
段9でキューイングされたタスク5を取り出すタスク取
り出し手段10と、実行キュー1aが優先か非優先か判
定する優先キュー判定手段11と、優先キュー判定手段
11で非優先キューと判定された場合はタスク5から実
行中要求時刻7を取り出して判定時刻2と比較する実行
中要求時間判定手段12と、実行中要求時間判定手段1
2で実行中要求時刻≦判定時刻ならタスク5の実行を行
うタスク処理実行手段13と、実行中要求時間判定手段
12で実行中要求時刻≦判定時刻でないなら実行キュー
1aの非優先キューにキューイングする優先キューイン
グ手段17と、タスク処理実行手段13でタスク5を実
行するか優先キューイング手段17で実行キュー1aの
非優先キューにキューイングした場合は同じ優先度のタ
スク5の実行中要求時刻7と判定時刻2を比較して実行
中要求時刻7≦判定時刻12の場合は優先レベル実行手
段9に戻る優先レベルタスク判定手段14と、優先レベ
ルタスク判定手段14で全てのタスクで実行中要求時刻
7≦判定時刻12の場合は判定時刻12を現時刻を超え
ない範囲で判定間隔3分加算する判定時間更新手段15
と、実行キュー1aの非優先キュー上のタスク15を優
先キューに移動して優先レベル実行手段9に戻る優先キ
ュー移動手段16とから構成される。
処理手段の機能ブロック図である。タスク実行処理手段
8は、優先レベルの高い実行キュー1aから順にキュー
イングする優先レベル実行手段9と、優先レベル実行手
段9でキューイングされたタスク5を取り出すタスク取
り出し手段10と、実行キュー1aが優先か非優先か判
定する優先キュー判定手段11と、優先キュー判定手段
11で非優先キューと判定された場合はタスク5から実
行中要求時刻7を取り出して判定時刻2と比較する実行
中要求時間判定手段12と、実行中要求時間判定手段1
2で実行中要求時刻≦判定時刻ならタスク5の実行を行
うタスク処理実行手段13と、実行中要求時間判定手段
12で実行中要求時刻≦判定時刻でないなら実行キュー
1aの非優先キューにキューイングする優先キューイン
グ手段17と、タスク処理実行手段13でタスク5を実
行するか優先キューイング手段17で実行キュー1aの
非優先キューにキューイングした場合は同じ優先度のタ
スク5の実行中要求時刻7と判定時刻2を比較して実行
中要求時刻7≦判定時刻12の場合は優先レベル実行手
段9に戻る優先レベルタスク判定手段14と、優先レベ
ルタスク判定手段14で全てのタスクで実行中要求時刻
7≦判定時刻12の場合は判定時刻12を現時刻を超え
ない範囲で判定間隔3分加算する判定時間更新手段15
と、実行キュー1aの非優先キュー上のタスク15を優
先キューに移動して優先レベル実行手段9に戻る優先キ
ュー移動手段16とから構成される。
【0024】次に、本発明の実施の形態の動作について
図1〜図3を参照して説明する。
図1〜図3を参照して説明する。
【0025】実行可能なタスク5は、予め決められたタ
スクの優先レベルに従い、実行キュー1aの優先のキュ
ーにキューイングされる。
スクの優先レベルに従い、実行キュー1aの優先のキュ
ーにキューイングされる。
【0026】図2に示すようにタスク実行処理手段8は
ステップS9で優先レベルの高い実行キュー1aから順
にキューイングし、ステップS10でキューイングされ
たタスク5を取り出す。ステップS11で実行キュー1
aが優先か非優先か判定して結果として優先キューが非
優先キューより先に取り出される。従って、優先レベル
が1から3まである場合は、優先レベル1(優先)、優
先レベル1(非優先)、優先レベル2(優先)、優先レ
ベル2(非優先)、優先レベル3(優先)、優先レベル
3(非優先)の順に実行キュー1aの取り出しが行われ
る。
ステップS9で優先レベルの高い実行キュー1aから順
にキューイングし、ステップS10でキューイングされ
たタスク5を取り出す。ステップS11で実行キュー1
aが優先か非優先か判定して結果として優先キューが非
優先キューより先に取り出される。従って、優先レベル
が1から3まである場合は、優先レベル1(優先)、優
先レベル1(非優先)、優先レベル2(優先)、優先レ
ベル2(非優先)、優先レベル3(優先)、優先レベル
3(非優先)の順に実行キュー1aの取り出しが行われ
る。
【0027】ステップS11で優先キューだった場合
は、ステップS13でタスク5の実行を行う。ステップ
S11で非優先キューだった場合は、ステップS12で
取り出したタスク5の実行中要求時刻7と判定時刻2と
を比較し、実行中要求時刻7≦判定時刻2なら、ステッ
プS13でタスク15の実行を行う。
は、ステップS13でタスク5の実行を行う。ステップ
S11で非優先キューだった場合は、ステップS12で
取り出したタスク5の実行中要求時刻7と判定時刻2と
を比較し、実行中要求時刻7≦判定時刻2なら、ステッ
プS13でタスク15の実行を行う。
【0028】ステップS12で実行中要求時刻7≦判定
時刻2でないなら、ステップS13のタスク5を実行し
ないで、ステップS17で実行キュー1aの非優先キュ
ーにキューイングする。ただし、この判定はタスクが実
行キュー11の優先キューにある場合だけ行う。ステッ
プS13でタスク5を実行するか、ステップS17で実
行キュー1aの非優先キューにキューイングした場合
は、ステップS14で同じ優先度のタスク5の実行中要
求時刻7と判定時刻2を比較し、全てのタスクで実行中
要求時刻7≦判定時刻12の場合は、ステップS15で
判定時刻12を現時刻を超えない範囲で判定間隔3分加
算し、ステップS16で実行キュー1aの非優先キュー
上のタスク15を優先キューに移動する。ステップS1
4で実行中要求時刻7≦判定時刻12の場合またはステ
ップS16で非優先キュー上のタスク15を優先キュー
に移動後はステップS9に戻る。
時刻2でないなら、ステップS13のタスク5を実行し
ないで、ステップS17で実行キュー1aの非優先キュ
ーにキューイングする。ただし、この判定はタスクが実
行キュー11の優先キューにある場合だけ行う。ステッ
プS13でタスク5を実行するか、ステップS17で実
行キュー1aの非優先キューにキューイングした場合
は、ステップS14で同じ優先度のタスク5の実行中要
求時刻7と判定時刻2を比較し、全てのタスクで実行中
要求時刻7≦判定時刻12の場合は、ステップS15で
判定時刻12を現時刻を超えない範囲で判定間隔3分加
算し、ステップS16で実行キュー1aの非優先キュー
上のタスク15を優先キューに移動する。ステップS1
4で実行中要求時刻7≦判定時刻12の場合またはステ
ップS16で非優先キュー上のタスク15を優先キュー
に移動後はステップS9に戻る。
【0029】次に、本発明の実施の形態について、図
1,図7および図8を参照して説明する。
1,図7および図8を参照して説明する。
【0030】図1,図7を参照すると、例えば、判定時
刻、判定間隔、要求時刻の時間を単位を秒とし、優先レ
ベル2のタスク5がタスク5aとタスク5bの2つが存
在し、実行キュー1aの優先レベル2にタスク5aとタ
スク5bとがキューイングされており、タスク5aの処
理キュー4aには要求時刻がそれぞれ10:30:4
4、10:30:45、1030:45、10:30:
46の4つの処理イベント60aが存在し、タスク5b
の処理キュー4bには10:30:44、10:30:
44、10:30:44、10:30:45の4つの処
理イベント60aが存在し、タスク5a,5bの実行中
要求時刻7bは10:30:44、タスク5bの優先レ
ベル2の判定時刻が10:30:44、判定間隔3が1
に設定されたとする。この場合はタスク5aとタスク5
bとの実行中要求時刻7a,7bが判定時刻以下なの
で、取り出した処理イベント60aの処理が完了するま
で、同じ実行キュー1aにキューイングされて実行され
る。すなわち同じ優先度で実行される。
刻、判定間隔、要求時刻の時間を単位を秒とし、優先レ
ベル2のタスク5がタスク5aとタスク5bの2つが存
在し、実行キュー1aの優先レベル2にタスク5aとタ
スク5bとがキューイングされており、タスク5aの処
理キュー4aには要求時刻がそれぞれ10:30:4
4、10:30:45、1030:45、10:30:
46の4つの処理イベント60aが存在し、タスク5b
の処理キュー4bには10:30:44、10:30:
44、10:30:44、10:30:45の4つの処
理イベント60aが存在し、タスク5a,5bの実行中
要求時刻7bは10:30:44、タスク5bの優先レ
ベル2の判定時刻が10:30:44、判定間隔3が1
に設定されたとする。この場合はタスク5aとタスク5
bとの実行中要求時刻7a,7bが判定時刻以下なの
で、取り出した処理イベント60aの処理が完了するま
で、同じ実行キュー1aにキューイングされて実行され
る。すなわち同じ優先度で実行される。
【0031】図8を参照すると、それぞれのタスク5
a,5bが一つ目の処理イベント60aの処理を完了
し、二つ目の処理イベント60aを処理する直前の状態
である。タスク5aの実行中要求時刻7aは10:3
0:45、タスク5bの実行中要求時刻7bは10:3
0:44である。この場合はタスク5bの実行中要求時
刻7aが判定時刻より大きくなったので、タスク5aは
非優先の実行キュー1aにキューイングされるので、タ
スク5bの方がタスク5aより優先されて実行される。
タスク5bが三つ目の処理イベント10aの処理を完了
し、判定時刻以下の実行中要求時刻が存在しなくなるま
で、タスク5bがタスクaより優先されことになる。
a,5bが一つ目の処理イベント60aの処理を完了
し、二つ目の処理イベント60aを処理する直前の状態
である。タスク5aの実行中要求時刻7aは10:3
0:45、タスク5bの実行中要求時刻7bは10:3
0:44である。この場合はタスク5bの実行中要求時
刻7aが判定時刻より大きくなったので、タスク5aは
非優先の実行キュー1aにキューイングされるので、タ
スク5bの方がタスク5aより優先されて実行される。
タスク5bが三つ目の処理イベント10aの処理を完了
し、判定時刻以下の実行中要求時刻が存在しなくなるま
で、タスク5bがタスクaより優先されことになる。
【0032】
【発明の効果】第一の効果は、特定のタスクに一時期に
処理イベントが集中しても、そのタスクの処理イベント
だけが残ることはなく、またタスクごとに処理イベント
に対して処理を行う時間に違いがあっても、処理に時間
のかかるタスクの処理イベントだけ残ることはない、そ
の理由は、要求時刻の古い処理イベントを持つタスクが
優先されるからである。
処理イベントが集中しても、そのタスクの処理イベント
だけが残ることはなく、またタスクごとに処理イベント
に対して処理を行う時間に違いがあっても、処理に時間
のかかるタスクの処理イベントだけ残ることはない、そ
の理由は、要求時刻の古い処理イベントを持つタスクが
優先されるからである。
【図1】本発明の実施の形態の一例で、マルチタスクの
実行優先順位決定システムの内部構造の構造図である。
実行優先順位決定システムの内部構造の構造図である。
【図2】本発明の実施の形態の一例で、タスク実行処理
手段の機能ブロック図である。
手段の機能ブロック図である。
【図3】図2のタスク実行処理手段の流れ図である。
【図4】従来のマルチタスクシステムの内部構造の構造
図である。
図である。
【図5】従来のタスク処理手段の機能ブロック図で有
る。
る。
【図6】図5のタスク処理手段の流れ図である。
【図7】本発明の実施の形態の第1の説明図である。
【図8】本発明の実施の形態の第2の説明図である。
1a 実行キュー 2 判定時刻 3 判定間隔 5,5a〜5n タスク 6a 要求時刻 6b 要求内容 7 実行中要求時刻 8 タスク実行処理手段 9 優先レベル実行手段 10 タスク取り出し手段 11 優先キュー判定手段 12 実行中要求時間判定手段 13 タスク処理実行手段 17 優先キューイング手段 14 優先レベルタスク判定手段 15 判定時間更新手段 16 優先キュー移動手段 40a 処理キュー 60a 処理イベント
フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 9/46 G06F 15/00 G06F 1/00
Claims (6)
- 【請求項1】 複数のタスクと、キューイングされた時
刻である要求時刻と、前記タスクが処理を行うための情
報である要求内容と、前記要求時刻と前記要求内容とが
記述されている処理イベントと、前記処理イベントをキ
ューイングする処理キューと、複数の優先レベルを有し
て各優先レベルごとに優先と非優先との2つのキューか
ら構成され実行可能な前記タスクをキューイングする実
行キューと、前記タスクが前記処理イベントを取り出し
ていない時は前記処理キューの先頭の前記処理イベント
の要求時刻が設定されて前記処理イベントを処理中の場
合は処理中の前記処理イベントの要求時刻が設定されて
前記処理イベントを処理中でなく前記処理キューに全く
前記処理イベントが無い場合は「0」が設定される実行
中要求時刻と、前記実行キューの優先度を変更するため
に前記実行中要求時刻と比較する判定時刻と、前記判定
時刻を更新する値となる判定間隔とから構成されるマル
チタスクの実行優先順位決定システム。 - 【請求項2】 前記マルチタスクの実行優先順位決定シ
ステムを実行するため、前記優先レベルの高い前記実行
キューから順にキューイングする優先レベル実行手段
と、前記優先レベル実行手段でキューイングされた前記
タスクを取り出すタスク取り出し手段と、前記実行キュ
ーが優先か非優先か判定する優先キュー判定手段と、前
記優先キュー判定手段で非優先キューと判定された場合
は前記タスクから前記実行中要求時刻を取り出して前記
判定時刻と比較する実行中要求時間判定手段と、前記実
行中要求時間判定手段で実行中要求時刻≦判定時刻なら
前記タスクの実行を行うタスク処理実行手段と、前記実
行中要求時間判定手段で実行中要求時刻≦判定時刻でな
いなら前記実行キューの前記非優先キューにキューイン
グする非優先キューイング手段と、前記タスク処理実行
手段で前記タスクを実行するか前記非優先キューイング
手段で前記実行キューの前記非優先キューにキューイン
グした場合は同じ優先度の前記タスクの前記実行中要求
時刻と前記判定時刻を比較して実行中要求時刻≦判定時
刻の場合は前記優先レベル実行手段に戻る優先レベルタ
スク判定手段と、前記優先レベルタスク判定手段で全て
の前記タスクで実行中要求時刻≦判定時刻の場合は前記
判定時刻を現時刻を超えない範囲で前記判定間隔の分加
算する判定時間更新手段と、前記判定時間更新手段の加
算終了後に前記実行キューの前記非優先キュー上の前記
タスクを優先キューに移動して優先レベル実行手段に戻
る優先キュー移動手段とを有するタスク実行処理手段を
有することを特徴とする請求項1記載のマルチタスクの
実行優先順位決定システム。 - 【請求項3】 前記判定時刻は前記優先レベルごとに前
記判定時刻を記憶し、前記タスクの実行の優先度を下げ
る時の判定値として使用され、初期値は現時刻とし、前
記タスク実行処理手段で更新されることを特徴としする
請求項2記載のマルチタスクの実行優先順位決定システ
ム。 - 【請求項4】 前記判定間隔は予め設定している任意の
値で、前記判定時刻を更新するときの加算値であること
を特徴とした請求項2記載のマルチタスクの実行優先順
位決定システム。 - 【請求項5】 前記判定時刻、前記判定間隔および前記
処理イベントの前記要求時刻の時間の単位は優先順位を
変更するタイミングにより決まり、秒単位に優先順位を
変更するなら秒以下、10ミリ秒単位に優先順位を変更
するなら10ミリ秒以下の単位を有することを特徴とし
た請求項3記載のマルチタスクの実行優先順位決定シス
テム。 - 【請求項6】 請求項1,2,3,4,5何れか記載の
マルチタスクの実行優先順位決定システムを動作させる
コンピュータのプログラムが記憶された記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10029555A JP3093714B2 (ja) | 1998-02-12 | 1998-02-12 | マルチタスクの実行優先順位決定システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10029555A JP3093714B2 (ja) | 1998-02-12 | 1998-02-12 | マルチタスクの実行優先順位決定システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11232124A JPH11232124A (ja) | 1999-08-27 |
JP3093714B2 true JP3093714B2 (ja) | 2000-10-03 |
Family
ID=12279401
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10029555A Expired - Fee Related JP3093714B2 (ja) | 1998-02-12 | 1998-02-12 | マルチタスクの実行優先順位決定システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3093714B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6135430B2 (ja) | 2013-09-27 | 2017-05-31 | 富士通株式会社 | 情報処理装置、方法、プログラム、及びシステム |
-
1998
- 1998-02-12 JP JP10029555A patent/JP3093714B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH11232124A (ja) | 1999-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2691080B2 (ja) | 同期点回復手段を有するコンピュータ装置 | |
JP2883784B2 (ja) | マイクロコンピュータ | |
JP2003501720A (ja) | コンピュータ・システムにおける実行中のアプリケーション内の子プロセスの生成および破壊を監視するための方法およびデバイス | |
JP2001249907A (ja) | 起動処理方式 | |
JPH0793271A (ja) | 作業ユニットに合わせてコミット範囲を調整するコンピュータ・システム | |
JPH077379B2 (ja) | 多重処理システムの割込み選択方式 | |
JPH0934732A (ja) | コンピュータシステム及びそれを制御する方法 | |
JP3093714B2 (ja) | マルチタスクの実行優先順位決定システム | |
JPH04284548A (ja) | データベース排他制御方式 | |
JP3005562B1 (ja) | タスク管理装置及びタスクスケジューリング方法 | |
JP2743802B2 (ja) | クライアント・サーバシステム処理中断/再開方式 | |
JP2843748B2 (ja) | 排他制御方式 | |
JP3231101B2 (ja) | タスクキュー管理方法 | |
JP2597283B2 (ja) | 割込みにおけるスケジューリング方式 | |
US7080179B1 (en) | Multi-level interrupts | |
JP2921501B2 (ja) | オンライン処理システムにおける高負荷時のタスク実行優先度変更方式 | |
JP2000353100A (ja) | タスク処理システム | |
JPH11184716A (ja) | キュー管理方式 | |
JP2000259741A (ja) | 並列座席予約システム | |
JP2000122878A (ja) | ジョブ起動と管理の方法及びシステム | |
JPH08286950A (ja) | 情報処理装置及びトレース情報格納方法 | |
JP3008890B2 (ja) | 処理制御装置 | |
JP2828000B2 (ja) | ジョブスケジューリングクラス管理システムおよび管理方法 | |
JPS6022768B2 (ja) | デ−タ処理方法 | |
JP2500446B2 (ja) | 間欠動作機能を有する電文一括処理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20000711 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070728 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080728 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |