JP2597456B2 - 直接アクセス記憶装置へのアクセス調整システム及び方法 - Google Patents
直接アクセス記憶装置へのアクセス調整システム及び方法Info
- Publication number
- JP2597456B2 JP2597456B2 JP5147145A JP14714593A JP2597456B2 JP 2597456 B2 JP2597456 B2 JP 2597456B2 JP 5147145 A JP5147145 A JP 5147145A JP 14714593 A JP14714593 A JP 14714593A JP 2597456 B2 JP2597456 B2 JP 2597456B2
- Authority
- JP
- Japan
- Prior art keywords
- channel
- storage
- access
- queue
- controller
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multi Processors (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【0001】
【産業上の利用分野】本発明は、データ処理システムの
ためのデータ記憶システムに関し、特に複数のホストで
あるメインフレームコンピュータに利用されるディスク
駆動装置のための制御装置に関するものである。
ためのデータ記憶システムに関し、特に複数のホストで
あるメインフレームコンピュータに利用されるディスク
駆動装置のための制御装置に関するものである。
【0002】メインフレームコンピュータシステムは、
一般にデータの大容量記憶のための補助記憶装置を使用
する。直接アクセス記憶装置(DASD)は、そのよう
なタイプの補助記憶装置の1つである。直接アクセス記
憶装置においては、アクセス時間が実質上その記憶装置
内のデータの位置によらない。直接アクセス記憶装置は
ホストであるメインフレームコンピュータの外部に設置
され、数台のコンピュータによって利用される。データ
保全性のためには、同時に唯一つのコンピュータのみが
直接アクセス記憶装置を利用するもしくは占有すること
が必要である。そのシステム設計者は、この記憶装置へ
アクセスするコンピュータ同士の間のコンフリクトを解
決する方法を規定しなければならない。
一般にデータの大容量記憶のための補助記憶装置を使用
する。直接アクセス記憶装置(DASD)は、そのよう
なタイプの補助記憶装置の1つである。直接アクセス記
憶装置においては、アクセス時間が実質上その記憶装置
内のデータの位置によらない。直接アクセス記憶装置は
ホストであるメインフレームコンピュータの外部に設置
され、数台のコンピュータによって利用される。データ
保全性のためには、同時に唯一つのコンピュータのみが
直接アクセス記憶装置を利用するもしくは占有すること
が必要である。そのシステム設計者は、この記憶装置へ
アクセスするコンピュータ同士の間のコンフリクトを解
決する方法を規定しなければならない。
【0003】普通のタイプの直接アクセス記憶装置とし
ては磁気ディスク装置があり、これは、ディスク駆動機
構と、ディスク駆動機構へデータを書込みまたディスク
駆動機構からデータを読取るための磁気変換器と、その
他のタスク中にこの磁気変換器の位置決めに関連する制
御とを有している。データベース記憶等のアプリケーシ
ョンのためには、数台の磁気ディスク装置をグループに
して、このグループと数台の独立したコンピュータとの
間に記憶制御装置が論理的に設置されている。複数のホ
ストコンピュータから磁気ディスクへの要求のコンフリ
クトを解決するタスクは、この記憶制御装置が担ってい
る。
ては磁気ディスク装置があり、これは、ディスク駆動機
構と、ディスク駆動機構へデータを書込みまたディスク
駆動機構からデータを読取るための磁気変換器と、その
他のタスク中にこの磁気変換器の位置決めに関連する制
御とを有している。データベース記憶等のアプリケーシ
ョンのためには、数台の磁気ディスク装置をグループに
して、このグループと数台の独立したコンピュータとの
間に記憶制御装置が論理的に設置されている。複数のホ
ストコンピュータから磁気ディスクへの要求のコンフリ
クトを解決するタスクは、この記憶制御装置が担ってい
る。
【0004】IBM3990記憶制御装置は、磁気ディ
スク装置のグループから選択された記憶装置と接続を要
求しているコンピュータとの間の接続を処理するために
利用される記憶制御装置の例である。このIBM399
0モデル3タイプ制御装置は、IBMコーポレーション
から提供されており、ホストコンピュータからの16本
までのチャネルと、64台までの磁気記憶装置を処理す
ることができる。この記憶制御装置内には、2個のマル
チパス記憶ディレクタと、4個の記憶パスがあり、記憶
パスの内の2個ずつがそれぞれのマルチパス記憶ディレ
クタに結合している。それぞれのマルチパス記憶ディレ
クタは、ホストコンピュータからの8本までの入力チャ
ネルに接続可能なので、全部で16本のチャネルが記憶
制御装置に備えられている。それぞれのマルチパス記憶
ディレクタは2個の記憶パスに接続されており、従って
8×2スイッチとして機能する。チャネルは、記憶制御
装置とホストコンピュータとの間の物理的なリンクであ
る。通常、ホストコンピュータは2本または4本のチャ
ネルを有し、その半分は物理的に1個のマルチパス記憶
ディレクタに接続され、他の半分はもう1個のマルチパ
ス記憶ディレクタに接続されている。
スク装置のグループから選択された記憶装置と接続を要
求しているコンピュータとの間の接続を処理するために
利用される記憶制御装置の例である。このIBM399
0モデル3タイプ制御装置は、IBMコーポレーション
から提供されており、ホストコンピュータからの16本
までのチャネルと、64台までの磁気記憶装置を処理す
ることができる。この記憶制御装置内には、2個のマル
チパス記憶ディレクタと、4個の記憶パスがあり、記憶
パスの内の2個ずつがそれぞれのマルチパス記憶ディレ
クタに結合している。それぞれのマルチパス記憶ディレ
クタは、ホストコンピュータからの8本までの入力チャ
ネルに接続可能なので、全部で16本のチャネルが記憶
制御装置に備えられている。それぞれのマルチパス記憶
ディレクタは2個の記憶パスに接続されており、従って
8×2スイッチとして機能する。チャネルは、記憶制御
装置とホストコンピュータとの間の物理的なリンクであ
る。通常、ホストコンピュータは2本または4本のチャ
ネルを有し、その半分は物理的に1個のマルチパス記憶
ディレクタに接続され、他の半分はもう1個のマルチパ
ス記憶ディレクタに接続されている。
【0005】それぞれの記憶パスは、使用可能な全ての
磁気ディスク装置に接続されている。あるディスクの準
備完了の標識に従って、記憶制御装置は複数のチャネル
と記憶パスの中のいずれか1つを確保し、データパスを
設定するためにホストコンピュータに送り返すことがで
きる。IBM3990記憶制御装置の方式は、ホストコ
ンピュータと磁気ディスク装置との間の入出力トランザ
クションを2つの接続に分離することが可能で、それぞ
れの接続は別個のチャネルと記憶パスを介して処理され
る。即ち、ある要求を受信したチャネルと同じチャネル
によって応答を返す必要はない。この方式によって、記
憶制御装置を通したスループットが向上する。各記憶パ
スは、実質上それぞれの有するマイクロプロセッサに従
う独立型制御装置であるにもかかわらず、それらの記憶
パスは、トランザクションにおける接続、切断、及び再
接続の処理に関する同期機能ため、共通メモリ空間にお
ける制御アレイを共有する。
磁気ディスク装置に接続されている。あるディスクの準
備完了の標識に従って、記憶制御装置は複数のチャネル
と記憶パスの中のいずれか1つを確保し、データパスを
設定するためにホストコンピュータに送り返すことがで
きる。IBM3990記憶制御装置の方式は、ホストコ
ンピュータと磁気ディスク装置との間の入出力トランザ
クションを2つの接続に分離することが可能で、それぞ
れの接続は別個のチャネルと記憶パスを介して処理され
る。即ち、ある要求を受信したチャネルと同じチャネル
によって応答を返す必要はない。この方式によって、記
憶制御装置を通したスループットが向上する。各記憶パ
スは、実質上それぞれの有するマイクロプロセッサに従
う独立型制御装置であるにもかかわらず、それらの記憶
パスは、トランザクションにおける接続、切断、及び再
接続の処理に関する同期機能ため、共通メモリ空間にお
ける制御アレイを共有する。
【0006】IBM、Amdahl、及びHitach
iを含むいくつかの業者が、IBM3990記憶制御装
置に接続可能な種々のモデルのコンピュータを提供して
いる。これらのコンピュータは、動作速度及び記憶制御
装置からの信号に応答するために要する時間が異なって
いる。コンピュータを記憶制御装置へ接続するために使
用されるチャネルもまた異なっている場合がある。ある
タイプのチャネルは、電気信号の伝送のために並列の銅
線のパスを有している。このタイプのチャネルは、約1
25メートルまでの距離において使用される。直列の光
ケーブルは、15キロメートルまでの距離のコンピュー
タと記憶制御装置を接続するために使用される。
iを含むいくつかの業者が、IBM3990記憶制御装
置に接続可能な種々のモデルのコンピュータを提供して
いる。これらのコンピュータは、動作速度及び記憶制御
装置からの信号に応答するために要する時間が異なって
いる。コンピュータを記憶制御装置へ接続するために使
用されるチャネルもまた異なっている場合がある。ある
タイプのチャネルは、電気信号の伝送のために並列の銅
線のパスを有している。このタイプのチャネルは、約1
25メートルまでの距離において使用される。直列の光
ケーブルは、15キロメートルまでの距離のコンピュー
タと記憶制御装置を接続するために使用される。
【0007】コンピュータが、既に使用中の磁気記憶装
置に対して接続を要求すると、記憶制御装置からビジー
信号を与えられ、接続を拒絶される。使用中であった記
憶装置が解放されると、その記憶装置の使用中にデバイ
ス・ビジー信号を受信した全てのチャネルに対して記憶
制御装置からオードデバイスエンド(Owed Dev
ice End:ODE)信号が送信される。同様に、
記憶クラスタ中の全ての記憶パスは、記憶装置とコンピ
ュータとの間の接続によって占められてしまう。その状
況下で接続を要求したコンピュータは、制御装置ビジー
信号を与えられる。それらの接続の内の1つが解放され
ると、ビジー信号を受信していた全てのコンピュータ
は、制御装置エンド(Contorol Unit E
nd:CUE)信号を与えられる。ODE信号とCUE
信号は、言わばコンピュータが記憶装置もしくは記憶制
御装置の制御を獲得しようとするレースにおけるスター
ト・ガンのようなものである。この制御の獲得は、先着
順サービスに基づいて行われる。
置に対して接続を要求すると、記憶制御装置からビジー
信号を与えられ、接続を拒絶される。使用中であった記
憶装置が解放されると、その記憶装置の使用中にデバイ
ス・ビジー信号を受信した全てのチャネルに対して記憶
制御装置からオードデバイスエンド(Owed Dev
ice End:ODE)信号が送信される。同様に、
記憶クラスタ中の全ての記憶パスは、記憶装置とコンピ
ュータとの間の接続によって占められてしまう。その状
況下で接続を要求したコンピュータは、制御装置ビジー
信号を与えられる。それらの接続の内の1つが解放され
ると、ビジー信号を受信していた全てのコンピュータ
は、制御装置エンド(Contorol Unit E
nd:CUE)信号を与えられる。ODE信号とCUE
信号は、言わばコンピュータが記憶装置もしくは記憶制
御装置の制御を獲得しようとするレースにおけるスター
ト・ガンのようなものである。この制御の獲得は、先着
順サービスに基づいて行われる。
【0008】このレースは、CUE及びODE信号を受
信したコンピュータだけに制限されるものではない。そ
の記憶制御装置に接続されているどのコンピュータで
も、その要求が最初に受信されれば、記憶パスもしくは
記憶装置に対する制御を獲得することができる。従っ
て、記憶パスを解放したばかりのチャネルが、再びその
パスの制御を獲得するための要求をすることもある。
信したコンピュータだけに制限されるものではない。そ
の記憶制御装置に接続されているどのコンピュータで
も、その要求が最初に受信されれば、記憶パスもしくは
記憶装置に対する制御を獲得することができる。従っ
て、記憶パスを解放したばかりのチャネルが、再びその
パスの制御を獲得するための要求をすることもある。
【0009】上記のようなコンフリクト解決方式は、対
等なもの同士の競争ではない。より速いコンピュータで
あれば、CUE及びODE信号により速やかに応答する
ことができる。コンピュータと記憶制御装置間のチャネ
ルは物理的に短いので、記憶制御装置からコンピュータ
までのCUE及びODE信号の伝送時間と、その結果で
あるところのコンピュータから記憶制御装置までの入出
力開始(SI/O)信号の伝送時間は、同じ程度に短
い。チャネルが短いために有利なコンピュータは、記憶
制御装置から遠く離れたコンピュータがまだCUEもし
くはODE信号を受信していないにもかかわらず、入出
力開始信号を出すことによって遠方のコンピュータに勝
ってしまうこともある。このシステムにおける問題点
は、磁気記憶装置グループに記憶されたデータベースに
対するアクセス要求が顕著なときであっても、遅いコン
ピュータあるいは遠いコンピュータは、速いコンピュー
タあるいは記憶制御装置への伝送リンク時間の短いコン
ピュータによって記憶装置へのアクセスから締め出され
てしまうことである。
等なもの同士の競争ではない。より速いコンピュータで
あれば、CUE及びODE信号により速やかに応答する
ことができる。コンピュータと記憶制御装置間のチャネ
ルは物理的に短いので、記憶制御装置からコンピュータ
までのCUE及びODE信号の伝送時間と、その結果で
あるところのコンピュータから記憶制御装置までの入出
力開始(SI/O)信号の伝送時間は、同じ程度に短
い。チャネルが短いために有利なコンピュータは、記憶
制御装置から遠く離れたコンピュータがまだCUEもし
くはODE信号を受信していないにもかかわらず、入出
力開始信号を出すことによって遠方のコンピュータに勝
ってしまうこともある。このシステムにおける問題点
は、磁気記憶装置グループに記憶されたデータベースに
対するアクセス要求が顕著なときであっても、遅いコン
ピュータあるいは遠いコンピュータは、速いコンピュー
タあるいは記憶制御装置への伝送リンク時間の短いコン
ピュータによって記憶装置へのアクセスから締め出され
てしまうことである。
【0010】
【発明が解決しようとする課題】本発明の目的は、記憶
制御装置の記憶パス及び直接アクセス記憶装置への複数
のコンピュータのアクセスを割当てる方法を提供するこ
とである。さらに本発明の目的は、記憶パスもしくは直
接アクセス記憶装置へのアクセスからコンピュータを締
め出すことを防ぐことである。さらに本発明の目的は、
故障しているホストコンピュータを識別することであ
る。
制御装置の記憶パス及び直接アクセス記憶装置への複数
のコンピュータのアクセスを割当てる方法を提供するこ
とである。さらに本発明の目的は、記憶パスもしくは直
接アクセス記憶装置へのアクセスからコンピュータを締
め出すことを防ぐことである。さらに本発明の目的は、
故障しているホストコンピュータを識別することであ
る。
【0011】
【課題を解決するための手段】本発明は、データ処理シ
ステムにおいて、複数のホストコンピュータから複数の
直接アクセス記憶装置に対して任意にアクセスするシス
テム及び方法を提供する。このデータ処理システムは、
ホストコンピュータへのデータ通信のために1台のホス
トコンピュータにつき1本以上のチャネルにより接続さ
れた記憶制御装置を有する。この記憶制御装置はさら
に、直接アクセス記憶装置に接続されている。記憶制御
装置は、ホストコンピュータの要求に答えて、そのホス
トコンピュータと直接アクセス記憶装置間のデータ転送
のための通信リンクを選択的に設定する。
ステムにおいて、複数のホストコンピュータから複数の
直接アクセス記憶装置に対して任意にアクセスするシス
テム及び方法を提供する。このデータ処理システムは、
ホストコンピュータへのデータ通信のために1台のホス
トコンピュータにつき1本以上のチャネルにより接続さ
れた記憶制御装置を有する。この記憶制御装置はさら
に、直接アクセス記憶装置に接続されている。記憶制御
装置は、ホストコンピュータの要求に答えて、そのホス
トコンピュータと直接アクセス記憶装置間のデータ転送
のための通信リンクを選択的に設定する。
【0012】本発明の方法は、ホストコンピュータが記
憶制御装置もしくは記憶装置の制御を獲得する資格を一
時的に剥奪するものである。さらにこの方法では、チャ
ネルを選択してデバイスエンド信号及び制御装置エンド
信号の伝送を行う。重複状態を特定して、データ処理シ
ステムの機能を抑止することなくホストコンピュータあ
るいはチャネルの故障に対する配慮をする。
憶制御装置もしくは記憶装置の制御を獲得する資格を一
時的に剥奪するものである。さらにこの方法では、チャ
ネルを選択してデバイスエンド信号及び制御装置エンド
信号の伝送を行う。重複状態を特定して、データ処理シ
ステムの機能を抑止することなくホストコンピュータあ
るいはチャネルの故障に対する配慮をする。
【0013】本発明の方法は、2台以上のホストコンピ
ュータによる記憶装置もしくは記憶制御装置へのアクセ
スのコンテンション(競合)に対応して呼出される。デ
バイスコンテンション期間は、ホストコンピュータが使
用不可能な記憶装置へ接続要求した時に開始する。制御
装置コンテンション期間は、ホストコンピュータが記憶
装置への接続のために記憶制御装置を使用できない時、
直ちに開始する。それぞれのコンテンション期間中にチ
ャネルを介してなされた接続要求に対する記憶制御装置
の応答は、1つにはそれらのチャネルに関係する複数の
状態標識によって決定される。所与のチャネルに関し
て、それぞれのコンテンション期間中に状態標識が作ら
れる。コンテンション期間は、全ての接続要求が同時に
満たされたとき終了する。異常な終了に対しても配慮さ
れている。
ュータによる記憶装置もしくは記憶制御装置へのアクセ
スのコンテンション(競合)に対応して呼出される。デ
バイスコンテンション期間は、ホストコンピュータが使
用不可能な記憶装置へ接続要求した時に開始する。制御
装置コンテンション期間は、ホストコンピュータが記憶
装置への接続のために記憶制御装置を使用できない時、
直ちに開始する。それぞれのコンテンション期間中にチ
ャネルを介してなされた接続要求に対する記憶制御装置
の応答は、1つにはそれらのチャネルに関係する複数の
状態標識によって決定される。所与のチャネルに関し
て、それぞれのコンテンション期間中に状態標識が作ら
れる。コンテンション期間は、全ての接続要求が同時に
満たされたとき終了する。異常な終了に対しても配慮さ
れている。
【0014】それぞれのタイプのコンテンション期間の
開始に先立ち、コンテンション期間中に使用する複数の
データ構造もしくは変数を初期化する。制御装置コンテ
ンションの調整のためのデータ構造には、記憶制御装置
への接続要求を受入れられないことが顕著である全ての
チャネルのリストが含まれる。いわゆる制御カウンタで
ある変数が、各チャネルについて与えられている。制御
カウンタは、そのチャネルが接続を獲得する毎に再初期
化される。あるチャネルから頻繁な接続要求がある場
合、そのチャネルについての制御カウンタは、記憶制御
装置からのチャネル切断が起きる毎にインデックスを付
与される。
開始に先立ち、コンテンション期間中に使用する複数の
データ構造もしくは変数を初期化する。制御装置コンテ
ンションの調整のためのデータ構造には、記憶制御装置
への接続要求を受入れられないことが顕著である全ての
チャネルのリストが含まれる。いわゆる制御カウンタで
ある変数が、各チャネルについて与えられている。制御
カウンタは、そのチャネルが接続を獲得する毎に再初期
化される。あるチャネルから頻繁な接続要求がある場
合、そのチャネルについての制御カウンタは、記憶制御
装置からのチャネル切断が起きる毎にインデックスを付
与される。
【0015】制御カウンタにインデックスを付与した
後、それぞれの制御カウンタは、3段階のインデックス
・レベルのそれぞれと比較される。レベルは順に、優先
レベル、ブロック要求レベル、そして故障レベルとな
る。あるチャネルの制御カウンタが故障レベルに達した
場合は、再初期化される。制御カウンタがブロック要求
レベルに達した場合は、制御装置ブロックマスクがセッ
トされる。制御装置ブロックマスクとは、制御カウンタ
がブロック要求レベルに達していないチャネルのマップ
である。それによって記憶制御装置は、ビジー信号によ
ってブロックされたチャネルからの接続要求に応答す
る。制御カウンタが優先レベルに達した場合は、制御装
置エンドマスクがセットされる。それによってそのチャ
ネルが、記憶制御装置の切断時における制御装置エンド
信号を受信する資格があるという状態を示す。制御装置
エンドマスクがゼロでないときは常に、制御カウンタが
優先レベル以上にあるチャネルのみが、記憶制御装置の
使用可を示す制御装置エンド信号を受信する。
後、それぞれの制御カウンタは、3段階のインデックス
・レベルのそれぞれと比較される。レベルは順に、優先
レベル、ブロック要求レベル、そして故障レベルとな
る。あるチャネルの制御カウンタが故障レベルに達した
場合は、再初期化される。制御カウンタがブロック要求
レベルに達した場合は、制御装置ブロックマスクがセッ
トされる。制御装置ブロックマスクとは、制御カウンタ
がブロック要求レベルに達していないチャネルのマップ
である。それによって記憶制御装置は、ビジー信号によ
ってブロックされたチャネルからの接続要求に応答す
る。制御カウンタが優先レベルに達した場合は、制御装
置エンドマスクがセットされる。それによってそのチャ
ネルが、記憶制御装置の切断時における制御装置エンド
信号を受信する資格があるという状態を示す。制御装置
エンドマスクがゼロでないときは常に、制御カウンタが
優先レベル以上にあるチャネルのみが、記憶制御装置の
使用可を示す制御装置エンド信号を受信する。
【0016】上記の制御装置ブロックマスクは、時々重
複することがある。カウンタは、入出力動作が実行され
なかった入出力開始信号の回数を計数するものである。
記憶制御装置は入出力開始信号、即ちデータ転送のため
の記憶装置への接続要求を受信すると、要求を行ってい
るチャネルが記憶制御装置へのアクセスからブロックさ
れているかどうかを判断する。もしブロックされていな
ければ、接続拒否の繰り返しを計数しているカウンタは
クリアされ、要求を行っているチャネルの制御カウンタ
もまたクリアされる。その後、チャネル要求に対する通
常の処理が行われる。
複することがある。カウンタは、入出力動作が実行され
なかった入出力開始信号の回数を計数するものである。
記憶制御装置は入出力開始信号、即ちデータ転送のため
の記憶装置への接続要求を受信すると、要求を行ってい
るチャネルが記憶制御装置へのアクセスからブロックさ
れているかどうかを判断する。もしブロックされていな
ければ、接続拒否の繰り返しを計数しているカウンタは
クリアされ、要求を行っているチャネルの制御カウンタ
もまたクリアされる。その後、チャネル要求に対する通
常の処理が行われる。
【0017】制御装置ブロックマスクが、要求を行って
いるチャネルをブロックしている場合は、そのチャネル
はビジー信号を与えられる。そしてブロックされた要求
の繰り返しを計数しているカウンタが参照され、最大許
容レベルと比較される。その最大許容レベルに達したな
らば、全てのチャネルに対する繰り返しカウンタ及び制
御カウンタがクリアされる。そして制御装置ブロックマ
スクはゼロにリセットされ、処理は基本動作に戻る。
いるチャネルをブロックしている場合は、そのチャネル
はビジー信号を与えられる。そしてブロックされた要求
の繰り返しを計数しているカウンタが参照され、最大許
容レベルと比較される。その最大許容レベルに達したな
らば、全てのチャネルに対する繰り返しカウンタ及び制
御カウンタがクリアされる。そして制御装置ブロックマ
スクはゼロにリセットされ、処理は基本動作に戻る。
【0018】接続要求に対して記憶制御装置が応答する
場合、デバイスコンテンション期間の処理のために、記
憶制御装置によって別のデータ構造が作られ参照され
る。それぞれの記憶装置について固有のデータ構造セッ
トが設けられる。デバイスコンテンションを処理する場
合、デバイスエンド信号を待っているチャネルを記録す
るために2個のキュー(待ち行列)が保持されている。
フロント・キューは、バック・キューに記録されている
どのチャネルより先にデバイスエンド信号を受けるべき
チャネルを含んでいる。さらに、すぐにでも記憶装置へ
の接続を許可されるチャネルとそうではないチャネルを
示す呼出しリストが保持されている。最初は、呼出しリ
スト中の全てのチャネルが許可状態になっている。フロ
ント・キュー及びバック・キューは、空である(ゼロを
示している)。
場合、デバイスコンテンション期間の処理のために、記
憶制御装置によって別のデータ構造が作られ参照され
る。それぞれの記憶装置について固有のデータ構造セッ
トが設けられる。デバイスコンテンションを処理する場
合、デバイスエンド信号を待っているチャネルを記録す
るために2個のキュー(待ち行列)が保持されている。
フロント・キューは、バック・キューに記録されている
どのチャネルより先にデバイスエンド信号を受けるべき
チャネルを含んでいる。さらに、すぐにでも記憶装置へ
の接続を許可されるチャネルとそうではないチャネルを
示す呼出しリストが保持されている。最初は、呼出しリ
スト中の全てのチャネルが許可状態になっている。フロ
ント・キュー及びバック・キューは、空である(ゼロを
示している)。
【0019】記憶制御装置は記憶装置への入出力開始要
求を受信すると、その要求を行っているチャネルが許可
状態であるかどうかを判断するためにその記憶装置につ
いての呼出しリストを参照する。そのチャネルが許可状
態であれば、記憶制御装置は要求された記憶装置が使用
可能かどうかを判断する。使用可能でなかった場合、そ
のチャネルのデバイスエンド待ちを示すエントリがフロ
ント・キューに作られる。
求を受信すると、その要求を行っているチャネルが許可
状態であるかどうかを判断するためにその記憶装置につ
いての呼出しリストを参照する。そのチャネルが許可状
態であれば、記憶制御装置は要求された記憶装置が使用
可能かどうかを判断する。使用可能でなかった場合、そ
のチャネルのデバイスエンド待ちを示すエントリがフロ
ント・キューに作られる。
【0020】入出力動作が完了すると、その記憶装置が
まもなく解放されることが示され、フロント・キューを
調べてそれが空であるかどうかを判断する。もし空でな
ければ、入出力動作を完了したチャネルの状態が非許可
状態に変わる。他のチャネルが同じホストコンピュータ
(即ち、同じパス・グループ)に接続されていれば、そ
れらもまた非許可状態に変わる。非許可状態のチャネル
からさらなる接続要求を受信しても、全てのフロント・
キュー項目がクリアされるまではその要求はバック・キ
ュー内にリストされる。
まもなく解放されることが示され、フロント・キューを
調べてそれが空であるかどうかを判断する。もし空でな
ければ、入出力動作を完了したチャネルの状態が非許可
状態に変わる。他のチャネルが同じホストコンピュータ
(即ち、同じパス・グループ)に接続されていれば、そ
れらもまた非許可状態に変わる。非許可状態のチャネル
からさらなる接続要求を受信しても、全てのフロント・
キュー項目がクリアされるまではその要求はバック・キ
ュー内にリストされる。
【0021】フロント・キューの全ての項目が処理され
ると、バック・キューの内容がフロント・キューに進
み、そしてバック・キューはリセットされる。さらにフ
ロント・キュー内の全ての要求が完了すると、呼出しリ
ストがリセットされ全てのチャネルが許可状態になる。
ると、バック・キューの内容がフロント・キューに進
み、そしてバック・キューはリセットされる。さらにフ
ロント・キュー内の全ての要求が完了すると、呼出しリ
ストがリセットされ全てのチャネルが許可状態になる。
【0022】記憶装置が解放されると、記憶制御装置は
フロント・キュー内にリストされた全てのチャネルに割
込みをする。それから、その割込みに最初に応答したチ
ャネルに対してデバイスエンド信号が送信される。その
後、デバイスエンド信号を送信されたチャネルもしくは
そのパス・グループを除くことによってフロント・キュ
ーとバック・キューはリセットされる。
フロント・キュー内にリストされた全てのチャネルに割
込みをする。それから、その割込みに最初に応答したチ
ャネルに対してデバイスエンド信号が送信される。その
後、デバイスエンド信号を送信されたチャネルもしくは
そのパス・グループを除くことによってフロント・キュ
ーとバック・キューはリセットされる。
【0023】
【実施例】図1には、データ処理システム10のハイレ
ベル・ブロック図が示されている。データ処理システム
10は、記憶制御装置12、複数のホストコンピュータ
14、16、18、20、及び複数の直接アクセス記憶
装置(DASD)22〜32を含んでいる。直接アクセ
ス記憶装置22〜32は、一般に磁気記憶装置であり、
普通「ディスク駆動装置」と呼ばれている。記憶装置2
2〜32はまた記憶制御装置12に接続され、ホストコ
ンピュータとの通信のために選択的に接続される。記憶
制御装置12は好ましくは、IBM3990モデル3タ
イプ制御装置であり、IBMコーポレーションにより提
供されている。ホストコンピュータ14〜20は、典型
的にはIBM3090もしくはES9000モデルコン
ピュータ等のメインフレームシステムあるいは相当する
システムである。ホストコンピュータ14〜20は、1
〜4本のチャネルを介して記憶制御装置12に接続され
ている。例えば、ホストコンピュータ20は、チャネル
34(a)、34(b)、34(c)、34(d)によ
って記憶制御装置12に接続されている。チャネルに
は、並列データチャネル及び直列データチャネルの2つ
のタイプがある。ある光学的直列チャネルは、15キロ
メートルまでのデータ伝送に使用される。並列チャネル
は電気信号を利用し、通常は125メートル以上の距離
には使用されない。
ベル・ブロック図が示されている。データ処理システム
10は、記憶制御装置12、複数のホストコンピュータ
14、16、18、20、及び複数の直接アクセス記憶
装置(DASD)22〜32を含んでいる。直接アクセ
ス記憶装置22〜32は、一般に磁気記憶装置であり、
普通「ディスク駆動装置」と呼ばれている。記憶装置2
2〜32はまた記憶制御装置12に接続され、ホストコ
ンピュータとの通信のために選択的に接続される。記憶
制御装置12は好ましくは、IBM3990モデル3タ
イプ制御装置であり、IBMコーポレーションにより提
供されている。ホストコンピュータ14〜20は、典型
的にはIBM3090もしくはES9000モデルコン
ピュータ等のメインフレームシステムあるいは相当する
システムである。ホストコンピュータ14〜20は、1
〜4本のチャネルを介して記憶制御装置12に接続され
ている。例えば、ホストコンピュータ20は、チャネル
34(a)、34(b)、34(c)、34(d)によ
って記憶制御装置12に接続されている。チャネルに
は、並列データチャネル及び直列データチャネルの2つ
のタイプがある。ある光学的直列チャネルは、15キロ
メートルまでのデータ伝送に使用される。並列チャネル
は電気信号を利用し、通常は125メートル以上の距離
には使用されない。
【0024】図2は記憶制御装置12を詳細に表したも
のである。記憶制御装置12は2個の記憶クラスタ36
と38を有し、それぞれがホストコンピュータと直接ア
クセス記憶装置との間の選択的接続を行う。図1には4
台のホストコンピュータと6台の直接アクセス記憶装置
が描かれているが、記憶制御装置12はさらに多くのチ
ャネルと直接アクセス記憶装置を処理することができ
る。
のである。記憶制御装置12は2個の記憶クラスタ36
と38を有し、それぞれがホストコンピュータと直接ア
クセス記憶装置との間の選択的接続を行う。図1には4
台のホストコンピュータと6台の直接アクセス記憶装置
が描かれているが、記憶制御装置12はさらに多くのチ
ャネルと直接アクセス記憶装置を処理することができ
る。
【0025】ある1台のホストコンピュータシステムか
らのデータを、どの直接アクセス記憶装置にも記憶する
ことができる。またどの直接アクセス記憶装置からで
も、ある1台のホストコンピュータのためにデータを取
り出すことができる。ホストコンピュータが少なくとも
2本のチャネルによって接続されている場合は、それぞ
れが記憶クラスタ36、38に接続されている。同様
に、4本のチャネルがある場合は、2本が記憶クラスタ
36に、他の2本がもう1つの記憶クラスタ38に接続
されている。記憶制御装置12は、あるチャネルを介し
てホストコンピュータから要求を受信し、その同じホス
トコンピュータに接続されているどのチャネルを介して
も応答することができる。1台のホストコンピュータに
接続されているチャネルは、パス・グループと呼ばれて
いる。記憶制御装置12は、このパス・グループの知識
を、それぞれのホストコンピュータから受取り保有して
いる。
らのデータを、どの直接アクセス記憶装置にも記憶する
ことができる。またどの直接アクセス記憶装置からで
も、ある1台のホストコンピュータのためにデータを取
り出すことができる。ホストコンピュータが少なくとも
2本のチャネルによって接続されている場合は、それぞ
れが記憶クラスタ36、38に接続されている。同様
に、4本のチャネルがある場合は、2本が記憶クラスタ
36に、他の2本がもう1つの記憶クラスタ38に接続
されている。記憶制御装置12は、あるチャネルを介し
てホストコンピュータから要求を受信し、その同じホス
トコンピュータに接続されているどのチャネルを介して
も応答することができる。1台のホストコンピュータに
接続されているチャネルは、パス・グループと呼ばれて
いる。記憶制御装置12は、このパス・グループの知識
を、それぞれのホストコンピュータから受取り保有して
いる。
【0026】記憶制御装置12には、直接アクセス記憶
装置に対して4個のデータ・パス40、42、44、4
6が設けられている。各データ・パス40〜46は、そ
れぞれ1つの記憶パス処理装置48〜54に接続されて
いる。それぞれのデータ・パスは全ての直接アクセス記
憶装置につながっている。しかしながら、ただ1つのデ
ータ・パスのみが同時に直接アクセス記憶装置にアクセ
スすることができる。記憶制御装置12は、直接アクセ
ス記憶装置内のディスクの回転位置に基づいて直接アク
セス記憶装置とホストコンピュータとの間の切断と再接
続を同期させようとするので、記憶制御装置12は、実
質的にデータ転送トラフィック管理機構として動作して
いるように見える。
装置に対して4個のデータ・パス40、42、44、4
6が設けられている。各データ・パス40〜46は、そ
れぞれ1つの記憶パス処理装置48〜54に接続されて
いる。それぞれのデータ・パスは全ての直接アクセス記
憶装置につながっている。しかしながら、ただ1つのデ
ータ・パスのみが同時に直接アクセス記憶装置にアクセ
スすることができる。記憶制御装置12は、直接アクセ
ス記憶装置内のディスクの回転位置に基づいて直接アク
セス記憶装置とホストコンピュータとの間の切断と再接
続を同期させようとするので、記憶制御装置12は、実
質的にデータ転送トラフィック管理機構として動作して
いるように見える。
【0027】記憶制御装置12の内部は、独立に電源供
給される4つの区域に分割されている。2つの区域は記
憶クラスタ36と38である。3番目の区域には、キャ
ッシュ・メモリ58がある。4番目の区域には、不揮発
性記憶装置60がある。キャッシュ・メモリ58には、
頻繁にアクセスされるデータが記憶されている。不揮発
性記憶装置60は、メモリ・キャッシュの書込みと読取
りの応答時間を同程度にするために、記憶装置に書込ま
れるデータを一時的に記憶するために使用される。この
ような環境下で不揮発性記憶装置内にデータを記憶する
ことによって、実際には直接アクセス記憶装置へのデー
タ転送がまだ完了していないにもかかわらず、ホストに
対してその記憶動作が論理的に完了したことを示すこと
ができる。
給される4つの区域に分割されている。2つの区域は記
憶クラスタ36と38である。3番目の区域には、キャ
ッシュ・メモリ58がある。4番目の区域には、不揮発
性記憶装置60がある。キャッシュ・メモリ58には、
頻繁にアクセスされるデータが記憶されている。不揮発
性記憶装置60は、メモリ・キャッシュの書込みと読取
りの応答時間を同程度にするために、記憶装置に書込ま
れるデータを一時的に記憶するために使用される。この
ような環境下で不揮発性記憶装置内にデータを記憶する
ことによって、実際には直接アクセス記憶装置へのデー
タ転送がまだ完了していないにもかかわらず、ホストに
対してその記憶動作が論理的に完了したことを示すこと
ができる。
【0028】記憶クラスタ36と38は、機能的態様に
関して互いに鏡像となっている。従って、記憶クラスタ
36のみをここに記述することにする。記憶クラスタ3
6は、ホストコンピュータからのチャネルとの間の2個
のスイッチによって4個または8個のスイッチとして動
作するマルチパス記憶ディレクタ62と、記憶パス処理
装置48及び50を含む。記憶クラスタ36は、さらに
共用制御アレイ64を含み、これは記憶クラスタ38内
の共用制御アレイ66の内容を複製するものである。共
用制御アレイ64及び66は、直接アクセス記憶装置の
制御ブロックと共にパス・グループ情報を記憶する。ま
た、これらは後記する本発明による方法を実行する際に
利用されるデータ構造の制御ために使用される。
関して互いに鏡像となっている。従って、記憶クラスタ
36のみをここに記述することにする。記憶クラスタ3
6は、ホストコンピュータからのチャネルとの間の2個
のスイッチによって4個または8個のスイッチとして動
作するマルチパス記憶ディレクタ62と、記憶パス処理
装置48及び50を含む。記憶クラスタ36は、さらに
共用制御アレイ64を含み、これは記憶クラスタ38内
の共用制御アレイ66の内容を複製するものである。共
用制御アレイ64及び66は、直接アクセス記憶装置の
制御ブロックと共にパス・グループ情報を記憶する。ま
た、これらは後記する本発明による方法を実行する際に
利用されるデータ構造の制御ために使用される。
【0029】図3は、本発明による方法を実行する際に
利用される共用制御アレイ64及び66に記憶されたデ
ータ構造を示している。記憶制御装置12は、どの記憶
パス処理装置48、50、52、54によっても、ホス
トコンピュータによる直接アクセス記憶装置へのアクセ
ス要求を受信し応答することができる。記憶パス処理装
置は4個設けられているが、16台のコンピュータを記
憶制御装置12に接続することが可能である。記憶パス
処理装置は、同時にただ1つのデータ通信リンクを処理
するので、ホストコンピュータが、絶え間なく直接アク
セス記憶装置へアクセスを試みても記憶制御装置12の
全ての記憶パス処理装置がビジー中のこともある。記憶
パス処理装置が使用可能である時でも、2台以上のホス
トコンピュータが1台の直接アクセス記憶装置へアクセ
スしようとすることがある。各ホストコンピュータの処
理速度、及び記憶制御装置と各ホストコンピュータ間の
チャネル上の伝送時間の差によって、ある複数のコンピ
ュータが直接アクセス記憶装置22〜32へのアクセス
を獲得することが有利になる可能性がある。その結果、
データ処理システム10の中の残りのメインフレームコ
ンピュータによって、非常に機能が低下することにな
る。
利用される共用制御アレイ64及び66に記憶されたデ
ータ構造を示している。記憶制御装置12は、どの記憶
パス処理装置48、50、52、54によっても、ホス
トコンピュータによる直接アクセス記憶装置へのアクセ
ス要求を受信し応答することができる。記憶パス処理装
置は4個設けられているが、16台のコンピュータを記
憶制御装置12に接続することが可能である。記憶パス
処理装置は、同時にただ1つのデータ通信リンクを処理
するので、ホストコンピュータが、絶え間なく直接アク
セス記憶装置へアクセスを試みても記憶制御装置12の
全ての記憶パス処理装置がビジー中のこともある。記憶
パス処理装置が使用可能である時でも、2台以上のホス
トコンピュータが1台の直接アクセス記憶装置へアクセ
スしようとすることがある。各ホストコンピュータの処
理速度、及び記憶制御装置と各ホストコンピュータ間の
チャネル上の伝送時間の差によって、ある複数のコンピ
ュータが直接アクセス記憶装置22〜32へのアクセス
を獲得することが有利になる可能性がある。その結果、
データ処理システム10の中の残りのメインフレームコ
ンピュータによって、非常に機能が低下することにな
る。
【0030】本発明によるシステム及び方法は、ホスト
コンピュータ14〜20による記憶制御装置12へのア
クセスと直接アクセス記憶装置22〜32のそれぞれへ
のアクセスの双方を調整することを目的とする。ホスト
コンピュータ14が、使用不可能な直接アクセス記憶装
置に対してアクセスを要求した場合、あるいは記憶クラ
スタの全ての記憶パス処理装置が使用中であるとき記憶
クラスタ36に対してアクセス要求した場合、そのアク
セス要求がされたチャネルを介してビジー信号が返され
る。記憶制御装置12は常套的にこれらの手順を踏み、
要求された装置あるいは記憶パス処理装置が使用可能に
なれば直ちに、いわゆるデバイスエンド信号あるいは制
御装置エンド信号をそれぞれ出す。本発明は、デバイス
エンド信号と制御装置エンド信号の発生を調停するため
の方法を提供し、ホストコンピュータによって要求され
た記憶装置あるいは記憶制御装置が使用可能であるにも
かかわらず、ある選択されたホストコンピュータに対し
てはビジー信号を返すものである。この方法は、共用制
御アレイ64と66の中に保持されているチャネルと記
憶装置の状態情報に基づいて行われる。
コンピュータ14〜20による記憶制御装置12へのア
クセスと直接アクセス記憶装置22〜32のそれぞれへ
のアクセスの双方を調整することを目的とする。ホスト
コンピュータ14が、使用不可能な直接アクセス記憶装
置に対してアクセスを要求した場合、あるいは記憶クラ
スタの全ての記憶パス処理装置が使用中であるとき記憶
クラスタ36に対してアクセス要求した場合、そのアク
セス要求がされたチャネルを介してビジー信号が返され
る。記憶制御装置12は常套的にこれらの手順を踏み、
要求された装置あるいは記憶パス処理装置が使用可能に
なれば直ちに、いわゆるデバイスエンド信号あるいは制
御装置エンド信号をそれぞれ出す。本発明は、デバイス
エンド信号と制御装置エンド信号の発生を調停するため
の方法を提供し、ホストコンピュータによって要求され
た記憶装置あるいは記憶制御装置が使用可能であるにも
かかわらず、ある選択されたホストコンピュータに対し
てはビジー信号を返すものである。この方法は、共用制
御アレイ64と66の中に保持されているチャネルと記
憶装置の状態情報に基づいて行われる。
【0031】通常の動作におけるコンテンション期間の
間に、記憶クラスタ36へのアクセスを拒絶されたチャ
ネルはブロック70に制御装置エンド待ちとしてリスト
される。通常は記憶パス処理装置48もしくは50が解
放されると、ブロック70にリストされた全てのチャネ
ルに制御装置エンド信号が出される。制御装置エンド信
号は、これを受信したチャネルに対して記憶クラスタ3
6の記憶パス処理装置が開いていることを示すものであ
る。制御装置エンド信号を受信するホストコンピュータ
は、これを受信しないホストコンピュータよりも、開い
ている記憶パス処理装置を獲得するのに有利である。し
かしながら制御装置エンド信号を受信しても、そのホス
トコンピュータが、制御装置エンド信号を受信しないホ
ストコンピュータに先んじて記憶制御装置の制御を獲得
することは保証されない。応答時間が特に長いチャネル
の末端にあるホストコンピュータの場合、上記の方法に
よっても尚、記憶制御装置の制御を獲得することが非常
に困難である。顕著な要求を行っているチャネルであっ
ても、他のチャネルより有利性を与えられてはいない。
間に、記憶クラスタ36へのアクセスを拒絶されたチャ
ネルはブロック70に制御装置エンド待ちとしてリスト
される。通常は記憶パス処理装置48もしくは50が解
放されると、ブロック70にリストされた全てのチャネ
ルに制御装置エンド信号が出される。制御装置エンド信
号は、これを受信したチャネルに対して記憶クラスタ3
6の記憶パス処理装置が開いていることを示すものであ
る。制御装置エンド信号を受信するホストコンピュータ
は、これを受信しないホストコンピュータよりも、開い
ている記憶パス処理装置を獲得するのに有利である。し
かしながら制御装置エンド信号を受信しても、そのホス
トコンピュータが、制御装置エンド信号を受信しないホ
ストコンピュータに先んじて記憶制御装置の制御を獲得
することは保証されない。応答時間が特に長いチャネル
の末端にあるホストコンピュータの場合、上記の方法に
よっても尚、記憶制御装置の制御を獲得することが非常
に困難である。顕著な要求を行っているチャネルであっ
ても、他のチャネルより有利性を与えられてはいない。
【0032】チャネルについての別の状態レコードによ
って、より高度な優先方式が可能になる。記憶制御装置
12へのアクセスのコンテンション期間毎に、各チャネ
ルに対するアクセス拒絶の発生を積算した制御カウンタ
(CUECNTR)が、データ構造68中に保持され
る。データ構造68中の制御カウンタは、ブロック70
内のチャネルのリストに基づいて活動状態になる。記憶
パス処理装置48〜54の内の1つが解放される度に、
その時活動状態にある制御カウンタにインデックスを付
与する。あるチャネルについての制御カウンタは、その
チャネルが記憶制御装置12へのアクセスを獲得すれ
ば、直ちに再初期化される。そのチャネル自体は、制御
装置エンド信号が与えられるとブロック70のリストか
ら除かれる。
って、より高度な優先方式が可能になる。記憶制御装置
12へのアクセスのコンテンション期間毎に、各チャネ
ルに対するアクセス拒絶の発生を積算した制御カウンタ
(CUECNTR)が、データ構造68中に保持され
る。データ構造68中の制御カウンタは、ブロック70
内のチャネルのリストに基づいて活動状態になる。記憶
パス処理装置48〜54の内の1つが解放される度に、
その時活動状態にある制御カウンタにインデックスを付
与する。あるチャネルについての制御カウンタは、その
チャネルが記憶制御装置12へのアクセスを獲得すれ
ば、直ちに再初期化される。そのチャネル自体は、制御
装置エンド信号が与えられるとブロック70のリストか
ら除かれる。
【0033】制御カウンタ68のブロック中の活動状態
にある制御カウンタにインデックスを付与した後、制御
カウンタは、共用制御アレイ64からのLVL1(7
2)及びLVL2(74)とラベルされた閾値と比較さ
れる。これらの閾値は、記憶制御装置12へのアクセス
についての優先レベルを規定する。ブロック70の問合
わせに先だって、制御装置エンドマスク(CUEMAS
K)78のエントリがチェックされる。制御装置エンド
マスク78がゼロでない状態は、アクセスブロック70
に顕著な要求がある場合と重複する。制御装置エンドマ
スク78がエントリを有しているとき、それらのエント
リによって表されているチャネルのみが、記憶制御装置
12内の記憶パス処理装置の解放による制御装置エンド
信号を受信する。あるチャネルの制御カウンタがLVL
1に達すると、そのチャネルを表すマスク内にビットを
セットすることによって、そのチャネルが制御装置エン
ドマスク78にリストされる。制御装置エンドマスク7
8は、ブロック70よりも排他的であるので、ただ顕著
な要求をするだけでそのリストされたチャネルに有利性
を与える。
にある制御カウンタにインデックスを付与した後、制御
カウンタは、共用制御アレイ64からのLVL1(7
2)及びLVL2(74)とラベルされた閾値と比較さ
れる。これらの閾値は、記憶制御装置12へのアクセス
についての優先レベルを規定する。ブロック70の問合
わせに先だって、制御装置エンドマスク(CUEMAS
K)78のエントリがチェックされる。制御装置エンド
マスク78がゼロでない状態は、アクセスブロック70
に顕著な要求がある場合と重複する。制御装置エンドマ
スク78がエントリを有しているとき、それらのエント
リによって表されているチャネルのみが、記憶制御装置
12内の記憶パス処理装置の解放による制御装置エンド
信号を受信する。あるチャネルの制御カウンタがLVL
1に達すると、そのチャネルを表すマスク内にビットを
セットすることによって、そのチャネルが制御装置エン
ドマスク78にリストされる。制御装置エンドマスク7
8は、ブロック70よりも排他的であるので、ただ顕著
な要求をするだけでそのリストされたチャネルに有利性
を与える。
【0034】優先レベルより高い第2のレベルは、制御
カウンタがブロック74からのLVL2に達した場合で
ある。あるチャネルに対する制御カウンタがLVL2に
達し、さらに、顕著な要求をしているチャネルへのアク
セス拒絶もしくはアクセス失敗が発生していることを示
す場合、チャネルブロック80内のビットがハイにセッ
トされる。制御装置ブロックマスク(CUBMASK)
82はチャネルブロック80の鏡像である。チャネルブ
ロック80は、入出力開始信号(即ち、アクセス要求)
を受信する毎に参照される。チャネルブロック80がゼ
ロでないとき、制御装置ブロックマスク82を参照し、
要求を受信したチャネルを介してアクセスができるかど
うかを判断する。言い替えると、制御カウンタがLVL
2のレベルにあるチャネルのみが記憶制御装置12への
アクセスを獲得することができる。残り全てのチャネル
は締め出される。
カウンタがブロック74からのLVL2に達した場合で
ある。あるチャネルに対する制御カウンタがLVL2に
達し、さらに、顕著な要求をしているチャネルへのアク
セス拒絶もしくはアクセス失敗が発生していることを示
す場合、チャネルブロック80内のビットがハイにセッ
トされる。制御装置ブロックマスク(CUBMASK)
82はチャネルブロック80の鏡像である。チャネルブ
ロック80は、入出力開始信号(即ち、アクセス要求)
を受信する毎に参照される。チャネルブロック80がゼ
ロでないとき、制御装置ブロックマスク82を参照し、
要求を受信したチャネルを介してアクセスができるかど
うかを判断する。言い替えると、制御カウンタがLVL
2のレベルにあるチャネルのみが記憶制御装置12への
アクセスを獲得することができる。残り全てのチャネル
は締め出される。
【0035】あるチャネルが、他の全てではないがほと
んどのチャネルが記憶制御装置12の制御の獲得から締
め出された後でも、アクセスを獲得できない場合は、お
そらくチャネルもしくはそのホストコンピュータに何ら
かの不都合があると考えられる。記憶制御装置12の制
御獲得の失敗を繰り返すと、そのチャネルについての制
御カウンタはいずれLVL3(76)にインデックスを
付与される。制御カウンタがLVL3に達したならば、
その制御カウンタはゼロにリセットされる。
んどのチャネルが記憶制御装置12の制御の獲得から締
め出された後でも、アクセスを獲得できない場合は、お
そらくチャネルもしくはそのホストコンピュータに何ら
かの不都合があると考えられる。記憶制御装置12の制
御獲得の失敗を繰り返すと、そのチャネルについての制
御カウンタはいずれLVL3(76)にインデックスを
付与される。制御カウンタがLVL3に達したならば、
その制御カウンタはゼロにリセットされる。
【0036】制御装置ブロックカウンタ(CUBMCT
R)84は、制御装置ブロックマスク82が活動状態に
なった後の、記憶制御装置12への連続したアクセス拒
絶を保持している。この制御装置ブロックカウンタ84
が最大許容値86を越えたならば、制御装置ブロックマ
スク82がクリアされ、制御装置ブロックカウンタ84
及び全ての制御カウンタ68が再初期化される。
R)84は、制御装置ブロックマスク82が活動状態に
なった後の、記憶制御装置12への連続したアクセス拒
絶を保持している。この制御装置ブロックカウンタ84
が最大許容値86を越えたならば、制御装置ブロックマ
スク82がクリアされ、制御装置ブロックカウンタ84
及び全ての制御カウンタ68が再初期化される。
【0037】アクセスのコンテンション期間中、特定の
記憶装置、例えば記憶装置22へのアクセスは、非順序
的ラウンドロビン方式に類似した方法で処理される。言
い替えると、記憶装置へアクセス要求している各チャネ
ルは、いずれかのチャネルが再びアクセスを獲得する前
にアクセスを獲得できる。チャネルによるアクセス要求
は、2個のブロック、即ちフロント・キュー88とバッ
ク・キュー90に分割される。フロント・キュー88内
の全てのチャネルは、バック・キュー90内のどのチャ
ネルよりも先に、記憶装置へアクセスすることができ
る。フロント・キュー88への許可は、呼出しリスト9
2を参照することによって制御される。初期には、全て
のチャネルがフロント・キュー88へ入れられる。即
ち、全てのチャネルが呼出しリスト92にリストされて
いる。コンテンション期間中、ある装置要求が満たされ
たならば、そのチャネルは許可されたチャネルの呼出し
リスト92から除かれる。その後、その除かれたチャネ
ルからアクセス要求があった場合、その要求元であるホ
ストコンピュータへはデバイスビジー信号が返され、そ
のチャネルは顕著な要求を行っているとしてバック・キ
ュー90に記録することによりリストする。各記憶装置
について固有のフロント・キュー88、バック・キュー
90、及び呼出しリスト92がある。
記憶装置、例えば記憶装置22へのアクセスは、非順序
的ラウンドロビン方式に類似した方法で処理される。言
い替えると、記憶装置へアクセス要求している各チャネ
ルは、いずれかのチャネルが再びアクセスを獲得する前
にアクセスを獲得できる。チャネルによるアクセス要求
は、2個のブロック、即ちフロント・キュー88とバッ
ク・キュー90に分割される。フロント・キュー88内
の全てのチャネルは、バック・キュー90内のどのチャ
ネルよりも先に、記憶装置へアクセスすることができ
る。フロント・キュー88への許可は、呼出しリスト9
2を参照することによって制御される。初期には、全て
のチャネルがフロント・キュー88へ入れられる。即
ち、全てのチャネルが呼出しリスト92にリストされて
いる。コンテンション期間中、ある装置要求が満たされ
たならば、そのチャネルは許可されたチャネルの呼出し
リスト92から除かれる。その後、その除かれたチャネ
ルからアクセス要求があった場合、その要求元であるホ
ストコンピュータへはデバイスビジー信号が返され、そ
のチャネルは顕著な要求を行っているとしてバック・キ
ュー90に記録することによりリストする。各記憶装置
について固有のフロント・キュー88、バック・キュー
90、及び呼出しリスト92がある。
【0038】パス・グループ・リスト94もまた、共用
制御アレイ64に保持されている。ホストコンピュータ
は、4本までのチャネルによって記憶制御装置12に接
続されている。記憶制御装置12をいずれか特定のホス
トコンピュータに接続しているチャネル群が、パス・グ
ループを構成する。パス・グループ及びその構成チャネ
ルは、パス・グループ・リスト94に記録される。前述
したように、記憶制御装置12は、要求を受信したチャ
ネルとは異なるチャネルを介して要求に応答することが
可能である。パス・グループ情報を利用して、上記のデ
ータ構造のいずれかの中のチャネルのリストを付加もし
くは除去することは、パス・グループ情報のリストを付
加もしくは除去することをも含むように拡張することが
できる。
制御アレイ64に保持されている。ホストコンピュータ
は、4本までのチャネルによって記憶制御装置12に接
続されている。記憶制御装置12をいずれか特定のホス
トコンピュータに接続しているチャネル群が、パス・グ
ループを構成する。パス・グループ及びその構成チャネ
ルは、パス・グループ・リスト94に記録される。前述
したように、記憶制御装置12は、要求を受信したチャ
ネルとは異なるチャネルを介して要求に応答することが
可能である。パス・グループ情報を利用して、上記のデ
ータ構造のいずれかの中のチャネルのリストを付加もし
くは除去することは、パス・グループ情報のリストを付
加もしくは除去することをも含むように拡張することが
できる。
【0039】図4は、ホストコンピュータによるチャネ
ルを介した記憶制御装置12へのアクセスの調停を示す
論理流れ図である。このプロセス、及び図5〜9に関し
て後記するプロセスは、記憶制御装置12内の各記憶パ
ス処理装置によって実行される。このプロセスはステッ
プ100において、選択(要求)チャネルを介したホス
トコンピュータからの入出力開始命令を受信することに
より開始される。次に判断ステップ102において、制
御装置ブロックマスク(CUBMASK)82内のその
チャネルのビットがオンであるかどうかを判断すること
により、そのチャネルが記憶制御装置へのアクセスを許
可されているかどうかを判断する。もしオンでなけれ
ば、そのチャネルは記憶制御装置12にアクセスでき、
ステップ104が実行される。ステップ104において
要求チャネルについての制御カウンタ68が、クリアさ
れ再初期化される。ステップ106は通常の処理の続行
を示しており、ここで入出力動作のために記憶装置への
接続が実行される。
ルを介した記憶制御装置12へのアクセスの調停を示す
論理流れ図である。このプロセス、及び図5〜9に関し
て後記するプロセスは、記憶制御装置12内の各記憶パ
ス処理装置によって実行される。このプロセスはステッ
プ100において、選択(要求)チャネルを介したホス
トコンピュータからの入出力開始命令を受信することに
より開始される。次に判断ステップ102において、制
御装置ブロックマスク(CUBMASK)82内のその
チャネルのビットがオンであるかどうかを判断すること
により、そのチャネルが記憶制御装置へのアクセスを許
可されているかどうかを判断する。もしオンでなけれ
ば、そのチャネルは記憶制御装置12にアクセスでき、
ステップ104が実行される。ステップ104において
要求チャネルについての制御カウンタ68が、クリアさ
れ再初期化される。ステップ106は通常の処理の続行
を示しており、ここで入出力動作のために記憶装置への
接続が実行される。
【0040】そのチャネルに対する制御装置ブロックマ
スク82がオンであった場合、ステップ102からステ
ップ108に続く。ステップ108の実行によって、制
御装置ビジー信号がそのチャネルを介して要求ホストコ
ンピュータに返される。次にステップ110において制
御装置ブロックカウンタ(CUBMCTR)84が加算
される。制御装置ブロックカウンタ84は、ビジー状態
が要求チャネルに連続して与えられた回数を計数するも
のである。もしもどのチャネルにも入出力動作が許可さ
れない場合は、制御装置ブロックカウンタ84は最大許
容値86に達することになり、これがステップ112に
おいて検知される。ステップ112からのイエスの枝
は、ステップ114の実行につながり、ここで制御装置
ブロックカウンタ84及び制御装置ブロックマスク82
はクリアされ、同様に全てのチャネルについての制御カ
ウンタ68もクリアされる。言い替えるならば、全ての
チャネルに対して記憶制御装置へのアクセスの機会を与
えることにより、この調停方式はリセットされる。ステ
ップ114から、あるいはステップ112からのノーの
枝から、この処理は記憶制御装置の基本手順に戻る。
スク82がオンであった場合、ステップ102からステ
ップ108に続く。ステップ108の実行によって、制
御装置ビジー信号がそのチャネルを介して要求ホストコ
ンピュータに返される。次にステップ110において制
御装置ブロックカウンタ(CUBMCTR)84が加算
される。制御装置ブロックカウンタ84は、ビジー状態
が要求チャネルに連続して与えられた回数を計数するも
のである。もしもどのチャネルにも入出力動作が許可さ
れない場合は、制御装置ブロックカウンタ84は最大許
容値86に達することになり、これがステップ112に
おいて検知される。ステップ112からのイエスの枝
は、ステップ114の実行につながり、ここで制御装置
ブロックカウンタ84及び制御装置ブロックマスク82
はクリアされ、同様に全てのチャネルについての制御カ
ウンタ68もクリアされる。言い替えるならば、全ての
チャネルに対して記憶制御装置へのアクセスの機会を与
えることにより、この調停方式はリセットされる。ステ
ップ114から、あるいはステップ112からのノーの
枝から、この処理は記憶制御装置の基本手順に戻る。
【0041】図5は、記憶制御装置12によって実行さ
れる処理の論理流れ図であり、記憶制御装置へのアクセ
スにおけるチャネル同士のコンテンションを解決するた
めのものである。この処理は、記憶制御装置12の記憶
パス処理装置が解放される毎に開始される。次にステッ
プ122で、記憶制御装置への顕著なアクセス要求を有
する各チャネル(即ちブロック70のチャネル)につい
ての制御カウンタが加算される。
れる処理の論理流れ図であり、記憶制御装置へのアクセ
スにおけるチャネル同士のコンテンションを解決するた
めのものである。この処理は、記憶制御装置12の記憶
パス処理装置が解放される毎に開始される。次にステッ
プ122で、記憶制御装置への顕著なアクセス要求を有
する各チャネル(即ちブロック70のチャネル)につい
ての制御カウンタが加算される。
【0042】次に、各チャネルについての制御カウンタ
68が一連の優先閾値と比較され、アクセスについてあ
るチャネルを優先する動作モードを設定するかどうかを
判断する。比較を行うループは、判断ブロック124で
制御される。ステップ126において、制御カウンタは
最も高い閾値LVL3(76)と比較され、該当すれば
エラー状態と解釈される。LVL3(76)に該当すれ
ば、ステップ128が実行され、そのチャネルについて
の制御カウンタが再初期化される。LVL3(76)に
該当しなければ、ステップ130が実行され、そのチャ
ネルについての制御カウンタは、次に高い閾値LVL2
(74)と比較される。もし、LVL2に該当すれば、
制御カウンタがLVL2より小さい全てのチャネルがア
クセスの受信をブロックされる。これは、チャネルブロ
ック80のアレイ内の、LVL2に制御カウンタを有す
るチャネルについてのビットをオンにセットすることに
よりキーを掛けることである(ステップ132)。ある
チャネルについての制御カウンタが、LVL3にもLV
L2にも該当しなかったならば、ステップ134におい
て制御カウンタは最低の閾値LVL1(72)と比較さ
れる。もし制御カウンタがこの閾値に該当すれば、その
チャネルを表すビットが制御装置エンドマスク(CUE
MASK)78内にセットされる(ステップ136)。
これによって、どのチャネルが制御装置エンド信号を受
けるべきかを判断する。ステップ134及びステップ1
28、132、及び136からののノーの枝に沿って、
処理はループ制御のためにステップ124に戻される。
68が一連の優先閾値と比較され、アクセスについてあ
るチャネルを優先する動作モードを設定するかどうかを
判断する。比較を行うループは、判断ブロック124で
制御される。ステップ126において、制御カウンタは
最も高い閾値LVL3(76)と比較され、該当すれば
エラー状態と解釈される。LVL3(76)に該当すれ
ば、ステップ128が実行され、そのチャネルについて
の制御カウンタが再初期化される。LVL3(76)に
該当しなければ、ステップ130が実行され、そのチャ
ネルについての制御カウンタは、次に高い閾値LVL2
(74)と比較される。もし、LVL2に該当すれば、
制御カウンタがLVL2より小さい全てのチャネルがア
クセスの受信をブロックされる。これは、チャネルブロ
ック80のアレイ内の、LVL2に制御カウンタを有す
るチャネルについてのビットをオンにセットすることに
よりキーを掛けることである(ステップ132)。ある
チャネルについての制御カウンタが、LVL3にもLV
L2にも該当しなかったならば、ステップ134におい
て制御カウンタは最低の閾値LVL1(72)と比較さ
れる。もし制御カウンタがこの閾値に該当すれば、その
チャネルを表すビットが制御装置エンドマスク(CUE
MASK)78内にセットされる(ステップ136)。
これによって、どのチャネルが制御装置エンド信号を受
けるべきかを判断する。ステップ134及びステップ1
28、132、及び136からののノーの枝に沿って、
処理はループ制御のためにステップ124に戻される。
【0043】全てのチャネルについての制御カウンタが
優先閾値と比較された後、ステップ138が実行され、
記憶パス処理装置が使用可能であることを示す制御装置
エンド信号を優先的に与えるかどうかを判断する。LV
L1(72)に達している制御カウンタが無い場合、制
御装置エンドマスク78はゼロになり、制御装置エンド
信号が顕著な要求をしている全てのチャネルに与えられ
る(ステップ140)。ステップ136で1つ以上のビ
ットがハイにセットされている場合、制御装置エンドマ
スク78がゼロでなくなる。この状況下では、優先レベ
ルLVL1(72)にあるチャネルのみが制御装置エン
ド信号を受信する(ステップ142)。
優先閾値と比較された後、ステップ138が実行され、
記憶パス処理装置が使用可能であることを示す制御装置
エンド信号を優先的に与えるかどうかを判断する。LV
L1(72)に達している制御カウンタが無い場合、制
御装置エンドマスク78はゼロになり、制御装置エンド
信号が顕著な要求をしている全てのチャネルに与えられ
る(ステップ140)。ステップ136で1つ以上のビ
ットがハイにセットされている場合、制御装置エンドマ
スク78がゼロでなくなる。この状況下では、優先レベ
ルLVL1(72)にあるチャネルのみが制御装置エン
ド信号を受信する(ステップ142)。
【0044】次に、ステップ144が実行され、チャネ
ルブロック80のアレイがゼロでないかどうかを判断す
る。もしゼロであれば、ステップ146が実行されて制
御装置ブロックマスク82がゼロになるようにセットす
る。もしチャネルブロック80のアレイがゼロで無けれ
ば、ステップ148が実行され制御装置ブロックマスク
82がチャネルブロック80のアレイの反転になるよう
にセットされる。その後この副プロセスから出る。
ルブロック80のアレイがゼロでないかどうかを判断す
る。もしゼロであれば、ステップ146が実行されて制
御装置ブロックマスク82がゼロになるようにセットす
る。もしチャネルブロック80のアレイがゼロで無けれ
ば、ステップ148が実行され制御装置ブロックマスク
82がチャネルブロック80のアレイの反転になるよう
にセットされる。その後この副プロセスから出る。
【0045】各記憶装置へのアクセスの調停は、そのア
クセスによるコンテンションの解決が同じ手順に従うに
も関わらず、別々に与えられる。図6は、1つの記憶装
置へのアクセスの調停を処理するプロセスの論理流れ図
を示している。記憶制御装置12の記憶パス処理装置の
いずれかが記憶装置への入出力開始信号を受信すると
(ステップ150)、ステップ152が実行され、入出
力開始信号を伝えているチャネルが、許可されたチャネ
ルであるかどうか(即ち、そのチャネルか呼出しリスト
92にあるか)を判断する。要求チャネルが呼出しリス
トに無い場合(ステップ152のノーの枝)、そのチャ
ネルはバック・キュー90にリストされる(ステップ1
54)。チャネルが呼出しリスト92にある場合、その
要求した記憶装置が使用可能のときその記憶装置へのア
クセスを許可される(ステップ156)。記憶装置が空
いていれば(ステップ156のイエスの枝)、その記憶
装置へのアクセスが許可される(ステップ158)。そ
の記憶装置が空いていなければ(ステップ156のイエ
スの枝)、要求チャネルは、その記憶装置についてのフ
ロント・キュー88に入れられる(ステップ160)。
このプロセスを終了する前に、ステップ154もしくは
ステップ160の次に、要求チャネルに装置ビジー信号
が返される(ステップ161)。
クセスによるコンテンションの解決が同じ手順に従うに
も関わらず、別々に与えられる。図6は、1つの記憶装
置へのアクセスの調停を処理するプロセスの論理流れ図
を示している。記憶制御装置12の記憶パス処理装置の
いずれかが記憶装置への入出力開始信号を受信すると
(ステップ150)、ステップ152が実行され、入出
力開始信号を伝えているチャネルが、許可されたチャネ
ルであるかどうか(即ち、そのチャネルか呼出しリスト
92にあるか)を判断する。要求チャネルが呼出しリス
トに無い場合(ステップ152のノーの枝)、そのチャ
ネルはバック・キュー90にリストされる(ステップ1
54)。チャネルが呼出しリスト92にある場合、その
要求した記憶装置が使用可能のときその記憶装置へのア
クセスを許可される(ステップ156)。記憶装置が空
いていれば(ステップ156のイエスの枝)、その記憶
装置へのアクセスが許可される(ステップ158)。そ
の記憶装置が空いていなければ(ステップ156のイエ
スの枝)、要求チャネルは、その記憶装置についてのフ
ロント・キュー88に入れられる(ステップ160)。
このプロセスを終了する前に、ステップ154もしくは
ステップ160の次に、要求チャネルに装置ビジー信号
が返される(ステップ161)。
【0046】図7は、ステップ162において記憶装置
のアクセス終了信号を受信したことに対応する記憶装置
アクセス調停プロセスを示したものである。ステップ1
64において、フロント・キューが空かどうかを判断す
る。フロント・キューにエントリがあれば(ノーの
枝)、ステップ166が実行されI/O動作を完了した
チャネル(及びそのチャネルと同じパス・グループに属
する全チャネル)を呼出しリスト92から除く。もしフ
ロント・キューが空であれば(イエスの枝)、ステップ
168が実行されバック・キューの内容をフロント・キ
ューへ移す。次にステップ170において、バック・キ
ューを空にする(即ち、ゼロにセットする)。ステップ
172において、呼出しリスト92が全てのチャネルを
含むようにセットされる。ステップ172またはステッ
プ166の後、最後のステップ173が実行されフロン
ト・キュー88内の全てのチャネルに割込みをする。そ
の後この副プロセスから出る。
のアクセス終了信号を受信したことに対応する記憶装置
アクセス調停プロセスを示したものである。ステップ1
64において、フロント・キューが空かどうかを判断す
る。フロント・キューにエントリがあれば(ノーの
枝)、ステップ166が実行されI/O動作を完了した
チャネル(及びそのチャネルと同じパス・グループに属
する全チャネル)を呼出しリスト92から除く。もしフ
ロント・キューが空であれば(イエスの枝)、ステップ
168が実行されバック・キューの内容をフロント・キ
ューへ移す。次にステップ170において、バック・キ
ューを空にする(即ち、ゼロにセットする)。ステップ
172において、呼出しリスト92が全てのチャネルを
含むようにセットされる。ステップ172またはステッ
プ166の後、最後のステップ173が実行されフロン
ト・キュー88内の全てのチャネルに割込みをする。そ
の後この副プロセスから出る。
【0047】図8は、記憶制御装置が選択開始したこと
に対応する記憶パス処理装置による処理を示した論理流
れ図である。ステップ178において記憶制御装置12
は、ステップ173もしくはステップ181の割込みに
応答したチャネルに対してオードデバイスエンド(OD
E)信号を与える。その後、ステップ180においてO
DE信号を与えられたチャネルがフロント・キューから
除かれる。もしそのチャネルがパス・グループのメンバ
ーであれば、そのパス・グループの残りのチャネルもフ
ロント・キュー及びバック・キューから除かれる。
に対応する記憶パス処理装置による処理を示した論理流
れ図である。ステップ178において記憶制御装置12
は、ステップ173もしくはステップ181の割込みに
応答したチャネルに対してオードデバイスエンド(OD
E)信号を与える。その後、ステップ180においてO
DE信号を与えられたチャネルがフロント・キューから
除かれる。もしそのチャネルがパス・グループのメンバ
ーであれば、そのパス・グループの残りのチャネルもフ
ロント・キュー及びバック・キューから除かれる。
【0048】図9は、アクセス調停プロセスにおけるフ
ェールセーフ保護を示した論理流れ図である。ホストコ
ンピュータがある装置のフロント・キューにリストされ
たチャネルを有していながらそのチャネルへの割込みに
応答することができないときは、デッドチャネルによっ
て、その装置についてのバック・キュー内のチャネルが
フロント・キューへ進むことが妨げられている可能性が
ある。従って、フロント・キューを重複させる方法が提
供される。ホストであるメインフレームコンピュータ
は、長時間リセット・アリージェンス(傾倒)命令を発
生し続けている。この命令を利用して、フェールセーフ
副プロセスが開始される(ステップ182)。ステップ
184において、その記憶装置への顕著なアリージェン
ス(傾倒)が存在するかどうかを判断する。もし存在す
れば、副プロセスから出てその命令の通常の処理を行
う。もしアリージェンスが存在しなければ、その状況は
この副プロセスが解決するべきものと解釈される。ステ
ップ184のノーの枝に沿って、フロント・キュー内の
全てのチャネルに対してデバイスエンド信号及びエラー
表示がセットされる(ステップ184)。次にステップ
188において、フロント・キューが、バック・キュー
と同じになるようにセットされバック・キューは空にな
る。次にステップ190において許可されたチャネルの
呼出しリストが、全てのチャネルを含むようにセットさ
れる。その後この副プロセスを出て通常の処理に戻る。
ェールセーフ保護を示した論理流れ図である。ホストコ
ンピュータがある装置のフロント・キューにリストされ
たチャネルを有していながらそのチャネルへの割込みに
応答することができないときは、デッドチャネルによっ
て、その装置についてのバック・キュー内のチャネルが
フロント・キューへ進むことが妨げられている可能性が
ある。従って、フロント・キューを重複させる方法が提
供される。ホストであるメインフレームコンピュータ
は、長時間リセット・アリージェンス(傾倒)命令を発
生し続けている。この命令を利用して、フェールセーフ
副プロセスが開始される(ステップ182)。ステップ
184において、その記憶装置への顕著なアリージェン
ス(傾倒)が存在するかどうかを判断する。もし存在す
れば、副プロセスから出てその命令の通常の処理を行
う。もしアリージェンスが存在しなければ、その状況は
この副プロセスが解決するべきものと解釈される。ステ
ップ184のノーの枝に沿って、フロント・キュー内の
全てのチャネルに対してデバイスエンド信号及びエラー
表示がセットされる(ステップ184)。次にステップ
188において、フロント・キューが、バック・キュー
と同じになるようにセットされバック・キューは空にな
る。次にステップ190において許可されたチャネルの
呼出しリストが、全てのチャネルを含むようにセットさ
れる。その後この副プロセスを出て通常の処理に戻る。
【0049】
【発明の効果】本発明によって、データ処理システムに
おける複数のコンピュータから複数の直接アクセス記憶
装置へのアクセスを調停するシステム及び方法が提供さ
れる。
おける複数のコンピュータから複数の直接アクセス記憶
装置へのアクセスを調停するシステム及び方法が提供さ
れる。
【図1】本発明による方法及びシステムを実施するため
に使用可能なデータ処理システムのハイレベルによるブ
ロック図である。
に使用可能なデータ処理システムのハイレベルによるブ
ロック図である。
【図2】図1のデータ処理システムの記憶制御装置のハ
イレベルによるブロック図である。
イレベルによるブロック図である。
【図3】本発明の実施例に使用されるメモリのデータ構
造の図である。
造の図である。
【図4】ホストコンピュータからの入出力開始信号に対
する記憶制御装置のプログラムされた応答を示した論理
流れ図である。
する記憶制御装置のプログラムされた応答を示した論理
流れ図である。
【図5】ホストコンピュータによる記憶制御装置の解放
に対する記憶制御装置のプログラムされた応答を示した
論理流れ図である。
に対する記憶制御装置のプログラムされた応答を示した
論理流れ図である。
【図6】ホストコンピュータから直接アクセス記憶装置
に関する入出力開始信号に対する記憶制御装置のプログ
ラムされた応答を示した論理流れ図である。
に関する入出力開始信号に対する記憶制御装置のプログ
ラムされた応答を示した論理流れ図である。
【図7】入出力動作の終了を受信した記憶制御装置のプ
ログラムされた応答を示した流れ図である。
ログラムされた応答を示した流れ図である。
【図8】記憶制御装置が選択開始したことに対応する記
憶制御装置におけるプログラムされた応答を示した論理
流れ図である。
憶制御装置におけるプログラムされた応答を示した論理
流れ図である。
【図9】エラー保護ルーチンを示した論理流れ図であ
る。
る。
10 データ処理システム 12 記憶制御装置 14、16、18、20 ホストコンピュータ 22、24、26、28、30、32 直接アクセス記
憶装置 34 チャネル 36 記憶クラスタ 38 記憶クラスタ 40、42、44、46 データ・パス 48、50、52、54 記憶パス処理装置 58 キャッシュ・メモリ 60 不揮発性記憶装置 62 マルチパス記憶ディレクタ 64、66 共用制御アレイ 68 各チャネルについての制御カウンタ(CUECN
TR) 70 顕著なアクセス要求 72 LVL1 74 LVL2 76 LVL3 78 制御装置エンドマスク(CUEMASK) 80 チャネルブロック 82 制御装置ブロックマスク(CUBMASK) 84 制御装置ブロックカウンタ(CUBMCTR) 86 CUBMCTRの最大値 88 各直接アクセス記憶装置についてのフロント・キ
ュー 90 各直接アクセス記憶装置についてのバック・キュ
ー 92 各直接アクセス記憶装置についての呼出しリスト 94 パス・グループ・リスト
憶装置 34 チャネル 36 記憶クラスタ 38 記憶クラスタ 40、42、44、46 データ・パス 48、50、52、54 記憶パス処理装置 58 キャッシュ・メモリ 60 不揮発性記憶装置 62 マルチパス記憶ディレクタ 64、66 共用制御アレイ 68 各チャネルについての制御カウンタ(CUECN
TR) 70 顕著なアクセス要求 72 LVL1 74 LVL2 76 LVL3 78 制御装置エンドマスク(CUEMASK) 80 チャネルブロック 82 制御装置ブロックマスク(CUBMASK) 84 制御装置ブロックカウンタ(CUBMCTR) 86 CUBMCTRの最大値 88 各直接アクセス記憶装置についてのフロント・キ
ュー 90 各直接アクセス記憶装置についてのバック・キュ
ー 92 各直接アクセス記憶装置についての呼出しリスト 94 パス・グループ・リスト
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ブレント・カメロン・ベアーズレイ アメリカ合衆国85730 アリゾナ州、タ ックソン、イースト・ステラ 9533 (72)発明者 マイケル・トーマス・ベンハーセ アメリカ合衆国85749 アリゾナ州、タ ックソン、ノース・プラシタ・リリロ 4801 (72)発明者 コートランド・デンバー・スターレット アメリカ合衆国85715 アリゾナ州、タ ックソン、イースト・ランド・プレース 9501 (72)発明者 ジョン・ラルフ・ウルフ アメリカ合衆国85737 アリゾナ州、タ ックソン、ノース・インゴット・ループ 11488 (56)参考文献 特開 平2−267653(JP,A)
Claims (7)
- 【請求項1】複数のホストコンピュータによる1台の記
憶装置へのアクセスもしくは1台の記憶制御装置へのア
クセスによって生じる該ホストコンピュータ間のコンテ
ンション期間中に該ホストコンピュータと複数の該記憶
装置との間の通信を調整し、該記憶制御装置を少なくと
も1本のチャネルによって該ホストコンピュータのそれ
ぞれに接続してデータ通信を行い、さらに該記憶制御装
置を該記憶装置のそれぞれに接続して該記憶装置と該ホ
ストコンピュータとの間の通信を選択的に設定する、デ
ータ処理システムにおける方法であって、 該記憶制御装置のアクセス要求ブロックを初期化し、 各チャネルについての制御カウンタを初期化し、 該記憶制御装置がチャネルを解放したとき、該アクセス
要求ブロック内にレコードを有する各チャネルについて
の該制御カウンタにインデックスを付与し、 チャネルがアクセス要求を行った後にそのアクセスを拒
絶されたとき、該アクセス要求のレコードを該アクセス
要求ブロック内に入れ、 チャネルが記憶制御装置のアクセスを獲得したとき、そ
のチャネルのついての該制御カウンタを再初期化し、 各チャネルについての該制御カウンタを複数の閾値と比
較し、 該比較ステップから生じた結果によって、各チャネルに
よる記憶制御装置への優先的アクセスに関して該データ
処理システムの動作モードを設定するステップからなる
上記データ処理システムにおける方法。 - 【請求項2】各記憶装置のデバイスエンド信号待ちをし
ているチャネルをリストする、該各記憶装置についての
フロント・キューとバック・キューを作り、 各記憶装置へのアクセスを許可されているチャネルをリ
ストする呼出しリストを作り、 前記記憶制御装置が、チャネルを介して記憶装置への入
出力開始信号を受信したとき、そのチャネルが呼出しリ
スト上にあるかどうかを判断し、 該チャネルが呼出しリスト上になかった場合は、デバイ
スビジー信号を与え、該チャネルを該記憶装置について
の該バック・キューにリストし、 該チャネルが呼出しリスト上にあった場合は、さらに該
記憶装置が使用可能であるかどうかを判断し、 該記憶装置が使用不可であった場合は、該チャネルを該
記憶装置についての該フロント・キューにリストし、 該記憶装置が使用可能であった場合は、該チャネルにア
クセスを許可するステップからなる請求項1記載の方
法。 - 【請求項3】前記複数の閾値が、優先レベル、ブロック
要求レベル、及び故障レベルの3個のインデックスレベ
ルを含む請求項1記載の方法。 - 【請求項4】チャネルを介した入出力動作が完了したと
き、前記フロント・キューをその内容を定めるために検
査し、 該フロント・キューに他のチャネルがリストされていな
い場合は、前記バック・キュー内にいずれかのチャネル
がリストされていればそれを該フロント・キューにリス
トし、該バック・キューをクリアし、前記呼出しリスト
をリセットして全てのチャネルを許可状態にし、 該フロント・キューに他のチャネルがリストされている
場合は、入出力動作を完了した上記チャネルを呼出しリ
ストから除くステップからなる請求項2記載の方法。 - 【請求項5】複数のホストコンピュータによる1台の記
憶装置へのアクセスもしくは1台の記憶制御装置へのア
クセスによって生じる該ホストコンピュータ間のコンテ
ンション期間中に該ホストコンピュータと複数の該記憶
装置との間の通信を調整し、該記憶制御装置を少なくと
も1本のチャネルによって該ホストコンピュータのそれ
ぞれに接続してデータ通信を行い、さらに該記憶制御装
置を該記憶装置のそれぞれに接続して該記憶装置と該ホ
ストコンピュータとの間の通信を選択的に設定する、デ
ータ処理システムにおける方法であって、 該各記憶装置のデバイスエンド信号待ちをしているチャ
ネルをリストする、該各記憶装置についてのフロント・
キューとバック・キューを作り、 該各記憶装置へのアクセスを許可されているチャネルを
リストする呼出しリストを作り、 該記憶制御装置が、チャネルを介して記憶装置への入出
力開始信号を受信したとき、そのチャネルが該呼出しリ
スト上にあるかどうかを判断し、 該チャネルが呼出しリスト上になかった場合は、デバイ
スビジー信号を与え、該チャネルを該記憶装置について
の該バック・キューにリストし、 該チャネルが呼出しリスト上にあった場合は、さらに該
記憶装置が使用可能であるかどうかを判断し、 該記憶装置が使用不可であった場合は、該チャネルを該
記憶装置についての該フロント・キューにリストし、 該記憶装置が使用可能であった場合は、該チャネルにア
クセスを許可するステップからなる上記のデータ処理シ
ステムにおける方法。 - 【請求項6】前記記憶制御装置のアクセス要求ブロック
を初期化し、 各チャネルについての制御カウンタを初期化し、 該記憶制御装置がチャネルを解放したとき、該アクセス
要求ブロック内にレコードを有する各チャネルについて
の該制御カウンタにインデックスを付与し、 チャネルがアクセス要求を行った後にそのアクセスを拒
絶されたとき、該アクセス要求のレコードを該アクセス
要求ブロック内に入れ、 チャネルが記憶制御装置のアクセスを獲得したとき、そ
のチャネルのついての該制御カウンタを再初期化し、 各チャネルについての該制御カウンタを複数の閾値と比
較し、 該比較ステップから生じた結果によって、各チャネルに
よる記憶制御装置への優先的アクセスに関して該データ
処理システムの動作モードを設定するステップからなる
請求項5記載の方法。 - 【請求項7】チャネルを介した入出力動作が完了したと
き、前記フロント・キューをその内容を定めるために調
べ、 該フロント・キューに他のチャネルがリストされていな
い場合は、前記バック・キュー内にいずれかのチャネル
がリストされていればそれを該フロント・キューにリス
トし、該バック・キューをクリアし、前記呼出しリスト
をリセットして全てのチャネルを許可状態にし、 該フロント・キューに他のチャネルがリストされている
場合は、入出力動作を完了した上記チャネルを呼出しリ
ストから除くステップからなる請求項5記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/936,151 US5428796A (en) | 1992-08-26 | 1992-08-26 | System and method for regulating access to direct access storage devices in data processing systems |
US936151 | 1992-08-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06301627A JPH06301627A (ja) | 1994-10-28 |
JP2597456B2 true JP2597456B2 (ja) | 1997-04-09 |
Family
ID=25468238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5147145A Expired - Fee Related JP2597456B2 (ja) | 1992-08-26 | 1993-06-18 | 直接アクセス記憶装置へのアクセス調整システム及び方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5428796A (ja) |
EP (1) | EP0588521A1 (ja) |
JP (1) | JP2597456B2 (ja) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5544347A (en) * | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
US5633999A (en) * | 1990-11-07 | 1997-05-27 | Nonstop Networks Limited | Workstation-implemented data storage re-routing for server fault-tolerance on computer networks |
US6052797A (en) * | 1996-05-28 | 2000-04-18 | Emc Corporation | Remotely mirrored data storage system with a count indicative of data consistency |
US5901327A (en) * | 1996-05-28 | 1999-05-04 | Emc Corporation | Bundling of write data from channel commands in a command chain for transmission over a data link between data storage systems for remote data mirroring |
US5961623A (en) * | 1996-08-29 | 1999-10-05 | Apple Computer, Inc. | Method and system for avoiding starvation and deadlocks in a split-response interconnect of a computer system |
JP2830857B2 (ja) * | 1996-09-09 | 1998-12-02 | 三菱電機株式会社 | データストレージシステム及びデータストレージ管理方法 |
US5930483A (en) * | 1996-12-09 | 1999-07-27 | International Business Machines Corporation | Method and apparatus for communications control on a small computer system interface |
US5948092A (en) * | 1997-10-07 | 1999-09-07 | International Business Machines Corporation | Local bus IDE architecture for a split computer system |
US5898843A (en) * | 1997-10-08 | 1999-04-27 | International Business Machines Corporation | System and method for controlling device which is present in media console and system unit of a split computer system |
US6145028A (en) * | 1997-12-11 | 2000-11-07 | Ncr Corporation | Enhanced multi-pathing to an array of storage devices |
US6349350B1 (en) * | 1999-05-04 | 2002-02-19 | International Business Machines Corporation | System, method, and program for handling failed connections in an input/output (I/O) system |
US6343324B1 (en) * | 1999-09-13 | 2002-01-29 | International Business Machines Corporation | Method and system for controlling access share storage devices in a network environment by configuring host-to-volume mapping data structures in the controller memory for granting and denying access to the devices |
JP2002108567A (ja) * | 2000-09-28 | 2002-04-12 | Hitachi Ltd | 記憶制御装置 |
GB2371705B (en) * | 2001-01-30 | 2003-04-23 | 3Com Corp | Network switch with mutually coupled look-up engine and network processor |
US6845417B2 (en) * | 2002-01-09 | 2005-01-18 | Hewlett-Packard Development Company, L.P. | Ensuring fairness in a multiprocessor environment using historical abuse recognition in spinlock acquisition |
US7062582B1 (en) * | 2003-03-14 | 2006-06-13 | Marvell International Ltd. | Method and apparatus for bus arbitration dynamic priority based on waiting period |
US9229646B2 (en) * | 2004-02-26 | 2016-01-05 | Emc Corporation | Methods and apparatus for increasing data storage capacity |
US7143221B2 (en) * | 2004-06-08 | 2006-11-28 | Arm Limited | Method of arbitrating between a plurality of transfers to be routed over a corresponding plurality of paths provided by an interconnect circuit of a data processing apparatus |
US20060048158A1 (en) * | 2004-07-29 | 2006-03-02 | International Business Machines Corporation | Methods and apparatus for aging a command |
US8490102B2 (en) * | 2004-07-29 | 2013-07-16 | International Business Machines Corporation | Resource allocation management using IOC token requestor logic |
US8856278B2 (en) * | 2005-11-16 | 2014-10-07 | Netapp, Inc. | Storage system for pervasive and mobile content |
US8769065B1 (en) * | 2006-06-28 | 2014-07-01 | Emc Corporation | Methods and apparatus for implementing a data management framework to collect network management data |
US9509617B1 (en) * | 2016-02-09 | 2016-11-29 | Grubhub Holdings Inc. | Auto load transfer in geographically distributed systems |
CN110048896B (zh) * | 2019-04-29 | 2022-09-16 | 广州方硅信息技术有限公司 | 一种集群数据获取方法、装置及设备 |
US11347520B2 (en) * | 2020-02-13 | 2022-05-31 | Dell Products L.P. | Unavailable memory device initialization system |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IE36475B1 (en) * | 1971-03-15 | 1976-11-10 | Digital Equipment Corp | Method for controlling digital data processing systems |
US4162529A (en) * | 1975-12-04 | 1979-07-24 | Tokyo Shibaura Electric Co., Ltd. | Interruption control system in a multiprocessing system |
US4223380A (en) * | 1978-04-06 | 1980-09-16 | Ncr Corporation | Distributed multiprocessor communication system |
US4488217A (en) * | 1979-03-12 | 1984-12-11 | Digital Equipment Corporation | Data processing system with lock-unlock instruction facility |
US4232294A (en) * | 1979-04-30 | 1980-11-04 | Control Data Corporation | Method and apparatus for rotating priorities between stations sharing a communication channel |
NL7907179A (nl) * | 1979-09-27 | 1981-03-31 | Philips Nv | Signaalprocessorinrichting met voorwaardelijke- -interrupteenheid en multiprocessorsysteem met deze signaalprocessorinrichtingen. |
IT1126475B (it) * | 1979-12-03 | 1986-05-21 | Honeywell Inf Systems | Apparato di comunicazione tra piu' processori |
US4415970A (en) * | 1980-11-14 | 1983-11-15 | Sperry Corporation | Cache/disk subsystem with load equalization |
US4574350A (en) * | 1982-05-19 | 1986-03-04 | At&T Bell Laboratories | Shared resource locking apparatus |
US4504906A (en) * | 1982-11-30 | 1985-03-12 | Anritsu Electric Company Limited | Multiprocessor system |
US4628445A (en) * | 1983-10-18 | 1986-12-09 | International Business Machines Corporation | Apparatus and method for synchronization of peripheral devices via bus cycle alteration in a microprocessor implemented data processing system |
DE3477072D1 (en) * | 1984-09-05 | 1989-04-13 | Siemens Ag | Arrangement for priority allocation |
CA1239227A (en) * | 1984-10-17 | 1988-07-12 | Randy D. Pfeifer | Method of and arrangement for ordering of multiprocessor operations in a multiprocessor system |
US4829467A (en) * | 1984-12-21 | 1989-05-09 | Canon Kabushiki Kaisha | Memory controller including a priority order determination circuit |
US4796176A (en) * | 1985-11-15 | 1989-01-03 | Data General Corporation | Interrupt handling in a multiprocessor computing system |
US4716528A (en) * | 1986-02-03 | 1987-12-29 | International Business Machines Corporation | Method for managing lock escalation in a multiprocessing, multiprogramming environment |
US4812968A (en) * | 1986-11-12 | 1989-03-14 | International Business Machines Corp. | Method for controlling processor access to input/output devices |
US4914653A (en) * | 1986-12-22 | 1990-04-03 | American Telephone And Telegraph Company | Inter-processor communication protocol |
US4937733A (en) * | 1987-05-01 | 1990-06-26 | Digital Equipment Corporation | Method and apparatus for assuring adequate access to system resources by processors in a multiprocessor computer system |
JPS6458013A (en) * | 1987-08-20 | 1989-03-06 | Ibm | Method and data processing system for guaranteeing large area identification and management of data memory |
US5202973A (en) * | 1990-06-29 | 1993-04-13 | Digital Equipment Corporation | Method of controlling a shared memory bus in a multiprocessor system for preventing bus collisions and for ensuring a full bus |
-
1992
- 1992-08-26 US US07/936,151 patent/US5428796A/en not_active Expired - Fee Related
-
1993
- 1993-06-18 JP JP5147145A patent/JP2597456B2/ja not_active Expired - Fee Related
- 1993-08-26 EP EP93306803A patent/EP0588521A1/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
US5428796A (en) | 1995-06-27 |
JPH06301627A (ja) | 1994-10-28 |
EP0588521A1 (en) | 1994-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2597456B2 (ja) | 直接アクセス記憶装置へのアクセス調整システム及び方法 | |
EP0676699B1 (en) | Method of managing resources shared by multiple processing units | |
KR100201819B1 (ko) | 멀티-마스터 버스 시스템의 회복장치 및 방법 | |
EP0380857B1 (en) | Arbitrating communication requests in a multi-processor computer system | |
US5621897A (en) | Method and apparatus for arbitrating for a bus to enable split transaction bus protocols | |
US5504926A (en) | Method for a host central processor and its associated controller to capture the selected one of a number of memory units via path control commands | |
US6141715A (en) | Method and system for avoiding live lock conditions on a computer bus by insuring that the first retired bus master is the first to resubmit its retried transaction | |
US7817626B2 (en) | Storage subsystem | |
US6567865B1 (en) | Storage System | |
JPS61109164A (ja) | バス制御方法 | |
EP0518527A2 (en) | Method of reducing wasted bus bandwidth in a computer system | |
US6628662B1 (en) | Method and system for multilevel arbitration in a non-blocking crossbar switch | |
US4523275A (en) | Cache/disk subsystem with floating entry | |
AU7726081A (en) | Improved system for interrupt arbitration | |
EP1318447A2 (en) | Raid apparatus and access control method therefor | |
JPH0550018B2 (ja) | ||
US5708784A (en) | Dual bus computer architecture utilizing distributed arbitrators and method of using same | |
EP1187029B1 (en) | Peripheral component interconnect arbiter implementation with dynamic priority scheme | |
US5235572A (en) | Optical disc accessing apparatus | |
US5682485A (en) | Deadlock avoidance for switched interconnect bus systems | |
EP0169909B1 (en) | Auxiliary memory device | |
US4561053A (en) | Input/output multiplexer for a data processing system | |
US6625678B1 (en) | Livelock avoidance method | |
JPH03127157A (ja) | 記憶装置の負荷バランス制御方式 | |
EP0088838B1 (en) | Input/output multiplexer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |