JPH04180128A - プロセス制御装置 - Google Patents
プロセス制御装置Info
- Publication number
- JPH04180128A JPH04180128A JP30925790A JP30925790A JPH04180128A JP H04180128 A JPH04180128 A JP H04180128A JP 30925790 A JP30925790 A JP 30925790A JP 30925790 A JP30925790 A JP 30925790A JP H04180128 A JPH04180128 A JP H04180128A
- Authority
- JP
- Japan
- Prior art keywords
- notify
- signal
- notifying
- queue
- interrupt
- 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 title claims abstract description 69
- 238000001514 detection method Methods 0.000 claims description 7
- 238000004886 process control Methods 0.000 claims description 6
- 230000003247 decreasing effect Effects 0.000 claims description 2
- 230000003213 activating effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明はマルチタスクシステムにおけるプロセス制御装
置に関するものであり、特に、プロセスの起動命令(ノ
ーティファイ信号)を確実に受付けてプロセスを起動(
ノーティファイ)させることができるプロセス制御装置
に関する。
置に関するものであり、特に、プロセスの起動命令(ノ
ーティファイ信号)を確実に受付けてプロセスを起動(
ノーティファイ)させることができるプロセス制御装置
に関する。
(従来の技術)
マルチタスクシステムにおいて、成る命令を実行中にイ
ンタラブドやフォルト等の割込信号が受付けられると、
キューを構成する複数のプロセスにノーティファイ信号
が発せられ、ストップ(STOP)状態のプロセスの1
つがノーティファイされてレディ (READY)状態
つまり実行可能状態となる。そして、連続して割込が受
は付けられ複数のプロセスがレディ状態になると、レデ
ィ状態となったプロセスのうち、優先度の高いプロセス
から順番に起動されて予定のプログラムを実行する。
ンタラブドやフォルト等の割込信号が受付けられると、
キューを構成する複数のプロセスにノーティファイ信号
が発せられ、ストップ(STOP)状態のプロセスの1
つがノーティファイされてレディ (READY)状態
つまり実行可能状態となる。そして、連続して割込が受
は付けられ複数のプロセスがレディ状態になると、レデ
ィ状態となったプロセスのうち、優先度の高いプロセス
から順番に起動されて予定のプログラムを実行する。
ところか、用意された複数のプロセスのすべてがレディ
状態になった後、さらに割込要求が入力され、ノーティ
ファイ信号が発せられた場合は、その後に入力された割
込要求に基づくノーティファイ信号をプロセスが受付け
られず、プロセスは割込みが発生したことを認識できな
い。すなわちノーティファイされない。
状態になった後、さらに割込要求が入力され、ノーティ
ファイ信号が発せられた場合は、その後に入力された割
込要求に基づくノーティファイ信号をプロセスが受付け
られず、プロセスは割込みが発生したことを認識できな
い。すなわちノーティファイされない。
このような不具合を改善するためには、プロセスの数を
増やせば良いが、メモリ容量に制限があるため、可能な
限りプロセスの数は少ない方が望ましい。
増やせば良いが、メモリ容量に制限があるため、可能な
限りプロセスの数は少ない方が望ましい。
プロセスの数を増やさずに上記の問題点を解消するため
に、次のような方法が考えられる。
に、次のような方法が考えられる。
マルチタスクシステムにおいては、各種フォルトおよび
インタラブドレベル毎に複数のプロセスが存在し、それ
ぞれがキューを構成している。そして、それぞれのキュ
ーはプロセスを指示するポインタを含むキューヘッダを
有している。このキューヘッダに、前記ポインタのほか
、ノーティファイ記録フラグを設けるのである。
インタラブドレベル毎に複数のプロセスが存在し、それ
ぞれがキューを構成している。そして、それぞれのキュ
ーはプロセスを指示するポインタを含むキューヘッダを
有している。このキューヘッダに、前記ポインタのほか
、ノーティファイ記録フラグを設けるのである。
このようなキューヘッダを有するシステムにおいて、例
えば、成る割込みが発生し、これを処理するプロセスが
すべてノーティファイされてレディ状態となった場合、
CPUはノーティファイ信号を受付けら五るプロセスか
存在しないことを検出して前記ノーティファイ記録フラ
グをセットする。
えば、成る割込みが発生し、これを処理するプロセスが
すべてノーティファイされてレディ状態となった場合、
CPUはノーティファイ信号を受付けら五るプロセスか
存在しないことを検出して前記ノーティファイ記録フラ
グをセットする。
その結果、実行中のプログラムの処理が終了した時点で
、前記ノーティファイ記録フラグがセットされているの
が認識され、プログラムの処理を終了したプロセスは、
直ちに再度ノーティファイされる。
、前記ノーティファイ記録フラグがセットされているの
が認識され、プログラムの処理を終了したプロセスは、
直ちに再度ノーティファイされる。
このように、1ビツトのフラグを設けるだけで、プロセ
スの数が1つ増加したのと同等の効果か得られる。
スの数が1つ増加したのと同等の効果か得られる。
(発明が解決しようとする課題)
上記の従来技術には次のような問題点があった。
すなわち、上記の技術ではノーティファイ記録フラグに
よって記録できるノーティファイの数は1つのキューに
付き1つだけであるため、多くのノーティファイを記録
できない。
よって記録できるノーティファイの数は1つのキューに
付き1つだけであるため、多くのノーティファイを記録
できない。
したがって、割込要求がさらに連続して多く発生するよ
うなシステムでは、システムの応答か悪く、システムダ
ウンに至ることもあるという問題点があった。
うなシステムでは、システムの応答か悪く、システムダ
ウンに至ることもあるという問題点があった。
本発明の目的は、上記の問題点を解消し、より多くの連
続する割込要求に対しても、これを確実に受付けて予定
のプログラムを実行することができるプロセス制御装置
を提供することにある。
続する割込要求に対しても、これを確実に受付けて予定
のプログラムを実行することができるプロセス制御装置
を提供することにある。
(課題を解決するための手段および作用)上記の課題を
解決し、目的を達成するための本発明は、同一割込レベ
ルの割込処理を行う複数のプロセスがすべてレディ状態
で、さらに割込要求が受付けられてノーティファイ信号
が発生した場合、このノーティファイ信号の発生回数を
計数し、この計数値が予定値以上の場合は、プログラム
の処理を終了したプロセスをノーティファイすると共に
、前記計数値を1単位減少させるように構成した点に特
徴がある。
解決し、目的を達成するための本発明は、同一割込レベ
ルの割込処理を行う複数のプロセスがすべてレディ状態
で、さらに割込要求が受付けられてノーティファイ信号
が発生した場合、このノーティファイ信号の発生回数を
計数し、この計数値が予定値以上の場合は、プログラム
の処理を終了したプロセスをノーティファイすると共に
、前記計数値を1単位減少させるように構成した点に特
徴がある。
上記のように構成された本発明によれば、各割込レベル
毎のプロセスのすべてかノーティファイされた後に割込
要求が受付けられた場合であっても、この割込要求を計
数値として記録しておける。
毎のプロセスのすべてかノーティファイされた後に割込
要求が受付けられた場合であっても、この割込要求を計
数値として記録しておける。
したがって、予定のプログラムを実行し終わった時点て
、CPUは前記計数値に基づいて割込みの発生を検知で
き、プログラムを実行し終わったプロセスを再びノーテ
ィファイすることかできる。
、CPUは前記計数値に基づいて割込みの発生を検知で
き、プログラムを実行し終わったプロセスを再びノーテ
ィファイすることかできる。
(実施例)
以下、図面を参照して本発明の詳細な説明する。
第3図は本発明の一実施例を示すマルチタスクシステム
を採用したコンピュータシステムにおけるメモリの要部
構成図であり、第4図はインタラブドAに基づいて予定
のプログラムを実行するプロセスのキュー構造を示すブ
ロック図である。
を採用したコンピュータシステムにおけるメモリの要部
構成図であり、第4図はインタラブドAに基づいて予定
のプログラムを実行するプロセスのキュー構造を示すブ
ロック図である。
第3図において、各フォルトおよびインタラブド毎にキ
ューヘッダfl、f2.il、i2が設けられており、
さらにこれらのキューヘッダに対応してノーティファイ
記録カウンタC1〜C4か設けられている。
ューヘッダfl、f2.il、i2が設けられており、
さらにこれらのキューヘッダに対応してノーティファイ
記録カウンタC1〜C4か設けられている。
また、第4図において、各プロセスla、lbはリスト
構造のキューをなしていて、キューヘッダ11のポイン
タはキューの先頭を指している。
構造のキューをなしていて、キューヘッダ11のポイン
タはキューの先頭を指している。
このような構成においで、例えばインクラブドAに対す
る割込要求が連続的に発生した場合、インクラブドAの
キューへラダ11が指しているプロセス1aおよびそれ
に続くプロセス1bのいずれかをノーティファイしてレ
ディ状態にする。
る割込要求が連続的に発生した場合、インクラブドAの
キューへラダ11が指しているプロセス1aおよびそれ
に続くプロセス1bのいずれかをノーティファイしてレ
ディ状態にする。
プロセスla、lbの両方がすてにレディ状態の場合は
、インタラブドAに対応する前記カウンタC3がインク
リメントされる。
、インタラブドAに対応する前記カウンタC3がインク
リメントされる。
次に、本実施例のプロセス制御装置の要部機能を説明す
る。
る。
第1図において、キュー列3はインクラブドおよびフォ
ルトレベル毎つまり、同一割込レベル毎の複数のキュー
からなり、さらに各キューはそれぞれ第4図に示したよ
うに複数のプロセスからなる。
ルトレベル毎つまり、同一割込レベル毎の複数のキュー
からなり、さらに各キューはそれぞれ第4図に示したよ
うに複数のプロセスからなる。
割込検出部2は、外部からの割込要求信号に基づいてC
PUから発せられるノーティファイ信号を検出する。そ
して、ノーティファイ信号の検出信号およびノーティフ
ァイ信号の情報はプロセス状態判定部4に供給される。
PUから発せられるノーティファイ信号を検出する。そ
して、ノーティファイ信号の検出信号およびノーティフ
ァイ信号の情報はプロセス状態判定部4に供給される。
ノーティファイ信号の検出信号およびノーティファイ信
号の情報を供給されたプロセス状態判定部4は、前記ノ
ーティファイ信号の情報に基づいてキュー列3のプロセ
スを走査し、その状態を検出する。
号の情報を供給されたプロセス状態判定部4は、前記ノ
ーティファイ信号の情報に基づいてキュー列3のプロセ
スを走査し、その状態を検出する。
プロセス状態判定部4は、プロセスの情報を解析し、レ
ディまたはラン(実行)状態でないプロセスに対して前
記ノーティファイを与えレディ状態にする。
ディまたはラン(実行)状態でないプロセスに対して前
記ノーティファイを与えレディ状態にする。
また、プロセス状態判定部4において走査されたすべて
のプロセスがレディまたはラン状態であった場合は、ノ
ーティファイ不能信号を出力する。
のプロセスがレディまたはラン状態であった場合は、ノ
ーティファイ不能信号を出力する。
カウンタ5はこのノーティファイ不能信号に応答してイ
ンクリメントされる。このカウンタ5は前記ノーティフ
ァイ記録カウンタC1〜C4を集合したものであり、各
割込レベル毎に設けられている。
ンクリメントされる。このカウンタ5は前記ノーティフ
ァイ記録カウンタC1〜C4を集合したものであり、各
割込レベル毎に設けられている。
処理終了検出部6では、プロセスの要求に基づいて起動
された予定のプログラムの処理が終了したことを検出す
る。
された予定のプログラムの処理が終了したことを検出す
る。
プログラムの処理を終了したことが検出されると、残り
割込判断部7は、前記カウンタ5の値を解析して、プロ
セスをノーティファイしなければならない割込要求が残
っているかどうか判断する。
割込判断部7は、前記カウンタ5の値を解析して、プロ
セスをノーティファイしなければならない割込要求が残
っているかどうか判断する。
残り割込判断部7は、受付けられていないノーティファ
イが残っていると判断した場合、カウンタ5にディクリ
メント信号を出力すると共に、キュー列3の中の、今、
プログラムの処理を終了したばかりのプロセスを再びノ
ーティファイしてレディ状態に変化させる。
イが残っていると判断した場合、カウンタ5にディクリ
メント信号を出力すると共に、キュー列3の中の、今、
プログラムの処理を終了したばかりのプロセスを再びノ
ーティファイしてレディ状態に変化させる。
続いて、本実施例の動作つまりノーティファイ制御動作
を説明する。第2図は本実施例の動作を示すフローチャ
ートである。
を説明する。第2図は本実施例の動作を示すフローチャ
ートである。
同図において、ステップS1ではCPUから発せられる
ノーティファイ信号の有無によって割込要求の監視を行
い、ノーティファイ信号が検出されたならばステップS
2に進む。
ノーティファイ信号の有無によって割込要求の監視を行
い、ノーティファイ信号が検出されたならばステップS
2に進む。
ステップS2では、レディ状態でないプロセス、つまり
ノーティファイ信号を受付けられるプロセスがキューに
存在しているか否かを判断し、レディ状態でないプロセ
スがあれば、ステップS3に進んでそのプロセスをノー
ティファイしてレディ状態にする。
ノーティファイ信号を受付けられるプロセスがキューに
存在しているか否かを判断し、レディ状態でないプロセ
スがあれば、ステップS3に進んでそのプロセスをノー
ティファイしてレディ状態にする。
割込要求があったにもかかわらず、ノーティファイでき
るプロセスがない場合は、ステップS2からステップS
4に進む。
るプロセスがない場合は、ステップS2からステップS
4に進む。
ステップS4では、受付けられなかったノーティファイ
信号があったことを記録するカウンタ5のカウンタ値を
インクリメント(+1)する。
信号があったことを記録するカウンタ5のカウンタ値を
インクリメント(+1)する。
ステップS5では、予定のプログラムの処理を終えてキ
ューに戻ってきたプロセス、つまりノーティファイ信号
を受付可能になったプロセスの有無を判断する。
ューに戻ってきたプロセス、つまりノーティファイ信号
を受付可能になったプロセスの有無を判断する。
ステップS5の判断が否定の場合は、1サイクルのノー
ティファイ制御処理を終える。
ティファイ制御処理を終える。
一方、ステップS5の判断が肯定の場合は、ステップS
6に進んでカウンタ5のカウンタ値が“0”か否か、つ
まり受付けられなかったノーティファイ信号があるか否
かを判別する。
6に進んでカウンタ5のカウンタ値が“0”か否か、つ
まり受付けられなかったノーティファイ信号があるか否
かを判別する。
カウンタ値が“0″の場合は、1サイクルのノーティフ
ァイ制御処理を終えるが、カウンタ値か“0°でない場
合はステップS7に進み、前記予定のプログラムの処理
を終えてキューに戻ってきたプロセスをノーティファイ
してレディ状態にする。
ァイ制御処理を終えるが、カウンタ値か“0°でない場
合はステップS7に進み、前記予定のプログラムの処理
を終えてキューに戻ってきたプロセスをノーティファイ
してレディ状態にする。
ステップS8では、1つのプロセスがノーティファイさ
れたので、カウンタ5のカウンタ値をディクリメント(
−1)する。
れたので、カウンタ5のカウンタ値をディクリメント(
−1)する。
なお、ステップS1で割込要求が検出されなかった場合
は、ステップS2.S4をスキップしてステップS5に
移行する。
は、ステップS2.S4をスキップしてステップS5に
移行する。
上記の制御動作によってノーティファイされてレディ状
態になったプロセスは、優先順位に従って予定のプログ
ラムを実行する。なお、優先順位はシステムによって任
意に選択される。
態になったプロセスは、優先順位に従って予定のプログ
ラムを実行する。なお、優先順位はシステムによって任
意に選択される。
(発明の効果)
以上の説明から明らかなように、本発明によれば、受付
けられていないノーティファイ信号の数、つまりプロセ
スのキューに受付けられていない割込要求が残っている
ことをノーティファイ記録カウンタのカウンタ値によっ
て認識できる。
けられていないノーティファイ信号の数、つまりプロセ
スのキューに受付けられていない割込要求が残っている
ことをノーティファイ記録カウンタのカウンタ値によっ
て認識できる。
したがって、ノーティファイ記録カウンタ用に数ビット
のメモリを確保するだけで、プロセスの個数を増やした
のと同等の処理能力向上効果が得られる。
のメモリを確保するだけで、プロセスの個数を増やした
のと同等の処理能力向上効果が得られる。
第1図は本発明の実施例を示すシステムの要部機能ブロ
ック図、第2図は実施例の動作を示すフローチャート、
第3図は本発明の実施例を示すメモリの要部構成図、第
4図はプロセスのキュー構造の一例を示すブロック図で
ある。 la、lb・・・プロセス、2・・・割込検出部、3・
・・キュー列、4・・・プロセス状態判定部、5・・・
カウンタ、6・・・処理終了検出部、7・・・残り割込
判断部 代理人 弁理士 平木通人 外1名 III図 む 第 3 図 第 2 図
ック図、第2図は実施例の動作を示すフローチャート、
第3図は本発明の実施例を示すメモリの要部構成図、第
4図はプロセスのキュー構造の一例を示すブロック図で
ある。 la、lb・・・プロセス、2・・・割込検出部、3・
・・キュー列、4・・・プロセス状態判定部、5・・・
カウンタ、6・・・処理終了検出部、7・・・残り割込
判断部 代理人 弁理士 平木通人 外1名 III図 む 第 3 図 第 2 図
Claims (1)
- (1)同一割込レベルの割込処理を行うプロセスが複数
設けられたマルチタスクシステムのプロセス制御装置に
おいて、 前記プロセスを起動させるノーティファイ信号を検出す
る割込検出手段と、 前記複数のプロセスのすべてがレディ状態の時に、前記
ノーティファイ信号が受付けられた場合、ノーティファ
イ不能信号を出力するプロセス状態判定手段と、 前記ノーティファイ不能信号に応答してカウンタ値を1
単位増加することにより、ノーティファイ信号の発生回
数を計数する計数手段と、 前記計数手段に計数値があって、プログラムの処理を終
了したプロセスが発生した場合に、このプロセスをノー
ティファイすると共に、前記計数値を1単位減少させる
手段とを具備したことを特徴とするプロセス制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP30925790A JPH04180128A (ja) | 1990-11-15 | 1990-11-15 | プロセス制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP30925790A JPH04180128A (ja) | 1990-11-15 | 1990-11-15 | プロセス制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04180128A true JPH04180128A (ja) | 1992-06-26 |
Family
ID=17990823
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP30925790A Pending JPH04180128A (ja) | 1990-11-15 | 1990-11-15 | プロセス制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04180128A (ja) |
-
1990
- 1990-11-15 JP JP30925790A patent/JPH04180128A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5542076A (en) | Method and apparatus for adaptive interrupt servicing in data processing system | |
| CN109918141A (zh) | 线程执行方法、装置、终端及存储介质 | |
| US6295602B1 (en) | Event-driven serialization of access to shared resources | |
| JPS63501831A (ja) | ネストされたdoル−プを実行する際のオ−バヘッドを最小化する方法および装置 | |
| CN101158913A (zh) | 一种检测任务死循环的方法及系统 | |
| US5388261A (en) | Apparatus and method for handling frame overruns in a digital signal processing system | |
| JPH04180128A (ja) | プロセス制御装置 | |
| JP2665380B2 (ja) | システム異常の検出処理方式 | |
| JP2689778B2 (ja) | 電子制御装置の暴走検知装置 | |
| JP2666732B2 (ja) | コンピュータシステムにおける負荷制御方式 | |
| JP2762817B2 (ja) | アプリケーションプログラムのループ/ストール監視装置 | |
| JPH08137703A (ja) | タスク切替装置 | |
| JP3308670B2 (ja) | イベントドリブン型処理装置の故障検出装置 | |
| JPH01158542A (ja) | アラーム収集方式 | |
| JPH07168723A (ja) | コンピュータシステムの外部イベント検出方式 | |
| JP2764978B2 (ja) | 情報処理装置 | |
| JPH05204867A (ja) | 対称型マルチプロセッサシステムにおけるタイマ割込み制御方式 | |
| JP2884764B2 (ja) | シグナルプロセッサ | |
| JPH05210515A (ja) | 命令の割込み優先処理装置 | |
| JPH09134294A (ja) | 割り込み制御回路 | |
| JPH05197574A (ja) | タスク時間待ち制御装置 | |
| JP3405794B2 (ja) | マルチプロセッサシステム | |
| JPH0374771B2 (ja) | ||
| JP3538833B2 (ja) | アイドル待ち時間の動的変動方法 | |
| JPH11143824A (ja) | バス・アービトレーション方式 |