JPH0325624A - プログラム制御方式 - Google Patents
プログラム制御方式Info
- Publication number
- JPH0325624A JPH0325624A JP16156089A JP16156089A JPH0325624A JP H0325624 A JPH0325624 A JP H0325624A JP 16156089 A JP16156089 A JP 16156089A JP 16156089 A JP16156089 A JP 16156089A JP H0325624 A JPH0325624 A JP H0325624A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- state
- activation
- conditions
- registered
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は情報処理装置におけるプログラム制御方式に関
し、特にそのソフトウェアの実行処理方法を規定するタ
スク管理機能を用いたプログラム制御方式に関する. 〔従来の技術〕 従来のプログラム制御方式は、実行状態にあるタスクが
待ち状態に遷移する時に次に起動される(待ち状態から
実行状態へと遷移する)時の起動アドレスのみを登録し
、待ち状態にあるタスクに起動をかけるタスクの処理終
了後、その起動アドレスに従って待ち状態のタスクに起
動をかけるため、待ち状態のタスクと待ち状態にあるタ
スクに対して起動をかけるタスクは1対1の関係にあっ
た。
し、特にそのソフトウェアの実行処理方法を規定するタ
スク管理機能を用いたプログラム制御方式に関する. 〔従来の技術〕 従来のプログラム制御方式は、実行状態にあるタスクが
待ち状態に遷移する時に次に起動される(待ち状態から
実行状態へと遷移する)時の起動アドレスのみを登録し
、待ち状態にあるタスクに起動をかけるタスクの処理終
了後、その起動アドレスに従って待ち状態のタスクに起
動をかけるため、待ち状態のタスクと待ち状態にあるタ
スクに対して起動をかけるタスクは1対1の関係にあっ
た。
上述した従来のプログラム制御方式は、ある処理が実行
中に、複数の処理の処理実行終了による起動を待ち合わ
せる時、そのプロセスの待ち合わせと、待ち合わせの起
動との対応が1対1であるため、待ち合わせを行う処理
は待ち合わせの起動の個数分だけの待ち合わせ処理(実
行→待ち合わせ→起動→実行)を行なわなければならず
、処理が複雑になるという欠点がある. 〔課題を解決するための手段〕 本発明のプログラム制御方式は、実行中の処理の状態を
管理す,る管理手段(21,22.23)と、該処理が
待ち状態に遷移する時に、複数の起動条件を前記管理手
段に登録する登録手段(104,201,301)と、
他処理の処理起動時の起動指示条件を保存する保存手段
と、該他処理の終了により前記登録手段に登録した起動
条件を、前記保存手段に保存した起動指示条件と比較す
る比較手段(401.402)と、前記比較手段に比較
した起動条件と起動指示条件とで同一の条件が存在すれ
ば前記登録手段に登録した起動条件がら該条件を削除す
る手段(402)と、前記登録手段に登録した該処理の
起動条件が全て消滅したか否かにより待ち状態にある該
処理を起動するか否かを判断する手段(403)とを有
し、複数の処理の動作終了を待って、待ち状態にある処
理を実行状態へと遷移させる(203,303,401
〜404)ことを可能とする. 〔実施例〕 第1図は本発明の一実施例を示す流れ図である.処理A
は、処理Bと処理Cの実行結果を待ち合わせるため待ち
状態に遷移し、処理Bと処理Cの両方からの起動を受け
付けた時点で待ち状態を解除される. 第2図は同実施例を実現するためのソフトウエアのモジ
ュール構成を示すブロック図である.タスク管理部2は
、タスク制御を要求する処理1の要求により動作し、要
求の種類によりタスク登録制御部3,タスクウェイト制
御部4,タスク起動制御部5,タスク削除制御部6に分
類される.第3図は第1図,第2図で示すタスク管理を
実現するための情報を格納するタスクコントロールブロ
ック(以f&TCBと呼ぶ〉の一例である。TCBは、
実行状態にある処理の情報を保持するもので、処理起動
時にタスク管理部2のタスク登録制御部3への要求で確
保され、その処理が消滅する時のタスク削除制御部6へ
の要求で削除される.第3図に示すTCBにはTCBの
有効を示すフラグ7(以後Vビットと呼ぶ)、TCBを
取得した処理が現在実行中であることを示すフラグ8(
以f& Rビットと呼ぶ)、待ち状態であることを示す
フラグ9(以後Wビットと呼ぶ)、実行待ち状態である
ことを示すフラグ10(以後Nビットと呼ぶ〉がある。
中に、複数の処理の処理実行終了による起動を待ち合わ
せる時、そのプロセスの待ち合わせと、待ち合わせの起
動との対応が1対1であるため、待ち合わせを行う処理
は待ち合わせの起動の個数分だけの待ち合わせ処理(実
行→待ち合わせ→起動→実行)を行なわなければならず
、処理が複雑になるという欠点がある. 〔課題を解決するための手段〕 本発明のプログラム制御方式は、実行中の処理の状態を
管理す,る管理手段(21,22.23)と、該処理が
待ち状態に遷移する時に、複数の起動条件を前記管理手
段に登録する登録手段(104,201,301)と、
他処理の処理起動時の起動指示条件を保存する保存手段
と、該他処理の終了により前記登録手段に登録した起動
条件を、前記保存手段に保存した起動指示条件と比較す
る比較手段(401.402)と、前記比較手段に比較
した起動条件と起動指示条件とで同一の条件が存在すれ
ば前記登録手段に登録した起動条件がら該条件を削除す
る手段(402)と、前記登録手段に登録した該処理の
起動条件が全て消滅したか否かにより待ち状態にある該
処理を起動するか否かを判断する手段(403)とを有
し、複数の処理の動作終了を待って、待ち状態にある処
理を実行状態へと遷移させる(203,303,401
〜404)ことを可能とする. 〔実施例〕 第1図は本発明の一実施例を示す流れ図である.処理A
は、処理Bと処理Cの実行結果を待ち合わせるため待ち
状態に遷移し、処理Bと処理Cの両方からの起動を受け
付けた時点で待ち状態を解除される. 第2図は同実施例を実現するためのソフトウエアのモジ
ュール構成を示すブロック図である.タスク管理部2は
、タスク制御を要求する処理1の要求により動作し、要
求の種類によりタスク登録制御部3,タスクウェイト制
御部4,タスク起動制御部5,タスク削除制御部6に分
類される.第3図は第1図,第2図で示すタスク管理を
実現するための情報を格納するタスクコントロールブロ
ック(以f&TCBと呼ぶ〉の一例である。TCBは、
実行状態にある処理の情報を保持するもので、処理起動
時にタスク管理部2のタスク登録制御部3への要求で確
保され、その処理が消滅する時のタスク削除制御部6へ
の要求で削除される.第3図に示すTCBにはTCBの
有効を示すフラグ7(以後Vビットと呼ぶ)、TCBを
取得した処理が現在実行中であることを示すフラグ8(
以f& Rビットと呼ぶ)、待ち状態であることを示す
フラグ9(以後Wビットと呼ぶ)、実行待ち状態である
ことを示すフラグ10(以後Nビットと呼ぶ〉がある。
TCBナンバー11は、タスク登録制御部3に要求を出
した処理を保持するTCBの番号である。情報部12に
は、そのTCBを取得している処理が期待している事象
又はその処理が終了後に満足される事象等が登録される
.起動アドレス部13は、TCBを取得した処理が待ち
状態に遷移した後、起動するアドレスを保持している。
した処理を保持するTCBの番号である。情報部12に
は、そのTCBを取得している処理が期待している事象
又はその処理が終了後に満足される事象等が登録される
.起動アドレス部13は、TCBを取得した処理が待ち
状態に遷移した後、起動するアドレスを保持している。
第1図において処理Aが起動.された時、処理Aはタス
ク管理部2のタスク登録制御部3に対してTCBの取得
を要求する(ステップ101).この処理Aの実行状態
ではTCB上のRビットがオンである.その後、処理A
は処理B,処理Cの実行結果を待つ必要が生じ、処理B
と処理Cの起動(ステップ102,103)をがけ、待
ち状態(ステップ105)へと遷移するが、待ち状態に
遷移する前に処理Aはタスク管理部2のタスク待ち制御
部4に対して待ち状態要求(ウェイト登録)を行う。こ
の時、処理AのTCB上の情報部12に処理B,処理C
の実行によって満足される、処理Aを待ち状態がら実行
状態へと遷移させるのに必要な条件(処理Aの起動条件
)を登録(ステップ104)すると同時にRビットをリ
セット,Wビットをセットする.また、処理Aの起動条
件満足後に起動されるアドレスをTCBの起動アドレス
部13に格納する。その後、処理Aは待ち状態となる. 処理Aによって起動された処理B.処理Cは起動後、処
理Aと同様にタスク登録制御部3に対してTCB取得要
求を行う(ステップ201.301〉.この時、処理B
と処理CのTCBの情報部j2には処理B,処理Cの処
理終了後満足される条件を登録する.ここで、処理Aは
処理Bと処理Cの実行結果を期待して待ち状態へと遷移
しているため、処理AのTCB21に登録されている処
理Aを待ち状態から実行状態へと遷移させるための処理
Aの起動条件は、処理B,処理CのTCB22,23に
登録されている処理B,処理C終了後に満足される条件
にて満足される。起動された処理Bは対応動作を実行(
ステップ202)する.この間処理BのRビットはセッ
ト状態である。処理Bの動作終了後、処理Bはタスク管
理部2のタスク起動制御部5に対してタスク起動要求(
ステップ203)を行う.タスク起動要求を受けたタス
ク管理部2はWビットのセットされているTCBを捜索
(ステップ401)Lて処理BのTC B 2 2の情
報部に登録してある条件(処理B終了後に処理Bの満足
した結果)と同一のものが存在すればそのTCBの情報
部から処理Bの情報部の条件を削除(ステップ402)
する.この時点で、ウェイト状態の処理でTCB内の起
動条件が全て消滅してものはTCB内の起動アドレス部
工3から起動をかけられる。処理Aの場合は処理Bの完
了により処理Aを待ち状態から実行状態へと遷移させる
ための条件(処理Aの起動条件)の1つは消滅したもの
の、全ての起動条件を満足していないので、引き続きウ
ェイト状態を維持する.タスク起動制御5はウェイト状
態の処理の中で起動条件を全て満足しているものに関し
てはTCB内の起動アドレスによって処理を起動するが
、全て満足していない処理については、TCBの情報部
12より起動条件のうち満足しているものだけを削除し
、タスク制御部としての処理を終了する.その後、処理
Bはタスク管理部2のタスク削除制御部6に対してTC
Pの削除(ステップ204)を要求して処理を終了する
。処理Aに起動されている処理Cも処理Bと同様に対応
処理(ステップ302)終了後にタスク起動制御部5に
対して要求を出す(ステップ303)。タスク起動制御
部5は処理Bの時と同様にWビットのセットされている
TCBの起動条件の中から処理Cの満足した条件を削除
する.この時点で処理Aの起動条件は全て満足したので
タスク起動制御部5は、処理AのTCB内の起動アドレ
スに従って、処理Aを起動(ステップ404)する.こ
のとき、処理AのTCBはWビットがリセット、Nビッ
トがセットされる(処理Aは待ち状態から実行待ち状態
に遷移した).処理Cは、その後タスク削除制御部6に
対してTCBの削除(ステップ304)を要求し処理を
終了する.その後、処理Aは実行状態となり処理を続行
する. 以上のようにして、待ち状態に移行する処理が、本処理
の状態を管理する情報部を本発明のタスク制御を実現す
るソフトウェアがアクセス可能な記憶装置上に保持し、
次に起動される時の複数の起動条件をその情報部に登録
し、起動条件の1つが満たされる毎に情報部、よりその
条件を削除し、全条件を満足した時点で待ち状態の処理
を起動することによって、1つの処理が、複数の事象を
待ち合わせることができ、プログラム構戒が簡易化され
ると同時に処理の高速化が行なわれる。
ク管理部2のタスク登録制御部3に対してTCBの取得
を要求する(ステップ101).この処理Aの実行状態
ではTCB上のRビットがオンである.その後、処理A
は処理B,処理Cの実行結果を待つ必要が生じ、処理B
と処理Cの起動(ステップ102,103)をがけ、待
ち状態(ステップ105)へと遷移するが、待ち状態に
遷移する前に処理Aはタスク管理部2のタスク待ち制御
部4に対して待ち状態要求(ウェイト登録)を行う。こ
の時、処理AのTCB上の情報部12に処理B,処理C
の実行によって満足される、処理Aを待ち状態がら実行
状態へと遷移させるのに必要な条件(処理Aの起動条件
)を登録(ステップ104)すると同時にRビットをリ
セット,Wビットをセットする.また、処理Aの起動条
件満足後に起動されるアドレスをTCBの起動アドレス
部13に格納する。その後、処理Aは待ち状態となる. 処理Aによって起動された処理B.処理Cは起動後、処
理Aと同様にタスク登録制御部3に対してTCB取得要
求を行う(ステップ201.301〉.この時、処理B
と処理CのTCBの情報部j2には処理B,処理Cの処
理終了後満足される条件を登録する.ここで、処理Aは
処理Bと処理Cの実行結果を期待して待ち状態へと遷移
しているため、処理AのTCB21に登録されている処
理Aを待ち状態から実行状態へと遷移させるための処理
Aの起動条件は、処理B,処理CのTCB22,23に
登録されている処理B,処理C終了後に満足される条件
にて満足される。起動された処理Bは対応動作を実行(
ステップ202)する.この間処理BのRビットはセッ
ト状態である。処理Bの動作終了後、処理Bはタスク管
理部2のタスク起動制御部5に対してタスク起動要求(
ステップ203)を行う.タスク起動要求を受けたタス
ク管理部2はWビットのセットされているTCBを捜索
(ステップ401)Lて処理BのTC B 2 2の情
報部に登録してある条件(処理B終了後に処理Bの満足
した結果)と同一のものが存在すればそのTCBの情報
部から処理Bの情報部の条件を削除(ステップ402)
する.この時点で、ウェイト状態の処理でTCB内の起
動条件が全て消滅してものはTCB内の起動アドレス部
工3から起動をかけられる。処理Aの場合は処理Bの完
了により処理Aを待ち状態から実行状態へと遷移させる
ための条件(処理Aの起動条件)の1つは消滅したもの
の、全ての起動条件を満足していないので、引き続きウ
ェイト状態を維持する.タスク起動制御5はウェイト状
態の処理の中で起動条件を全て満足しているものに関し
てはTCB内の起動アドレスによって処理を起動するが
、全て満足していない処理については、TCBの情報部
12より起動条件のうち満足しているものだけを削除し
、タスク制御部としての処理を終了する.その後、処理
Bはタスク管理部2のタスク削除制御部6に対してTC
Pの削除(ステップ204)を要求して処理を終了する
。処理Aに起動されている処理Cも処理Bと同様に対応
処理(ステップ302)終了後にタスク起動制御部5に
対して要求を出す(ステップ303)。タスク起動制御
部5は処理Bの時と同様にWビットのセットされている
TCBの起動条件の中から処理Cの満足した条件を削除
する.この時点で処理Aの起動条件は全て満足したので
タスク起動制御部5は、処理AのTCB内の起動アドレ
スに従って、処理Aを起動(ステップ404)する.こ
のとき、処理AのTCBはWビットがリセット、Nビッ
トがセットされる(処理Aは待ち状態から実行待ち状態
に遷移した).処理Cは、その後タスク削除制御部6に
対してTCBの削除(ステップ304)を要求し処理を
終了する.その後、処理Aは実行状態となり処理を続行
する. 以上のようにして、待ち状態に移行する処理が、本処理
の状態を管理する情報部を本発明のタスク制御を実現す
るソフトウェアがアクセス可能な記憶装置上に保持し、
次に起動される時の複数の起動条件をその情報部に登録
し、起動条件の1つが満たされる毎に情報部、よりその
条件を削除し、全条件を満足した時点で待ち状態の処理
を起動することによって、1つの処理が、複数の事象を
待ち合わせることができ、プログラム構戒が簡易化され
ると同時に処理の高速化が行なわれる。
以上説明したように本発明は、処理が待ち状態に遷移す
る前に、本処理が実行中保持される本処理特有の状態情
報に待ち状態から起動される時の複数の要因および次に
起動されるアドレスを登録し、本処理を起動する複数の
処理がらの起動を受ける毎に状態情報に登録されている
要因を消滅し、全要因の消滅後に状態情報内の起動アド
レスに従い、待ち状態の処理を起動することにより、1
回の待ち合わせ処理において複数の事象を待ち合わせる
こと可能なため、プログラム構成が簡易化されるととも
に、処理の高速化が実現するという効果を奏する.
る前に、本処理が実行中保持される本処理特有の状態情
報に待ち状態から起動される時の複数の要因および次に
起動されるアドレスを登録し、本処理を起動する複数の
処理がらの起動を受ける毎に状態情報に登録されている
要因を消滅し、全要因の消滅後に状態情報内の起動アド
レスに従い、待ち状態の処理を起動することにより、1
回の待ち合わせ処理において複数の事象を待ち合わせる
こと可能なため、プログラム構成が簡易化されるととも
に、処理の高速化が実現するという効果を奏する.
第1図は本発明の一実施例を示すフローチャート、第2
図は同実施例におけるモジュール構成を示すブロック図
、第3図は同実施例におけるタスクコントロールブロッ
クを例示する図である。
図は同実施例におけるモジュール構成を示すブロック図
、第3図は同実施例におけるタスクコントロールブロッ
クを例示する図である。
Claims (1)
- 実行中の処理の状態を管理する管理手段と、該処理が待
ち状態に遷移する時に、複数の起動条件を前記管理手段
に登録する登録手段と、他処理の処理起動時の起動指示
条件を保存する保存手段と、該他処理の終了により前記
登録手段に登録した起動条件を、前記保存手段に保存し
た起動指示条件と比較する比較手段と、前記比較手段に
比較した起動条件と起動指示条件とで同一の条件が存在
すれば前記登録手段に登録した起動条件から該条件を削
除する手段と、前記登録手段に登録した該処理の起動条
件が全て消滅したか否かにより待ち状態にある該処理を
起動するか否かを判断する手段とを有し、複数の処理の
動作終了を待って、待ち状態にある処理を実行状態へと
遷移させることを可能とするプログラム制御方式。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1161560A JP2573875B2 (ja) | 1989-06-23 | 1989-06-23 | プログラム制御方式 |
| FR9007949A FR2648927B1 (fr) | 1989-06-23 | 1990-06-25 | Methode et arrangement de controle des programmes de gestion des taches |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1161560A JP2573875B2 (ja) | 1989-06-23 | 1989-06-23 | プログラム制御方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0325624A true JPH0325624A (ja) | 1991-02-04 |
| JP2573875B2 JP2573875B2 (ja) | 1997-01-22 |
Family
ID=15737431
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1161560A Expired - Lifetime JP2573875B2 (ja) | 1989-06-23 | 1989-06-23 | プログラム制御方式 |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP2573875B2 (ja) |
| FR (1) | FR2648927B1 (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH07295840A (ja) * | 1994-04-28 | 1995-11-10 | Nec Ic Microcomput Syst Ltd | マルチプログラミングにおける事象管理方式 |
| JPH08106395A (ja) * | 1994-10-07 | 1996-04-23 | Nec Corp | 子タスク終了待ち合わせシステム |
| JP2006284130A (ja) * | 2005-04-04 | 2006-10-19 | Mitsubishi Electric Corp | 吹出装置、吹出装置の床下取付構造並びに室内温度調整システム |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6073746A (ja) * | 1983-09-30 | 1985-04-25 | Hitachi Ltd | 情報処理システムおよびプロセス実行制御方式 |
| EP0274339B1 (en) * | 1986-10-29 | 1997-05-02 | United Technologies Corporation | Event driven executive |
-
1989
- 1989-06-23 JP JP1161560A patent/JP2573875B2/ja not_active Expired - Lifetime
-
1990
- 1990-06-25 FR FR9007949A patent/FR2648927B1/fr not_active Expired - Lifetime
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH07295840A (ja) * | 1994-04-28 | 1995-11-10 | Nec Ic Microcomput Syst Ltd | マルチプログラミングにおける事象管理方式 |
| JPH08106395A (ja) * | 1994-10-07 | 1996-04-23 | Nec Corp | 子タスク終了待ち合わせシステム |
| JP2006284130A (ja) * | 2005-04-04 | 2006-10-19 | Mitsubishi Electric Corp | 吹出装置、吹出装置の床下取付構造並びに室内温度調整システム |
Also Published As
| Publication number | Publication date |
|---|---|
| FR2648927A1 (fr) | 1990-12-28 |
| JP2573875B2 (ja) | 1997-01-22 |
| FR2648927B1 (fr) | 1993-11-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN112764822A (zh) | 操作系统启动方法、装置、设备及介质 | |
| JPH0325624A (ja) | プログラム制御方式 | |
| JP2004523812A (ja) | 効率的なタイマ管理システム | |
| JP3110185B2 (ja) | 計算機システム | |
| JP2762816B2 (ja) | トランザクション実行トレース情報採取方式 | |
| JPH08190491A (ja) | タスク切り換え方法 | |
| US7234142B1 (en) | Task processing system | |
| JPH0628193A (ja) | オブジェクト指向ソフトウエアシステムにおける方法及びシステム | |
| JPH0580993A (ja) | ジヨブ実行順序制御方式 | |
| JPH0713862A (ja) | アプリケーションプログラムの起動手段 | |
| JP3884762B2 (ja) | ジョブ実行システムおよび記録媒体 | |
| JPH07175671A (ja) | プロセス管理方式 | |
| JPH086829A (ja) | データベースの同時全件検索方法 | |
| JPH064321A (ja) | 割り込み管理方式 | |
| JPH03225434A (ja) | ジョブ再起動方式 | |
| JPH09106363A (ja) | ユーザコマンド自動実行方式 | |
| JP2002099688A (ja) | ワークフロー管理システムおよび運用案件移行方法 | |
| JPH0546452A (ja) | コミツトメント制御システム | |
| JPH01211035A (ja) | プログラム間データ交換方法 | |
| JPH0589049A (ja) | コマンド実行装置 | |
| JPH02141843A (ja) | プログラム管理方式 | |
| JPH0285933A (ja) | 情報処理装置 | |
| JPH056302A (ja) | メモリ管理方式 | |
| JPH02127732A (ja) | ジョブ管理方式 | |
| JPH02211545A (ja) | ジョブ実行制御方式 |