JP2821345B2 - 非同期i/o制御方式 - Google Patents
非同期i/o制御方式Info
- Publication number
- JP2821345B2 JP2821345B2 JP5241872A JP24187293A JP2821345B2 JP 2821345 B2 JP2821345 B2 JP 2821345B2 JP 5241872 A JP5241872 A JP 5241872A JP 24187293 A JP24187293 A JP 24187293A JP 2821345 B2 JP2821345 B2 JP 2821345B2
- Authority
- JP
- Japan
- Prior art keywords
- asynchronous
- task
- priority
- data
- user program
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F2003/0697—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
Description
特に処理優先度の異なる複数のユーザプログラムの並列
処理を行なうデータ処理システムにおける非同期I/O
制御方式に関する。
は、外部記憶装置へのアクセスは、ユーザプログラムの
優先度に関係なく、システムに唯一に設けられた非同期
I/O実行タスクが特定の優先度の下で実行するように
なっている。
I/O制御方式は、ユーザプログラムごとにそれぞれ優
先度が設定されていて、それぞれの優先度に従って処理
が行なわれるにも拘らず、外部記憶装置へのアクセスの
優先度は特定になってしまい、それぞれのデータ処理に
関するユーザプログラムの特性が発揮しきれないという
問題点がある。また優先度の低いユーザプログラムがデ
ータの再利用のためにデータ読込み要求が発生した時点
で、非同期I/Oバッファ内に該当するデータが見つか
らず、再度、外部記憶装置からデータを読込みなければ
ならないことがあるという問題点を有している。
御方式は、処理優先度の異なる複数のユーザプログラム
の並列処理を行なうデータ処理システムのユーザプログ
ラムからのデータを外部記憶装置に出力する非同期I/
O制御方式において、ユーザプログラムからのデータを
保持するための主記憶装置に設けられた非同期I/Oバ
ッファと、ユーザプログラムの優先度に対応して生成さ
れた非同期I/O実行タスクのアドレスとタスク状態と
を管理する非同期I/O実行タスク管理テーブルと、ユ
ーザプログラムから外部記憶装置へのデータ出力要求を
受けて、データを前記非同期I/Oバッファのユーザプ
ログラムの優先度に対応する領域に格納させた後に前記
非同期I/O実行タスク管理テーブルを調べて同優先度
の非同期I/O実行タスクがないときは非同期I/O実
行タスクを生成し、この管理テーブルにアドレスを登録
しタスク状態を起動中として既存または生成したタスク
を起動する制御プログラムと、この制御プログラムによ
り起動されて前記非同期I/Oバッファの自優先度と同
じ領域のデータをデータが無くなるまで外部記憶装置に
転送し、転送完了で前記非同期I/O実行タスク管理テ
ーブルの自優先度のタスク状態を待ち中して処理を終了
する優先度に対応する非同期I/O実行タスクとを有す
ることにより構成される。
る。
図1の実施例は複数のユーザプログラム11,12,〜
からなるユーザプログラム群1,0Sの一部として設け
た制御プログラム2,非同期I/Oバッファ31を有す
る主記憶装置3,複数の非同期I/O実行タスク41,
42,〜からなる非同期I/O実行タスク群4,非同期
I/O実行タスク管理テーブル5,および外部記憶装置
6を有して構成される。
1中のユーザプログラムからの入出要求に従って、ユー
ザプログラムと非同期I/Oバッファ31との間のデー
タの授受を行なう。また、制御プログラム2は一つの優
先度のユーザプログラムから最初の例えば書込み要求を
受けたとき、非同期I/O実行タスク群4にこのユーザ
プログラムの優先度と同じ優先度の非同期I/O実行タ
スクを生成し、非同期I/O実行タスク管理テーブル5
にそのタスクの登録を行なう。そして制御プログラム2
は他のユーザプログラムからの入出力要求に対しても同
様の処理を行ない、非同期I/O実行タスク41,4
2,……を生成し、非同期I/O実行タスク管理テーブ
ル5に登録を行なう。また、既に同一優先度の非同期I
/O実行タスクが存在する場合には、非同期I/O実行
タスク管理テーブル5のタスク状態フラグの変更のみを
行ない、制御を要求のあったユーザプログラムに戻す。
ル5の構成図で、非同期I/O実行タスク管理テーブル
5はユーザプログラムの優先度に対応して生成された非
同期I/O実行タスクのアドレスとそのタスクの状態を
示すタスク状態フラグとを対にして管理するテーブルで
ある。タスク状態フラグの1はそのタスクが起動できる
状態になっているか起動中であることを示し、0はタス
クが待ち状態になっていることを示している。
発生したときの制御プログラム2の処理の流れ図で、制
御プログラム2の動作を図3を参照に説明する。ユーザ
プログラムから書込み要求が発生すると(ステップ10
1)、制御プログラム2は要求データを非同期I/Oバ
ッファ31に格納する(ステップ102)。次にこの要
求データをそのユーザプログラムの優先度と同じ優先順
位で外部記憶装置6に書込むために、そのユーザプログ
ラムの優先度と同一の非同期I/O実行タスクが既に存
在しているかを、非同期I/O実行タスク管理テーブル
5の同じ優先度のアドレスフィールドにアドレスがある
かないかにより調べる(ステップ103)。アドレスフ
ィールドの値が0である場合にはユーザプログラムと同
一優先度の非同期I/O実行タスクを生成し(ステップ
104)、0であったアドレスフィールドに生成した非
同期I/O実行タスクのアドレス値を格納する(ステッ
プ105)。更に非同期I/O実行タスク管理テーブル
5内の要求のあったユーザプログラムと同じ優先度の非
同期I/O実行タスクのタスク状態フラグが1であるか
を調べ(ステップ106)、0であるならば既に起動で
きる状態にあることから1に変更して(ステップ10
7)。ユーザプログラムに制御を戻す(ステップ10
8)。なお、ステップ103で既にアドレス値が存在す
るならば、直ちにステップ106へ移る。またステップ
106でタスク状態フラグが1になっているならば、既
に存在する同じ優先度の非同期I/O実行タスクが、既
に非同期I/Oバッファ31に格納されたデータの書込
み待ちか、書込中であるのでステップ107を行なうこ
となくステップ108に移る。
2,〜の処理の流れ図で、非同期I/O実行タスク4
1,42,〜のうちの一つの動作を図4を参照して説明
する。非同期I/O実行タスクは非同期I/Oバッファ
31に同一優先度のデータが格納されたとき、図3のス
テップ106で説明したように非同期I/O実行タスク
管理テーブルのタスク状態フラグが1になって、起動が
できる状態になる(ステップ201)。タスク状態フラ
グが1になると、対応する非同期I/O実行タスクが起
動する。起動された非同期I/O実行タスクは、非同期
I/Oバッファ31内の同一優先度のデータが無くなる
まで外部記憶装置6へデータを書込む(ステップ20
2,203)。次に書込みが終了すると自優先度に対応
する非同期I/O実行管理テーブル内のタスク状態フラ
グを待ちの0とする(ステップ204)。
ログラムからデータの書込みが発生すると制御プログラ
ム2はそのデータを非同期I/Oバッファ31に格納
し、非同期I/O実行タスクを生成し、レディ状態とす
る。非同期I/O実行タスクは制御プログラムによって
レディ状態にされたことによって、非同期I/Oバッフ
ァ31内の有効データを外部記憶装置6に、ユーザプロ
グラムと同一優先度で書込み、有効データがなくなるま
で書込み処理を続ける。即ち、書込み処理をシステムと
して最適な優先度で行なうために、制御プログラム2は
要求元のユーザプログラムと同じ優先度の非同期I/O
実行タスクを生成し、起動することで制御している。
から外部記憶装置6に対して、始めての書込み要求が発
生した場合、この要求に対して制御プログラム2は、ユ
ーザプログラム11の優先度に対応する非同期I/O実
行タスク管理テーブル5内の優先度1のアドレスフィー
ルドのタスクアドレス値を参照する。このアドレスフィ
ールドは初期値が0あり、非同期I/O実行タスク生成
時に生成したタスクへのアドレスを格納しておくものな
ので、このアドレスフィールドが0であるので優先度1
の非同期I/O実行タスク41を生成し、さらに対応す
るタスク状態フラグを1にセットして起動し、ユーザプ
ログラム11に制御を戻す。起動された非同期I/O実
行タスク11は、非同期I/Oバッファ31内の優先度
1のデータのみを外部記憶装置6に書込み続け、非同期
I/Oバッファ31内の優先度1のデータが無くなった
時点で、自分の優先度に対応するタスク状態フラグを0
にセットして待ち状態とする。
要求が発生した場合でも、非同期I/O実行タスク管理
テーブル5内のそのユーザプログラムの優先度に対応す
るアドレスフィールドを参照して、アドレス値が0であ
れば、同様に生成・起動を行う。また、アドレス値が0
以外である場合は、対応するタスク状態フラグを参照す
る。このタスク状態フラグ値が1であればその非同期I
/O実行タスクは起動中状態であるので、受取ったデー
タを非同期I/Oバッファ31内に格納するのみでユー
ザプログラムに制御を戻す。また、タスク状態フラグが
0の時には、1にセットしてタスクアドレス値をもと
に、対応する同優先度の非同期I/O実行タスクを起動
してユーザプログラムに制御を戻す。実際の外部記憶装
置6に対する書込み処理は、起動された非同期I/O実
行タスクが自タスクと同一優先度の書込み要求データの
みを処理する。
求が発生した時点で、制御プログラムにより非同期I/
Oバッファにデータを保存すると共にユーザプログラム
と同じ優先度の非同期I/O実行タスクを生成し動作さ
せることによって、外部記憶装置への書込み動作を制御
しているので、外部記憶装置に対して適切なアクセスを
行なうことができ、データの再利用も適切に行なえ、デ
ータ処理システムの処理速度を向上できるという効果が
ある。
ーブルの構成図である。
図である。
の流れ図である。
Claims (1)
- 【請求項1】 処理優先度の異なる複数のユーザプログ
ラムの並列処理を行なうデータ処理システムのユーザプ
ログラムからのデータを外部記憶装置に出力する非同期
I/O制御方式において、ユーザプログラムからのデー
タを保持するための主記憶装置に設けられた非同期I/
Oバッファと、ユーザプログラムの優先度に対応して生
成された非同期I/O実行タスクのアドレスとタスク状
態とを管理する非同期I/O実行タスク管理テーブル
と、ユーザプログラムから外部記憶装置へのデータ出力
要求を受けて、データを前記非同期I/Oバッファのユ
ーザプログラムの優先度に対応する領域に格納させた後
に前記非同期I/O実行タスク管理テーブルを調べて同
優先度の非同期I/O実行タスクがないときは非同期I
/O実行タスクを生成し、この管理テーブルにアドレス
を登録しタスク状態を起動中として既存または生成した
タスクを起動する制御プログラムと、この制御プログラ
ムにより起動されて前記非同期I/Oバッファの自優先
度と同じ領域のデータをデータが無くなるまで外部記憶
装置に転送し、転送完了で前記非同期I/O実行タスク
管理テーブルの自優先度のタスク状態を待ち中して処理
を終了する優先度に対応する非同期I/O実行タスクと
を有することを特徴とする非同期I/O制御方式。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5241872A JP2821345B2 (ja) | 1993-09-29 | 1993-09-29 | 非同期i/o制御方式 |
US08/294,301 US5530871A (en) | 1993-09-29 | 1994-08-23 | Asynchronous input and output control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5241872A JP2821345B2 (ja) | 1993-09-29 | 1993-09-29 | 非同期i/o制御方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0798663A JPH0798663A (ja) | 1995-04-11 |
JP2821345B2 true JP2821345B2 (ja) | 1998-11-05 |
Family
ID=17080788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5241872A Expired - Lifetime JP2821345B2 (ja) | 1993-09-29 | 1993-09-29 | 非同期i/o制御方式 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5530871A (ja) |
JP (1) | JP2821345B2 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2940403B2 (ja) * | 1994-08-03 | 1999-08-25 | 株式会社日立製作所 | 並列計算機システムにおけるモニタデータ収集方法 |
US5907717A (en) * | 1996-02-23 | 1999-05-25 | Lsi Logic Corporation | Cross-connected memory system for allocating pool buffers in each frame buffer and providing addresses thereof |
US5784649A (en) * | 1996-03-13 | 1998-07-21 | Diamond Multimedia Systems, Inc. | Multi-threaded FIFO pool buffer and bus transfer control system |
US5797043A (en) * | 1996-03-13 | 1998-08-18 | Diamond Multimedia Systems, Inc. | System for managing the transfer of data between FIFOs within pool memory and peripherals being programmable with identifications of the FIFOs |
US6223243B1 (en) * | 1997-06-12 | 2001-04-24 | Nec Corporation | Access control method with plural users having I/O commands prioritized in queues corresponding to plural memory units |
WO2000042515A1 (fr) * | 1999-01-12 | 2000-07-20 | Fujitsu Limited | Dispositif de gestion des acces et procede de gestion des acces a un support d'enregistrement |
US6401145B1 (en) * | 1999-02-19 | 2002-06-04 | International Business Machines Corporation | Method of transferring data using an interface element and a queued direct input-output device |
US6345324B1 (en) * | 1999-02-19 | 2002-02-05 | International Business Machines Corporation | Apparatus for transferring data using an interface element and a queued direct input-output device |
US7523275B2 (en) * | 2003-04-10 | 2009-04-21 | International Business Machines Corporation | Method, system, and program for maintaining a copy relationship between primary volumes and corresponding secondary volumes |
CN107992358B (zh) * | 2017-11-13 | 2020-05-19 | 华中科技大学 | 一种适用于核外图处理***的异步io执行方法及*** |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4543626A (en) * | 1982-12-06 | 1985-09-24 | Digital Equipment Corporation | Apparatus and method for controlling digital data processing system employing multiple processors |
US4654788A (en) * | 1983-06-15 | 1987-03-31 | Honeywell Information Systems Inc. | Asynchronous multiport parallel access memory system for use in a single board computer system |
US4835672A (en) * | 1984-04-02 | 1989-05-30 | Unisys Corporation | Access lock apparatus for use with a high performance storage unit of a digital data processing system |
GB8711991D0 (en) * | 1987-05-21 | 1987-06-24 | British Aerospace | Asynchronous communication systems |
US4920486A (en) * | 1987-11-23 | 1990-04-24 | Digital Equipment Corporation | Distributed arbitration apparatus and method for shared bus |
JPH02236668A (ja) * | 1989-03-10 | 1990-09-19 | Hitachi Ltd | 入出力処理方法 |
US5353416A (en) * | 1989-10-25 | 1994-10-04 | Zenith Data Systems Corporation | CPU lock logic for corrected operation with a posted write array |
US5418925A (en) * | 1992-10-23 | 1995-05-23 | At&T Global Information Solutions Company | Fast write I/O handling in a disk array using spare drive for buffering |
-
1993
- 1993-09-29 JP JP5241872A patent/JP2821345B2/ja not_active Expired - Lifetime
-
1994
- 1994-08-23 US US08/294,301 patent/US5530871A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5530871A (en) | 1996-06-25 |
JPH0798663A (ja) | 1995-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2820752B2 (ja) | 密結合マルチプロセッサシステムにおけるキャッシュメモリ一致制御方法 | |
JP2821345B2 (ja) | 非同期i/o制御方式 | |
JPH0340868B2 (ja) | ||
JP2000003302A (ja) | 共有メモリ排他アクセス制御方法 | |
IE61306B1 (en) | Method and device to execute two instruction sequences in an order determined in advance | |
JP3260399B2 (ja) | 非同期i/oダイナミックプライオリティチェンジ方式 | |
JP2671160B2 (ja) | 例外処理方式 | |
JP2526728B2 (ja) | ディスクキャッシュ自動利用方式 | |
JP2998721B2 (ja) | 並列処理プログラムとコプロセッサとの間の排他制御方法およびその排他制御機能を有する計算システム | |
JP3130798B2 (ja) | バス転送装置 | |
JP3517884B2 (ja) | データ処理装置 | |
JP2856003B2 (ja) | 非同期データ入出力方式 | |
JP3135547B2 (ja) | データ転送制御方法 | |
JP2517859B2 (ja) | 並列プロセス管理方法 | |
CN117971717A (zh) | 多主机的访问控制方法、装置、电子设备及存储介质 | |
JP2594567B2 (ja) | メモリアクセス制御装置 | |
JP2584528Y2 (ja) | 情報処理装置 | |
JP2517851B2 (ja) | 並列プライオリティ制御方法 | |
JP2735400B2 (ja) | 非同期入出力制御方式 | |
JP2003131893A (ja) | 演算処理システム、コンピュータ・システム上でのタスク制御方法、並びに記憶媒体 | |
JP3006527B2 (ja) | クライアント/サーバ型データベースシステム | |
JP2752818B2 (ja) | データ入出力の非同期処理方式 | |
JPH04107634A (ja) | メモリデータバイパス制御方式 | |
JP2002259209A (ja) | 演算処理システム | |
JPH0346033A (ja) | ジヨブ間データ転送制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19980728 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070828 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080828 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080828 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090828 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090828 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100828 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110828 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110828 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120828 Year of fee payment: 14 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130828 Year of fee payment: 15 |
|
EXPY | Cancellation because of completion of term |