JPS62543B2 - - Google Patents

Info

Publication number
JPS62543B2
JPS62543B2 JP1349082A JP1349082A JPS62543B2 JP S62543 B2 JPS62543 B2 JP S62543B2 JP 1349082 A JP1349082 A JP 1349082A JP 1349082 A JP1349082 A JP 1349082A JP S62543 B2 JPS62543 B2 JP S62543B2
Authority
JP
Japan
Prior art keywords
input
output
queue
channel
cpu
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
Application number
JP1349082A
Other languages
English (en)
Other versions
JPS58129630A (ja
Inventor
Yoshihisa Shibata
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
Nippon Electric Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP1349082A priority Critical patent/JPS58129630A/ja
Publication of JPS58129630A publication Critical patent/JPS58129630A/ja
Publication of JPS62543B2 publication Critical patent/JPS62543B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Description

【発明の詳細な説明】 本発明は入出力制御装置に関する。情報処理装
置が周辺の入出力デバイス例えば磁気デスク、テ
レタイプ、ラインプリンタ等に対してデータの入
出力を行なう場合には、これらデータの入出力は
入出力制御装置を介して行なわれる。
一般に、入出力制御装置は複数のチヤンネルを
有し、さらにこれら各チヤンネルには複数のデバ
イスが割当てられている。従つて中央処理装置
CPUがある特定のデバイスに対してデータの入
出力を行なう場合には、CPUはそのデバイスの
属するチヤンネル番号と、そのデバイスのデバイ
ス番号とを指定してデータの入出力を行なう。
このように複数のチヤンネルが存在し、各チヤ
ンネルが複数のデバイスに共通に使用され、さら
にまた各デバイスの動作速度が、CPUの動作速
度に比較して一般に遥かに遅いため、CPUがこ
れらのデバイスに対してデータの入出力を行なう
場合には、これらの点を考慮し一般に下記のよう
に行なわれる。
CPU(CPUのオペーレーシヨンプログラム)
は、まず、この入出力デバイスが従うべき入出力
動作の詳細を規定したチヤンネルプログラムを作
成し、これを主記憶装置中の特定のメモリアドレ
スに格納する。つぎに、入出力制御装置に対し入
出力命令を指令する。この入出力命令は、これが
入出力命令であることを指定するオペコードと、
入出力を実行すべきデバイスの属するチヤンネル
番号と、このデバイスのデバイス番号と、さらに
主記憶装置中における上述のチヤンネルプログラ
ムの格納開始番地を示す情報とを含んでいる。
この入出力命令の指令を受けると、入出力制御
装置は直ちに指定されたチヤンネルおよびデバイ
スの現在の状態をチエツクし、そのチエツク結果
をコンデシヨンコードとしてCPUにリポートす
る。
このコンデシヨンコードCCは、例えば4段階
の異なる状態を区別して表示する。
CC=0は、指定されたチヤンネル、サブチヤ
ンネルおよびデバイスが、現在、この入出力命令
を実行できる状態にあり、従つてこの入出力命令
は直ちに実行開始されることを表示する。
CC=1は、指定されたデバイスが現在使用中
または割込保留中であることを表示し、CC=2
は現在このチヤンネルまたはサブチヤンネルが使
用中(ビジー状態)または割込保留中であること
を表示する。
また、CC=3は、指定されたチヤンネル、サ
ブチヤンネルまたはデバイスが現在障害状態にあ
るとかまたは実際に存在しないとかの理由のため
入出力動作の実行が不可能であることを表示す
る。
さて、前記CC=0のリポートを発生した場合
には、入力制御装置は直ちに主記憶装置中の指定
された番地から前記チヤンネルプログラムを順番
に読み出し、それに従つて指令された入出力動作
の実行を開始する。
一方、CC=0のリポートを受けたCPUは、そ
れによりこの入出力命令が成功したことを識別
し、実際の入出力動作の実行は入出力制御装置に
任せ、CPU自身は次のプログラムの実行に進
む。このようにして、比較的長時間を必要とする
入出力命令の実行をCPUのプログラムから入出
力制御装置の制御にうつし、これによつて入出力
命令のCPUプログラムに対するオーバーヘツド
を軽減している。
一方また、CC=3がCPUにリポートされた場
合には、いずれにしてもこの入出力命令の実行は
不可能であるため、CPUのプログラムはこの入
出力命令をこれ以上くりかえすことなく、次のプ
ログラムに進むことができる。
これに対し、CC=1またはCC=2がリポート
された場合には、CPUのプログラムはこれによ
り入出力命令の一時的な実行失敗を識別し、適当
な時間をおいて再び同じ入出力命令の実行を指令
する。
このように、従来装置において入出力命令が一
時的に実行に失敗した場合には、CPUのプログ
ラムはこれに対して適当な処理をほどこし、再び
同じ入出力命令の実行を指令しなければならな
い。これは入出力命令の実行に対しそれだけ
CPUプログラムに対するオーバーヘツドを増大
するという欠点を有している。
このような欠点を除去するために、入出力装置
の側で入出力命令を受けたデバイスにより待行列
を構成する手段を設け、CPUにより発行された
入出力命令を一時この待行列に登録し、対応する
チヤンネルおよびデバイスがこの入出力命令を実
行できる状態になつた時点で、これを待行列から
取りはずし、実行させるという方法が考えられ
る。
しかしながら、このような方法をとつても入出
力命令が発行されすでに待行列中に登録されてい
るデバイスに対し、更に二重に入出力命令が発行
される可能性があり、これに対する適切な対策が
従来知られていない。
本発明の目的は上述の問題に対する適切な対策
を提供するにある。
本発明の装置は、中央処理装置と主記憶装置と
チヤンネル制御装置と複数のチヤンネルと複数の
入出力デバイスとを含む情報処理装置において、
前記各チヤンネル対応に設けられ前記中央処理装
置からの入出力命令を受けてその起動を待つ前記
入出力デバイスにより入出力待行列を形成する手
段と、前記デバイス対応に設けられ前記待行列中
のデバイスに対し前記中央処理装置から新たに入
出力命令が二重に発行されたことを表示する二重
入出力要求表示手段とを設け、前記チヤンネル制
御装置は前記チヤンネルからの要請に応答して前
記入出力待行列を参照し入出力命令の起動を開始
し前記入出力待行列からデバイスを取りはずした
とき該デバイス対応の前記二重入出力要求表示手
段の表示を参照しそれに応答して前記中央処理装
置に通知する。
次に図面を参照して本発明を詳細に説明する。
第1図は本発明の一実施例を説明するためのブ
ロツク図である。
本実施例は中央処理装置(以下CPU)1、主
記憶装置(以下MM)2、チヤンネル制御装置
(以下CHC)3、複数のチヤンネルCH4−1,
……4−K……4−N、および各チヤンネルに属
する複数の入出力デバイスIOD5−1−1,5−
1−2,……5−1−M1,……5−K−1,…
…5−K−R,……5−K−MK,……5−N−
1,5−N−2,……5−N−MNを有してい
る。
前記CHC3および前記チヤンネル4−1〜4
−Nが入出力制御装置6を構成している。
また、CHC3には、第2図に示すように各チ
ヤンネル対応に入出力待行列ヘツダテーブル30
−1,……30−K,……30−Nと、各入出力
デバイス対応に入出力待行列連結テーブル31−
1−1,31−1−2,……31−1−M1,…
…31−K−1,……31−K−2,……31−
K−R,……31−K−MK,……31−N−
1,31−N−2,……31−N−MNと、さら
にまた各チヤンネル対応に入出力命令実行待フリ
ツプフロツプFF32−1,32−K,……32
−Nとを含んでいる。
前記各ヘツダテーブル30は、第3図に示すよ
うに、予め定めた一定のビツト幅を有するレジス
タから成り、対応するチヤンネルに入出力待行列
が存在するか否かの1ビツトの情報を格納する
VLDフイールドと、この入出力待行列が存在す
る場合、この待行列の先頭に登録された入出力デ
バイス対応の前記連結テーブル31を指示するポ
インタを格納するためのFSTフイールドと、同
じく待行列の最後尾に登録された入出力デバイス
対応の連結テーブル31を指示するポインタを格
納するためのLSTフイールドとを含んでいる。
また、前記各連結テーブル31は、第4図に示
すように、予め定めた一定のビツト幅を有するレ
ジスタから成り、前記入出力待行列において、こ
の連結テーブルに対応する入出力デバイスの、次
の順番の入出力デバイスが存在するか否かの1ビ
ツトの情報を格納するNXTフイールドと、この
NXTフイールドの内容が“1”の場合、上記次
の順番の入出力デバイス対応の連結テーブルを指
示するポインタを格納するためのNXTDPフイー
ルドと、この連結テーブル自身に対応する入出力
デバイスが現在入出力待行列中に加わつているか
否かの1ビツトの情報を格納するENQフイール
ドと、この入出力デバイスに、後述するように二
重入出力要求があつたことを表示する二重入出力
要求表示フイールド(以後DIフイールド)と、
さらにこの入出力デバイスに対するチヤンネルプ
ログラム(チヤンネルコマンドワードCCW)の
MM2中における格納開始番地を指示するポイン
タを格納するCCWADフイールドとを含んでい
る。
さて、本実施例によるデータ入出力動作は下記
のように行なわれる。
今、一例として、第K番目のチヤンネル(つま
りチヤンネル4−K)の第R番目の入出力デバイ
ス(つまりデバイス5−K−R)に対するデータ
の入出力動作について説明する。第5図、第6図
および第7図は本実施例の動作を説明するための
フローチヤートである。
CPU1のオペレーシヨンプログラムOSはま
ず、入出力デバイス5−K−Rが行うべき入出力
動作の詳細を規定したチヤンネルプログラム(こ
れをCCW:チヤンネルコマンドワードという)
を作りこれをMM2の特定のメモリアドレスに格
納する。
ついでCHC3をコールし、DAW(デバイスア
ドレスワード:これは実行すべきオペーレーシヨ
ン、つまり現在の場合は入出力命令、を指定し、
かつ、このオペレーシヨンを実行すべき入出力デ
バイスのチヤンネル番号、現在の例ではK、およ
びデバイス番号、現在の例ではR、を含んでいる
ワードである)とCAW(コマンドアドレスワー
ド:これは前記CCWのMM2中における格納開
始番地を指示するポインタ)とを供給し(第5図
ア)、CHC3からのコンデシヨンコードによるリ
ポートの応答を待つ(第5図イ)。
一方、CPU1からの前記コール(第5図ア)
を受けたCHC3は供給された前記DAWとCAW
とを取り出し(第5図エ)、これを解読すること
によつて指定されたオペーレーシヨンが入出力命
令SIOかそれ以外の命令かを判定する(第5
図オ)。もしこれが、現在の場合のように、入出
力命令SIOである場合には、前記DAWで指定さ
れたチヤンネルKが現在有効か否か(実際に存在
しかつ現在障害状態でないかどうか)をチエツク
する(第5図カ)。もし有効でなければコンデシ
ヨンコードを3とし(CC=3)、CPU1に対し
てリポートする(第5図ク)。
またもし有効な場合には、供給された前記
DAWに含まれるチヤンネル番号Kとデバイス番
号Rで指定される連結テーブル31−K−Rの内
容を読む(第5図キ)。そしてそのENQフイール
ドが“1”か否かをチエツクする(第5図ケ)。
後述するように、このENQフイールドが
“1”であるということは、対応するデバイスが
現在すでに入出力命令を受けて待行列に参加して
いることを表示している。従つて、この時点で
ENQフイールドをチエツクしたとき(第5図
ケ)、これが“1”であるということは、すでに
以前に入出力命令が出され現在待行列に登録され
ているデバイスに今回、二重に入出力命令が発行
されたことを意味する。この場合には、CHC3
はコンデシヨンコードを2(CC=2)として
CPU1にリポートし(第5図コ)、さらに、この
デバイスに二重入出力命令要求があつたことを表
示するため、前記二重入出力要求表示フイールド
(DIフイールド)を“1”とする(第5図サ)。
一方、第5図ケのチエツクでENQフイールド
が“0”の場合には正常の入出力命令要求になる
ので、CHC3はコンデシヨンコードを0(CC=
0)としてCPU1にリポートし(第5図シ)、こ
の入出力命令を待行列に登録し(第5図ス)、さ
らに、このチヤンネル対応の入出力命令実行待フ
リツプフロツプFF32−Kをセツトする(第5
図セ)。
なお、待行列に登録する対象は、上述のように
入出力命令と考えてもよいが、またその入出力命
令の指定する入出力デバイスと考えてもよいし、
あるいはさらにその入出力デバイス対応の連結テ
ーブルと考えてもよい。第5図スの待行列に登録
するための具体的な手続きは下記の通りである。
まず、この入出力命令の対象となるデバイスが
待行列に参加したことを表示するため、対応する
連結テーブル31−K−RのENQフイールドを
“1”とし、またこれとともに前記CAW(この入
出力命令のチヤンネルプログラムのMM2におけ
る格納開始番地を示すポインタ)をこの連結テー
ブル31−K−RのCCWADフイールドに書き込
む。
つぎに、このチヤンネル4−Kに対するヘツダ
テーブルのVLDフイールドをチエツクし、もし
これが“0”の場合には現在まだこのチヤンネル
4−Kに待行列が存在せず、このデバイス5−K
−Rが待行列の先頭でかつ最後尾に登録され、こ
れから新らしく待行列を構成することになるの
で、ヘツダテーブル30−KのVLDフイールド
を“1”とし、かつFSTフイールド(これは待
行列の先頭の連結テーブルを指示するポインタ)
およびLSTフイールド(これは待行列の最後尾
の連結テーブルを指示するポインタ)に、ともに
連結テーブル31−K−Rを指示するポインタを
格納する。
また、VLDフイールドをチエツクしたときも
しこれが1の場合には、このチヤンネル4−Kに
すでに待行列が存在し、その最後尾のデバイス対
応の連結テーブルがLSTフイールドのポインタ
で指示されている。今回新らしく入出力命令が出
されてたデバイス対応の連結テーブルは、その後
に新らしく最後尾の連結テーブルとして登録され
ることになる。そこで、LSTフイールドのポイ
ンタで指示されている今まで最後尾にあつた連結
テーブルのNXTフイールルド(これは待行列中
に次の順番のデバイスが存在するか否かを示す)
を“1”とし、かつNXTDPフイールド(これは
NXTフイールドが“1”の場合に待行列中の次
の順番の連結テーブルを指示するポインタ)に今
回新らしく登録されるデバイス対応の連結テーブ
ル31−K−Rを指示するポインタを格納する。
それとともに、この同じポインタをヘツダテーブ
ル30−KのLSTフイールドに格納し、今回登
録されたデバイス対応の連結テーブルが待行列の
最後尾であることを表示する。以上が第5図スの
待行列に登録するための具体的なプロセスであ
る。
さて、以上のように、CHC3は新しく出され
た入出力命令に対し、もし指定されたチヤンネル
が無効で全くこの命令が実行される可能性がない
場合にはCC=3でリポートし、また、指定され
たデバイスがすでに待行列中に登録されているデ
バイスに対して二重に入出力命令が発行された場
合にはCC=2でリポートする。それ以外の入出
力命令の発行に対してはCC=0でリポートしこ
の場合にはこれを前述のようにして待行列に登録
する。
以上いずれかのコンデシヨンコードを受けると
(第5図イ)、CPUプログラムは次の命令の実行
に進むが(第5図ウ)、いずれの場合においても
CPUのプログラムはすでに発行した入出力命令
に対してはこれ以上係わることなくCHC3側に
任せることができる(必要な場合にはCHC3側
から割込要求が起るのでそれが起るまではCPU
は他の処理に専念することができる)。
とくにCC=2でリポートされた場合には、本
実施例によると、CPU1はこれによりこの入出
力命令が待行列中に登録されているデバイスに対
する二重の入出力命令要求であることを識別す
る。そしてこれ以上この入出力命令を繰り返すこ
となく他の処理に進む。
一方、CHC3は、後述するように、このデバ
イスが待行列から取りはずされ、二重の入出力命
令要求が起るという状況が解消した時点で、
CPU1に対して割込みを発生しこれを知らせ
る。CPU1はこの割込に応答し、この入出力命
令を再発行することにより無駄な命令の発行を繰
り返すことなく効率的にこれを処理できることに
なる。
なお、第5図オのオペレーシヨン判定において
解読した命令が入出力命令以外の命令(例えばテ
スト命令等)である場合の処理は従来装置と同様
であり説明を省略する。
さて、こうして、入出力命令が待行列に登録さ
れ(CC=0の場合)、あるいは二重の入出力命令
要求である場合にはそのかわりに対応する連結テ
ーブルのDIフイールドに“1”がセツトされた
が(CC=2の場合)、これらに対する以後の処理
は以下のようになる。
すなわち、各チヤンネル4−1〜4−Nに対応
しそれぞれのチヤンネルが現在ビジ−状態(つま
り何等かの処理を実行中で別の処理を実行できな
い状態)にあるか、またはアイドル状態(つま
り、現在何等の処理も行なつておらず新らしい処
理にいつでも応じられる状態)にあるかを監視す
るチヤンネル状態監視プログラムが動作してい
る。前記チヤンネル4−Kに対するこの監視プロ
グラムはチヤンネル4−Kがアイドル状態か否か
を監視している(第6図ア)。このチヤンネル4
−Kのある入出力命令の実行が終了し一時このチ
ヤンネル4−Kがアイドル状態になると、このプ
ログラムはこのチヤンネル4−Kに対応する前記
入出力命令実行待フリツプフロツプ32−Kがセ
ツトされているか否かをチエツクし(第6図
イ)、もしこれがセツトされている場合にはCHC
3に対して割込みを発生し(第6図ウ)、CHC3
の入出力命令待行列処理プロセスを起動する(第
6図エ)。
このプロセスが起動すると、まず対応するチヤ
ンネルのヘツダテーブル30−Kを読み(第6図
オ)、このヘツダテーブル30−KのFSTフイー
ルドおよびLSTフイールドで指定され前述のよ
うにして、相互に連結されてこの待行列を構成し
ている各連結テーブル対応のサブチヤンネルを順
番にチエツクし、アイドル状態のものをさがす
(第6図カ,キ)。こうしてアイドルのサブチヤン
ネルを有するデバイスが見出されると、このデバ
イスを待行列から取りはずす(第6図ク、この取
りはずしのための処理は前述の待行列に登録する
場合の処理の逆を行なえばよいので説明を省略す
る)。
次にこの取りはずしたデバイス対応の連結テー
ブルの二重入出力要求表示フイールド(DIフイ
ールド)が“1”か否かをチエツクする(第6図
ケ)。これが“1”の場合とは、前述のように、
このデバイスに対しCPU1が別の入出力命令を
発行したがそれはこの待行列に登録されず、その
かわりCC=2でCPU1にリポートされたもので
ある。現在、このデバイスは待行列から取りはず
され、入出力命令を受けると正常に待行列に登録
できる状態になつた。そこで、これをCPU1に
知らせ、前記CC=2でリポートした入出力命令
の再発行を要求するためCPU1に割込要求を出
す(第6図コ)。
これがすむと、取りはずしたデバイスの連結テ
ーブルのCCWADフイールドに格納されたポイン
タの指示に従つてMM2から最初のCCWを取り
出し、このデバイスに指示された入出命令実行の
起動処理に入る(第6図サ)。
前記DIフイールドが“0”の場合には、勿論
CPU1を何等わずらわすことなく直ちに入出力
命令実行の起動処理に入る(第6図サ)。
こうして、待行列に登録された入出力命令は、
その入出力命令が指示するチヤンネルおよびサブ
チヤンネルがアイドルになつたものからつぎつぎ
に待行列から取りはずされ処理されていく。チヤ
ンネル4−Kの待行列からすべての入出力命令が
取りはずされ、この待行列が消滅すると、このチ
ヤンネル4−Kの入出力命令実行待フリツプフロ
ツプ32−Kはリセツトされる。
さて、最後に、前述の第6図コによるCPUへ
割込要求を行なつた場合のプロセスは次のように
ある。
CHC3は、割込要求を出すときにはその割込
要求に対応するチヤンネル番号と、入出力デバイ
ス番号とを保持しておき、CPU1が割込を受付
けたときはこのチヤンネル番号とデバイス番号と
を用いて必要なヘツダテービルおよび連結テーブ
ルにアクセスする。上記割込をCPU1が受けつ
けると、CHC3は上述の保持しているチヤンネ
ル番号デバイス番号を用いて対応するデバイスの
連結テーブルを読む(第7図ア)。この連結テー
ブルのDIフイールドをチエツクすることにより
(第7図イ)、このフイールドが“1”の場合に
は、前述の第6図コに対するCPU1への割込要
求の受付けであることを識別する。この場合は、
先にCC=2でリポートした入出力命令に対する
デバイスが待行列から開放されたことになるの
で、この入出力命令の再発行をCPU1に要請す
る。そのためこれに対して予め定められたフオー
マツトをもつチヤンネルステータスワードCSW
をMM2の予め定めた領域に格納してCPU1にこ
れを伝達する(第7図ウ)。以上で二重入出力要
求表示フイールド(DIフイールド)におけるビ
ツトの役目はすんだのでこのDIフイールドを
“0”リセツトする(第7図エ)。
またCPU1側は割込要求を受けつけてこの伝
達された情報により再発行要求を知つた時点で前
記CC=2でリポートされた入出力命令を再発行
する(図示せず)。
なお、CHC3からCPU1に対する割込みは、
上述のもののほかに、前述の第6図サの起動処理
で起動した入出力命令の実行がすんで、その結果
をCPU1に報告する場合にも用いられるが、こ
の場合には第7図イで連結テーブルのDIフイー
ルドをチエツクするとこのフイールドに“1”が
ないためにこれを識別し、入出力命令実行結果に
対するCSWをMM2の前記領域に格納してCPU
1に報告する(第7図オ)。
以上述べたように、本実施例を用いると、
CPUからの入出力命令が、CHC側に設けた入出
力待行列にすでに登録されているデバイスに対し
てダブつてなされた場合には、CHCはこれに対
して予め定めたコンデシヨンコード2(CC=
2)でリポートし、さらに、入出力待行列に対す
る取りはずし処理が進んで、該デバイスが待行列
から取りはずされると、CHCはCPUに対してこ
のCC=2でリポートした入出力命令の再発行を
要求する割込みを発生するような入出力制御装置
を提供することができる。
このためCPUは、CC=2でリポートされた場
合にはCHCからの割込をみてから新たにこの入
出力命令を再発行すればよいので、CPUソフト
ウエアに対するオーバヘツドを軽減できる。ま
た、上記により、CPUはCHCに対してCC=2と
なるような無駄な入出力命令を繰り返えし発生し
ないのでCHCのオーバーヘツドが軽減する。
なお、本実施例の第5図、第6図および第7図
のフローチヤートで示したCHCおよびチヤンネ
ルCHの動作はフアームウエアを用いて容易に実
現することができる。また勿論、専用のハードウ
エアを用いて実現することも可能である。
また、本実施例においては入出力実行待フリツ
プフロツプ32−1〜32−Nの物理的位置を
CHC3内としたが勿論これを各チヤンネル中に
おいてもよい。
また、本実施例に用いた入出力待行列ヘツダテ
ーブル30−1〜30−N、入出力待行列連結テ
ーブル31−1−1〜31−N−MNおよび入出
力命令実行待フリツプフロツプ32−1〜32−
NはRAMの予め定めた領域のそれぞれのアドレ
スの内容として構成することもできる。
また使用したコンデシヨンコードCCの値も単
なる一例であつてこれに限るものではない。
なおまた、本実施例に用いた連結テーブルの二
重入出力要求表示フイールド(DIフイールド)
のかわりに、各デバイス対応に二重入出力要求表
示フリツプフロツプを用いてもよい。
以上のように本発明を用いると、CPUからの
入出力命令がCHC側に設けた入出力待行列にす
でに登録されているデバイスにダブつてなされた
場合にはCHCは予め定めたリポートをすること
でCPUにこれを知らせ、該デバイスが待行列か
ら取りはずされるとCHCはこの情報をCPUに伝
達するための割込みを発生するような制御を行な
う入出力制御装置を提供することができる。
このためCPUは上記リポートを受けた場合に
はCHCからの割込みをみてからこの入出力命令
を再発行すればよいのでCPUソフトウエアに対
するオーバーヘツドを軽減できるという効果があ
る。
また上記によりCPUはCHCに対して無駄な入
出力命令を繰り返し発生しないのでCHCに対す
るオーバーヘツドが軽減できるという効果があ
る。
【図面の簡単な説明】
第1図は本発明の一実施例を説明するためのブ
ロツク図、第2図は本実施例で用いる入出力待行
列ヘツダテーブル、入出力待行列連結テーブルお
よび入出力命令実行待フリツプフロツプを説明す
るための図、第3図は前記入出力待行列ヘツダテ
ーブルのフオーマツトを説明するための図、第4
図は前記入出力待行列連結テーブルのフオーマツ
トを説明するための図、第5図、第6図および第
7図は本実施例の動作をするためのフローチヤー
トである。 図において、1……中央処理装置CPU、2…
…主記憶装置MM、3……チヤンネル制御装置
CHC、4−1〜4−N……チヤンネルCH、5−
1−1〜5−N−MN……入出力デバイスIOD、
6……入出力制御装置、30−1〜30−N……
入出力待行列ヘツダテーブル、31−1−1〜3
1−N−M……入出力待行列連結テーブル、32
−1〜32−N……入出力命令実行待フリツプフ
ロツプ。

Claims (1)

  1. 【特許請求の範囲】 1 中央処理装置と主記憶装置とチヤンネル制御
    装置と複数のチヤンネルと複数の入出力デバイス
    とを含む情報処理装置において、 前記各チヤンネル対応に設けられ前記中央処理
    装置からの入出力命令を受けてその起動を待つ前
    記入出力デバイスにより入出力待行列を形成する
    手段と、 前記デバイス対応に設けられ前記待行列中のデ
    バイスに対し前記中央処理装置から新たに入出力
    命令が二重に発行されたことを表示する二重入出
    力要求表示手段とを設け、 前記チヤンネル制御装置は前記チヤンネルから
    の要請に応答して前記入出力待行列を参照し入出
    力命令の起動を開始し前記入出力待行列からデバ
    イスを取はずしたとき該デバイス対応の前記二重
    入出力要求表示手段の表示を参照しそれに応答し
    て前記中央処理装置に通知するようにしたことを
    特徴とする入出力制御装置。
JP1349082A 1982-01-29 1982-01-29 入出力制御装置 Granted JPS58129630A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1349082A JPS58129630A (ja) 1982-01-29 1982-01-29 入出力制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1349082A JPS58129630A (ja) 1982-01-29 1982-01-29 入出力制御装置

Publications (2)

Publication Number Publication Date
JPS58129630A JPS58129630A (ja) 1983-08-02
JPS62543B2 true JPS62543B2 (ja) 1987-01-08

Family

ID=11834552

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1349082A Granted JPS58129630A (ja) 1982-01-29 1982-01-29 入出力制御装置

Country Status (1)

Country Link
JP (1) JPS58129630A (ja)

Also Published As

Publication number Publication date
JPS58129630A (ja) 1983-08-02

Similar Documents

Publication Publication Date Title
JPH0594317A (ja) 仮想計算機の入出力割り込み処理方式
JPS62543B2 (ja)
JPS62541B2 (ja)
JPS62542B2 (ja)
JP2859396B2 (ja) データ処理システム
JPH01309445A (ja) データ転送方式
JPH0520049A (ja) 制御メモリの修正機能を有する情報処理システムおよび制御メモリの修正方法
JP2000057083A (ja) プロセッサシステムにおける入出力制御装置
JPS63201822A (ja) データ処理システム
JPH09305536A (ja) バス転送方法及びそのための情報処理装置
JP2000010899A (ja) 入出力処理システム及びその周辺装置制御方法並びにその制御プログラムを記録した記録媒体
JPH0337220B2 (ja)
JPH01228045A (ja) 入出力制御方法
JPS62229350A (ja) 指令伝達制御方式
JPS59220823A (ja) インタフエ−ス制御方式
JPH0690698B2 (ja) チャネル装置制御方式
JPH0359464B2 (ja)
JPH0432421B2 (ja)
JPS63245754A (ja) 情報処理システムの入出力制御方式
JPS61239329A (ja) サービス処理装置起動制御装置
JPH03246654A (ja) データ転送制御方法
JPS61156352A (ja) 命令キュー管理処理方法
JPH0566628B2 (ja)
JPH1027153A (ja) バス転送装置
JPH0248760A (ja) 対周辺装置アクセス方法