JPH0415831A - 時分割マルチタスク制御装置 - Google Patents
時分割マルチタスク制御装置Info
- Publication number
- JPH0415831A JPH0415831A JP11747490A JP11747490A JPH0415831A JP H0415831 A JPH0415831 A JP H0415831A JP 11747490 A JP11747490 A JP 11747490A JP 11747490 A JP11747490 A JP 11747490A JP H0415831 A JPH0415831 A JP H0415831A
- Authority
- JP
- Japan
- Prior art keywords
- task
- address
- tcb
- time
- tasks
- 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
【発明の詳細な説明】
(産業上の利用分野)
本発明は、1つの中央演算処理装置(CP U)を用い
て複数の仕事を時分割並行処理する時分割マルチタスク
処理装置に関する。
て複数の仕事を時分割並行処理する時分割マルチタスク
処理装置に関する。
(従来の技術)
従来、この種時分割マルチタスク制御装置は、特開平1
−169540号公報に記載されているように、1組の
制御用レジスタ群及びキュー切り替え制御部の管理下で
複数のタスク実行キューにひとつの中央演算処理装置を
時分割で占有させ、複数のタスク実行キューにより複数
のタスクを時分割並行処理するように構成している。な
お、制御用レジスタ群の中には、複数のタスク実行キュ
ーの切り替えモードを設定するキュー切り替えモードレ
ジスタ、タスク実行キューを指定するキュー切り替えス
ケジューリングレジスタ、各タスク実行キューのCPU
占有時間を設定するキュー実行予定時間指定レジスタ等
が備えられてマルチタスクを時分割並行処理できるよう
に構成されている。
−169540号公報に記載されているように、1組の
制御用レジスタ群及びキュー切り替え制御部の管理下で
複数のタスク実行キューにひとつの中央演算処理装置を
時分割で占有させ、複数のタスク実行キューにより複数
のタスクを時分割並行処理するように構成している。な
お、制御用レジスタ群の中には、複数のタスク実行キュ
ーの切り替えモードを設定するキュー切り替えモードレ
ジスタ、タスク実行キューを指定するキュー切り替えス
ケジューリングレジスタ、各タスク実行キューのCPU
占有時間を設定するキュー実行予定時間指定レジスタ等
が備えられてマルチタスクを時分割並行処理できるよう
に構成されている。
(発明が解決しようとする課題)
しかしながら、上記従来の構成では、複数のタスクを1
つのCPL’で実行する場合、タスクの時間管理及び割
り込み処理を用いてタスクの切り替えを行うために、プ
ログラムの作成時に予め優先順位をつけたタスク・コン
トロール・テーブル(以下、TCBという)を作り、T
CBのメモリの内容を実行するタスクの先頭アドレスに
書き替えることにより、実行したいタスクの管理を行っ
てきた。しかし、制御しなければならないタスクの数が
増えるとこのTCBに格納されるタスクの数が多くなる
。また、この方法ではつぎに実行するタスクを探すため
優先順位の高いタスクから検索するため、優先順位の低
いタスクを検索する時間が長くなる。このように複数の
タスクを1つのCPUで実行するには、各タスクの切り
替え設定や各タスクの実行時間の優先順位をプログラム
で設定し、検索するため実際のタスクの実行時間が短か
くなり、その他の制御プログラムが実行されている時間
が長くなるという問題があった。
つのCPL’で実行する場合、タスクの時間管理及び割
り込み処理を用いてタスクの切り替えを行うために、プ
ログラムの作成時に予め優先順位をつけたタスク・コン
トロール・テーブル(以下、TCBという)を作り、T
CBのメモリの内容を実行するタスクの先頭アドレスに
書き替えることにより、実行したいタスクの管理を行っ
てきた。しかし、制御しなければならないタスクの数が
増えるとこのTCBに格納されるタスクの数が多くなる
。また、この方法ではつぎに実行するタスクを探すため
優先順位の高いタスクから検索するため、優先順位の低
いタスクを検索する時間が長くなる。このように複数の
タスクを1つのCPUで実行するには、各タスクの切り
替え設定や各タスクの実行時間の優先順位をプログラム
で設定し、検索するため実際のタスクの実行時間が短か
くなり、その他の制御プログラムが実行されている時間
が長くなるという問題があった。
本発明はこのような従来の問題を解決する時分割マルチ
タスク制御装置を提供することを目的とするものである
。
タスク制御装置を提供することを目的とするものである
。
(課題を解決するための手段)
本発明は上記目的を達成するために、時分割マルチタス
ク制御装置は、TCBに実行するタスクの先頭アドレス
を書き替えるときに、別に設けたタスク使用中を表わす
フラグレジスタの該当するフラグも書き替える。また、
検索するときはそのフラグレジスタを検索することによ
り検索時間を短縮できるようにして、最も優先順位の高
いTCBアドレスを通知するようにしたものである。
ク制御装置は、TCBに実行するタスクの先頭アドレス
を書き替えるときに、別に設けたタスク使用中を表わす
フラグレジスタの該当するフラグも書き替える。また、
検索するときはそのフラグレジスタを検索することによ
り検索時間を短縮できるようにして、最も優先順位の高
いTCBアドレスを通知するようにしたものである。
(作 用)
したがって本発明によれば、TCBに必要にタスクの先
頭アドレスをセットするだけでつぎに実行するタスクを
容易に検索し、タスクの実行仕様を設定できる。
頭アドレスをセットするだけでつぎに実行するタスクを
容易に検索し、タスクの実行仕様を設定できる。
(実施例)
第1図は本発明の一実施例における最優先のタスク選択
制御回路の基本的な構成を示すものである。第1図にお
いて、1はアドレスデータ比較回路、2はデコーダ、3
はフラグレジスタ、4はプライオリティエンコーダ、5
はTCBベースアドレス、6はポートである。
制御回路の基本的な構成を示すものである。第1図にお
いて、1はアドレスデータ比較回路、2はデコーダ、3
はフラグレジスタ、4はプライオリティエンコーダ、5
はTCBベースアドレス、6はポートである。
従来、第2図に示すようにTCBにはタスクを使用しな
いときは自分のアドレス(TCBアドレス)が書かれて
いる。TCBアドレスTCB2がタスク1に対応すると
き、タスク1を実行するときはTCB2アドレスをその
実行しようとするタスク1の先頭アドレスに書き替える
。ソフトウェアでTCBに登録されているタスクを検索
していって、タスク1の先頭アドレスが一番優先順位が
高いときはそこに書かれているタスク1を実行し、終了
するとTCBのTCB2アドレスをタスク1の先頭アド
レスからTCB2アドレスに書き替える。この時点で、
またつぎの実行タスクがあるかTCBを検索し、時分割
マルチタスクを実行する。
いときは自分のアドレス(TCBアドレス)が書かれて
いる。TCBアドレスTCB2がタスク1に対応すると
き、タスク1を実行するときはTCB2アドレスをその
実行しようとするタスク1の先頭アドレスに書き替える
。ソフトウェアでTCBに登録されているタスクを検索
していって、タスク1の先頭アドレスが一番優先順位が
高いときはそこに書かれているタスク1を実行し、終了
するとTCBのTCB2アドレスをタスク1の先頭アド
レスからTCB2アドレスに書き替える。この時点で、
またつぎの実行タスクがあるかTCBを検索し、時分割
マルチタスクを実行する。
本発明の実施例では上記検索の部分をハードウェア化し
、優先順位の高いタスクのTCBアドレスを専用のポー
トから読み取ることができるようにしたものである。第
3図は本発明の実施例におけるTCB制御フローを示し
たものである。
、優先順位の高いタスクのTCBアドレスを専用のポー
トから読み取ることができるようにしたものである。第
3図は本発明の実施例におけるTCB制御フローを示し
たものである。
次に、第1図の実施例の動作について第3図を参照して
説明する。TCBベースアドレスを初期化で書き込む(
S工)、またTCBには初期化でTCBアドレスを書き
込む(S2)。この時、TCBアドレスとTCBアドレ
スに対応する位置に書き込むアドレス(データ)は一致
しているため、アドレスデータ比較回路1の出力はOと
なる。また、デコーダ2はフラグレジスタ3の対応する
F/Fヘラッチパルスを発生し、フラグレジスタ3の該
当F/Fの出力は0となる。したがって、プライオリテ
ィエンコーダ4の出力はどれも選ばれていないため一番
優先順位の低い信号を出力している(何れも選択されな
い時プライオリティエンコーダは最低優先順位を出力す
る)。この時点でポート6を読む(S、)とプライオリ
ティエンコーダ4とTCBベースアドレス5が合成され
てTCBアドレスTCB31が読める。
説明する。TCBベースアドレスを初期化で書き込む(
S工)、またTCBには初期化でTCBアドレスを書き
込む(S2)。この時、TCBアドレスとTCBアドレ
スに対応する位置に書き込むアドレス(データ)は一致
しているため、アドレスデータ比較回路1の出力はOと
なる。また、デコーダ2はフラグレジスタ3の対応する
F/Fヘラッチパルスを発生し、フラグレジスタ3の該
当F/Fの出力は0となる。したがって、プライオリテ
ィエンコーダ4の出力はどれも選ばれていないため一番
優先順位の低い信号を出力している(何れも選択されな
い時プライオリティエンコーダは最低優先順位を出力す
る)。この時点でポート6を読む(S、)とプライオリ
ティエンコーダ4とTCBベースアドレス5が合成され
てTCBアドレスTCB31が読める。
タスク1を実行するためにTCB2アドレスのTCBの
内容をタスク1の先頭アドレスに書き替えると(S7)
、タスク選択制御回路のアドレスデータ比較回路1は、
TCBアドレスと書き替えられたアドレス(データ)は
一致していないため、アドレスデータ比較回路1の出力
はlとなる。またデコーダ2はフラグレジスタ3の該当
F/Fに対しラッチパルスを発生し、該当F/Fの出力
は1となる。したがって、プライオリティエンコーダ4
の出力はl’ CB 2を選ぶためro OO2HJ(
図示せず)の信号を出力している。この時点でTCBの
検索をするためにポート6を読むと、TCBベースアド
レス5とプライオリティエンコーダ4のアドレスが合成
されてTCB2アドレスが読める(S、)。ここで、T
CB2に書かれているTCBのデータを読むと(S4)
タスク1の先頭アドレスが書かれているため、タスク1
を実行しくS、)、終了するとTCB2の内容をタスク
1の先頭アドレスからTCB2アドレスに書き替える(
S6)。
内容をタスク1の先頭アドレスに書き替えると(S7)
、タスク選択制御回路のアドレスデータ比較回路1は、
TCBアドレスと書き替えられたアドレス(データ)は
一致していないため、アドレスデータ比較回路1の出力
はlとなる。またデコーダ2はフラグレジスタ3の該当
F/Fに対しラッチパルスを発生し、該当F/Fの出力
は1となる。したがって、プライオリティエンコーダ4
の出力はl’ CB 2を選ぶためro OO2HJ(
図示せず)の信号を出力している。この時点でTCBの
検索をするためにポート6を読むと、TCBベースアド
レス5とプライオリティエンコーダ4のアドレスが合成
されてTCB2アドレスが読める(S、)。ここで、T
CB2に書かれているTCBのデータを読むと(S4)
タスク1の先頭アドレスが書かれているため、タスク1
を実行しくS、)、終了するとTCB2の内容をタスク
1の先頭アドレスからTCB2アドレスに書き替える(
S6)。
この結果、TCBアドレスと書き込むアドレス(データ
)は一致しているため、アドレスデータ比較回路1の出
力はOとなる。また、デコーダ2はフラグレジスタ3の
ラッチパルスを発生し、フラグレジスタ3の該当するF
/Fの出力はOとなる。
)は一致しているため、アドレスデータ比較回路1の出
力はOとなる。また、デコーダ2はフラグレジスタ3の
ラッチパルスを発生し、フラグレジスタ3の該当するF
/Fの出力はOとなる。
従って、プライオリティエンコーダ4の出力はどれも選
ばれないため一番優先順位の低い信号を出力している。
ばれないため一番優先順位の低い信号を出力している。
この時点でボート6を読むとプライオリティエンコーダ
4とTCBベースアドレス5のアドレスが合成されてT
CB31アドレスが読める。またつぎの実行タスクがあ
るかボート6を読み、これによって時分割マルチタスク
を実行する。
4とTCBベースアドレス5のアドレスが合成されてT
CB31アドレスが読める。またつぎの実行タスクがあ
るかボート6を読み、これによって時分割マルチタスク
を実行する。
(発明の効果)
本発明は上記実施例から明らかなように、TCBに必要
なタスクの先頭アドレスをセットするだけで次に実行す
るタスクを容易にかつ短時間に検索し、タスクの実行仕
様を設定できるという効果を有する。
なタスクの先頭アドレスをセットするだけで次に実行す
るタスクを容易にかつ短時間に検索し、タスクの実行仕
様を設定できるという効果を有する。
第1図は本発明の一実施例における時分割マルチタスク
制御装置の基本的な構成図、第2図は従来のTCBによ
りタスク処理を説明する図、第3図は本発明の一実施例
におけるTCB制御フローチャートである。 1 ・・・アドレスデータ比較回路、 2 ・・デコー
ダ、 3 ・・・ フラグレジスタ1.4プライオリテ
イエンコーダ、 5 ・・TCBベースアドレス、 6
・・・ボート。
制御装置の基本的な構成図、第2図は従来のTCBによ
りタスク処理を説明する図、第3図は本発明の一実施例
におけるTCB制御フローチャートである。 1 ・・・アドレスデータ比較回路、 2 ・・デコー
ダ、 3 ・・・ フラグレジスタ1.4プライオリテ
イエンコーダ、 5 ・・TCBベースアドレス、 6
・・・ボート。
Claims (1)
- 1つの中央演算処理装置で複数のタスクを実行する制御
装置において、複数のタスクのうち最優先のタスクを選
択する制御回路を設けたことを特徴とする時分割マルチ
タスク制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2117474A JP2985092B2 (ja) | 1990-05-09 | 1990-05-09 | 時分割マルチタスク制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2117474A JP2985092B2 (ja) | 1990-05-09 | 1990-05-09 | 時分割マルチタスク制御装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0415831A true JPH0415831A (ja) | 1992-01-21 |
| JP2985092B2 JP2985092B2 (ja) | 1999-11-29 |
Family
ID=14712587
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2117474A Expired - Fee Related JP2985092B2 (ja) | 1990-05-09 | 1990-05-09 | 時分割マルチタスク制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2985092B2 (ja) |
-
1990
- 1990-05-09 JP JP2117474A patent/JP2985092B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2985092B2 (ja) | 1999-11-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2002533807A (ja) | 割込み/ソフトウエア制御スレッド処理 | |
| US5504869A (en) | High speed processing system capable of executing strings of instructions in order without waiting completion of previous memory access instruction | |
| US6883171B1 (en) | Dynamic address windowing on a PCI bus | |
| JPS6055849B2 (ja) | 命令制御方式 | |
| JP2002152020A (ja) | パルス信号生成装置 | |
| US5872961A (en) | Microcomputer allowing external monitoring of internal resources | |
| JP2003058381A (ja) | プログラムによる例外処理設定を可能にしたプロセッサ | |
| JPH0415831A (ja) | 時分割マルチタスク制御装置 | |
| JP2553698B2 (ja) | 時分割マルチタスク実行装置 | |
| JPH0969072A (ja) | メモリマップトi/o制御回路 | |
| JPH04241032A (ja) | システムコール実行装置 | |
| JPH11306040A (ja) | エミュレータのトレース装置 | |
| JPH10143376A (ja) | 情報処理装置 | |
| JPS62151942A (ja) | タスク切換え方式 | |
| JPS59218569A (ja) | マイクロ・コンピユ−タ | |
| JPH02214938A (ja) | データ処理装置 | |
| JPH0821027B2 (ja) | A/d変換装置内蔵マイクロコンピュータ | |
| JPH08249289A (ja) | メモリ制御装置およびその制御方法 | |
| JPS6146531A (ja) | マイクロプロセツサ | |
| JPH03209530A (ja) | 時分割マルチタスク実行装置 | |
| JPS6398735A (ja) | マイクロ制御装置 | |
| JPS6229813B2 (ja) | ||
| JPH04309134A (ja) | 割り込み制御回路 | |
| JPH0335326A (ja) | マイクロプロセッサ | |
| JPS62296236A (ja) | マイクロプロセツサの割り込み処理装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081001 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081001 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091001 Year of fee payment: 10 |
|
| LAPS | Cancellation because of no payment of annual fees |