JP4202812B2 - 入出力制御装置および入出力制御方法 - Google Patents

入出力制御装置および入出力制御方法 Download PDF

Info

Publication number
JP4202812B2
JP4202812B2 JP2003126127A JP2003126127A JP4202812B2 JP 4202812 B2 JP4202812 B2 JP 4202812B2 JP 2003126127 A JP2003126127 A JP 2003126127A JP 2003126127 A JP2003126127 A JP 2003126127A JP 4202812 B2 JP4202812 B2 JP 4202812B2
Authority
JP
Japan
Prior art keywords
port
busy
input
channel
speed
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 - Fee Related
Application number
JP2003126127A
Other languages
English (en)
Other versions
JP2003303163A (ja
Inventor
進 小山
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2003126127A priority Critical patent/JP4202812B2/ja
Publication of JP2003303163A publication Critical patent/JP2003303163A/ja
Application granted granted Critical
Publication of JP4202812B2 publication Critical patent/JP4202812B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【産業上の利用分野】
本発明は、ホストコンピュータ側の複数のチャネル装置を複数の入出力ポートに個別に接続して入出力要求を処理する入出力制御装置に関し、特に、転送速度の異なるチャネルバスを使用した入出力制御装置及び入出力制御方法に関する。
【0002】
【従来の技術】
図26は、磁気テープ装置を用いた入出力サブシステムの一例である。入出力サブシステムは、入出力制御ユニットとして機能する磁気テープ制御ユニット410と、入出力装置として機能する複数の磁気テープドライブユニット412−1〜412−4で構成される。磁気テープドライブユニット412−1〜412−4には、デバイス機番#1〜#4が定義される。
【0003】
磁気テープ制御ユニット410は例えば2つの入出力ポート420−1,420−2をもつ。入出力ポート420−1,420−2にはポート番号A,Bが定義される。入出力ポート420−1,420−2にはホストコンピュータ414−1,414−2のチャネル装置416−1,416−2がチャネルバス418−1,418−2を介して接続される。チャネル装置416−1,416−2にはチャネル番号A,Bが定義される。尚、以下の説明は、単にチャネルA,B及びポートA,Bと表わす。
【0004】
ホストコンピュータによる入出力動作を簡単に説明する。例えばホストコンピュータ414−1で磁気テープドライブユニット412−1にロードされた磁気テープに対する入出力要求、例えばライト要求が発生したとする。ホストコンピュータ414−1のチャネルAは、まず入出力ポートAに対し磁気テープドライブユニット412−1のデバイス機番#1を指定したスタートI/O要求(起動要求)を発行する。
【0005】
磁気テープ制御ユニット410は、ポートAからのスタートI/O要求に対しポートBがチャネルBと結合中か否かチェックする。ポートBが結合中になければ、ポートAに対するスタートI/O要求を受け入れてチャネルAと結合し、スタートI/O要求の正常終了を応答し、コマンドシーケンスの転送処理を行う。一方、チャネルAからのスタートI/O要求をポートAで受けた際に、チャネルBが結合中であった場合は、ビジィ応答を返す。そして、チャネルBとポートBの結合による転送処理が終了すると、ポートBからチャネルBにユニットエンドのステータス応答が行われ結合が切り離される。これに伴ないポートAからチャネルAにもビジィ解除を示すビジィエンドが行われ、ビジィ応答により待ち状態にあるチャネルAから、再度、ポートAに対し起動要求が行われる。
【0006】
【発明が解決しようとする課題】
ところで、このような複数のチャネルからの入出力要求を処理する入出力制御装置にあっては、各チャネルの入出力要求に対し、ある程度、均等にサービスを行う必要がある。しかし、チャネルバスの転送速度が異なったり、電気チャネルバスや光チャネルバスのようにチャネルによって異なった転送プロトコルが採用されている場合、どうしても高速チャネルのサービスへ偏る傾向になり、低速チャネルに対するサービスは低下する問題点があった。
【0007】
またシステム環境として、高速ホストコンピュータと中・低速ホストコンピュータが混在している場合が多く、更に、高速ホストコンピュータと中・低速ホストコンピュータはクロスコール可能に接続されている。このような場合にも、同様な問題が発生する。
これを図26について説明すると次のようになる。例えばチャネルAが低速チャネルであり、チャネルBが高速チャネルであったとする。この場合の入出力制御は例えば図27のタイムチャートのようになる。
【0008】
いま高速チャネルBからスタートI/O要求500をポートBに行い、正常終了による結合完了応答502が得られると、高速チャネルBとポートB間でのコマンドシーケンスの転送処理504,506が行われる。
この転送処理504,506の間に、低速チャネルAからスタートI/O要求508をポートAに発行したとすると、ポートBが結合中にあるため、ビジィ応答510が返される。
【0009】
転送処理506が終了するとポートBからユニットエンド(Unit End)512が高速チャネルBに返され、結合が解除される。このユニットエンド512に伴ない、次にポートAからビジィ解除待ちにある低速チャネルAにビジィ解除を示すビジィエンド514が返される。ここでユニットエンド512を受けた高速チャネルBで次の入出力要求が発生していたとすると、直ちに高速チャネルBから起動要求としてのスタートI/O要求516がポートBに出され、結合完了応答518を経て再び転送処理520,522に入る。
【0010】
一方、ビジィエンド514を受けた低速チャネルAは、ビジィ解除を認識してスタートI/O要求524をポートAに出す。しかし、ビジィエンド514を出してからスタートI/O要求524がポートAで受信されるまでに時間がかかり、この間に、高速チャネルBからのスタートI/O要求516でポートBが結合中になっている。このため低速チャネルAからのスタートI/O要求524に対しポートAから再びビジィ応答526が出され、低速チャネルAは再度、ビジィ解除待ちとなる。
【0011】
このため高速チャネルBに入出力要求が続く限り、低速チャネルAはスタートI/O要求、ビジィ応答、ビジィエンドのループ処理が繰り返され、入出力要求が受け入れられずサービスの低下が発生する。最悪の場合、このループ処理が長時間に亘ることで、低速チャネルAのホストコンピュータは、チャネル装置や入出力サブシステムに何らかの異常が起きたものと判断するチェック・コンディションとなってしまう問題がある。
【0012】
また制御方法によっては、高速チャネルからの入出力要求が連続した場合、低速チャネルAに対して高速チャネル側での結合終了に伴なうビジィエンドを応答する時間も無くなり、ビジィ解除待ちにある低速チャネルはいくら待ってもビジィエンドが得られず、ビジィ解除待ちがタイムアウトとなって低速チャネルの入出力要求がエラー終了となる事態も発生する。
【0013】
このように特定のチャネルに入出力制御装置のサービスが偏ってしまう問題を解決する方法として、各入出力ポートが均等にサービスされるように、時分割でルートの優先度を変化させる方法がある。
図28は入出力制御装置にポートA〜Hの8チャネルを設けた場合であり、クロックによりポートA〜Hに順番に優先度を割り当てていく。例えば時刻t0 で全入出力ポートA〜Hに起動要求があった場合、このとき入出力ポートCのスロットにクロックがあって優先度を設定しており、入出力ポートCでの結合が受理される。それ以外の入出力ポートについては、自動的にビジィ応答が報告される。
【0014】
また時刻t0 で入出力ポートB,Eの2つに起動要求があったとすると、入出力ポートEのスロットにクロックが変化した時刻t1 で入出力ポートEの結合が受理され、入出力ポートBについては自動的にビジィ応答が報告される。
このような時分割でルートの優先度を変化させる方法は、各チャネルバスが同一性能で、且つ電気チャネルバス又は光チャネルバスといったプロトコルが同じ場合は有効である。しかし、転送速度が異なったり、電気チャネルと光チャネルが混在したプロトコルの異なる場合には、あまり有効ではない。
【0015】
本発明の目的は、チャネルと入出力ポート間のチャネルバス速度が異なっても、特定のポートに偏ることなく均等に入出力処理をサービスできる入出力制御装置及び制御方法を提供する。
【0016】
【課題を解決するための手段】
図1及び図2は本発明の原理説明図である。
まず本発明は、異なる転送速度のチャネルバスを介して上位装置側の複数のチャネル装置と複数の入出力ポートを接続した入出力制御装置を対象とする。具体的には、転送速度の異なるチャネルバスを介して上位装置側の高速チャネル装置及び低速チャネル装置の各々に接続された高速入出力ポート及び低速入出力ポートを有する入出力制御装置を対象とする。
【0017】
本発明は、図1(A)のように、入出力制御装置10における入出力ポートA,Bの各々に、他の入出力ポートの転送終了に伴いビジィ解除を応答から起動要求を受信するまでの起動時間を計測して記憶する起動時間計測記憶部48を設ける。そしてルート制御部46によって、高速チャネル装置Bから高速入出力ポートBに起動要求を受けた際に、起動時間計測記憶部48に記憶した速入出力ポートBの起動時間T2に亘って速入出力ポートBに対する起動要求を待つ。この待ち時間中に速入出力ポートBに起動要求があれば、対応する速チャネル装置Bと結合して転送処理を行う。
【0018】
この場合、速チャネル装置Aに対してはビジィ応答とする。また待ち時間に亘り速入出力ポートBから起動要求がなかった場合は、速チャネル装置Aと速入出力ポートAを結合して転送処理を行う。
本発明は、更に、各入出力ポートのビジィ率を計測して記録するビジィ率計測記憶部50を設ける。この場合、起動時間計測記憶部48は、各入出力ポートA,Bの起動時間T1,T2を計測する毎に、最大時間Tmax 、平均時間Tav及び最小時間Tmin を生成して記憶する。またルート制御部46は、ビジィ率計測記憶部50に記憶した各入出力ポートA,Bのビジィ率R1,R2が均等になるように、最大時間、平均時間
【0019】
ビジィ率Rとしては、各入出力ポートA,B毎に、計測したビジィ応答回数をチャネル装置からの入出力起動回数で割って算出する。ビジィ率に基づく待ち時間の設定としては、低速入出力ポートAのビジィ率R1が高速入出力ポートBのビジィ率R2より大きい場合は最大時間Tmax を選択して設定し、低速入出力ポートAのビジィ率R1が高速入出力ポートBのビジィ率R2に等しい場合は平均時間Tavを選択して設定する。さらに低速入出力ポートAのビジィ率R1が高速入出力ポートBのビジィ率R2より小さい場合は最小時間Tmin を選択して設定する。
【0020】
また前記発明の変形として次のようにする。まず入出力制御装置に、低速入出力ポートAから低速チャネル装置Aにビジィ解除を応答してから起動要求を受信するまでの起動時間を計測する起動時間計測部を設ける。ルート制御部46は、低速入出力ポートAからのビジィ解除の応答時に、高速入出力ポートBに対する高速チャネル装置Bからの処理要求を、計測した起動時間に亘り待たせ、その間に低速入出力ポートBに対する低速チャネル装置Bから処理要求を受け付ける。
【0021】
また起動時間計測部の計測時間に基づいて、ルート制御部46の待ち時間を可変させる待ち時間設定部を設けてもよい。更に、オペレータの入力操作によって、ルート制御部46の待ち時間を設定させる待ち時間設定部を設けてもよい。
また本発明は、図1(B)のように、判定部68によって、複数の入出力ポートA,Bのいずれかで、起動要求に対するビジィ応答と他の入出力ポートの転送終了に伴うビジィ解除(ビジィエンド)の応答とが繰り返されるループ状態の回数を計数し、このループ回数が所定値を越えるか否か判定する。
【0022】
判定部68でループ回数が所定値を越える入出力ポートが判定された場合、ルート制御部46が判定入出力ポートに対し起動要求の受付けを優先的に割り付ける。即ち、ルート制御部46は、優先割付け入出力ポートに対する起動要求のみを受付け、他の入出力ポートに対する起動要求に対してはビジィ応答する。
また本発明は、図1(C)のように、ビジィ応答時刻記憶部70で複数の入出力ポートA,Bの各々につき、起動要求に対するビジィ応答を行った時刻を記憶する。処理ポート決定部72は、起動要求に対する転送処理の終了毎に、ビジィ応答時刻の中の最も古い応答時刻をもつ入出力ポートを処理ポートに決定する。ルート制御部46は、決定した入出力ポートに対し起動要求の受付けを優先的に割り付ける。
【0023】
また本発明は、図2(D)のように、ルート制御部46によって特定のチャネル装置Bと入出力ポートBとの結合中に、他の入出力ポートAに他のチャネル装置Aから起動要求があった場合、再試行割込み処理部74が他の入出力ポートから再試行ステータスを応答して他のチャネル装置との結合を切り離す。
そして、現在処理中の入出力ポートとチャネル装置の結合終了時に、試行割込み処理部74は、他の入出力ポートAから再試行開始の割込み通知を他のチャネル装置Aに通知して起動要求を再試行させる。
【0024】
また本発明は、図2(E)のように、ルート制御部46によって特定のチャネル装置Bと入出力ポートBとの結合中に所定の割込条件が成立した場合、例えば割込タイマ80がタイムアップした場合、再試行割込み処理部76によって割込み処理を行う。この再試行割込み処理は、
(1)入出力ポートBからチャネル装置Bに再試行ステータスを応答して処理を中断して結合を切り離す。
【0025】
(2)切離しが済むと、全てのポートA,Bについて、それまでのビジィ応答状態をチェックし、優先処理ポートを決定する。例えば、以前にビジィ応答を行ったポートAを優先処理ポートに決定する。
(3)続いて、優先処理ポートAからチャネル装置Aにエンドステータスを応答して起動要求を行わせる。
【0026】
(4)この起動要求に伴なう転送処理が終了すると、再試行割込み処理部76は、入出力ポートBからチャネル装置Bに再試行開始の割込みを通知し、中断した処理を再開させる。
ここで再試行割込みの割込条件としては、
▲1▼入出力ポートの結合時間が一定時間に達したこと、
▲2▼結合中の入出力ポートのコマンド処理回数が所定値に達したこと、
▲3▼入出力ポートの結合中に、他の入出力ポートに対する起動要求に対するビジィ応答でビジィ率が所定値に到達したこと、
等とする。
【0027】
また本発明は、図2(F)のように、複数の入出力ポートA,B毎にコマンド解析実行部92,94を設ける。例えばコマンド解析実行部92は、他の入出力ポートBの結合中に、入出力ポートAの起動要求に伴って受信したコマンドが実行可能なコマンドか否か解析し、実行可能なコマンドであれば起動要求を受け付けて内部資源に対するコマンド処理を実行する。
【0028】
具体的には、他の入出力ポートBの結合によって内部資源のデータ転送を行っている場合、別の内部資源で且つデータ転送を伴わない制御系のコマンドであれば、入出力ポートAの起動要求を受け付けて他の内部資源に対するコマンド処理を実行する。
内部資源は、データバスに対し独立した制御バスを備えた複数の入出力装置、例えば磁気テープドライブユニット12である。
【0029】
【作用】
このような本発明の入出力制御装置及び方法によれば、次の作用が得られる。本発明は、学習方式ということができる。高速のチャネル装置に入出力制御のサービスが偏ってしまう一因として、ビジィ解除待ちにあるチャネルがビジィ解除の通知(ビジィエンド)を受けてから起動要求を出すまでの速さが上げられる。一般に高速チャネルは、この時間が短く、低速チャネルは長い。
【0030】
そこで、各入出力ポートにタイマを設け、ビジィ解除を応答してから起動要求を受けるまでの起動時間をダイナミックに計測して記憶する。この起動時間の計測結果は、最大値、最小値、平均値に分けて算出記憶する。入出力制御装置は、例えば高速入出力ポートで連続してユニットエンド後に起動要求を受けても、受理応答は即座に行わずに、低速ポートの起動要求を起動時間だけ待つ。そして低速入出力ポートからの起動が来れば、高速ポートと低速ポートのどちらを受理するか判断し、片側だけにサービスが偏るのを防ぐ。
【0031】
サービスの偏りを示す指標の一つとしてビジィ率を使用する。ビジィ率は、ビジィ応答カウンタで求めたビジィ応答の数を、チャネルからの起動の数を積算する起動数カウンタの値で割って求める。そして各入出力ポートのビジィ率をなるべく小さい値に、また各入出力ポートのビジィ率の値の差が大きくならないように、待ち時間を決める。
【0032】
ビジィ解除の応答後、例えば、応答した入出力ポートのビジィ率が高い場合は、起動時間の最大値付近の値で待ち、逆に入出力ポートのビジィ率が低く、他の入出力ポートのビジィ率が高い場合は、最小値付近の値で待つようにする。このように、本発明は、自らの学習によって各チャネルのサービスを均一化できる。
【0033】
更に本発明は、ビジィ応答とビジィ解除応答(ビジィエンド)のループ処理が長時間続くとホスト側でチェックコンディションになるので、これを防ぐ。即ち、起動要求、ビジィ応答−ビジィ解除応答となるループ処理の回数をカウンタで検出し、カウンタが一定値を越えた入出力ポートを優先的にサービスする。その他の入出力ポートにはビジィを応答する。入出力ポートで優先処理が済んだら、その入出力ポートのカウンタはリセットする。これによりビジィ応答とビジィ解除応答がループすることによるチェックコンディションを回避できる。
【0034】
更に本発明は、時系列処理方式である。各入出力ポートにビジィ応答した時刻を記憶し、継続中のチャネルとの処理が終了したら、各入出力ポートのビジィ応答時刻を調べ、一番古い時刻を示している入出力ポートにビジィエンドを報告して優先的にサービスを行う。
更に本発明は、再試行割込み方式である。チャネルとの結合中に他のチャネルからの起動がきたら、ビジィ応答の代わりにチャネルの再試行を要求するステータスを報告して、後からの起動してきたチャネルとの結合を一旦切る。現在処理中のチャネルとの結合が終了したら、再試行要求を既にしたチャネルに対して再試行開始の割り込みを行い、再結合する。このようにビジィ応答の代わりに再試行ステータスを応答することで、入出力制御装置側でどの入出力ポートを再結合するか決定でき、各入出力ポートを平均してサービスできる。
【0035】
更に本発明は、再試行割込み方式の変形といえる。まずチャネルとの結合中に所定の割込条件(所定時間、所定コマンド処理回数、所定ビジィ率等)が成立したら、割込みを発生して現在結合中のチャネルに対してチャネル再試行要求のステータスを応答し、処理を中断して一旦結合を切る。その後、全バスについて、以前にビジィ応答しているか、チェック要因は割込み要因を分析して、どの入出力ポートに対しサービスするか決定する。
【0036】
処理ポートを決定したら、そのポートからユニットエンドを応答して優先的に処理する。この優先処理が済んだら、再試行要求のステータス応答を行ったチャネルに対し再試行開始の割込み通知を行い、再結合して中断した処理を再開する。これによって、高速チャネルの処理が連続し、低速チャネルでビジィ応答を解除するユニットエンドが報告できない事態を回避できる。
【0037】
更に本発明は、チャネルスイッチとして機能する入出力ポートのインテリジェント化である。他の入出力ポートでコマンド処理中であっても、入出力ポート自身で受け付けたコマンドが実行可能か否か判断し、実行可能な場合は、下位のドライブユニットに対する処理を実行し、ビジィ応答の回数を減らす。
例えば他の入出力ポートの結合中に、ある入出力ポートに起動要求があった場合は、これを受け付けてコマンドを解析し、結合中の入出力ポートと共通の内部資源、例えばデータバスを使わないコマンド、例えばモーション系やセンス系の制御コマンドの場合は、有効に受け付けて実行してしまう。このインテリジェント化は、データバスとコマンド処理バスが別であったり、共通バスであっても、データ転送と、コマンド処理用のデータ転送が同時に行えるような共通バス構成のハードウェアをもつ場合に有効となる。
【0038】
【実施例】
<目 次>
1.システム構成
2.学習処理
3.ビジィ応答−ビジィエンドの循環チェック処理
4.時系列処理
5.再試行割込み処理その1
6.再試行割込み処理その2
7.入出力ポートのインテリジェント化
1.システム構成
図3は、磁気テープ装置をドライブユニットとして用いた本発明の入出力制御装置のシステム構成である。
【0039】
図3において、入出力制御装置として機能する磁気テープ制御ユニット10に対しては、デバイスインタフェース22を介して、この実施例にあっては、8台の磁気テープドライブユニット12−1〜12−8が接続される。磁気テープドライブユニット12−1〜12−8には、予めドライブ機番#1〜#8が設定される。
【0040】
磁気テープ制御ユニット10は、この実施例にあっては、8つの入出力ポート20−1〜20−8を有する。入出力ポート20−1〜20−8はポート番号A〜Hが定義される。以下の説明では、単にポートA〜Hと表現する。
磁気テープ制御ユニット10のポートA〜Hのそれぞれには、ホストコンピュータ14−1〜14−8に設けたチャネル装置16−1〜16−8がチャネルバス18−1〜18−8を介して接続される。ここで、チャネル装置16−1〜16−8にはチャネル番号A〜Hが定義されている。以下の説明では単に、チャネルA〜チャネルHと表現する。
【0041】
ホストコンピュータ14−1〜14−8のチャネルA〜Hと磁気テープ制御ユニット10のポートA〜Hの間のチャネルバス18−1〜18−8は、それぞれ固有の転送速度をもっている。例えば、チャネルAとポートAを結ぶチャネルバス18−1は電気的なチャネルバスであり、その転送速度は4.5MBsとなる。
【0042】
このような電気的なチャネルバス18−1としては、IBM製のブロック・マルチプレクス・チャネルインタフェース(BMC)を使用することができる。また、チャネルBとポートBを結ぶチャネルバス18−2は、例えば光チャネルバスであり、その転送速度は9MBsと高速である。このような光チャネルバス18−2としては、例えばIBM製のESCONチャネルを使用することができる。
残りのチャネルバス18−3〜18−8についても、各々固有の転送速度をもったチャネルバスが使用される。勿論、本発明にあっては、少なくとも複数のチャネルバスの転送速度が高速と低速の2種類である場合を対象としている。例えば、転送速度4.5MBsの電気的なチャネルバス18−1は低速チャネルバスとなり、これに対し光チャネルバスを用いたチャネルバス18−2は、転送速度が9MBsであることから高速チャネルバスとなる。
【0043】
以下の説明では、低速チャネルバス18−1のチャネルAを低速チャネルといい、高速チャネルバス18−2のチャネルBを高速チャネルという。同様に、ポートA,Bについても、ポートAが低速入出力ポート、ポートBが高速入出力ポートとなる。
図4は、図3の磁気テープ制御ユニット10のハードウェア構成である。磁気テープ制御ユニット10は、ホストインタフェース部24、バッファメモリ26、フォーマッタ部28および通信情報メモリテーブル30で構成される。ホストインタフェース部24には、MPU32、ファームウェア34およびインタフェースプロセッサ36が設けられる。
【0044】
インタフェースプロセッサ36には、ホストコンピュータとのチャネルバスを接続した入出力ポート20−1〜20−8で実現されるポートA〜Hが設けられる。フォーマッタ部28には、MPU38、ファームウェア40およびフォーマッタプロセッサ42が設けられる。
本発明の入出力制御は、ホストインタフェース部24に設けられたMPU32、ファームウェア34およびインタフェースプロセッサ36の制御機能により実現することができる。バッファメモリ26には、ホストコンピュータと磁気テープドライブユニットとの間でやり取りされるデータが一時的に格納される。バッファメモリ26を経由したデータ転送により、入出力制御装置10とチャネル側の転送、入出力制御装置10と磁気テープドライブユニット側の転送は、非同期に行われることになる。
【0045】
ホストインタフェース部24に設けられたMPU32は、インタフェースプロセッサ36において、いずれかのポートA〜Hに起動要求を受けると、他のポートが結合中でないことを条件に起動要求を受け入れ、チャネルバスと結合して、ホストコンピュータからの入出力要求に基づくチャネルコマンドワードの転送処理を行う。
【0046】
チャネルコマンドは、通常、一連のコマンドシーケンスを実現するための異なったコマンド語の連続するコマンドチェインニングと、データのブロック単位の転送を行う際のリードコマンドまたはライトコマンドを繰り返し転送するためのデータチェインニングがある。
このようなチャネルコマンドによる1回の転送処理ごとに、チャネル装置は対応する磁気テープ制御ユニット10のポートに対しスタートI/O要求(スタートI/Oコマンド)を発行して起動要求を行う。この起動要求の際には、通常、磁気テープドライブユニットのドライブ機番#1〜#8のいずれかを指定する。インタフェースプロセッサ36は、ポートA〜Hに対するチャネルバスからのスタートI/O要求を監視しており、スタートI/O要求を認識すると、他のポートが結合中にないことを条件に、スタートI/Oコマンドに対する正常終了を示す結合完了応答を返す。もし、スタートI/O要求を受けた際に他のポートが結合中であった場合には、基本的にはビジィ応答を返すことになる。
【0047】
MPU32は、インタフェースプロセッサ36を介して受信したチャネル側からのコマンドを解読し、磁気テープドライブユニットの制御に必要なパラメータなどの各種情報を通信情報メモリテーブル30に書き込む。また、磁気テープドライブユニットに対する書込みのために転送されたデータについては、バッファメモリ26に書き込む。
【0048】
フォーマッタ部28のMPU38は、MPU32とは非同期に、通信情報メモリテーブル30をサイクリックに参照しており、磁気テープドライブユニットの制御またはデータ転送に必要な情報を認識すると、フォーマットプロセッサ42を経由して、指定されたドライブ機番をもつ磁気テープドライブユニットに対する各種の制御およびデータ転送のための処理動作を指示する。
【0049】
またMPU38は、サイクリックに磁気テープドライブユニット12−1〜12−8の状態を検出して、検出結果を通信情報メモリテーブル30に書き込んでいる。このため、チャネル側より磁気テープドライブユニットの状態を確認するためのセンスコマンドをホストインタフェース部24で受けた場合、MPU32は通信情報メモリテーブル30を参照することで磁気テープドライブユニットの状態を認識し、ステータスコマンドに対し応答することができる。
【0050】
更にインタフェースプロセッサ36には、チャネルバスからの転送データを圧縮した後にバッファメモリ26に書き込み、また磁気テープドライブユニットからバッファメモリ26に読み出された圧縮リードデータを元のデータに伸長してチャネルバスに送り出すための圧縮伸長部としての機能が設けられる。このデータの圧縮伸長処理は、リードまたはライト要求の最初に送られてくるセットコマンドのビットフラグにより伸長または圧縮するか、そのまま処理するか、指定することができる。
【0051】
一方、オプションとして、デバイスインタフェース25を介してCRT35とキーボード45が設けられる。これによりオペレータはホストインタフェース部24のMPU32の入出力制御に必要な各種のパラメータを外部から設定できる。勿論、ホストコンピュータ側のCRTとキーボードを使用して、MPU32の制御パラメータを設定してもよい。
2.学習処理
図5は本発明の実施例であり、磁気テープ制御ユニット10にポートAとポートBの2つを設けた場合を例にとっている。
【0052】
磁気テープ制御ユニット10にはルート制御部46が設けられ、ポートAまたはポートBに対するチャネルバスからの起動要求に基づいて、いずれか一方のポートを選択するチャネルスイッチとしての機能をもつ。ポートA,ポートBのそれぞれにはタイマ52,58が設けられている。タイマ52,58は、ポートA,Bからのチャネルバスに対するビジィエンドで起動し、その後にチャネルバスから起動要求を受けたときに停止する。
【0053】
タイマ52,58により計測される起動時間は、より正確には、チャネルバスに対しビジィ応答を行った後に他のポートの結合終了に伴ってビジィエンドを応答した時点から、このビジィエンドを受けたビジィ解除待ちのチャネル装置からの起動要求がポートで受信されるまでの時間となる。したがって起動時間そのものはチャネル装置がビジィ解除待ちの状態でユニットエンドを受信して再度起動要求を発行する時間を表わすことになり、チャネルバスの転送速度に依存する。
【0054】
ここで、ポートAは低速チャネルバス18−1に接続された低速ポートであり、ポートBは高速チャネルバス18−2に接続された高速ポートとなっている。このため、タイマ52で計測される低速ポートAの起動時間T1は、タイマ58で計測される高速ポートBの起動時間T2より長い時間となる。起動時間計測記憶部48は、タイマ52,58による低速ポートAの起動時間T1と高速ポートBの起動時間T2を記憶する。
【0055】
更に磁気テープ制御ユニット10には、ビジィ率計測記憶部50が設けられている。ビジィ率計測記憶部50は、ポートAに設けた起動数カウンタ54とビジィ数カウンタ56、およびポートBについて設けた起動数カウンタ60とビジィ数カウンタ62のそれぞれの計数値を用いて、ポートA,Bごとにビジィ率R1,R2を算出して記憶する。
【0056】
例えばポートAを例にとると、起動数カウンタ54はポートAに対するチャネルバス18−1からの起動要求があるごとにカウントアップされ、ポートAに対する運用中の起動要求の総数を表わす。ビジィ数カウンタ56は、ポートAに対する起動要求のうち、他のポートBが結合中でビジィ応答を行った回数を計数する。
【0057】
ビジィ率計測記憶部50は、起動数カウンタ54がカウントアップするごとに、即ち起動要求があるごとに、そのときの起動数カウンタ54の値でビジィ数カウンタ56の値を割って、ポートAのビジィ率R1を算出する。この点は、ポートBの起動数カウンタ60およびビジィ数カウンタ62についても同様であり、起動要求を受けるごとにビジィ数カウンタ62の値を起動数カウンタ60の値で割って、ポートBのビジィ率R2を算出して記憶する。
【0058】
更に、起動時間計測記憶部48にあっては、タイマ52,58で計測されたポートA,Bの起動時間T1,T2をそのまま記憶するのではなく、起動時間はそのときの状況により異なることから、最大時間Tmax ,最小時間Tmin および平均時間Tavに分けて記憶する。最大時間Tmax の記憶は、前回までに得られた最大時間Tmax と今回得られた起動時間Tを比較し、起動時間Tが大きければ、それまでの最大時間Tmax を更新し、小さければ、それまでの最大時間Tmax を残す。最小時間Tmin についても同様にして更新する。
【0059】
平均時間Tavについては、現時点までの起動時間の総和を起動要求回数で割ることで求めることができる。全ての起動時間の総和をとった場合には、データビット長が大きくなりすぎることから、一定数の起動時間ごとの移動平均を計算することが望ましい。
ルート制御部46は、高速ポートBに起動要求を受けると、ポートAが非結合状態にあっても直ちに結合完了応答を行わず、ビジィ率計測記憶部50を参照して、ポートAとポートBのビジィ率R1,R2を比較し、ビジィ率R1,R2が同じになるようにルート制御を行う。通常、低速ポートA側のビジィ率R1が大きく、高速ポートBのビジィ率R2が小さいことから、ビジィ率の大きい低速ポートAの起動時間T1を起動時間計測記憶部48から読み出し、読み出した低速ポートAの起動時間T1に亘って、ポートBは低速ポートAに対する起動要求の待ち時間を設定する。
【0060】
このポートAに対する起動要求の待ち時間T1の間に低速ポートAに対し起動要求があると、ルート制御部46はポートAをチャネルバス18−1に結合して転送処理を行い、先に起動要求のあった高速ポートBについては、ビジィ応答を返すようになる。この結果、ビジィ率の高い低速ポートA側が優先的に起動要求を受け入れられることになり、高速ポートBとのビジィ率をほぼ等しくさせることができる。
【0061】
また起動時間計測記憶部48には、低速ポートAの起動時間T1として最大時間Tmax ,平均時間Tavおよび最小時間Tmin が記憶されていることから、ポートA,Bのビジィ率R1,R2の関係から、例えば次のように低速ポートAに対する起動要求の待ち時間を設定する。
▲1▼R1>R2の場合は、最大時間Tmax を待ち時間に設定する。
【0062】
▲2▼R1=R2の場合は、平均時間Tavを待ち時間に設定する。
▲3▼R1<R2の場合は、最小時間Tmin を待ち時間に設定する。
図6は、図5の磁気テープ制御ユニット10における起動時間計測処理のタイムチャートである。いま、ホストコンピュータ14−2がスタートI/O要求100をポートBに発行すると、このときポートAは使用されていないことから、正常終了を示す結合完了応答102が返され、チャネルBおよびポートBが転送処理104,106を行う。
【0063】
この転送処理104,106の間に、低速チャネルAからスタートI/O要求108が行われたとすると、低速ポートAからビジィ応答110が返される。転送処理が済むと、高速ポートBよりユニットエンド112が高速チャネルBに報告され、続いて低速ポートAよりビジィ解除待ちにある低速チャネルAに対しビジィエンド114が出される。このビジィエンド114に対し低速チャネルAはビジィ解除を認識し、スタートI/O116を発行する。
【0064】
図5のタイマ58は、この低速ポートAにおけビジィエンド114からスタートI/O要求116を受けるまでの時間T1を起動時間として計測する。スタートI/O要求116を受けた低速ポートAは、正常終了を示す結合完了応答118を出し、低速チャネルAおよび低速ポートAで転送処理120,122を行う。
【0065】
この転送処理120,122の間に、高速チャネルBからスタートI/O要求124が行われたとすると、高速ポートBからビジィ応答126が返される。転送処理が済むと、低速ポートAよりユニットエンド128が低速チャネルAに報告され、続いて高速ポートBよりビジィ解除待ちにある高速チャネルBに対しビジィエンド130が出される。このビジィエンド130に対し高速チャネルBはビジィ解除を認識し、スタートI/O132を発行する。
【0066】
図5のタイマ60は、この高速ポートBにおけビジィエンド130からスタートI/O要求132を受けるまでの時間T2を起動時間として計測する。図7は、起動時間計測記憶部48の記憶時間を使用したルート制御部46による入出力制御である。いま高速チャネルBからスタートI/O要求142が高速ポートBに行われ、結合完了応答114により転送処理145,146を行っている間に、低速チャネルAからスタートI/O要求148があると、これはビジィ応答150となる。
【0067】
この低速チャネルAがビジィ解除待ちの状態で転送処理145,146が終了してユニットエンド146が出され、これに伴い低速ポートAからビジィエンド156が出されると、起動時間T1に基づいた待ち時間Tの設定を行う。待ち時間T0 の間に、高速チャネルBから高速ポートBに対しスタートI/O要求156が先に行われる。しかし、待ち時間T0 のに中にあるので、スタートI/O要求156は受け入れられず、待たされる。
【0068】
続いて低速チャネルAは、ビジィエンド154を受けてからT1´時間後にスタートI/O要求158を出す。このとき磁気テープ制御ユニット10は、待ち時間Tの設定で低速ポートAに対する起動要求を優先させる待ち時間Tの間にあり、スタートI/O要求158を受け入れて結合完了応答160を返し、転送処理162,164に入る。
【0069】
続いて高速ポートBより高速チャネルAに対し、スタートI/O要求156に対するビジィ応答166を返す。転送処理162,164が済むとユニットエンド168を出し、またビジィエンド170を出す。そして、高速チャネルBと高速ポートBの結合による転送処理174,176を行う。
このように、高速ポートBに対する起動要求の受付時に低速ポートA側の起動時間に亘る待ち時間Tを設けて、低速ポートAに対する起動要求を待って処理を行うことで、高速ポートBに対する起動要求が連続していても、低速ポートAに対する起動要求があればこれを正常に受け付けて処理することができ、高速ポートB側にサービスが偏ってしまうことを防止できる。
【0070】
図8は、図5の磁気テープ制御ユニット10における起動時間およびビジィ率を用いた入出力制御処理のフローチャートである。
ステップS1で起動要求があると、ステップS2に進み、高速ポートか否かチェックする。高速ポートであればステップS3に進み、例えば低速ポートで計測した起動時間T1を待ち時間Tとしてタイマにセットし、ステップS4で起動時間T1がタイムアウトするまで、ステップS5で低速ポートに対する起動要求をチェックする。
【0071】
起動時間T1の間に低速ポートに起動要求があったことがステップS5で判別されると、ステップS6に進んで、低速ポートを低速チャネルに結合して、転送処理を開始する。同時に、ステップS7で高速ポートから高速チャネルにビジィ応答を行う。低速側での転送処理の終了がステップS8で判別されると、ステップS9でユニットエンドを低速ポートから出し、次にビジィエンドを高速ポートから出す。このため、ビジィ解除待ちにある高速ポートから再度、起動要求が行われ、再びステップS1の処理となる。
【0072】
一方、ステップS2で低速ポートからの起動要求が判別された場合には、ステップS10に進み、高速ポートが結合中にないことを条件に、低速ポートをチャネルに結合して転送制御を行う。もし高速ポートが結合中であれば、低速ポートより制御ユニットエンドを応答し、高速ポートの結合終了による制御ユニットエンドの応答を待って低速ポートに再度起動要求を行わせる通常の処理となる。
【0073】
図9のフローチャートは図5の起動時間計測記憶部48の処理動作であり、ポートA,Bごとに独立して処理動作を行う。例えばポートAを例にとると、ステップS1でビジィエンドの応答を判別し、ステップS2に進んで、タイマをスタートする。続いてステップS3で、ポートAに対する起動要求の受信をチェックしており、起動要求を受信するとステップS4に進み、ステップS2で起動したタイマを停止する。
【0074】
続いてステップS5で、タイマに保持されている時間を起動時間として取り込んで記憶する。次にステップS6で、今回計測した起動時間を含めた平均時間Tavを算出し、ステップS7で、最小時間の条件を満足すれば現在の最小時間Tmin を更新し、またステップS8で、最大時間の条件を満足すれば最大時間Tmaxを更新する。
【0075】
図10のフローチャートは、図8のステップS3で低速ポートの起動時間T1をタイマにセットする際の詳細を示す。まずステップS1で、起動要求を受けた高速ポートBのビジィ率R2と、要求待ちにある低速ポートAのビジィ率R1を算出する。このビジィ率R1,R2のそれぞれは、図4のポートA,Bのそれぞれに設けたビジィ数カウンタ56,62の計数値を起動数カウンタ54,60の計数値で割って得たビジィ率計測記憶部50に格納している値である。続いてステップS2で、低速ポートAのビジィ率R1と高速ポートBのビジィ率R2の大小関係を比較する。低速ポートのビジィ率R1が高速ポートのビジィ率R2より大きければ、ステップS3に進み、起動時間計測記憶部48に格納している低速ポートAの起動時間の内の最大時間Tmax を待ち時間としてセットする。低速ポートのビジィ率R1と高速ポートのビジィ率R2が等しい場合には、ステップS4で低速ポートの起動時間の平均時間Tavを待ち時間にセットする。更に、低速ポートのビジィ率R1が高速ポートのビジィ率R2より小さいときは、ステップS5に進み、低速ポートの起動時間の内の最小時間Tmin を待ち時間にセットする。
【0076】
尚、図10による高速ポートと低速ポートのビジィ率に基づいた起動時間の待ち時間へのセットに限定されず、高速ポートのビジィ率と低速ポートのビジィ率がほぼ等しくなるように待ち時間を決める適宜の方式を採用することができる。例えば、低速ポートの起動時間として平均時間Tavのみを使用し、ステップS3,S5の最大時間または最小時間の代わりに平均時間に所定の重み係数を掛け合わせた時間を求めてセットするようにしてもよい。
【0077】
図11は本発明の変形実施例である。この実施例は、高速ポートのユニットエンドの際に、低速ポートから低速チャネルにビジィエンドを応答してから起動要求を受信するまでの起動時間を計測し、その後の高速ポートBに対する高速チャネルからの起動要求を、計測した起動時間に亘り待たせ、その間に低速ポートに対する低速チャネルから処理要求を受け付けるようにしたことを特徴とする。
【0078】
図11において、低速ポートAに対しては起動時間計測部230が設けられる。起動時間計測部230は、図6のタイムチャートと同様に、低速ポートAが低速チャネルAにビジィエンドを出してからスタートI/O要求(起動要求)を受けるまでの起動時間Tを計測する。待ち時間決定部232は、起動時間計測部230の計測時間Tに基づいて、ルート制御部46における待ち時間T0 を設定する。この待ち時間T0 の設定は、計測時間Tと同じ時間あってもよい。
【0079】
また計測時間Tに応じて待ち時間T0 を可変設定してもよい。通常、計測時間Tに対し実際の待ち時間T0 を長めにした方が、低速側へのサービスの割付けが有効にできるので、例えば計測時間Tに1以上の所定の係数Kを掛け合せた待ち時間T0 を可変設定する。
更に、待ち時間T0 をオペレータの入力操作により設定してもよい。このため待ち時間決定部232に対し、外部に表示部234と入力部236が設けられる。表示部234と入力部236の機能は、図4のデバイスインタフェース25、CRT35及びキーボード45で実現される。
【0080】
オペレータは、入力部236の操作で待ち時間決定部323に設定された現在の待ち時間T0 を表示部234に読出し表示し、そのときの各チャネルのビジィ状態やホストコンピュータの運用形態を考慮し、任意の待ち時間T0 を入力し、待ち時間決定部232に設定する。
ルート制御部46は、高速ポートBの転送終了でユニットエンドを応答すると、待ち時間設定部232から与えられる待ち時間T0 に亘り、高速ポートBに起動要求があってもビジィ応答を出して待たせる。この待ち時間T0 の間に、低速ポートAに起動要求があれば、直ちに受け付けて転送処理を行う。
【0081】
待ち時間T0 がタイムアップするか、又は低速ポートAの転送終了でユニットエンドとなると、高速ポートBからビジィエンドを出し、高速チャネルに再度起動要求を行わせて受け付けることになる。
3.ビジィ応答−ビジィエンドの循環チェック処理
図12は本発明の他の実施例である。この実施例は、高速ポートでの連続的な起動要求により、低速ポート側がビジィエンド(ビジィ解除応答)に基づく起動要求に対しビジィ応答を繰り返してしまうビジィ応答−ビジィエンドの循環状態を検出して、低速ポートに優先的にサービスを割り付けるようにしたことを特徴とする。
【0082】
磁気テープ制御ユニット10の低速ポートAおよび高速ポートBのそれぞれには、カウンタ64,66が設けられる。カウンタ64,66は、ビジィエンドの応答と、応答したビジィエンドに基づく起動要求に対するビジィ応答が行われることで1つカウントアップされる。即ち、1回のビジィ応答−ビジィエンドの循環を検出してカウントアップする。
【0083】
循環数判定部68は、カウンタ64,66の計数値、即ちビジィ応答−ビジィエンドの循環回数が所定値に達したか否か判定している。循環数判定部68でカウンタ64またはカウンタ66の計数値が所定値に達したことが判定されると、この判定出力を受けてルート制御部46が、循環数が所定数を越えたポートAまたはポートBに対し優先的に起動要求を受け付けるように制御する。
【0084】
図13のフローチャートは、図12の処理動作である。まずステップS1で、ポートAまたはポートBに対する起動要求の有無をチェックしている。起動要求があると、他のポートと結合中にないことを条件にチャネルに結合して転送処理を行う。ステップS3で転送処理を終了すると、ステップS4でユニットエンドを応答する。
【0085】
このときビジィ応答を行っていたポートがあれば、そのポートからビジィエンドを応答する。このため、他のポートでもしステップS2の結合による転送中に起動要求が行われてビジィ応答が済んでいると、ステップS4のビジィエンドで図12に示した対応するカウンタがビジィ応答−ビジィエンドの循環数を1つカウントアップすることになる。
【0086】
次にステップS5で、ビジィ応答−ビジィエンドの循環数が一定値を越えるポートがあるか否かチェックする。もし一定値を越えるポートがあった場合には、ステップS6に進み、一定値を越えるポートに対し起動要求の優先処理を割り付ける。そしてステップS7で起動要求を判別すると、ステップS8で優先割付けポートか否かチェックし、優先割付けポートでなければ、ステップS12でビジィ応答を返す。
【0087】
この結果、優先割付けポートに対する起動要求のみが受け付けられて、ステップS9でチャネルバスとの結合により転送処理が行われることになる。ステップS10で優先割付けポートの転送処理が終了すると、ステップS11で、優先割付けポートに設けている循環数カウンタをリセットし、ユニットエンドを応答する。このときステップS12でビジィ応答により待ち状態となっている他のポートがあれば、そのポートからビジィエンドを出して起動要求を行わせる。
4.時系列処理
図14は、本発明の他の実施例である。この実施例は、あるポートの結合中における他のポートのビジィ応答の時刻を記憶しておき、結合終了時にビジィ応答時刻の最も古いポートに優先的にサービスを割り付けるようにしたことを特徴とする。
【0088】
磁気テープ制御ユニット10には、ポートA,ポートBおよびルート制御部46に加えて、ビジィ応答時刻記憶部70と処理ポート決定部72が設けられる。ビジィ応答時刻記憶部70は、ポートAまたはポートBの結合中に他のポートに起動要求が行われてビジィ応答を行った時刻を記憶する。この実施例は、ポートA,ポートBの2つであることから、ポートAの結合中はポートBの応答時刻を記憶し、ポートBの結合中はポートAの応答時刻を記憶する。
【0089】
処理ポート決定部72は、結合中のポートの転送処理が終了してユニットエンドを応答した際に、ビジィ応答時刻記憶部70を参照し、記憶しているビジィ応答時刻の中の最も古い時刻をもつポートを、次に起動要求を優先的に処理ポートとして決定して、ルート制御部46に通知する。ルート制御部46は、処理ポート決定部72で決定されたポートからの起動要求を優先的に処理する。
【0090】
この実施例では、ポートA,ポートBの2つしかないことから、ポートAの結合中にポートBがビジィ応答を行うと、処理ポート決定部72は次に優先受け付けるポートとしてポートBを決定し、ルート制御部46はポートAからの起動要求に対してはビジィ応答を行い、ポートBからの起動要求のみを受け付ける。この結果、ポートAが低速ポート、ポートBが高速ポートであっても、それぞれの連続した起動要求に対し、ルート制御部46は交互に起動要求を受け付けることができ、低速ポートAと高速ポートBのビジィ率をほぼ均一にすることができる。
【0091】
実際には図3の実施例のように、磁気テープ制御ユニット10にはポートA〜Hの8つのポートが設けられており、この場合には、あるポートの結合中に残り7つのポートのいずれかに起動要求があれば、そのときのビジィ応答時刻が記憶される。そして、現在の転送処理が終了してユニットエンドとなった場合には、複数のビジィ応答時刻の中の最も古い時刻をもつポートからビジィエンドを出すことで、起動要求の受付けが割り付けられることになる。
【0092】
図15のフローチャートは、図14の処理動作である。ステップS1で、複数のポートに対する起動要求を監視しており、特定のポートに起動要求があると、ステップS2で、ポートをチャネルバスに結合して転送処理を行う。ステップS3で転送処理の終了をチェックしており、転送を終了すると、ステップS4で、結合中のポートからユニットエンドを応答する。
【0093】
このステップS1〜S4において、あるポートの結合中に他のポートから起動要求があれば、ビジィ応答時刻記憶部70に応答時刻が記憶されている。そこで、ユニットエンドを応答した後のステップS5で、ビジィ応答時刻の中から最も古い時刻のポートを処理ポートとして決定し、ステップS6で、決定ポートからビジィエンドを出す。このビジィエンドを受けたビジィ解除待ちチャネルは、起動要求を再度発行する。
【0094】
続いてステップS7で起動要求をチェックしており、起動要求があると、ステップS8で優先割付けポートか否かチェックする。優先割付けポートでなければ、ステップS12でビジィ応答を返す。この結果、優先割付けポートに対する起動要求のみが受け付けられ、ステップS9で、チャネルバスに結合して転送処理が行われる。
【0095】
ステップS10で転送処理の終了が判別されると、ステップS11で、処理ポートのビジィ応答時刻をリセットし、ユニットエンドを応答してステップS13に戻り、ビジィ応答時刻の記録が残っていれば再びステップS5に戻り、残っているビジィ応答時刻の中の最も古い応答時刻をもつポートを処理ポートとして決定してビジィエンドを出す処理を繰り返す。ビジィ応答時刻が残っていなければ、再びステップS1に戻る。
5.再試行割込み処理その1
図16は、本発明の他の実施例である。この発明の実施例は、あるポートがチャネルとの結合中に他のポートに起動要求が来たら、ビジィを応答する代わりにチャネル動作の再試行を要求するステータスを応答して、現在処理中の転送処理が終了したら、再試行要求をステータス応答したチャネルに対し再試行開始の割込み要求を行って、再結合するようにしたことを特徴とする。
【0096】
磁気テープ制御ユニット10には、ポートA,ポートBおよびルート制御部46に加えて再試行割込み処理部74が設けられる。再試行割込み処理部74は、例えばポートAの結合中にポートBに起動要求が来たら、通常はビジィ応答を返していたが、この第4発明にあっては、チャネル動作の再試行を要求するステータスを応答し、ポートBのチャネルバスとの結合を一旦切り離す。
【0097】
次に、ポートAの結合による転送処理が終了してユニットエンドが応答されたら、再試行要求のステータスを応答したチャネルBに対し再試行開始の割込み要求を行って再結合する。このような再試行割込み処理部74による起動要求に対する再試行要求ステータスの応答を受けたチャネル装置は、チャネル動作の再試行開始の待ち状態に入り、その後、再試行開始の割込み応答を受けると、再度、起動要求からのコマンドシーケンスを開始して再結合する。
【0098】
このような再試行割込み処理部74の処理により、磁気テープ制御ユニット10側でどのポートと再結合するか決定でき、各ポートに対し平均したサービスを提供できる。例えば、高速ポートBの起動要求が連続しており、高速ポートBの結合中に低速ポートAに起動要求があると、再試行割込み処理部74は再試行要求ステータスを応答し、ポートAに対するチャネル側を再試行待ち状態とする。
【0099】
高速ポートBの転送処理が終了してユニットエンドを応答すると、再試行割込み処理部74は低速ポートAを経由して、対応するチャネル装置側に再試行開始の割込み要求を行って再結合し、再試行開始の割込みを受けたチャネル装置から起動要求を再発行し、一連のコマンドシーケンスに従った転送処理を行う。
この結果、高速ポートB側に起動要求が連続しても、高速ポートBの結合中に生じた低速ポートAの起動要求がビジィ応答として排除されず、割込みにより強制的に低速ポートAの起動要求が受け入れられ、低速ポートAと高速ポートBに平均してサービスを提供できる。
【0100】
図17は、図16で高速ポートBの結合中に低速ポートAに起動要求があった場合の処理である。まず高速チャネルBよりスタートI/O要求200が高速ポートBに対し行われると、結合完了応答202を行った後、転送処理204,206が行われる。この転送中に低速チャネルAより低速ポートAにスタートI/O要求208があると、再試行割込みステータス応答210が行われ、低速チャネルAは再試行起動待ちに入る。
【0101】
転送処理204,206が終了して制御ユニットエンド212が出されると、これに伴って低速ポートAより低速チャネルAに対し再試行開始割込み通知214が行われ、再試行開始待ち状態にある低速チャネルAより再度、スタートI/O要求216が発行される。これに対し再結合により結合完了応答218が出され、低速チャネルAと低速ポートAの間の結合で転送処理220,222が行われる。転送処理が終了すると、制御ユニットエンド224が出される。
【0102】
図18のフローチャートは、図16の実施例の処理動作である。まずステップS1で、起動要求の有無をチェックしており、特定のポートに起動要求があると、ステップS2に進み、他のポートが結合状態にないことを条件に、チャネルと結合して転送処理を行う。転送中はステップS3で転送終了が判別されるまで、ステップS4で他のポートに起動要求があるか否かチェックしている。
【0103】
もし起動要求があると、ステップS5に進み、起動要求を行ったチャネル装置に対し、ステップS5で、再試行ステータスを応答するか否かチェックする。ここで、現在結合中のポートが低速ポートであり、結合中に起動要求を受けたポートが高速ポートであった場合には、優先的に処理する必要がないことから、ステップS7でビジィ応答を返す。
【0104】
一方、現在結合中のポートが高速ポートであり、結合中に起動要求を受けたポートが低速ポートであった場合には、優先的に処理する必要があることから、ステップS6に進み、再試行ステータスを応答する。
ステップS7で転送終了が判別されると、ステップS8に進み、結合中のポートからユニットエンドを応答する。続いてステップS9で、転送中に再試行ステータスの応答を行ったか否かチェックし、もし行っていれば、ステップS10で、再試行ステータスの応答を行った他のポートから再試行開始の割込み要求を発行する。
【0105】
もし転送中に再試行ステータスを応答していなければ、ステップS11で、ビジィ応答を行った他のポートからユニットエンドを応答し、再びステップS1に戻る。
尚、上記の実施例は、低速ポートAと高速ポートBの2つのポートを例にとっているが、図4に示したように、ポートA〜Hの8つの場合についても同様に適用できる。ポートが3以上となった場合には、あるポートの結合中に他の複数のポートで割込み要求を受ける場合があることから、割込み要求に対する再試行割込み処理に優先順位を付け、その優先順位に従って再試行開始の割込み通知を行えばよい。
6.再試行割込み処理その2
図19は、本発明の他の実施例である。この発明にあっては、あるポートの結合中に所定の割込み条件が成立したら、現在結合中のポートからチャネルに対し再試行要求のステータスを応答して、一旦結合を切り離す。次に、全てのポートに関しビジィ応答の状況、例えば最も新しいビジィ応答時刻やビジィ回数をチェックするか、あるいは割込み要求を解析し、どのポートに対するサービスを優先させるかを決定する。そして優先処理を決定したポートからユニットエンドを応答して、優先的に転送処理を行う。転送処理が終了したら、結合を切り離したポートから再試行開始の割込み要求を行って再結合し、一度中断した処理を再開する。
【0106】
図19の実施例は、割込み条件として一定の時間間隔で割込みを発生させるようにしたことを特徴とする。磁気テープ制御ユニット10には、ポートA,ポートBおよびルート制御部46に加えて、割込みタイマ80、ビジィ応答記憶部82および再試行割込み処理部76が設けられる。割込みタイマ80は、予め定めた一定の時間間隔で再試行割込み処理部76にタイマ出力を生じ、割込み処理を行わせる。
【0107】
ビジィ応答記憶部82には、ポートAとポートBのビジィ状態を示す情報として例えば最新のビジィ応答を行った時刻およびビジィ回数が記憶されている。再試行割込み処理部76は、例えば高速ポートBの結合中に割込みタイマ80のタイムアウトで割込み動作を開始し、現在結合中にある高速ポートBよりチャネル装置に対し再試行要求のステータスを応答して、一旦結合を切り離す。
【0108】
高速ポートBとの結合を切り離した後、ビジィ応答記憶部82に記憶している全ポート、即ちポートA,ポートBのそれぞれのビジィ状態、例えばビジィ応答の最新時刻とビジィ回数を参照し、どのポートに対するサービスを優先すべきかを決定する。例えば、現在高速ポートBについては処理中であることから、他のポートとなる低速ポートAについてのビジィ時刻が最も古い時刻で、またビジィ回数がある値を示しているため、再試行割込み処理部76は低速ポートAを優先的な処理ポートと決定する。
【0109】
処理ポートを決定すると再試行割込み処理部76は、ルート制御部46を通じて、決定した処理ポートAよりチャネル装置に対しユニットエンドを応答させる。このポートAからのユニットエンドを受けて、それまでのビジィ応答により待ち状態にあるチャネル装置より起動要求が低速ポートAに対し行われ、有効に結合されて転送処理を行う。
【0110】
低速ポートA側の転送処理が終了してユニットエンドが応答されると、再試行割込み処理部76は、処理を中断して切り離していた高速ポートBよりチャネル装置に対し再試行開始の割込み要求を発行する。この割込み要求を受けて、チャネル装置より高速ポートBに対し起動要求が行われ、一旦中断された転送処理が再開される。また、低速ポートAの優先的な処理を終了してユニットエンドを発行したときに、同時にビジィ応答記憶部82の低速ポートAに関するビジィ応答時刻およびビジィ回数はリセットされる。
【0111】
図20のタイムチャートは、図19の再試行処理の動作である。まず、高速チャネルBよりスタートI/O要求300が高速ポートBに対し行われ、他の低速ポートAが結合中にないことから、正常終了としての結合完了応答302が返され、高速チャネルBおよび高速ポートBは転送処理304,306を行う。この転送処理中に割込みタイマによるタイマ割込み308が発生すると、高速ポートBより高速チャネルBに対し再試行ステータス応答310を出して、結合を切り離す。
【0112】
結合の切離し後に、全ポートA,Bについてビジィ応答の状態をチェックし、このとき低速ポートA側にビジィ応答があった場合には、優先的に処理するポートとして低速ポートAを決定する。そして優先処理を決定したポートAより低速チャネルAに対しユニットエンド314を発行し、低速チャネルAからスタートI/O要求316を発行させる。
【0113】
スタートI/O要求316は低速ポートAで正常に受け入れられ、結合完了応答318を返した後、低速チャネルAと低速ポートAの間で転送処理320,322が行われる。この転送処理が終了すると、低速ポートAよりユニットエンド324が応答され、次に結合を一旦切り離していた高速ポートBから高速チャネルBに対し再試行開始割込みの通知326が行われる。
【0114】
このため、再試行待ち状態にあった高速チャネルBからスタートI/O要求328が出され、高速ポートBで受け付けられて正常終了となって結合完了応答330を返し、一旦中断した転送処理を転送処理332,334として再開する。再開した転送処理が終了すれば、ユニットエンド336を高速ポートBから発行する。
【0115】
このように割込み条件の成立時に、磁気テープ制御ユニット側で現在の結合を切り離してビジィ状態に応じて優先的に処理すべきポートを決定して割込み的に転送処理を行わせることで、高速ポートに対する起動要求が連続するような場合にも、低速ポート側についてビジィ−ユニットエンドの循環を防止することができる。
図21のフローチャートは、図18の割込みタイマを用いた再試行割込み処理の処理動作である。まずステップS1で、各ポートに対する起動要求の有無をチェックしており、あるポートに起動要求があると、ステップS2に進み、他のポートと結合状態にないことを条件に、チャネルと結合して転送処理を開始する。
【0116】
転送中は、ステップS3で転送終了が判別されるまで、ステップS4で割込みタイマのタイムアップを監視している。転送中に割込みタイマがタイムアップしたら、ステップS5に進み、現在結合中のポートから再試行要求のステータス応答を行って結合を切り離す。次にステップS6で、全ポートのビジィ応答の要因例えば時刻と回数を解析して、優先処理ポートを決定する。
【0117】
ステップS7では、決定した優先処理ポートとステップS5で切り離した切離しポートとが同一ポートか否かチェックする。同一ポートでなければ、ステップS8で、決定ポートからチャネルに対しユニットエンドを応答し、これに伴う起動要求をステップS9で受けて、ポートを結合して転送処理を行う。
続いてステップS10で、割込みによる転送処理が終了すると、ステップS11で、ユニットエンドを応答して結合を切り離し、次にステップS12で、結合切離しにより再試行開始待ち状態にあるチャネル装置に対し、結合切離しポートから再試行開始の割込み要求を行う。
【0118】
この割込み要求を受けて、再試行開始待ち状態にあるチャネル装置より起動要求が再度行われ、これがステップS1で判別されて、ステップS2で再びポートとチャネルを結合して転送処理を再開する。再開した転送処理の終了がステップS3で判別されると、ステップS13でユニットエンドを応答して、一連の転送処理が終了する。
【0119】
一方、ステップS6で全ポートのビジィ応答の要因を解析して決定された最優先処理ポートが、ステップS5で結合を切り離したポートと同一ポートであった場合には、直ちにステップS12に進んで、切離しポートから再試行開始の割込み要求を行って、再結合による転送処理を直ちに再開する。
この図21のフローチャートから明らかなように、図19の高速ポートBの結合中に割込みタイマによる割込み条件が成立すると、ビジィ待ちにある低速ポートAの優先処理が決定されて、割込みにより低速ポートA側の転送処理を終了し、その後に高速ポートBの中断した転送処理を再開することになる。
【0120】
また、低速ポートA側の処理中に割込みタイマによる割込み条件が成立した場合には、ビジィ応答回数が低速ポート側に偏っていれば、最優先処理ポートとして切離しポートと同じ低速ポートAが再び最優先処理ポートに決定され、この場合には直ちに再結合のための再試行開始の割込み要求によって中断した低速ポートAでの転送処理が再開される。勿論、状況によっては低速ポートの処理中に高速ポート側の転送処理が優先的に処理されるケースもあり得る。
【0121】
また図19〜図21の実施例は、ポートA,Bの2つを例にとっているが、図5に示したように、実際には磁気テープ制御ユニット10には8つのポートA〜Hが設けられており、再試行割込み処理部76は割込みタイマによる割込み通知を受けた際に8つのポートA〜Hに関するビジィ応答の状態をチェックして、優先処理を行うポートを決定することになる。
【0122】
図22は本発明の他の実施例であり、この実施例は、各ポートで一定の回数のコマンド処理を実行したことで割込み条件が成立したものと判断して再試行割込み処理を実行するようにしたことを特徴とする。
図22において、磁気テープ制御ユニット10には低速ポートA、高速ポートB、ルート制御部46、再試行割込み処理部76、ビジィ応答記憶部82およびコマンドカウンタ84,86を設けている。コマンドカウンタ84は、低速ポートAのコマンド実行回数を計数する。コマンドカウンタ86は、高速ポートBのコマンド実行回数を計数する。
【0123】
再試行割込み処理部76は、コマンドカウンタ84または86の計数値が予め定めた一定回数に達すると再試行割込み処理を実行する。例えば高速ポートBの結合による転送処理で一連のコマンドシーケンスが実行されており、コマンドカウンタ86でコマンド実行に伴ってカウントアップが行われる。このときの計数値が一定回数を越えたことを再試行割込み処理部76が判定すると、現在結合中のポートBよりチャネル装置に対し再試行要求のステータス応答を行って結合を切り離す。
【0124】
結合を切り離した後、再試行割込み処理部76は、ビジィ応答記憶部82を参照し、全てのポートA,Bについてのそれまでのビジィ応答の状況をチェックする。具体的には、ポートA,Bの各々におけるビジィ応答の最新応答時刻およびビジィ回数をチェックする。そしてビジィ応答時刻が古くビジィ応答回数の多いポートを最優先処理を行うポートとして決定する。この場合には、低速ポートAを最優先処理ポートに決定する。
【0125】
この決定を受けてルート制御部46は、低速ポートAよりチャネル装置にビジィエンドを応答し、ビジィエンドを受けたチャネル装置より起動要求を低速ポートAに対し行わせ、ポートAの結合により転送処理を行う。低速ポートAの割込みによる転送処理が終了すると、低速ポートAからのユニットエンドの応答に続いて再試行割込み処理部76は、高速ポートBより再試行開始の割込み要求を行い、ポートBを結合して、中断した転送処理を再開する。
【0126】
再試行割込み処理の詳細は、コマンドカウンタ84,86でポートA,Bのコマンド実行回数を計数し、このコマンド実行回数が一定値に達したときに再試行割込み処理を開始する以外は、図19〜図21に示した第1実施例と同じになる。
図23は本発明の他の実施例であり、この実施例は各ポートのビジィ率が一定値に達したときに再試行割込み処理を行うようにしたことを特徴とする。
【0127】
図23において、磁気テープ制御ユニット10には、低速ポートA、高速ポートB、ルート制御部46、再試行割込み処理部76、ビジィ応答記憶部82、更にビジィ率演算部88が設けられる。ビジィ率演算部88は、図4の実施例に示した起動数カウンタ54,60、ビジィ数カウンタ56,62およびビジィ率計測記憶部50で実現することができる。
【0128】
再試行割込み処理部76は、ビジィ率演算部88で演算される低速ポートAのビジィ率R1またはポートBのビジィ率R2が、予め定めた一定値に達するか否か判断している。ビジィ率R1またはR2が一定値に達すると、再試行割込み処理を開始する。再試行割込み処理は、図19の第1実施例および図22の第2実施例と同じになる。
【0129】
即ち、現在結合中のポートから再試行要求のステータスを応答して、一旦結合を切り離し、ビジィ応答記憶部82を参照して、最優先に処理すべきポートを決定する。決定したポートに対してはビジィエンドを発行して、起動要求を受け付けて転送処理を行う。割込みによる転送処理が終了すると、切り離したポートに対し再試行開始の割込み要求を行って再結合し、中断した転送処理を再開する。
【0130】
尚、この実施例にあっては、ビジィ率が一定値に達して再試行割込み処理が行われた場合、全ポートのビジィ応答の状況、即ちビジィ応答の時刻、ビジィ回数から優先処理ポートを決定しているが、割込み要因となったビジィ率そのものを分析して優先処理ポートを決定してもよい。即ち、全ポートのビジィ率を分析し、最もビジィ率の高いポートを優先処理ポートに決定すればよい。これは、割込み要因そのものの分析による優先処理ポートの決定といえる。
【0131】
図19の実施例および図22の実施例についても、図23の実施例と同様、ビジィ率演算部88を設けることで、再試行割込み処理の際に全ポートのビジィ率を分析して、ビジィ率の最も高いポートを優先処理ポートに決定してもよい。
7.入出力ポートのインテリジェント化
図24は本発明の他の実施例であり、各ポートにコマンド解析機能を設け、他のポートの処理中に実行可能なコマンドを解析して並列的に処理を行うようにしたことを特徴とする。
【0132】
図24において、磁気テープ制御ユニット10には、低速ポートAに対しコマンド解析実行部92が設けられ、またポートBに対しコマンド解析実行部94が設けられる。コマンド解析実行部92,94は、磁気テープ制御ユニット10と下位の磁気テープドライブユニット12−1,12−2に対し、独立した制御パス98で制御信号を供給する。
【0133】
これに対し、磁気テープドライブユニット12−1,12−2側とのデータの転送はデータバス96により行われ、このデータバス96に対してはポートAとポートBを切替えるためのデータルート制御部90が設けられる。なお、既に説明した各発明の実施例にあっては、コマンド解析実行部とデータルート制御部は1つのルート制御部として磁気テープ制御ユニット10に設けられている。
【0134】
ポートA,Bごとに設けたコマンド解析実行部92,94は、起動要求に伴うチャネルとの結合で受信されたコマンドを解析し、他のポートでデータ転送中にあっても実行可能なコマンドか否かを判断する。
他のポートの結合によるデータ転送中に実行可能なコマンドとしては、磁気テープドライブユニット12−1,12−2側での磁気テープのロード動作、アンロード動作、早送り動作、巻戻し動作などのモーション系のコマンド、および磁気テープドライブユニット12−1,12−2側の動作状態を通知するためのセンス系のコマンドなどがある。これに対し、他のポート側の結合によるデータ転送中に実行できないコマンドとしては、リードコマンドおよびライトコマンドがある。
【0135】
コマンド解析実行部92,94は、他のポートの結合によるデータ転送中に起動要求を受けてモーション系またはセンス系のコマンドの受信を解析すると、ビジィ応答を行わずに結合完了応答を出して受け付け、モーション系またはセンス系のコマンドを実行する。この場合、他のポートの結合でデータ転送を行っている磁気テープドライブユニットと、並行して実行するモーション系またはセンス系コマンドの磁気テープドライブユニットとは、別ユニットでなければならない。ユニットの区別はスタートI/O要求のコマンドパラメータとして受信されるドライブ機番でチェックする。
【0136】
データ転送系と制御系およびセンス系が独立に処理可能な磁気テープ制御ユニット10と磁気テープドライブユニット12−1,12−2側の間のデバイスバスとしては、図示の制御用バス98とデータ転送用バス96の独立したバス以外に、コマンド処理とデータ転送が同時に行えるような共通バス構成を用いることもできる。
【0137】
図25のフローチャートは、図24の処理動作である。まずステップS1で、ポートに対する起動要求をチェックしており、起動要求を受けると、ステップS2で、そのポートをチャネルと結合してコマンドの転送処理を行う。次にステップS3で、受信コマンドを解析する。このコマンド解析によって、データ転送を伴わないモーション系かまたはセンス系のコマンドかが判る。
【0138】
次のステップS4では、データ転送を伴わないコマンドか、即ちモーション系のコマンドかまたはセンス系のコマンドかを判別する。モーション系コマンドまたはセンス系コマンドであれば、ステップS5に進み、動作中の磁気テープドライブユニットがあるか否かチェックする。動作中の磁気テープドライブユニットがあれば、ステップS6で、受信コマンドの解析で得られたドライブ機番と現在動作中のドライブ機番が同一か否かチェックする。
【0139】
同一であれば、コマンドの如何に関わらず実行することはできないため、ステップS10でビジィ応答を返す。ドライブ機番が異なっていれば、モーション系コマンドまたはセンス系コマンドは実行可能であることから、ステップS7で受信コマンドを実行する。続いてステップS8で、コマンド実行に伴う一連の転送処理の終了を判別すると、ステップS9でユニットエンドを応答して、再びステップS1に戻る。勿論、ビジィ応答を行ったポートがあれば、ユニットエンドに伴ってビジィエンドを応答する。
【0140】
一方、ステップS4でデータ転送を伴うライトコマンドまたはリードコマンドであった場合には、ステップS11に進み、他のポートでデータ転送中か否かチェックする。他のポートでデータ転送中にあれば、データ転送はできないことから、ステップS12でビジィ応答を返し、ステップS1に戻る。
他のポートでデータ転送中でなければ、ライトコマンドまたはリードコマンドは実行可能であることから、ステップS12でコマンド実行に伴うデータ転送処理を行い、ステップS8で転送終了を終了すると、ステップS9でユニットエンドを応答して、再びステップS1の処理に戻る。
【0141】
尚、前述した本発明の各実施例にあっては、磁気テープを記憶媒体とした磁気テープ制御ユニットおよび磁気テープドライブユニットで構成された入出力サブシステムを例にとっているが、これ以外の入出力装置として、光磁気ディスク装置、磁気ディスク装置など、適宜の入出力装置を対象とした入出力制御装置を含むものである。また本発明は、実施例に示した数値による限定は受けない。
【0142】
【発明の効果】
以上説明してきたように本発明によれば、入出力制御装置の複数の入出力ポートを異なった転送速度のチャネルバスによってホストコンピュータ側のチャネル装置と接続していても、入出力要求に対するサービスが特定のチャネルとポート間に偏ってしまうことを確実に防止でき、チャネル装置からの入出力要求が重複しても、各入出力ポートに対するサービスをほぼ均一に提供することができる。
【0143】
このため、低速のチャネルとポート間で起動要求がビジィ応答となってユニットエンドに対し起動要求を再度行ってもビジィ応答となってしまうビジィ−ユニットエンドのループ状態へ陥ることを確実に防止し、ホストコンピュータの入出力要求に対する応答遅れでタイムオーバとなり、チェックコンディションとなる事態を回避して、システム性能を保証することができる。
【図面の簡単な説明】
【図1】本発明の原理説明図
【図2】本発明の他の実施例の原理説明図
【図3】本発明が適用されるシステムの構成図
【図4】本発明の入出力制御ユニットのブロック図
【図5】本発明の実施例のブロック図
【図6】図5の起動時間の計測のタイムチャート
【図7】図5の入出力処理のタイムチャート
【図8】図5の入出力処理のフローチャート
【図9】図5の起動時間計測のフローチャート
【図10】図5の待ち時間のタイマセットのフローチャート
【図11】本発明の変形実施例のブロック図
【図12】他の発明の実施例のブロック図
【図13】図12の入出力処理のフローチャート
【図14】他の発明の実施例のブロック図
【図15】図14の入出力処理のフローチャート
【図16】他の発明の実施例のブロック図
【図17】図16の入出力処理のタイムチャート
【図18】図16の入出力処理のフローチャート
【図19】他の発明の第1実施例のブロック図
【図20】図19の入出力処理のタイムチャート
【図21】図19の入出力処理のフローチャート
【図22】他の発明の実施例のブロック図
【図23】他の発明の実施例のブロック図
【図24】他の発明の実施例のブロック図
【図25】図24の入出力処理のタイムチャート
【図26】従来装置のブロック図
【図27】従来の入出力制御で起きるビジィ−ユニットエンドの循環のタイムチャート
【図28】入出力ポートにクロックに同期したタイムスロットを割当てる従来制御の説明図
【符号の説明】
10:磁気テープ制御ユニット(入出力制御装置)
12−1〜12−8:磁気テープドライブユニット(入出力装置)
14−1〜14−8:ホストコンピュータ(上位装置)
16−1〜16−8:チャネル装置
18−1〜18−8:チャネルバス
20−1〜20−8:入出力ポート(ポート)
22:デバイスバス
24:ホストインタフェース部
25:デバイスバス
26:バッファメモリ
28:フォーマッタ部
30:通信情報メモリテーブル
32,38:MPU
34,40:ファームウェア
35:CRT
36:インタフェースプロセッサ
42:フォーマットプロセッサ
44:内部バス
45:キーボード
46:ルート制御部
48:起動時間計測記憶部
50:ビジィ率計測記憶部
52,58:タイマ
54,60:起動数カウンタ
56,62:ビジィ数カウンタ
64,66:カウンタ
68:ビジィ−ユニットエンド循環数判定部(判定部)
74,76:再試行割込み処理部
80:割込みタイマ
82:ビジィ応答記憶部
90:データルート制御部
92,94:コマンド解析実行部
96:データバス
98:制御バス

Claims (4)

  1. 上位装置側の特定のチャネル装置と入出力ポートとの結合による転送処理中に所定の割込条件が成立するか否かを判定する判定過程と、前記判定過程で割込条件が成立した場合、前記入出力ポートから前記チャネル装置に再試行ステータスを応答し転送処理を中断して結合を切り離し、全ポートに関するビジィ応答の状態を解析して優先処理ポートを決定し、該優先処理ポートから他のチャネル装置にエンドステータスを応答して起動要求を行わせ、該起動要求に伴なう転送処理の終了時に、前記入出力ポートから前記チャネル装置に再試行開始の割込みを通知して中断した転送処理を再開させる再試行割込み過程と、を備えたことを特徴とする入出力制御方法。
  2. 請求項1記載の入出力制御方法に於いて、前記判定過程における割込条件は、一定時間に達したときであることを特徴とする入出力制御方法。
  3. 請求項1記載の入出力制御方法に於いて、前記判定過程における割込条件は、結合中の前記入出力ポートのコマンド処理回数が所定値に達した時であることを特徴とする入出力制御方法。
  4. 請求項1記載の入出力制御方法に於いて、前記判定過程における割込条件は、前記入出力ポートの結合中に、他の入出力ポートに対する起動要求に対するビジィ応答でビジィ率が所定値に到達した時であることを特徴とする入出力制御方法。
JP2003126127A 2003-05-01 2003-05-01 入出力制御装置および入出力制御方法 Expired - Fee Related JP4202812B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003126127A JP4202812B2 (ja) 2003-05-01 2003-05-01 入出力制御装置および入出力制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003126127A JP4202812B2 (ja) 2003-05-01 2003-05-01 入出力制御装置および入出力制御方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP20850694A Division JP3474646B2 (ja) 1994-09-01 1994-09-01 入出力制御装置及び入出力制御方法

Publications (2)

Publication Number Publication Date
JP2003303163A JP2003303163A (ja) 2003-10-24
JP4202812B2 true JP4202812B2 (ja) 2008-12-24

Family

ID=29398298

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003126127A Expired - Fee Related JP4202812B2 (ja) 2003-05-01 2003-05-01 入出力制御装置および入出力制御方法

Country Status (1)

Country Link
JP (1) JP4202812B2 (ja)

Also Published As

Publication number Publication date
JP2003303163A (ja) 2003-10-24

Similar Documents

Publication Publication Date Title
JP3474646B2 (ja) 入出力制御装置及び入出力制御方法
JP2002312126A (ja) 磁気ディスク装置間結合装置
US8307157B2 (en) Disk array system and traffic control method
KR101355326B1 (ko) 포트를 활성 상태로부터 대기 상태로 전이하는 방법, 통신장치에서 이용하기 위한 장치 및 데이터 통신 시스템
JP4160470B2 (ja) 入出力制御装置および入出力制御方法
JP4202812B2 (ja) 入出力制御装置および入出力制御方法
JP2550811B2 (ja) 通信制御方法
JPS6235150B2 (ja)
JPH0483439A (ja) データ転送量異常検出方式
JP2002116920A (ja) クラスタシステム、クラスタシステムにおける監視方法およびコンピュータプログラム
JPH08329023A (ja) 並列電子計算機システム
JPH11327793A (ja) 記憶制御装置
JPS61117949A (ja) 調歩同期式回線制御装置
JP2809164B2 (ja) 双方向データ通信システム
JPH0546525A (ja) フアイル制御方式
JPH07115423A (ja) 伝送制御方式
JPH01311348A (ja) チャネル・インターフェイス回路
JPS593528A (ja) 共用制御方式
JPH06149728A (ja) I/oバス拡張装置およびその制御方法
JPS6024747A (ja) 優先通信方式
JPH06168174A (ja) 複数のホストコンピュータに接続されるファイルサブシステム
JPH03237540A (ja) タイムアウト検出方式
JP2003167838A (ja) Scsiデバイス及びその制御方法
JPH02130625A (ja) インタフェース制御方式
JPH05216840A (ja) バス競合分散制御方式

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050802

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050930

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060425

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060623

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060703

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20070330

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080807

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081009

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111017

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees