JPH1031630A - 未着割込みハンドラ操作方法及びシステム - Google Patents
未着割込みハンドラ操作方法及びシステムInfo
- Publication number
- JPH1031630A JPH1031630A JP9073732A JP7373297A JPH1031630A JP H1031630 A JPH1031630 A JP H1031630A JP 9073732 A JP9073732 A JP 9073732A JP 7373297 A JP7373297 A JP 7373297A JP H1031630 A JPH1031630 A JP H1031630A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt handler
- request
- timeout
- input
- missing
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
- G06F9/4825—Interrupt from clock, e.g. time of day
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/0757—Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【課題】 I/O要求に対して、可変未着割込みハンド
ラ(MIH)・タイムアウトをサポートするMIHソフ
トウェア機構を提供する。 【解決手段】 MIHタイムアウトが発生する場合に示
される、I/O装置操作の誤った失敗指示を防止するよ
うにMIHタイムアウトが可変される。MIHタイムア
ウトを延長することによりI/O装置はその操作を完了
するために、より多くの時間を提供される。延長は装置
制御ユニット(CU)またはOSが最短の有効MIHタ
イムアウト以前にI/O操作が完了できないと判断する
とき、提供される。I/O要求がI/O装置において長
い操作時間を要求するロング・コマンドを有することを
OSが検出することに応答して、或いはI/O装置がエ
ラー状態では無しに、そこで現操作が過度な時間を費や
していることを示すCUからの信号に応答して、1次M
IHタイムアウト期間の長さが2次MIHタイムアウト
期間に延長される。
ラ(MIH)・タイムアウトをサポートするMIHソフ
トウェア機構を提供する。 【解決手段】 MIHタイムアウトが発生する場合に示
される、I/O装置操作の誤った失敗指示を防止するよ
うにMIHタイムアウトが可変される。MIHタイムア
ウトを延長することによりI/O装置はその操作を完了
するために、より多くの時間を提供される。延長は装置
制御ユニット(CU)またはOSが最短の有効MIHタ
イムアウト以前にI/O操作が完了できないと判断する
とき、提供される。I/O要求がI/O装置において長
い操作時間を要求するロング・コマンドを有することを
OSが検出することに応答して、或いはI/O装置がエ
ラー状態では無しに、そこで現操作が過度な時間を費や
していることを示すCUからの信号に応答して、1次M
IHタイムアウト期間の長さが2次MIHタイムアウト
期間に延長される。
Description
【0001】
【発明の属する技術分野】本発明は、オペレーティング
・システム(OS)のI/O要求を満足するI/O装置
の操作の潜在故障を示す未着割込み(missing interrup
t)を検出するために、OS内で見い出される未着割込
みハンドラ(MIH)・タイムアウト制御(一般にソフ
トウェアで実現される)に関する。本発明は、I/O要
求が他の競合するOS I/O要求により不当に遅延さ
れるときに生成され得る、特定の誤った指示を防止す
る。こうした競合するI/O要求は、待機中の要求には
知れていないため、MIHタイムアウトの発生以前に要
求I/O装置に対する操作完了割込みを受信することに
失敗し、潜在的な装置操作故障を示すMIHタイムアウ
トを生じ得る。
・システム(OS)のI/O要求を満足するI/O装置
の操作の潜在故障を示す未着割込み(missing interrup
t)を検出するために、OS内で見い出される未着割込
みハンドラ(MIH)・タイムアウト制御(一般にソフ
トウェアで実現される)に関する。本発明は、I/O要
求が他の競合するOS I/O要求により不当に遅延さ
れるときに生成され得る、特定の誤った指示を防止す
る。こうした競合するI/O要求は、待機中の要求には
知れていないため、MIHタイムアウトの発生以前に要
求I/O装置に対する操作完了割込みを受信することに
失敗し、潜在的な装置操作故障を示すMIHタイムアウ
トを生じ得る。
【0002】
【従来の技術】全てのコンピュータ環境では、様々なI
/O装置からのその装置による操作を要求する割込みが
OSにより認識されずに終り得る。なぜなら、I/O装
置からOSに至る経路内に存在する構成要素が割込みを
転送し損ない、結果的にI/O装置が割込みを提供し損
なうか、或いはOSが割込みが提供されるとき、それを
認識し損なうからである。
/O装置からのその装置による操作を要求する割込みが
OSにより認識されずに終り得る。なぜなら、I/O装
置からOSに至る経路内に存在する構成要素が割込みを
転送し損ない、結果的にI/O装置が割込みを提供し損
なうか、或いはOSが割込みが提供されるとき、それを
認識し損なうからである。
【0003】未着割込みの検出の失敗は、データ処理シ
ステムにおける操作をスロー・ダウンさせ、割込みが発
生するまで重要な資源が解放されなかったり、或いは未
着割込みに関連付けられる処理が中止される場合、究極
的にはシステムを停止させ得る。こうした検出の失敗は
資源を再度使用可能にするために、不定期のシステム再
始動(IPL)を要求し得る。特定のキュー上の資源要
求を突き止めるための手動による試みは、通常、要求元
の利用者が待つことのできない長い時間を費やす。
ステムにおける操作をスロー・ダウンさせ、割込みが発
生するまで重要な資源が解放されなかったり、或いは未
着割込みに関連付けられる処理が中止される場合、究極
的にはシステムを停止させ得る。こうした検出の失敗は
資源を再度使用可能にするために、不定期のシステム再
始動(IPL)を要求し得る。特定のキュー上の資源要
求を突き止めるための手動による試みは、通常、要求元
の利用者が待つことのできない長い時間を費やす。
【0004】未着割込みがシステムに及ぼす致命的な影
響を軽減するために、失われた割込みを検出し、失敗操
作を終了させ、配備された回復機構により失敗操作を再
開するか、或いはその操作を開始したジョブをエラーに
より終了する方法が開発された。この機構は未着割込み
ハンドラ(MIH)と呼ばれ、進行中のI/O操作を'
時間設定(time)'する能力を有する。実際、これは時
間測定ではなくI/O装置に対して可能性のある最長の
I/O操作に対して、'正常'と見なされる時間長の制限
である。これは全ての操作が長時間を費やすべきことを
意味するのではなく、この時間を超過する全ての操作が
異常と見なされるべきことを意味する。従って未着割込
みハンドラは、ホストを失われた割込みの影響から保護
するための、システム下の'安全網(safety net)'であ
る。
響を軽減するために、失われた割込みを検出し、失敗操
作を終了させ、配備された回復機構により失敗操作を再
開するか、或いはその操作を開始したジョブをエラーに
より終了する方法が開発された。この機構は未着割込み
ハンドラ(MIH)と呼ばれ、進行中のI/O操作を'
時間設定(time)'する能力を有する。実際、これは時
間測定ではなくI/O装置に対して可能性のある最長の
I/O操作に対して、'正常'と見なされる時間長の制限
である。これは全ての操作が長時間を費やすべきことを
意味するのではなく、この時間を超過する全ての操作が
異常と見なされるべきことを意味する。従って未着割込
みハンドラは、ホストを失われた割込みの影響から保護
するための、システム下の'安全網(safety net)'であ
る。
【0005】初期には、低速装置(ユニット・レコー
ド)と高速装置(DASD)とを区別するために、2つ
のタイマ値が確立され、異なるマシンに対してタイマ値
を個別に適合化するといった限られた能力を提供した。
しかしながら、2つのタイマ値では十分ではなく、従っ
て様々な装置のニーズ及び応答要求に適合するように調
整され得る、追加の個々のMIHタイマ値が実現され
た。
ド)と高速装置(DASD)とを区別するために、2つ
のタイマ値が確立され、異なるマシンに対してタイマ値
を個別に適合化するといった限られた能力を提供した。
しかしながら、2つのタイマ値では十分ではなく、従っ
て様々な装置のニーズ及び応答要求に適合するように調
整され得る、追加の個々のMIHタイマ値が実現され
た。
【0006】時を経て、MIH構成要素の機能が、MI
Hタイムアウトの動的な変更を可能にするように拡張さ
れ、最初に実施された単なる活動時間の代わりに全ての
I/O要求処理にわたり、制限時間を定める能力を備え
るようになった。これらには、キューイング時間及びエ
ラー回復プロシジャ(ERP)が含まれる。しかしなが
ら、コンピュータ・オペレーティング・システムの今日
の未着割込みハンドラ構成要素は欠点を有する。
Hタイムアウトの動的な変更を可能にするように拡張さ
れ、最初に実施された単なる活動時間の代わりに全ての
I/O要求処理にわたり、制限時間を定める能力を備え
るようになった。これらには、キューイング時間及びエ
ラー回復プロシジャ(ERP)が含まれる。しかしなが
ら、コンピュータ・オペレーティング・システムの今日
の未着割込みハンドラ構成要素は欠点を有する。
【0007】今日のオペレーティング・システムでは、
装置クラス(すなわちDASD、テープなど)にもとづ
く様々なデフォルト指定のMIHインタバルが存在す
る。しかしながら、各装置クラス内では異なる装置タイ
プに対する推奨MIH時間の間に多大な不均衡が存在す
る。例えばテープ装置では、異なるモデルのテープ装置
に対する推奨MIH検出インタバルはS/390 34
20テープ装置の場合の3分から、S/390 349
0Eテープ装置の場合の20分まで変化する。MIH時
間のこの変化はテープが含める異なる容量、及び媒体が
移動できる最大物理スピードによる。
装置クラス(すなわちDASD、テープなど)にもとづ
く様々なデフォルト指定のMIHインタバルが存在す
る。しかしながら、各装置クラス内では異なる装置タイ
プに対する推奨MIH時間の間に多大な不均衡が存在す
る。例えばテープ装置では、異なるモデルのテープ装置
に対する推奨MIH検出インタバルはS/390 34
20テープ装置の場合の3分から、S/390 349
0Eテープ装置の場合の20分まで変化する。MIH時
間のこの変化はテープが含める異なる容量、及び媒体が
移動できる最大物理スピードによる。
【0008】MIH検出インタバルは、装置の最長のコ
マンド(例えばスペース・ファイル先送り、巻き戻し/
アンロードなど)を実行する時間よりも大きくなければ
ならない。別の例はDASD装置の場合である。MVS
(多重仮想記憶装置、S/390マシンにおけるIBM
の最初のオペレーティング・システム)オペレーティン
グ・システムはDASD装置に対して、15秒のデフォ
ルト指定のMIH時間を有する。これは通常、作業負荷
または特定の装置を使用するアプリケーションの特殊な
特性により、システム操作者による調整を必要とするだ
けである。例えばJES2(ジョブ・エントリ・システ
ム2)チェックポイント・データ・セットは初期化の間
に長い時間を確保され得るが、高い可用性のアプリケー
ションはそれらのI/Oが完了したか否かを、数秒の後
に通知される必要がある。なぜなら、アプリケーション
が別の装置を試行し、その上トランザクション時間要求
を生成するからである。しかしながら、新たなDASD
特性はMIH検出インタバルを選択する問題を一層複雑
にする。IBM3990 DASDは、その完了に30
秒を費やし得る内部エラー回復機能を有する。この回復
の間にMIH条件が検出される場合、ホスト回復動作が
制御ユニットにおいて重大な問題を生じ得る。従って、
3990 DASDでは、システム操作者が30秒のM
IHインタバルを設定することが推奨される。更に他の
装置がシステムに対して、あたかもそれらがDASD装
置であるかのように定義され得る。これに相当する例は
IBM3995光装置であり、これらの装置上の幾つか
の操作は光媒体の取り外し及び装着を要求し、これには
数分を費やし得る。事態を一層複雑にするのは新たな装
置がコンピュータ・システムに追加されるとき、こうし
た装置の適正な操作を保証するために既存のMIH個別
化情報が更新される必要があり得ることである。
マンド(例えばスペース・ファイル先送り、巻き戻し/
アンロードなど)を実行する時間よりも大きくなければ
ならない。別の例はDASD装置の場合である。MVS
(多重仮想記憶装置、S/390マシンにおけるIBM
の最初のオペレーティング・システム)オペレーティン
グ・システムはDASD装置に対して、15秒のデフォ
ルト指定のMIH時間を有する。これは通常、作業負荷
または特定の装置を使用するアプリケーションの特殊な
特性により、システム操作者による調整を必要とするだ
けである。例えばJES2(ジョブ・エントリ・システ
ム2)チェックポイント・データ・セットは初期化の間
に長い時間を確保され得るが、高い可用性のアプリケー
ションはそれらのI/Oが完了したか否かを、数秒の後
に通知される必要がある。なぜなら、アプリケーション
が別の装置を試行し、その上トランザクション時間要求
を生成するからである。しかしながら、新たなDASD
特性はMIH検出インタバルを選択する問題を一層複雑
にする。IBM3990 DASDは、その完了に30
秒を費やし得る内部エラー回復機能を有する。この回復
の間にMIH条件が検出される場合、ホスト回復動作が
制御ユニットにおいて重大な問題を生じ得る。従って、
3990 DASDでは、システム操作者が30秒のM
IHインタバルを設定することが推奨される。更に他の
装置がシステムに対して、あたかもそれらがDASD装
置であるかのように定義され得る。これに相当する例は
IBM3995光装置であり、これらの装置上の幾つか
の操作は光媒体の取り外し及び装着を要求し、これには
数分を費やし得る。事態を一層複雑にするのは新たな装
置がコンピュータ・システムに追加されるとき、こうし
た装置の適正な操作を保証するために既存のMIH個別
化情報が更新される必要があり得ることである。
【0009】オペレーティング・システムMIHハンド
ラに関する別の問題は、MIHが余りに長いことであ
る。上述のように、MIH時間は各装置タイプに対して
その装置の特性にもとづき利用者により設定される必要
がある。実行され得る最長のコマンド(すなわち巻き戻
し/アンロード)が20分を費やすと思われる場合、た
とえほとんどの単純なデータ転送コマンドが数秒で実行
されると期待されても、20分のインタバルの後に全て
のハング条件が検出される。エラー検出時間の延長はシ
ステムの信頼性及び可用性を低下させる点で、利用者に
悪影響を及ぼす。改善された技術を備える新たな装置が
旧装置を置換する場合、MIH時間が新たな要求に合致
するように手動式に調整されなければならない。
ラに関する別の問題は、MIHが余りに長いことであ
る。上述のように、MIH時間は各装置タイプに対して
その装置の特性にもとづき利用者により設定される必要
がある。実行され得る最長のコマンド(すなわち巻き戻
し/アンロード)が20分を費やすと思われる場合、た
とえほとんどの単純なデータ転送コマンドが数秒で実行
されると期待されても、20分のインタバルの後に全て
のハング条件が検出される。エラー検出時間の延長はシ
ステムの信頼性及び可用性を低下させる点で、利用者に
悪影響を及ぼす。改善された技術を備える新たな装置が
旧装置を置換する場合、MIH時間が新たな要求に合致
するように手動式に調整されなければならない。
【0010】更に、今日の装置及びMIH機能では、全
てのコマンドが同一のMIHインタバルに設定される。
これはオペレーティング・システムにより、回復及び再
構成動作の間に使用される特殊な制御及び回復コマンド
(すなわち、パス・グループIDのセット、パス・グル
ープIDのセンス、忠誠(allegiance)のリセット、割
当て/割当て解除、アクセス制御など)にも当てはま
る。これらのコマンドがオペレーティング・システムに
より発行されるとき、重要なシステム資源が保持され、
他の利用者の通常の作業の実行を遅延させ得る。これら
のコマンドの回復のための特殊タイマ・コードの追加
は、システムの開発にとって極めて高価であり、製品コ
ストを押し上げる。
てのコマンドが同一のMIHインタバルに設定される。
これはオペレーティング・システムにより、回復及び再
構成動作の間に使用される特殊な制御及び回復コマンド
(すなわち、パス・グループIDのセット、パス・グル
ープIDのセンス、忠誠(allegiance)のリセット、割
当て/割当て解除、アクセス制御など)にも当てはま
る。これらのコマンドがオペレーティング・システムに
より発行されるとき、重要なシステム資源が保持され、
他の利用者の通常の作業の実行を遅延させ得る。これら
のコマンドの回復のための特殊タイマ・コードの追加
は、システムの開発にとって極めて高価であり、製品コ
ストを押し上げる。
【0011】上述のように、コンピュータ・システム
は、利用者が装置の物理特性にもとづき、手動式にMI
H時間をセットすることを要求する。例えば利用者はS
/390 3995光ライブラリ装置が実際はS/39
0 DASD3380装置として定義されること、及び
光媒体の通常のステージング/デステージングに対して
MIH条件が検出されないように、MIHインタバルが
十分に高くセットされなければならないことを知らなけ
ればならない。更に、テープ・ドライブのセットが追加
または更新される場合、テープ・ドライブのスピード及
び容量にもとづきMIH時間が調整される必要がある。
この手動プロセスはエラーにつながり易い。たまたま省
略された誤ったMIH条件が検出されるとジョブは失敗
し得る。
は、利用者が装置の物理特性にもとづき、手動式にMI
H時間をセットすることを要求する。例えば利用者はS
/390 3995光ライブラリ装置が実際はS/39
0 DASD3380装置として定義されること、及び
光媒体の通常のステージング/デステージングに対して
MIH条件が検出されないように、MIHインタバルが
十分に高くセットされなければならないことを知らなけ
ればならない。更に、テープ・ドライブのセットが追加
または更新される場合、テープ・ドライブのスピード及
び容量にもとづきMIH時間が調整される必要がある。
この手動プロセスはエラーにつながり易い。たまたま省
略された誤ったMIH条件が検出されるとジョブは失敗
し得る。
【0012】また、MIH仕様は物理I/O構成定義と
同期され、更に動的に及びシステム再始動により実行さ
れるシステム構成変更に伴い、更新される必要がある。
MIH時間が正しく更新されないと、システムRAS
(信頼性/可用性/保守性)が低下する。利用者が異な
る装置に対してMIH検出を承知しなければならない事
実はシステム管理のコスト及び計算の全体コストを増加
させる。
同期され、更に動的に及びシステム再始動により実行さ
れるシステム構成変更に伴い、更新される必要がある。
MIH時間が正しく更新されないと、システムRAS
(信頼性/可用性/保守性)が低下する。利用者が異な
る装置に対してMIH検出を承知しなければならない事
実はシステム管理のコスト及び計算の全体コストを増加
させる。
【0013】システム環境:図10は複数のホスト(5
10)を示す。各ホストは汎用コンピュータ・システム
であり、中央プロセッサ命令を含むプログラムを実行す
る1つ以上の中央処理ユニット(CPU(511))
と、I/Oチャネル・サブシステム(512)とを含
み、後者はチャネル・プログラムを実行し、1つ以上の
チャネル・パス(513)を通じてホスト(510)と
1つ以上のI/Oサブシステム(520)との間の情報
の転送を管理する。好適な実施例では、ホスト・コンピ
ュータはIBM S/370またはIBM S/390
コンピュータ・システムであり、I/O装置にESCO
NまたはOEMI I/Oチャネル・インタフェースを
介して接続される。しかしながら、ホスト・コンピュー
タは任意のタイプであってよく、実際には複数のタイプ
であり得る。同様にインタフェースが接続ホスト及びI
/Oサブシステムによりサポートされるならば、チャネ
ル・パスも複数のタイプであってよい。チャネル・パス
のトポロジは、潜在的にI/Oインタフェースのタイプ
に固有である。
10)を示す。各ホストは汎用コンピュータ・システム
であり、中央プロセッサ命令を含むプログラムを実行す
る1つ以上の中央処理ユニット(CPU(511))
と、I/Oチャネル・サブシステム(512)とを含
み、後者はチャネル・プログラムを実行し、1つ以上の
チャネル・パス(513)を通じてホスト(510)と
1つ以上のI/Oサブシステム(520)との間の情報
の転送を管理する。好適な実施例では、ホスト・コンピ
ュータはIBM S/370またはIBM S/390
コンピュータ・システムであり、I/O装置にESCO
NまたはOEMI I/Oチャネル・インタフェースを
介して接続される。しかしながら、ホスト・コンピュー
タは任意のタイプであってよく、実際には複数のタイプ
であり得る。同様にインタフェースが接続ホスト及びI
/Oサブシステムによりサポートされるならば、チャネ
ル・パスも複数のタイプであってよい。チャネル・パス
のトポロジは、潜在的にI/Oインタフェースのタイプ
に固有である。
【0014】各I/Oサブシステム(520)は制御ユ
ニット(521)を含み、これは1つ以上のホスト(5
10)に接続される1つ以上のI/O装置(530)を
管理する。I/O装置は1つ以上の装置パス(531)
を介して、制御ユニットに接続され、これらの装置パス
はI/O装置及び制御ユニットにより情報の通信のため
にサポートされる。一般に制御ユニットは、I/O装置
によりサポートされるI/Oインタフェース(すなわち
装置パス(531))を、ホストによりサポートされる
I/Oインタフェース(すなわちチャネル・パス(51
3))に適応させる。
ニット(521)を含み、これは1つ以上のホスト(5
10)に接続される1つ以上のI/O装置(530)を
管理する。I/O装置は1つ以上の装置パス(531)
を介して、制御ユニットに接続され、これらの装置パス
はI/O装置及び制御ユニットにより情報の通信のため
にサポートされる。一般に制御ユニットは、I/O装置
によりサポートされるI/Oインタフェース(すなわち
装置パス(531))を、ホストによりサポートされる
I/Oインタフェース(すなわちチャネル・パス(51
3))に適応させる。
【0015】各制御ユニット(521)の内部には、複
数のホストと複数のI/O装置との間の対話を管理する
ための機構が存在する。各チャネル・パスは制御ユニッ
ト内のチャネル・アダプタ(524)に接続され、これ
は関連チャネル・パスを通じて通信するために必要な機
構を含む。共用メモリ(522)が各I/Oサブシステ
ム(520)内に存在し、I/Oサブシステム内にあっ
てチャネル・アダプタ(524)を制御するI/O処理
要素によりアクセスされる。この共用メモリは各装置に
関連付けられる情報のブロックを含み、これは"装置n
ロック・データ"(523)として参照される。
数のホストと複数のI/O装置との間の対話を管理する
ための機構が存在する。各チャネル・パスは制御ユニッ
ト内のチャネル・アダプタ(524)に接続され、これ
は関連チャネル・パスを通じて通信するために必要な機
構を含む。共用メモリ(522)が各I/Oサブシステ
ム(520)内に存在し、I/Oサブシステム内にあっ
てチャネル・アダプタ(524)を制御するI/O処理
要素によりアクセスされる。この共用メモリは各装置に
関連付けられる情報のブロックを含み、これは"装置n
ロック・データ"(523)として参照される。
【0016】各ホスト(510)内では、OSプログラ
ムがその任意のCPU(511)により実行され、CP
Uはチャネル・サブシステム(512)に対して選択チ
ャネル・パスまたはチャネル・パスのセットに接続され
る選択装置(530)に、I/O信号を発行するように
指示する。OSプログラムは要求がチャネル・サブシス
テム(512)に提供されてから、I/O操作が完了し
たことを示す応答がチャネル・サブシステムから受信さ
れるまでのI/O操作の期間をモニタするように設計さ
れる。I/O操作の経過時間が特定のしきい値を越える
場合、プログラムは本願の出願人に権利譲渡された米国
特許第5388254号で述べられるように未着割込み
タイムアウトを検出する。このMIHプログラム機能は
特定の報告されない条件により完了し損なったI/O操
作を検出するように意図され、それによりI/O操作の
完了に依存するプロセスの無期限の延期を回避する。
ムがその任意のCPU(511)により実行され、CP
Uはチャネル・サブシステム(512)に対して選択チ
ャネル・パスまたはチャネル・パスのセットに接続され
る選択装置(530)に、I/O信号を発行するように
指示する。OSプログラムは要求がチャネル・サブシス
テム(512)に提供されてから、I/O操作が完了し
たことを示す応答がチャネル・サブシステムから受信さ
れるまでのI/O操作の期間をモニタするように設計さ
れる。I/O操作の経過時間が特定のしきい値を越える
場合、プログラムは本願の出願人に権利譲渡された米国
特許第5388254号で述べられるように未着割込み
タイムアウトを検出する。このMIHプログラム機能は
特定の報告されない条件により完了し損なったI/O操
作を検出するように意図され、それによりI/O操作の
完了に依存するプロセスの無期限の延期を回避する。
【0017】チャネル・サブシステム内ではI/O要求
が選択装置に対してキューに待機され得る。要求装置が
I/O要求を実行するのを待機する間、I/O要求をキ
ューに待機する結果、I/O要求はチャネル・サブシス
テムと選択制御ユニットとの間のチャネル・パスを通じ
て通信を開始する。I/O要求がチャネル・サブシステ
ムにより処理されている間、OSプログラムは他の作業
の実行の継続を許可される。I/O操作の完了時、チャ
ネル・サブシステムがOSプログラムに割込みを発生
し、完了したI/O操作のステータスを提供する。
が選択装置に対してキューに待機され得る。要求装置が
I/O要求を実行するのを待機する間、I/O要求をキ
ューに待機する結果、I/O要求はチャネル・サブシス
テムと選択制御ユニットとの間のチャネル・パスを通じ
て通信を開始する。I/O要求がチャネル・サブシステ
ムにより処理されている間、OSプログラムは他の作業
の実行の継続を許可される。I/O操作の完了時、チャ
ネル・サブシステムがOSプログラムに割込みを発生
し、完了したI/O操作のステータスを提供する。
【0018】制御ユニットは、自身が制御する各装置へ
の同時要求を管理する。制御ユニットがホストにより生
成されたI/O要求を許可すると決定する場合、コマン
ドがチャネルから受諾され、チャネルにより選択された
装置に対して処理される。制御ユニットが同時活動のた
めにホストにより生成されたI/O要求を許可しないと
決定する場合には、コマンドが"ビジー"指示により拒絶
され、I/O要求がチャネル・サブシステムにキュー待
機される。制御ユニットが以前にビジー指示を提供した
後、コマンドを実行できると判断するとき、制御ユニッ
トは"ビジー解除(no-longer busy)"指示を提供し、チ
ャネル・サブシステムにキュー待機されたI/O要求を
再発行するように指示する。要求元のOSプログラムは
そのI/O要求が完了したようには知らされていない程
度にしか、この対話を認識しない。ビジー指示を提供す
るために、制御ユニットにより通常、使用されるアルゴ
リズムについて、次に述べることにする。本発明は、1
つ以上のOSが同一の制御ユニットに対して同時I/O
要求をマークしているとき、未着割込み信号を確実に検
出するために、OSプログラムにより使用される制限時
間の低減を可能にすることによりシステム効率を向上す
るものである。
の同時要求を管理する。制御ユニットがホストにより生
成されたI/O要求を許可すると決定する場合、コマン
ドがチャネルから受諾され、チャネルにより選択された
装置に対して処理される。制御ユニットが同時活動のた
めにホストにより生成されたI/O要求を許可しないと
決定する場合には、コマンドが"ビジー"指示により拒絶
され、I/O要求がチャネル・サブシステムにキュー待
機される。制御ユニットが以前にビジー指示を提供した
後、コマンドを実行できると判断するとき、制御ユニッ
トは"ビジー解除(no-longer busy)"指示を提供し、チ
ャネル・サブシステムにキュー待機されたI/O要求を
再発行するように指示する。要求元のOSプログラムは
そのI/O要求が完了したようには知らされていない程
度にしか、この対話を認識しない。ビジー指示を提供す
るために、制御ユニットにより通常、使用されるアルゴ
リズムについて、次に述べることにする。本発明は、1
つ以上のOSが同一の制御ユニットに対して同時I/O
要求をマークしているとき、未着割込み信号を確実に検
出するために、OSプログラムにより使用される制限時
間の低減を可能にすることによりシステム効率を向上す
るものである。
【0019】同時I/O要求の管理:制御ユニットは所
与の装置に対して、その制御ユニットにおいて進行中の
同時I/O要求の数を判断する。しばしば、装置はその
装置により処理される媒体上での予測可能な結果を保証
するために、I/O要求が直列化されることを要求す
る。制御ユニット内の他の設計制約もまた、装置に対し
て同時に実行され得るI/O要求の数に対して制限を課
し得る。
与の装置に対して、その制御ユニットにおいて進行中の
同時I/O要求の数を判断する。しばしば、装置はその
装置により処理される媒体上での予測可能な結果を保証
するために、I/O要求が直列化されることを要求す
る。制御ユニット内の他の設計制約もまた、装置に対し
て同時に実行され得るI/O要求の数に対して制限を課
し得る。
【0020】図11は、受諾される同時I/O要求の数
を1に制限するために使用され得るプロセスを示し、こ
れは装置における同時要求の直列実行を指示する。この
処理は、チャネル・アダプタにより使用される装置ロッ
ク・プロトコルにより実施され、そこではアダプタが要
求装置に対応するロック・データ・ブロック523内に
おいて、その装置に関連付けられるロックに対してアト
ミック・"テスト及びセット操作"を実行する。このロッ
ク・テスト及びセット・プロトコルは装置がI/O操作
を開始する以前に実行される。テスト及びセット操作が
成功の場合(装置が使用可能であることが判明する)、
I/O操作が受諾され、装置により処理される。テスト
及びセット操作が不成功の場合(装置が使用不能)、チ
ャネル・アダプタのI/O要求はビジー指示を提供され
る。チャネル・アダプタは必要な装置に対するロックを
獲得したとき、(装置に関連付けられるロック・ビット
をセットすることにより)成功する。装置操作の完了
時、ビジー指示を告げられた各チャネル・アダプタは今
度"ビジー解除"指示を告げられ、チャネル・サブシステ
ムにキュー待機されたI/O要求が、再びその装置に対
して再発行される。このクロス・チャネル・アダプタ通
信は、図11で点線により示される。"ビジー解除"指示
の提供の実現は、特定のホストが他のホストによる装置
のアクセスを頻繁に阻止することの無いように、"公正
(fairness)"機構の考慮を要求し得る。この方法の変
形が異なるインタフェース・アーキテクチャ(例えばS
CSIタグ無し及びタグ付きキューイング)に対して提
供され得り、そこでは、チャネル・サブシステム・キュ
ーイング機能を使用する代わりに、直列キューが制御ユ
ニット内に構成される。
を1に制限するために使用され得るプロセスを示し、こ
れは装置における同時要求の直列実行を指示する。この
処理は、チャネル・アダプタにより使用される装置ロッ
ク・プロトコルにより実施され、そこではアダプタが要
求装置に対応するロック・データ・ブロック523内に
おいて、その装置に関連付けられるロックに対してアト
ミック・"テスト及びセット操作"を実行する。このロッ
ク・テスト及びセット・プロトコルは装置がI/O操作
を開始する以前に実行される。テスト及びセット操作が
成功の場合(装置が使用可能であることが判明する)、
I/O操作が受諾され、装置により処理される。テスト
及びセット操作が不成功の場合(装置が使用不能)、チ
ャネル・アダプタのI/O要求はビジー指示を提供され
る。チャネル・アダプタは必要な装置に対するロックを
獲得したとき、(装置に関連付けられるロック・ビット
をセットすることにより)成功する。装置操作の完了
時、ビジー指示を告げられた各チャネル・アダプタは今
度"ビジー解除"指示を告げられ、チャネル・サブシステ
ムにキュー待機されたI/O要求が、再びその装置に対
して再発行される。このクロス・チャネル・アダプタ通
信は、図11で点線により示される。"ビジー解除"指示
の提供の実現は、特定のホストが他のホストによる装置
のアクセスを頻繁に阻止することの無いように、"公正
(fairness)"機構の考慮を要求し得る。この方法の変
形が異なるインタフェース・アーキテクチャ(例えばS
CSIタグ無し及びタグ付きキューイング)に対して提
供され得り、そこでは、チャネル・サブシステム・キュ
ーイング機能を使用する代わりに、直列キューが制御ユ
ニット内に構成される。
【0021】キューイング期間の制限:同時I/O要求
の直列化のための上述のビジー/ビジー解除方法により
生じる問題はホストから見て、I/O操作を実行するた
めに要求される時間が制御ユニット(CU)で要求I/
O操作の実行に必要とされる時間の関数でないことであ
る。すなわち、ホストのOSから見た実行時間は実際の
CU/装置実行時間に、待機時間(この間、CUは他の
ホストに対する他のインタリーブ式I/O操作を実行し
ている)を加えたものである。実際、OSが装置に対す
るキュー内の全てのI/O操作を知らなければ、適切な
未着割込みタイムアウト値を決定するために要求I/O
操作の期間を判断することはできない。同時アクセスの
解決におけるある程度の公正さ、及び同時要求の数に対
する特定の制限を前提とすると、統計分析によりI/O
操作の完了の検出の失敗が、特定の失敗条件に起因する
ものであって、同時アクセス要求の結果ではないことを
保証する高い確率を有する期間を拾い出すことが可能で
ある。
の直列化のための上述のビジー/ビジー解除方法により
生じる問題はホストから見て、I/O操作を実行するた
めに要求される時間が制御ユニット(CU)で要求I/
O操作の実行に必要とされる時間の関数でないことであ
る。すなわち、ホストのOSから見た実行時間は実際の
CU/装置実行時間に、待機時間(この間、CUは他の
ホストに対する他のインタリーブ式I/O操作を実行し
ている)を加えたものである。実際、OSが装置に対す
るキュー内の全てのI/O操作を知らなければ、適切な
未着割込みタイムアウト値を決定するために要求I/O
操作の期間を判断することはできない。同時アクセスの
解決におけるある程度の公正さ、及び同時要求の数に対
する特定の制限を前提とすると、統計分析によりI/O
操作の完了の検出の失敗が、特定の失敗条件に起因する
ものであって、同時アクセス要求の結果ではないことを
保証する高い確率を有する期間を拾い出すことが可能で
ある。
【0022】例えば、所与のディスク装置が通常、任意
のコマンドを10ミリ秒以下で実行すると仮定する。ほ
とんどのI/O要求が10個程度のコマンド(10個程
度のI/Oチャネル命令)を有し、比較的等価なサービ
スを獲得する10個程度のホストが一般に存在すると仮
定すると、10ミリ秒×10個のコマンド×10個のホ
ストの乗算により、I/O要求が約1秒を費やすと期待
される。この数字は、例外条件を特定の高度な確率内で
処理する特定の要因により、例えば15秒に増加され
る。
のコマンドを10ミリ秒以下で実行すると仮定する。ほ
とんどのI/O要求が10個程度のコマンド(10個程
度のI/Oチャネル命令)を有し、比較的等価なサービ
スを獲得する10個程度のホストが一般に存在すると仮
定すると、10ミリ秒×10個のコマンド×10個のホ
ストの乗算により、I/O要求が約1秒を費やすと期待
される。この数字は、例外条件を特定の高度な確率内で
処理する特定の要因により、例えば15秒に増加され
る。
【0023】所与の装置に対するI/O操作の期待実行
時間が広い範囲で変化する場合、問題は複雑化する。な
ぜなら、同時要求の解決を予測する統計分析が、最悪の
場合のI/O操作実行時間を考慮しなければならず、"
短い"I/O要求の期間と、未着割込みタイムアウトと
の間の相違を一層増大するからである。
時間が広い範囲で変化する場合、問題は複雑化する。な
ぜなら、同時要求の解決を予測する統計分析が、最悪の
場合のI/O操作実行時間を考慮しなければならず、"
短い"I/O要求の期間と、未着割込みタイムアウトと
の間の相違を一層増大するからである。
【0024】例えば所与のディスク装置に対して、典型
的なコマンドが通常100ミリ秒以下で実行されるのに
対して、アウトボード・コピー・コマンド(このディス
クの内容を別のディスクにコピーする)は5分以下で実
行されると仮定する。統計的に、I/O要求が8つの同
時要求よりも長くキュー待機されることがないと判断す
ると(すなわち、このホストは8つのI/O要求が処理
される毎に、少なくとも1度返却を獲得する)、最悪の
場合としてキューイング時間を7×5分=35分と予測
することができる。このホストが典型的なコマンドを実
行している場合、キューイング時間とコマンド実行時間
との和として予測される未着割込みタイムアウトは、3
5分と0.0001秒、すなわち約35分である。7つ
の異なるホストが7つの同時アウトボード・コピーを発
行し、35分未満(例えばn(<35)分)のタイムア
ウト制限が可能になる確率は全ての共用システムが同時
にフル・コピーを開始する確率にもとづくと見なすこと
もできる。
的なコマンドが通常100ミリ秒以下で実行されるのに
対して、アウトボード・コピー・コマンド(このディス
クの内容を別のディスクにコピーする)は5分以下で実
行されると仮定する。統計的に、I/O要求が8つの同
時要求よりも長くキュー待機されることがないと判断す
ると(すなわち、このホストは8つのI/O要求が処理
される毎に、少なくとも1度返却を獲得する)、最悪の
場合としてキューイング時間を7×5分=35分と予測
することができる。このホストが典型的なコマンドを実
行している場合、キューイング時間とコマンド実行時間
との和として予測される未着割込みタイムアウトは、3
5分と0.0001秒、すなわち約35分である。7つ
の異なるホストが7つの同時アウトボード・コピーを発
行し、35分未満(例えばn(<35)分)のタイムア
ウト制限が可能になる確率は全ての共用システムが同時
にフル・コピーを開始する確率にもとづくと見なすこと
もできる。
【0025】未着割込みが検出されるとき、しばしばプ
ログラムは追加のI/Oを実行しなければならない。こ
れらのI/O要求はキューイング問題に遭遇しがちで、
結局同一の未着割込みタイムアウトを適用されなければ
ならない。装置が実際に壊れていて、もはやホストに応
答することができない状況ではジョブが失敗し、それ故
再実行されなければならないとプログラムが結論するま
でに、数10分を費やすことは容易に理解される。
ログラムは追加のI/Oを実行しなければならない。こ
れらのI/O要求はキューイング問題に遭遇しがちで、
結局同一の未着割込みタイムアウトを適用されなければ
ならない。装置が実際に壊れていて、もはやホストに応
答することができない状況ではジョブが失敗し、それ故
再実行されなければならないとプログラムが結論するま
でに、数10分を費やすことは容易に理解される。
【0026】特定の環境では、プログラムはこうした統
計方法により規定された時間を待機できなくてもよく、
その上、リアルタイム処理の要求を満足できなくてもよ
い。他の場合では、未着割込みタイムアウト及び結果の
回復が操作的な難題を生じる期間となる(例えば処理が
要求ウィンドウ内に完了しない)。
計方法により規定された時間を待機できなくてもよく、
その上、リアルタイム処理の要求を満足できなくてもよ
い。他の場合では、未着割込みタイムアウト及び結果の
回復が操作的な難題を生じる期間となる(例えば処理が
要求ウィンドウ内に完了しない)。
【0027】特定の状況が発生するときに、MIHプロ
セスがエラー指示の出所となり得る単一OSのデータ処
理システムでは、従来のMIH検出システムは良好に機
能しなかった。例えばロングI/Oコマンド(長い期間
のI/O操作を要求するコマンド)が、I/Oプログラ
ムの最後のコマンドとしてI/O制御ユニットに発行さ
れ、最後のI/Oコマンドが完了する以前に同一装置に
対するショート・コマンドを有する別のI/Oプログラ
ムが、OSにより開始されようとする状況において、誤
った指示が発生し得る。従来システムでは、ロング・コ
マンドはそれが制御ユニットにおいて受諾されるとき、
部分的な完了を信号で知らせる。それによりI/O装置
が第1の要求に対する操作を完了するまで、そのI/O
装置に対する次の要求が待機させられた(従来のS/3
90 I/Oアーキテクチャに精通する当業者には、こ
れはジョブの迅速な終了、並びにテープ巻き戻し/アン
ロード・コマンドに続く新たなジョブの開始を可能にす
る、1次ステータスの再駆動として既知である)。第1
の要求が終了する以前に第2のI/O要求の開始が許可
され、オペレーティング・システムが活動状態と想定さ
れるショート・コマンドに対してMIHタイムアウトを
調整しようとするとき、誤った指示が検出され得る。な
ぜなら、OSが以前のロング・コマンドに対する実行時
間を知らないからである。この短いタイムアウトが誤っ
て未着割込みを示し得る。しかしながら、実際にはどの
割込みも未着ではない。なぜなら、装置がまだ以前のロ
ング・コマンドを実行しているためにショート・コマン
ドがまだ装置により開始されていないからである(そし
て、これらのいずれのコマンドも完了割込みを提供でき
ていない)。
セスがエラー指示の出所となり得る単一OSのデータ処
理システムでは、従来のMIH検出システムは良好に機
能しなかった。例えばロングI/Oコマンド(長い期間
のI/O操作を要求するコマンド)が、I/Oプログラ
ムの最後のコマンドとしてI/O制御ユニットに発行さ
れ、最後のI/Oコマンドが完了する以前に同一装置に
対するショート・コマンドを有する別のI/Oプログラ
ムが、OSにより開始されようとする状況において、誤
った指示が発生し得る。従来システムでは、ロング・コ
マンドはそれが制御ユニットにおいて受諾されるとき、
部分的な完了を信号で知らせる。それによりI/O装置
が第1の要求に対する操作を完了するまで、そのI/O
装置に対する次の要求が待機させられた(従来のS/3
90 I/Oアーキテクチャに精通する当業者には、こ
れはジョブの迅速な終了、並びにテープ巻き戻し/アン
ロード・コマンドに続く新たなジョブの開始を可能にす
る、1次ステータスの再駆動として既知である)。第1
の要求が終了する以前に第2のI/O要求の開始が許可
され、オペレーティング・システムが活動状態と想定さ
れるショート・コマンドに対してMIHタイムアウトを
調整しようとするとき、誤った指示が検出され得る。な
ぜなら、OSが以前のロング・コマンドに対する実行時
間を知らないからである。この短いタイムアウトが誤っ
て未着割込みを示し得る。しかしながら、実際にはどの
割込みも未着ではない。なぜなら、装置がまだ以前のロ
ング・コマンドを実行しているためにショート・コマン
ドがまだ装置により開始されていないからである(そし
て、これらのいずれのコマンドも完了割込みを提供でき
ていない)。
【0028】
【発明が解決しようとする課題】本発明の目的は、ロン
グI/OコマンドがI/O装置により実行されており、
その装置が要求装置を共用する1つ以上の他のOSから
別のI/O要求を受信するとき、要求I/O装置が複数
のホストOSに信号で知らせることを可能にする信号送
信プロセスを提供することである。
グI/OコマンドがI/O装置により実行されており、
その装置が要求装置を共用する1つ以上の他のOSから
別のI/O要求を受信するとき、要求I/O装置が複数
のホストOSに信号で知らせることを可能にする信号送
信プロセスを提供することである。
【0029】本発明の別の目的は、ほとんどの未着割込
みを処理するための、短い細分的なMIH検出タイムア
ウトを提供することである。
みを処理するための、短い細分的なMIH検出タイムア
ウトを提供することである。
【0030】更に本発明の別の目的は、同一のI/O装
置を共用する1つ以上のOSにより使用される、細分的
なMIHタイムアウトを提供することである。
置を共用する1つ以上のOSにより使用される、細分的
なMIHタイムアウトを提供することである。
【0031】更に本発明の別の目的は、新たな装置の追
加、装置のリネーム、装置の移動、または既存の装置に
対する新たなサービスの追加により、I/O構成が変更
されるとき、以前に手動により個別化されるように要求
されたOS内のMIHタイムアウト値を排除することで
ある。
加、装置のリネーム、装置の移動、または既存の装置に
対する新たなサービスの追加により、I/O構成が変更
されるとき、以前に手動により個別化されるように要求
されたOS内のMIHタイムアウト値を排除することで
ある。
【0032】
【課題を解決するための手段】本発明は好適には、1つ
以上のI/O制御ユニット(CU)及びI/O装置を共
用する、複数のオペレーティング・システム(OS)を
有するコンピュータ構成内で使用される。OSはI/O
CU及びI/O装置のホストと見なされる。
以上のI/O制御ユニット(CU)及びI/O装置を共
用する、複数のオペレーティング・システム(OS)を
有するコンピュータ構成内で使用される。OSはI/O
CU及びI/O装置のホストと見なされる。
【0033】本発明は、MIH(未着割込みハンドラ)
ソフトウェアが誤ってI/O装置故障を検出することを
防止するために、MIHソフトウェアを操作する新規の
システム・プロセス及び機構を提供する。こうした検出
は、複数のOSにより共用されるI/O装置を有するシ
ステムにおいて問題となり得る。問題は、あるOSが特
定のI/O装置を使用するI/O要求を生成し、その要
求がその装置が使用可能になるまでに長い時間待機しな
ければならない場合に発生する。そうした待機は所定の
MIHタイムアウトを超過し、OSに要求I/O装置の
故障指示を提供し得るが、実際には、その装置は故障し
ておらず、単に他のOSの要求を処理しているに過ぎな
い。OSがI/O要求を発行するとき、MIH検出ソフ
トウェアがMIHタイムアウトを開始し、MIHタイム
アウトの満了以前に成功の完了割込みがそのI/O装置
から受信されない場合、そのI/O装置の故障が示さ
れ、その割込みが未着と宣言される。
ソフトウェアが誤ってI/O装置故障を検出することを
防止するために、MIHソフトウェアを操作する新規の
システム・プロセス及び機構を提供する。こうした検出
は、複数のOSにより共用されるI/O装置を有するシ
ステムにおいて問題となり得る。問題は、あるOSが特
定のI/O装置を使用するI/O要求を生成し、その要
求がその装置が使用可能になるまでに長い時間待機しな
ければならない場合に発生する。そうした待機は所定の
MIHタイムアウトを超過し、OSに要求I/O装置の
故障指示を提供し得るが、実際には、その装置は故障し
ておらず、単に他のOSの要求を処理しているに過ぎな
い。OSがI/O要求を発行するとき、MIH検出ソフ
トウェアがMIHタイムアウトを開始し、MIHタイム
アウトの満了以前に成功の完了割込みがそのI/O装置
から受信されない場合、そのI/O装置の故障が示さ
れ、その割込みが未着と宣言される。
【0034】本発明は、従来の固定長MIHタイムアウ
ト期間とは対照的に各遅延I/O要求に対して、可変M
IHタイムアウト期間を提供する。要求I/O装置が成
功完了割込み信号を要求元OSに提供すること無しに、
可変MIHタイムアウト期間の終了に達する場合、MI
Hタイムアウトが発生し、OS内でI/O装置故障指示
をトリガする。本発明はMIHタイムアウト期間を所定
の延長増分により可変する。この延長増分はI/O要求
を遅延する要求I/O制御ユニット(CU)により要求
元OSに提供される、新規のロング・ビジー割込み信号
により制御される。ロング・ビジー割込みはOSにMI
Hタイムアウト延長を以前に決定されたMIHタイムア
ウト期間に追加するように指示する。CU内のしきい値
タイムアウト期間のタイムアウトが、OS内の現MIH
タイムアウト期間の満了以前に発生することにより、O
SのMIHタイムアウト期間がタイムアウトし、I/O
装置故障指示をトリガする以前に、その延長を可能にす
る。
ト期間とは対照的に各遅延I/O要求に対して、可変M
IHタイムアウト期間を提供する。要求I/O装置が成
功完了割込み信号を要求元OSに提供すること無しに、
可変MIHタイムアウト期間の終了に達する場合、MI
Hタイムアウトが発生し、OS内でI/O装置故障指示
をトリガする。本発明はMIHタイムアウト期間を所定
の延長増分により可変する。この延長増分はI/O要求
を遅延する要求I/O制御ユニット(CU)により要求
元OSに提供される、新規のロング・ビジー割込み信号
により制御される。ロング・ビジー割込みはOSにMI
Hタイムアウト延長を以前に決定されたMIHタイムア
ウト期間に追加するように指示する。CU内のしきい値
タイムアウト期間のタイムアウトが、OS内の現MIH
タイムアウト期間の満了以前に発生することにより、O
SのMIHタイムアウト期間がタイムアウトし、I/O
装置故障指示をトリガする以前に、その延長を可能にす
る。
【0035】OSにより発行されるI/O要求に対する
第1のMIHタイムアウト期間は、本明細書では"1次
MIHタイムアウト期間"として参照される。I/O要
求を受信するI/O CU装置は、1次MIH期間の終
了近くに要求が不当に遅延されていることを知らせるた
めに、しきい値タイムアウトを生成する。I/O要求に
対するしきい値タイムアウトはCUにロング・ビジーI
/O割込みを生成し、要求元OSにステータス情報と一
緒に知らせるように指示する。ステータス情報はOS
に、CUにおけるI/O遅延のしきい値タイムアウトの
理由を示す。ロング・ビジー割込みに応答して、OSは
タイムアウト延長増分だけ、MIHタイムアウト期間を
延長する。
第1のMIHタイムアウト期間は、本明細書では"1次
MIHタイムアウト期間"として参照される。I/O要
求を受信するI/O CU装置は、1次MIH期間の終
了近くに要求が不当に遅延されていることを知らせるた
めに、しきい値タイムアウトを生成する。I/O要求に
対するしきい値タイムアウトはCUにロング・ビジーI
/O割込みを生成し、要求元OSにステータス情報と一
緒に知らせるように指示する。ステータス情報はOS
に、CUにおけるI/O遅延のしきい値タイムアウトの
理由を示す。ロング・ビジー割込みに応答して、OSは
タイムアウト延長増分だけ、MIHタイムアウト期間を
延長する。
【0036】好適な実施例は、1遅延要求につき1つの
CUタイムアウトしきい値を使用する。しかしながら、
本発明は各CU遅延要求に対してCUが任意の数のタイ
ムアウトしきい値を提供するようにも設計され得る。そ
の場合、各タイムアウトしきい値は、現MIHタイムア
ウト延長期間の終了よりも十分に以前に発生し、それに
よりOSはしきい値の発生を通知され、現延長がタイム
アウトする以前に、次のMIH延長を呼び出すことが可
能になる。MIH I/O装置故障指示は、MIHタイ
ムアウト期間が延長されるか否かに関わらず、そのタイ
ムアウト時にのみ提供される。
CUタイムアウトしきい値を使用する。しかしながら、
本発明は各CU遅延要求に対してCUが任意の数のタイ
ムアウトしきい値を提供するようにも設計され得る。そ
の場合、各タイムアウトしきい値は、現MIHタイムア
ウト延長期間の終了よりも十分に以前に発生し、それに
よりOSはしきい値の発生を通知され、現延長がタイム
アウトする以前に、次のMIH延長を呼び出すことが可
能になる。MIH I/O装置故障指示は、MIHタイ
ムアウト期間が延長されるか否かに関わらず、そのタイ
ムアウト時にのみ提供される。
【0037】遅延I/O要求に対する複数のMIH延長
の各々の時間長は、互いに等しくてもよいが、好適な実
施例ではそれらは異なり、第1の(1次)延長が第2の
(2次)延長よりも多大に短く、ほとんどの要求は短い
1次タイムアウトの間に成功裡に完了すると期待され
る。長い2次延長期間は装置を使用中のI/O要求がロ
ングI/Oコマンドを使用しており、同一のI/O装置
へのアクセスを待機中の要求に長い遅延を生じさせる場
合にのみ、時々使用される。
の各々の時間長は、互いに等しくてもよいが、好適な実
施例ではそれらは異なり、第1の(1次)延長が第2の
(2次)延長よりも多大に短く、ほとんどの要求は短い
1次タイムアウトの間に成功裡に完了すると期待され
る。長い2次延長期間は装置を使用中のI/O要求がロ
ングI/Oコマンドを使用しており、同一のI/O装置
へのアクセスを待機中の要求に長い遅延を生じさせる場
合にのみ、時々使用される。
【0038】より詳細には、ロング・ビジー割込み信号
は関連I/O要求がその現しきい値タイムアウト期間を
超えて遅延されるとき、CU内で生成される。こうした
遅延は通常、要求I/O装置が他のI/O要求を処理し
ており、ビジーなことにより生成される。こうした他の
I/O要求は遅延されるI/O要求のOSには知れてい
ない。CUしきい値タイムアウト期間は、OS内の現M
IHタイムアウト期間と関連して決定され、CUしきい
値タイムアウトは、現OS MIHタイムアウト期間よ
りも十分以前に発生しなければならない。その理由は、
1)CUがステータス情報と一緒に、ロング・ビジー割
込み信号(すなわちCUしきい値駆動型割込み信号)を
生成するための時間、及び2)現MIHタイムアウト期
間がタイムアウト(終了)し、I/O装置操作故障をO
Sに知らせる以前に、OSが割込み及びステータス情報
に応答して、現MIHタイムアウト期間を延長するため
の時間を確保するためである。
は関連I/O要求がその現しきい値タイムアウト期間を
超えて遅延されるとき、CU内で生成される。こうした
遅延は通常、要求I/O装置が他のI/O要求を処理し
ており、ビジーなことにより生成される。こうした他の
I/O要求は遅延されるI/O要求のOSには知れてい
ない。CUしきい値タイムアウト期間は、OS内の現M
IHタイムアウト期間と関連して決定され、CUしきい
値タイムアウトは、現OS MIHタイムアウト期間よ
りも十分以前に発生しなければならない。その理由は、
1)CUがステータス情報と一緒に、ロング・ビジー割
込み信号(すなわちCUしきい値駆動型割込み信号)を
生成するための時間、及び2)現MIHタイムアウト期
間がタイムアウト(終了)し、I/O装置操作故障をO
Sに知らせる以前に、OSが割込み及びステータス情報
に応答して、現MIHタイムアウト期間を延長するため
の時間を確保するためである。
【0039】また、CUしきい値タイムアウト時に、ロ
ング・ビジー割込信号がCUにより提供され得る。その
時、CUは現装置操作がロング・コマンドに対するもの
であり、それが同一のI/O装置を待機中の要求に対し
て長い遅延を生じることを認識する。更に本発明は1つ
のOSだけを使用するシステムでも使用され、こうした
状況では、任意のI/O要求が同一の装置に対して後に
発行されるI/O要求に対して、非常に長い待機を生じ
得る。これは例えば装置を使用する要求が、テープ巻き
戻しコマンドを実行している場合などのように、装置を
使用する要求が、後の遅延コマンドに対してMIHタイ
ムアウトを生じ得るロング・コマンドを含む場合が当て
はまる。この場合、OSは自身がロング・コマンドを有
する早期未達成要求を発行したことを知り、CUロング
・ビジー割込み無しにそのMIHタイムアウト期間を延
長し得る。
ング・ビジー割込信号がCUにより提供され得る。その
時、CUは現装置操作がロング・コマンドに対するもの
であり、それが同一のI/O装置を待機中の要求に対し
て長い遅延を生じることを認識する。更に本発明は1つ
のOSだけを使用するシステムでも使用され、こうした
状況では、任意のI/O要求が同一の装置に対して後に
発行されるI/O要求に対して、非常に長い待機を生じ
得る。これは例えば装置を使用する要求が、テープ巻き
戻しコマンドを実行している場合などのように、装置を
使用する要求が、後の遅延コマンドに対してMIHタイ
ムアウトを生じ得るロング・コマンドを含む場合が当て
はまる。この場合、OSは自身がロング・コマンドを有
する早期未達成要求を発行したことを知り、CUロング
・ビジー割込み無しにそのMIHタイムアウト期間を延
長し得る。
【0040】或いは、CUは装置を使用する現I/O要
求として、自身が受信するロング・コマンドの命令コー
ドを認識し、この情報を用いて、ロング・ビジー割込み
を発行元のOSに生成し、同一装置を待機中の要求に対
してMIHタイムアウト期間を延長させてもよい。
求として、自身が受信するロング・コマンドの命令コー
ドを認識し、この情報を用いて、ロング・ビジー割込み
を発行元のOSに生成し、同一装置を待機中の要求に対
してMIHタイムアウト期間を延長させてもよい。
【0041】ロング・ビジー割込みを直接サポートしな
いシステムでは、これがステータス情報と、別のタイプ
の割込みを用いてシミュレートされ得る。例えば、ロン
グ・ビジー割込みがステータス情報(例えば特殊割込み
コード)と、エラー・チェック割込みを用いてシミュレ
ートされ、ステータス情報が受信OSにエラー・チェッ
ク割込みが実際にはロング・ビジー割込であることを示
してもよい。
いシステムでは、これがステータス情報と、別のタイプ
の割込みを用いてシミュレートされ得る。例えば、ロン
グ・ビジー割込みがステータス情報(例えば特殊割込み
コード)と、エラー・チェック割込みを用いてシミュレ
ートされ、ステータス情報が受信OSにエラー・チェッ
ク割込みが実際にはロング・ビジー割込であることを示
してもよい。
【0042】MIHタイムアウト延長期間の時間長は、
各OSに対して記憶されるそれぞれのMIH延長タイム
アウト値により示され、各CUしきい値タイムアウト期
間は、そのCUに記憶されるそれぞれのCUタイムアウ
トしきい値により示され得る。
各OSに対して記憶されるそれぞれのMIH延長タイム
アウト値により示され、各CUしきい値タイムアウト期
間は、そのCUに記憶されるそれぞれのCUタイムアウ
トしきい値により示され得る。
【0043】好適な実施例では、複数のチャネル・イン
タフェース・アダプタを有するCUをサポートし、各ア
ダプタが、そのアダプタに接続されるI/Oチャネル・
パスを通じて受信され、現在使用可能でない特定のI/
O装置を要求する1つの遅延I/O要求を独立に管理す
る。異なる装置が異なるI/O要求を同時に実行してお
り、CU内の全てのアダプタが現在ビジーであることも
あり得る。
タフェース・アダプタを有するCUをサポートし、各ア
ダプタが、そのアダプタに接続されるI/Oチャネル・
パスを通じて受信され、現在使用可能でない特定のI/
O装置を要求する1つの遅延I/O要求を独立に管理す
る。異なる装置が異なるI/O要求を同時に実行してお
り、CU内の全てのアダプタが現在ビジーであることも
あり得る。
【0044】好適な実施例ではまた、I/O要求が過度
に遅延されていると判断されるとき、アダプタがその要
求の処理を終了できるように各アダプタをサポートす
る。こうした遅延は、要求がしきい値タイムアウトまで
遅延されることにより判断され得る。その結果、ロング
・ビジー割込みが開始され、遅延I/O要求を発行した
OSに過度な遅延を信号で知らせる。第1のしきい値タ
イムアウトは、好適な実施例では、過度に遅延される任
意の要求に対して提供される単なるしきい値である。C
U/アダプタはロング・ビジー割込みに応答して、過度
に遅延されたI/O要求の処理を終了し、そのI/O要
求を処理する全責任をその発行元のOSに戻す。次にO
Sは、I/O要求をOSソフトウェアI/Oキュー上に
配置(保存)する一方、要求装置が使用可能になったこ
とを示す信号を待機し、その後、要求を再度I/Oサブ
システムに再発行する。
に遅延されていると判断されるとき、アダプタがその要
求の処理を終了できるように各アダプタをサポートす
る。こうした遅延は、要求がしきい値タイムアウトまで
遅延されることにより判断され得る。その結果、ロング
・ビジー割込みが開始され、遅延I/O要求を発行した
OSに過度な遅延を信号で知らせる。第1のしきい値タ
イムアウトは、好適な実施例では、過度に遅延される任
意の要求に対して提供される単なるしきい値である。C
U/アダプタはロング・ビジー割込みに応答して、過度
に遅延されたI/O要求の処理を終了し、そのI/O要
求を処理する全責任をその発行元のOSに戻す。次にO
Sは、I/O要求をOSソフトウェアI/Oキュー上に
配置(保存)する一方、要求装置が使用可能になったこ
とを示す信号を待機し、その後、要求を再度I/Oサブ
システムに再発行する。
【0045】上述のアダプタ・プロトコル(CUしきい
値のタイムアウトに際して、過度に遅延された要求を処
理する責任を再度発行元OSに戻す)は、本発明に関す
る任意選択のプロトコルであり、これは要求を処理する
責任がCUにおいて終了されるか否かに関わらず、要求
がI/Oサブシステムにおいて過度に遅延されるので、
発行元OSが誤った装置故障指示を回避するために、要
求のOS MIHタイムアウト期間が延長されなければ
ならないことを認識することにもとづく。
値のタイムアウトに際して、過度に遅延された要求を処
理する責任を再度発行元OSに戻す)は、本発明に関す
る任意選択のプロトコルであり、これは要求を処理する
責任がCUにおいて終了されるか否かに関わらず、要求
がI/Oサブシステムにおいて過度に遅延されるので、
発行元OSが誤った装置故障指示を回避するために、要
求のOS MIHタイムアウト期間が延長されなければ
ならないことを認識することにもとづく。
【0046】いずれの場合にも、本発明では、可変OS
MIHタイムアウト期間を生じる特定の要求に対して
延長が使用されても、使用されなくてもよい。MIHタ
イムアウト期間は、要求がCUしきい値において完了さ
れていない場合にのみ延長され、そのことがOSに通信
される。延長されたMIHタイムアウト期間はその終了
までに、要求I/O装置が使用可能になると期待しなが
ら走行し続け、もしタイムアウトするとI/O操作が失
敗したことを宣言する。従って、本発明では、OSにお
いて誤った装置故障指示を回避するために、MIHタイ
ムアウト期間が延長増分無しに、または1つ以上の追加
の延長増分により延長され得る。
MIHタイムアウト期間を生じる特定の要求に対して
延長が使用されても、使用されなくてもよい。MIHタ
イムアウト期間は、要求がCUしきい値において完了さ
れていない場合にのみ延長され、そのことがOSに通信
される。延長されたMIHタイムアウト期間はその終了
までに、要求I/O装置が使用可能になると期待しなが
ら走行し続け、もしタイムアウトするとI/O操作が失
敗したことを宣言する。従って、本発明では、OSにお
いて誤った装置故障指示を回避するために、MIHタイ
ムアウト期間が延長増分無しに、または1つ以上の追加
の延長増分により延長され得る。
【0047】第1の(すなわち1次)CUしきい値時間
を超過する以前に要求I/O装置が使用可能になる場
合、遅延I/O要求に対するMIHタイムアウト期間
は、装置からの成功完了割込みにより終了される。遅延
要求がCU内で他のOSからの任意の他の同時I/O要
求とI/O装置の次の使用を競合する場合、こうした要
求の1つが、既知の競合技術(race technique)を用い
て、テスト及びセット(または比較及びスワップ)プロ
トコルによりCU内で選択される。この競合技術は、次
に装置を使用する権利を獲得するI/O要求を選択する
ためにそのI/O装置に対してロックを獲得する(CU
内におけるI/O要求による既知の競合は、複数のI/
O装置の各々に対してそれぞれのロック・ビットを使用
する。そして、競合する要求の1つだけが装置ロック・
ビットをセットすることにより、装置の次の使用権を提
供されるI/O要求が決定される)。
を超過する以前に要求I/O装置が使用可能になる場
合、遅延I/O要求に対するMIHタイムアウト期間
は、装置からの成功完了割込みにより終了される。遅延
要求がCU内で他のOSからの任意の他の同時I/O要
求とI/O装置の次の使用を競合する場合、こうした要
求の1つが、既知の競合技術(race technique)を用い
て、テスト及びセット(または比較及びスワップ)プロ
トコルによりCU内で選択される。この競合技術は、次
に装置を使用する権利を獲得するI/O要求を選択する
ためにそのI/O装置に対してロックを獲得する(CU
内におけるI/O要求による既知の競合は、複数のI/
O装置の各々に対してそれぞれのロック・ビットを使用
する。そして、競合する要求の1つだけが装置ロック・
ビットをセットすることにより、装置の次の使用権を提
供されるI/O要求が決定される)。
【0048】好適な実施例では、CUしきい値時間が待
機中のI/O要求により超過される場合、その後I/O
要求はOSキュー内でのみ待機し、もはやCU内では次
のI/O装置可用性を競合せず、I/Oサブシステムが
その要求から解放される。そして、その要求により使用
されたCU資源が別のI/O要求のために使用可能とな
る。後にOSが要求I/O装置から完了割込みを受信す
るとき、OSは待機中のI/O要求をI/Oサブシステ
ムに再発行することにより、その要求を再駆動し、要求
は再度CU内で要求I/O装置の使用を競合し得る。
機中のI/O要求により超過される場合、その後I/O
要求はOSキュー内でのみ待機し、もはやCU内では次
のI/O装置可用性を競合せず、I/Oサブシステムが
その要求から解放される。そして、その要求により使用
されたCU資源が別のI/O要求のために使用可能とな
る。後にOSが要求I/O装置から完了割込みを受信す
るとき、OSは待機中のI/O要求をI/Oサブシステ
ムに再発行することにより、その要求を再駆動し、要求
は再度CU内で要求I/O装置の使用を競合し得る。
【0049】好適な実施例は、1しきい値に達した後に
(1次MIHタイムアウト期間の終了時に)、CUが遅
延要求を処理する責任を終えるCUプロトコルを使用す
るが、本発明は、CUが複数のMIH延長期間(及び複
数の対応するCUしきい値期間)に対してI/O要求処
理責任を保持する他のCUプロトコルも包含する。すな
わち本発明は、可変MIHタイムアウト期間を他のCU
プロトコルと一緒に使用する状況を包含する。それらの
プロトコルは、I/O要求を2つ以上のCUしきい値期
間の間、I/Oサブシステム内に留まらせ、その間、I
/O要求が要求装置の使用をCU内で競合する。そし
て、複数のMIHタイムアウト延長期間の後、処理責任
が発行元OSに戻される。更に、本発明はCUが任意の
待機I/O要求の処理責任を発行元OSに戻すことな
く、MIHタイムアウト期間を通じて受信I/O要求を
競合状態に維持する状況を包含する。
(1次MIHタイムアウト期間の終了時に)、CUが遅
延要求を処理する責任を終えるCUプロトコルを使用す
るが、本発明は、CUが複数のMIH延長期間(及び複
数の対応するCUしきい値期間)に対してI/O要求処
理責任を保持する他のCUプロトコルも包含する。すな
わち本発明は、可変MIHタイムアウト期間を他のCU
プロトコルと一緒に使用する状況を包含する。それらの
プロトコルは、I/O要求を2つ以上のCUしきい値期
間の間、I/Oサブシステム内に留まらせ、その間、I
/O要求が要求装置の使用をCU内で競合する。そし
て、複数のMIHタイムアウト延長期間の後、処理責任
が発行元OSに戻される。更に、本発明はCUが任意の
待機I/O要求の処理責任を発行元OSに戻すことな
く、MIHタイムアウト期間を通じて受信I/O要求を
競合状態に維持する状況を包含する。
【0050】従って、本発明は任意の有限な数のMIH
タイムアウト延長を有する可変MIHタイムアウト期間
の使用を可能にし、MIHタイムアウト延長の数よりも
1少ない数のCUしきい値タイムアウトが存在する。例
えばMIH最大時限が3つの延長を有する場合、2つの
対応するCUしきい値タイムアウトが存在し得る。従っ
て、任意の待機中のI/O要求に対する3つのMIH延
長のタイムアウト期間が1つのMIHタイマにより実現
され、対応する2つのCUしきい値タイムアウトがCU
受信要求に対して1つのCUタイマにより実現され得
る。最初の2つのCUしきい値延長がそれぞれ最初の2
つのMIH延長期間の間にタイムアウトし、そして第2
のCUしきい値タイムアウトに応答して、第3のMIH
タイムアウト延長が開始する。
タイムアウト延長を有する可変MIHタイムアウト期間
の使用を可能にし、MIHタイムアウト延長の数よりも
1少ない数のCUしきい値タイムアウトが存在する。例
えばMIH最大時限が3つの延長を有する場合、2つの
対応するCUしきい値タイムアウトが存在し得る。従っ
て、任意の待機中のI/O要求に対する3つのMIH延
長のタイムアウト期間が1つのMIHタイマにより実現
され、対応する2つのCUしきい値タイムアウトがCU
受信要求に対して1つのCUタイマにより実現され得
る。最初の2つのCUしきい値延長がそれぞれ最初の2
つのMIH延長期間の間にタイムアウトし、そして第2
のCUしきい値タイムアウトに応答して、第3のMIH
タイムアウト延長が開始する。
【0051】上述の例から明らかなように、本発明は任
意の数のOS MIHタイムアウト延長、及びそれより
1少ない数のCUしきい値を有し得る。各CUしきい値
タイムアウトが次のOS MIH延長を開始し、各CU
しきい値タイムアウト期間が対応するMIHタイムアウ
ト延長の直前に終了するようにセットされる。任意のC
Uしきい値タイムアウトと、その対応するMIHタイム
アウトとの間の時間は、CUがロング・ビジー割込み通
信をOS(CUにおいて待機中のI/O要求に関連付け
られる)に送信できるように十分な長さを有さなければ
ならない。それによりOSは現MIH延長におけるMI
Hタイムアウトが発生する(I/O装置故障を宣言す
る)以前に、MIHタイムアウト期間を次の時間延長に
より延長することができる。
意の数のOS MIHタイムアウト延長、及びそれより
1少ない数のCUしきい値を有し得る。各CUしきい値
タイムアウトが次のOS MIH延長を開始し、各CU
しきい値タイムアウト期間が対応するMIHタイムアウ
ト延長の直前に終了するようにセットされる。任意のC
Uしきい値タイムアウトと、その対応するMIHタイム
アウトとの間の時間は、CUがロング・ビジー割込み通
信をOS(CUにおいて待機中のI/O要求に関連付け
られる)に送信できるように十分な長さを有さなければ
ならない。それによりOSは現MIH延長におけるMI
Hタイムアウトが発生する(I/O装置故障を宣言す
る)以前に、MIHタイムアウト期間を次の時間延長に
より延長することができる。
【0052】ロング・コマンドは続く連鎖コマンドを有
さず、時に"非同期即時コマンド"として参照される。そ
のビジー状態は要求装置が要求操作を完了するまで、要
求装置またはその制御ユニットにおいて非常に長い時間
維持される。
さず、時に"非同期即時コマンド"として参照される。そ
のビジー状態は要求装置が要求操作を完了するまで、要
求装置またはその制御ユニットにおいて非常に長い時間
維持される。
【0053】本発明は、所定の最小時間を超過するチャ
ネル・プログラム実行時間を要求するコマンドに対し
て、装置またはそのI/O制御ユニットにおいてロング
・ビジー状態を提供し得る。
ネル・プログラム実行時間を要求するコマンドに対し
て、装置またはそのI/O制御ユニットにおいてロング
・ビジー状態を提供し得る。
【0054】I/O装置を共用する複数のOSの環境で
は、要求OSプログラムは、チャネル・サブシステムが
同一の装置に対する別のI/O要求に対して実行する処
理を認識しないので、結果的にOSはチャネル・サブシ
ステムまたは制御ユニットにおいて発生している任意の
I/O要求のキューイングを認識しない。更に、チャネ
ル・サブシステムは他のOSに対して発生している(ま
たは制御ユニット内の)I/O要求のキューイング量を
知らない。このジレンマを解決する1つの方法はキュー
が十分な持続期間の時に、各OSに要求のキューイング
を知らせることである。
は、要求OSプログラムは、チャネル・サブシステムが
同一の装置に対する別のI/O要求に対して実行する処
理を認識しないので、結果的にOSはチャネル・サブシ
ステムまたは制御ユニットにおいて発生している任意の
I/O要求のキューイングを認識しない。更に、チャネ
ル・サブシステムは他のOSに対して発生している(ま
たは制御ユニット内の)I/O要求のキューイング量を
知らない。このジレンマを解決する1つの方法はキュー
が十分な持続期間の時に、各OSに要求のキューイング
を知らせることである。
【0055】類似のコマンド実行時間を有するコマンド
を使用する装置を考慮すると(すなわち多大に異なるコ
マンド実行時間を有するコマンドが存在しない)、理想
的な状況は、任意の適切なI/O要求の最悪の場合の実
行時間を超過しようとしている任意のキューイングを報
告することである。この場合、OSから見てMIHタイ
ムアウトが、最悪の場合の期待実行時間よりも僅かに大
きくセットされる。OSがI/O操作が完了したこと、
または過度なキューイングが発生しているとの知らせを
受信しなかった場合、OSは割込みが失われたものと見
なす。
を使用する装置を考慮すると(すなわち多大に異なるコ
マンド実行時間を有するコマンドが存在しない)、理想
的な状況は、任意の適切なI/O要求の最悪の場合の実
行時間を超過しようとしている任意のキューイングを報
告することである。この場合、OSから見てMIHタイ
ムアウトが、最悪の場合の期待実行時間よりも僅かに大
きくセットされる。OSがI/O操作が完了したこと、
または過度なキューイングが発生しているとの知らせを
受信しなかった場合、OSは割込みが失われたものと見
なす。
【0056】実際のMIHタイムアウトは、典型的なコ
マンドの最悪の場合の実行時間の数倍のオーダである。
マンドの最悪の場合の実行時間の数倍のオーダである。
【0057】本発明は、I/O要求内のロング・コマン
ドを処理するためのロング・ビジー・プロトコルを含
む。例えば過度なキューイング持続期間など、要求OS
から見て多大に長い処理時間を生じ得る(たとえコマン
ドがまだ要求装置内で実行されていなくても)非エラー
条件が存在する。本発明は、OSから見て任意の持続期
間のI/Oコマンドを処理するために使用され得る。よ
り詳細には、本発明は要求OSに要求に対して過度なキ
ューイングが存在する時を知らせ、それによりOSはM
IHタイムアウトを発行されたI/O要求の期待持続期
間と時間しきい値との和に調整する。I/Oサブシステ
ムはこの時間しきい値にもとづき、過度なキューイング
を報告する。過度なキューイングが稀であれば、過度な
キューイング条件を報告するオーバヘッドはシステム性
能にほとんど影響しない。本発明は、OSが通常のショ
ート・コマンド処理のために比較的短いMIHタイムア
ウトを使用することを可能にする一方、発生し得る長期
間のコマンド処理に対しては、より長いMIHタイムア
ウトの使用を可能にする。
ドを処理するためのロング・ビジー・プロトコルを含
む。例えば過度なキューイング持続期間など、要求OS
から見て多大に長い処理時間を生じ得る(たとえコマン
ドがまだ要求装置内で実行されていなくても)非エラー
条件が存在する。本発明は、OSから見て任意の持続期
間のI/Oコマンドを処理するために使用され得る。よ
り詳細には、本発明は要求OSに要求に対して過度なキ
ューイングが存在する時を知らせ、それによりOSはM
IHタイムアウトを発行されたI/O要求の期待持続期
間と時間しきい値との和に調整する。I/Oサブシステ
ムはこの時間しきい値にもとづき、過度なキューイング
を報告する。過度なキューイングが稀であれば、過度な
キューイング条件を報告するオーバヘッドはシステム性
能にほとんど影響しない。本発明は、OSが通常のショ
ート・コマンド処理のために比較的短いMIHタイムア
ウトを使用することを可能にする一方、発生し得る長期
間のコマンド処理に対しては、より長いMIHタイムア
ウトの使用を可能にする。
【0058】本発明の好適な実施例では、装置操作に対
する各I/Oコマンドがコマンドの期待実行時間に従
い、ショートとロングの2つのクラスのいずれかに分類
される。期待実行時間はコマンドに対するビジー条件に
より生じる内部インタバル回復処理時間と、キューイン
グ時間とを含む。ディスク・シーク・コマンドなどのシ
ョート・コマンドは、通常、数ミリ秒で実行される。そ
れに対してテープ巻き戻しコマンドなどのロング・コマ
ンドは、その実行に数秒乃至数10分を費やす。
する各I/Oコマンドがコマンドの期待実行時間に従
い、ショートとロングの2つのクラスのいずれかに分類
される。期待実行時間はコマンドに対するビジー条件に
より生じる内部インタバル回復処理時間と、キューイン
グ時間とを含む。ディスク・シーク・コマンドなどのシ
ョート・コマンドは、通常、数ミリ秒で実行される。そ
れに対してテープ巻き戻しコマンドなどのロング・コマ
ンドは、その実行に数秒乃至数10分を費やす。
【0059】I/O要求(すなわちチャネル・プログラ
ム)の実行に関連して、1次MIHタイムアウト及び2
次MIHタイムアウトの2つのMIHタイムアウトが割
当てられる。各タイムアウトは、例えばプロセッサが"
I/O開始"または"サブチャネル開始"命令を実行する
ときなど、I/O要求がOSによりチャネル・サブシス
テムに発行されるとき開始する。短期間コマンドだけを
含む各I/O要求は、割当てられた1次MIHタイムア
ウト期間の間に実行されるものと期待されるのに対し
て、少なくとも1つの長期間コマンドを有する各I/O
要求は割当てられた2次MIHタイムアウト期間の間に
実行されるものと期待される。これらのMIHタイムア
ウト期間が、各I/O装置タイプに対して定義され、従
って、これらは装置タイプごとに異なり得る。
ム)の実行に関連して、1次MIHタイムアウト及び2
次MIHタイムアウトの2つのMIHタイムアウトが割
当てられる。各タイムアウトは、例えばプロセッサが"
I/O開始"または"サブチャネル開始"命令を実行する
ときなど、I/O要求がOSによりチャネル・サブシス
テムに発行されるとき開始する。短期間コマンドだけを
含む各I/O要求は、割当てられた1次MIHタイムア
ウト期間の間に実行されるものと期待されるのに対し
て、少なくとも1つの長期間コマンドを有する各I/O
要求は割当てられた2次MIHタイムアウト期間の間に
実行されるものと期待される。これらのMIHタイムア
ウト期間が、各I/O装置タイプに対して定義され、従
って、これらは装置タイプごとに異なり得る。
【0060】1次MIHタイムアウト期間は、ほとんど
のI/O要求の最長期待実行時間の完了後に終了し、こ
のMIHタイムアウト期間は、任意のこうしたコマンド
に対するビジー条件により生じる任意の内部回復処理時
間と、キューイング時間とを含む。2次MIH時限(イ
ンタバル)は、1つ以上のロング・コマンドを含むI/
O要求の実行時間の完了後に終了する。ロング・コマン
ドは1次MIHタイムアウト期間よりも長く、2次MI
Hタイムアウト期間よりも短い装置実行時間を有する。
のI/O要求の最長期待実行時間の完了後に終了し、こ
のMIHタイムアウト期間は、任意のこうしたコマンド
に対するビジー条件により生じる任意の内部回復処理時
間と、キューイング時間とを含む。2次MIH時限(イ
ンタバル)は、1つ以上のロング・コマンドを含むI/
O要求の実行時間の完了後に終了する。ロング・コマン
ドは1次MIHタイムアウト期間よりも長く、2次MI
Hタイムアウト期間よりも短い装置実行時間を有する。
【0061】本発明はI/O装置に対して新たなI/O
信号を提供する。この信号は本明細書では、"ロング・
ビジー"信号と呼ばれる。本明細書では、装置がI/O
要求に対してロング・コマンドを実行しているとき、常
に装置はロング・ビジー状態であると定義され、この状
態はI/O要求の期間存在する。I/O要求に対してロ
ング・コマンドが実行されない限り、装置はロング・ビ
ジー状態と見なされない。別のI/O要求がロング・ビ
ジー状態のI/O装置に提供されるとき、常に装置は"
ロング・ビジー"・ステータスによりI/O要求を拒絶
する。好適な実施例であるS/390 I/Oアーキテ
クチャでは、これはデバイス制御装置がプロセッサI/
Oサブシステムに、"センス・データ"と一緒に"ユニッ
ト・チェック・ステータス"信号を送信することにより
通知される。
信号を提供する。この信号は本明細書では、"ロング・
ビジー"信号と呼ばれる。本明細書では、装置がI/O
要求に対してロング・コマンドを実行しているとき、常
に装置はロング・ビジー状態であると定義され、この状
態はI/O要求の期間存在する。I/O要求に対してロ
ング・コマンドが実行されない限り、装置はロング・ビ
ジー状態と見なされない。別のI/O要求がロング・ビ
ジー状態のI/O装置に提供されるとき、常に装置は"
ロング・ビジー"・ステータスによりI/O要求を拒絶
する。好適な実施例であるS/390 I/Oアーキテ
クチャでは、これはデバイス制御装置がプロセッサI/
Oサブシステムに、"センス・データ"と一緒に"ユニッ
ト・チェック・ステータス"信号を送信することにより
通知される。
【0062】従って、各I/Oコマンド(任意のI/O
コンピュータ・アーキテクチャにおいて、その使用可能
な装置タイプに対して定義される)が、本発明によ
り、"短期間I/Oコマンド"または"長期間I/Oコマ
ンド"のいずれかとして分類され、前者は割当てられた
1次MIHタイムアウトの限度内で完了し、後者は1次
MIHタイムアウトの満了後、且つ2次MIHタイムア
ウトの満了以前に完了する。そして、これらの両方のタ
イムアウトはOSがI/Oコマンドを有するI/O要求
に対して開始命令を発行するとき開始する。
コンピュータ・アーキテクチャにおいて、その使用可能
な装置タイプに対して定義される)が、本発明によ
り、"短期間I/Oコマンド"または"長期間I/Oコマ
ンド"のいずれかとして分類され、前者は割当てられた
1次MIHタイムアウトの限度内で完了し、後者は1次
MIHタイムアウトの満了後、且つ2次MIHタイムア
ウトの満了以前に完了する。そして、これらの両方のタ
イムアウトはOSがI/Oコマンドを有するI/O要求
に対して開始命令を発行するとき開始する。
【0063】好適な実施例はS/390アーキテクチャ
を使用し、そこではI/Oコマンドがチャネル・コマン
ド・ワード(CCW)により定義される。CCWは、1
つ以上のCPUを有する中央プロセッサ・コンプレック
スのI/Oサブシステム内のI/Oプロセッサにより解
釈され、任意のCPUがI/O要求を開始する。
を使用し、そこではI/Oコマンドがチャネル・コマン
ド・ワード(CCW)により定義される。CCWは、1
つ以上のCPUを有する中央プロセッサ・コンプレック
スのI/Oサブシステム内のI/Oプロセッサにより解
釈され、任意のCPUがI/O要求を開始する。
【0064】各I/O装置は、その装置が接続される制
御ユニット内に"自己記述データ・ブロック"を記憶され
る。各装置の自己記述データ・ブロックは、本発明によ
り、関連装置の1次MIH値及び2次MIH値の両方を
含むように変更される。更に、自己記述データ・ブロッ
クはコマンドの2つのリストを含み、第1のリストは短
期間コマンド用であり、第2のリストは長期間コマンド
用である。任意の装置の自己記述データ・ブロックは、
例えばCPUがコマンド・リストまたは2つのMIHイ
ンタバルを獲得するために、"構成データ読出し"CCW
を実行することにより、任意に獲得され得る。
御ユニット内に"自己記述データ・ブロック"を記憶され
る。各装置の自己記述データ・ブロックは、本発明によ
り、関連装置の1次MIH値及び2次MIH値の両方を
含むように変更される。更に、自己記述データ・ブロッ
クはコマンドの2つのリストを含み、第1のリストは短
期間コマンド用であり、第2のリストは長期間コマンド
用である。任意の装置の自己記述データ・ブロックは、
例えばCPUがコマンド・リストまたは2つのMIHイ
ンタバルを獲得するために、"構成データ読出し"CCW
を実行することにより、任意に獲得され得る。
【0065】OSがそのオンライン装置(OSがI/O
要求を送信可能な装置)を初期化するとき、その装置が
実際に存在し、OSに正しく定義されているか否かを判
断する確認操作が実行される。この初期化プロセスの一
部は各装置に対する自己記述データ・ブロックを獲得
し、OSにとって使用可能な物理I/O構成を表すソフ
トウェア・テーブルを生成する。装置の自己記述データ
は任意に1次MIH時間値及び2次MIH時間値を含み
得る。装置の自己記述データ・ブロックが、利用者が明
示的に優先MIH時間インタバルを指定しなかった1次
MIH時間を含む場合、デフォルト指定の1次MIH値
が装置に割当てられる。類似の構成処理が、システム初
期化後にオンラインに変更される任意のI/O装置に対
しても、実行される。
要求を送信可能な装置)を初期化するとき、その装置が
実際に存在し、OSに正しく定義されているか否かを判
断する確認操作が実行される。この初期化プロセスの一
部は各装置に対する自己記述データ・ブロックを獲得
し、OSにとって使用可能な物理I/O構成を表すソフ
トウェア・テーブルを生成する。装置の自己記述データ
は任意に1次MIH時間値及び2次MIH時間値を含み
得る。装置の自己記述データ・ブロックが、利用者が明
示的に優先MIH時間インタバルを指定しなかった1次
MIH時間を含む場合、デフォルト指定の1次MIH値
が装置に割当てられる。類似の構成処理が、システム初
期化後にオンラインに変更される任意のI/O装置に対
しても、実行される。
【0066】各I/O要求は、CCWから成る関連チャ
ネル・プログラムを有する。チャネル・プログラムはそ
れがロング・コマンドを含まない場合、1次MIH時間
インタバル内に実行を完了すべきである。チャネル・プ
ログラムがロング・コマンドを含む場合、それは2次M
IHインタバル内に完了すべきである。I/O要求が1
次MIH時間値の期間活動状態であると、OSは装置依
存のMIHエグジット(exit)を呼び出し、サブプロセ
スを実行する。そして、このサブプロセスがチャネル・
プログラムを走査し、チャネル・プログラムがロング・
コマンドを含むか否かを判断する(装置に関連付けられ
るロング・コマンド・リスト内に表される)。
ネル・プログラムを有する。チャネル・プログラムはそ
れがロング・コマンドを含まない場合、1次MIH時間
インタバル内に実行を完了すべきである。チャネル・プ
ログラムがロング・コマンドを含む場合、それは2次M
IHインタバル内に完了すべきである。I/O要求が1
次MIH時間値の期間活動状態であると、OSは装置依
存のMIHエグジット(exit)を呼び出し、サブプロセ
スを実行する。そして、このサブプロセスがチャネル・
プログラムを走査し、チャネル・プログラムがロング・
コマンドを含むか否かを判断する(装置に関連付けられ
るロング・コマンド・リスト内に表される)。
【0067】チャネル・プログラムがロング・コマンド
を含まない場合、1次MIHインタバルがI/O要求に
対して使用される。チャネル・プログラムが少なくとも
1つの実行中のロング・コマンドを含む場合には、2次
MIHインタバルがI/O要求に対して使用される。
を含まない場合、1次MIHインタバルがI/O要求に
対して使用される。チャネル・プログラムが少なくとも
1つの実行中のロング・コマンドを含む場合には、2次
MIHインタバルがI/O要求に対して使用される。
【0068】I/O要求がOSにより生成されるとき、
MIHインタバル時限プロセスが開始される。このプロ
セスはカウンタを増分して、OSがI/O要求をそのC
ECのI/Oサブシステムに生成して以来、そのI/O
要求に対して経過した総時間を測定する。時限プロセス
は周期的に(例えば指定タイマ割込み信号により)、そ
の現在測定された経過時間と、選択MIHインタバル値
(1次または2次MIHインタバル)とを比較し、選択
MIHインタバルの満了(タイムアウトと呼ばれる)を
検出する。タイムアウトとが検出されるとインタバル時
限プロセスは、OSがI/O要求のチャネル・プログラ
ムを終了し、通常の回復プロセスを呼び出すように要求
する。
MIHインタバル時限プロセスが開始される。このプロ
セスはカウンタを増分して、OSがI/O要求をそのC
ECのI/Oサブシステムに生成して以来、そのI/O
要求に対して経過した総時間を測定する。時限プロセス
は周期的に(例えば指定タイマ割込み信号により)、そ
の現在測定された経過時間と、選択MIHインタバル値
(1次または2次MIHインタバル)とを比較し、選択
MIHインタバルの満了(タイムアウトと呼ばれる)を
検出する。タイムアウトとが検出されるとインタバル時
限プロセスは、OSがI/O要求のチャネル・プログラ
ムを終了し、通常の回復プロセスを呼び出すように要求
する。
【0069】従来技術では、ある装置がロング・コマン
ドを含むI/O要求を実行しているときに、第2のOS
がその装置にI/O要求を生成する場合(これはI/O
キュー上で保留となる)、第2のOSは、先に提供され
たMIHタイムアウトの満了まで待機するように要求さ
れる。そのために割込みが実際には未着でないときに、
未着割込みを示すMIHエラー条件の存在を誤って判断
し得る。
ドを含むI/O要求を実行しているときに、第2のOS
がその装置にI/O要求を生成する場合(これはI/O
キュー上で保留となる)、第2のOSは、先に提供され
たMIHタイムアウトの満了まで待機するように要求さ
れる。そのために割込みが実際には未着でないときに、
未着割込みを示すMIHエラー条件の存在を誤って判断
し得る。
【0070】しかしながら、本発明によれば、他のOS
に送信される"ロング・ビジー"信号により、誤ったエラ
ー条件は検出されない。"ロング・ビジー"信号は第2の
OSに、そのOSがそれと装置の両者の適切な操作によ
り停止させられており、I/O割込みが実際には未着で
ないことを知らせる。従って、第2のOSがハングアッ
プされずに、そのI/O要求の完了を待機する。S/3
90では装置が次のコマンドをユニット・チェック・ス
テータス及びセンス・データにより拒絶し、"ロング・
ビジー"条件が装置において存在することを知らせる。
ロング・ビジー条件を確認すると、第2のOSソフトウ
ェアはその内部MIHインタバルを再調整する制御を有
し、それにより試行されたI/O要求は、別のI/O要
求が装置に対して実行可能であることを示すビジー解除
ステータスが確認されるまでキューに待機され続ける。
従って、I/O要求が2次MIH時間よりも長くキュー
に待機され続け、MIHインタバルが満了する場合、時
限制御プロセスがMIHインタバルを再度開始し得る。
これは例えば割込みをシミュレートして、I/O要求に
対する現MIHタイムアウト測定を終了し、I/O要求
の再試行を信号で知らせることにより、そのI/O要求
に対してタイムアウト測定を最初から開始することによ
る。これらの再試行は、システム内における装置エラー
回復プロシジャからのカウント制御による。
に送信される"ロング・ビジー"信号により、誤ったエラ
ー条件は検出されない。"ロング・ビジー"信号は第2の
OSに、そのOSがそれと装置の両者の適切な操作によ
り停止させられており、I/O割込みが実際には未着で
ないことを知らせる。従って、第2のOSがハングアッ
プされずに、そのI/O要求の完了を待機する。S/3
90では装置が次のコマンドをユニット・チェック・ス
テータス及びセンス・データにより拒絶し、"ロング・
ビジー"条件が装置において存在することを知らせる。
ロング・ビジー条件を確認すると、第2のOSソフトウ
ェアはその内部MIHインタバルを再調整する制御を有
し、それにより試行されたI/O要求は、別のI/O要
求が装置に対して実行可能であることを示すビジー解除
ステータスが確認されるまでキューに待機され続ける。
従って、I/O要求が2次MIH時間よりも長くキュー
に待機され続け、MIHインタバルが満了する場合、時
限制御プロセスがMIHインタバルを再度開始し得る。
これは例えば割込みをシミュレートして、I/O要求に
対する現MIHタイムアウト測定を終了し、I/O要求
の再試行を信号で知らせることにより、そのI/O要求
に対してタイムアウト測定を最初から開始することによ
る。これらの再試行は、システム内における装置エラー
回復プロシジャからのカウント制御による。
【0071】従って、装置がI/O要求に対してチャネ
ル・プログラムの実行を開始するとき、装置が適切な状
態(ビジーまたはロング・ビジー)に置かれ、その状態
が、要求が完了するまで継続する。装置におけるビジー
/ロング・ビジー状態は、関連するI/O要求が成功裡
に完了するとき、終了する。
ル・プログラムの実行を開始するとき、装置が適切な状
態(ビジーまたはロング・ビジー)に置かれ、その状態
が、要求が完了するまで継続する。装置におけるビジー
/ロング・ビジー状態は、関連するI/O要求が成功裡
に完了するとき、終了する。
【0072】1次及び2次MIHインタバルは、I/O
要求が装置により実行されるとき、要求元OSにより使
用される。ロング・ビジー信号は、装置を待機中のI/
O要求を有する他のOSにより開始されたMIHインタ
バルの調整(以前使用されていない)を可能にする。
要求が装置により実行されるとき、要求元OSにより使
用される。ロング・ビジー信号は、装置を待機中のI/
O要求を有する他のOSにより開始されたMIHインタ
バルの調整(以前使用されていない)を可能にする。
【0073】本発明の別の目的は、システムを単一のO
Sの下で操作することであり、このOSはまだ完了して
いない現要求と次の要求とのオーバラップを可能にし、
前述の従来の技術の項目の終りで述べた状況などにおい
て発生し得る、未着割込み信号の誤ったMIHエラー指
示を回避する。本発明は、たとえコマンドが関連装置に
おいて実際に操作を完了していない場合でも(また、そ
の完了割込みが要求元OSに送信されるとき、装置操作
でさえ開始していないかもしれない)、ロング・コマン
ドがI/O制御ユニットにより受諾されるとき、即時完
了割込みを提供することにより、オーバラップ及び誤り
指示の問題を解決する。更にロング・コマンドを実行で
きるI/O制御ユニット(CU)において、本発明は、
CUが"ロング・コマンド"のCU受諾に応答して、"即
時"割込み信号を中央プロセッサ・コンプレックスに送
信するとき、"ロング・ビジー"信号をオン状態にセット
する。ここで"即時"とは、コマンドが制御ユニットにお
いて受諾される時点において、"完了割込み"が中央プロ
セッサ・コンプレックスに送信されることを意味する。
その時、装置がそのコマンドの実行を開始している必要
はない。後に装置が実際にコマンドを完了するときには
割込み信号は提供されない。"ロング・ビジー"状態はロ
ング・コマンドに対する全ての操作が要求装置により完
了されるまで、CUにおいて継続する。OSは即時割込
みを受信すると、ロング・コマンドに対してそのMIH
タイムアウトを終了し、従ってMIHプロセスは、MI
Hエラー条件を示すタイムアウトを有することができな
くなる。
Sの下で操作することであり、このOSはまだ完了して
いない現要求と次の要求とのオーバラップを可能にし、
前述の従来の技術の項目の終りで述べた状況などにおい
て発生し得る、未着割込み信号の誤ったMIHエラー指
示を回避する。本発明は、たとえコマンドが関連装置に
おいて実際に操作を完了していない場合でも(また、そ
の完了割込みが要求元OSに送信されるとき、装置操作
でさえ開始していないかもしれない)、ロング・コマン
ドがI/O制御ユニットにより受諾されるとき、即時完
了割込みを提供することにより、オーバラップ及び誤り
指示の問題を解決する。更にロング・コマンドを実行で
きるI/O制御ユニット(CU)において、本発明は、
CUが"ロング・コマンド"のCU受諾に応答して、"即
時"割込み信号を中央プロセッサ・コンプレックスに送
信するとき、"ロング・ビジー"信号をオン状態にセット
する。ここで"即時"とは、コマンドが制御ユニットにお
いて受諾される時点において、"完了割込み"が中央プロ
セッサ・コンプレックスに送信されることを意味する。
その時、装置がそのコマンドの実行を開始している必要
はない。後に装置が実際にコマンドを完了するときには
割込み信号は提供されない。"ロング・ビジー"状態はロ
ング・コマンドに対する全ての操作が要求装置により完
了されるまで、CUにおいて継続する。OSは即時割込
みを受信すると、ロング・コマンドに対してそのMIH
タイムアウトを終了し、従ってMIHプロセスは、MI
Hエラー条件を示すタイムアウトを有することができな
くなる。
【0074】装置のロング・ビジー状態は、OSが任意
の時点にテスト命令をCUに発行することによりテスト
され、装置に対してロング・ビジー状態が存在する場
合、OSがその装置への別の要求の発行を遅延したいか
否かなどが判断される。従って、本発明に従う装置に対
する"ロング・ビジー"信号と、OSへの"即時"割込み信
号との組み合わせは完了割込みをOSに送信する以前
に、実際の装置操作完了を待機した従来のMIHシステ
ムで遭遇したような、ロング・ビジー・コマンドに対す
る誤ったMIH指示の発生を阻止する。
の時点にテスト命令をCUに発行することによりテスト
され、装置に対してロング・ビジー状態が存在する場
合、OSがその装置への別の要求の発行を遅延したいか
否かなどが判断される。従って、本発明に従う装置に対
する"ロング・ビジー"信号と、OSへの"即時"割込み信
号との組み合わせは完了割込みをOSに送信する以前
に、実際の装置操作完了を待機した従来のMIHシステ
ムで遭遇したような、ロング・ビジー・コマンドに対す
る誤ったMIH指示の発生を阻止する。
【0075】任意の時点に制御ユニットのロング・ビジ
ー状態が、任意の実行中のOSによりテストされ、関連
装置を操作するための別のI/O要求を発行する以前
に、その装置の可用性が判断される。
ー状態が、任意の実行中のOSによりテストされ、関連
装置を操作するための別のI/O要求を発行する以前
に、その装置の可用性が判断される。
【0076】
【発明の実施の形態】好適な実施例の環境は、IBMの
MVS/ESA(エンタプライズ・システム・アーキテ
クチャ)及びIBM3590テープ記憶装置を含むもの
として述べられる。当業者には、好適な実施例としてこ
こで述べられる方法が、本発明の範囲から逸脱すること
無しに、他のオペレーティング・システム及びコンピュ
ータ・アーキテクチャ・プラットフォームにも適用され
得ることが理解されよう。
MVS/ESA(エンタプライズ・システム・アーキテ
クチャ)及びIBM3590テープ記憶装置を含むもの
として述べられる。当業者には、好適な実施例としてこ
こで述べられる方法が、本発明の範囲から逸脱すること
無しに、他のオペレーティング・システム及びコンピュ
ータ・アーキテクチャ・プラットフォームにも適用され
得ることが理解されよう。
【0077】装置自己記述拡張:好適な実施例をサポー
トする装置は、前述の構成データ読出しコマンドを使用
するとき、次のように自己記述データに含まれる2つの
新たなフィールドを返却する。
トする装置は、前述の構成データ読出しコマンドを使用
するとき、次のように自己記述データに含まれる2つの
新たなフィールドを返却する。
【0078】未着割込みハンドラ1次タイムアウト(M
IHPTO):ワード1のバイト2(603)は、制御
ユニットの推奨"1次MIHタイムアウト・インタバル"
を指定する値を含み、この値は装置に対して未着割込み
ハンドラ・タイムアウトをセットするために使用され
る。このタイムアウトは未着割込みハンドラ2次タイム
アウトに対する値がセットされない場合、ビジーまたは
チャネル・コマンド再試行ステータスの提示の結果とし
て、チャネル・プログラムが継続すると期待される最長
時間であり、任意の装置回復プロセス及び任意のキュー
イング時間を考慮する。2次MIHタイムアウトが指定
される場合には、この時間はビジーまたはチャネル・コ
マンド再試行ステータスの提示の結果として、チャネル
・プログラム(モデル依存型のロング・コマンドを含ま
ない)が費やすと期待される最長時間であり、任意の装
置回復プロセス及び任意のキューイング時間を考慮す
る。
IHPTO):ワード1のバイト2(603)は、制御
ユニットの推奨"1次MIHタイムアウト・インタバル"
を指定する値を含み、この値は装置に対して未着割込み
ハンドラ・タイムアウトをセットするために使用され
る。このタイムアウトは未着割込みハンドラ2次タイム
アウトに対する値がセットされない場合、ビジーまたは
チャネル・コマンド再試行ステータスの提示の結果とし
て、チャネル・プログラムが継続すると期待される最長
時間であり、任意の装置回復プロセス及び任意のキュー
イング時間を考慮する。2次MIHタイムアウトが指定
される場合には、この時間はビジーまたはチャネル・コ
マンド再試行ステータスの提示の結果として、チャネル
・プログラム(モデル依存型のロング・コマンドを含ま
ない)が費やすと期待される最長時間であり、任意の装
置回復プロセス及び任意のキューイング時間を考慮す
る。
【0079】1次MIHタイムアウト・インタバル値
は、1次MIHタイムアウト・インタバル・フィールド
内で指定される仮数及び指数から獲得される、底10の
値である。この値を含む1次MIHタイムアウト・フィ
ールドは、図16に示される形式(604)を有する。
は、1次MIHタイムアウト・インタバル・フィールド
内で指定される仮数及び指数から獲得される、底10の
値である。この値を含む1次MIHタイムアウト・フィ
ールドは、図16に示される形式(604)を有する。
【0080】仮数が0よりも大きい場合、ワード1のバ
イト2のビット0乃至1(指数)は、符号無し2進整数
を含み、これは0よりも大きい1次MIHタイムアウト
値の指数に相当する。仮数が0の場合、1次MIHタイ
ムアウト値として何も値が指定されず、ワード1のバイ
ト2のビット0乃至1(指数)は意味を有さない。
イト2のビット0乃至1(指数)は、符号無し2進整数
を含み、これは0よりも大きい1次MIHタイムアウト
値の指数に相当する。仮数が0の場合、1次MIHタイ
ムアウト値として何も値が指定されず、ワード1のバイ
ト2のビット0乃至1(指数)は意味を有さない。
【0081】ワード1のバイト2のビット2乃至7は符
号無し2進整数を含み、これは1次MIHタイムアウト
値の仮数に相当する。このフィールドが0を含む場合、
1次MIHタイムアウト・インタバルとして何も値が指
定されない。
号無し2進整数を含み、これは1次MIHタイムアウト
値の仮数に相当する。このフィールドが0を含む場合、
1次MIHタイムアウト・インタバルとして何も値が指
定されない。
【0082】指数フィールドは、図17に示されるよう
に復号される。
に復号される。
【0083】2次MIHタイムアウト(MIHST
O):ワード1のバイト3(602)は、装置に対する
プログラムの2次MIHタイムアウト・インタバルに対
する、制御ユニットの推奨値を指定する値を含む。MI
HSTO値は、装置依存のロング・コマンドに対して形
成される、任意の長い暗黙の忠誠の最大期待持続期間、
または装置依存のロング・ビジー条件の最大期待持続期
間の大きい方に相当する。
O):ワード1のバイト3(602)は、装置に対する
プログラムの2次MIHタイムアウト・インタバルに対
する、制御ユニットの推奨値を指定する値を含む。MI
HSTO値は、装置依存のロング・コマンドに対して形
成される、任意の長い暗黙の忠誠の最大期待持続期間、
または装置依存のロング・ビジー条件の最大期待持続期
間の大きい方に相当する。
【0084】MIHSTO値は、ロング・ビジー条件の
最大期待持続期間、またはモデル依存のロング・コマン
ドを含むチャネル・プログラムの最長期待実行時間であ
り、、ビジーまたはチャネル・コマンド再試行ステータ
スの結果生じる、あらゆる装置回復機構及び任意のキュ
ーイング時間を考慮する。
最大期待持続期間、またはモデル依存のロング・コマン
ドを含むチャネル・プログラムの最長期待実行時間であ
り、、ビジーまたはチャネル・コマンド再試行ステータ
スの結果生じる、あらゆる装置回復機構及び任意のキュ
ーイング時間を考慮する。
【0085】2次MIHタイムアウト値は、2次MIH
タイムアウト・フィールド内で指定される仮数及び指数
にもとづく、底10の値である。
タイムアウト・フィールド内で指定される仮数及び指数
にもとづく、底10の値である。
【0086】2次MIHタイムアウト・フィールドは、
図16に示される形式を有する。
図16に示される形式を有する。
【0087】仮数が0より大きい場合、ワード1のバイ
ト3のビット0乃至1(指数)は、符号無し2進整数を
含み、これは0よりも大きい2次MIHタイムアウト値
の指数に相当する。仮数が0の場合、2次MIHタイム
アウト・インタバルとして何も値が指定されず、ワード
1のバイト3のビット0乃至1(指数)は意味を有さな
い。
ト3のビット0乃至1(指数)は、符号無し2進整数を
含み、これは0よりも大きい2次MIHタイムアウト値
の指数に相当する。仮数が0の場合、2次MIHタイム
アウト・インタバルとして何も値が指定されず、ワード
1のバイト3のビット0乃至1(指数)は意味を有さな
い。
【0088】ワード1のバイト3のビット2乃至7は符
号無し2進整数を含み、これは2次MIHタイムアウト
値の仮数に相当する。このフィールドが0を含む場合、
2次MIHタイムアウト・インタバルとして何も値が指
定されない。
号無し2進整数を含み、これは2次MIHタイムアウト
値の仮数に相当する。このフィールドが0を含む場合、
2次MIHタイムアウト・インタバルとして何も値が指
定されない。
【0089】指数フィールドは、図17に示されるよう
に復号される。
に復号される。
【0090】ロング・ビジー・プロトコル:"キューイ
ング期間の制限"の項目で述べたプロセスは、次のよう
である。
ング期間の制限"の項目で述べたプロセスは、次のよう
である。
【0091】ここで使用される方法が図12乃至図13
に示され、その変形が図11に示される。本方法は各チ
ャネル・アダプタに対してCU内に組み込まれるCUタ
イマを使用する。各CUタイマはそれぞれのチャネル・
アダプタにより受信されるI/O要求のキューイング時
間、すなわちI/O要求が最初にチャネル・アダプタに
より受信されてから、要求装置が要求の処理を開始する
までの時間を測定する。CUタイマは初期には0にセッ
トされ、始動されると経過時間を測定し始める。制御ユ
ニット・タイマの経過時間が"しきい値"を超過する場
合、CUタイムアウトが制御ユニットにより検出され
る。このしきい値はI/O要求をモニタしているOSソ
フトウェアにより現在使用されているMIHタイムアウ
ト値よりも、幾分小さく定義される。ここでの概念は、
制御ユニットが活動状態からロング・ビジー(LB)状
態に遷移できるように時間設定することである。
に示され、その変形が図11に示される。本方法は各チ
ャネル・アダプタに対してCU内に組み込まれるCUタ
イマを使用する。各CUタイマはそれぞれのチャネル・
アダプタにより受信されるI/O要求のキューイング時
間、すなわちI/O要求が最初にチャネル・アダプタに
より受信されてから、要求装置が要求の処理を開始する
までの時間を測定する。CUタイマは初期には0にセッ
トされ、始動されると経過時間を測定し始める。制御ユ
ニット・タイマの経過時間が"しきい値"を超過する場
合、CUタイムアウトが制御ユニットにより検出され
る。このしきい値はI/O要求をモニタしているOSソ
フトウェアにより現在使用されているMIHタイムアウ
ト値よりも、幾分小さく定義される。ここでの概念は、
制御ユニットが活動状態からロング・ビジー(LB)状
態に遷移できるように時間設定することである。
【0092】各チャネル・アダプタは、要求装置が要求
に対するI/O操作の開始を許可される以前に要求装置
に関連付けられるロックに対して、アトミック・"テス
ト及びセット"操作を実行する。テスト及びセット操作
が成功の場合(すなわち要求が装置のロックを獲得す
る)、I/O要求が装置により受諾され処理される。こ
の要求は装置に対する1つ以上のI/Oコマンドを含み
得る。テスト及びセット操作が不成功の場合にはI/O
要求はビジー指示を提供され、CUタイマが始動され
る。
に対するI/O操作の開始を許可される以前に要求装置
に関連付けられるロックに対して、アトミック・"テス
ト及びセット"操作を実行する。テスト及びセット操作
が成功の場合(すなわち要求が装置のロックを獲得す
る)、I/O要求が装置により受諾され処理される。こ
の要求は装置に対する1つ以上のI/Oコマンドを含み
得る。テスト及びセット操作が不成功の場合にはI/O
要求はビジー指示を提供され、CUタイマが始動され
る。
【0093】CUタイマは、要求チャネル・アダプタが
成功裡に要求装置に対してロックを獲得するときリセッ
トされる。なぜなら、I/O要求の受諾は要求のキュー
イング時間の終了を示すからである。装置によるI/O
要求の完了時、他のチャネル・アダプタは、ロックがリ
セットされ、装置が再度使用可能であることを信号で知
らされる。ビジー指示を提供され、タイムアウトを経験
していない他のチャネル・アダプタにとって、この信号
は"ビジー解除"指示を提供し、これがチャネル・サブシ
ステムに、再度I/O要求をこれらのチャネル・アダプ
タの各々に発行するように指示する。CUタイマは各チ
ャネル・アダプタに対して走行し続ける。なぜなら、I
/O要求の再発行が再度装置ロックを獲得し損ね、別の
ビジー指示及びキューイング時間の継続を生じ得るから
である。
成功裡に要求装置に対してロックを獲得するときリセッ
トされる。なぜなら、I/O要求の受諾は要求のキュー
イング時間の終了を示すからである。装置によるI/O
要求の完了時、他のチャネル・アダプタは、ロックがリ
セットされ、装置が再度使用可能であることを信号で知
らされる。ビジー指示を提供され、タイムアウトを経験
していない他のチャネル・アダプタにとって、この信号
は"ビジー解除"指示を提供し、これがチャネル・サブシ
ステムに、再度I/O要求をこれらのチャネル・アダプ
タの各々に発行するように指示する。CUタイマは各チ
ャネル・アダプタに対して走行し続ける。なぜなら、I
/O要求の再発行が再度装置ロックを獲得し損ね、別の
ビジー指示及びキューイング時間の継続を生じ得るから
である。
【0094】万一CUアダプタしきい値タイムアウトが
発生する場合、チャネル・アダプタはI/O要求が次に
受信されるとき、ユニット・チェック指示をチャネルに
知らせるように条件付けられる。タイムアウトが"ビジ
ー"指示と"ビジー解除"指示との間に発生する場合に
は、"ビジー解除"指示がチャネル・サブシステムに信号
で知らされ、チャネル・サブシステムは自身のキューに
待機されているI/O要求を再発行する。"ユニット・
チェック"指示はOSソフトウェアに提供され、"セン
ス"・データを伴う。センス・データはOSソフトウェ
アに制御ユニットがまだ機能状態であるが、装置が"ロ
ング・ビジー状態"である(すなわち、装置が他のホス
トからのI/O操作を処理するのに多忙であるため、こ
のI/O要求に応答せず、これらの操作がこのI/O要
求に対する最大キューイング時間を超過した)ことを通
知する。この指示に対する通常のOSソフトウェア応答
は、次に装置ロックが解除されるときにチャネル・パス
により提供される"ロング・ビジー解除(no longer lon
g busy)"指示を待機することである。
発生する場合、チャネル・アダプタはI/O要求が次に
受信されるとき、ユニット・チェック指示をチャネルに
知らせるように条件付けられる。タイムアウトが"ビジ
ー"指示と"ビジー解除"指示との間に発生する場合に
は、"ビジー解除"指示がチャネル・サブシステムに信号
で知らされ、チャネル・サブシステムは自身のキューに
待機されているI/O要求を再発行する。"ユニット・
チェック"指示はOSソフトウェアに提供され、"セン
ス"・データを伴う。センス・データはOSソフトウェ
アに制御ユニットがまだ機能状態であるが、装置が"ロ
ング・ビジー状態"である(すなわち、装置が他のホス
トからのI/O操作を処理するのに多忙であるため、こ
のI/O要求に応答せず、これらの操作がこのI/O要
求に対する最大キューイング時間を超過した)ことを通
知する。この指示に対する通常のOSソフトウェア応答
は、次に装置ロックが解除されるときにチャネル・パス
により提供される"ロング・ビジー解除(no longer lon
g busy)"指示を待機することである。
【0095】議論を正当化する幾つかの実施の複雑性が
存在する。サブ項目"システム環境"で述べたマルチパス
・システムはビジー指示が受信されるとき、使用可能な
チャネル・パスのセットを通じてI/O要求を再試行す
る傾向がある(少なくとも所与のホストに関連付けられ
るチャネル・パスのセットが、グループとして調整され
ない特定の操作モードにおいて)。2つ以上のチャネル
・アダプタがビジー指示を送信して終了し、ビジー解除
指示を提供するように準備され得る。結果のビジー解除
指示が提供されるとき、チャネル・サブシステムは使用
可能なパスの1つを選択し、I/O要求を再駆動する。
I/Oがチャネル・サブシステムにおいて終了され、再
発行されない場合も存在する。
存在する。サブ項目"システム環境"で述べたマルチパス
・システムはビジー指示が受信されるとき、使用可能な
チャネル・パスのセットを通じてI/O要求を再試行す
る傾向がある(少なくとも所与のホストに関連付けられ
るチャネル・パスのセットが、グループとして調整され
ない特定の操作モードにおいて)。2つ以上のチャネル
・アダプタがビジー指示を送信して終了し、ビジー解除
指示を提供するように準備され得る。結果のビジー解除
指示が提供されるとき、チャネル・サブシステムは使用
可能なパスの1つを選択し、I/O要求を再駆動する。
I/Oがチャネル・サブシステムにおいて終了され、再
発行されない場合も存在する。
【0096】ソフトウェア・タイムアウト値:前述した
ように、本発明では受信ビジー指示により、ロング・ビ
ジー・タイムアウトの期間キューに待機される所与のI
/O要求が再駆動され、続いてソフトウェアにとって認
識可能な"ユニット・チェック"指示を提供される。ソフ
トウェアは次に、所与のI/O要求がその実行時間とロ
ング・ビジー・タイムアウトとの和により提供される時
限内に、またはロング・ビジー指示が受信されるまでに
完了することを期待する。
ように、本発明では受信ビジー指示により、ロング・ビ
ジー・タイムアウトの期間キューに待機される所与のI
/O要求が再駆動され、続いてソフトウェアにとって認
識可能な"ユニット・チェック"指示を提供される。ソフ
トウェアは次に、所与のI/O要求がその実行時間とロ
ング・ビジー・タイムアウトとの和により提供される時
限内に、またはロング・ビジー指示が受信されるまでに
完了することを期待する。
【0097】更に、装置のロング・ビジー・タイムアウ
トがその制限時間に達せずに解放されるとき、"ロング
・ビジー解除"指示が信号で知らされるので、"ロング・
ビジー"指示の受信と"ロング・ビジー解除"指示の受信
の間の時限が、任意の所与のI/O要求の最悪の場合の
実行時間により制限される。所与の装置に対して決定さ
れるように、このタイムアウト値は"ロング・ビジー解
除"指示が喪失されないことを保証するために使用され
る。I/O要求をキュー待機したチャネル・パスと、ロ
ング・コマンドを実行しているチャネル・パスとの関係
が図14に示される。
トがその制限時間に達せずに解放されるとき、"ロング
・ビジー解除"指示が信号で知らされるので、"ロング・
ビジー"指示の受信と"ロング・ビジー解除"指示の受信
の間の時限が、任意の所与のI/O要求の最悪の場合の
実行時間により制限される。所与の装置に対して決定さ
れるように、このタイムアウト値は"ロング・ビジー解
除"指示が喪失されないことを保証するために使用され
る。I/O要求をキュー待機したチャネル・パスと、ロ
ング・コマンドを実行しているチャネル・パスとの関係
が図14に示される。
【0098】MIHタイムアウトに対するコマンド実行
時間の影響を考慮するために、I/O要求に対したチャ
ネル・プログラムを構成するコマンドがロングとショー
トの2つのクラスに分けられる(理論的には、コマンド
分類は、3つ以上の実行時間クラス(例えばショート、
中間及びロングなど)を提供することにより、実行され
得るが、好適な実施例では2つのクラスが使用され
る)。OSソフトウェアは現I/O要求におけるコマン
ドを分析し、そのチャネル・プログラムがロング・コマ
ンドを含むか否かを判断し、I/O要求に対してロング
・コマンドが見い出されない場合には、短いMIHタイ
ムアウト値である1次MIHタイムアウト(MIHPT
O)値を使用する。I/O要求に対して1つ以上のロン
グ・コマンドがチャネル・プログラム内に見い出される
場合には、長いMIHタイムアウト値である2次MIH
タイムアウト(MIHSTO)が使用される。
時間の影響を考慮するために、I/O要求に対したチャ
ネル・プログラムを構成するコマンドがロングとショー
トの2つのクラスに分けられる(理論的には、コマンド
分類は、3つ以上の実行時間クラス(例えばショート、
中間及びロングなど)を提供することにより、実行され
得るが、好適な実施例では2つのクラスが使用され
る)。OSソフトウェアは現I/O要求におけるコマン
ドを分析し、そのチャネル・プログラムがロング・コマ
ンドを含むか否かを判断し、I/O要求に対してロング
・コマンドが見い出されない場合には、短いMIHタイ
ムアウト値である1次MIHタイムアウト(MIHPT
O)値を使用する。I/O要求に対して1つ以上のロン
グ・コマンドがチャネル・プログラム内に見い出される
場合には、長いMIHタイムアウト値である2次MIH
タイムアウト(MIHSTO)が使用される。
【0099】このように、I/O要求がショート要求
(ロング・コマンドを含まないチャネル・プログラムを
有するI/O要求)、またはロング要求(少なくとも1
つのロング・コマンドを含むチャネル・プログラムを有
するI/O要求)のいずれかに分類され得る。
(ロング・コマンドを含まないチャネル・プログラムを
有するI/O要求)、またはロング要求(少なくとも1
つのロング・コマンドを含むチャネル・プログラムを有
するI/O要求)のいずれかに分類され得る。
【0100】1次MIHタイムアウト(MIHPTO)
値は、ロング・コマンドを含まない通常のI/O要求に
対して期待される実行時間として決定され得る。2次M
IHタイムアウト(MIHSTO)値は、最長のコマン
ドの実行時間と、ロング・コマンドを含むI/O要求の
名目チャネル・プログラムにおける最悪の場合の実行時
間との和として決定され得る。
値は、ロング・コマンドを含まない通常のI/O要求に
対して期待される実行時間として決定され得る。2次M
IHタイムアウト(MIHSTO)値は、最長のコマン
ドの実行時間と、ロング・コマンドを含むI/O要求の
名目チャネル・プログラムにおける最悪の場合の実行時
間との和として決定され得る。
【0101】OSソフトウェアは、1)ショートI/O
要求の完了指示、または2)装置が別の要求のロング・
コマンドを実行するのに多忙になったことを示すロング
・ビジー指示のいずれかを示す割込みを受信する以前に
MIHPTOが経過する場合、ショートI/O要求に対
する未着割込みを検出する。ロング・ビジー指示が受信
される場合、OSソフトウェアはI/O要求をキューに
待機し、装置から"ロング・ビジー解除"指示を知らせる
割込みの受信を待機する。その後、OSソフトウェアは
その装置にI/O要求を再発行する。
要求の完了指示、または2)装置が別の要求のロング・
コマンドを実行するのに多忙になったことを示すロング
・ビジー指示のいずれかを示す割込みを受信する以前に
MIHPTOが経過する場合、ショートI/O要求に対
する未着割込みを検出する。ロング・ビジー指示が受信
される場合、OSソフトウェアはI/O要求をキューに
待機し、装置から"ロング・ビジー解除"指示を知らせる
割込みの受信を待機する。その後、OSソフトウェアは
その装置にI/O要求を再発行する。
【0102】ロングI/O要求に対してOSソフトウェ
アは、MIHSTOがそのロングI/O要求の完了を示
す任意の割込みが受信される以前に経過する場合、装置
からの未着割込みを検出する。
アは、MIHSTOがそのロングI/O要求の完了を示
す任意の割込みが受信される以前に経過する場合、装置
からの未着割込みを検出する。
【0103】OSソフトウェアによるロング・ビジー指
示の受信の後、OSソフトウェアは、MIHSTOが任
意の"ロング・ビジー解除"指示を受信する以前に経過す
る場合、未着割込みを検出する。
示の受信の後、OSソフトウェアは、MIHSTOが任
意の"ロング・ビジー解除"指示を受信する以前に経過す
る場合、未着割込みを検出する。
【0104】システム装置初期化:図1のステップ10
4は、装置初期化プロセスを表し、これは図2に詳細に
示される。このプロセスはオペレーティング・システム
にオンライン接続されるように定義される各装置に対し
てシステム初期化プロセスを実行する。装置初期化プロ
セスが図2のステップ201で呼び出され、ステップ2
11で、無害なI/Oコマンドにより、装置への各使用
可能なパスをテストすることにより装置(図1に示され
る)が動作状態であることを確認する(ステップ20
2)。テープ・ドライブの場合には、ノーオペレーショ
ン(NOP)・チャネル・コマンドが発行される。作動
可能なパスがステップ203で見い出されない場合、装
置はオフラインとマークされ(ステップ208)、処理
は次の装置へと継続する(ステップ104)。装置に対
して少なくとも1つの作動状態のパスが見い出される場
合(ステップ203)、(現ESA/390コンピュー
タ・アーキテクチャでは、)センスidI/Oコマンド
が発行され(ステップ212)、装置に対するコマンド
情報ワード(CIW)が検索される(ステップ20
4)。コマンド情報ワードはプログラムが装置の自己記
述データを検索することを可能にするチャネル・コマン
ドを識別する。装置への各作動状態のパスに対して(ス
テップ205)、構成データ読出しコマンド(RCD)
が発行され(ステップ213)、それにより装置構成デ
ータ記録(CDR)が検索されて、OS構成データ・テ
ーブル(CDT)に追加される(ステップ215)。
4は、装置初期化プロセスを表し、これは図2に詳細に
示される。このプロセスはオペレーティング・システム
にオンライン接続されるように定義される各装置に対し
てシステム初期化プロセスを実行する。装置初期化プロ
セスが図2のステップ201で呼び出され、ステップ2
11で、無害なI/Oコマンドにより、装置への各使用
可能なパスをテストすることにより装置(図1に示され
る)が動作状態であることを確認する(ステップ20
2)。テープ・ドライブの場合には、ノーオペレーショ
ン(NOP)・チャネル・コマンドが発行される。作動
可能なパスがステップ203で見い出されない場合、装
置はオフラインとマークされ(ステップ208)、処理
は次の装置へと継続する(ステップ104)。装置に対
して少なくとも1つの作動状態のパスが見い出される場
合(ステップ203)、(現ESA/390コンピュー
タ・アーキテクチャでは、)センスidI/Oコマンド
が発行され(ステップ212)、装置に対するコマンド
情報ワード(CIW)が検索される(ステップ20
4)。コマンド情報ワードはプログラムが装置の自己記
述データを検索することを可能にするチャネル・コマン
ドを識別する。装置への各作動状態のパスに対して(ス
テップ205)、構成データ読出しコマンド(RCD)
が発行され(ステップ213)、それにより装置構成デ
ータ記録(CDR)が検索されて、OS構成データ・テ
ーブル(CDT)に追加される(ステップ215)。
【0105】図15は、CDRに含まれる装置1次MI
Hタイムアウト値(603)及び装置2次MIHタイム
アウト値(602)を示す。
Hタイムアウト値(603)及び装置2次MIHタイム
アウト値(602)を示す。
【0106】図2において、装置の自己記述データがO
S内のCDTに配置されると、装置依存の初期化プロシ
ジャがステップ206で呼び出され、システム制御ブロ
ックを装置が使用され得る方法に関する情報により初期
化する。装置初期化プロセスの間にステップ207によ
りエラーが見い出されない場合、装置はステップ209
でオンライン且つ使用可能とマークされる。ステップ2
07でエラーが見い出される場合には、装置初期化プロ
セスはステップ208で装置をオフラインとマークし、
装置はエラーが修理されるまでアプリケーションにより
使用され得ない。
S内のCDTに配置されると、装置依存の初期化プロシ
ジャがステップ206で呼び出され、システム制御ブロ
ックを装置が使用され得る方法に関する情報により初期
化する。装置初期化プロセスの間にステップ207によ
りエラーが見い出されない場合、装置はステップ209
でオンライン且つ使用可能とマークされる。ステップ2
07でエラーが見い出される場合には、装置初期化プロ
セスはステップ208で装置をオフラインとマークし、
装置はエラーが修理されるまでアプリケーションにより
使用され得ない。
【0107】図1において、ステップ104で全ての装
置が確認され、装置初期化プロセスが完了すると、ステ
ップ105でMIH初期化が開始する。MIH初期化は
最初、システム・プログラマによりSYS1.PARMLIBデー
タセット内に指定されるカストマイズ・データ(メンバ
IECIOSxx)の読出しを含む(102)。このカ
ストマイズ・データは、利用者が特定のI/O装置に課
せられるように望むMIHタイムアウト値を含む。しか
しながら、このカストマイズ・データは任意選択であ
る。なぜなら、システムによりサポートされる全ての装
置タイプに対して固定のMIHPTO及びMIHSTO
タイムアウト・デフォルト指定値が存在するからであ
る。ステップ106で、IECIOSxxメンバからの
テキスト・レコードが、DEVブロックと呼ばれる内部
テキスト・レコードに変換される。このステップはIE
CIOSxx内に作成された各装置MIH値に対して1
DEVブロックを生成し、これらが連鎖されて、MIH
処理作業領域からアンカ(anchored)される(ステップ
113)。システム初期化が進み、全てのシステム・サ
ービスが使用可能になるとき、MIH初期化はステップ
107において継続し、ステップ114で各DEVブロ
ックを処理して、利用者により指定されるMIHタイム
アウトを推奨するために必要な内部データ構造を生成す
る。
置が確認され、装置初期化プロセスが完了すると、ステ
ップ105でMIH初期化が開始する。MIH初期化は
最初、システム・プログラマによりSYS1.PARMLIBデー
タセット内に指定されるカストマイズ・データ(メンバ
IECIOSxx)の読出しを含む(102)。このカ
ストマイズ・データは、利用者が特定のI/O装置に課
せられるように望むMIHタイムアウト値を含む。しか
しながら、このカストマイズ・データは任意選択であ
る。なぜなら、システムによりサポートされる全ての装
置タイプに対して固定のMIHPTO及びMIHSTO
タイムアウト・デフォルト指定値が存在するからであ
る。ステップ106で、IECIOSxxメンバからの
テキスト・レコードが、DEVブロックと呼ばれる内部
テキスト・レコードに変換される。このステップはIE
CIOSxx内に作成された各装置MIH値に対して1
DEVブロックを生成し、これらが連鎖されて、MIH
処理作業領域からアンカ(anchored)される(ステップ
113)。システム初期化が進み、全てのシステム・サ
ービスが使用可能になるとき、MIH初期化はステップ
107において継続し、ステップ114で各DEVブロ
ックを処理して、利用者により指定されるMIHタイム
アウトを推奨するために必要な内部データ構造を生成す
る。
【0108】利用者の全ての指定時間インタバルが、シ
ステム初期化ステップ107において処理された後、M
IHタイムアウト値が利用者により変更されなかった装
置は、ステップ108で、デフォルト指定の1次MIH
タイムアウト値により処理される。この処理は、装置を
表すDEVブロックを生成するステップ115、及びそ
れらをステップ114に入力するステップを含み、ステ
ップ114がDEVブロックを利用者入力により処理す
る。
ステム初期化ステップ107において処理された後、M
IHタイムアウト値が利用者により変更されなかった装
置は、ステップ108で、デフォルト指定の1次MIH
タイムアウト値により処理される。この処理は、装置を
表すDEVブロックを生成するステップ115、及びそ
れらをステップ114に入力するステップを含み、ステ
ップ114がDEVブロックを利用者入力により処理す
る。
【0109】MIHタイムアウト値を有するこれらのD
EVブロックを生成するプロセスの詳細が図3乃至図4
に示される。システム初期化の間、または後述の装置変
更プロセスからステップ301で装置のMIHインタバ
ル処理に入力する。ステップ302は装置ブロックをキ
ューに待機し、そのアクセスを装置に対するMIH処理
を変更する他のMVSコマンドから生じる他のMIH処
理に対して直列化する。こうしたコマンドには、例えば
SET IOS=xx及びSETIOS MIHなどが
含まれる。システム・エンキューが獲得されると、シス
テム内の各装置が調査され(ステップ303)、既に導
入がIECIOSxx102内にMIHインタバルを指
定したか否かを判断する。利用者が既にインタバルを指
定している場合(ステップ311)、処理は次の装置に
移行する(ステップ304)。しかしながら、利用者が
MIHインタバルを指定していない場合には、その装置
に対して、構成データ・テーブル(112)からMIH
1次タイムアウト値が検索される(ステップ313)。
MIH1次タイムアウト値が0でない場合、装置を表す
DEVブロックが生成される(ステップ315)。次に
DEVブロックがDEVブロックの大域キュー上にアン
カされ(ステップ316)、処理はシステム内の次の装
置に移行する(ステップ304)。システム内の全ての
装置が処理されると、DEVブロックが生成されたか否
かがチェックされる(ステップ305)。DEVブロッ
クが生成されていない場合、処理はMIHエンキューを
デキューすることにより解放し(ステップ309)、制
御を呼び出し元に戻して終了する。
EVブロックを生成するプロセスの詳細が図3乃至図4
に示される。システム初期化の間、または後述の装置変
更プロセスからステップ301で装置のMIHインタバ
ル処理に入力する。ステップ302は装置ブロックをキ
ューに待機し、そのアクセスを装置に対するMIH処理
を変更する他のMVSコマンドから生じる他のMIH処
理に対して直列化する。こうしたコマンドには、例えば
SET IOS=xx及びSETIOS MIHなどが
含まれる。システム・エンキューが獲得されると、シス
テム内の各装置が調査され(ステップ303)、既に導
入がIECIOSxx102内にMIHインタバルを指
定したか否かを判断する。利用者が既にインタバルを指
定している場合(ステップ311)、処理は次の装置に
移行する(ステップ304)。しかしながら、利用者が
MIHインタバルを指定していない場合には、その装置
に対して、構成データ・テーブル(112)からMIH
1次タイムアウト値が検索される(ステップ313)。
MIH1次タイムアウト値が0でない場合、装置を表す
DEVブロックが生成される(ステップ315)。次に
DEVブロックがDEVブロックの大域キュー上にアン
カされ(ステップ316)、処理はシステム内の次の装
置に移行する(ステップ304)。システム内の全ての
装置が処理されると、DEVブロックが生成されたか否
かがチェックされる(ステップ305)。DEVブロッ
クが生成されていない場合、処理はMIHエンキューを
デキューすることにより解放し(ステップ309)、制
御を呼び出し元に戻して終了する。
【0110】しかしながら、ステップ302でDEVブ
ロックがキュー待機されるとき、それらは最初に全ての
メッセージ処理をスキップするためのフラグをセットす
ることにより処理される(ステップ306)。メッセー
ジ処理は、これらのMIH変更が明示的な利用者コマン
ドに由来しないのでスキップされる。次に、MIH初期
化プロセス(IOSRMIHI)がステップ312で呼
び出され、利用者が指定したMIHインタバルが処理さ
れるのと同様にキュー待機されるDEVブロックを処理
する(ステップ318)。IOSRMIHIが処理を完
了すると、メッセージ処理が再度イネーブルされ(ステ
ップ308)、MIHエンキューが解放され(ステップ
309)、制御が呼び出し側に戻される(ステップ31
0)。
ロックがキュー待機されるとき、それらは最初に全ての
メッセージ処理をスキップするためのフラグをセットす
ることにより処理される(ステップ306)。メッセー
ジ処理は、これらのMIH変更が明示的な利用者コマン
ドに由来しないのでスキップされる。次に、MIH初期
化プロセス(IOSRMIHI)がステップ312で呼
び出され、利用者が指定したMIHインタバルが処理さ
れるのと同様にキュー待機されるDEVブロックを処理
する(ステップ318)。IOSRMIHIが処理を完
了すると、メッセージ処理が再度イネーブルされ(ステ
ップ308)、MIHエンキューが解放され(ステップ
309)、制御が呼び出し側に戻される(ステップ31
0)。
【0111】本発明によれば、MIHタイムアウト値
(MIHPTO及びMIHSTO)が一意的に各装置に
割当てられる。OSのデフォルト値以外の値が一般に使
用されるものと期待される。OSがサポートできるより
多い固有MIHタイムアウト値が、装置に対して使用さ
れる場合(MVSは256の固有MIHタイムアウト値
をサポートできる)、装置を処理するための特殊処理が
必要となる。MVSでは、もはやこれ以上の固有MIH
走査インタバルが使用可能でない場合(ステップ32
1)、MVSは装置により要求される値よりも大きな最
小の有効インタバルを割当てる(ステップ322)。こ
のことは、ほとんどの応答時間を装置故障の検出に当て
る一方でI/O操作が早まって終了されないように保証
する。DEVブロックに含まれる1次MIHタイムアウ
ト値よりも大きなインタバルが使用可能でない場合、装
置クラスに対するデフォルト指定のMIH時間が使用さ
れる。
(MIHPTO及びMIHSTO)が一意的に各装置に
割当てられる。OSのデフォルト値以外の値が一般に使
用されるものと期待される。OSがサポートできるより
多い固有MIHタイムアウト値が、装置に対して使用さ
れる場合(MVSは256の固有MIHタイムアウト値
をサポートできる)、装置を処理するための特殊処理が
必要となる。MVSでは、もはやこれ以上の固有MIH
走査インタバルが使用可能でない場合(ステップ32
1)、MVSは装置により要求される値よりも大きな最
小の有効インタバルを割当てる(ステップ322)。こ
のことは、ほとんどの応答時間を装置故障の検出に当て
る一方でI/O操作が早まって終了されないように保証
する。DEVブロックに含まれる1次MIHタイムアウ
ト値よりも大きなインタバルが使用可能でない場合、装
置クラスに対するデフォルト指定のMIH時間が使用さ
れる。
【0112】システム初期化が完了すると(ステップ1
09)、新たな装置を追加することにより、または単に
オフライン装置をオンラインにするMVS装置変更コマ
ンドを発行することにより(ステップ117)、システ
ムは構成テーブルを変更する。オフライン装置がオンラ
インにされるとき、常にそれらはシステム初期化の間に
実行された図2と同一の装置初期化プロセス(図1の2
01及び図2の全て)を実行する。装置初期化プロセス
の実行の後、DEVブロックが生成され、それらがシス
テム初期化の間に処理されたのと同様に処理される(図
1)。
09)、新たな装置を追加することにより、または単に
オフライン装置をオンラインにするMVS装置変更コマ
ンドを発行することにより(ステップ117)、システ
ムは構成テーブルを変更する。オフライン装置がオンラ
インにされるとき、常にそれらはシステム初期化の間に
実行された図2と同一の装置初期化プロセス(図1の2
01及び図2の全て)を実行する。装置初期化プロセス
の実行の後、DEVブロックが生成され、それらがシス
テム初期化の間に処理されたのと同様に処理される(図
1)。
【0113】オペレーティング・システムが初期化さ
れ、ジョブがシステム上で実行を開始すると、I/O要
求がその実行のために、OSによりそのI/Oスーパバ
イザに発行され、前記米国特許第5388254号で述
べられるタイプの未着割込みハンドラ・サブコンポーネ
ントにより時間設定される。
れ、ジョブがシステム上で実行を開始すると、I/O要
求がその実行のために、OSによりそのI/Oスーパバ
イザに発行され、前記米国特許第5388254号で述
べられるタイプの未着割込みハンドラ・サブコンポーネ
ントにより時間設定される。
【0114】本発明を実現する各装置に対して3つの新
たなフィールドが、オペレーティング・システムの内部
表現に追加される。
たなフィールドが、オペレーティング・システムの内部
表現に追加される。
【0115】ロング・ビジー標識:これは装置に対する
最後のI/O要求が、ロング・ビジー指示(センス・デ
ータを伴うユニット・チェック)に遭遇したことを示す
ビットである。ロング・ビジーは装置からの信号であ
り、装置がロング・コマンドを含むコマンド連鎖を実行
しているとき、またはサブシステムが長い時間を費やす
処理状態に入り、その状態がサブシステムがビジーの
間、あらゆるコマンドを受諾するのを阻害するとき、発
行される。
最後のI/O要求が、ロング・ビジー指示(センス・デ
ータを伴うユニット・チェック)に遭遇したことを示す
ビットである。ロング・ビジーは装置からの信号であ
り、装置がロング・コマンドを含むコマンド連鎖を実行
しているとき、またはサブシステムが長い時間を費やす
処理状態に入り、その状態がサブシステムがビジーの
間、あらゆるコマンドを受諾するのを阻害するとき、発
行される。
【0116】LBREDRIVE標識:これはロング・
ビジー状態において、経過時間がMIHSTO値を超過
した後、I/O要求がOSにより装置に再発行されたこ
とを示すビットである。
ビジー状態において、経過時間がMIHSTO値を超過
した後、I/O要求がOSにより装置に再発行されたこ
とを示すビットである。
【0117】累積MIH時間:これは装置がロング・ビ
ジー状態にある総時間を表すフィールドである(この経
過時間は、ロング・ビジー標識が装置に対してセットさ
れるとき、開始する)。
ジー状態にある総時間を表すフィールドである(この経
過時間は、ロング・ビジー標識が装置に対してセットさ
れるとき、開始する)。
【0118】OS内では、1次MIHインタバルが活動
状態のまたはキュー待機中のI/O要求に対して満了す
るとき(累積時間>MIHPTO)、OSは装置がMI
H回復の資格があると見なし、図5に示される装置依存
のMIHエグジット処理にエグジットする。このMIH
エグジットには1次インタバルが満了した後、ステップ
401で入る。ステップ402は、I/O要求が装置に
おいて保留になる総経過時間を累算する。ステップ40
3は、装置がロング・ビジー状態(I/O要求がキュー
待機状態であり、活動状態でない)で示されているか否
かをテストし、次に総累積時間が装置のMIHSTO時
間と比較される(ステップ409)。MIHSTO時間
を超過すると、ステップ410はLBREDRIVEビ
ットをオンし、MIHが要求を再駆動する処理に入った
ことを示す。ステップ410はMIHに復帰し、MIH
はステップ411で要求に対する総時間を、エラー記録
としてシステム・エラー・ログに記録した後、キューに
待機中の要求を再始動する。
状態のまたはキュー待機中のI/O要求に対して満了す
るとき(累積時間>MIHPTO)、OSは装置がMI
H回復の資格があると見なし、図5に示される装置依存
のMIHエグジット処理にエグジットする。このMIH
エグジットには1次インタバルが満了した後、ステップ
401で入る。ステップ402は、I/O要求が装置に
おいて保留になる総経過時間を累算する。ステップ40
3は、装置がロング・ビジー状態(I/O要求がキュー
待機状態であり、活動状態でない)で示されているか否
かをテストし、次に総累積時間が装置のMIHSTO時
間と比較される(ステップ409)。MIHSTO時間
を超過すると、ステップ410はLBREDRIVEビ
ットをオンし、MIHが要求を再駆動する処理に入った
ことを示す。ステップ410はMIHに復帰し、MIH
はステップ411で要求に対する総時間を、エラー記録
としてシステム・エラー・ログに記録した後、キューに
待機中の要求を再始動する。
【0119】総累積時間がMIHSTOタイムアウト・
インタバルを超過しなかった場合、ステップ415が実
行され、エラー回復動作をリセットし、I/O要求を再
発行のために再度キューに待機し、MIHプロセスに復
帰する。
インタバルを超過しなかった場合、ステップ415が実
行され、エラー回復動作をリセットし、I/O要求を再
発行のために再度キューに待機し、MIHプロセスに復
帰する。
【0120】ステップ403が、装置がロング・ビジー
状態でないことを見い出し、ステップ404が、活動状
態のチャネル・プログラムを見い出す場合、ステップ4
05がチャネル・プログラムを走査し、それが任意のロ
ング・コマンドを含むか否かを判断する。次にIBM3
590テープ装置を制御するロング・コマンドの例を示
す。REWIND(巻き戻し)、FORWARD SPACE FILE(スペー
ス・ファイル先送り)、BACKWARD SPACE FILE(スペー
ス・ファイル逆送り)、LOCATE BLOCK(ブロック捜
索)、FORMAT(フォーマット)、ERASE(消去)、DATA
SECURITY ERASE(データ・セキュリティ消去)、UNLOAD
(アンロード)、LOAD(ロード)、MOVE(転送)
状態でないことを見い出し、ステップ404が、活動状
態のチャネル・プログラムを見い出す場合、ステップ4
05がチャネル・プログラムを走査し、それが任意のロ
ング・コマンドを含むか否かを判断する。次にIBM3
590テープ装置を制御するロング・コマンドの例を示
す。REWIND(巻き戻し)、FORWARD SPACE FILE(スペー
ス・ファイル先送り)、BACKWARD SPACE FILE(スペー
ス・ファイル逆送り)、LOCATE BLOCK(ブロック捜
索)、FORMAT(フォーマット)、ERASE(消去)、DATA
SECURITY ERASE(データ・セキュリティ消去)、UNLOAD
(アンロード)、LOAD(ロード)、MOVE(転送)
【0121】ロング・コマンドがI/O要求のプログラ
ム内で見い出されない場合、ステップ412は通常のM
IH回復を要求する。しかしながら、ロング・コマンド
がステップ406で見い出される場合には、総累積時間
がMIHSTO値と比較される。ステップ407は、累
積時間がMIHSTO値を超過するか否かを判断する。
超過しない場合、ステップ413は、MIHプロセッサ
がMIH装置依存エグジットに復帰する以前に、別のM
IHインタバル(MIHPTO)を待機すべきことを示
す。MIHプロセッサが別のMIHインタバルの経過を
待機している間にチャネル・プログラムが完了する場
合、このI/Oのために、MIH装置依存エグジットに
再入力することはない。しかしながら、ステップ407
が総累積時間がMIHSTOを超過しないことを見い出
すと、ステップ414は総累積時間を0にリセットし、
ロング・ビジー・フラグをリセットし、総累積時間をエ
ラー回復記録に保管する。そして、MIHプロセスに再
入力する。
ム内で見い出されない場合、ステップ412は通常のM
IH回復を要求する。しかしながら、ロング・コマンド
がステップ406で見い出される場合には、総累積時間
がMIHSTO値と比較される。ステップ407は、累
積時間がMIHSTO値を超過するか否かを判断する。
超過しない場合、ステップ413は、MIHプロセッサ
がMIH装置依存エグジットに復帰する以前に、別のM
IHインタバル(MIHPTO)を待機すべきことを示
す。MIHプロセッサが別のMIHインタバルの経過を
待機している間にチャネル・プログラムが完了する場
合、このI/Oのために、MIH装置依存エグジットに
再入力することはない。しかしながら、ステップ407
が総累積時間がMIHSTOを超過しないことを見い出
すと、ステップ414は総累積時間を0にリセットし、
ロング・ビジー・フラグをリセットし、総累積時間をエ
ラー回復記録に保管する。そして、MIHプロセスに再
入力する。
【0122】活動状態のI/O要求が完了するとき、図
6または図7に示されるプロセスが、総累積時間を0に
リセットし、装置に対する任意のロング・ビジー指示を
リセットし、更にLBREDRIVEフラグをリセット
するために使用される。図6は装置依存のセンス終了
(EOS:End-of-Sence)エグジットを表し、これはI
/O要求を完了する装置に対してユニット・チェックも
存在するとき、装置終了信号を処理する。このプロセス
ではセンス・データが読出された後、要求に対する総累
積時間を0にリセットするためにステップ421が呼び
出される。ステップ422は、センス信号に関連付けら
れる"ロング・ビジー"指示の存在をテストする。ステッ
プ422がロング・ビジー・センス・データを見い出さ
ない場合、ステップ423が装置に対するロング・ビジ
ー指示をリセットし、LBREDRIVEフラグをリセ
ットする。ステップ422がロング・ビジー・センス・
データを見い出した場合、またはステップ423の後、
OS内のMIH操作を制御するMIHルーチンを含むO
S内のIOS(I/Oシステム)ソフトウェアへの復帰
が実行される。
6または図7に示されるプロセスが、総累積時間を0に
リセットし、装置に対する任意のロング・ビジー指示を
リセットし、更にLBREDRIVEフラグをリセット
するために使用される。図6は装置依存のセンス終了
(EOS:End-of-Sence)エグジットを表し、これはI
/O要求を完了する装置に対してユニット・チェックも
存在するとき、装置終了信号を処理する。このプロセス
ではセンス・データが読出された後、要求に対する総累
積時間を0にリセットするためにステップ421が呼び
出される。ステップ422は、センス信号に関連付けら
れる"ロング・ビジー"指示の存在をテストする。ステッ
プ422がロング・ビジー・センス・データを見い出さ
ない場合、ステップ423が装置に対するロング・ビジ
ー指示をリセットし、LBREDRIVEフラグをリセ
ットする。ステップ422がロング・ビジー・センス・
データを見い出した場合、またはステップ423の後、
OS内のMIH操作を制御するMIHルーチンを含むO
S内のIOS(I/Oシステム)ソフトウェアへの復帰
が実行される。
【0123】MIHプロセス内の装置依存トラップ・エ
グジット・ルーチン(430)が、図7に示される。こ
のトラップ制御プロセスは装置が完了し、ユニット・チ
ェック無しに装置終了信号を提供するとき(ステップ4
34)、制御を獲得する。次にステップ431が、要求
に対する総累積時間を0にリセットし、ステップ423
が装置に対する任意のロング・ビジー指示をリセット
し、LBREDRIVEフラグをリセットし、ステップ
433でIOSに復帰する。
グジット・ルーチン(430)が、図7に示される。こ
のトラップ制御プロセスは装置が完了し、ユニット・チ
ェック無しに装置終了信号を提供するとき(ステップ4
34)、制御を獲得する。次にステップ431が、要求
に対する総累積時間を0にリセットし、ステップ423
が装置に対する任意のロング・ビジー指示をリセット
し、LBREDRIVEフラグをリセットし、ステップ
433でIOSに復帰する。
【0124】装置に対して非送信請求割込み(その送信
が要求されたものでないことをいう)が発生するとき、
図8に示されるステップ440で、装置依存非送信請求
割込みエグジット・コードに入る。次にステップ441
で、割込みのステータスが装置状態の変化が発生したこ
とを示す場合、ステップ422がロング・ビジー標識を
リセットする。
が要求されたものでないことをいう)が発生するとき、
図8に示されるステップ440で、装置依存非送信請求
割込みエグジット・コードに入る。次にステップ441
で、割込みのステータスが装置状態の変化が発生したこ
とを示す場合、ステップ422がロング・ビジー標識を
リセットする。
【0125】I/O要求がエラーに遭遇するとき、図9
に示される装置依存エラー回復プロシジャ(装置ER
P)450が呼び出される。ステップ451は、I/O
エラーがロング・ビジー条件により生じたか否かを判断
し、そうでない場合、ステップ452がI/O操作の再
試行を含み得る従来のエラー回復プロセスを実行し、ス
テップ470でIOSに復帰する。しかしながら、ステ
ップ451がエラーがロング・ビジー条件によることを
見い出すと、ステップ453でたとえ装置が準備完了状
態でなくても、I/O要求が実行される必要があるか否
かがチェックされる(IOSIONRD)。ERPを満
足するために、I/O要求が実行される必要がない場
合、ステップ454がI/O要求が永久エラーとマーク
し、ジョブがステップ470で通知される。装置が準備
完了状態でないときにI/O要求が実行を要求しない場
合、ステップ455でLBREDRIVEビットがチェ
ックされ、要求がMIHから再駆動されたか否かを確認
する。要求がMIHから再駆動され、まだロング・ビジ
ー状態の場合、装置は永久エラーと見なされる。ステッ
プ458及び459で、ロング・ビジー標識及びLBR
EDRIVEフラグ、更に総累積時間がリセットされ
る。次にステップ460で、装置が強制的にオフライン
にされ、全ての新たなI/O要求が永久I/Oエラーに
より拒絶されることを示すようにマークされる。最後に
ステップ461で、現I/O要求に永久エラーがマーク
され、ジョブがステップ470で通知される。ステップ
455でLBREDRIVEフラグがオンでなかった場
合、ステップ456が装置をロング・ビジー状態である
ものとしてマークする。従って、ステップ457による
失敗チャネル・プログラムの再試行がIOSの内部にキ
ュー待機されて、ロング・ビジーが取り下げられるのを
待機し(図8)、上述のように、総ロング・ビジー時間
がMIHによりモニタされる。
に示される装置依存エラー回復プロシジャ(装置ER
P)450が呼び出される。ステップ451は、I/O
エラーがロング・ビジー条件により生じたか否かを判断
し、そうでない場合、ステップ452がI/O操作の再
試行を含み得る従来のエラー回復プロセスを実行し、ス
テップ470でIOSに復帰する。しかしながら、ステ
ップ451がエラーがロング・ビジー条件によることを
見い出すと、ステップ453でたとえ装置が準備完了状
態でなくても、I/O要求が実行される必要があるか否
かがチェックされる(IOSIONRD)。ERPを満
足するために、I/O要求が実行される必要がない場
合、ステップ454がI/O要求が永久エラーとマーク
し、ジョブがステップ470で通知される。装置が準備
完了状態でないときにI/O要求が実行を要求しない場
合、ステップ455でLBREDRIVEビットがチェ
ックされ、要求がMIHから再駆動されたか否かを確認
する。要求がMIHから再駆動され、まだロング・ビジ
ー状態の場合、装置は永久エラーと見なされる。ステッ
プ458及び459で、ロング・ビジー標識及びLBR
EDRIVEフラグ、更に総累積時間がリセットされ
る。次にステップ460で、装置が強制的にオフライン
にされ、全ての新たなI/O要求が永久I/Oエラーに
より拒絶されることを示すようにマークされる。最後に
ステップ461で、現I/O要求に永久エラーがマーク
され、ジョブがステップ470で通知される。ステップ
455でLBREDRIVEフラグがオンでなかった場
合、ステップ456が装置をロング・ビジー状態である
ものとしてマークする。従って、ステップ457による
失敗チャネル・プログラムの再試行がIOSの内部にキ
ュー待機されて、ロング・ビジーが取り下げられるのを
待機し(図8)、上述のように、総ロング・ビジー時間
がMIHによりモニタされる。
【0126】以上から、本発明の趣旨から逸脱すること
無しに、様々な変更が可能であることが理解されよう。
従って、本明細書の記述は本発明の一実施例として取り
上げられただけであり、本発明の範囲を制限するもので
はない。
無しに、様々な変更が可能であることが理解されよう。
従って、本明細書の記述は本発明の一実施例として取り
上げられただけであり、本発明の範囲を制限するもので
はない。
【0127】まとめとして、本発明の構成に関して以下
の事項を開示する。
の事項を開示する。
【0128】(1)複数のオペレーティング・システム
(OS)を有するコンピュータ構成において使用される
方法であって、各々の前記オペレーティング・システム
が該オペレーティング・システムから入出力サブシステ
ムに発行される入出力要求に対して故障入出力(I/
O)装置操作を検出する未着割込みハンドラ(MIH)
・プロセスを有し、前記オペレーティング・システムが
入出力装置に接続される少なくとも1つの入出力制御装
置(CU)を共用するものにおいて、前記未着割込みハ
ンドラ・プロセスが、1次未着割込みハンドラ・タイム
アウト値及び2次未着割込みハンドラ・タイムアウト値
を含む、前記未着割込みハンドラ・プロセスがアクセス
可能な複数の未着割込みハンドラ・タイムアウト延長値
を前記コンピュータ構成内に記憶するステップと、前記
制御装置がアクセス可能な少なくとも1つの制御装置タ
イムアウトしきい値を記憶するステップと、前記制御装
置に接続される前記入出力装置による操作のために、入
出力要求を前記オペレーティング・システムから前記制
御装置に送信し、前記入出力装置が前記入出力要求に対
して使用可能でない場合、前記制御装置により前記入出
力要求を拒絶するステップと、未着割込みハンドラ・タ
イマ・プロセスをゼロ時間値から開始し、前記入出力要
求が前記制御装置に送信されるとき、前記1次未着割込
みハンドラ・タイムアウト値を前記入出力要求に対する
現未着割込みハンドラ・タイムアウト値として使用し、
前記未着割込みハンドラ・タイマ・プロセスが前記現未
着割込みハンドラ・タイムアウト値以上の時間に達する
とき、未着割込みハンドラ・タイムアウトを信号で知ら
せるステップと、前記入出力装置の使用について、前記
入出力要求が前記制御装置内の任意の他の同時入出力要
求と競合するステップと、前記入出力装置がビジーであ
り、前記入出力要求が前記制御装置により拒絶される場
合、制御装置しきい値タイマ・プロセスをゼロ時間値か
ら開始し、前記入出力要求に対する制御装置しきい値経
過時間を測定するステップと、前記制御装置しきい値タ
イマ・プロセスにより測定される前記経過時間が、前記
制御装置タイムアウトしきい値以上の場合、制御装置し
きい値タイムアウトを示すステップと、前記制御装置し
きい値タイマ・プロセスが前記制御装置しきい値タイム
アウトを示すとき、前記制御装置がロング・ビジー割込
みを前記オペレーティング・システムに知らせるステッ
プと、前記ロング・ビジー割込みに応答して、前記オペ
レーティング・システム・タイマ・プロセスにおける前
記現未着割込みハンドラ・タイムアウト値を、前記2次
未着割込みハンドラ・タイムアウト値により置換するス
テップと、前記未着割込みハンドラ・タイマ・プロセス
が、前記2次未着割込みハンドラ・タイムアウト値以上
の経過時間に達するとき、前記未着割込みハンドラ・タ
イムアウトを信号で知らせ、前記入出力装置操作が故障
したことを示すステップと、を含む、方法。 (2)前記未着割込みハンドラ・プロセスが、前記未着
割込みハンドラ・タイムアウトの発生以前に前記入出力
装置が前記入出力要求の操作を受諾する場合、前記入出
力要求に対する前記未着割込みハンドラ・タイマ・プロ
セスの操作を終了するステップを含む、前記(1)記載
の方法。 (3)前記未着割込みハンドラ・プロセスが、前記制御
装置しきい値タイムアウトの発生以前に、前記入出力装
置が前記入出力要求の操作を受諾する場合、前記入出力
要求に対する前記制御装置しきい値タイマ・プロセスの
操作を終了するステップを含む、前記(1)記載の方
法。 (4)前記未着割込みハンドラ・プロセスが、前記ロン
グ・ビジー割込みが前記オペレーティング・システムに
知らされるとき、前記入出力装置により使用される制御
装置資源を解放し、前記制御装置資源が別の入出力要求
により使用されることを可能にするステップと、前記入
出力要求が前記入出力装置が利用可能となるのを待機し
ている間、前記入出力要求をオペレーティング・システ
ム入出力キューに待機させるステップと、を含む、前記
(1)記載の方法。 (5)前記未着割込みハンドラ・プロセスが、前記入出
力装置が別の入出力要求により使用可能になるとき、前
記制御装置が前記オペレーティング・システムに完了信
号を送信するステップと、前記制御装置からの前記完了
信号の受信に応答して、前記オペレーティング・システ
ムが前記入出力要求を再駆動することにより、前記入出
力要求を前記制御装置に再発行し、再度前記入出力要求
が前記入出力装置の使用を競合することを可能にする、
前記再駆動ステップと、を含む、前記(4)記載の方
法。 (6)前記未着割込みハンドラ・プロセスが、前記制御
装置内の複数のチャネル・インタフェース・アダプタの
1つを、前記入出力要求により使用される前記制御装置
資源として使用するステップと、前記ロング・ビジー割
込みが前記制御装置により前記オペレーティング・シス
テムに送信されるとき、前記チャネル・インタフェース
・アダプタを解放するステップと、を含む、前記(4)
記載の方法。 (7)複数のオペレーティング・システム(OS)を有
するコンピュータ構成において使用される方法であっ
て、各々の前記オペレーティング・システムが該オペレ
ーティング・システムから入出力サブシステムに発行さ
れる入出力要求に対して故障入出力(I/O)装置操作
を検出する未着割込みハンドラ(MIH)・プロセスを
有し、前記オペレーティング・システムが前記入出力装
置に接続される少なくとも1つの入出力制御装置(C
U)を共用するものにおいて、前記未着割込みハンドラ
・プロセスが、1次未着割込みハンドラ・タイムアウト
値及び複数の2次未着割込みハンドラ・タイムアウト値
を含む、前記未着割込みハンドラ・プロセスがアクセス
可能な複数の未着割込みハンドラ・タイムアウト延長値
を前記コンピュータ構成内に記憶するステップと、1次
制御装置タイムアウトしきい値及び複数の2次タイムア
ウトしきい値を含む、前記制御装置がアクセス可能な複
数の制御装置タイムアウトしきい値を記憶するステップ
と、前記制御装置に接続される入出力装置による操作の
ために、入出力要求を前記オペレーティング・システム
から前記制御装置に送信し、前記入出力装置が前記入出
力要求に対して使用可能でない場合、前記制御装置によ
り前記入出力要求を拒絶するステップと、未着割込みハ
ンドラ・タイマ・プロセスをゼロ時間値から開始し、前
記入出力要求が前記制御装置に送信されるとき、初期に
は、前記1次未着割込みハンドラ・タイムアウト値を前
記入出力要求に対する現未着割込みハンドラ・タイムア
ウト値として使用し、前記未着割込みハンドラ・タイマ
・プロセスが前記現未着割込みハンドラ・タイムアウト
値以上の時間に達するとき、未着割込みハンドラ・タイ
ムアウトを信号で知らせるステップと、前記入出力装置
の使用について、前記入出力要求が前記制御装置内の任
意の他の同時入出力要求と競合するステップと、前記入
出力装置がビジーであり、前記入出力要求が前記制御装
置により拒絶される場合、制御装置しきい値タイマ・プ
ロセスをゼロ時間値から開始して、前記入出力要求に対
する制御装置しきい値経過時間を測定し、初期には前記
1次しきい値を現制御装置しきい値として使用するステ
ップと、前記制御装置しきい値タイマ・プロセスにより
測定される前記経過時間が、前記現制御装置しきい値以
上の場合、制御装置しきい値タイムアウトを示すステッ
プと、前記制御装置しきい値タイマ・プロセスが前記制
御装置しきい値タイムアウトを示すとき、前記制御装置
がロング・ビジー割込みを前記オペレーティング・シス
テムに知らせるステップと、前記ロング・ビジー割込み
に応答して、前記オペレーティング・システム・タイマ
・プロセスにおける前記現未着割込みハンドラ・タイム
アウト値を、前記複数の2次未着割込みハンドラ・タイ
ムアウト値の次の1つにより置換し、前記制御装置タイ
マ・プロセスにおける前記現制御装置しきい値を前記複
数の制御装置しきい値の次の1つにより置換するステッ
プと、前記未着割込みハンドラ・タイマ・プロセスが、
前記現未着割込みハンドラ・タイムアウト値以上の経過
時間に達するとき、前記未着割込みハンドラ・タイムア
ウトを信号で知らせ、前記入出力装置操作が故障したこ
とを示すステップと、を含む、方法。 (8)前記未着割込みハンドラ・プロセスが、前記複数
の2次未着割込みハンドラ・タイムアウト延長値の各々
を互いに不等に設定するステップを含む、前記(7)記
載の方法。 (9)前記未着割込みハンドラ・プロセスが、前記複数
の2次制御装置タイムアウトしきい値の各々を、対応す
る前記2次未着割込みハンドラ・タイムアウト延長値よ
りも短い期間を測定するように設定するステップを含
む、前記(8)記載の方法。 (10)入出力装置に関連付けられる入出力(I/O)
制御装置からの未着割込み信号を検出する方法であっ
て、前記入出力制御装置及び前記入出力装置を共用可能
な複数のオペレーティング・システム(OS)を制御す
るものにおいて、各々の前記入出力制御装置内に、少な
くとも短期間パラメータと長期間パラメータを含む、複
数の未着割込みハンドラ(MIH)・パラメータを記憶
するステップと、前記入出力制御装置及び関連入出力装
置が、前記オペレーティング・システムに対する入出力
構成に初期化されるとき、前記複数の未着割込みハンド
ラ・パラメータを前記入出力制御装置から、前記オペレ
ーティング・システムの1つに転送するステップと、前
記入出力制御装置及び関連入出力装置と共同して、前記
複数の未着割込みハンドラ・パラメータを前記オペレー
ティング・システム内の入出力構成テーブル内に書込む
ステップと、任意の前記オペレーティング・システム
が、前記入出力制御装置に関連付けられる任意の前記入
出力装置に対して入出力コマンドを発行するとき、前記
入出力構成テーブル内の前記入出力制御装置に関連付け
られる前記複数の未着割込みハンドラ・パラメータの小
さな1つをアクセスするステップと、前記コマンドが発
行されるときに開始し、割込み信号が前記入出力制御装
置から受信されるときに終了する、可変未着割込みハン
ドラ時間を測定するステップと、前記可変未着割込みハ
ンドラ時間を前記小さな未着割込みハンドラ・パラメー
タと比較し、前記可変未着割込みハンドラ時間が前記小
さな未着割込みハンドラ・パラメータ以上になるとき、
前記オペレーティング・システムに対して未着割込みハ
ンドラ指示をセットするステップと、前記未着割込みハ
ンドラ指示のセットの後、前記入出力構成テーブル内の
前記複数の未着割込みハンドラ・パラメータのより大き
な1つをフェッチするステップと、前記比較ステップの
操作を切り替え、前記可変未着割込みハンドラ時間を前
記より大きな未着割込みハンドラ・パラメータと比較す
るようにし、前記可変未着割込みハンドラ時間が前記よ
り大きな未着割込みハンドラ・パラメータ以上になると
き、未着割込みハンドラ指示をセットするステップと、
前記比較ステップが、前記可変未着割込みハンドラ時間
が前記より大きな未着割込みハンドラ・パラメータ以上
になったことを示す場合、前記オペレーティング・シス
テムにより、前記入出力装置の潜在的なエラー条件を示
すステップと、を含む、方法。 (11)未着割込みハンドラ・タイマに、前記アクセス
・ステップ及び前記フェッチ・ステップにより獲得され
た各前記未着割込みハンドラ・パラメータをセットする
ステップを含み、前記比較ステップが、前記未着割込み
ハンドラ・タイマ内の前記未着割込みハンドラ・パラメ
ータを、前記未着割込みハンドラ・タイマ内の前記可変
未着割込みハンドラ時間と比較し、前記未着割込みハン
ドラ・パラメータを切り替え、前記入出力装置の潜在的
なエラー条件を判断するステップを含む、前記(10)
記載の方法。 (12)前記発行入出力コマンドにより、入出力プログ
ラムの実行を呼び出すステップと、前記比較ステップ
が、前記可変未着割込みハンドラ時間が前記小さな未着
割込みハンドラ・パラメータ以上であると見い出す場
合、前記入出力プログラムを位置指定するアドレスを獲
得するステップと、前記入出力プログラム内の各入出力
命令を走査し、各走査された前記入出力命令に対して、
前記オペレーティング・システム・テーブル内の未着割
込みハンドラ時間妥当性指示を読出すステップであっ
て、前記未着割込みハンドラ時間妥当性指示が前記入出
力命令が前記より大きな未着割込みハンドラ・パラメー
タを要求するか否かを示し、前記入出力命令の実行に対
して前記未着割込み信号を検出する妥当な時間インタバ
ルを提供する、前記走査及び読出しステップと、任意の
前記入出力命令が、前記より大きな未着割込みハンドラ
・パラメータを要求することが判明する場合、前記より
大きな未着割込みハンドラ・パラメータをフェッチし、
前記切り替えステップを実行するステップと、前記入出
力プログラム内のどの前記入出力命令も、前記より大き
な未着割込みハンドラ・パラメータを要求しないことが
判明する場合、潜在的な入出力エラー条件を示すステッ
プであって、小さな未着割込みハンドラ時間満了だけ
が、潜在的な入出力エラー条件の存在を決定するために
必要とされる、前記ステップと、を含む、前記(10)
記載の方法。 (13)前記入出力プログラムが入出力チャネル・プロ
グラムであり、前記入出力命令がチャネル制御ワードで
ある、前記(12)記載の方法。 (14)前記発行入出力コマンドにより、入出力プログ
ラムの実行を呼び出すステップと、前記入出力プログラ
ムが認識される入出力割込みを提供すること無く、実行
を停止し、前記比較ステップが、前記可変未着割込みハ
ンドラ時間が前記小さな未着割込みハンドラ・パラメー
タ以上であると見い出す場合、前記入出力プログラム内
で最後に実行される前記入出力命令のアドレスを獲得す
るステップと、前記入出力命令に対する前記オペレーテ
ィング・システム・テーブル内の未着割込みハンドラ時
間妥当性指示を読出すステップであって、前記未着割込
みハンドラ時間妥当性指示が、前記小さな未着割込みハ
ンドラ・パラメータが、前記入出力コマンドに対して前
記未着割込み信号を検出するのに妥当な時間インタバル
を提供するか否かを示す、前記読出しステップと、前記
未着割込みハンドラ時間妥当性指示が、前記小さな未着
割込みハンドラ・パラメータが妥当であることを示す場
合、前記オペレーティング・システムにより前記入出力
装置に対する潜在的なエラー条件を示すステップと、前
記未着割込みハンドラ時間妥当性指示が、前記小さな未
着割込みハンドラ・パラメータが妥当でないことを示す
場合、前記より大きな未着割込みハンドラ・パラメータ
をフェッチし、前記切り替えステップを実行するステッ
プと、を含む、前記(10)記載の方法。 (15)ローカル記憶装置を有する前記入出力制御装置
を構成するステップを含み、前記記憶装置が、前記短期
間未着割込みハンドラ・パラメータを記憶する第1のレ
ジスタ、及び前記長期間未着割込みハンドラ・パラメー
タを記憶する第2のレジスタを含むフィールドを有す
る、前記(10)記載の方法。 (16)前記第1及び第2のレジスタを、ホスト・デー
タ処理システムにより実行される初期化プログラムによ
りそれぞれ初期化するステップを含み、前記処理システ
ムが、前記短期間未着割込みハンドラ・パラメータ及び
前記長期間未着割込みハンドラ・パラメータを前記入出
力制御装置に送信して、該制御装置を初期化する、前記
(15)記載の方法。 (17)異なる通信パスを通じて前記入出力制御装置に
接続される複数のホスト・データ処理システム(ホスト
・システム)の任意の1つからの長期間コマンドが、前
記入出力制御装置に接続される前記入出力装置に対して
受諾されるときを、前記入出力制御装置内で検出するス
テップと、前記検出ステップが前記長期間コマンドを検
出するとき、前記入出力制御装置により、前記長期間コ
マンドを発行した前記ホスト・システムに割込みを送信
するステップと、前記割込み送信ステップの間に、前記
入出力制御装置が前記ホスト・システムに、前記第2の
レジスタ内の前記長期間パラメータを送信するステップ
であって、前記長期間パラメータが前記ホスト・システ
ムにより、前記入出力制御装置及び前記入出力装置によ
る現操作に対して使用される、前記送信ステップと、を
含む、前記(16)記載の方法。 (18)前記ホスト・システムが、前記より大きな未着
割込みハンドラ・パラメータを、前記入出力制御装置に
より送信された前記長期間パラメータにセットするステ
ップと、前記切り替えステップの実行に入り、前記方法
を実行するステップと、を含む、前記(17)記載の方
法。 (19)データ処理システム内のオペレーティング・シ
ステム(OS)による未着入出力割込み信号の誤った検
出を回避する方法であって、前記システムが入出力装置
を共用可能な1つ以上のオペレーティング・システム
と、任意の前記オペレーティング・システムにより発行
される入出力コマンドを、前記共用入出力装置の入出力
制御装置に送信する入出力サブシステムとを有するもの
において、前記入出力サブシステムにより送信されるコ
マンドを、前記入出力制御装置により制御される前記入
出力装置により実行するために、前記入出力制御装置に
より受諾するステップと、前記コマンドが前記入出力制
御装置により受諾されるとき、前記入出力制御装置内で
ビジー標識をセットするステップと、前記受諾コマンド
が所定のしきい値時間を越える入出力実行時間を有する
ロング・コマンドか否かを、前記入出力制御装置内で検
出するステップであって、前記所定のしきい値が、前記
入出力制御装置及び前記入出力装置により実行可能な任
意のショート・コマンドの各実行時間よりも長い、前記
検出ステップと、前記入出力制御装置により前記ロング
・コマンドが受諾されるとき、前記入出力制御装置内で
ロング・ビジー標識をセットするステップと、前記ロン
グ・コマンドの現実行を示す前記ロング・ビジー標識が
セットされる間に、コマンドが受信されるとき、前記入
出力制御装置がロング・ビジー拒絶信号により、リクエ
スタ・オペレーティング・システムに対して前記受信コ
マンドを拒絶するステップであって、前記ロング・ビジ
ー拒絶信号が前記被拒絶リクエスタ・オペレーティング
・システムに、前記拒絶コマンドに対する未着割込みハ
ンドラ(MIH)・タイムアウトが、該拒絶コマンドに
対する未着割込みの検出のために使用されるべきでない
ことを示す、前記拒絶ステップと、を含む、方法。 (20)データ処理システム内のオペレーティング・シ
ステム(OS)による未着入出力割込み信号の誤った検
出を回避する方法であって、前記システムが入出力装置
を共用可能な1つ以上のオペレーティング・システム
と、任意の前記オペレーティング・システムにより発行
される入出力要求を受信する入出力制御装置とを有し、
前記入出力要求が前記入出力制御装置に接続される前記
入出力装置の使用を要求するものにおいて、前記受信入
出力要求により要求される前記入出力装置がビジーであ
り、前記入出力要求により使用不能なとき、前記入出力
要求を前記入出力制御装置内で遅延させるステップと、
前記入出力制御装置が、前記入出力要求が該入出力制御
装置により受信されてからの前記遅延が、所定しきい値
時間に達したことを検出し、前記入出力制御装置が前記
入出力装置がその時操作可能であるが、前記入出力要求
にとって使用可能でないことを認識するとき、前記入出
力制御装置から前記オペレーティング・システムに、ロ
ング・ビジー遅延信号をエラー割込みとして、前記エラ
ー割込みを示すステータス情報と一緒に送信し、ロング
・ビジー割込みをシミュレートする、前記送信ステップ
と、前記オペレーティング・システムが前記入出力制御
装置から前記ロング・ビジー遅延信号を受信することに
応答して、未着割込みハンドラ(MIH)1次タイムア
ウト期間を所定時間延長により延長するステップと、を
含む、方法。 (21)前記入出力制御装置から前記オペレーティング
・システムへ送信される前記ロング・ビジー遅延信号
を、エラー指示割込み信号を前記ステータス情報と一緒
に送信することによりシミュレートするステップを含
み、前記ステータス情報が、前記エラー指示割込み信号
が前記ロング・ビジー割込み信号を表すことを示す、前
記(20)記載の方法。 (22)再駆動ステップに応答して受信される前記ロン
グ・ビジー割込み信号が、必要とされる前記入出力装置
が、ロング・コマンドを含む別の入出力要求を処理する
のに多忙であることを示し、前記オペレーティング・シ
ステムが前記ロング・ビジー割込み信号を、該オペレー
ティング・システムにより再発行された前記入出力要求
の拒絶として検出するステップと、前記ロング・ビジー
割込み信号が前記タイムアウトの発生以前に受信される
とき、前記オペレーティング・システムにおける前記未
着割込みハンドラ・タイムアウト・インタバルを更に延
長するステップと、を含む、前記(20)記載の方法。 (23)様々なコマンドに対するそれぞれのタイムアウ
ト値を表すパラメータのセット、及び可能な前記ロング
・コマンドのセットを前記入出力制御装置に記憶し、タ
イムアウトの検出時に、任意の受信コマンドが前記セッ
ト内の任意のパラメータに一致するか否かを判断するこ
とにより、前記入出力制御装置により受信される前記ロ
ング・コマンドを検出するステップを含む、前記(2
0)記載の方法。 (24)リクエスタ・オペレーティング・システムによ
る要求が、前記入出力装置の前記入出力制御装置により
受諾されたことが通知されるときのみ、前記リクエスタ
・オペレーティング・システムにおいて未着割込みハン
ドラ・タイムアウト・インタバルを開始するステップを
含む、前記(20)記載の方法。 (25)各前記オペレーティング・システムに対して、
1次未着割込みハンドラ・タイムアウト・インタバル及
び2次未着割込みハンドラ・タイムアウト・インタバル
を記憶するステップと、前記オペレーティング・システ
ムが前記入出力装置に対してショート・コマンドを発行
するとき、前記オペレーティング・システムが前記1次
未着割込みハンドラ・タイムアウト・インタバルをアク
セスし、該インタバルを前記未着割込みを検出するため
に使用するステップと、前記オペレーティング・システ
ムが前記入出力装置に対してロング・コマンドを発行す
るとき、前記オペレーティング・システムが前記2次未
着割込みハンドラ・タイムアウト・インタバルをアクセ
スし、該インタバルを前記未着割込みを検出するために
使用するステップと、を含む、前記(20)記載の方
法。 (26)前記入出力装置を使用するために、前記オペレ
ーティング・システムにより生成される前記入出力要求
に関連付けられるチャネル・プログラムを走査し、前記
チャネル・プログラム内の前記ロング・コマンドの存在
を判断するステップと、前記チャネル・プログラムが任
意の前記ロング・コマンドを含むか否かを示すステップ
と、前記チャネル・プログラムが任意の前記ロング・コ
マンドを含まない場合、前記入出力要求に対する前記未
着割込みの検出のために、前記1次未着割込みハンドラ
・タイムアウト・インタバルを割当てるステップと、前
記チャネル・プログラムが任意の前記ロング・コマンド
を含む場合、前記入出力要求に対する前記未着割込みの
検出のために、前記2次未着割込みハンドラ・タイムア
ウト・インタバルを割当てるステップであって、未着割
込みハンドラ検出プロセスが、前記ショート・コマンド
に対する前記未着割込みを検出するために、短いタイム
アウトを有することを可能にする、前記割当てステップ
と、を含む、前記(25)記載の方法。 (27)各前記入出力制御装置内に、前記入出力制御装
置に接続される前記入出力装置に転送されるコマンドに
対して使用される、前記1次未着割込みハンドラ・タイ
ムアウト・インタバル及び前記2次未着割込みハンドラ
・タイムアウト・インタバルを記憶するステップと、記
憶装置のアクセス可能性のために、前記オペレーティン
グ・システムが前記入出力制御装置に対して任意のコマ
ンドを発行する以前に、前記入出力制御装置から、前記
1次未着割込みハンドラ・タイムアウト・インタバル及
び前記2次未着割込みハンドラ・タイムアウト・インタ
バルをアクセスするステップと、を含む、前記(26)
記載の方法。 (28)前記入出力制御装置に対して、既存の前記ロン
グ・ビジー指示により拒絶が発行された前記被拒絶オペ
レーティング・システムの識別子を記憶するステップ
と、既存の前記ロング・ビジー指示がセットされた前記
コマンドに対して、実行が完了するとき、前記被拒絶オ
ペレーティング・システムに対して、ロング・ビジー解
除信号を送信するステップと、を含む、前記(20)記
載の方法。 (29)前記入出力制御装置において、ロング・コマン
ド表現のサブセットを、関連付けられるタイムアウト・
パラメータと一緒に記憶するステップと、前記入出力制
御装置により、各コマンドと一緒に受信されるコマンド
・コードを、前記記憶サブセット内の前記ロング・コマ
ンド表現と一緒に記憶されるコードと比較するステップ
と、前記オペレーティング・システムの前記入出力要求
に対して、前記入出力制御装置により受信される前記コ
マンド・コードに等しいコードを有する、前記記憶サブ
セット内の任意の前記ロング・コマンド表現に関連付け
られる前記タイムアウト・パラメータをアクセスするス
テップと、前記タイムアウト・パラメータをオペレーテ
ィング・システム記憶装置にコピーし、同時割込み信号
を前記入出力制御装置から前記オペレーティング・シス
テムに送信するステップであって、前記オペレーティン
グ・システムが前記タイムアウト・パラメータを用い
て、前記入出力要求が完了すると期待される時期を時間
設定する、前記コピー及び送信ステップと、を含む、前
記(1)記載の方法。 (30)未着入出力割込みを検出する未着割込みハンド
ラ(MIH)・プロセスを有する少なくとも1つのオペ
レーティング・システム(OS)を実行するデータ処理
システムであって、前記データ処理システムが使用可能
な各入出力コマンドを、該コマンドに対する入出力操作
を完了するために費やす時間に従い、ショート・コマン
ドまたはロング・コマンドのいずれかとして指定するス
テップであって、前記ショート・コマンドは入出力操作
を前記ロング・コマンドが入出力操作を完了するために
必要とする時間のほんの一部分で完了する、前記指定ス
テップと、ショート入出力要求をショート入出力コマン
ドだけを含む各入出力要求として分類し、ロング入出力
要求を少なくとも1つのロング入出力コマンドを含む各
入出力要求として分類するステップと、入出力制御ユニ
ット(CU)に接続される1つ以上の入出力装置による
操作に対して、前記オペレーティング・システムから前
記制御装置に前記ショート入出力要求及び前記ロング入
出力要求を発行するステップと、前記入出力装置の1つ
上で、2次未着割込みハンドラ・タイムアウト期間を割
当てられた現入出力要求を実行し、該入出力装置に対し
て制御装置ビジー指示をセットするステップと、前記オ
ペレーティング・システムにより前記入出力装置に対す
る他の入出力要求を発行し、前記オペレーティング・シ
ステムにより、前記他の入出力要求に対して短い1次未
着割込みハンドラ・タイムアウト期間を測定する未着割
込みハンドラ・タイマ・プロセスを開始するステップ
と、前記入出力装置に対して、該入出力装置が前記他の
入出力要求により使用可能になる以前に、前記制御装置
内で遅延されることを示す前記制御装置ビジー指示をセ
ンスし、この時前記他の入出力要求が遅延入出力要求と
決定され、前記遅延入出力要求に対して制御装置しきい
値タイムアウト期間を測定するステップと、前記入出力
装置が前記ロング・コマンドを有する入出力要求を実行
していることにより、前記遅延入出力要求に対する前記
制御装置しきい値タイムアウト期間の終了時に、前記制
御装置によりロング・ビジー割込みを生成し、前記ロン
グ・ビジー割込みを前記オペレーティング・システムに
送信するステップと、前記オペレーティング・システム
が前記ロング・ビジー割込みと、前記入出力装置が前記
ロング・コマンドを有する前記入出力要求を実行してい
る情報とを受信したことに応答して、前記オペレーティ
ング・システムが、前記未着割込みハンドラ・タイマ・
プロセスの前記未着割込みハンドラ・タイムアウト期間
を、前記短い1次未着割込みハンドラ・タイムアウト期
間から、前記長い2次未着割込みハンドラ・タイムアウ
ト期間に延長するステップと、前記未着割込みハンドラ
・タイムアウト期間の終了以前に、完了割込みが前記入
出力装置から受信されない場合、前記未着割込みハンド
ラ・タイマ・プロセスにおいて、前記長い2次未着割込
みハンドラ・タイムアウト期間のタイムアウト時にの
み、前記入出力装置により前記オペレーティング・シス
テムに失敗を示すステップと、を含む、データ処理シス
テム。
(OS)を有するコンピュータ構成において使用される
方法であって、各々の前記オペレーティング・システム
が該オペレーティング・システムから入出力サブシステ
ムに発行される入出力要求に対して故障入出力(I/
O)装置操作を検出する未着割込みハンドラ(MIH)
・プロセスを有し、前記オペレーティング・システムが
入出力装置に接続される少なくとも1つの入出力制御装
置(CU)を共用するものにおいて、前記未着割込みハ
ンドラ・プロセスが、1次未着割込みハンドラ・タイム
アウト値及び2次未着割込みハンドラ・タイムアウト値
を含む、前記未着割込みハンドラ・プロセスがアクセス
可能な複数の未着割込みハンドラ・タイムアウト延長値
を前記コンピュータ構成内に記憶するステップと、前記
制御装置がアクセス可能な少なくとも1つの制御装置タ
イムアウトしきい値を記憶するステップと、前記制御装
置に接続される前記入出力装置による操作のために、入
出力要求を前記オペレーティング・システムから前記制
御装置に送信し、前記入出力装置が前記入出力要求に対
して使用可能でない場合、前記制御装置により前記入出
力要求を拒絶するステップと、未着割込みハンドラ・タ
イマ・プロセスをゼロ時間値から開始し、前記入出力要
求が前記制御装置に送信されるとき、前記1次未着割込
みハンドラ・タイムアウト値を前記入出力要求に対する
現未着割込みハンドラ・タイムアウト値として使用し、
前記未着割込みハンドラ・タイマ・プロセスが前記現未
着割込みハンドラ・タイムアウト値以上の時間に達する
とき、未着割込みハンドラ・タイムアウトを信号で知ら
せるステップと、前記入出力装置の使用について、前記
入出力要求が前記制御装置内の任意の他の同時入出力要
求と競合するステップと、前記入出力装置がビジーであ
り、前記入出力要求が前記制御装置により拒絶される場
合、制御装置しきい値タイマ・プロセスをゼロ時間値か
ら開始し、前記入出力要求に対する制御装置しきい値経
過時間を測定するステップと、前記制御装置しきい値タ
イマ・プロセスにより測定される前記経過時間が、前記
制御装置タイムアウトしきい値以上の場合、制御装置し
きい値タイムアウトを示すステップと、前記制御装置し
きい値タイマ・プロセスが前記制御装置しきい値タイム
アウトを示すとき、前記制御装置がロング・ビジー割込
みを前記オペレーティング・システムに知らせるステッ
プと、前記ロング・ビジー割込みに応答して、前記オペ
レーティング・システム・タイマ・プロセスにおける前
記現未着割込みハンドラ・タイムアウト値を、前記2次
未着割込みハンドラ・タイムアウト値により置換するス
テップと、前記未着割込みハンドラ・タイマ・プロセス
が、前記2次未着割込みハンドラ・タイムアウト値以上
の経過時間に達するとき、前記未着割込みハンドラ・タ
イムアウトを信号で知らせ、前記入出力装置操作が故障
したことを示すステップと、を含む、方法。 (2)前記未着割込みハンドラ・プロセスが、前記未着
割込みハンドラ・タイムアウトの発生以前に前記入出力
装置が前記入出力要求の操作を受諾する場合、前記入出
力要求に対する前記未着割込みハンドラ・タイマ・プロ
セスの操作を終了するステップを含む、前記(1)記載
の方法。 (3)前記未着割込みハンドラ・プロセスが、前記制御
装置しきい値タイムアウトの発生以前に、前記入出力装
置が前記入出力要求の操作を受諾する場合、前記入出力
要求に対する前記制御装置しきい値タイマ・プロセスの
操作を終了するステップを含む、前記(1)記載の方
法。 (4)前記未着割込みハンドラ・プロセスが、前記ロン
グ・ビジー割込みが前記オペレーティング・システムに
知らされるとき、前記入出力装置により使用される制御
装置資源を解放し、前記制御装置資源が別の入出力要求
により使用されることを可能にするステップと、前記入
出力要求が前記入出力装置が利用可能となるのを待機し
ている間、前記入出力要求をオペレーティング・システ
ム入出力キューに待機させるステップと、を含む、前記
(1)記載の方法。 (5)前記未着割込みハンドラ・プロセスが、前記入出
力装置が別の入出力要求により使用可能になるとき、前
記制御装置が前記オペレーティング・システムに完了信
号を送信するステップと、前記制御装置からの前記完了
信号の受信に応答して、前記オペレーティング・システ
ムが前記入出力要求を再駆動することにより、前記入出
力要求を前記制御装置に再発行し、再度前記入出力要求
が前記入出力装置の使用を競合することを可能にする、
前記再駆動ステップと、を含む、前記(4)記載の方
法。 (6)前記未着割込みハンドラ・プロセスが、前記制御
装置内の複数のチャネル・インタフェース・アダプタの
1つを、前記入出力要求により使用される前記制御装置
資源として使用するステップと、前記ロング・ビジー割
込みが前記制御装置により前記オペレーティング・シス
テムに送信されるとき、前記チャネル・インタフェース
・アダプタを解放するステップと、を含む、前記(4)
記載の方法。 (7)複数のオペレーティング・システム(OS)を有
するコンピュータ構成において使用される方法であっ
て、各々の前記オペレーティング・システムが該オペレ
ーティング・システムから入出力サブシステムに発行さ
れる入出力要求に対して故障入出力(I/O)装置操作
を検出する未着割込みハンドラ(MIH)・プロセスを
有し、前記オペレーティング・システムが前記入出力装
置に接続される少なくとも1つの入出力制御装置(C
U)を共用するものにおいて、前記未着割込みハンドラ
・プロセスが、1次未着割込みハンドラ・タイムアウト
値及び複数の2次未着割込みハンドラ・タイムアウト値
を含む、前記未着割込みハンドラ・プロセスがアクセス
可能な複数の未着割込みハンドラ・タイムアウト延長値
を前記コンピュータ構成内に記憶するステップと、1次
制御装置タイムアウトしきい値及び複数の2次タイムア
ウトしきい値を含む、前記制御装置がアクセス可能な複
数の制御装置タイムアウトしきい値を記憶するステップ
と、前記制御装置に接続される入出力装置による操作の
ために、入出力要求を前記オペレーティング・システム
から前記制御装置に送信し、前記入出力装置が前記入出
力要求に対して使用可能でない場合、前記制御装置によ
り前記入出力要求を拒絶するステップと、未着割込みハ
ンドラ・タイマ・プロセスをゼロ時間値から開始し、前
記入出力要求が前記制御装置に送信されるとき、初期に
は、前記1次未着割込みハンドラ・タイムアウト値を前
記入出力要求に対する現未着割込みハンドラ・タイムア
ウト値として使用し、前記未着割込みハンドラ・タイマ
・プロセスが前記現未着割込みハンドラ・タイムアウト
値以上の時間に達するとき、未着割込みハンドラ・タイ
ムアウトを信号で知らせるステップと、前記入出力装置
の使用について、前記入出力要求が前記制御装置内の任
意の他の同時入出力要求と競合するステップと、前記入
出力装置がビジーであり、前記入出力要求が前記制御装
置により拒絶される場合、制御装置しきい値タイマ・プ
ロセスをゼロ時間値から開始して、前記入出力要求に対
する制御装置しきい値経過時間を測定し、初期には前記
1次しきい値を現制御装置しきい値として使用するステ
ップと、前記制御装置しきい値タイマ・プロセスにより
測定される前記経過時間が、前記現制御装置しきい値以
上の場合、制御装置しきい値タイムアウトを示すステッ
プと、前記制御装置しきい値タイマ・プロセスが前記制
御装置しきい値タイムアウトを示すとき、前記制御装置
がロング・ビジー割込みを前記オペレーティング・シス
テムに知らせるステップと、前記ロング・ビジー割込み
に応答して、前記オペレーティング・システム・タイマ
・プロセスにおける前記現未着割込みハンドラ・タイム
アウト値を、前記複数の2次未着割込みハンドラ・タイ
ムアウト値の次の1つにより置換し、前記制御装置タイ
マ・プロセスにおける前記現制御装置しきい値を前記複
数の制御装置しきい値の次の1つにより置換するステッ
プと、前記未着割込みハンドラ・タイマ・プロセスが、
前記現未着割込みハンドラ・タイムアウト値以上の経過
時間に達するとき、前記未着割込みハンドラ・タイムア
ウトを信号で知らせ、前記入出力装置操作が故障したこ
とを示すステップと、を含む、方法。 (8)前記未着割込みハンドラ・プロセスが、前記複数
の2次未着割込みハンドラ・タイムアウト延長値の各々
を互いに不等に設定するステップを含む、前記(7)記
載の方法。 (9)前記未着割込みハンドラ・プロセスが、前記複数
の2次制御装置タイムアウトしきい値の各々を、対応す
る前記2次未着割込みハンドラ・タイムアウト延長値よ
りも短い期間を測定するように設定するステップを含
む、前記(8)記載の方法。 (10)入出力装置に関連付けられる入出力(I/O)
制御装置からの未着割込み信号を検出する方法であっ
て、前記入出力制御装置及び前記入出力装置を共用可能
な複数のオペレーティング・システム(OS)を制御す
るものにおいて、各々の前記入出力制御装置内に、少な
くとも短期間パラメータと長期間パラメータを含む、複
数の未着割込みハンドラ(MIH)・パラメータを記憶
するステップと、前記入出力制御装置及び関連入出力装
置が、前記オペレーティング・システムに対する入出力
構成に初期化されるとき、前記複数の未着割込みハンド
ラ・パラメータを前記入出力制御装置から、前記オペレ
ーティング・システムの1つに転送するステップと、前
記入出力制御装置及び関連入出力装置と共同して、前記
複数の未着割込みハンドラ・パラメータを前記オペレー
ティング・システム内の入出力構成テーブル内に書込む
ステップと、任意の前記オペレーティング・システム
が、前記入出力制御装置に関連付けられる任意の前記入
出力装置に対して入出力コマンドを発行するとき、前記
入出力構成テーブル内の前記入出力制御装置に関連付け
られる前記複数の未着割込みハンドラ・パラメータの小
さな1つをアクセスするステップと、前記コマンドが発
行されるときに開始し、割込み信号が前記入出力制御装
置から受信されるときに終了する、可変未着割込みハン
ドラ時間を測定するステップと、前記可変未着割込みハ
ンドラ時間を前記小さな未着割込みハンドラ・パラメー
タと比較し、前記可変未着割込みハンドラ時間が前記小
さな未着割込みハンドラ・パラメータ以上になるとき、
前記オペレーティング・システムに対して未着割込みハ
ンドラ指示をセットするステップと、前記未着割込みハ
ンドラ指示のセットの後、前記入出力構成テーブル内の
前記複数の未着割込みハンドラ・パラメータのより大き
な1つをフェッチするステップと、前記比較ステップの
操作を切り替え、前記可変未着割込みハンドラ時間を前
記より大きな未着割込みハンドラ・パラメータと比較す
るようにし、前記可変未着割込みハンドラ時間が前記よ
り大きな未着割込みハンドラ・パラメータ以上になると
き、未着割込みハンドラ指示をセットするステップと、
前記比較ステップが、前記可変未着割込みハンドラ時間
が前記より大きな未着割込みハンドラ・パラメータ以上
になったことを示す場合、前記オペレーティング・シス
テムにより、前記入出力装置の潜在的なエラー条件を示
すステップと、を含む、方法。 (11)未着割込みハンドラ・タイマに、前記アクセス
・ステップ及び前記フェッチ・ステップにより獲得され
た各前記未着割込みハンドラ・パラメータをセットする
ステップを含み、前記比較ステップが、前記未着割込み
ハンドラ・タイマ内の前記未着割込みハンドラ・パラメ
ータを、前記未着割込みハンドラ・タイマ内の前記可変
未着割込みハンドラ時間と比較し、前記未着割込みハン
ドラ・パラメータを切り替え、前記入出力装置の潜在的
なエラー条件を判断するステップを含む、前記(10)
記載の方法。 (12)前記発行入出力コマンドにより、入出力プログ
ラムの実行を呼び出すステップと、前記比較ステップ
が、前記可変未着割込みハンドラ時間が前記小さな未着
割込みハンドラ・パラメータ以上であると見い出す場
合、前記入出力プログラムを位置指定するアドレスを獲
得するステップと、前記入出力プログラム内の各入出力
命令を走査し、各走査された前記入出力命令に対して、
前記オペレーティング・システム・テーブル内の未着割
込みハンドラ時間妥当性指示を読出すステップであっ
て、前記未着割込みハンドラ時間妥当性指示が前記入出
力命令が前記より大きな未着割込みハンドラ・パラメー
タを要求するか否かを示し、前記入出力命令の実行に対
して前記未着割込み信号を検出する妥当な時間インタバ
ルを提供する、前記走査及び読出しステップと、任意の
前記入出力命令が、前記より大きな未着割込みハンドラ
・パラメータを要求することが判明する場合、前記より
大きな未着割込みハンドラ・パラメータをフェッチし、
前記切り替えステップを実行するステップと、前記入出
力プログラム内のどの前記入出力命令も、前記より大き
な未着割込みハンドラ・パラメータを要求しないことが
判明する場合、潜在的な入出力エラー条件を示すステッ
プであって、小さな未着割込みハンドラ時間満了だけ
が、潜在的な入出力エラー条件の存在を決定するために
必要とされる、前記ステップと、を含む、前記(10)
記載の方法。 (13)前記入出力プログラムが入出力チャネル・プロ
グラムであり、前記入出力命令がチャネル制御ワードで
ある、前記(12)記載の方法。 (14)前記発行入出力コマンドにより、入出力プログ
ラムの実行を呼び出すステップと、前記入出力プログラ
ムが認識される入出力割込みを提供すること無く、実行
を停止し、前記比較ステップが、前記可変未着割込みハ
ンドラ時間が前記小さな未着割込みハンドラ・パラメー
タ以上であると見い出す場合、前記入出力プログラム内
で最後に実行される前記入出力命令のアドレスを獲得す
るステップと、前記入出力命令に対する前記オペレーテ
ィング・システム・テーブル内の未着割込みハンドラ時
間妥当性指示を読出すステップであって、前記未着割込
みハンドラ時間妥当性指示が、前記小さな未着割込みハ
ンドラ・パラメータが、前記入出力コマンドに対して前
記未着割込み信号を検出するのに妥当な時間インタバル
を提供するか否かを示す、前記読出しステップと、前記
未着割込みハンドラ時間妥当性指示が、前記小さな未着
割込みハンドラ・パラメータが妥当であることを示す場
合、前記オペレーティング・システムにより前記入出力
装置に対する潜在的なエラー条件を示すステップと、前
記未着割込みハンドラ時間妥当性指示が、前記小さな未
着割込みハンドラ・パラメータが妥当でないことを示す
場合、前記より大きな未着割込みハンドラ・パラメータ
をフェッチし、前記切り替えステップを実行するステッ
プと、を含む、前記(10)記載の方法。 (15)ローカル記憶装置を有する前記入出力制御装置
を構成するステップを含み、前記記憶装置が、前記短期
間未着割込みハンドラ・パラメータを記憶する第1のレ
ジスタ、及び前記長期間未着割込みハンドラ・パラメー
タを記憶する第2のレジスタを含むフィールドを有す
る、前記(10)記載の方法。 (16)前記第1及び第2のレジスタを、ホスト・デー
タ処理システムにより実行される初期化プログラムによ
りそれぞれ初期化するステップを含み、前記処理システ
ムが、前記短期間未着割込みハンドラ・パラメータ及び
前記長期間未着割込みハンドラ・パラメータを前記入出
力制御装置に送信して、該制御装置を初期化する、前記
(15)記載の方法。 (17)異なる通信パスを通じて前記入出力制御装置に
接続される複数のホスト・データ処理システム(ホスト
・システム)の任意の1つからの長期間コマンドが、前
記入出力制御装置に接続される前記入出力装置に対して
受諾されるときを、前記入出力制御装置内で検出するス
テップと、前記検出ステップが前記長期間コマンドを検
出するとき、前記入出力制御装置により、前記長期間コ
マンドを発行した前記ホスト・システムに割込みを送信
するステップと、前記割込み送信ステップの間に、前記
入出力制御装置が前記ホスト・システムに、前記第2の
レジスタ内の前記長期間パラメータを送信するステップ
であって、前記長期間パラメータが前記ホスト・システ
ムにより、前記入出力制御装置及び前記入出力装置によ
る現操作に対して使用される、前記送信ステップと、を
含む、前記(16)記載の方法。 (18)前記ホスト・システムが、前記より大きな未着
割込みハンドラ・パラメータを、前記入出力制御装置に
より送信された前記長期間パラメータにセットするステ
ップと、前記切り替えステップの実行に入り、前記方法
を実行するステップと、を含む、前記(17)記載の方
法。 (19)データ処理システム内のオペレーティング・シ
ステム(OS)による未着入出力割込み信号の誤った検
出を回避する方法であって、前記システムが入出力装置
を共用可能な1つ以上のオペレーティング・システム
と、任意の前記オペレーティング・システムにより発行
される入出力コマンドを、前記共用入出力装置の入出力
制御装置に送信する入出力サブシステムとを有するもの
において、前記入出力サブシステムにより送信されるコ
マンドを、前記入出力制御装置により制御される前記入
出力装置により実行するために、前記入出力制御装置に
より受諾するステップと、前記コマンドが前記入出力制
御装置により受諾されるとき、前記入出力制御装置内で
ビジー標識をセットするステップと、前記受諾コマンド
が所定のしきい値時間を越える入出力実行時間を有する
ロング・コマンドか否かを、前記入出力制御装置内で検
出するステップであって、前記所定のしきい値が、前記
入出力制御装置及び前記入出力装置により実行可能な任
意のショート・コマンドの各実行時間よりも長い、前記
検出ステップと、前記入出力制御装置により前記ロング
・コマンドが受諾されるとき、前記入出力制御装置内で
ロング・ビジー標識をセットするステップと、前記ロン
グ・コマンドの現実行を示す前記ロング・ビジー標識が
セットされる間に、コマンドが受信されるとき、前記入
出力制御装置がロング・ビジー拒絶信号により、リクエ
スタ・オペレーティング・システムに対して前記受信コ
マンドを拒絶するステップであって、前記ロング・ビジ
ー拒絶信号が前記被拒絶リクエスタ・オペレーティング
・システムに、前記拒絶コマンドに対する未着割込みハ
ンドラ(MIH)・タイムアウトが、該拒絶コマンドに
対する未着割込みの検出のために使用されるべきでない
ことを示す、前記拒絶ステップと、を含む、方法。 (20)データ処理システム内のオペレーティング・シ
ステム(OS)による未着入出力割込み信号の誤った検
出を回避する方法であって、前記システムが入出力装置
を共用可能な1つ以上のオペレーティング・システム
と、任意の前記オペレーティング・システムにより発行
される入出力要求を受信する入出力制御装置とを有し、
前記入出力要求が前記入出力制御装置に接続される前記
入出力装置の使用を要求するものにおいて、前記受信入
出力要求により要求される前記入出力装置がビジーであ
り、前記入出力要求により使用不能なとき、前記入出力
要求を前記入出力制御装置内で遅延させるステップと、
前記入出力制御装置が、前記入出力要求が該入出力制御
装置により受信されてからの前記遅延が、所定しきい値
時間に達したことを検出し、前記入出力制御装置が前記
入出力装置がその時操作可能であるが、前記入出力要求
にとって使用可能でないことを認識するとき、前記入出
力制御装置から前記オペレーティング・システムに、ロ
ング・ビジー遅延信号をエラー割込みとして、前記エラ
ー割込みを示すステータス情報と一緒に送信し、ロング
・ビジー割込みをシミュレートする、前記送信ステップ
と、前記オペレーティング・システムが前記入出力制御
装置から前記ロング・ビジー遅延信号を受信することに
応答して、未着割込みハンドラ(MIH)1次タイムア
ウト期間を所定時間延長により延長するステップと、を
含む、方法。 (21)前記入出力制御装置から前記オペレーティング
・システムへ送信される前記ロング・ビジー遅延信号
を、エラー指示割込み信号を前記ステータス情報と一緒
に送信することによりシミュレートするステップを含
み、前記ステータス情報が、前記エラー指示割込み信号
が前記ロング・ビジー割込み信号を表すことを示す、前
記(20)記載の方法。 (22)再駆動ステップに応答して受信される前記ロン
グ・ビジー割込み信号が、必要とされる前記入出力装置
が、ロング・コマンドを含む別の入出力要求を処理する
のに多忙であることを示し、前記オペレーティング・シ
ステムが前記ロング・ビジー割込み信号を、該オペレー
ティング・システムにより再発行された前記入出力要求
の拒絶として検出するステップと、前記ロング・ビジー
割込み信号が前記タイムアウトの発生以前に受信される
とき、前記オペレーティング・システムにおける前記未
着割込みハンドラ・タイムアウト・インタバルを更に延
長するステップと、を含む、前記(20)記載の方法。 (23)様々なコマンドに対するそれぞれのタイムアウ
ト値を表すパラメータのセット、及び可能な前記ロング
・コマンドのセットを前記入出力制御装置に記憶し、タ
イムアウトの検出時に、任意の受信コマンドが前記セッ
ト内の任意のパラメータに一致するか否かを判断するこ
とにより、前記入出力制御装置により受信される前記ロ
ング・コマンドを検出するステップを含む、前記(2
0)記載の方法。 (24)リクエスタ・オペレーティング・システムによ
る要求が、前記入出力装置の前記入出力制御装置により
受諾されたことが通知されるときのみ、前記リクエスタ
・オペレーティング・システムにおいて未着割込みハン
ドラ・タイムアウト・インタバルを開始するステップを
含む、前記(20)記載の方法。 (25)各前記オペレーティング・システムに対して、
1次未着割込みハンドラ・タイムアウト・インタバル及
び2次未着割込みハンドラ・タイムアウト・インタバル
を記憶するステップと、前記オペレーティング・システ
ムが前記入出力装置に対してショート・コマンドを発行
するとき、前記オペレーティング・システムが前記1次
未着割込みハンドラ・タイムアウト・インタバルをアク
セスし、該インタバルを前記未着割込みを検出するため
に使用するステップと、前記オペレーティング・システ
ムが前記入出力装置に対してロング・コマンドを発行す
るとき、前記オペレーティング・システムが前記2次未
着割込みハンドラ・タイムアウト・インタバルをアクセ
スし、該インタバルを前記未着割込みを検出するために
使用するステップと、を含む、前記(20)記載の方
法。 (26)前記入出力装置を使用するために、前記オペレ
ーティング・システムにより生成される前記入出力要求
に関連付けられるチャネル・プログラムを走査し、前記
チャネル・プログラム内の前記ロング・コマンドの存在
を判断するステップと、前記チャネル・プログラムが任
意の前記ロング・コマンドを含むか否かを示すステップ
と、前記チャネル・プログラムが任意の前記ロング・コ
マンドを含まない場合、前記入出力要求に対する前記未
着割込みの検出のために、前記1次未着割込みハンドラ
・タイムアウト・インタバルを割当てるステップと、前
記チャネル・プログラムが任意の前記ロング・コマンド
を含む場合、前記入出力要求に対する前記未着割込みの
検出のために、前記2次未着割込みハンドラ・タイムア
ウト・インタバルを割当てるステップであって、未着割
込みハンドラ検出プロセスが、前記ショート・コマンド
に対する前記未着割込みを検出するために、短いタイム
アウトを有することを可能にする、前記割当てステップ
と、を含む、前記(25)記載の方法。 (27)各前記入出力制御装置内に、前記入出力制御装
置に接続される前記入出力装置に転送されるコマンドに
対して使用される、前記1次未着割込みハンドラ・タイ
ムアウト・インタバル及び前記2次未着割込みハンドラ
・タイムアウト・インタバルを記憶するステップと、記
憶装置のアクセス可能性のために、前記オペレーティン
グ・システムが前記入出力制御装置に対して任意のコマ
ンドを発行する以前に、前記入出力制御装置から、前記
1次未着割込みハンドラ・タイムアウト・インタバル及
び前記2次未着割込みハンドラ・タイムアウト・インタ
バルをアクセスするステップと、を含む、前記(26)
記載の方法。 (28)前記入出力制御装置に対して、既存の前記ロン
グ・ビジー指示により拒絶が発行された前記被拒絶オペ
レーティング・システムの識別子を記憶するステップ
と、既存の前記ロング・ビジー指示がセットされた前記
コマンドに対して、実行が完了するとき、前記被拒絶オ
ペレーティング・システムに対して、ロング・ビジー解
除信号を送信するステップと、を含む、前記(20)記
載の方法。 (29)前記入出力制御装置において、ロング・コマン
ド表現のサブセットを、関連付けられるタイムアウト・
パラメータと一緒に記憶するステップと、前記入出力制
御装置により、各コマンドと一緒に受信されるコマンド
・コードを、前記記憶サブセット内の前記ロング・コマ
ンド表現と一緒に記憶されるコードと比較するステップ
と、前記オペレーティング・システムの前記入出力要求
に対して、前記入出力制御装置により受信される前記コ
マンド・コードに等しいコードを有する、前記記憶サブ
セット内の任意の前記ロング・コマンド表現に関連付け
られる前記タイムアウト・パラメータをアクセスするス
テップと、前記タイムアウト・パラメータをオペレーテ
ィング・システム記憶装置にコピーし、同時割込み信号
を前記入出力制御装置から前記オペレーティング・シス
テムに送信するステップであって、前記オペレーティン
グ・システムが前記タイムアウト・パラメータを用い
て、前記入出力要求が完了すると期待される時期を時間
設定する、前記コピー及び送信ステップと、を含む、前
記(1)記載の方法。 (30)未着入出力割込みを検出する未着割込みハンド
ラ(MIH)・プロセスを有する少なくとも1つのオペ
レーティング・システム(OS)を実行するデータ処理
システムであって、前記データ処理システムが使用可能
な各入出力コマンドを、該コマンドに対する入出力操作
を完了するために費やす時間に従い、ショート・コマン
ドまたはロング・コマンドのいずれかとして指定するス
テップであって、前記ショート・コマンドは入出力操作
を前記ロング・コマンドが入出力操作を完了するために
必要とする時間のほんの一部分で完了する、前記指定ス
テップと、ショート入出力要求をショート入出力コマン
ドだけを含む各入出力要求として分類し、ロング入出力
要求を少なくとも1つのロング入出力コマンドを含む各
入出力要求として分類するステップと、入出力制御ユニ
ット(CU)に接続される1つ以上の入出力装置による
操作に対して、前記オペレーティング・システムから前
記制御装置に前記ショート入出力要求及び前記ロング入
出力要求を発行するステップと、前記入出力装置の1つ
上で、2次未着割込みハンドラ・タイムアウト期間を割
当てられた現入出力要求を実行し、該入出力装置に対し
て制御装置ビジー指示をセットするステップと、前記オ
ペレーティング・システムにより前記入出力装置に対す
る他の入出力要求を発行し、前記オペレーティング・シ
ステムにより、前記他の入出力要求に対して短い1次未
着割込みハンドラ・タイムアウト期間を測定する未着割
込みハンドラ・タイマ・プロセスを開始するステップ
と、前記入出力装置に対して、該入出力装置が前記他の
入出力要求により使用可能になる以前に、前記制御装置
内で遅延されることを示す前記制御装置ビジー指示をセ
ンスし、この時前記他の入出力要求が遅延入出力要求と
決定され、前記遅延入出力要求に対して制御装置しきい
値タイムアウト期間を測定するステップと、前記入出力
装置が前記ロング・コマンドを有する入出力要求を実行
していることにより、前記遅延入出力要求に対する前記
制御装置しきい値タイムアウト期間の終了時に、前記制
御装置によりロング・ビジー割込みを生成し、前記ロン
グ・ビジー割込みを前記オペレーティング・システムに
送信するステップと、前記オペレーティング・システム
が前記ロング・ビジー割込みと、前記入出力装置が前記
ロング・コマンドを有する前記入出力要求を実行してい
る情報とを受信したことに応答して、前記オペレーティ
ング・システムが、前記未着割込みハンドラ・タイマ・
プロセスの前記未着割込みハンドラ・タイムアウト期間
を、前記短い1次未着割込みハンドラ・タイムアウト期
間から、前記長い2次未着割込みハンドラ・タイムアウ
ト期間に延長するステップと、前記未着割込みハンドラ
・タイムアウト期間の終了以前に、完了割込みが前記入
出力装置から受信されない場合、前記未着割込みハンド
ラ・タイマ・プロセスにおいて、前記長い2次未着割込
みハンドラ・タイムアウト期間のタイムアウト時にの
み、前記入出力装置により前記オペレーティング・シス
テムに失敗を示すステップと、を含む、データ処理シス
テム。
【図1】各装置に対する初期未着割込みインタバルを確
立する、システム初期化及び可変コマンド装置処理の制
御フローを示す流れ図である。
立する、システム初期化及び可変コマンド装置処理の制
御フローを示す流れ図である。
【図2】装置依存MIHインタバルの検索を含む、装置
確認及び初期化の制御フローを示す流れ図である。
確認及び初期化の制御フローを示す流れ図である。
【図3】MIH初期化処理の制御フローを示す流れ図で
ある。
ある。
【図4】MIH初期化処理の制御フローを示す流れ図で
ある。
ある。
【図5】MIHタイムアウト条件の検出を含む、ロング
・ビジー条件に対する装置依存MIH処理のためのソフ
トウェア処理における制御フローを示す流れ図である。
・ビジー条件に対する装置依存MIH処理のためのソフ
トウェア処理における制御フローを示す流れ図である。
【図6】MIHタイムアウト条件の検出を含む、ロング
・ビジー条件に対する装置依存MIH処理のためのソフ
トウェア処理における制御フローを示す流れ図である。
・ビジー条件に対する装置依存MIH処理のためのソフ
トウェア処理における制御フローを示す流れ図である。
【図7】MIHタイムアウト条件の検出を含む、ロング
・ビジー条件に対する装置依存MIH処理のためのソフ
トウェア処理における制御フローを示す流れ図である。
・ビジー条件に対する装置依存MIH処理のためのソフ
トウェア処理における制御フローを示す流れ図である。
【図8】MIHタイムアウト条件の検出を含む、ロング
・ビジー条件に対する装置依存MIH処理のためのソフ
トウェア処理における制御フローを示す流れ図である。
・ビジー条件に対する装置依存MIH処理のためのソフ
トウェア処理における制御フローを示す流れ図である。
【図9】MIHタイムアウト条件の検出を含む、ロング
・ビジー条件に対する装置依存MIH処理のためのソフ
トウェア処理における制御フローを示す流れ図である。
・ビジー条件に対する装置依存MIH処理のためのソフ
トウェア処理における制御フローを示す流れ図である。
【図10】ロング・ビジー条件をサポートする制御ユニ
ット及びそれらの装置の制御フローを示す流れ図であ
る。
ット及びそれらの装置の制御フローを示す流れ図であ
る。
【図11】ロング・ビジー条件をサポートする制御ユニ
ット及びそれらの装置の制御フローを示す流れ図であ
る。
ット及びそれらの装置の制御フローを示す流れ図であ
る。
【図12】ロング・ビジー条件をサポートする制御ユニ
ット及びそれらの装置の制御フローを示す流れ図であ
る。
ット及びそれらの装置の制御フローを示す流れ図であ
る。
【図13】ロング・ビジー条件をサポートする制御ユニ
ット及びそれらの装置の制御フローを示す流れ図であ
る。
ット及びそれらの装置の制御フローを示す流れ図であ
る。
【図14】ロング・ビジー条件をサポートする制御ユニ
ット及びそれらの装置の制御フローを示す流れ図であ
る。
ット及びそれらの装置の制御フローを示す流れ図であ
る。
【図15】オペレーティング・システムが、装置の1次
MIHタイムアウト・インタバル及び2次MIHタイム
アウト・インタバルを含む自己記述データを獲得する様
子を示す流れ図である。
MIHタイムアウト・インタバル及び2次MIHタイム
アウト・インタバルを含む自己記述データを獲得する様
子を示す流れ図である。
【図16】オペレーティング・システムが、装置の1次
MIHタイムアウト・インタバル及び2次MIHタイム
アウト・インタバルを含む自己記述データを獲得する様
子を示す流れ図である。
MIHタイムアウト・インタバル及び2次MIHタイム
アウト・インタバルを含む自己記述データを獲得する様
子を示す流れ図である。
【図17】オペレーティング・システムが、装置の1次
MIHタイムアウト・インタバル及び2次MIHタイム
アウト・インタバルを含む自己記述データを獲得する様
子を示す流れ図である。
MIHタイムアウト・インタバル及び2次MIHタイム
アウト・インタバルを含む自己記述データを獲得する様
子を示す流れ図である。
112 構成データ・テーブル 430 装置依存トラップ・エグジット・ルーチン51
0 ホスト 450 装置依存エラー回復プロシジャ(装置ERP)
511 中央処理ユニット(CPU) 512 チャネル・サブシステム 513 チャネル・パス 520 I/Oサブシステム 521 制御ユニット 522 共用メモリ 523 "装置nロック・データ" 524 チャネル・アダプタ 530 I/O装置 531 装置パス 530 選択装置 602 装置2次MIHタイムアウト値 603 装置1次MIHタイムアウト値
0 ホスト 450 装置依存エラー回復プロシジャ(装置ERP)
511 中央処理ユニット(CPU) 512 チャネル・サブシステム 513 チャネル・パス 520 I/Oサブシステム 521 制御ユニット 522 共用メモリ 523 "装置nロック・データ" 524 チャネル・アダプタ 530 I/O装置 531 装置パス 530 選択装置 602 装置2次MIHタイムアウト値 603 装置1次MIHタイムアウト値
───────────────────────────────────────────────────── フロントページの続き (72)発明者 リチャード・アンソニー・リップバーガー アメリカ合衆国85718、アリゾナ州ツーソ ン、ノース・プラチカ・アリズッペ 5620 (72)発明者 ルイス・リカルド・ウーバンジョー アメリカ合衆国95037、カリフォルニア州 モーガン・ヒル、ヴィア・ソレント 488 (72)発明者 ハリー・モーリス・ユーデンフレンド アメリカ合衆国12603−5545、ニューヨー ク州ポキプシ、ノッブ・ヒル・ロード 1
Claims (30)
- 【請求項1】複数のオペレーティング・システム(O
S)を有するコンピュータ構成において使用される方法
であって、各々の前記オペレーティング・システムが該
オペレーティング・システムから入出力サブシステムに
発行される入出力要求に対して故障入出力(I/O)装
置操作を検出する未着割込みハンドラ(MIH)・プロ
セスを有し、前記オペレーティング・システムが入出力
装置に接続される少なくとも1つの入出力制御装置(C
U)を共用するものにおいて、前記未着割込みハンドラ
・プロセスが、 1次未着割込みハンドラ・タイムアウト値及び2次未着
割込みハンドラ・タイムアウト値を含む、前記未着割込
みハンドラ・プロセスがアクセス可能な複数の未着割込
みハンドラ・タイムアウト延長値を前記コンピュータ構
成内に記憶するステップと、 前記制御装置がアクセス可能な少なくとも1つの制御装
置タイムアウトしきい値を記憶するステップと、 前記制御装置に接続される前記入出力装置による操作の
ために、入出力要求を前記オペレーティング・システム
から前記制御装置に送信し、前記入出力装置が前記入出
力要求に対して使用可能でない場合、前記制御装置によ
り前記入出力要求を拒絶するステップと、 未着割込みハンドラ・タイマ・プロセスをゼロ時間値か
ら開始し、前記入出力要求が前記制御装置に送信される
とき、前記1次未着割込みハンドラ・タイムアウト値を
前記入出力要求に対する現未着割込みハンドラ・タイム
アウト値として使用し、前記未着割込みハンドラ・タイ
マ・プロセスが前記現未着割込みハンドラ・タイムアウ
ト値以上の時間に達するとき、未着割込みハンドラ・タ
イムアウトを信号で知らせるステップと、 前記入出力装置の使用について、前記入出力要求が前記
制御装置内の任意の他の同時入出力要求と競合するステ
ップと、 前記入出力装置がビジーであり、前記入出力要求が前記
制御装置により拒絶される場合、制御装置しきい値タイ
マ・プロセスをゼロ時間値から開始し、前記入出力要求
に対する制御装置しきい値経過時間を測定するステップ
と、 前記制御装置しきい値タイマ・プロセスにより測定され
る前記経過時間が、前記制御装置タイムアウトしきい値
以上の場合、制御装置しきい値タイムアウトを示すステ
ップと、 前記制御装置しきい値タイマ・プロセスが前記制御装置
しきい値タイムアウトを示すとき、前記制御装置がロン
グ・ビジー割込みを前記オペレーティング・システムに
知らせるステップと、 前記ロング・ビジー割込みに応答して、前記オペレーテ
ィング・システム・タイマ・プロセスにおける前記現未
着割込みハンドラ・タイムアウト値を、前記2次未着割
込みハンドラ・タイムアウト値により置換するステップ
と、 前記未着割込みハンドラ・タイマ・プロセスが、前記2
次未着割込みハンドラ・タイムアウト値以上の経過時間
に達するとき、前記未着割込みハンドラ・タイムアウト
を信号で知らせ、前記入出力装置操作が故障したことを
示すステップと、 を含む、方法。 - 【請求項2】前記未着割込みハンドラ・プロセスが、前
記未着割込みハンドラ・タイムアウトの発生以前に前記
入出力装置が前記入出力要求の操作を受諾する場合、前
記入出力要求に対する前記未着割込みハンドラ・タイマ
・プロセスの操作を終了するステップを含む、請求項1
記載の方法。 - 【請求項3】前記未着割込みハンドラ・プロセスが、前
記制御装置しきい値タイムアウトの発生以前に、前記入
出力装置が前記入出力要求の操作を受諾する場合、前記
入出力要求に対する前記制御装置しきい値タイマ・プロ
セスの操作を終了するステップを含む、請求項1記載の
方法。 - 【請求項4】前記未着割込みハンドラ・プロセスが、 前記ロング・ビジー割込みが前記オペレーティング・シ
ステムに知らされるとき、前記入出力装置により使用さ
れる制御装置資源を解放し、前記制御装置資源が別の入
出力要求により使用されることを可能にするステップ
と、 前記入出力要求が前記入出力装置が利用可能となるのを
待機している間、前記入出力要求をオペレーティング・
システム入出力キューに待機させるステップと、 を含む、請求項1記載の方法。 - 【請求項5】前記未着割込みハンドラ・プロセスが、 前記入出力装置が別の入出力要求により使用可能になる
とき、前記制御装置が前記オペレーティング・システム
に完了信号を送信するステップと、 前記制御装置からの前記完了信号の受信に応答して、前
記オペレーティング・システムが前記入出力要求を再駆
動することにより、前記入出力要求を前記制御装置に再
発行し、再度前記入出力要求が前記入出力装置の使用を
競合することを可能にする、前記再駆動ステップと、 を含む、請求項4記載の方法。 - 【請求項6】前記未着割込みハンドラ・プロセスが、 前記制御装置内の複数のチャネル・インタフェース・ア
ダプタの1つを、前記入出力要求により使用される前記
制御装置資源として使用するステップと、前記ロング・
ビジー割込みが前記制御装置により前記オペレーティン
グ・システムに送信されるとき、前記チャネル・インタ
フェース・アダプタを解放するステップと、 を含む、請求項4記載の方法。 - 【請求項7】複数のオペレーティング・システム(O
S)を有するコンピュータ構成において使用される方法
であって、各々の前記オペレーティング・システムが該
オペレーティング・システムから入出力サブシステムに
発行される入出力要求に対して故障入出力(I/O)装
置操作を検出する未着割込みハンドラ(MIH)・プロ
セスを有し、前記オペレーティング・システムが前記入
出力装置に接続される少なくとも1つの入出力制御装置
(CU)を共用するものにおいて、前記未着割込みハン
ドラ・プロセスが、 1次未着割込みハンドラ・タイムアウト値及び複数の2
次未着割込みハンドラ・タイムアウト値を含む、前記未
着割込みハンドラ・プロセスがアクセス可能な複数の未
着割込みハンドラ・タイムアウト延長値を前記コンピュ
ータ構成内に記憶するステップと、 1次制御装置タイムアウトしきい値及び複数の2次タイ
ムアウトしきい値を含む、前記制御装置がアクセス可能
な複数の制御装置タイムアウトしきい値を記憶するステ
ップと、 前記制御装置に接続される入出力装置による操作のため
に、入出力要求を前記オペレーティング・システムから
前記制御装置に送信し、前記入出力装置が前記入出力要
求に対して使用可能でない場合、前記制御装置により前
記入出力要求を拒絶するステップと、 未着割込みハンドラ・タイマ・プロセスをゼロ時間値か
ら開始し、前記入出力要求が前記制御装置に送信される
とき、初期には、前記1次未着割込みハンドラ・タイム
アウト値を前記入出力要求に対する現未着割込みハンド
ラ・タイムアウト値として使用し、前記未着割込みハン
ドラ・タイマ・プロセスが前記現未着割込みハンドラ・
タイムアウト値以上の時間に達するとき、未着割込みハ
ンドラ・タイムアウトを信号で知らせるステップと、 前記入出力装置の使用について、前記入出力要求が前記
制御装置内の任意の他の同時入出力要求と競合するステ
ップと、 前記入出力装置がビジーであり、前記入出力要求が前記
制御装置により拒絶される場合、制御装置しきい値タイ
マ・プロセスをゼロ時間値から開始して、前記入出力要
求に対する制御装置しきい値経過時間を測定し、初期に
は前記1次しきい値を現制御装置しきい値として使用す
るステップと、 前記制御装置しきい値タイマ・プロセスにより測定され
る前記経過時間が、前記現制御装置しきい値以上の場
合、制御装置しきい値タイムアウトを示すステップと、 前記制御装置しきい値タイマ・プロセスが前記制御装置
しきい値タイムアウトを示すとき、前記制御装置がロン
グ・ビジー割込みを前記オペレーティング・システムに
知らせるステップと、 前記ロング・ビジー割込みに応答して、前記オペレーテ
ィング・システム・タイマ・プロセスにおける前記現未
着割込みハンドラ・タイムアウト値を、前記複数の2次
未着割込みハンドラ・タイムアウト値の次の1つにより
置換し、前記制御装置タイマ・プロセスにおける前記現
制御装置しきい値を前記複数の制御装置しきい値の次の
1つにより置換するステップと、 前記未着割込みハンドラ・タイマ・プロセスが、前記現
未着割込みハンドラ・タイムアウト値以上の経過時間に
達するとき、前記未着割込みハンドラ・タイムアウトを
信号で知らせ、前記入出力装置操作が故障したことを示
すステップと、 を含む、方法。 - 【請求項8】前記未着割込みハンドラ・プロセスが、前
記複数の2次未着割込みハンドラ・タイムアウト延長値
の各々を互いに不等に設定するステップを含む、請求項
7記載の方法。 - 【請求項9】前記未着割込みハンドラ・プロセスが、前
記複数の2次制御装置タイムアウトしきい値の各々を、
対応する前記2次未着割込みハンドラ・タイムアウト延
長値よりも短い期間を測定するように設定するステップ
を含む、請求項8記載の方法。 - 【請求項10】入出力装置に関連付けられる入出力(I
/O)制御装置からの未着割込み信号を検出する方法で
あって、前記入出力制御装置及び前記入出力装置を共用
可能な複数のオペレーティング・システム(OS)を制
御するものにおいて、 各々の前記入出力制御装置内に、少なくとも短期間パラ
メータと長期間パラメータを含む、複数の未着割込みハ
ンドラ(MIH)・パラメータを記憶するステップと、 前記入出力制御装置及び関連入出力装置が、前記オペレ
ーティング・システムに対する入出力構成に初期化され
るとき、前記複数の未着割込みハンドラ・パラメータを
前記入出力制御装置から、前記オペレーティング・シス
テムの1つに転送するステップと、 前記入出力制御装置及び関連入出力装置と共同して、前
記複数の未着割込みハンドラ・パラメータを前記オペレ
ーティング・システム内の入出力構成テーブル内に書込
むステップと、 任意の前記オペレーティング・システムが、前記入出力
制御装置に関連付けられる任意の前記入出力装置に対し
て入出力コマンドを発行するとき、前記入出力構成テー
ブル内の前記入出力制御装置に関連付けられる前記複数
の未着割込みハンドラ・パラメータの小さな1つをアク
セスするステップと、 前記コマンドが発行されるときに開始し、割込み信号が
前記入出力制御装置から受信されるときに終了する、可
変未着割込みハンドラ時間を測定するステップと、 前記可変未着割込みハンドラ時間を前記小さな未着割込
みハンドラ・パラメータと比較し、前記可変未着割込み
ハンドラ時間が前記小さな未着割込みハンドラ・パラメ
ータ以上になるとき、前記オペレーティング・システム
に対して未着割込みハンドラ指示をセットするステップ
と、 前記未着割込みハンドラ指示のセットの後、前記入出力
構成テーブル内の前記複数の未着割込みハンドラ・パラ
メータのより大きな1つをフェッチするステップと、 前記比較ステップの操作を切り替え、前記可変未着割込
みハンドラ時間を前記より大きな未着割込みハンドラ・
パラメータと比較するようにし、前記可変未着割込みハ
ンドラ時間が前記より大きな未着割込みハンドラ・パラ
メータ以上になるとき、未着割込みハンドラ指示をセッ
トするステップと、 前記比較ステップが、前記可変未着割込みハンドラ時間
が前記より大きな未着割込みハンドラ・パラメータ以上
になったことを示す場合、前記オペレーティング・シス
テムにより、前記入出力装置の潜在的なエラー条件を示
すステップと、 を含む、方法。 - 【請求項11】未着割込みハンドラ・タイマに、前記ア
クセス・ステップ及び前記フェッチ・ステップにより獲
得された各前記未着割込みハンドラ・パラメータをセッ
トするステップを含み、 前記比較ステップが、前記未着割込みハンドラ・タイマ
内の前記未着割込みハンドラ・パラメータを、前記未着
割込みハンドラ・タイマ内の前記可変未着割込みハンド
ラ時間と比較し、前記未着割込みハンドラ・パラメータ
を切り替え、前記入出力装置の潜在的なエラー条件を判
断するステップを含む、請求項10記載の方法。 - 【請求項12】前記発行入出力コマンドにより、入出力
プログラムの実行を呼び出すステップと、 前記比較ステップが、前記可変未着割込みハンドラ時間
が前記小さな未着割込みハンドラ・パラメータ以上であ
ると見い出す場合、前記入出力プログラムを位置指定す
るアドレスを獲得するステップと、 前記入出力プログラム内の各入出力命令を走査し、各走
査された前記入出力命令に対して、前記オペレーティン
グ・システム・テーブル内の未着割込みハンドラ時間妥
当性指示を読出すステップであって、前記未着割込みハ
ンドラ時間妥当性指示が前記入出力命令が前記より大き
な未着割込みハンドラ・パラメータを要求するか否かを
示し、前記入出力命令の実行に対して前記未着割込み信
号を検出する妥当な時間インタバルを提供する、前記走
査及び読出しステップと、 任意の前記入出力命令が、前記より大きな未着割込みハ
ンドラ・パラメータを要求することが判明する場合、前
記より大きな未着割込みハンドラ・パラメータをフェッ
チし、前記切り替えステップを実行するステップと、 前記入出力プログラム内のどの前記入出力命令も、前記
より大きな未着割込みハンドラ・パラメータを要求しな
いことが判明する場合、潜在的な入出力エラー条件を示
すステップであって、小さな未着割込みハンドラ時間満
了だけが、潜在的な入出力エラー条件の存在を決定する
ために必要とされる、前記ステップと、 を含む、請求項10記載の方法。 - 【請求項13】前記入出力プログラムが入出力チャネル
・プログラムであり、前記入出力命令がチャネル制御ワ
ードである、請求項12記載の方法。 - 【請求項14】前記発行入出力コマンドにより、入出力
プログラムの実行を呼び出すステップと、 前記入出力プログラムが認識される入出力割込みを提供
すること無く、実行を停止し、前記比較ステップが、前
記可変未着割込みハンドラ時間が前記小さな未着割込み
ハンドラ・パラメータ以上であると見い出す場合、前記
入出力プログラム内で最後に実行される前記入出力命令
のアドレスを獲得するステップと、 前記入出力命令に対する前記オペレーティング・システ
ム・テーブル内の未着割込みハンドラ時間妥当性指示を
読出すステップであって、前記未着割込みハンドラ時間
妥当性指示が、前記小さな未着割込みハンドラ・パラメ
ータが、前記入出力コマンドに対して前記未着割込み信
号を検出するのに妥当な時間インタバルを提供するか否
かを示す、前記読出しステップと、 前記未着割込みハンドラ時間妥当性指示が、前記小さな
未着割込みハンドラ・パラメータが妥当であることを示
す場合、前記オペレーティング・システムにより前記入
出力装置に対する潜在的なエラー条件を示すステップ
と、 前記未着割込みハンドラ時間妥当性指示が、前記小さな
未着割込みハンドラ・パラメータが妥当でないことを示
す場合、前記より大きな未着割込みハンドラ・パラメー
タをフェッチし、前記切り替えステップを実行するステ
ップと、 を含む、請求項10記載の方法。 - 【請求項15】ローカル記憶装置を有する前記入出力制
御装置を構成するステップを含み、前記記憶装置が、前
記短期間未着割込みハンドラ・パラメータを記憶する第
1のレジスタ、及び前記長期間未着割込みハンドラ・パ
ラメータを記憶する第2のレジスタを含むフィールドを
有する、請求項10記載の方法。 - 【請求項16】前記第1及び第2のレジスタを、ホスト
・データ処理システムにより実行される初期化プログラ
ムによりそれぞれ初期化するステップを含み、前記処理
システムが、前記短期間未着割込みハンドラ・パラメー
タ及び前記長期間未着割込みハンドラ・パラメータを前
記入出力制御装置に送信して、該制御装置を初期化す
る、請求項15記載の方法。 - 【請求項17】異なるパスを通じて前記入出力制御装置
に接続される複数のホスト・データ処理システム(ホス
ト・システム)の任意の1つからの長期間コマンドが、
前記入出力制御装置に接続される前記入出力装置に対し
て受諾されるときを、前記入出力制御装置内で検出する
ステップと、 前記検出ステップが前記長期間コマンドを検出すると
き、前記入出力制御装置により、前記長期間コマンドを
発行した前記ホスト・システムに割込みを送信するステ
ップと、 前記割込み送信ステップの間に、前記入出力制御装置が
前記ホスト・システムに、前記第2のレジスタ内の前記
長期間パラメータを送信するステップであって、前記長
期間パラメータが前記ホスト・システムにより、前記入
出力制御装置及び前記入出力装置による現操作に対して
使用される、前記送信ステップと、 を含む、請求項16記載の方法。 - 【請求項18】前記ホスト・システムが、前記より大き
な未着割込みハンドラ・パラメータを、前記入出力制御
装置により送信された前記長期間パラメータにセットす
るステップと、 前記切り替えステップの実行に入り、前記方法を実行す
るステップと、 を含む、請求項17記載の方法。 - 【請求項19】データ処理システム内のオペレーティン
グ・システム(OS)による未着入出力割込み信号の誤
った検出を回避する方法であって、前記システムが入出
力装置を共用可能な1つ以上のオペレーティング・シス
テムと、任意の前記オペレーティング・システムにより
発行される入出力コマンドを、前記共用入出力装置の入
出力制御装置に送信する入出力サブシステムとを有する
ものにおいて、 前記入出力サブシステムにより送信されるコマンドを、
前記入出力制御装置により制御される前記入出力装置に
より実行するために、前記入出力制御装置により受諾す
るステップと、 前記コマンドが前記入出力制御装置により受諾されると
き、前記入出力制御装置内でビジー標識をセットするス
テップと、 前記受諾コマンドが所定のしきい値時間を越える入出力
実行時間を有するロング・コマンドか否かを、前記入出
力制御装置内で検出するステップであって、前記所定の
しきい値が、前記入出力制御装置及び前記入出力装置に
より実行可能な任意のショート・コマンドの各実行時間
よりも長い、前記検出ステップと、 前記入出力制御装置により前記ロング・コマンドが受諾
されるとき、前記入出力制御装置内でロング・ビジー標
識をセットするステップと、 前記ロング・コマンドの現実行を示す前記ロング・ビジ
ー標識がセットされる間に、コマンドが受信されると
き、前記入出力制御装置がロング・ビジー拒絶信号によ
り、リクエスタ・オペレーティング・システムに対して
前記受信コマンドを拒絶するステップであって、前記ロ
ング・ビジー拒絶信号が前記被拒絶リクエスタ・オペレ
ーティング・システムに、前記拒絶コマンドに対する未
着割込みハンドラ(MIH)・タイムアウトが、該拒絶
コマンドに対する未着割込みの検出のために使用される
べきでないことを示す、前記拒絶ステップと、を含む、
方法。 - 【請求項20】データ処理システム内のオペレーティン
グ・システム(OS)による未着入出力割込み信号の誤
った検出を回避する方法であって、前記システムが入出
力装置を共用可能な1つ以上のオペレーティング・シス
テムと、任意の前記オペレーティング・システムにより
発行される入出力要求を受信する入出力制御装置とを有
し、前記入出力要求が前記入出力制御装置に接続される
前記入出力装置の使用を要求するものにおいて、 前記受信入出力要求により要求される前記入出力装置が
ビジーであり、前記入出力要求により使用不能なとき、
前記入出力要求を前記入出力制御装置内で遅延させるス
テップと、 前記入出力制御装置が、前記入出力要求が該入出力制御
装置により受信されてからの前記遅延が、所定しきい値
時間に達したことを検出し、前記入出力制御装置が前記
入出力装置がその時操作可能であるが、前記入出力要求
にとって使用可能でないことを認識するとき、前記入出
力制御装置から前記オペレーティング・システムに、ロ
ング・ビジー遅延信号をエラー割込みとして、前記エラ
ー割込みを示すステータス情報と一緒に送信し、ロング
・ビジー割込みをシミュレートする、前記送信ステップ
と、 前記オペレーティング・システムが前記入出力制御装置
から前記ロング・ビジー遅延信号を受信することに応答
して、未着割込みハンドラ(MIH)1次タイムアウト
期間を所定時間延長により延長するステップと、 を含む、方法。 - 【請求項21】前記入出力制御装置から前記オペレーテ
ィング・システムへ送信される前記ロング・ビジー遅延
信号を、エラー指示割込み信号を前記ステータス情報と
一緒に送信することによりシミュレートするステップを
含み、前記ステータス情報が、前記エラー指示割込み信
号が前記ロング・ビジー割込み信号を表すことを示す、
請求項20記載の方法。 - 【請求項22】再駆動ステップに応答して受信される前
記ロング・ビジー割込み信号が、必要とされる前記入出
力装置が、ロング・コマンドを含む別の入出力要求を処
理するのに多忙であることを示し、前記オペレーティン
グ・システムが前記ロング・ビジー割込み信号を、該オ
ペレーティング・システムにより再発行された前記入出
力要求の拒絶として検出するステップと、 前記ロング・ビジー割込み信号が前記タイムアウトの発
生以前に受信されるとき、前記オペレーティング・シス
テムにおける前記未着割込みハンドラ・タイムアウト・
インタバルを更に延長するステップと、 を含む、請求項20記載の方法。 - 【請求項23】様々なコマンドに対するそれぞれのタイ
ムアウト値を表すパラメータのセット、及び可能な前記
ロング・コマンドのセットを前記入出力制御装置に記憶
し、タイムアウトの検出時に、任意の受信コマンドが前
記セット内の任意のパラメータに一致するか否かを判断
することにより、前記入出力制御装置により受信される
前記ロング・コマンドを検出するステップを含む、請求
項20記載の方法。 - 【請求項24】リクエスタ・オペレーティング・システ
ムによる要求が、前記入出力装置の前記入出力制御装置
により受諾されたことが通知されるときのみ、前記リク
エスタ・オペレーティング・システムにおいて未着割込
みハンドラ・タイムアウト・インタバルを開始するステ
ップを含む、請求項20記載の方法。 - 【請求項25】各前記オペレーティング・システムに対
して、1次未着割込みハンドラ・タイムアウト・インタ
バル及び2次未着割込みハンドラ・タイムアウト・イン
タバルを記憶するステップと、 前記オペレーティング・システムが前記入出力装置に対
してショート・コマンドを発行するとき、前記オペレー
ティング・システムが前記1次未着割込みハンドラ・タ
イムアウト・インタバルをアクセスし、該インタバルを
前記未着割込みを検出するために使用するステップと、 前記オペレーティング・システムが前記入出力装置に対
してロング・コマンドを発行するとき、前記オペレーテ
ィング・システムが前記2次未着割込みハンドラ・タイ
ムアウト・インタバルをアクセスし、該インタバルを前
記未着割込みを検出するために使用するステップと、 を含む、請求項20記載の方法。 - 【請求項26】前記入出力装置を使用するために、前記
オペレーティング・システムにより生成される前記入出
力要求に関連付けられるチャネル・プログラムを走査
し、前記チャネル・プログラム内の前記ロング・コマン
ドの存在を判断するステップと、 前記チャネル・プログラムが任意の前記ロング・コマン
ドを含むか否かを示すステップと、 前記チャネル・プログラムが任意の前記ロング・コマン
ドを含まない場合、前記入出力要求に対する前記未着割
込みの検出のために、前記1次未着割込みハンドラ・タ
イムアウト・インタバルを割当てるステップと、 前記チャネル・プログラムが任意の前記ロング・コマン
ドを含む場合、前記入出力要求に対する前記未着割込み
の検出のために、前記2次未着割込みハンドラ・タイム
アウト・インタバルを割当てるステップであって、未着
割込みハンドラ検出プロセスが、前記ショート・コマン
ドに対する前記未着割込みを検出するために、短いタイ
ムアウトを有することを可能にする、前記割当てステッ
プと、 を含む、請求項25記載の方法。 - 【請求項27】各前記入出力制御装置内に、前記入出力
制御装置に接続される前記入出力装置に転送されるコマ
ンドに対して使用される、前記1次未着割込みハンドラ
・タイムアウト・インタバル及び前記2次未着割込みハ
ンドラ・タイムアウト・インタバルを記憶するステップ
と、 記憶装置のアクセス可能性のために、前記オペレーティ
ング・システムが前記入出力制御装置に対して任意のコ
マンドを発行する以前に、前記入出力制御装置から、前
記1次未着割込みハンドラ・タイムアウト・インタバル
及び前記2次未着割込みハンドラ・タイムアウト・イン
タバルをアクセスするステップと、 を含む、請求項26記載の方法。 - 【請求項28】前記入出力制御装置に対して、既存の前
記ロング・ビジー指示により拒絶が発行された前記被拒
絶オペレーティング・システムの識別子を記憶するステ
ップと、 既存の前記ロング・ビジー指示がセットされた前記コマ
ンドに対して、実行が完了するとき、前記被拒絶オペレ
ーティング・システムに対して、ロング・ビジー解除信
号を送信するステップと、 を含む、請求項20記載の方法。 - 【請求項29】前記入出力制御装置において、ロング・
コマンド表現のサブセットを、関連付けられるタイムア
ウト・パラメータと一緒に記憶するステップと、 前記入出力制御装置により、各コマンドと一緒に受信さ
れるコマンド・コードを、前記記憶サブセット内の前記
ロング・コマンド表現と一緒に記憶されるコードと比較
するステップと、 前記オペレーティング・システムの前記入出力要求に対
して、前記入出力制御装置により受信される前記コマン
ド・コードに等しいコードを有する、前記記憶サブセッ
ト内の任意の前記ロング・コマンド表現に関連付けられ
る前記タイムアウト・パラメータをアクセスするステッ
プと、 前記タイムアウト・パラメータをオペレーティング・シ
ステム記憶装置にコピーし、同時割込み信号を前記入出
力制御装置から前記オペレーティング・システムに送信
するステップであって、前記オペレーティング・システ
ムが前記タイムアウト・パラメータを用いて、前記入出
力要求が完了すると期待される時期を時間設定する、前
記コピー及び送信ステップと、 を含む、請求項1記載の方法。 - 【請求項30】未着入出力割込みを検出する未着割込み
ハンドラ(MIH)・プロセスを有する少なくとも1つ
のオペレーティング・システム(OS)を実行するデー
タ処理システムであって、 前記データ処理システムが使用可能な各入出力コマンド
を、該コマンドに対する入出力操作を完了するために費
やす時間に従い、ショート・コマンドまたはロング・コ
マンドのいずれかとして指定するステップであって、前
記ショート・コマンドは入出力操作を前記ロング・コマ
ンドが入出力操作を完了するために必要とする時間のほ
んの一部分で完了する、前記指定ステップと、 ショート入出力要求をショート入出力コマンドだけを含
む各入出力要求として分類し、ロング入出力要求を少な
くとも1つのロング入出力コマンドを含む各入出力要求
として分類するステップと、 入出力制御ユニット(CU)に接続される1つ以上の入
出力装置による操作に対して、前記オペレーティング・
システムから前記制御装置に前記ショート入出力要求及
び前記ロング入出力要求を発行するステップと、 前記入出力装置の1つ上で、2次未着割込みハンドラ・
タイムアウト期間を割当てられた現入出力要求を実行
し、該入出力装置に対して制御装置ビジー指示をセット
するステップと、 前記オペレーティング・システムにより前記入出力装置
に対する他の入出力要求を発行し、前記オペレーティン
グ・システムにより、前記他の入出力要求に対して短い
1次未着割込みハンドラ・タイムアウト期間を測定する
未着割込みハンドラ・タイマ・プロセスを開始するステ
ップと、 前記入出力装置に対して、該入出力装置が前記他の入出
力要求により使用可能になる以前に、前記制御装置内で
遅延されることを示す前記制御装置ビジー指示をセンス
し、この時前記他の入出力要求が遅延入出力要求と決定
され、前記遅延入出力要求に対して制御装置しきい値タ
イムアウト期間を測定するステップと、 前記入出力装置が前記ロング・コマンドを有する入出力
要求を実行していることにより、前記遅延入出力要求に
対する前記制御装置しきい値タイムアウト期間の終了時
に、前記制御装置によりロング・ビジー割込みを生成
し、前記ロング・ビジー割込みを前記オペレーティング
・システムに送信するステップと、 前記オペレーティング・システムが前記ロング・ビジー
割込みと、前記入出力装置が前記ロング・コマンドを有
する前記入出力要求を実行している情報とを受信したこ
とに応答して、前記オペレーティング・システムが、前
記未着割込みハンドラ・タイマ・プロセスの前記未着割
込みハンドラ・タイムアウト期間を、前記短い1次未着
割込みハンドラ・タイムアウト期間から、前記長い2次
未着割込みハンドラ・タイムアウト期間に延長するステ
ップと、 前記未着割込みハンドラ・タイムアウト期間の終了以前
に、完了割込みが前記入出力装置から受信されない場
合、前記未着割込みハンドラ・タイマ・プロセスにおい
て、前記長い2次未着割込みハンドラ・タイムアウト期
間のタイムアウト時にのみ、前記入出力装置により前記
オペレーティング・システムに失敗を示すステップと、 を含む、データ処理システム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/629661 | 1996-04-09 | ||
| US08/629,661 US5894583A (en) | 1996-04-09 | 1996-04-09 | Variable timeout method for improving missing-interrupt-handler operations in an environment having I/O devices shared by one or more systems |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH1031630A true JPH1031630A (ja) | 1998-02-03 |
Family
ID=24523946
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP9073732A Pending JPH1031630A (ja) | 1996-04-09 | 1997-03-26 | 未着割込みハンドラ操作方法及びシステム |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5894583A (ja) |
| JP (1) | JPH1031630A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11237957A (ja) * | 1998-02-23 | 1999-08-31 | Fujitsu Ltd | 磁気ディスク制御装置およびそのファームウェア活性交換方法 |
| JP2006235909A (ja) * | 2005-02-24 | 2006-09-07 | Toshiba Corp | 入出力実行時間監視方法 |
| JP2012079143A (ja) * | 2010-10-04 | 2012-04-19 | Fujitsu Ltd | チャネル制御装置および方法 |
Families Citing this family (70)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TW459197B (en) * | 1997-10-13 | 2001-10-11 | Mustek Systems Inc | Print port control device that is able to connect multiple devices and the control method |
| JPH11194963A (ja) * | 1997-12-26 | 1999-07-21 | Fujitsu Ltd | コマンド実行監視方法、及び、コマンド実行監視装置 |
| US6338090B1 (en) * | 1998-03-27 | 2002-01-08 | International Business Machines Corporation | Method and apparatus for selectively using input/output buffers as a retransmit vehicle in an information handling system |
| US6067587A (en) * | 1998-06-17 | 2000-05-23 | Sutmyn Storage Corporation | Method for serializing and synchronizing data packets by utilizing a physical lock system and a control data structure for mutual exclusion lock |
| US6484217B1 (en) * | 1999-04-20 | 2002-11-19 | International Business Machines Corporation | Managing shared devices in a data processing system |
| US6895534B2 (en) * | 2001-04-23 | 2005-05-17 | Hewlett-Packard Development Company, L.P. | Systems and methods for providing automated diagnostic services for a cluster computer system |
| US20020178312A1 (en) * | 2001-05-24 | 2002-11-28 | Frank Chen | Calculator capable of displaying processing status and stopping processing and method of the same |
| US6792483B2 (en) * | 2001-09-28 | 2004-09-14 | International Business Machines Corporation | I/O generation responsive to a workload heuristics algorithm |
| US6829660B2 (en) * | 2001-12-12 | 2004-12-07 | Emulex Design & Manufacturing Corporation | Supercharge message exchanger |
| US7111157B1 (en) * | 2002-05-08 | 2006-09-19 | 3Pardata, Inc. | Spurious input detection for firmware |
| US6952753B2 (en) * | 2002-06-03 | 2005-10-04 | Sun Microsystems, Inc. | Device driver with improved timeout performance |
| US7171583B2 (en) * | 2003-12-10 | 2007-01-30 | International Business Machines Corporation | For PPRC backup systems |
| US7493394B2 (en) * | 2003-12-31 | 2009-02-17 | Cisco Technology, Inc. | Dynamic timeout in a client-server system |
| JP4333370B2 (ja) * | 2004-01-08 | 2009-09-16 | 株式会社日立製作所 | データ処理システム |
| JP2005310046A (ja) * | 2004-04-26 | 2005-11-04 | Hitachi Ltd | パスリザーブ管理装置 |
| US7788231B2 (en) | 2006-04-18 | 2010-08-31 | International Business Machines Corporation | Using a heartbeat signal to maintain data consistency for writes to source storage copied to target storage |
| US7500023B2 (en) * | 2006-10-10 | 2009-03-03 | International Business Machines Corporation | Facilitating input/output processing by using transport control words to reduce input/output communications |
| US7502873B2 (en) * | 2006-10-10 | 2009-03-10 | International Business Machines Corporation | Facilitating access to status and measurement data associated with input/output processing |
| US7992047B2 (en) * | 2008-01-08 | 2011-08-02 | International Business Machines Corporation | Context sensitive detection of failing I/O devices |
| US7904605B2 (en) * | 2008-02-14 | 2011-03-08 | International Business Machines Corporation | Computer command and response for determining the state of an I/O operation |
| US8095847B2 (en) * | 2008-02-14 | 2012-01-10 | International Business Machines Corporation | Exception condition handling at a channel subsystem in an I/O processing system |
| US8478915B2 (en) | 2008-02-14 | 2013-07-02 | International Business Machines Corporation | Determining extended capability of a channel path |
| US7840718B2 (en) * | 2008-02-14 | 2010-11-23 | International Business Machines Corporation | Processing of data to suspend operations in an input/output processing log-out system |
| US8176222B2 (en) | 2008-02-14 | 2012-05-08 | International Business Machines Corporation | Early termination of an I/O operation in an I/O processing system |
| US8196149B2 (en) * | 2008-02-14 | 2012-06-05 | International Business Machines Corporation | Processing of data to determine compatability in an input/output processing system |
| US7899944B2 (en) * | 2008-02-14 | 2011-03-01 | International Business Machines Corporation | Open exchange limiting in an I/O processing system |
| US7890668B2 (en) * | 2008-02-14 | 2011-02-15 | International Business Machines Corporation | Providing indirect data addressing in an input/output processing system where the indirect data address list is non-contiguous |
| US8214562B2 (en) * | 2008-02-14 | 2012-07-03 | International Business Machines Corporation | Processing of data to perform system changes in an input/output processing system |
| US7908403B2 (en) * | 2008-02-14 | 2011-03-15 | International Business Machines Corporation | Reserved device access contention reduction |
| US9052837B2 (en) | 2008-02-14 | 2015-06-09 | International Business Machines Corporation | Processing communication data in a ships passing condition |
| US7840717B2 (en) * | 2008-02-14 | 2010-11-23 | International Business Machines Corporation | Processing a variable length device command word at a control unit in an I/O processing system |
| US8312189B2 (en) * | 2008-02-14 | 2012-11-13 | International Business Machines Corporation | Processing of data to monitor input/output operations |
| US8108570B2 (en) * | 2008-02-14 | 2012-01-31 | International Business Machines Corporation | Determining the state of an I/O operation |
| US8117347B2 (en) | 2008-02-14 | 2012-02-14 | International Business Machines Corporation | Providing indirect data addressing for a control block at a channel subsystem of an I/O processing system |
| US8082481B2 (en) * | 2008-02-14 | 2011-12-20 | International Business Machines Corporation | Multiple CRC insertion in an output data stream |
| US8166206B2 (en) * | 2008-02-14 | 2012-04-24 | International Business Machines Corporation | Cancel instruction and command for determining the state of an I/O operation |
| US7937507B2 (en) * | 2008-02-14 | 2011-05-03 | International Business Machines Corporation | Extended measurement word determination at a channel subsystem of an I/O processing system |
| US8001298B2 (en) * | 2008-02-14 | 2011-08-16 | International Business Machines Corporation | Providing extended measurement data in an I/O processing system |
| US7941570B2 (en) | 2008-02-14 | 2011-05-10 | International Business Machines Corporation | Bi-directional data transfer within a single I/O operation |
| US7917813B2 (en) * | 2008-02-14 | 2011-03-29 | International Business Machines Corporation | Exception condition determination at a control unit in an I/O processing system |
| US8055807B2 (en) | 2008-07-31 | 2011-11-08 | International Business Machines Corporation | Transport control channel program chain linking including determining sequence order |
| US7937504B2 (en) * | 2008-07-31 | 2011-05-03 | International Business Machines Corporation | Transport control channel program message pairing |
| US7904606B2 (en) * | 2008-07-31 | 2011-03-08 | International Business Machines Corporation | Transport control channel program chain linked branching |
| US7900096B2 (en) * | 2009-01-15 | 2011-03-01 | International Business Machines Corporation | Freeing a serial bus hang condition by utilizing distributed hang timers |
| US8332542B2 (en) * | 2009-11-12 | 2012-12-11 | International Business Machines Corporation | Communication with input/output system devices |
| US8341643B2 (en) * | 2010-03-29 | 2012-12-25 | International Business Machines Corporation | Protecting shared resources using shared memory and sockets |
| US8375155B2 (en) * | 2010-06-23 | 2013-02-12 | International Business Machines Corporation | Managing concurrent serialized interrupt broadcast commands in a multi-node, symmetric multiprocessing computer |
| US8677027B2 (en) | 2011-06-01 | 2014-03-18 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
| US8364854B2 (en) | 2011-06-01 | 2013-01-29 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
| US8583988B2 (en) | 2011-06-01 | 2013-11-12 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
| US8738811B2 (en) | 2011-06-01 | 2014-05-27 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
| US9021155B2 (en) | 2011-06-01 | 2015-04-28 | International Business Machines Corporation | Fibre channel input/output data routing including discarding of data transfer requests in response to error detection |
| US8364853B2 (en) | 2011-06-01 | 2013-01-29 | International Business Machines Corporation | Fibre channel input/output data routing system and method |
| US8346978B1 (en) | 2011-06-30 | 2013-01-01 | International Business Machines Corporation | Facilitating transport mode input/output operations between a channel subsystem and input/output devices |
| US8549185B2 (en) | 2011-06-30 | 2013-10-01 | International Business Machines Corporation | Facilitating transport mode input/output operations between a channel subsystem and input/output devices |
| US8473641B2 (en) | 2011-06-30 | 2013-06-25 | International Business Machines Corporation | Facilitating transport mode input/output operations between a channel subsystem and input/output devices |
| US8312176B1 (en) | 2011-06-30 | 2012-11-13 | International Business Machines Corporation | Facilitating transport mode input/output operations between a channel subsystem and input/output devices |
| US8918542B2 (en) | 2013-03-15 | 2014-12-23 | International Business Machines Corporation | Facilitating transport mode data transfer between a channel subsystem and input/output devices |
| US8990439B2 (en) | 2013-05-29 | 2015-03-24 | International Business Machines Corporation | Transport mode data transfer between a channel subsystem and input/output devices |
| US9304536B2 (en) * | 2013-08-22 | 2016-04-05 | International Business Machines Corporation | Calibrated timeout interval on a configuration value, shared timer value, and shared calibration factor |
| US10585823B2 (en) * | 2014-09-30 | 2020-03-10 | EMC IP Holding Company LLC | Leveling IO |
| US9760511B2 (en) * | 2014-10-08 | 2017-09-12 | International Business Machines Corporation | Efficient interruption routing for a multithreaded processor |
| US9940272B1 (en) | 2015-04-09 | 2018-04-10 | Juniper Networks, Inc. | Hardware-based handling of missing interrupt propagation |
| US10496435B2 (en) | 2016-12-08 | 2019-12-03 | Nxp Usa, Inc. | System and method for partitioning and managing timers in a virtualized system |
| US10216663B2 (en) * | 2016-12-30 | 2019-02-26 | Nxp Usa, Inc. | System and method for autonomous time-based debugging |
| US10318456B2 (en) | 2017-11-06 | 2019-06-11 | International Business Machines Corporation | Validation of correctness of interrupt triggers and delivery |
| TWI686696B (zh) * | 2018-08-14 | 2020-03-01 | 財團法人工業技術研究院 | 計算節點及其失效偵測方法與雲端資料處理系統 |
| US10929263B2 (en) | 2018-11-13 | 2021-02-23 | International Business Machines Corporation | Identifying a delay associated with an input/output interrupt |
| CN114706701B (zh) * | 2022-02-24 | 2025-09-05 | 阿里巴巴(中国)有限公司 | 输入/输出请求检测方法、装置、设备及介质 |
| CN119676121B (zh) * | 2024-12-20 | 2025-10-10 | 苏州元脑智能科技有限公司 | 一种通信超时处理方法、装置和电子设备和存储介质 |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4371932A (en) * | 1979-07-30 | 1983-02-01 | International Business Machines Corp. | I/O Controller for transferring data between a host processor and multiple I/O units |
| US4771403A (en) * | 1984-11-16 | 1988-09-13 | Allen-Bradley Company, Inc. | I/O module with multi-function integrated circuits and an isolation interface for multiplexing data between a main processor and I/O devices |
| US5003462A (en) * | 1988-05-31 | 1991-03-26 | International Business Machines Corporation | Apparatus and method for implementing precise interrupts on a pipelined processor with multiple functional units with separate address translation interrupt means |
| US4974147A (en) * | 1988-12-21 | 1990-11-27 | International Business Machines Corporation | Programmable quiesce apparatus for retry, recovery and debug |
| EP0444376B1 (en) * | 1990-02-27 | 1996-11-06 | International Business Machines Corporation | Mechanism for passing messages between several processors coupled through a shared intelligent memory |
| US5257368A (en) * | 1991-03-28 | 1993-10-26 | International Business Machines Corp. | System for dynamically changing a system I/O configuration by determining differences between current and future configurations and describing differences to software and hardware control blocks |
| US5257379A (en) * | 1991-09-04 | 1993-10-26 | International Business Machines Corporation | Establishing synchronization of hardware and software I/O configuration definitions |
| US5333274A (en) * | 1991-10-15 | 1994-07-26 | International Business Machines Corp. | Error detection and recovery in a DMA controller |
| US5307482A (en) * | 1992-01-28 | 1994-04-26 | International Business Machines Corp. | Computer, non-maskable interrupt trace routine override |
| US5388254A (en) * | 1992-03-27 | 1995-02-07 | International Business Machines Corporation | Method and means for limiting duration of input/output (I/O) requests |
| US5471609A (en) * | 1992-09-22 | 1995-11-28 | International Business Machines Corporation | Method for identifying a system holding a `Reserve` |
| JP2905373B2 (ja) * | 1993-10-01 | 1999-06-14 | 富士通株式会社 | ディスク制御装置及びその制御方法 |
-
1996
- 1996-04-09 US US08/629,661 patent/US5894583A/en not_active Expired - Fee Related
-
1997
- 1997-03-26 JP JP9073732A patent/JPH1031630A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11237957A (ja) * | 1998-02-23 | 1999-08-31 | Fujitsu Ltd | 磁気ディスク制御装置およびそのファームウェア活性交換方法 |
| JP2006235909A (ja) * | 2005-02-24 | 2006-09-07 | Toshiba Corp | 入出力実行時間監視方法 |
| JP2012079143A (ja) * | 2010-10-04 | 2012-04-19 | Fujitsu Ltd | チャネル制御装置および方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| US5894583A (en) | 1999-04-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH1031630A (ja) | 未着割込みハンドラ操作方法及びシステム | |
| JP3726931B2 (ja) | 入出力装置操作故障を誤って示すことを防止する入出力制御ユニット及び方法 | |
| JPH1031632A (ja) | 未着入出力割込み信号の誤った検出を回避する方法 | |
| US5386512A (en) | System for deriving and testing mutual capability set after receiving updated capability from other processors and before requesting service information | |
| US6343335B1 (en) | System for repositioning an I/O device to a predetermined position to retry a program without knowledge of which part of the program caused the retry | |
| US5404535A (en) | Apparatus and method for providing more effective reiterations of processing task requests in a multiprocessor system | |
| US20060271916A1 (en) | Software process monitor | |
| EP0351536A2 (en) | Systematic recovery of excessive spin loops in an n-way mp environment | |
| EP3457283B1 (en) | Centralized error handling in aplication specific integrated circuits | |
| US4096564A (en) | Data processing system with interrupt functions | |
| US7200772B2 (en) | Methods and apparatus to reinitiate failed processors in multiple-processor systems | |
| US4237533A (en) | Preventing initial program load failures | |
| US7472214B2 (en) | Real-time embedded simple monitor method and computer product | |
| US7624396B1 (en) | Retrieving events from a queue | |
| US20060271205A1 (en) | Software process monitor | |
| JP5014179B2 (ja) | Os優先度変更装置及びos優先度変更プログラム | |
| US6658486B2 (en) | System and method for efficiently blocking event signals associated with an operating system | |
| US8332826B2 (en) | Software process monitor | |
| JP4487756B2 (ja) | コンピュータシステム及びシステム監視プログラム | |
| US20070174723A1 (en) | Sub-second, zero-packet loss adapter failover | |
| US7472310B2 (en) | Debugging mechanism and debugging register | |
| EP2096550B1 (en) | Information processing apparatus and control method thereof | |
| US9176806B2 (en) | Computer and memory inspection method | |
| US8370839B2 (en) | Monitoring message queues in message queuing information systems and initiating batch jobs to perform functions on the message queues | |
| JP2626616B2 (ja) | 周辺制御装置 |