JPH02311916A - 待ち時間管理装置 - Google Patents
待ち時間管理装置Info
- Publication number
- JPH02311916A JPH02311916A JP1132589A JP13258989A JPH02311916A JP H02311916 A JPH02311916 A JP H02311916A JP 1132589 A JP1132589 A JP 1132589A JP 13258989 A JP13258989 A JP 13258989A JP H02311916 A JPH02311916 A JP H02311916A
- Authority
- JP
- Japan
- Prior art keywords
- time
- timer
- control
- task
- list
- 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
- 238000000034 method Methods 0.000 abstract description 5
- 238000012544 monitoring process Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 5
- 101150073133 Cpt1a gene Proteins 0.000 description 1
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はイベント駆動型のリアルタイム制御システムに
おいて、イベント発生待ちを行う際、指定した時間が経
過してもイベントが発生しない場合、タイムアウト処理
を行うための待ち時間管理装置に関するものである。
おいて、イベント発生待ちを行う際、指定した時間が経
過してもイベントが発生しない場合、タイムアウト処理
を行うための待ち時間管理装置に関するものである。
従来、イベント駆動型のリアルタイム制御システムにお
いては、イベントが発生すると、それに対応したタスク
を起動して、処理を実行させている。
いては、イベントが発生すると、それに対応したタスク
を起動して、処理を実行させている。
タスクがイベント発生待ちを行う際、指定した時間だけ
経過してもイベントが発生しない場合、タイムアウト処
理を行いたいことがある。このような場合にはタイマ監
視付きでイベント発生を待つ、タイマ監視付きでイベン
ト発生を待つタスクが複数存在する場合、それぞれに対
応した時間管理テーブルをタイマ・チェーンとしてリン
クして管理する。時間のカウントは一定時間間隔で発生
するタイマ割込をきっかけとして行い、割込が発生する
毎に待ち開始時に指定した時間に対応したカウント値を
減算していく。カウント値は各時間管理テーブルに格納
しておく。このため、タイマ割込発生時にすべての時間
管理テーブル内の時間のカウント値を更新(減算)して
いく。このカウント値がOになると、その時間管理テー
ブルを使用してタイマ監視付きで待っていたタスクがタ
イムアウトしたことになり、以後、タイムアウトした時
間管理テーブルをタイマ・チェーンのリンクからはずし
、タイムアウト処理を行う、第2図にタイマ管理リスト
の一例を示す。
経過してもイベントが発生しない場合、タイムアウト処
理を行いたいことがある。このような場合にはタイマ監
視付きでイベント発生を待つ、タイマ監視付きでイベン
ト発生を待つタスクが複数存在する場合、それぞれに対
応した時間管理テーブルをタイマ・チェーンとしてリン
クして管理する。時間のカウントは一定時間間隔で発生
するタイマ割込をきっかけとして行い、割込が発生する
毎に待ち開始時に指定した時間に対応したカウント値を
減算していく。カウント値は各時間管理テーブルに格納
しておく。このため、タイマ割込発生時にすべての時間
管理テーブル内の時間のカウント値を更新(減算)して
いく。このカウント値がOになると、その時間管理テー
ブルを使用してタイマ監視付きで待っていたタスクがタ
イムアウトしたことになり、以後、タイムアウトした時
間管理テーブルをタイマ・チェーンのリンクからはずし
、タイムアウト処理を行う、第2図にタイマ管理リスト
の一例を示す。
(発明が解決しようとする課題)
上記従来例ではタイマ割込が発生する毎に、タイマ監視
付きウェイトしているタスクのタイマカウント値をすべ
て更新していかなければならない。このため、タイマ監
視付きウェイト中のタスクが多いと、タイマ割込み毎に
すべてのタイマカウント値を更新するため、更新時間を
要し、効率が悪いといった欠点があった。
付きウェイトしているタスクのタイマカウント値をすべ
て更新していかなければならない。このため、タイマ監
視付きウェイト中のタスクが多いと、タイマ割込み毎に
すべてのタイマカウント値を更新するため、更新時間を
要し、効率が悪いといった欠点があった。
本発明の目的は以上のような問題を解消した待ち時間管
理装置を提供することにある。
理装置を提供することにある。
本発明はタイムアウト時間の早いものから順番にタスク
を並べたタイマ管理リストと、タイマ管理リストのうち
の最初にタイムアウトするタスクのタイマ値を設定し時
間をカウントするための管理ブロックとを有する。
を並べたタイマ管理リストと、タイマ管理リストのうち
の最初にタイムアウトするタスクのタイマ値を設定し時
間をカウントするための管理ブロックとを有する。
本発明によれば、タスクがタイマ監視付きでウェイトす
る場合、時間管理するために作成したタイマ管理リスト
の先頭に管理ブロックを設け、管理している時間待ちタ
スクのうち、最も早くタイムアウトするタスクのタイマ
値を初期値として管理ブロック内のタイマ・カウント領
域に設定する。このタイマ・カウント値を一定時間間隔
でイベントを発生する時計を基に、カウント値を更新す
る。もし、0になるか、又は、イベントが発生するまで
は、この領域のみを更新し、いずれかが発生すると、管
理ブロックよりチェーンしているタスクのタイマ値をす
べて更新する。これにより時間待ちしているタスクのタ
イマ値の更新頻度を減らし、待ち時間管理の効率を上げ
るものである。
る場合、時間管理するために作成したタイマ管理リスト
の先頭に管理ブロックを設け、管理している時間待ちタ
スクのうち、最も早くタイムアウトするタスクのタイマ
値を初期値として管理ブロック内のタイマ・カウント領
域に設定する。このタイマ・カウント値を一定時間間隔
でイベントを発生する時計を基に、カウント値を更新す
る。もし、0になるか、又は、イベントが発生するまで
は、この領域のみを更新し、いずれかが発生すると、管
理ブロックよりチェーンしているタスクのタイマ値をす
べて更新する。これにより時間待ちしているタスクのタ
イマ値の更新頻度を減らし、待ち時間管理の効率を上げ
るものである。
(実施例〕
第1図〜第4図は本発明の実施例を示す。
第1図はシステム構成図である。1はCPt1 。
2は第4図に示す如き制御手順を格納しているROM
、 3は第3図の如きリストを有するRAM 、 4
は本システムにおける制御対象、5はイベントの発生を
監視する割込コントローラ、6は時間を計数するタイマ
、7はCPUから各デバイスへアクセスするためのバス
、8は外部で発生するイベント、9はタイマから割込コ
ントローラ5へ一定時間間隔で割込む、タイマ割込信号
である。
、 3は第3図の如きリストを有するRAM 、 4
は本システムにおける制御対象、5はイベントの発生を
監視する割込コントローラ、6は時間を計数するタイマ
、7はCPUから各デバイスへアクセスするためのバス
、8は外部で発生するイベント、9はタイマから割込コ
ントローラ5へ一定時間間隔で割込む、タイマ割込信号
である。
第2図はタイマ管理リスト(1)で従来例を示す、第3
図はタイマ管理リスト(2)で本発明のタイマ管理リス
トである。20はタイマ管理ブロックTIMCBであり
、タイマ管理リストの先頭を指すポインタ24、および
リストの先頭のタスクのタイムアウトを監視するための
タイマカウント値28を格納するエリア等から成る。2
1〜23はタスク制御ブロックTCBo〜TCBnであ
り、タスクの状態を管理するためでブロックである。タ
スク制御ブロックは種々のパラメータを有するが、ここ
では待ち時間管理に必要なパラメータであるポインタ2
5〜27、タイマカウント値29〜31を示しである。
図はタイマ管理リスト(2)で本発明のタイマ管理リス
トである。20はタイマ管理ブロックTIMCBであり
、タイマ管理リストの先頭を指すポインタ24、および
リストの先頭のタスクのタイムアウトを監視するための
タイマカウント値28を格納するエリア等から成る。2
1〜23はタスク制御ブロックTCBo〜TCBnであ
り、タスクの状態を管理するためでブロックである。タ
スク制御ブロックは種々のパラメータを有するが、ここ
では待ち時間管理に必要なパラメータであるポインタ2
5〜27、タイマカウント値29〜31を示しである。
第4図は本発明の実施例の時間管理処理フローチャート
である。以下、第3図、第4図を中心に説明していく、
タスクが時間監視付きでイベント発生を待つ要求をする
と、時間管理処理部では、そのイベントに関して待ちリ
ストを作るとともに、タイマ管理リストを作成する。こ
の際、このリストはタイムアウトまでの時間の短いもの
から順番に並べておく。即ち、第3図ではTCBO21
のタイマカウント値29が最も小さく、TCBn 23
のタイマカウント値31が最も大きくなる。また、リス
トの先頭にタイマ管理ブロックTIM(:820を設け
、このタイマカウント値には初期値として、TCBOl
1のタイマカウント値29と同じ値が入る。このタイマ
カウント値29は以下で説明するタイマ割込みで、この
値を更新し、時間計測する。
である。以下、第3図、第4図を中心に説明していく、
タスクが時間監視付きでイベント発生を待つ要求をする
と、時間管理処理部では、そのイベントに関して待ちリ
ストを作るとともに、タイマ管理リストを作成する。こ
の際、このリストはタイムアウトまでの時間の短いもの
から順番に並べておく。即ち、第3図ではTCBO21
のタイマカウント値29が最も小さく、TCBn 23
のタイマカウント値31が最も大きくなる。また、リス
トの先頭にタイマ管理ブロックTIM(:820を設け
、このタイマカウント値には初期値として、TCBOl
1のタイマカウント値29と同じ値が入る。このタイマ
カウント値29は以下で説明するタイマ割込みで、この
値を更新し、時間計測する。
このように時間監視付きでウェイトすると、ある一定時
間間隔で発生するタイマ割込みをきっかけとして、タイ
マ割込み処理を実行する。
間間隔で発生するタイマ割込みをきっかけとして、タイ
マ割込み処理を実行する。
その処理フローを示したものが第4図である。
タイマ割込みが発生すると、ステップS1でTlMCB
2Oのタイマカウント値28をディクリメントする。
2Oのタイマカウント値28をディクリメントする。
ここで、ステップS2で、TlMC820のタイマカウ
ント値28がOになったか否かをチェックする。もし、
0でないならば、タイムアウトではないため、ステップ
S3でタイマ割込み処理よりリターンする。もし、0な
らば、タイムアウトのためステップS4以降の処理を行
う。
ント値28がOになったか否かをチェックする。もし、
0でないならば、タイムアウトではないため、ステップ
S3でタイマ割込み処理よりリターンする。もし、0な
らば、タイムアウトのためステップS4以降の処理を行
う。
ステップS4ではタイマ管理リストの先頭タスクのTC
Bのタイマカウント値29を△にセットする。
Bのタイマカウント値29を△にセットする。
ステップS5で、リストの先頭のタスクのTCBのステ
ータスをウェイトから、レディにし、リストからはずす
。続いて、ステップS6でリストの最後までTCBのタ
イマカウント値から△を減算する。次に、ステップS7
でタイマ管理りストの先頭のタスクのTCBのタイマカ
ウント値をTTMCBのタイマカクン・ト値としてセッ
トする。ここから、再度、タイマ監視が始まる。ここで
、ステップS8でタスク・スケジューリング又はタイマ
割込み処理からのリターンが実行される。
ータスをウェイトから、レディにし、リストからはずす
。続いて、ステップS6でリストの最後までTCBのタ
イマカウント値から△を減算する。次に、ステップS7
でタイマ管理りストの先頭のタスクのTCBのタイマカ
ウント値をTTMCBのタイマカクン・ト値としてセッ
トする。ここから、再度、タイマ監視が始まる。ここで
、ステップS8でタスク・スケジューリング又はタイマ
割込み処理からのリターンが実行される。
以上で説明したように本実施例によれば、タイマ監視を
タイマ管理リスト全部について、タイマ割込みの都度行
うのではなく、通常は先頭に設けたタイマ管理ブロック
だけで行うため、効率が非常に良い。
タイマ管理リスト全部について、タイマ割込みの都度行
うのではなく、通常は先頭に設けたタイマ管理ブロック
だけで行うため、効率が非常に良い。
(発明の効果〕
以上説明したように本発明によれば、最も待ち時間の短
いタスクの時間のみの特別のタイマ・カウント領域を管
理する管理シロツクを設けることにより、時間更新時に
一箇所のみ更新すれば良くし、全タスクについての更新
は新たにタスクより時間待ち要求があった場合だけとす
ることにより、通常時の待ち時間管理の効率を向上でき
る。
いタスクの時間のみの特別のタイマ・カウント領域を管
理する管理シロツクを設けることにより、時間更新時に
一箇所のみ更新すれば良くし、全タスクについての更新
は新たにタスクより時間待ち要求があった場合だけとす
ることにより、通常時の待ち時間管理の効率を向上でき
る。
第1図は本発明実施例のシステム構成図、第2図はタイ
マ管理リストを示す図、 第3図は別のタイマ管理リストを示す図、第4図は時間
管理処理フローチャートを示す図である。 l・・・cpu 。 2・・・ROM 。 3・・・RAM 。 4・・・制御対象、 5・・・割込コントローラ、 6・・・タイマ、 7・・・バス、 8・・・イベント、 9・・・タイマ割込み、 lO・・・TIMPTR(ポインタ)、11・−TCB
Ol 12・・・TCBI。 13”4cBn。 14〜16・・・ポインタ、 17〜19・・・タイマカウント値、 20・・−TIMCB 。 21・・・TCBOl 22・・・TCBI。 23=4CBn。 24〜27・・・ポインタ、 28〜31・・・タイマカウント値。 第1図 第4図
マ管理リストを示す図、 第3図は別のタイマ管理リストを示す図、第4図は時間
管理処理フローチャートを示す図である。 l・・・cpu 。 2・・・ROM 。 3・・・RAM 。 4・・・制御対象、 5・・・割込コントローラ、 6・・・タイマ、 7・・・バス、 8・・・イベント、 9・・・タイマ割込み、 lO・・・TIMPTR(ポインタ)、11・−TCB
Ol 12・・・TCBI。 13”4cBn。 14〜16・・・ポインタ、 17〜19・・・タイマカウント値、 20・・−TIMCB 。 21・・・TCBOl 22・・・TCBI。 23=4CBn。 24〜27・・・ポインタ、 28〜31・・・タイマカウント値。 第1図 第4図
Claims (1)
- 1)タイムアウト時間の早いものから順番にタスクを並
べたタイマ管理リストと、該タイマ管理リストのうちの
最初にタイムアウトするタスクのタイマ値を設定し時間
をカウントするための管理ブロックとを有することを特
徴とする待ち時間管理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1132589A JPH02311916A (ja) | 1989-05-29 | 1989-05-29 | 待ち時間管理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1132589A JPH02311916A (ja) | 1989-05-29 | 1989-05-29 | 待ち時間管理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH02311916A true JPH02311916A (ja) | 1990-12-27 |
Family
ID=15084878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1132589A Pending JPH02311916A (ja) | 1989-05-29 | 1989-05-29 | 待ち時間管理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH02311916A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001052027A1 (fr) * | 2000-01-13 | 2001-07-19 | Access Co., Ltd. | Systeme informatique et procede de commande de mode d'economie d'energie correspondant |
JPWO2021048964A1 (ja) * | 2019-09-12 | 2021-03-18 |
-
1989
- 1989-05-29 JP JP1132589A patent/JPH02311916A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001052027A1 (fr) * | 2000-01-13 | 2001-07-19 | Access Co., Ltd. | Systeme informatique et procede de commande de mode d'economie d'energie correspondant |
US7007180B2 (en) | 2000-01-13 | 2006-02-28 | Access Co., Ltd. | System and method for switching a computer system to a first or second power saving mode based on whether or not there exists a timer-expiration-waiting event in an event queue |
JPWO2021048964A1 (ja) * | 2019-09-12 | 2021-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1221094B1 (en) | Method for time partitioned application scheduling in a computer operating system | |
US20050015766A1 (en) | Time deadline based operating system | |
JPH02311916A (ja) | 待ち時間管理装置 | |
JP2000259429A (ja) | タイマー管理装置および方法 | |
JPS63163932A (ja) | 制御用計算機のシステム監視方式 | |
JPH07191863A (ja) | マルチタスク実行管理方式 | |
EP1540475A2 (en) | System and method for robust time partitioning of tasks in a real-time computing environment | |
JPH02311917A (ja) | 待ち時間管理装置 | |
JPS63300326A (ja) | トランザクション実行スケジュ−ル方式 | |
JP2004151801A (ja) | 情報処理通信装置 | |
JP3775868B2 (ja) | エンジン制御ソフトのタイミング管理装置 | |
JPH0683652A (ja) | マイクロコンピュ−タシステム | |
JP3890877B2 (ja) | 車両用制御装置 | |
JPH03255512A (ja) | インターバルタイマ制御方式 | |
JPH0199132A (ja) | マルチタスク実行装置 | |
JPH0612265A (ja) | プロセス優先度の制御方法 | |
JPH05158710A (ja) | タイマ管理方式 | |
JPH03202911A (ja) | 通信管理タイマー制御方式 | |
JPH02183303A (ja) | プログラマブルコントローラ | |
JPS60238938A (ja) | 計算機システムの運転方法 | |
CN112433835A (zh) | 一种基于Linux系统的中断处理方法及装置 | |
JPH064320A (ja) | タイマ管理方式 | |
JP2000090063A (ja) | タイマの管理方法とタイマ監視装置 | |
JPH07175406A (ja) | プログラマブルコントローラのスキャン起動制御方式 | |
JPH02181832A (ja) | タイマ管理装置 |