JP2776841B2 - ディスク制御装置におけるディスクアクセス制御方法 - Google Patents

ディスク制御装置におけるディスクアクセス制御方法

Info

Publication number
JP2776841B2
JP2776841B2 JP63240977A JP24097788A JP2776841B2 JP 2776841 B2 JP2776841 B2 JP 2776841B2 JP 63240977 A JP63240977 A JP 63240977A JP 24097788 A JP24097788 A JP 24097788A JP 2776841 B2 JP2776841 B2 JP 2776841B2
Authority
JP
Japan
Prior art keywords
disk
access
storage path
cache
channel
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 - Lifetime
Application number
JP63240977A
Other languages
English (en)
Other versions
JPH0290313A (ja
Inventor
智洋 村田
雅晴 赤津
謙三 栗原
善祥 桑原
繁雄 本間
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP63240977A priority Critical patent/JP2776841B2/ja
Priority to DE3932474A priority patent/DE3932474C2/de
Publication of JPH0290313A publication Critical patent/JPH0290313A/ja
Priority to US08/089,633 priority patent/US5404487A/en
Application granted granted Critical
Publication of JP2776841B2 publication Critical patent/JP2776841B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/312In storage controller

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデイスク制御装置におけるデイスクアクセス
制御方法、特にキヤツシユを内蔵するデイスク制御装置
の障害に対するデイスクアクセス機能の縮退制御及び復
旧制御に好適なデイスクアクセス制御方法に関する。
〔従来の技術〕
従来のキヤツシユ付きデイスク制御装置では、頻繁に
アクセスされるデータをキヤツシユに保持しておき、そ
れらのデータがアクセスされた場合はデイスクまでアク
セスに行かずにキヤツシユ上からデータを読みだすこと
により、データのアクセス効率の向上を図つているが、
特開昭60−79447号公報に記載のように、いずれか一つ
のストレージパスでキヤツシユ障害を検知するとキヤシ
ユ全体を切り離し、他のストレージパスによるキヤツシ
ユ上データのリード/ライト(read/write)をすべて中
止していた。これにより、キヤツシユをリード/ライト
できなくなつたストレージパスがディスク上のレコード
を直接更新する一方で正常にキヤツシユをリード/ライ
トできる他のアクセスパスがキヤツシユ上の当該レコー
ドの旧データをリードすることにより、デイスク内の最
新データと異なる旧データがチヤネルに転送されること
(これをデータ化けという)を防止していた。
〔発明が解決しようとする課題〕
上記従来技術では、いずれか一つのストレージパスが
キヤツシユ障害を検知すると、すべてキヤツシユ本体の
障害とみなしてデイスク制御装置からキヤツシユを切り
離していた。しかし、ストレージパス側の障害が原因で
キヤツシユ障害に見える場合があり、この場合には正常
にキヤツシユをリード/ライトできるストレージパスが
多数残つているにもかかわらずキヤツシユが切り離され
てしまうため、キヤツシユの可用性がいちじるしく低下
するという問題が有った。これに対し、キヤツシユの可
用性向上とデータ化け防止の観点からは、キヤツシユ障
害を検知したストレージパスを閉塞し、正常にキヤツシ
ユをリード/ライトできる他のストレージパスのキヤツ
シユ利用は継続させるという方法が考えられる。しかし
この方法では、キヤツシユ障害を検知したストレージパ
スによるデイスクへの直接アクセスも同時に禁止される
ため、キヤツシユ障害を検知したアクセスパスのみに接
続しているデイスクがある場合、そのデイスクには全く
アクセスできなくなるという問題が有る。
また、キヤツシユ上にアクセスしたいデータが有つて
も無くても実行可能であるストレージパスだけが、使わ
れる。しかし、実際にデイスクをアクセスする場合に
は、キヤツシユ上にアクセスしたいデータが有るか無い
かによつて、使用されるデータ転送経路は異なるので、
障害を抱えているストレージパスでも、実行できるアク
セスはある。そのため、ストレージパスが有効に活用さ
れていないという問題が有る。本発明はこれらの問題点
を改善したデイスクアクセス制御方法を提供することを
目的とする。
〔課題を解決するための手段〕
上記目的を達成するため、本発明は、実行可能なスト
レージパスを選ぶ基準を設けた。具体的には、チヤネル
とデイスクを接続するストレージパスが有するキヤツシ
ユ利用機能の程度を示す機能レベルを上記基準として各
ストレージパスごとに設けるとともに、デイスクをアク
セス可能応なストレージパスが最低限有すべき機能レベ
ルを規定するアクセスレベルを上記デイスク制御装置で
制御される各デイスクごとに設定し、アクセス対象デイ
スクのアクセルレベルに指定された機能レベル以上の機
能レベルを有するストレージパスのみが、当該デイスク
にアクセスレベルとして指定されたレベルに等しい機能
レベルで当該デイスクをアクセスするようにした。ま
た、チヤネルからの初期起動を受け付けたときに使用さ
れるストレージパスを選ぶ基準と、デイスクからのシー
ク動作完了報告を受けたときに使用されるストレージパ
スを選ぶ基準を変えて、デイスクをアクセスする際のキ
ヤツシユ利用形態に応じて、その都度必要な機能レベル
を有するストレージパスを実行可能なストレージパスと
して選択するようにした。
〔作用〕
(1)アクセス対象デイスクにアクセスレベルとして指
定されたレベル以上の機能レベルを有するストレージパ
スのみを使用して当該デイスクのアクセスレベルとして
指定された機能レベルに合わせて当該デイスクをアクセ
スすることにより、複数のストレージパスがそれぞれ異
なつた機能レベルで当該デイスクをアクセスすることは
無くなり、上記のようなデータ化けの問題は生じない。
また、ディスクへアクセス可能なストレージパスが存在
しうるという条件の範囲内で、当該デイスクに設定する
アクセスレベルをできるだけ高いレベルに設定すること
により、ストレージパスが当該デイスクをアクセスする
際に使用するキヤツシユ利用機能の程度を各デイスクご
とに最適に選択することができ、上記のようなキヤツシ
ユ可用性低下の問題も解決される。
(2)障害が発生した時、ストレージパスの機能はスト
レージパスごとに異なつている。このような場合、チヤ
ネルからの初期起動を受け付けたときに使用されるスト
レージパスを選ぶ基準と、デイスクからのシーク動作完
了報告を受けたときに使用されるストレージパスを選ぶ
基準を変えたことによつて、どちらか一方の場合しか実
行できないようなストレージパスも使われるので、使用
可能なストレージパスの本数が増える。また、チヤネル
からの初期起動を受けられるストレージパスと、デイス
クからのシーク動作完了報告を受けられるストレージパ
スが一本ずつ有れば、それが異なるストレージパスであ
つても、正常なストレージパスが一本あるとみなすこと
ができるので、可用性の向上が図れる。
機能の程度を各デイスクごとに最適に選択することが
でき、上記のようなキヤツシユ可用性低下の問題も解決
される。
〔実施例〕
まず、前記基準として機能レベルを設定する実施例を
説明する。
第1図は本発明を適用するキヤツシユ(cache)付き
デイスクサブシステムのブロツク構成を示す。デイスク
サブシステムはチヤネル制御装置111、デイスク制御装
置110、デイスク90〜93、及びチヤネル制御装置とデイ
スク制御装置間を接続する接続線113〜120、デイスク制
御装置とデイスク間を接続する接続線137〜152から構成
される。
チヤネル制御装置111は、デイスク90〜93に対して同
時にアクセス要求を出せる8つのチヤネルa〜hを持
つ。デイスク制御装置110はそれぞれ1つのチヤネルか
らのデータアクセス要求を受取り、チヤネルとデイスク
間のデータ転送(データ読出し/データ書込み)を並列
に処理できる4本のストレージパス(SPと記す)と呼ぶ
データ転送制御部100〜103を持つ。SPは具体的には専用
のプロセツサ又は汎用のマイクロプロセツサにより実現
される。8つのチヤネルa〜hと4本のSP100〜103との
接続はMPSD(Multi Pass Switching Device)109によ
り、接続線121〜124を介してチヤネルからのアクセス要
求の受付が特定のSPに偏らないように動的に切り換えて
制御される。デイスク制御装置110はさらに、接続線12
6,128,130,132を介してSP(1)〜SP(4)と接続するc
ache105及び接続線133〜36を介してSP(1)〜SP(4)
と接続する。NVS106を有する。cache105は揮発性メモリ
であり、デイスク90〜93内の格納データの一部のコピー
を必要に応じて格納しておき、cache105に予め格納して
おいたデータに対するアクセス要求として(このような
アクセス要求をキヤツシユにヒツトしたアクセス要求と
いう)、読みだし要求をチヤネルからSPが受け取つた場
合、SPはデイスク90〜93内のデータをリードする代わり
に、cache105に予め格納されている当該データを読みだ
すことにより、データに対するアクセス応答性の向上を
図る。また、cache105にヒツトしたアクセス要求が書き
込み要求の場合には、SPはcache105に予め格納されてい
る当該データを更新すると同時に、cache上の当該更新
データをバツクアツプする目的で同一更新データを不揮
発性メモリであるNVS106にも同時に書き込むことによ
り、デイスク90〜93内のデータを更新することなくcach
e上の当該データの更新のみでチヤネルからの書き込み
要求の処理を完了させ、cache上のみで更新したデータ
はデイスク制御装置110のチヤネルとのデータ転送空き
時間を利用し、後でデイスクにまとめて書き込むことに
より、書き込み要求に対するアクセス応答性の向上を図
る(これをデイスク高速書き込みと呼ぶ)。
さて、接続線125,129,131,127を介してSP(1)〜SP
(4)と接続するECM104はデイスク制御装置110内の4
つのSP(SP(1)〜SP(4))がアクセス要求を処理す
るときに参照する制御メモリであり、第2図に示す情報
をテーブル形式で格納する。まずSP−LEVEL200にはSP
(1)〜SP(4)の障害を程度に応じ、SPのcache利用
機能の程度を示す機能レベルとして、次に3つの機能レ
ベルのうちのいずれかを設定する。
(1)機能レベル3:チヤネルからストレージパスを介し
てデイスクの直接リード、ライトが可能でかつチヤネル
とキヤツシユとの間でストレージパスを介してキヤツシ
ユのリード、ライトが可能。
(2)機能レベル2:チヤネルからストレージパスを介し
てデイスクの直接リード、ライトが可能でかつチヤネル
とキヤツシユの間でストレージパスによるキヤツシユの
リードのみ可能。
(3)機能レベル1:チヤネルからストレージパスを介し
てデイスクの直接リード、ライトが可能でかつチヤネル
とキヤツシユの間でストレージパスによるキヤツシユの
リード、ライトがともに不可能。
第2図では、全てのSPの機能レベルの初期値として3
を設定している。
つぎに、SP−AVAILABLE210にはデイスク制御装置110
内の4つのSP(SP(1)〜SP(4))のそれぞれについ
て、そのSPがデイスク制御装置内で論理的に使用可能で
あるか否かを示すフラグ(‘1'で使用許可、‘0'で使用
禁止を示す)を設定する。第2図では、全てのSPを論理
的に使用可に設定している。つぎに、SP−OPERATABLE22
0には、SP(1)〜SP(4)のそれぞれについて、そのS
Pが機能的に使用可能であるか否かを示すフラグ(‘1'
で使用可能、‘0'で使用不可を示す)を設定する。第2
図では、全てのSPを機能的に使用可能に設定している。
なお、上記SPLEVEL200に設定されるSPの機能レベルはSP
が機能的に使用可能である場合にのみ意味を持つ。
次にDEV230のDEV(1)〜DEV(4)の欄の変数(LEVE
L)には、デイスクをアクセスするストレージパスが最
低限有すべきパス機能レベル(アクセスレベル)を各デ
イスク対応に設定する。アクセスレベルとしては以下の
4つを設ける。
(a)アクセスレベル3:機能レベル3のストレージパス
からのみアクセス可能。
(b)アクセスレベル2:機能レベル2または3のストレ
ージパスからのみアクセス可能。
(c)アクセスレベル1:機能レベル1,2または3のスト
レージパスからアクセス可能。
(d)アクセスレベル0:当該デイスクアクセス禁止。
第2図では、デイスク90〜93のアクセスレベルを示す
DEV(1)〜DEV(4)の変数(LEVEL)の値をすべて3
に設定している。なお、DEV230内の変数(FLAG)および
(LOCK)の内容については後述する。
つぎに、DCB240には、デイスク制御装置110で制御さ
れるデイスクとチヤネルの間に存在するアクセスパスの
構成を各デイスク対応に設定する。具体的には、DCB
(1)〜DCB(4)にデイスク90〜94それぞれについ
て、デイスクとチヤネル間に存在するアクセスパスの構
成をRAM,ROM,CPASの3つの情報として設定する。RAMの
(b1)〜(b4)には、各デイスクがデイスク制御装置内
のSP(1)〜SP(4)のうちどのSPと論理的に接続して
いるかを示すフラグ(‘1'で接続有り、‘0'で接続なし
を示す)を設定する。第2図では、デイスク90,91が、
パス137〜140を介してSP(1)〜SP(4)全てと接続し
ているため、DCB(1),DCB(2)のPAMの(b1)〜(b
4)はオール‘1'に設定する。また、デイスク92,93は、
パス138,139を介してSP(2)〜SP(3)のみと接続し
ているためDCB(3),DCB(4)のPAMの(b1),(b4)
は‘0'その他は‘1'に設定する。ROMの(b1)〜(b4)
には、デイスク制御装置内のSP(1)〜SP(4)のうち
機能的にどのSPが当該デイスクにアクセスできるかを示
すフラグ(‘1'でアクセス可能、‘0'でアクセス不可を
示す)を設定する。第2図では、DCB(1)〜DCB(4)
の(b1)〜(b4)はオール‘1'に設定している。CPASの
(b1)〜(b4)には、PAMとPOMを(b1)〜(b4)につい
てそれぞれビツトのandを取つた値を設定する。CPASの
(b1)〜(b4)は具体的には各デイスクが論理的に接続
しているデイスク制御装置内のSP(1)〜SP(4)のう
ち、現時点で実際に当該デイスクをアクセス可能なSPを
デイスク対応に示すフラグ(‘1'で当該デイスクをアク
セス可能なSPを、‘0'で当該デイスクをアクセス不可の
SPを示す)である。
また、デイスク制御装置内のSPの障害状況はSP STATU
S260内のSPSTATUS(1)〜SPSTATUS(4)にSP(1)〜
SP(4)に対応して設定する。SPSTATUSの(b1)には、
当該SPがcacheをアクセス可能なとき‘1'、アクセス不
可能なとき‘0'の値が設定される。また、(b2)には、
当該SPがNVSをアクセス可能なとき‘1'、アクセス不可
能なとき‘0'の値が設定される。さらに、cache/NVS−A
VAILABLE250にはcache,NVSが使用可能か否かを示すフラ
グ(C),(N)をもうけ、‘1'で使用可、‘0'で使用
不可を示す。第2図の例では初期値として共に1を設定
しておく。また、SPCLOSE270には、任意のSPに対する閉
塞要求を設定する。このテーブルのS(n)に1が設定
されるとSP(n)の閉塞が要求されたものとみなす。ま
た、RECOV280には、cache,NVS、および任意のSPに対す
る復旧要求を設定する。(C),(N),S(n)に1が
設定されるとそれぞれ、cache,NVS,SP(n)に対する復
旧要求とみなす。なお、SPCLOSE270、RECOV280の設定
は、保守員が、第1図の保守端末151より、サービスプ
ロセツサ150を介して設定する。
さて、以上説明したECM内の制御データを用いて、本
発明におけるデイスクアクセス制御方式がどのように実
現されるかを第3図のフローチヤートに基づき説明す
る。第3図は本発明における各SPの動作手順を示すフロ
ーチヤートである。この動作は、具体的にはSP上で動作
するマイクロプログラムとしてインプリメントする。ま
ず、各SPは常にチヤネルからのアクセスコマンドがMPSD
を介して当該SPに到着していないかどうかを判定する
(ブロツク299)。その結果、アクセスコマンドの到着
無しと判定すると、閉塞要求フラグを調べ(同323)、
それが設定されていればSP閉塞処理を行ない(同324)
さらに、復旧要求フラグを調べ(同325)、それが設定
されていればコンポーネント復旧処理を行ない(同32
6)、再びチヤネルからのアクセスコマンド到着判定
(同299)に戻る。SP閉塞処理、およびコンポーネント
復旧処理の内容については後述する。
一方、アクセスコマンドの到着有りと判定すると、以
下のアクセスコマンド実行に進む。まずチヤネルよりア
クセス対象デイスクNo.を受け取る(第3図300)。そし
て、DEV230内の当該デイスク(No.=n)に対応するDEV
(n)内の変数(LOCK)の値を判定し(同301)、当該
変数の値が1ならロツクを確保できないと判定し、当該
アクセスコマンドの受取をキヤンセルしてチヤネルにビ
ジーリトライを返し、再びチヤネルからのアクセスコマ
ンド到着判定(同299)に戻る。もし、当該変数の値が
0ならロツクを確保可能と判定し、当該変数の値を1に
セツトし、当該デイスク(No.=n)のアクセスレベル
見直し処理(1)(同298)を行なう。さらに当該デイ
スク(No.=n)に対応するDEV(n)内の変数(FLAG)
の値を判定し(同303)、もし当該変数の値が0ならば
即アクセスの実行可否判定処理を行なう(同305)が、
当該変数の値が1ならば、当該アクセス対象デイスク
(No.=n)のアクセスレベル見直し処理(2)(同31
5)を行なつた後にアクセスの実行可否判定処理を行な
う(同305)。アクセスレベル見直し処理(1),
(2)、およびアクセス実行可否判定処理の詳細につい
ては後述する。アクセスの実行可否判定の結果アクセス
不可と判定された場合は当該コマンドの実行を中止し、
エラーリトライをチヤネルに返し(同317)、当該デイ
スク(No.=n)に対応するDEV(n)内の変数(FLAG)
の値を0に設定して再びチヤネルからのアクセスコマン
ド到着判定(同299)に戻る。アクセス可と判定された
場合はアクセスの実行可否判定処理アクセスするレコー
ドアドレスを受け取り(同304)cache上のデータを検索
し、アクセス対象レコードがcache上に格納されていれ
ば、ヒツトとしてcache上のレコードをリード又はライ
トする。この際、リードであればcache上のレコード内
容をチヤネルに転送し、ライトであればcache上のレコ
ード内容を更新すると同時にNVS106に更新したレコード
の内容を格納する(同309)。またアクセス対象レコー
ドがcache上に格納されていなければ、ミスとして当該
デイスク(No.=n)上のレコードを直接リード又はラ
イトした後、アクセス対象レコード内容を当該デイスク
からcache上に転送する。
これらの結果が正常に終了したかどうかの判定結果
(同311)によつて、正常完了であれば当該デイスク(N
o.=n)に対応するDEV(n)内の変数(FLAG)の値を
0に設定して再びチヤネルからのアクセスコマンド到着
判定(同299)に戻る。コマンド実行中に当該SPに障害
が発生し、エラーが終了した場合は障害要因設定処理
(同319)、当該SPの機能レベル変更処理(同321)、ca
che/NVS閉塞処理(同322)で示される障害処理シーケン
スに入る。これらの内容についても後述する。
さて、上記で説明を後述とした、アクセスの実行可否
判定処理(同305)、アクセス対象デイスクのアクセス
レベル見直し処理(1)(同298)、アクセス対象デイ
スクのアクセスレベル見直し処理(2)(同315)、SP
障害要因設定処理(同319)、SP機能レベル変更処理
(同321)、cache/NVS閉塞処理(同322)、SP閉塞処理
(同324)、コンポーネント復旧処理(同326)の内容に
ついて以下説明する。
アクセスの実行可否判定処理(同305)を第4図のフ
ローチヤートに従い説明する。まず、第2図のSPLEVEL2
00より当該SPの現在の機能レベルを読みだし(ブロツク
501)、続いてアクセス対象デイスク(No.=n)の現在
のアクセスレベルを読みだし(同502)、読みだしSPの
機能レベルの値とアクセス対象デイスクのアクセルレベ
ルの値を比較し、SPの機能レベルの値がアクセス対象デ
イスクのアクセスレベルの値以上であれば当該SPでアク
セス対象デイスクをアクセス可能と判定し、SPの機能レ
ベルの値がアクセス対象デイスクのアクセスレベルより
小さければ当該SPでのアクセス対象デイスクをアクセス
不可と判定する。
次にアクセス対象デイスクのアクセスレベル見直し処
理(1)(第3図のブロツク298)を第5図のフローチ
ヤートにもとづき説明する。まず、cache/NVS−AVAILAB
LE250の(C)フラグをもとに、cacheの閉塞の有無を判
定する(第5図のブロツク650)。もしそれが閉塞なら
ば当該アクセス対象デイスクのアクセスレベルが1以上
の場合のみ当該デイスクのアクセスレベルを1に設定す
る(同651,652)。もしそれが閉塞でなければ続いて
(N)フラグをもとにNVSの閉塞の有無を判定する(同6
53)。もしそれが閉塞ならば当該アクセス対象デイスク
のアクセスレベルが2以上の場合のみ当該デイスクのア
クセスレベルを2に設定する(同654,655)。
続いてアクセス対象デイスクのアクセスレベル見直し
処理(2)(第3図のブロツク315)を第6図のフロー
チヤートにもとづき説明する。まず、第2図のSP−AVAI
LABLE200、SP−OPERATABLE210および、アクセス対象デ
イスク(No.=n)に対応するDCB(n)のPAMA,POMのフ
ラグについて、(b1)〜(b4)それぞれのandをとり、
その値をアクセス対象デイスク(No.=n)に対応するD
CB(n)のCPASのフラグ(b1)〜(b4)に設定する(第
6図のブロツク801)。続いてDCB(n)よりCPASのフラ
グ(b1)〜(b4)を読みだし(同801)、1が立つてい
るフラグ(bn)に対応するSP(n)のアクセルレベルを
SV−AVAILABLE200より読みだす(同820,803)。それら
のアクセスレベルの組み合わせに基づき、ある機能レベ
ル以上のSPがスレシヨルド以上の本数存在するという条
件を満たす機能レベルのなかで最も機能レベルの値の大
きい機能レベルを当該デイスクの機能レベルとする(同
804,805,806,807)。最後にアクセスレベル変数の値を
当該デイスクのDEV(n)の(LEVEL)に設定し、(FLA
G)の値を0に設定する。
また、SP障害要因設定処理手順のフローチヤート(第
7図)においては、まずSPの障害要因を同定し(第7図
のブロツク600)、その結果を第2図のSPSTATUS260中の
当該SP(n)に対応するSPSTATUS(n)の(b1),(b
2)フラグにビツトパタンで設定する。
SPの機能レベル変更処理手順のフローチヤート(第8
図)においては、まず、第2図のSPSTATUS260中の当該S
P(n)に対応するSPSTATUS(n)の(b1),(b2)フ
ラグの値を判定し、そのビツトパタンに応じSPLEVEL200
中の当該SP(n)に対応するSPLEVEL(n)の値を第8
図のブロツク701〜703に示すように設定する。
cache/NVS閉塞処理(第3図のブロツク322)において
は、第2図のSP−OPERATABLE220に1が立つている(b
n)に対応するSP(n)で、SPSTATUS260の(b1)の値が
0であるSPの数がスレシヨルド以上有る場合、cache/NV
S−AVAILABLE250の(C)フラグに1を設定しcache閉塞
を行ない、(b2)の値が0であるSPの数がスレシヨルド
以上有る場合、cache/NVS−AVAILABLE250の(N)フラ
グに1を設定し、NVS閉塞を行なう。
SP閉塞処理(第3図のブロツク324)では、まず、第
2図のSPCLOSE270テーブルにおいて1が立ているS
(n)フラグを調べ、それに対応するSP−AVAILABLE210
の(bn)フラグに0を設定するとともに、DEV230のDEV
(1)〜DEV(4)の(FLAG)に1を設定する。
コンポーネント復旧処理(第3図のブロツク326)で
は、RECOV280テーブルにおいて1が立つているフラグを
調べる。もし、(C)((N))フラグに1が立ている
場合は、cache/NVS−AVAILABLE250の(C)((N))
フラグに1を設定し、SPLEVEL200のSPLEVEL(1)〜SPL
EVEL(4)の値を3に設定するとともに、DEV230のDEV
(1)〜DEV(4)の(FLAG)に1を設定する。もし、
S(n)フラグに1が立つている場合は、SP−AVAILABL
E210および、SP−OPERATABLE220の(bn)フラグに1を
設定し、DEV230のDEV(1)〜DEV(4)の(FLAG)に1
を設定する。
なお、第1図の各デイスク90〜93に固有のパス141〜1
52のうちの任意のパスを保守等の目的で個別に閉塞(再
接続)する場合には、各デイスク(No.=n)のDCB
(n)のPAMの(b1)〜(b4)のうちの該当するフラグ
に0(1)を設定し、DEV(n)の(FLAG)に1を設定
する。
以上説明した本実施例によれば、デイスク制御装置内
のSP(1)〜SP(4)のうちの任意のSPの障害やcpch
e、NVSの閉塞、各デイスク固有の任意のパスの閉塞等が
発生した場合、デイスク制御装置内のSPが当該デイスク
制御装置に接続するデイスクをアクセスする際に、生存
しているSP機能で最大限にキヤツシユを利用しつつ、か
つデータ化けを起すこと無くデイスクをアクセスするこ
とができ、デイスク制御装置の可用性を向上させること
ができる。また保守のためのSP閉塞や、各デイスク固有
の任意のパスの閉塞等もデイスクサブシステムの稼働に
大きな影響を与えずに出きるため、デイスクサブシステ
ムを稼働させながらの保守作業も容易となる。
なお、本実施例では、デイスク制御装置内のSPとし
て、1つのプロセツサを用いることを想定したが、第9
図に示すようにチヤネル側のデータ転送を主として行な
うプロセツサ(MP1)1001のデイスク側のデータ転送を
主として行なうプロセツサ(MP2)1002の二つの独立し
たプロセツサを直列に接続したもので1つの論理的なス
トレージプロセツサ(SP1)1000を構成しても良い。こ
の場合SPを構成する各MP1,MP2をもつ固有パス1261,126
2,1331,1332の使用可否状態の組み合わせを各MP1,MP2ご
とに第10図に示すようなテーブルで記憶し、各MP1,MP2
のもつ固有パスに障害が発生した場合には第11図に示す
デシジヨンテーブルで固有パスに障害を起したMPを含む
論理的SPのSPSTATUS又は、SP−OPERATABLEの値を設定す
ることにより、先に述べた実施例と全く同じように論理
的SPによるデイスクアクセスを制御できる。また第12図
に示すように2つの論理的SP1200,1202を構成するプロ
セツサMP1(MP10,MP11)とMP2(MP20,MP21)の間を、ク
ロスパス1204,1205で接続する構成とする場合は、点線
のブロツク1202,1203で示される新たな2つの論理的SP
を加えた4本のSPが有るものとみなし、上述のようにそ
れぞれのSPの機能レベルをそのSPを構成するMPの状態の
組み合わせによつて求め、それぞれのSPの機能レベルを
ECM上に反映させることにより先に述べた実施例と全く
同じ方法で論理的SPによるデイスクアクセスを制御でき
る。
つぎに、前記基準を変える実施例を詳細に説明する。
第13図は、本発明をキヤツシユ(Cache)付きデイス
ク装置に適用した場合の処理手順の一実施例を示すフロ
ーチヤートであり、第14図は、本発明に係るCache付き
デイスク制御装置を含むデイスクサブシステムの構成を
示す図である。
まず、第14図において、デイスクサブシステムは、チ
ヤネル制御装置21、デイスク制御装置22、デイスク60〜
61、及びチヤネル制御装置とデイスク制御装置間を接続
する接続線23〜30、デイスク制御装置とデイスク間を接
続する接続線56〜59から構成される。
チヤネル制御装置21は、デイスク60〜61に対して同時
にアクセス要求を出せる8つのチヤネルa〜hを持つ。
デイスク制御装置22はそれぞれ1つのチヤネルからのデ
ータアクセス要求を並列に処理できる4本のストレージ
パスSP)37〜40を持つ。SPは具体的には専用のプロセツ
サ又は汎用のマイクロプロセツサにより実現される。8
つのチヤネルa〜hと4本のSP37〜40との接続はMPSD31
〜32により、チヤネルからのアクセス要求の受付が特定
のSPに偏らないように動的に切り換えて制御される。デ
イスク制御装置22はさらに、Cache42及びNVS43を有す
る。Cacheは揮発性メモリであり、デイスク内の格納デ
ータの一部のコピーを必要に応じて格納しておく。ま
た、NVSは例えば、不揮発性メモリであり、Cache上の更
新データをバツクアツプする目的で使われる。Cache、N
VSの使用方法によつて、デイスクのアクセス方法には、
次の3種類の方法がある。
(1)Cache/NVS使用アクセス Cacheに予め格納しておいたデータに対するアクセス
要求(このようなアクセス要求をCacheにヒツトしたア
クセス要求という)として、読み出し要求をチヤネルか
ら受け取つた場合(これをリードヒツトという)、デイ
スク内のデータをリードする代わりに、Cacheに予め格
納されている当該データを読みだすことにより、データ
に対するアクセス応答性の向上を図る。また、Cacheに
ヒツトしたアクセス要求が書き込み要求の場合(これを
ライトヒツトという。)には、Cacheに予め格納されて
いる当該データを更新すると同時に、NVSにも同時に書
き込むことにより、デイスク内のデータを更新すること
なくCache上の当該データの更新のみでチヤネルからの
書き込み要求の処理を完了させ、Cache上のみで更新し
たデータはデイスク制御装置の空き時間を利用し、後で
デイスクにまとめて書き込むことにより、書き込み要求
に対するアクセス応答性の向上を図る。また、Cacheに
予め格納されていないデータに対するアクセス要求(こ
のようなアクセス要求をCacheにミスしたアクセス要求
という)をチヤネルから受け取つた場合は、リード要求
/ライト要求にかかわらず、直後、デイスクをアクセス
して、デイスクとチヤネル間でデータ転送を行なうと同
時に、そのデータをCacheに格納し、(これをローデイ
ングという(当該データに対する次回のアクセスに備え
る。
(2)Cache使用アクセス リード要求に関しては、(1)と全く同じであるが、
ライトヒツトの場合は、デイスク内のデータとCache上
のデータを同時に更新する。また、ライトミスの場合
は、デイスク内のデータを更新するだけで、ローデイン
グは行なわない。
(3)Cache不使用アクセス Cacheを使わず、常に、直接デイスクをアクセスす
る。
さて、ECM41はデイスク制御装置22内の4つのSP(SP
(1)〜SP(4))がアクセス要求を処理するときに参
照する制御メモリであり、第15図に示す情報をテーブル
形式で格納する。
まずSP−STATUS5100にはSPの状態を保持する。先に述
べたように、データの転送経路には、次の4つがある。
(P1)チヤネル−デイスク間 (P2)チヤネル−Cache間 (P3)チヤネル−NVS間 (P4)デイスク−Cache間 SP−STATUS内の(P1)〜(P4)には、各SPごとに、そ
の経路が使用可能であれば、‘1'、使用不可能であれ
ば、‘0'の値が設定される。
第15図では、すべてのSPが全経路を使用可能と設定し
ている。
次に、SP−LEVEL110には、各SPごとに、その状態に応
じ、SPのCache/NVSの利用機能の程度を示す機能レベル
を保持する。
機能レベルには、次の5種類を用意する。
(1)機能レベル5:ストレージパスを介してチヤネルと
デイスクとの間の直接アクセスが可能でかつストレージ
パスを介してチヤネルとキヤツシユとの間のアクセスが
可能でかつストレージパスを介してチヤネルとNVSとの
間のアクセスが可能。
(2)機能レベル4:ストレージパスを介してチヤネルと
デイスクとの間の直接アクセスが可能でかつストレージ
パスを介してチヤネルとキヤツシユとの間のアクセスが
可能でかつストレージパスを介してデイスクとキヤツシ
ユとの間のアクセスが可能。
(3)機能レベル3:ストレージパスを介してチヤネルと
デイスクとの間の直接アクセスが可能でかつストレージ
パスを介してチヤネルとキヤツシユとの間のアクセスが
可能。
(4)機能レベル2:ストレージパスを介してチヤネルと
デイスクとの間の直接アクセスが可能でかつストレージ
パスを介してデイスクとキヤツシユとの間のアクセスが
可能。
(5)機能レベル1:ストレージパスを介してチヤネルと
デイスクとの間の直接アクセスが可能。
SP−LEVEL内の(レベル5)〜(レベル1)には、各S
Pごとに、その機能レベルを有すれば‘1'、そうでなけ
れば‘0'の値が設定される。これは、SP−STATUSの状態
によつて決定する。その決定方法については、後述す
る。第15図では、すべてのSPが全レベルが有していると
設定している。
次に、SP−AVAILABLE5120には各SPごとに、そのSPが
デイスク制御装置内で論理的に使用可能であるか否かを
示すフラグ(‘1'で使用許可、‘0'で使用禁止を示す)
を設定する。第15図では、全てのSPを論理的に使用可に
設定している。
つぎに、DCB5130には、デイスク制御装置22で制御さ
れるデイスクとチヤネルの間に存在するアクセスパスの
構成を各デイスク対応に設定する。具体的には、DCB
(1),DCB(2)にデイスク60,61それぞれについて、
デイスクとチヤネル間に存在するアクセスパスの構成を
PAM,POMの2つの情報として設定する。
PAMには、各デイスクがデイスク制御装置内のSP
(1)〜SP(4)のうちどのSPと論理的に接続している
かを示すフラグ(‘1'で接続有り、‘0'で接続なしを示
す)を設定する。
第14図で、デイスク60が、パス56〜59を介してSP
(1)〜SP(4)全てと接続しているため、第15図で
は、DCB(1)のPAMは、すべて‘1'に設定している。ま
た、デイスク61は、パス57,58を介してSP(2),SP
(3)のみと接続しているためDCB(2)のPAMは、(SP
1),(SP4)には‘0'、(SP2),(SP3)には‘1'を、
それぞれ設定している。
POMには、デイスク制御装置内のSP(1)〜SP(4)
のうち機能的にどのSPが当該デイスクにアクセスできる
かを示すフラグ(‘1'でアクセス可能、‘0'でアクセス
不可を示す)を設定する。
第15図では、DCB(1),DCB(2)とも全SPからアク
セス可能に設定している。
次にSP−CURRENT5140には、各デイスクごとに、その
デイスクへのアクセスがきたときに、使用可能なSPの情
報を保持する。各SPごとに、当該デイスクへのアクセス
に際し、使用可能であれば‘1'、使用不可能であれば
‘0'の値が設定される。本テーブルの作成方法及び使用
方法については後述する。
次にDEV5150の内の変数(LEVEL)には、デイスクごと
に、そのデイスクをアクセスする際のアクセス方法を規
定するアクセスレベルを設定する。アクセスレベルとし
ては、以下の4つを設ける。
(a)アクセスレベル3:Cache/NVS使用アクセスにより
アクセスされる。
(b)アクセスレベル2:Cache使用アクセスによりアク
セスされる。
(c)アクセスレベル1:Cache不使用アクセスによりア
クセスされる。
(d)アクセスレベル0:当該デイスクアクセス禁止。
第15図では、デイスク60,61のアクセスレベルを示すD
EV(1),DEV(2)の変数(LEVEL)の値をもとに3に
設定している。このアクセスレベルは、SP−LEVELに状
態によつて決定する。その決定方法については、後述す
る。なお、DEV5150内の変数(LOCK)の内容についても
後述する。
さて、以上説明したECM内の制御データを用いて、本
発明におけるデイスクアクセス制御方式がどのように実
現されるかを第13図のフローチヤートに基づき説明す
る。この動作は、具体的にはSP上で動作するマイクロプ
ログラムとしてインプリメントする。
まず、各SPは常にチヤネルからの初期起動がMPSDを介
して当該SPに到着していないかどうかを判定する(ブロ
ツク1)。
その結果、チヤネルからの初期起動の到着有りと判定
すると、チヤネルからのアクセスコマンド実行処理に進
む。まずチヤネルよりアクセス対象デイスクNo.を受け
取る(ブロツク2)。そして、DEV5150内の当該デイス
ク(No.=n)に対応するDEV(n)の変数(LOKC)の値
を判定し(同3)、当該変数の値が1ならロツクを確保
できないと判定し、当該アクセスコマンドの受け取りを
キヤンセルしてチヤネルにビジーリトライを返し(同
4)、再びチヤネルからの初期起動到着判定処理(同
1)に戻る。もし、当該変数の値が0ならロツクを確報
可能と判定し、当該変数の値を1にセツトし(同5)、
アクセス実行可能SPの選択処理I(同6)を行なう。ア
クセス実行可能SPの選択処理Iの詳細については後述す
る。アクセス実行可能SPの選択処理Iの結果、チヤネル
からの起動を受け付けたSPが実行可能であると判定され
た場合は、引き続き以降の処理を続行する。また、チヤ
ネルからの起動を受け付けたSPが実行不可能であり、他
に実行可能なSPが有ると判定された場合は、その実行可
能なSPに制御を渡し、そのSPが以降の処理を行なう。ま
た、アクセス可能なSPが1本でも無いと判定された場合
は当該コマンドの実行を中止し、エラーリトライをチヤ
ネルに返し(同7)、再びチヤネルからの初期起動到着
判定処理(同1)に戻る。
さて、アクセスを実行するSPは、そのアクセス方法が
Cacheを使用するものであれば、ヒツト/ミス判定(同
9)を行なう。これは、アクセス対象レコードがCache
上に格納されているかどうかを検索するものである。ア
クセス対象レコードがCache上に格納されていない場
合、あるいは、アクセス方法がCacheを使用しないもの
である場合、直接デイスクをアクセスする必要が有る。
デイスクをアクセスする場合には、まず、磁気ヘツドの
位置付けを(これをSEEK動作という)行なわねばならな
いので、デイスクに対して、SEEK指示を出す(同10)。
SEEKが完了するまでは、本アクセス処理に関しては、何
もすることが無いため、SEEK指示後は、1度チヤネルと
の接続を絶ち、再び、チヤネルからの初期起動到着判定
処理(同1)に戻る。また、アクセス対象レコードがCa
che上に格納されている場合は、キヤツシユビツト用の
データ転送を行なう(同11)。即ち、リード要求なら
ば、Cacheからチヤネルへのデータ転送を行ない、Cache
/NVS使用アクセスで、ライトヒツトならば、チヤネルか
らCache/NVSへのデータ転送を行なう。なお、Cache使用
アクセスでライトヒツトする場合は、デイスクをアクセ
スする必要が有るので、ミス時と同じ扱いとなる。
一方、チヤネルからの初期起動の到着無しと判定され
た場合は、次に、デイスクからのSEEK動作完了報告の有
無を判定する(同12)。
その結果、報告無しと判定された場合は、再び、チヤ
ネルからの初期起動到着判定処理(同1)に戻る。報告
有りと判定された場合には、アクセス実行可能SPの選択
処理II(同13)を行なう。アクセス実行可能SPの選択処
理IIの詳細については後述する。アクセス実行可能SPの
選択処理IIの結果、以降の処理を行なうSPが決定する。
このSPは、まず、チヤネルとの再接続(同14)をした後
ミス用のデータ転送を行なう(同15)。その詳細を以下
に述べる。リードミスの場合は、デイスクからチヤネル
へのデータ転送を行なつた後、アクセス対象レコード内
容をデイスクからCacheへ転送する。Cache/NVS使用アク
セスで、ライトミスの場合は、チヤネルからCache/デイ
スクへのデータ転送を行なつた後、アクセス対象レコー
ド内容をデイスクからCacheへ転送する。Cache使用アク
セスで、ライトヒツトの場合は、チヤネルからCache/デ
イスクへのデータ転送を行ない、ライトミスの場合は、
チヤネルからデイスクへのデータ転送を行なう。Cache
不使用アクセスの場合は、チヤネル−デイスク間のデー
タ転送のみ行なう。
データ転送を終えると、次に、DEV5150内の当該デイ
スク(No.=n)に対応するDEV(n)内の変数(LOCK)
の値を0に設定し(同16)、再び、チヤネルからの初期
起動到着判定処理(同1)に戻る。
以上が、第13図の動作説明である。なお、データ転送
において、使用される経路の一覧を第16図に示す。(○
印はそのアクセス方法に対応する転送路があることを示
す)。
さて、上記で説明を後述とした、アクセス実行可能SP
の選択処理I,IIの内容について以下説明する。
アクセス実行可能SPの選択処理I,IIとも、第15図のSP
−CURRENT5140テーブルを更新し、‘1'がセツトされて
いるSPを実行可能SPと判定する。SP−CURRENTは、SP−A
VAILABLE5120とDCB5130内の当該デイスクのPAMおよびPO
M、さらにSP−LEVEL5110内の適当な1レベル、計4つに
ついて、ビツトのANDをとつた値を設定する。SP−LEVEL
内のどの1レベルを用いるかは、そのデイスクのアクセ
スレベル及び、アクセス実行可能SPの選択処理がIかII
によつて決定される。その詳細を以下に説明する。先に
述べたように、ミスの場合は、1度チヤネルと切断さ
れ、改めてSPが選択されるので、アクセス実行可能SPの
選択処理Iにおいては、ヒツトした場合に実行可能なSP
を選べば良い。従つて、Cache/NVS使用アクセスの場合
は、SP−LEVELのレベル5を用い、Cache使用アクセスの
場合は、レベル3を用いれば良い。一方、アクセス実行
可能SPの選択処理IIにおいては、既に、ヒツトかミスか
の区別はついているので、それにあわせて、SP−LEVEL
を選べば良い。即ち、Cache/NVS使用アクセスの場合
は、ミスの場合だけなので、レベル4を用い、Cache使
用アクセスの場合は、それがライトヒツトならば、レベ
ル3を、ミスならば、レベル2を、それぞれ用いれば良
い。そして、Cache不使用アクセスの場合は、レベル1
を用いれば良い。
次に、アクセス実行可能SPの選択処理IIにおいて、実
行可能なSPが存在しないと判定された場合の処理につい
て述べる。これは、当該デイスクに直接アクセスでき、
かつ、デイスク−キヤツシユ間の経路が使用可能である
SPが存在しないために起こる。デイスク−キヤツシユ間
の経路を使用するローデイングは、再び同じレコードへ
のアクセスが来るのに備えて行なう処理であり、この処
理が実行できなくても何ら不都合は生じない。従つて、
実行可能なSPが存在しないと判定された場合は、ローデ
イングを除けば実行可能なSPを、実行可能SPとして選択
する。具体的にいえば、SP−LEVELとして、Cache/NVS使
用アクセスの場合は、レベル3を、Cache使用アクセス
の場合は、レベル1を、それぞれ改めて用いて、SP−CU
RRENTを作りなおす。
次に、アクセスレベル決定処理を第17図に基づき説明
する。本処理は、デイスク制御装置のコンポーネントに
障害が発生したり、保守のためにコンポーネトを一時的
に切り離したり、逆に組み込んだりして、ECMに格納し
た情報(第15図)に変更が生じた場合に、行なわれる。
まず、SP−AVAILABLE5120と、当該デイスク(No.=n)
に対応するDCB(n)のPAM,POM以上3つについて、ビツ
トごとのANDを取つたものと、SP−LEVEL5110の(レベル
1)〜(レベル5)それぞれとのビツトごとのANDをと
り、それをWORK(1)〜WORK(2)に格納する(ブロツ
ク7200)。アクセス可能SPの選択処理で述べたように、
WORK(i)は、それぞれ、以下のケースで実行可能なSP
を表わしている。
WORK(5):Cache/NVS使用アクセスで、ヒツトの場合 WORK(4):Cache/NVS使用アクセスで、ミスの場合 WORK(3):Cache使用アクセスで、ヒツトの場合 WORK(2):Cache使用アクセスで、ミスの場合 WORK(1):Cache不使用アクセスの場合 次に、WORK(5)で‘1'がたつているビツト数とWORK
(4)で‘1'がたつているビツト数のうち、小さい方を
OK−SP(3)とする(同7210)。これは、論理的にアク
セスレベル3で実行できるSPの数を表わしている。同様
に、WORK(3)′で1′がたつているビツト数とWORK
(2)で‘1'がたつているビツト数のうち、小さい方
を、OK−SP(2)とし(同7220)、WORK(1)で‘1'が
たつているビツト数をOK−SP(1)とする(同7230)。
そして、実行可能なSPがスレシヨルド以上の本数存在す
るという条件を満たすアクセスレベルのなかでも最もレ
ベルが高いものを当該デイスクのアクセスレベルとする
(同7240,7250,7260,7270)。最後に、その決定したア
クセスレベルの値を当該デイスクのDEV(n)の(LEVE
L)に設定する(同7280)。
次に、SPの機能レベル変更処理を第18図に基づき説明
する。本処理は、デイスク制御装置のコンポーネントに
障害が発生したり、保守のためにコンポーネントを一時
的に切り離したり、逆に組み込んだりして、SP−STATUS
に変更が有つた場合に、行なわれる。まずSP−STATUS51
00中の当該SP(k)に対応するSP−STATUS(k)の(p
1)〜(p4)フラグの値を判定し、そのビツトパタンに
応じSP−LEVEL5110中の当該SP(k)に対応するSP−LEV
EL(k)の値を設定する。第18図に、SP−STATUSのビツ
トパタンとSP−LEVELとの関係を示す(○印のついたSP
−STATUSのビツトがすべて‘1'の時に、そのレベルに
‘1'がセツトされる)。
なお、各デイスク(第2図60,61)に固有のパス(第1
4図の62〜67)のうちの任意のパスを保守等の目的で個
別に閉塞(再接続)する場合には、各デイスク(No.=
n)のDCB(n)のPAMのうちの該当するフラグに0
(1)を設定する。
以上説明した本実施例によれば、デイスク制御装置内
の任意のデータ転送経路の障害や各デイスク固有の任意
のパスの閉塞等が発生した場合、デイスク制御装置内の
SPが当該デイスク制御装置に接続するデイスクをアクセ
スする際に、使用できるSPをできるだけ多く残すことが
でき、デイスク制御装置の可用性を向上させることがで
きる。また保守のためのSP閉塞や、各デイスク固有の任
意のパスの閉塞等もデイスクサブシステムの稼働に大き
な影響を与えずにできるため、デイスクサブシステムを
稼働させながらの保守作業も容易となる。
〔発明の効果〕
本発明によれば、デイスク制御装置内に存在する任意
のストレージパスにおけるCache、NVSアクセス障害やス
トレージパスの閉塞、及び各デイスク固有の任意のパス
の障害や閉塞等が発生した場合にも、デイスク制御装置
内のストレージパスに生存している機能の範囲で最大限
にキヤツシユを利用しつつ、当該デイスク制御装置に接
続するデイスクをアクセスすることができ、またデイス
ク制御装置の可用性を向上させることができる。また保
守のためのストレージパスの閉塞や、各デイスクに固有
の任意のパス閉塞等もデイスクサブシステムの稼働に大
きな影響を与えずに出きるため、デイスクサブシステム
を稼働させながらの保守作業が容易と成る。
【図面の簡単な説明】
第1図は本実施例によるデイスクサブシステム、およ
び、デイスク制御装置のブロツク構成図、第2図はデイ
スク制御装置内の共通制御メモリの内容、第3図はデイ
スク制御装置内の各ストレージパスの動作手順を示すフ
ローチヤート、第4図はストレージパスの動作における
アクセス可否判定処理手順の詳細フローチヤート、第5
図はストレージパスの動作におけるデイスクのアクセス
レベル変更処理手順(1)の詳細フローチヤート、第6
図はストレージパスの動作におけるデイスクのアクセス
レベル変更処理手順(2)の詳細フローチヤート、第7
図はストレージパスの動作におけるSP障害要因設定処理
手順の詳細フローチヤート、第8図はストレージパスの
動作におけるSP機能レベル変更処理手順の詳細フローチ
ヤート、第9図は1つの論理的SPを2つのモジユールで
構成する例、第10図は論理的SPを構成する2つのモジユ
ールの状態を管理するテーブルの構成、第11図は論理的
SPの状態とそれを構成する2つのモジユール状態の対応
関係を与えるデシジヨンテーブル、第12図はある論理的
SPを構成する2つのモジユールと他の論理的SPを構成す
る2つのモジユールどうしがクロスパスを持つ場合の論
理的SPの構成、第13図は本発明をキヤツシユ付デイスク
制御装置に適用した場合の処理手順を示すフローチヤー
ト、第14図は本発明に係るキヤツシユ付デイスク制御装
置を含むデイスクサブシステムのブロツク構成図、第15
図は本発明を用いた制御に必要な情報をテーブル形式で
整理した図、第16図はデータ転送時に使用される経路の
一覧図、第17図はアクセスレベル決定処理の手順を示す
フローチヤート、第18図はSP機能レベル変更処理に使わ
れるSP−LEVELとSP−STATUSとの関係を示す図である。
フロントページの続き (72)発明者 栗原 謙三 神奈川県川崎市麻生区王禅寺1099番地 株式会社日立製作所システム開発研究所 内 (72)発明者 桑原 善祥 神奈川県小田原市国府津2880番地 株式 会社日立製作所小田原工場内 (72)発明者 本間 繁雄 神奈川県小田原市国府津2880番地 株式 会社日立製作所小田原工場内 (56)参考文献 特開 昭59−55558(JP,A) 特開 昭60−79447(JP,A) (58)調査した分野(Int.Cl.6,DB名) G06F 3/06 G06F 12/08

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】チヤネルとデイスクの間のデータ転送を制
    御する複数のストレージパスと、各ストレージパスがリ
    ード及びライト可能なキヤツシユとを有するデイスク制
    御装置におけるデイスクアクセス制御方法であって、 ストレージパス毎に、(a)チヤネルが当該ストレージ
    パスを介してデイスクの直接リード、ライトが可能であ
    り、チヤネルが当該ストレージパスを介してキヤツシユ
    のリード、ライトが可能であることを示す機能レベル
    3、(b)チヤネルが当該ストレージパスを介してデイ
    スクの直接リード、ライトが可能であり、チヤネルが当
    該ストレージパスを介してキヤツシユのリードのみ可能
    であることを示す機能レベル2、(c)チヤネルが当該
    ストレージパスを介してデイスクの直接リード、ライト
    が可能であり、チヤネルが当該ストレージパスを介して
    キヤツシユのリード、ライト共に不可能であることを示
    す機能レベル1、のいずれの機能レベルであるかを保持
    する第1のテーブルと、 デイスク毎に、(d)当該デイスクは機能レベル3のス
    トレージパスからのみアクセス可能であることを示すア
    クセスレベル3、(e)当該デイスクは機能レベル2ま
    たは3のストレージパスからのみアクセス可能であるこ
    とを示すアクセスレベル2、(f)当該デイスクは機能
    レベル1、2または3のストレージパスからアクセス可
    能であることを示すアクセスレベル1、(g)当該デイ
    スクはアクセス禁止状態であることを示すアクセスレベ
    ル0、のいずれのアクセスレベルであるかを保持する第
    2のテーブルを設け、 いずれかのチヤネルからのいずれかのデイスクへの初期
    起動要求に応じて、前記第1及び第2のテーブルを参照
    して、当該デイスクのアクセスレベルがアクセス可能を
    示す機能レベルのストレージパスを選択し、 当該選択したストレージパスを用いて、当該ストレージ
    パスの機能レベルが示すキヤツシユ使用形態で前記チヤ
    ネルからの前記初期起動を受け付けることを特徴とする
    デイスク制御装置におけるデイスクアクセス制御方法。
  2. 【請求項2】チヤネルとデイスクの間のデータ転送を制
    御する複数のストレージパスと、各ストレージパスがリ
    ード及びライト可能なキヤツシユと、当該キャッシュを
    バックアップするメモリとを有するデイスク制御装置に
    おけるディスクアクセス制御方法であって、 ストレージパス毎に、(a)チヤネルが当該ストレージ
    パスを介してデイスクの直接アクセスが可能であり、チ
    ヤネルが当該ストレージパスを介してキヤツシユのアク
    セスが可能であり、チヤネルが当該ストレージパスを介
    して前記メモリのアクセスが可能であることを示す機能
    レベル5、(b)チヤネルが当該ストレージパスを介し
    てデイスクの直接アクセスが可能であり、チヤネルが当
    該ストレージパスを介してキヤツシユのアクセスが可能
    であり、当該ストレージパスを介してデイスクとキヤツ
    シユとの間のアクセスが可能であることを示す機能レベ
    ル4、(c)チヤネルが当該ストレージパスを介してデ
    イスクの直接アクセスが可能であり、当該ストレージパ
    スを介してチヤネルとキヤツシユとの間のアクセスが可
    能であることを示す機能レベル3、(d)チヤネルが当
    該ストレージパスを介してデイスクの直接アクセスが可
    能であり、当該ストレージパスを介してチヤネルとデイ
    スクとの間のアクセスが可能であることを示す機能レベ
    ル2、(e)チヤネルが当該ストレージパスを介してデ
    イスクの直接アクセスが可能であることを示す機能レベ
    ル1、のいずれの機能レベルであるかを保持する第1の
    テーブルと、 デイスク毎に、(f)当該デイスクはキヤツシユ及び前
    記メモリを使用してアクセスすることを示すアクセスレ
    ベル3、(g)当該デイスクはキヤツシユを使用し、前
    記メモリを使用せずにアクセスすることを示すアクセス
    レベル2、(h)当該デイスクはキヤツシユ及び前記メ
    モリを使用せずにアクセスすることを示すアクセスレベ
    ル1、(i)当該デイスクはアクセス禁止状態であるこ
    とを示すアクセスレベル0、のいずれのアクセスレベル
    であるかを保持する第2のテーブルを設け、 いずれかのデイスクからSEEK完了が報告されたことに応
    じて、前記第1及び第2のテーブルを参照して、当該デ
    イスクがアクセスを許可される機能レベルのストレージ
    パスを選択し、 当該選択したストレージパスを用いて、当該ストレージ
    パスの機能レベルが示すキヤツシユ使用形態でチヤネル
    との再接続を行なうことを特徴とするデイスク制御装置
    におけるデイスクアクセス制御方法。
  3. 【請求項3】チヤネルとデイスクの間のデータ転送を制
    御する複数のストレージパスと、各ストレージパスがリ
    ード及びライト可能なキヤツシユとを有するデイスク制
    御装置におけるデイスクアクセス制御方法であって、 いずれかのチヤネルからのいずれかのデイスクへの初期
    起動要求に応じて、当該チヤネルがキヤツシユをアクセ
    ス可能な第1のストレージパスを用いて前記初期起動を
    受け付け、 前記デイスクからSEEK完了が報告されたことに応じて、
    当該デイスクがキヤツシユをアクセス可能な第1と異な
    る第2のストレージパスを用いてチヤネルとの再接続を
    行なうことを特徴とするデイスク制御装置におけるデイ
    スクアクセス制御方法。
JP63240977A 1988-09-28 1988-09-28 ディスク制御装置におけるディスクアクセス制御方法 Expired - Lifetime JP2776841B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP63240977A JP2776841B2 (ja) 1988-09-28 1988-09-28 ディスク制御装置におけるディスクアクセス制御方法
DE3932474A DE3932474C2 (de) 1988-09-28 1989-09-28 Plattenzugriff-Steuerverfahren
US08/089,633 US5404487A (en) 1988-09-28 1993-07-12 Disc access control method for cache-embedded disc control apparatus with function-degradation capability of data transmission path

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63240977A JP2776841B2 (ja) 1988-09-28 1988-09-28 ディスク制御装置におけるディスクアクセス制御方法

Publications (2)

Publication Number Publication Date
JPH0290313A JPH0290313A (ja) 1990-03-29
JP2776841B2 true JP2776841B2 (ja) 1998-07-16

Family

ID=17067477

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63240977A Expired - Lifetime JP2776841B2 (ja) 1988-09-28 1988-09-28 ディスク制御装置におけるディスクアクセス制御方法

Country Status (3)

Country Link
US (1) US5404487A (ja)
JP (1) JP2776841B2 (ja)
DE (1) DE3932474C2 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0375946A (ja) * 1989-08-18 1991-03-29 Hitachi Ltd 入出力制御方式
JP2826857B2 (ja) * 1989-12-13 1998-11-18 株式会社日立製作所 キャッシュ制御方法および制御装置
FR2656441B1 (fr) * 1989-12-22 1993-12-10 Bull Sa Procede securise d'ecriture rapide d'informations pour dispositif de memoire de masse.
JP3058743B2 (ja) * 1992-01-21 2000-07-04 株式会社日立製作所 ディスクアレイ制御装置
US5734926A (en) * 1992-07-15 1998-03-31 Advanced Hardware Architectures Direct memory access controller in an integrated circuit
US5452421A (en) * 1992-09-23 1995-09-19 International Business Machines Corporation System for using register sets and state machines sets to communicate between storage controller and devices by using failure condition activity defined in a request
US5666511A (en) * 1992-10-08 1997-09-09 Fujitsu Limited Deadlock suppressing schemes in a raid system
US5771367A (en) * 1992-12-17 1998-06-23 International Business Machines Corporation Storage controller and method for improved failure recovery using cross-coupled cache memories and nonvolatile stores
JP3600257B2 (ja) * 1993-05-31 2004-12-15 富士通株式会社 情報処理装置及びキャッシュ制御装置
US5588129A (en) * 1994-02-09 1996-12-24 Ballard; Clinton L. Cache for optical storage device and method for implementing same
US5584007A (en) * 1994-02-09 1996-12-10 Ballard Synergy Corporation Apparatus and method for discriminating among data to be stored in cache
US5867736A (en) * 1996-03-29 1999-02-02 Lsi Logic Corporation Methods for simplified integration of host based storage array control functions using read and write operations on a storage array control port
US5787466A (en) * 1996-05-01 1998-07-28 Sun Microsystems, Inc. Multi-tier cache and method for implementing such a system
US6167486A (en) * 1996-11-18 2000-12-26 Nec Electronics, Inc. Parallel access virtual channel memory system with cacheable channels
US6145028A (en) * 1997-12-11 2000-11-07 Ncr Corporation Enhanced multi-pathing to an array of storage devices
JP3726484B2 (ja) * 1998-04-10 2005-12-14 株式会社日立製作所 記憶サブシステム
US6735636B1 (en) 1999-06-28 2004-05-11 Sepaton, Inc. Device, system, and method of intelligently splitting information in an I/O system
JP2003503796A (ja) * 1999-06-28 2003-01-28 サンゲート システムズ インク. インテリジェントスプリッタ、システム、および使用方法
US6708254B2 (en) 1999-11-10 2004-03-16 Nec Electronics America, Inc. Parallel access virtual channel memory system
US6782401B2 (en) 2001-07-02 2004-08-24 Sepaton, Inc. Method and apparatus for implementing a reliable open file system
JP4462852B2 (ja) * 2003-06-23 2010-05-12 株式会社日立製作所 ストレージシステム及びストレージシステムの接続方法
JP4012498B2 (ja) 2003-11-18 2007-11-21 株式会社日立製作所 情報処理システム、情報処理装置、情報処理装置の制御方法及びプログラム
JP2005301419A (ja) * 2004-04-07 2005-10-27 Hitachi Ltd ディスクアレイ装置およびそのデータ処理方法
US7904644B1 (en) * 2006-11-01 2011-03-08 Marvell International Ltd. Disk channel system with sector request queue
US9280477B2 (en) * 2010-12-13 2016-03-08 Seagate Technology Llc Data storage management in a memory device
US8627124B2 (en) * 2011-02-10 2014-01-07 International Business Machines Corporation Techniques for performing storage power management
US10229221B1 (en) * 2012-03-01 2019-03-12 EMC IP Holding Company LLC Techniques for cache updates based on quality of service
KR101864831B1 (ko) * 2013-06-28 2018-06-05 세종대학교산학협력단 가상 캐시를 포함하는 메모리 및 그 관리 방법
US11036509B2 (en) 2015-11-03 2021-06-15 Intel Corporation Enabling removal and reconstruction of flag operations in a processor
CN112988036A (zh) * 2019-12-16 2021-06-18 瑞昱半导体股份有限公司 存储器数据存取装置及其方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5362945A (en) * 1976-11-17 1978-06-05 Toshiba Corp Disc address system
US4437155A (en) * 1980-11-14 1984-03-13 Sperry Corporation Cache/disk subsystem with dual aging of cache entries
US4476526A (en) * 1981-11-27 1984-10-09 Storage Technology Corporation Cache buffered memory subsystem
US4636946A (en) * 1982-02-24 1987-01-13 International Business Machines Corporation Method and apparatus for grouping asynchronous recording operations
JPS5955558A (ja) * 1982-09-22 1984-03-30 Fujitsu Ltd キヤツシユメモリ制御方式
JPS59100964A (ja) * 1982-12-01 1984-06-11 Hitachi Ltd ディスク制御システム及びその並列データ転送方法
US4686621A (en) * 1983-06-30 1987-08-11 Honeywell Information Systems Inc. Test apparatus for testing a multilevel cache system with graceful degradation capability
JPS6079447A (ja) * 1983-10-07 1985-05-07 Hitachi Ltd キヤツシユ付デイスクサブシステム
US4958351A (en) * 1986-02-03 1990-09-18 Unisys Corp. High capacity multiple-disk storage method and apparatus having unusually high fault tolerance level and high bandpass
KR910007027B1 (en) * 1987-03-28 1991-09-16 Toshiba Corp Memory access control apparatus
US4858117A (en) * 1987-08-07 1989-08-15 Bull Hn Information Systems Inc. Apparatus and method for preventing computer access by unauthorized personnel
US5025366A (en) * 1988-01-20 1991-06-18 Advanced Micro Devices, Inc. Organization of an integrated cache unit for flexible usage in cache system design
US5142627A (en) * 1988-11-17 1992-08-25 Unisys Corporation FIP-compliant block multiplexor channel interface operational method for cache/disk subsystem
US5070502A (en) * 1989-06-23 1991-12-03 Digital Equipment Corporation Defect tolerant set associative cache

Also Published As

Publication number Publication date
DE3932474C2 (de) 1996-07-18
US5404487A (en) 1995-04-04
JPH0290313A (ja) 1990-03-29
DE3932474A1 (de) 1990-04-05

Similar Documents

Publication Publication Date Title
JP2776841B2 (ja) ディスク制御装置におけるディスクアクセス制御方法
US9940043B2 (en) Systems and methods for performing storage operations in a computer network
US5640530A (en) Use of configuration registers to control access to multiple caches and nonvolatile stores
US7111134B2 (en) Subsystem and subsystem processing method
JP4437489B2 (ja) 揮発性キャッシュメモリと不揮発性メモリとを備えたストレージシステム
US7281158B2 (en) Method and apparatus for the takeover of primary volume in multiple volume mirroring
US20030158999A1 (en) Method and apparatus for maintaining cache coherency in a storage system
US6604171B1 (en) Managing a cache memory
JP2002259063A (ja) バックアップ処理可能な記憶システム
JPH04278641A (ja) データ記憶システム及び方法
US6079000A (en) XPC backup for in-process audit
US6681291B2 (en) Storage controller and control method thereof
US20040133741A1 (en) Disk array apparatus and data writing method used in the disk array apparatus
EP0303856B1 (en) Method and apparatus for maintaining duplex-paired devices by means of a dual copy function
US20030177309A1 (en) Coherence preservation method of duplicated data in RAID subsystem
JP3150317B2 (ja) キヤツシユ付きデイスク制御装置におけるデイスクアクセス制御方法
JP2001100930A (ja) ミラーディスク制御装置
JP3425355B2 (ja) 多重書き込み記憶装置
JPH07328072A (ja) キャッシュ制御方法および情報処理装置
JP2000267936A (ja) ディスクサブシステム
JP3612209B2 (ja) 磁気ディスク制御装置によるリモート転送方法
JPH09319655A (ja) キャッシュ管理方法および記憶装置システム
JPH0199134A (ja) バックアップデータ管理システム
JP2001043027A (ja) キャッシュ付きディスクアレイ装置
JP2011227936A (ja) 障害管理装置及びプログラム

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080501

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090501

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090501

Year of fee payment: 11