JPH05342022A - 優先順位検索装置 - Google Patents
優先順位検索装置Info
- Publication number
- JPH05342022A JPH05342022A JP14765792A JP14765792A JPH05342022A JP H05342022 A JPH05342022 A JP H05342022A JP 14765792 A JP14765792 A JP 14765792A JP 14765792 A JP14765792 A JP 14765792A JP H05342022 A JPH05342022 A JP H05342022A
- Authority
- JP
- Japan
- Prior art keywords
- priority
- priority order
- task
- value
- processing
- 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.)
- Granted
Links
Abstract
(57)【要約】
【目的】 タスクの動作を優先順位で管理するオペレー
ティング・システムにおける優先順位検索処理の検索時
間を短縮し、処理時間の最悪値の保証をはかれるように
する。 【構成】 オフセット検索用のビット・マップを用いて
優先順位管理テーブルのオフセットを求め、その優先順
位管理テーブル内の先に求めたオフセットの値を元に変
換テーブルの値を引用する。さらに、引用した値から優
先順位を算出することによって優先順位管理テーブルの
ビットを直接検索することなく、変換テーブルの値を参
照し優先順位を求める。
ティング・システムにおける優先順位検索処理の検索時
間を短縮し、処理時間の最悪値の保証をはかれるように
する。 【構成】 オフセット検索用のビット・マップを用いて
優先順位管理テーブルのオフセットを求め、その優先順
位管理テーブル内の先に求めたオフセットの値を元に変
換テーブルの値を引用する。さらに、引用した値から優
先順位を算出することによって優先順位管理テーブルの
ビットを直接検索することなく、変換テーブルの値を参
照し優先順位を求める。
Description
【0001】
【産業上の利用分野】本発明は、タスクの動作を優先順
位で管理するオペレーティング・システム(以降OSと
略す)における優先順位の検索に利用する。本発明は、
優先順位検索の処理時間を高速化することができる優先
順位検索装置に関する。
位で管理するオペレーティング・システム(以降OSと
略す)における優先順位の検索に利用する。本発明は、
優先順位検索の処理時間を高速化することができる優先
順位検索装置に関する。
【0002】
【従来の技術】従来、この種のOSにおいては、タスク
それぞれに優先順位と呼ばれる正の整数を付け、その値
が小さい(優先順位が高い)ほど処理を優先させるとい
う処理方式になっていた。この優先順位を管理するため
に、レディ・キューにつながれているタスクの優先順位
と1対1に対応するビット・マップ(優先順位管理テー
ブル)を用意し、このビットを検索することによって、
タスク・ディスパッチの際に次に動作させるタスクの検
索を行っていた。
それぞれに優先順位と呼ばれる正の整数を付け、その値
が小さい(優先順位が高い)ほど処理を優先させるとい
う処理方式になっていた。この優先順位を管理するため
に、レディ・キューにつながれているタスクの優先順位
と1対1に対応するビット・マップ(優先順位管理テー
ブル)を用意し、このビットを検索することによって、
タスク・ディスパッチの際に次に動作させるタスクの検
索を行っていた。
【0003】このビット・マップ・テーブルは、図3お
よび図4に示されるもので、優先順位数だけのビット数
を持つ領域であり、この領域の0バイト目のLSBよ
り、優先順位の高い順にレディ状態のタスクが存在すれ
ば、そのビットを立てる構造になっている。
よび図4に示されるもので、優先順位数だけのビット数
を持つ領域であり、この領域の0バイト目のLSBよ
り、優先順位の高い順にレディ状態のタスクが存在すれ
ば、そのビットを立てる構造になっている。
【0004】ここで、優先順位が0から63まであるO
Sにおいて、優先順位50のタスクA、優先順位30の
タスクB、優先順位10のタスクCが存在していると
き、タスクCが待ち状態に入った場合、OSがタスク・
ディスパッチを行うために最も優先順位の高いタスクを
検索する際の処理について説明する。図1は従来例の構
成を示すブロック図、図3はタスクA、タスクB、タス
クCが存在している場合の優先順位管理テーブルの内容
を示す図である。また、図4はタスクCが待ちに入った
場合の優先順位管理テーブルの内容を示す図、図9は従
来例における最優先順位検索の際の処理動作の流れを示
すフローチャートである。
Sにおいて、優先順位50のタスクA、優先順位30の
タスクB、優先順位10のタスクCが存在していると
き、タスクCが待ち状態に入った場合、OSがタスク・
ディスパッチを行うために最も優先順位の高いタスクを
検索する際の処理について説明する。図1は従来例の構
成を示すブロック図、図3はタスクA、タスクB、タス
クCが存在している場合の優先順位管理テーブルの内容
を示す図である。また、図4はタスクCが待ちに入った
場合の優先順位管理テーブルの内容を示す図、図9は従
来例における最優先順位検索の際の処理動作の流れを示
すフローチャートである。
【0005】図3に示すように、タスクA、タスクB、
タスクCが存在し、タスクCが実行中であるとし、優先
順位の高いタスクCが待ち状態に入ったとすると、OS
は次の実行のためにタスクCの次に高い優先順位のタス
クを検索する。
タスクCが存在し、タスクCが実行中であるとし、優先
順位の高いタスクCが待ち状態に入ったとすると、OS
は次の実行のためにタスクCの次に高い優先順位のタス
クを検索する。
【0006】図4に示す8バイトある優先順位管理テー
ブルを1バイト単位で参照すると、直前の最優先順位
は、管理テーブルの1バイト目に存在しており、これよ
り高い優先順位で、かつ実行可能状態のタスクは存在し
えないので以下の処理はテーブルの1バイト目より実行
される。
ブルを1バイト単位で参照すると、直前の最優先順位
は、管理テーブルの1バイト目に存在しており、これよ
り高い優先順位で、かつ実行可能状態のタスクは存在し
えないので以下の処理はテーブルの1バイト目より実行
される。
【0007】まず、優先順位管理テーブルの1バイト目
(1)の中に立っているビットがあるか否かを判定し、
図9に示すS11において(1)を右に1ビット論理シ
フトする。処理はS12に移り、ビット・サーチが9ビ
ット目に及んだか否かを判定する。9ビット目のサーチ
であればS13にて次のバイト(2)に移り再度S11
へと処理を移す。9ビット目のサーチでなければ、S1
4へ処理は移り、S11の結果キャリーが1になったか
否かを判定する。ここでは、キャリーは0なので、再び
S11に処理を戻し、再度右に1ビット論理シフトさせ
S12へ処理を移す。これらの処理をキャリーが1にな
るまで繰り返す。
(1)の中に立っているビットがあるか否かを判定し、
図9に示すS11において(1)を右に1ビット論理シ
フトする。処理はS12に移り、ビット・サーチが9ビ
ット目に及んだか否かを判定する。9ビット目のサーチ
であればS13にて次のバイト(2)に移り再度S11
へと処理を移す。9ビット目のサーチでなければ、S1
4へ処理は移り、S11の結果キャリーが1になったか
否かを判定する。ここでは、キャリーは0なので、再び
S11に処理を戻し、再度右に1ビット論理シフトさせ
S12へ処理を移す。これらの処理をキャリーが1にな
るまで繰り返す。
【0008】この例の場合はこれを繰り返し、3バイト
目(3)の6ビット目に立っているビットが存在するこ
とを発見する。
目(3)の6ビット目に立っているビットが存在するこ
とを発見する。
【0009】これらの処理によって、テーブルの3バイ
ト目の6ビット目が最も高い優先順位であることがわか
る。これによりS15において優先順位を算出する。こ
の場合、 6+3×8=30 で、次の最優先順位は30であることがわかる。
ト目の6ビット目が最も高い優先順位であることがわか
る。これによりS15において優先順位を算出する。こ
の場合、 6+3×8=30 で、次の最優先順位は30であることがわかる。
【0010】このようにして、OSは次に実行させるタ
スクを検索し、ディスパッチ処理を行う。
スクを検索し、ディスパッチ処理を行う。
【0011】
【発明が解決しようとする課題】前述した従来の最優先
順位検索方式では、あるタスクが待ち状態になり次に高
い優先順位のタスクを検索する際の処理で、例えば優先
順位が0のタスクから優先順位が63のタスクへのタス
ク・スイッチを例にとると、検索処理はアドレスのシフ
トを7回、ビット・シフトを56回も繰り返し行ってい
るために、処理時間が非常に多くかかり、また、優先順
位の設定によっては検索処理時間が大幅に変動してしま
うので、検索処理時間の最悪値の保証ができず、最長割
り込み禁止時間が保証できない問題がある。
順位検索方式では、あるタスクが待ち状態になり次に高
い優先順位のタスクを検索する際の処理で、例えば優先
順位が0のタスクから優先順位が63のタスクへのタス
ク・スイッチを例にとると、検索処理はアドレスのシフ
トを7回、ビット・シフトを56回も繰り返し行ってい
るために、処理時間が非常に多くかかり、また、優先順
位の設定によっては検索処理時間が大幅に変動してしま
うので、検索処理時間の最悪値の保証ができず、最長割
り込み禁止時間が保証できない問題がある。
【0012】最長割り込み禁止時間の保証は、リアルタ
イム・システムにおいては重要なことであり、この時間
が保証できないということは致命的な欠点である。
イム・システムにおいては重要なことであり、この時間
が保証できないということは致命的な欠点である。
【0013】本発明はこのような問題を解決するもの
で、優先順位の検索処理時間を短縮することができ、検
索処理時間の最悪値を保証して最長割り込み禁止時間を
保証することができる装置を提供することを目的とす
る。
で、優先順位の検索処理時間を短縮することができ、検
索処理時間の最悪値を保証して最長割り込み禁止時間を
保証することができる装置を提供することを目的とす
る。
【0014】
【課題を解決するための手段】本発明は、一つのバスを
介して中央処理装置、メモリ、シリアルコントローラ、
タイマコントローラおよび割り込みコントローラが接続
され、前記中央処理装置に、タスクの動作を優先順位で
管理する手段を備えた優先順位検索装置において、前記
メモリに、レディ状態のタスクの優先順位と1対1に対
応するビット情報を保持する手段と、前記ビット情報に
対応する検索情報を保持する手段とを備え、前記中央処
理装置に、前記検索情報を優先順位に変換する手段と、
前記検索情報をもとに前記ビット情報の優先順位を算出
する手段とを備え、前記タイマコントローラに最長割込
禁止時間に対応する値が設定されたことを特徴とする。
介して中央処理装置、メモリ、シリアルコントローラ、
タイマコントローラおよび割り込みコントローラが接続
され、前記中央処理装置に、タスクの動作を優先順位で
管理する手段を備えた優先順位検索装置において、前記
メモリに、レディ状態のタスクの優先順位と1対1に対
応するビット情報を保持する手段と、前記ビット情報に
対応する検索情報を保持する手段とを備え、前記中央処
理装置に、前記検索情報を優先順位に変換する手段と、
前記検索情報をもとに前記ビット情報の優先順位を算出
する手段とを備え、前記タイマコントローラに最長割込
禁止時間に対応する値が設定されたことを特徴とする。
【0015】
【作用】タスクの動作を優先順位で管理するときに、レ
ディ状態のタスクの優先順位と1対1に対応したビット
情報を保持するとともに、このビット情報に対応した検
索情報を保持する。保持した検索情報を優先順位に変換
し、その検索情報をもとにビット情報の優先順位を算出
する。
ディ状態のタスクの優先順位と1対1に対応したビット
情報を保持するとともに、このビット情報に対応した検
索情報を保持する。保持した検索情報を優先順位に変換
し、その検索情報をもとにビット情報の優先順位を算出
する。
【0016】これにより、最優先順位の検索処理の際に
数多くのループ処理を行うことなく、最優先順位の検索
時間を短縮することができ、また、優先順位に依存して
の処理時間の変動を押え、処理時間の最悪値を保証して
OSにおける最長割り込み禁止時間を保証することがで
きる。
数多くのループ処理を行うことなく、最優先順位の検索
時間を短縮することができ、また、優先順位に依存して
の処理時間の変動を押え、処理時間の最悪値を保証して
OSにおける最長割り込み禁止時間を保証することがで
きる。
【0017】
【実施例】次に、本発明実施例を図面に基づいて説明す
る。図1は本発明第一実施例および本発明第二実施例の
構成を示すブロック図である。
る。図1は本発明第一実施例および本発明第二実施例の
構成を示すブロック図である。
【0018】(第一実施例)本発明第一実施例は、一つ
のバス1を介して中央処理装置2、メモリ3、シリアル
コントローラ4、割込みコントローラ5、およびタイマ
コントローラ6が接続され、中央処理装置2に、タスク
の動作を優先順位で管理する手段を備え、さらに、本発
明の特徴としてメモリ3に、レディ状態のタスクの優先
順位と1対1に対応するビット情報を保持する手段と、
前記ビット情報に対応する検索情報を保持する手段とを
備え、中央処理装置2に、前記検索情報を優先順位に変
換する手段と、前記検索情報をもとに前記ビット情報の
優先順位を算出する手段とを備え、タイマコントローラ
4に最長割込禁止時間に対応する値が設定される。
のバス1を介して中央処理装置2、メモリ3、シリアル
コントローラ4、割込みコントローラ5、およびタイマ
コントローラ6が接続され、中央処理装置2に、タスク
の動作を優先順位で管理する手段を備え、さらに、本発
明の特徴としてメモリ3に、レディ状態のタスクの優先
順位と1対1に対応するビット情報を保持する手段と、
前記ビット情報に対応する検索情報を保持する手段とを
備え、中央処理装置2に、前記検索情報を優先順位に変
換する手段と、前記検索情報をもとに前記ビット情報の
優先順位を算出する手段とを備え、タイマコントローラ
4に最長割込禁止時間に対応する値が設定される。
【0019】次に、このように構成された本発明第一実
施例の処理動作について図面を用いて説明する。図2は
本発明第一実施例における最優先順位検索処理の流れを
示すフローチャート、図3はタスクAと、タスクB、タ
スクCが存在している際の優先順位管理テーブルの内容
を示す図、図4はタスクCが待ちに入った場合の優先順
位管理テーブルの内容を示す図である。図3および図4
に示す優先順位管理テーブルは、OSにおいて優先順位
を管理するためにレディ・キューにつながれているタス
クの優先順位と1対1に対応するビット・マップであ
る。また、図5は本発明第一実施例で優先順位値を検索
するために用いる変換テーブルの内容を示す図で、この
変換テーブルの構造は、ビットの立っているバイトの優
先順位管理テーブルの値をオフセットとして値を参照で
きるようにされている。さらに、図6は図4に示す状態
において優先順位管理テーブルをバイト単位に検索する
ために『1バイト=1ビット』で表したビット・マップ
である。これは、優先順位管理テーブルを1バイト単位
にみてビットの立っているバイトに対応するビットを立
てたビット・マップである。
施例の処理動作について図面を用いて説明する。図2は
本発明第一実施例における最優先順位検索処理の流れを
示すフローチャート、図3はタスクAと、タスクB、タ
スクCが存在している際の優先順位管理テーブルの内容
を示す図、図4はタスクCが待ちに入った場合の優先順
位管理テーブルの内容を示す図である。図3および図4
に示す優先順位管理テーブルは、OSにおいて優先順位
を管理するためにレディ・キューにつながれているタス
クの優先順位と1対1に対応するビット・マップであ
る。また、図5は本発明第一実施例で優先順位値を検索
するために用いる変換テーブルの内容を示す図で、この
変換テーブルの構造は、ビットの立っているバイトの優
先順位管理テーブルの値をオフセットとして値を参照で
きるようにされている。さらに、図6は図4に示す状態
において優先順位管理テーブルをバイト単位に検索する
ために『1バイト=1ビット』で表したビット・マップ
である。これは、優先順位管理テーブルを1バイト単位
にみてビットの立っているバイトに対応するビットを立
てたビット・マップである。
【0020】ここで、優先順位が0から63まであるO
Sの管理下において、優先順位50のタスクA、優先順
位30のタスクB、優先順位10のタスクCが存在し、
優先順位10のタスクCが実行中のときに、待ち状態に
入ったとすると、OSはタスク・ディスパッチを行うた
めに最も優先順位の高いタスクを検索する。
Sの管理下において、優先順位50のタスクA、優先順
位30のタスクB、優先順位10のタスクCが存在し、
優先順位10のタスクCが実行中のときに、待ち状態に
入ったとすると、OSはタスク・ディスパッチを行うた
めに最も優先順位の高いタスクを検索する。
【0021】まず、図2に示すS1にて図6に示すビッ
ト・マップの値をもとに図5に示す変換テーブルを参照
する。この図5に示す値は優先順位管理テーブルにおい
て何バイト目に最初のビットが立っているかというオフ
セットを示している。この第一実施例の場合、ビット・
マップの値は72であり、変換テーブルより参照した値
は3であり、したがってオフセット値は3である。
ト・マップの値をもとに図5に示す変換テーブルを参照
する。この図5に示す値は優先順位管理テーブルにおい
て何バイト目に最初のビットが立っているかというオフ
セットを示している。この第一実施例の場合、ビット・
マップの値は72であり、変換テーブルより参照した値
は3であり、したがってオフセット値は3である。
【0022】次に、S2に処理は移り、優先順位管理テ
ーブルの先に求めたオフセットに該当する1バイトの値
をもとに図5に示す変換テーブルから値を参照する。こ
の場合、先に求めたオフセット値は3であり、優先順位
管理テーブルの3バイト目(3)の値は64である。こ
の64を元に変換テーブルより引いた値は6となる。最
後にS3にて以下の計算式に従い優先順位を求める。S
2で変換テーブルより参照した値をA、S6で求めた優
先順位管理テーブルのオフセット値をBとすると、 優先順位=A+B×8 であり、これにより優先順位が求められる。本第一実施
例の場合は、A=6、B=3であるから、 優先順位=3×8+6=30 となり、最優先順位値は30として求められる。
ーブルの先に求めたオフセットに該当する1バイトの値
をもとに図5に示す変換テーブルから値を参照する。こ
の場合、先に求めたオフセット値は3であり、優先順位
管理テーブルの3バイト目(3)の値は64である。こ
の64を元に変換テーブルより引いた値は6となる。最
後にS3にて以下の計算式に従い優先順位を求める。S
2で変換テーブルより参照した値をA、S6で求めた優
先順位管理テーブルのオフセット値をBとすると、 優先順位=A+B×8 であり、これにより優先順位が求められる。本第一実施
例の場合は、A=6、B=3であるから、 優先順位=3×8+6=30 となり、最優先順位値は30として求められる。
【0023】このようにしてOSは次に実行させるタス
クを高速に検索し、ディスパッチ処理を迅速に行うこと
ができる。
クを高速に検索し、ディスパッチ処理を迅速に行うこと
ができる。
【0024】(第二実施例)本発明第二実施例の動作環
境は図1に示す第一実施例同様に構成される。以下本発
明第二実施例の処理動作について説明する。
境は図1に示す第一実施例同様に構成される。以下本発
明第二実施例の処理動作について説明する。
【0025】優先順位50のタスクA、優先順位30の
タスクB、優先順位10のタスクCが存在し、優先順位
10のタスクCが実行中で待ち状態に入ったとすると、
OSはここでタスク・ディスパッチを行うために最も優
先順位の高いタスクを検索する。
タスクB、優先順位10のタスクCが存在し、優先順位
10のタスクCが実行中で待ち状態に入ったとすると、
OSはここでタスク・ディスパッチを行うために最も優
先順位の高いタスクを検索する。
【0026】図7は本発明第二実施例の優先順位検索処
理の流れを示すフローチャート、図3は第一実施例同様
にタスクAと、タスクB、タスクCが存在している際の
優先順位管理テーブルの内容を示す図、図4は同じくタ
スクCが待ち状態に入った場合の優先順位管理テーブル
の内容を示す図、図6はこの図4に示す状態において、
優先順位管理テーブルをバイト単位に検索するために
『1バイト=1ビット』で表されているビット・マップ
の内容を示す図で、これは、優先順位管理テーブルを1
バイト単位にみて、ビットの立っているバイトに対応す
るビットが立てられている。また、図8は本第二実施例
で優先順位値を検索するために用いられる変換テーブル
を示す図である。この変換テーブルの構造は、ビットの
立っているバイトの優先順位管理テーブルの値をオフセ
ットとして値を参照できるようにしてある。
理の流れを示すフローチャート、図3は第一実施例同様
にタスクAと、タスクB、タスクCが存在している際の
優先順位管理テーブルの内容を示す図、図4は同じくタ
スクCが待ち状態に入った場合の優先順位管理テーブル
の内容を示す図、図6はこの図4に示す状態において、
優先順位管理テーブルをバイト単位に検索するために
『1バイト=1ビット』で表されているビット・マップ
の内容を示す図で、これは、優先順位管理テーブルを1
バイト単位にみて、ビットの立っているバイトに対応す
るビットが立てられている。また、図8は本第二実施例
で優先順位値を検索するために用いられる変換テーブル
を示す図である。この変換テーブルの構造は、ビットの
立っているバイトの優先順位管理テーブルの値をオフセ
ットとして値を参照できるようにしてある。
【0027】まず、図6に示すビット・マップの値をも
とに図4に示す優先順位管理テーブルにおけるオフセッ
トをもとめる。
とに図4に示す優先順位管理テーブルにおけるオフセッ
トをもとめる。
【0028】ここでは最初に、図7に示すS4にてビッ
トの立っているビット・マップの下位4ビットが0であ
るか否かを判定し、0であれば上位4ビットの値をもと
に図8(a)に示す変換テーブルより値を参照し、0で
なければ下位4ビットの値をもとに図8(b)に示す変
換テーブルより値を参照する。この例ではビット・マッ
プ4の値は72であり、下位4ビットは0でないので、
下位4ビットの値である8をもとに図8(b)の変換テ
ーブルのオフセット+8(6)より値を参照する。図8
(b)より参照した値は3であるので、この場合のオフ
セット値は3である。
トの立っているビット・マップの下位4ビットが0であ
るか否かを判定し、0であれば上位4ビットの値をもと
に図8(a)に示す変換テーブルより値を参照し、0で
なければ下位4ビットの値をもとに図8(b)に示す変
換テーブルより値を参照する。この例ではビット・マッ
プ4の値は72であり、下位4ビットは0でないので、
下位4ビットの値である8をもとに図8(b)の変換テ
ーブルのオフセット+8(6)より値を参照する。図8
(b)より参照した値は3であるので、この場合のオフ
セット値は3である。
【0029】次に、S7にて、優先順位管理テーブルで
先に求めたオフセットに該当する1バイトの下位4ビッ
トが0であるか否かを判定する。0であればこの1バイ
トの上位4ビットの値をもとにS8にて図8(a)の変
換テーブルより値を引く。0でなければ下位4ビットの
値をもとにS9にて図8(b)の変換テーブルより値を
参照する。この場合、下位4ビットは0であるので上位
4ビットだけに注目し、図8(a)の変換テーブルより
値を参照する。優先順位管理テーブルの3バイト目
(3)の上位4ビットの値は4であるので、この4を元
に優先順位変換テーブル(a)のオフセット+4(5)
より引いた値は6である。
先に求めたオフセットに該当する1バイトの下位4ビッ
トが0であるか否かを判定する。0であればこの1バイ
トの上位4ビットの値をもとにS8にて図8(a)の変
換テーブルより値を引く。0でなければ下位4ビットの
値をもとにS9にて図8(b)の変換テーブルより値を
参照する。この場合、下位4ビットは0であるので上位
4ビットだけに注目し、図8(a)の変換テーブルより
値を参照する。優先順位管理テーブルの3バイト目
(3)の上位4ビットの値は4であるので、この4を元
に優先順位変換テーブル(a)のオフセット+4(5)
より引いた値は6である。
【0030】最後に、S10にて以下の計算式に従い優
先順位を求める。S8あるいはS9にて変換テーブルよ
り参照した値をA、S5あるいはS6で求めた優先順位
管理テーブルのオフセット値をBとすると、 優先順位=A+B×8 となり、優先順位が求められる。
先順位を求める。S8あるいはS9にて変換テーブルよ
り参照した値をA、S5あるいはS6で求めた優先順位
管理テーブルのオフセット値をBとすると、 優先順位=A+B×8 となり、優先順位が求められる。
【0031】本実施例の場合は、A=6、B=3 優先順位=3×8+6=30 となり、最優先順位値は30として求められる。
【0032】以上のようにして、OSは次に実行させる
タスクを高速に検索し、ディスパッチ処理を迅速に行う
ことができ、最優先順位の検索処理を高速に行うことが
できる。
タスクを高速に検索し、ディスパッチ処理を迅速に行う
ことができ、最優先順位の検索処理を高速に行うことが
できる。
【0033】
【発明の効果】以上説明したように本発明によれば、最
優先順位の検索処理の際に数多くのループ処理を行うこ
となく、最優先順位の検索処理時間を短縮することがで
き、また、優先順位に依存しての処理時間の変動を押
え、処理時間の最悪値を保証し、OSにおける最長割り
込み禁止時間を保証することができる効果がある。
優先順位の検索処理の際に数多くのループ処理を行うこ
となく、最優先順位の検索処理時間を短縮することがで
き、また、優先順位に依存しての処理時間の変動を押
え、処理時間の最悪値を保証し、OSにおける最長割り
込み禁止時間を保証することができる効果がある。
【図1】本発明第一実施例、本発明第二実施例、および
従来例の構成を示すブロック図。
従来例の構成を示すブロック図。
【図2】本発明第一実施例における処理動作の流れを示
すフローチャート。
すフローチャート。
【図3】本発明第一実施例、本発明第二実施例、および
従来例におけるタスクA、タスクB、およびタスクCが
存在している場合の優先順位管理テーブルの内容を示す
図。
従来例におけるタスクA、タスクB、およびタスクCが
存在している場合の優先順位管理テーブルの内容を示す
図。
【図4】本発明第一実施例、本発明第二実施例、および
従来例におけるタスクCが待ち状態に入った場合の優先
順位管理テーブルの内容を示す図。
従来例におけるタスクCが待ち状態に入った場合の優先
順位管理テーブルの内容を示す図。
【図5】本発明第一実施例における変換テーブルの内容
を示す図。
を示す図。
【図6】本発明第一実施例および本発明第二実施例にお
ける優先順位管理テーブルのオフセット検索に用いるビ
ットマップの内容を示す図。
ける優先順位管理テーブルのオフセット検索に用いるビ
ットマップの内容を示す図。
【図7】本発明第二実施例における処理動作の流れを示
すフローチャート。
すフローチャート。
【図8】(a)および(b)は本発明第二実施例におけ
る変換テーブルの内容を示す図。
る変換テーブルの内容を示す図。
【図9】従来例における処理動作の流れを示すフローチ
ャート。
ャート。
1 バス 2 中央処理装置 3 メモリ 4 シリアルコントローラ 5 割り込みコントローラ 6 タイマコントローラ
Claims (1)
- 【請求項1】 一つのバスを介して中央処理装置、メモ
リ、シリアルコントローラ、タイマコントローラおよび
割込みコントローラが接続され、 前記中央処理装置に、タスクの動作を優先順位で管理す
る手段を備えた優先順位検索装置において、 前記メモリに、 レディ状態のタスクの優先順位と1対1に対応するビッ
ト情報を保持する手段と、 前記ビット情報に対応する検索情報を保持する手段とを
備え、 前記中央処理装置に、 前記検索情報を優先順位に変換する手段と、 前記検索情報をもとに前記ビット情報の優先順位を算出
する手段とを備えたことを特徴とする優先順位検索装
置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14765792A JP2932832B2 (ja) | 1992-06-08 | 1992-06-08 | 優先順位検索装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14765792A JP2932832B2 (ja) | 1992-06-08 | 1992-06-08 | 優先順位検索装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05342022A true JPH05342022A (ja) | 1993-12-24 |
JP2932832B2 JP2932832B2 (ja) | 1999-08-09 |
Family
ID=15435317
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14765792A Expired - Lifetime JP2932832B2 (ja) | 1992-06-08 | 1992-06-08 | 優先順位検索装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2932832B2 (ja) |
-
1992
- 1992-06-08 JP JP14765792A patent/JP2932832B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2932832B2 (ja) | 1999-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7487339B2 (en) | Method and apparatus for binding shadow registers to vectored interrupts | |
US6553487B1 (en) | Device and method for performing high-speed low overhead context switch | |
JPS60117338A (ja) | 割込みベクトリング装置及び方法 | |
US6820153B2 (en) | Interrupt processing and memory management method in an operation processing device and a device using the same | |
JPH05342022A (ja) | 優先順位検索装置 | |
JPS62182822A (ja) | 自動運転方式 | |
JPH02173828A (ja) | 割込み処理方式 | |
JPS63108448A (ja) | 入出力要求制御方式 | |
JPH0245207B2 (ja) | ||
JPH04257062A (ja) | ハッシュキューを用いるデータ処理装置 | |
JPH0424828A (ja) | マルチタスク管理方式 | |
JPH0262633A (ja) | プログラム間通知方式 | |
JPH01281553A (ja) | チャンネル制御方式 | |
JPH0531170B2 (ja) | ||
JPH0413736B2 (ja) | ||
JPH0271327A (ja) | ソート処理装置 | |
JPS6380349A (ja) | 高速ペ−ジ入出力方式 | |
JPH064321A (ja) | 割り込み管理方式 | |
JPH0442328A (ja) | 情報処理装置の割り込み制御方式 | |
JPH08297583A (ja) | 割り込み処理装置およびその方法 | |
JPH05298099A (ja) | 複数プログラムの連続処理方法及び該処理方法を使用した中央演算処理装置 | |
JPH09106344A (ja) | パイプライン処理装置 | |
JPH04195638A (ja) | 半導体集積回路 | |
JPS60225904A (ja) | プログラマブル・コントロ−ラ | |
JPH0495163A (ja) | データ検索システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 19980714 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19990427 |