JP2915074B2 - マルチタスク処理システムにおけるイベントデキューイング方法 - Google Patents
マルチタスク処理システムにおけるイベントデキューイング方法Info
- Publication number
- JP2915074B2 JP2915074B2 JP12585790A JP12585790A JP2915074B2 JP 2915074 B2 JP2915074 B2 JP 2915074B2 JP 12585790 A JP12585790 A JP 12585790A JP 12585790 A JP12585790 A JP 12585790A JP 2915074 B2 JP2915074 B2 JP 2915074B2
- Authority
- JP
- Japan
- Prior art keywords
- event
- task
- processing
- order
- passed
- 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.)
- Expired - Lifetime
Links
Description
種別のイベントの処理の順序性を保証するイベントデキ
ューイング方法に関する。
る計算機システム(マルチタスク処理システム)では、
キューイングされている複数のイベントが別々のタスク
に渡され、即ち、デキューイングされ、同時に処理が実
行される。この場合、従来はイベントをその種別に関係
なくキューイングされた順序に一義的にデキューイング
していた。
により説明する。第2図はデキューイング前の状態であ
り、キュー1上に、複数のイベント2がA1,A2,B1,…
の順序にデキューイングされている。ここで、A1とA2と
A3、あるいはB1B2はそれぞれ同一種別のイベントを示
す。4と5は走行中のタスクである。コントローラ3
は、タスク4,5の状態を監視し、空きタスクがあると、
キュー1上のイベント2を先頭から取り出し、空きタス
クに渡す制御を行うものである。今、タスク4,5がいず
れも空きタスクとした場合、コントローラ3は、まずキ
ュー1上のイベントA1を取り出して例えばタスク4に渡
し、引き続きイベントA2を取り出してタスク5に渡す。
第3図はこのデキューイング後の状態を示したものであ
る。即ち、キュー1上のイベント2は、A1,A2の2個分
ブッシュアップされ、B1が先頭になる。また、キュー1
からデキューイングされたA1,A2はタスク4,5により同
時に実行される。
理の順序性が保証される必要がある。しかしながら、上
記従来技術では、イベントをその種別に関係なくキュー
イングされた順序に一義的にデキューイングするので、
マルチタスク環境下では同一種別のイベントについて処
理の順序性が必ず保証されるとは限らなかった。例えば
第2図の例の場合、同一種別のA1,A2,A3はこの順序に
処理を終える必要があるが、先にタスク4に渡されたA1
がI/O処理待ちなどにより待ち状態となると、後にタス
ク5に渡されたA2が先に処理を終了して追い越される可
能性があり、処理の順序性が保証されなくなる。
マルチタスク処理システムにおいて、同一種別のイベン
ト同士の追い越しを防止し、並列処理と同一種別のイベ
ントの処理順序性の保証とを同時に満たすイベントデキ
ューイング方法を提供することにある。
別を定義し、キューイングされているイベントを先頭か
ら順番に取り出して空きタスクに渡す時、あるタスクで
処理中のイベントがあると、該イベントと同一種別のイ
ベントはスキップし、異なる種別のイベントを取り出し
て空きタスクに渡すようにしたことである。
ントを先頭から取り出して空きタスクに渡す時、同一種
別のイベントについては、以前に空きタスクに渡された
イベントの処理が完了するまでは取り出しをスキップ
し、それ以降の異なる種別のイベントを先に取り出して
空きタスクに渡し、処理させる。これにより、処理の順
序性を考慮する必要のない異種のイベントは並列に処理
を実行し、同一種別のイベントについては、その順序に
従って処理を実行することが可能になる。
る。
図中、制御表とは、各タスクで処理中のイベントの種別
を管理するテーブルであり、ここでは第2図のコントロ
ーラ3が保持しているとする。
(ステップ101)、空きタスクが発生した場合、キュー
上にイベントが存在するかどうか調べる(ステップ10
2)。キュー上にイベントが存在する場合、制御表を参
照して、処理中のタスクに、キューイングされている先
頭のイベントと同一種別のイベントがあるかどうか調べ
る(ステップ103)。そして、同一種別の処理中のイベ
ントがあれば、キューイングされている先頭のイベント
をスキップする(ステップ104)。ここで、キュー上に
次のイベントがなければ(ステップ105)、キューの先
頭に戻り(ステップ106)、キュー上にイベントが到着
するのを待つことになる。
れば、スキップした次のイベントについて、再びステッ
プ103の処理を実行する。ここで、該イベントに対し
て、同一種別の処理中のイベントがなければ、該イベン
トを取り出して空きタスクへ渡し、処理させる(ステッ
プ107)。そして、制御表に当該イベントの種別を登録
する(ステップ108)。その後、イベントを渡したタス
クが処理を完了したかどうか監視し(ステップ109)、
処理を完了すれば(ステップ110)、該完了したイベン
トを制御表から削除し(ステップ111)、ステップ101に
戻る。
グ後の状態は第4図のようになる。即ち、コントローラ
3は、タスク4,5がいずれも空き状態の場合、まず、キ
ュー1上の先頭のイベントA1を例えば空きタスク4に渡
し処理させる。その時、制御表31にA1の種別(例えば識
別子IDなど)を登録する。次にコントローラ3はキュー
1上の次のイベントA2を空きタスク5に渡そうとする
が、それと同一種別のA1が制御表31に登録されているた
め、A2をスキップし、その次のA1とは異なる種別のイベ
ントB1を空きタスク5に渡して処理させ、制御表31にB1
の種別を登録する。これらの処理と並行してコントロー
ラ3はイベント処理中のタスク4,5を監視し、処理の完
了したものから、そのイベントの種別を制御表31から削
除する。
タスク処理を比較してみる。
信を行う際、該センタ計算機10と端末計算機30の間にプ
ロトコル変換等を行う中継計算機20を設置した例であ
る。このような環境下で中継計算機20上のプログラムを
マルチタスクで走行させた場合(本例ではタスクAとタ
スクB)、送信側で送信した電文の順番と受信側で受信
した電文の順番が等しくなるようにするためには、イベ
ントの追越しがあってはならない。
追越しが発生する事があった。これを第5図で説明する
と、まず、センタ計算機10より送信された電文が中継計
算機20に到着し、その時の電文の順番は“●,□,△”
であったとする。ところが、●と□が並行に処理される
場合、I/O時間の長さの違いによって、到着した順番と
処理が完了して送信される順番が逆転し、“□,●,
△”となる事があった。これに対し、本発明を適用する
と、第6図に示すように、中継計算機20上のプログラム
をマルチタスクで走行させても、センタ計算機10で送信
した電文の順番送り、端末計算機30で電文が受信され
る。
でイベント処理を実行する計算機システムにおいて、キ
ュー上のイベントをデキューイングする際、同一種別の
イベントについて、比較的容易に処理の順序性が保証さ
れるようにデキューイングを実行することができ、イベ
ントの並列処理と処理の順序性を同時に満たすことが可
能になる。
る処理フローの一例を示す図、第2図は従来及び本発明
の方法を説明するための具体例のデキューイング前の状
態を示す図、第3図は第2図の例について従来のデキュ
ーイング後の状態を示す図、第4図は本発明のデキュー
イング後の状態を示す図、第5図及び第6図は具体的シ
ステムについて従来及び本発明の動作を比較した図であ
る。 1……キュー、2……キューイングイベント、3……コ
ントローラ、31……制御表、4,5……タスク。
Claims (1)
- 【請求項1】マルチタスクでプログラムが走行中、処理
待ちのイベントをキューイングし、該キューイングされ
ているイベントを先頭から順番に空きタスクに渡すこと
で、複数のイベントを同時に実行するマルチタスク処理
システムにおいて、 空きタスクが発生して、キューイングされているイベン
トを先頭から順番に取り出して空きタスクに渡すとき、
当該イベントと同一種別のイベントが処理中の他のイベ
ントに存在するかどうか判定し、存在しなければ、当該
イベントを空きタスクに渡し、存在すれば、当該イベン
トを飛ばして、後続の異なる種別のイベントを空きタス
クに渡すことを特徴とするイベントデキューイング方
法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12585790A JP2915074B2 (ja) | 1990-05-16 | 1990-05-16 | マルチタスク処理システムにおけるイベントデキューイング方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12585790A JP2915074B2 (ja) | 1990-05-16 | 1990-05-16 | マルチタスク処理システムにおけるイベントデキューイング方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0421134A JPH0421134A (ja) | 1992-01-24 |
JP2915074B2 true JP2915074B2 (ja) | 1999-07-05 |
Family
ID=14920662
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12585790A Expired - Lifetime JP2915074B2 (ja) | 1990-05-16 | 1990-05-16 | マルチタスク処理システムにおけるイベントデキューイング方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2915074B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09511858A (ja) * | 1995-08-18 | 1997-11-25 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | Osiエージェントにおける要求の並列実行 |
GB2334117A (en) | 1998-02-04 | 1999-08-11 | Ibm | Performing semantic concurrency control in dispatching server computer client requests |
JP6215779B2 (ja) * | 2014-06-10 | 2017-10-18 | 東芝テック株式会社 | サーバ装置及びプログラム |
US11157004B2 (en) * | 2019-04-01 | 2021-10-26 | GM Global Technology Operations LLC | Real-time control system for a vehicle and a method of executing control of the vehicle via the real-time control system |
-
1990
- 1990-05-16 JP JP12585790A patent/JP2915074B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH0421134A (ja) | 1992-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0442615B1 (en) | A communications adapter and method for operating it | |
US5768572A (en) | Timer state control optimized for frequent cancel and reset operations | |
JP2915074B2 (ja) | マルチタスク処理システムにおけるイベントデキューイング方法 | |
JP2004517424A (ja) | サーバーアーキテクチャー | |
JP2636722B2 (ja) | マルチタスク実行管理方式 | |
JPH02311932A (ja) | 優先制御方式 | |
US5392426A (en) | Method and apparatus for use in program operation, control and control block management and storage | |
JP2001092676A (ja) | 組み込みプログラムにおけるタスク管理システム | |
JPH1196108A (ja) | 計算機システム及びバス制御装置 | |
JPH0266640A (ja) | デバッガタスクスケジューリング方式 | |
JP2005506629A (ja) | 効率的な通信方法及びシステム | |
JPH0385641A (ja) | データ処理優先度制御方式 | |
JPH0421150A (ja) | オンライン処理方式 | |
JPH05257888A (ja) | インターフェース整合方式 | |
JP2937552B2 (ja) | タスク・スケジューリング方式及び方法 | |
JP2867381B2 (ja) | トランザクション処理の負荷分散方法 | |
JP3112287B2 (ja) | メッセージ管理処理装置 | |
JPH0240723A (ja) | メッセージ送受信管理方式 | |
JPH04369752A (ja) | スケジュール制御方式 | |
JPH07281975A (ja) | データ送受信バッファビジーリトライ方法 | |
JPH0243657A (ja) | トランザクション処理スケジュール方式 | |
JPH0535506A (ja) | プログラムデイスパツチ処理方式 | |
JPS61101862A (ja) | メツセ−ジスケジユ−ル方式 | |
JP2957347B2 (ja) | ジョブ実行クラス停止方式 | |
JPH06250910A (ja) | メッセージキュー着信管理方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090416 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090416 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100416 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 11 Free format text: PAYMENT UNTIL: 20100416 |
|
EXPY | Cancellation because of completion of term | ||
FPAY | Renewal fee payment (prs date is renewal date of database) |
Year of fee payment: 12 Free format text: PAYMENT UNTIL: 20110416 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110416 Year of fee payment: 12 |