JPS63291148A - 入出力制御装置の再試行制御方式 - Google Patents

入出力制御装置の再試行制御方式

Info

Publication number
JPS63291148A
JPS63291148A JP62125478A JP12547887A JPS63291148A JP S63291148 A JPS63291148 A JP S63291148A JP 62125478 A JP62125478 A JP 62125478A JP 12547887 A JP12547887 A JP 12547887A JP S63291148 A JPS63291148 A JP S63291148A
Authority
JP
Japan
Prior art keywords
channel program
processing
executed
identification information
input
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
Application number
JP62125478A
Other languages
English (en)
Other versions
JPH0731643B2 (ja
Inventor
Toshio Nakamura
敏夫 中村
Haruo Hayamizu
速水 治夫
Hideaki Takeda
武田 英昭
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.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
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 Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP62125478A priority Critical patent/JPH0731643B2/ja
Publication of JPS63291148A publication Critical patent/JPS63291148A/ja
Publication of JPH0731643B2 publication Critical patent/JPH0731643B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Retry When Errors Occur (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、計算機システムにおける入出力制御装置の再
試行制御方式に係り、特に入出力制御装置が複数のチャ
ネルプログラムにまたがって動作している時に、該入出
力制御装置の動作に関連した障害が発生した場合に好適
な入出力制御装置の再試行制御方式に関する。
〔従来の技術〕
計算機システムでは、瞬時的障害に対処するため、一般
に障害が発生した場合、ソフトウェアによる再試行を実
行して障害の回復を図っている。
この場合、入出力制御装置(以下、IOCという)では
、障害が発生したチャネルプログラムの先頭から再試行
を行うのが普通である。
〔発明が解決しようとする問題点〕
一般のIOCでは、チャネルプログラムが処理の基本単
位であるため、チャネルプログラムの単位での再試行を
行っても、何等論理的矛盾を生じないが、例えば最近の
ソート処理機能を有するIOCなどのように、処理対象
のデータ量が多くなると、一つのチャネルプログラムで
は全データが転送できなくなり、複数のチャネルプログ
ラムにまたがって転送しなければならない場合が生じる
このような場合、障害が発生して、途中のチャネルプロ
グラムでそのま\再試行を行うと、正しく再試行が行わ
れない事態が生じる。以下、これを具体例で説明する。
こぎで、第2図に示すように、IOCのチャネルコマン
ドを、次のように定義する。
■ TOR・・・IOCに対し動作を指定するIOCオ
ーダ(制御データ)を転送する、 ■ WRT・・・IOCが処理すべきデータ(入力デー
タ)をIOCから読出す(WRITE動作)。
■ RD・・・・・・IOCが処理したデータ(出力デ
ータ)をIOCから読出す(READ動作)、l0C−
ダには、入出力データに対するIOCの実行すべき動作
(READ/WRITE動作と区別するために、こ2で
は、本来処理と称することにする)を指定するオーダ種
別等が記述される。
第3図に一連の処理を行うためのチャネルプログラムの
列を示す。こ\で、1つのチャネルプログラムの先頭に
は、IOCに対し、IOCオーダを転送するTORコマ
ンドを記述し、その後はWRTコマンドが複数回記述さ
れているとする。また、1つのWRTコマンドでは1つ
のバッファ(複数のレコードの集まりを格納しているデ
ータバイトをバッファと呼ぶことにする)をIOCに転
送するものとする。なお、CCはコマンドチェインを意
味する。
今、第3図に示すチャネルプログラムの列を実行中、I
OCの動作に関連した障害が発生し、途中のチャネプロ
グラムで再試行になった場合を考える。この場合の従来
の再試行処理手順を第7図に示す、第7図は2番目のチ
ャネルプログラムの実行途中で障害が発生して再試行に
なった例で、2番目のチャネルプログラムの先頭からそ
のま\再試行を行うことを示している。
第7図において、障害時点までに、IOCは2番目のチ
ャネルプログラムの3番目のWRTコマンドまでに渡さ
れたバッファについて既にTORコマンドで指示された
本来処理を実行している。
例えばソート処理の場合、障害時点までのデータはIO
C内でソートが済んでいる。このため、2番目のチャネ
ルプログラムの先頭からそのま\再試行を行うと、処理
が重複して行われるため、正しい処理結果が得られない
。なお、それまでに実行した内部状態を破棄して、2番
目のチャネルプログラムの先頭から再試行を行う場合に
おいては、1番目のチャネルプログラムで実行した処理
も破棄されてしまい、やはり正しく再処行処理達できな
い。
本発明の目的は、IOC側で上記のごとき問題点を解決
する再試行制御方式を提供することにある。
〔問題点を解決するための手段及び作用〕本発明は、チ
ャネルプログラムに、その発行順序が認識できる識別情
報(例えば、チャネルプログラム通番、オーダ種別毎の
通番)を付加すると\もに、入出力制御装置に、実行し
たチャネルプログラムの識別情報と処理済動作数(例え
ば処理済バッファ数)を記憶する手段を設ける。
入出力制御装置は、新しく発行されたチャネルプログラ
ムの識別情報が記憶してある直前に実行したチャネルプ
ログラムの識別情報と同じか比較し、同じ場合には再試
行処理と認識して、当該チャネルプログラム中の処理済
みバッファについては転送処理を行うだけで、何も動作
せずにスキップし、その後の未処理のバッファから処理
を行う。
これにより、一連の処理が複数のチャネルプログラムに
またがってする場合にも再試行処理を正しく行うことが
できる。
〔実施例〕
以下1本発明の一実施例について図面により説明する。
第1図は本発明の一実施例の構成図である。第1図にお
いて、本体系装置(CPU)10はチャネルプログラム
を管理しており、入出力制御装置(IOC)20を起動
してチャネルコマンドを工0C20に送る。l0C20
は、CPUl0からの入力データあるいはCPUl0へ
の出力データの格納場所である作業用メモリ30、CP
Ul0との間の転送制御を行うチャネルインタフェース
制御部40、再試行制御を行うための処理状態を記憶す
る記憶部50.CPUl0からの入力データに対しIO
Cオーダで指定された動作を行う主装置(例えばソート
処理装置など)、IOC全体を制御する主制御部70よ
りなる。なお、記憶部50は作業用メモリ30が兼ねる
ようにしてもよい。
こ\で、チャネルプログラムは第3図の通りとする。l
0C20の基本的動作は、まずCPUl0から1゛OR
コマンドによるIOCオーダの転送を受ける0次に、C
PUl0からWRTコマンドによる1バツフアの転送を
受けた後、主装置60を起動して、バッファ単位でIO
Cオーダに従い、指定された動作を行うという処理を全
てのバッファが終了するまで繰返し行う。これでバッフ
ァ単位の処理が行われる。
次に、本発明による再試行制御動作について説明する。
第4図は本発明の再試行制御方式の第1の実施例の処理
手順を示したものである。CPUl0は、TORコマン
ドで転送する■○Cオーダに、チャネルプログラムの発
行順序を認識できるチャネルプログラム通番(CPNO
)をふってl0C20に通知する。l0C20では、チ
ャネルプログラム単位に、CPNOを記憶部50に記憶
し、さらに、該チャネルプログラムで複数のバッファの
どこまで処理されているか(処理済バッファ数、PBN
O)を計数して、同じく記憶部50に記憶しておく。障
害が発生すると、CPUl0は該障害の発生したチャネ
ルプログラムの先頭から再試行を行い、そのTORコマ
ンドで転送するIOCオーダに該チャネルプログラム通
番(CPNO)をふってl0C20に再通知する。l0
C20は、今回送られて来たチャネルプログラムのCP
NOが、記憶部50に記憶されている直前に実行したチ
ャネルプログラムのCPNOと同じかチェックし、同じ
であれば、再試行処理と認識し、該チャネルプログラム
内の処理済みバッファ(記憶部れているPBNOで分か
る)については転送処理を行うだけで、何も動作しない
で、未処理のバッファから処理を行う、第4図では、第
7図の例と同様に2番目のチャネルプログラムで障害が
発生し。
再試行になった場合を示している。
こ\で、第1図の動作を第4図の例で詳述する。
チャネルプログラム通番は1から連続にふられているも
のとし、また、記憶部50のチャネルプログラム通番の
格納域は、初期状態では110”に初期設定されている
ものとする。なお、最初のチャネルプログラムの場合は
、旧CPNO=Oとしているので、新CP N O〜旧
CPNOであり、再試行ではないと認識する。CPUl
0から1つのチャネルプログラムによりl0C20を起
動する。
チャネルインタフェース制御部40は、まず、CPUl
0からTORコマンドによりrOCオーダの転送を受け
、IOCオーダを作業用メモリ30に書込む。次に、記
憶部50から直前に実行されたCPNO(旧CPNO)
を読出す。次に、作業用メモリ30のIOCオーダの中
からチャネルプログラム通番(新CPNO)を読出し、
記憶部50に書込み、CPNOを記憶する。
次に、新CPNOと旧CPNOとを比較する。
この時、新CPNO〜旧CPNOの場合は、処理済バッ
ファ数PBNO=Oにして、以下の処理を行う。
■ WRTコマンドによる1バツフアの転送処理を行い
、作業用メモリ30にデータを格納する、■ 主装置6
0を起動する、 ■ 主装置60は、作業用メモリ30にあるデータを参
照して、指定された動作を行う、■ 主装置60の■の
動作が終了すれば、PBNOをカウントアツプする(P
BNO=PBNO+1)、 ■ PBNOを記憶部50に格納する。□上記■〜■の
処理を全てのWRTコマンド(全てのバッファ)が終了
するまで繰返し行う。
また、新CPNO=旧CPNOの場合は、再試行処理で
あると認識して、記憶部50から処理済バッファ数(P
 B No)を読出し、PBNO分だけ、各WRTコマ
ンドによる1バツフアの作業用30への転送処理を行う
だけで、主装置60は起動しない(これを5KIP処理
と称する)。
PBNO分の5KIP処理が終了した後は、以下の処理
を行う。
■ WRTコマンドによる1バツフアの転送処理を行い
、作業用メモリ20にデータを格納する、■ 主装置6
0を起動する、 ■ 主装置60は、作業用メモリ30にあるデータを参
照して、指定された動作を行う、■ 主装[60の■の
動作が終了すれば、PBNOをカウントアツプする、 ■ PBNOを記憶部50に格納する、上記■〜■の処
理を全てのWRTコマンド(全てのバッファ)が終了す
るまで繰返し行う。なお、新CPNO=旧CPNOでか
つ直前のPBNOが0の時は、5KIP処理は行わず、
上記■〜■の処理を全てのWRTコマンドが終了するま
で繰返し行う。
第5図は本発明の再試行制御方式の第2の実施例の処理
手順を示したものである。CPUl0では、TORコマ
ンドで転送するIOCオーダに、オーダ種別(osy)
毎の発行順序を認識できるO8Y通番(ORNO)をふ
って、IOCに通知する。IOCでは、チャネルプログ
ラム単位に、O8Y及び0RNOを記憶し、さらに、該
チャネルプログラムで、複数のバッファのどこまで処理
されているかを計数して、PBNOを記憶しておく。障
害が発生した後で、再試行処理となった場合に、l0C
20では今回のチャネルプログラムのO8Y及び0RN
Oが、記憶されている直前に実行したチャネルプログラ
ムのO8Y及び0RNOと同じである場合、再試行処理
と認識し、該チャネルプログラム内の処理済みバッファ
については転送処理を行うだけで、何も動作しないで、
その後の未処理のバッファから処理を行う。第5図でも
、2番目のチャネルプログラムで障害が発生し、再試行
になった場合を示している。
第6図は本発明の再試行制御方式の第3の実施例の処理
手順を示したものである。第6図の例は障害原因によっ
てリセットがなされ、その後で再試行になった場合であ
る。この場合、リセットにより、IOC全体をリセット
すると、それまでに実行した内部状態が破棄されてしま
うことから、再試行が行えないため、本来処理に必要な
実行(内部)状態は全て保存しておき、他の部分をリセ
ットする。その後の処理は、第4図あるいは第5図と同
様である。
〔発明の効果〕
以上説明したように、本発明によれば、複数のチャネル
プログラムにより一連の処理を行う入出力制御装置での
再試行処理を正しく行うことが可能となり、かつ、再試
行処理を短時間に行える利点がある。
【図面の簡単な説明】
第1図は本発明による入出力制御装置の一実施例の構成
図、第2図はチャネルコマンドの一例を示す図、第3図
は一連の処理を行う複数チャネルプログラムの一例を示
す図、第4図乃至第6図は本発明の再試行制御方式の各
実施例の処理手順を示す図、第7図は従来の再試行制御
方式の処理手順を示す図である。 10・・・本体系装置(CP U)、 20・・・入出力制御装置(IOC)、30・・・作業
用メモリ、 40・・・チャネルインタフェース制御部、50・・・
記憶部、 60・・・主装置、70・・・主制御部。 第3図

Claims (1)

    【特許請求の範囲】
  1. (1)上位装置が発行するチャネルプログラムに従って
    処理を実行する入出力制御装置において、チャネルプロ
    グラムに、その発行順序が認識できる識別情報を付加す
    るとゝもに、入出力制御装置に、実行したチャネルプロ
    グラムの識別情報と処理済動作数を記憶する手段を設け
    、入出力制御装置は、新しく発行されたチャネルプログ
    ラムの識別情報と記憶してある直前に実行したチャネル
    プログラムの識別情報を比較し、一致していると再試行
    処理と認識し、当該チャネルプログラム中の処理済動作
    数分の動作をスキップし、その後の未処理の動作から処
    理を実行する、 ことを特徴とする入出力制御装置の再試行制御方式。
JP62125478A 1987-05-22 1987-05-22 入出力制御装置の再試行制御方式 Expired - Fee Related JPH0731643B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62125478A JPH0731643B2 (ja) 1987-05-22 1987-05-22 入出力制御装置の再試行制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62125478A JPH0731643B2 (ja) 1987-05-22 1987-05-22 入出力制御装置の再試行制御方式

Publications (2)

Publication Number Publication Date
JPS63291148A true JPS63291148A (ja) 1988-11-29
JPH0731643B2 JPH0731643B2 (ja) 1995-04-10

Family

ID=14911084

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62125478A Expired - Fee Related JPH0731643B2 (ja) 1987-05-22 1987-05-22 入出力制御装置の再試行制御方式

Country Status (1)

Country Link
JP (1) JPH0731643B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09167122A (ja) * 1995-12-18 1997-06-24 Nec Corp ベーシック手順における二重受信回避方式

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60142418A (ja) * 1983-12-28 1985-07-27 Hitachi Ltd 入出力エラ−回復方式

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60142418A (ja) * 1983-12-28 1985-07-27 Hitachi Ltd 入出力エラ−回復方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09167122A (ja) * 1995-12-18 1997-06-24 Nec Corp ベーシック手順における二重受信回避方式

Also Published As

Publication number Publication date
JPH0731643B2 (ja) 1995-04-10

Similar Documents

Publication Publication Date Title
US4888691A (en) Method for disk I/O transfer
US3688274A (en) Command retry control by peripheral devices
JPH07117903B2 (ja) 障害回復方法
JPS63291148A (ja) 入出力制御装置の再試行制御方式
JPS58182775A (ja) 磁気デイスク装置の自己診断方式
JPS61259334A (ja) デ−タ転送方式
US6535935B1 (en) Method of sending data streams using a refetchable first-in-first-out memory which is read in a sequence that backs-up
JPS6217877Y2 (ja)
JP2524620B2 (ja) 入出力制御方法
JP2919457B1 (ja) 二重化装置i/o制御方式およびそのプログラム記録媒体
JPS5916067A (ja) デ−タチエツク方式
JPS58114152A (ja) 磁気デイスクバツクアツプ装置
JPS6143739B2 (ja)
JPH01140357A (ja) メモリアクセス制御装置
JPH0578859B2 (ja)
JPS6118032A (ja) 外部メモリ制御装置
JPH0353655B2 (ja)
JPH0628058A (ja) イニシャライズ制御方式
JPS5896326A (ja) 入出力制御方法
JPS61271530A (ja) 記憶サブシステム制御方式
JPS63137350A (ja) チヤネルプログラム実行制御方式
JPS5880757A (ja) デ−タ転送制御方法
JPH0415832A (ja) 障害処理方式
JPH02212953A (ja) 情報処理装置
JPS6041123A (ja) 磁気デイスク制御装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees