JPH0394321A - アクセス制御方法 - Google Patents
アクセス制御方法Info
- Publication number
- JPH0394321A JPH0394321A JP2159785A JP15978590A JPH0394321A JP H0394321 A JPH0394321 A JP H0394321A JP 2159785 A JP2159785 A JP 2159785A JP 15978590 A JP15978590 A JP 15978590A JP H0394321 A JPH0394321 A JP H0394321A
- Authority
- JP
- Japan
- Prior art keywords
- data group
- dasd
- processing device
- reserve
- data
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2071—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/74—Masking faults in memories by using spares or by reconfiguring using duplex memories, i.e. using dual copies
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は2台以上の中央処理装置と磁気ディスク装置や
磁気ドラム装置や半導体記憶装置などの直接アクセス記
憶装置(DASD)を備える計算機システムにおいて、
複数の中央処理装置が1組以上の2重化DASDを共用
するための排他制御方法に係り、特にDASDの固定的
なアクセス障害発生時の可用性を増し該計算機システム
を高信頼化するのに好適な2重化共用DASD制御方法
に関する。
磁気ドラム装置や半導体記憶装置などの直接アクセス記
憶装置(DASD)を備える計算機システムにおいて、
複数の中央処理装置が1組以上の2重化DASDを共用
するための排他制御方法に係り、特にDASDの固定的
なアクセス障害発生時の可用性を増し該計算機システム
を高信頼化するのに好適な2重化共用DASD制御方法
に関する。
従来、複数の中央処理装置がDASD装置を共有する計
算機システムでは、特開昭61−20148号及び特開
昭61−43356号に記載の、DASD装置とは独立
に接続されたファイル制御装置を設け、l台のDASD
装置を論理的に分割したアクセス単位であるブロック単
位に排他制御を実施していた。
算機システムでは、特開昭61−20148号及び特開
昭61−43356号に記載の、DASD装置とは独立
に接続されたファイル制御装置を設け、l台のDASD
装置を論理的に分割したアクセス単位であるブロック単
位に排他制御を実施していた。
また、複数の中央処理装置が一対の2重化したDASD
装置を共有する、特開昭61−32151号に記載の計
算機シテスムでは、DASD装置あるいはその装置の制
御装置内の排他制御回路によりDASD装置全体をリザ
ーブあるいはリリースするハードウェアリザーブ機能を
用いるか、複数の中央処理装置間のリザーブあるいはリ
リース要求の通信により2重化共用DASD装置へのア
クセスの排他制御を実施していた。
装置を共有する、特開昭61−32151号に記載の計
算機シテスムでは、DASD装置あるいはその装置の制
御装置内の排他制御回路によりDASD装置全体をリザ
ーブあるいはリリースするハードウェアリザーブ機能を
用いるか、複数の中央処理装置間のリザーブあるいはリ
リース要求の通信により2重化共用DASD装置へのア
クセスの排他制御を実施していた。
また、一対の2重化共用DASD装置における1方のD
ASD装置の障害回復処理として、特開昭61−629
18号では、当該DASD装置全体を閉塞した後、新た
に追加したDASD装置上に必要なデータセットを更構
築することにより一対の2重化DASD装置の運転を継
続してきた。
ASD装置の障害回復処理として、特開昭61−629
18号では、当該DASD装置全体を閉塞した後、新た
に追加したDASD装置上に必要なデータセットを更構
築することにより一対の2重化DASD装置の運転を継
続してきた。
また.DASD装置の障害が発生した場合は特開昭61
−67153号では、障害発生部分を避け予め確保して
いる予備領域を交代領域として割り当て、使用する障害
回復方式を開示している。
−67153号では、障害発生部分を避け予め確保して
いる予備領域を交代領域として割り当て、使用する障害
回復方式を開示している。
上記従来技術はDASD装置障害時の閉塞管理をDAS
D装置1台単位に行っている。すなわち,DASD装置
上で部分障害が発生した場合には,予備領域を該障害部
分の代替領域として割り当て、中央処理装置には部分的
な障害を意識させない制御方式になっている。従って、
DASD装置全体のアクセスが不可能となった場合のみ
ならず、部分的な障害が多発し代替領域が不足した場合
にもDASD装置l台単位の閉塞処理を実施している。
D装置1台単位に行っている。すなわち,DASD装置
上で部分障害が発生した場合には,予備領域を該障害部
分の代替領域として割り当て、中央処理装置には部分的
な障害を意識させない制御方式になっている。従って、
DASD装置全体のアクセスが不可能となった場合のみ
ならず、部分的な障害が多発し代替領域が不足した場合
にもDASD装置l台単位の閉塞処理を実施している。
たとえばDASD装置の一種である磁気ディスク装置で
は障害の物理的管理単位としてトラックを前提としたも
のが多い。つまり、中央処理装置からの入出力要求を受
け付けたディスク制御装置が読みだしまたは書き込みが
できないアクセス障害部分を検出すると、ディスク制御
装置はその部分を含む1トラックを予備の1トラックに
割り当てる交代トラック割当を行う。しかし、部分障害
が多発し交代トラックを全て使いきった状態になると,
以後はディスク装置上で1トラックのアクセス障害が発
生しただけでディスク装置全体を閉塞していた。
は障害の物理的管理単位としてトラックを前提としたも
のが多い。つまり、中央処理装置からの入出力要求を受
け付けたディスク制御装置が読みだしまたは書き込みが
できないアクセス障害部分を検出すると、ディスク制御
装置はその部分を含む1トラックを予備の1トラックに
割り当てる交代トラック割当を行う。しかし、部分障害
が多発し交代トラックを全て使いきった状態になると,
以後はディスク装置上で1トラックのアクセス障害が発
生しただけでディスク装置全体を閉塞していた。
2重化DASD装置において一方のDASD装置が上記
のような閉塞状態になると、残った側のDASD装置で
固定的アクセス障害がさらに発生すると一対の2重化D
ASD上にある全ての2重化データセットがアクセス不
可能になる。
のような閉塞状態になると、残った側のDASD装置で
固定的アクセス障害がさらに発生すると一対の2重化D
ASD上にある全ての2重化データセットがアクセス不
可能になる。
つまり、交代トラックなどの代替領域が不足した状態の
元では、部分障害の場合にも一対の2重化DASD装置
全体にわたって2重化されたアクセスが不可能となり、
2重化アクセス実行時に比較して当該DASD装置の信
頼性が著しく低下するという問題点があった。
元では、部分障害の場合にも一対の2重化DASD装置
全体にわたって2重化されたアクセスが不可能となり、
2重化アクセス実行時に比較して当該DASD装置の信
頼性が著しく低下するという問題点があった。
また、2重化されたアクセスが可能な場合は、異なるデ
ータセットへのアクセス時や読みだし専用のアクセス時
など、複数のCPUが別々のDASD装置にたいして並
列にアクセスできるが、1台のDASD装置単位の閉塞
により2重化アクセスが不可能になると、複数CPUの
アクセスが1台のDASD装置に集中するため2台のD
ASD装置に対するアクセスの分散という処理の並列性
が損なわれ、計算機システムの処理性能が低く抑えられ
るという問題点があった。
ータセットへのアクセス時や読みだし専用のアクセス時
など、複数のCPUが別々のDASD装置にたいして並
列にアクセスできるが、1台のDASD装置単位の閉塞
により2重化アクセスが不可能になると、複数CPUの
アクセスが1台のDASD装置に集中するため2台のD
ASD装置に対するアクセスの分散という処理の並列性
が損なわれ、計算機システムの処理性能が低く抑えられ
るという問題点があった。
また,上記従来技術では一対の2重化DASDを共有す
る計算機システムを構築するためには、排他制御用のC
PU間通信路または排他制御を実行するファイル制御装
置との通信路を設け、各CPUは特定の通信手順に従っ
てデータセットのリザーブあるいはリリースを実行する
必要がある。
る計算機システムを構築するためには、排他制御用のC
PU間通信路または排他制御を実行するファイル制御装
置との通信路を設け、各CPUは特定の通信手順に従っ
てデータセットのリザーブあるいはリリースを実行する
必要がある。
すなわち上記従来技術では、CPU間通信路の場合でも
ファイル制御装置との通信路の場合でも、標準的な入出
力装置に使用される通信路と同じものを使用するので、
1回の通信を実行する度に入出力チャネル用のコマンド
作成とデータ作或、入出力チャネルの起動、入出力割り
込み待ち、入出力割り込み処理などの処理が必要となる
。
ファイル制御装置との通信路の場合でも、標準的な入出
力装置に使用される通信路と同じものを使用するので、
1回の通信を実行する度に入出力チャネル用のコマンド
作成とデータ作或、入出力チャネルの起動、入出力割り
込み待ち、入出力割り込み処理などの処理が必要となる
。
しかし、小規模な計算機システムではその通信手順によ
る処理オーバヘッドが無視できなくなる。
る処理オーバヘッドが無視できなくなる。
また、ファイル制御装置を用いてデータセット単位にア
クセスを制御する上記従来技術では複数のCPUが同時
にファイル制御装置にアクセスしている場合、1台のC
PUが頻繁にファイル制御装置へのアクセスを実施する
ために他のCPUからのファイル制御装置へのアクセス
が沈みこむ恐れがある。
クセスを制御する上記従来技術では複数のCPUが同時
にファイル制御装置にアクセスしている場合、1台のC
PUが頻繁にファイル制御装置へのアクセスを実施する
ために他のCPUからのファイル制御装置へのアクセス
が沈みこむ恐れがある。
本発明の第1の目的は上記問題点を解決するため、l台
のDASD装置の部分障害時、障害発生部分のみについ
て2重化されたDASDとしての機能を停止し,その部
分については1台のDASD装置として動作する、DA
SDアクセス制御方法を提供することにある。
のDASD装置の部分障害時、障害発生部分のみについ
て2重化されたDASDとしての機能を停止し,その部
分については1台のDASD装置として動作する、DA
SDアクセス制御方法を提供することにある。
本発明の第2の目的は、上記問題点を解決するため,デ
ータセットリザーブあるいはリリースを、ランダムアク
セスメモリのアクセス程度の、少ないオーバヘッドで実
施する、DASDアクセス制御方法を提供することにあ
る。
ータセットリザーブあるいはリリースを、ランダムアク
セスメモリのアクセス程度の、少ないオーバヘッドで実
施する、DASDアクセス制御方法を提供することにあ
る。
本発明の第3の目的は、上記問題点を解決するため、1
台のCPUからのファイル制御装置アクセス要求が頻発
した場合でも、他のCPUからの要求がその間に必ず入
ることができる共有メモリ装置を備えた計算機システム
を提供することにある。
台のCPUからのファイル制御装置アクセス要求が頻発
した場合でも、他のCPUからの要求がその間に必ず入
ることができる共有メモリ装置を備えた計算機システム
を提供することにある。
上記第1の目的を達或するために,一対の2重化DAS
D装置を共用する複数のCPUがそのDASD装置をア
クセスする際、各CPUで次に示すDASDアクセス制
御方法を用いる。
D装置を共用する複数のCPUがそのDASD装置をア
クセスする際、各CPUで次に示すDASDアクセス制
御方法を用いる。
すなわち、一対の2重化DASD上に含まれる複数組の
2重化されたデータセットのうち一方のDASD上のデ
ータセットが回復不可能な障害になった場合、その情報
を記憶しておく。さらに、2重化DASDをアクセスす
る場合、障害が発生したデータセットについては、一対
の2重化DASD上で障害が発生していない側のDAS
D上のデータセットをアクセスし、障害が発生していな
いデータセットについては、任意のDASD上のデータ
セットをアクセスする。
2重化されたデータセットのうち一方のDASD上のデ
ータセットが回復不可能な障害になった場合、その情報
を記憶しておく。さらに、2重化DASDをアクセスす
る場合、障害が発生したデータセットについては、一対
の2重化DASD上で障害が発生していない側のDAS
D上のデータセットをアクセスし、障害が発生していな
いデータセットについては、任意のDASD上のデータ
セットをアクセスする。
また、上記第2の目的を達成するために、2重化された
データセットのアクセス制御情報をランダムアクセスメ
モリ内に記憶し、各CPUが2重化DASD装置をアク
セスする際にはランダムアクセスメモリ内のアクセス制
御情報にしたがうアクセス制御方法を用いる。
データセットのアクセス制御情報をランダムアクセスメ
モリ内に記憶し、各CPUが2重化DASD装置をアク
セスする際にはランダムアクセスメモリ内のアクセス制
御情報にしたがうアクセス制御方法を用いる。
また、上記第3の目的を達成するために、複数台のCP
Uから接続される共有メモリ装置において、同時にリザ
ーブに成功したl台のCPUのみがアクセスするように
制御するリザーブ手段とランダムアクセスメモリ制御手
段を備えた共有メモリ装置を用いる。リザーブ手段、複
数のCPUからのリザーブが競合した場合には同一CP
Uからのリザーブ要求を連続して受け付けることを禁止
する交互アクセス制御を行なう。
Uから接続される共有メモリ装置において、同時にリザ
ーブに成功したl台のCPUのみがアクセスするように
制御するリザーブ手段とランダムアクセスメモリ制御手
段を備えた共有メモリ装置を用いる。リザーブ手段、複
数のCPUからのリザーブが競合した場合には同一CP
Uからのリザーブ要求を連続して受け付けることを禁止
する交互アクセス制御を行なう。
一対の2重化DASDを共用する複数のCPU間でデー
タセット1個毎にデータセットのアクセス障害を意味す
る制御情報を用意することにより、共用DASD上の一
対の2重化したデータセットへのアクセスの可否を1個
のデータセット単位に制御することができる。これによ
り、DASDの部分的な固定障害が発生した場合でも、
障害部分を含むl個のデータセットを単位として部分閉
塞し,アクセスを禁止することができる.2重化された
一対のデータセットのうち、両方ともに障害が発生して
いないデータセットについては、任意の一方または両方
のデータセットをアクセスできる。
タセット1個毎にデータセットのアクセス障害を意味す
る制御情報を用意することにより、共用DASD上の一
対の2重化したデータセットへのアクセスの可否を1個
のデータセット単位に制御することができる。これによ
り、DASDの部分的な固定障害が発生した場合でも、
障害部分を含むl個のデータセットを単位として部分閉
塞し,アクセスを禁止することができる.2重化された
一対のデータセットのうち、両方ともに障害が発生して
いないデータセットについては、任意の一方または両方
のデータセットをアクセスできる。
また、共有メモリ装置内の記録の読みだしと書き込みは
、CPUで直接実行される共有メモリ装置をアクセスす
る命令により実行できる。
、CPUで直接実行される共有メモリ装置をアクセスす
る命令により実行できる。
また,特定のCPUからの共有メモリ装置アクセスが沈
みこまないことは、共有メモリ装置のリザーブ回路で交
互アクセス制御を行なうことにより、2台以上のCPU
からの同時アクセスが発生したときには一方のCPUが
アクセスした後には必ず他のCPUのアクセスが許可さ
れることにより実現される。
みこまないことは、共有メモリ装置のリザーブ回路で交
互アクセス制御を行なうことにより、2台以上のCPU
からの同時アクセスが発生したときには一方のCPUが
アクセスした後には必ず他のCPUのアクセスが許可さ
れることにより実現される。
以下,本発明の実施例を図を用いて説明する。
第1図は本発明による大型計算機の構或を示している。
本大型計算機システムは、2台の命令処理装置(IP)
(114−1と114−2)が同一のオペレーティング
システムの下で動作することにより全体で1台の計算機
として動作するシングルモード動作と、2台のIP (
114−1,114−2)が個別のオペレーティングシ
ステムの下で動作することにより2台の別々の計算機と
して動作するセパレートモード動作が可能である。
(114−1と114−2)が同一のオペレーティング
システムの下で動作することにより全体で1台の計算機
として動作するシングルモード動作と、2台のIP (
114−1,114−2)が個別のオペレーティングシ
ステムの下で動作することにより2台の別々の計算機と
して動作するセパレートモード動作が可能である。
この中央処理装置(CPU)(101−1,101−2
)は、一般にはサービスプロセッサと呼ばれ2台の命令
処理装置(IP)(103−1,103−2)と,2台
の入出力処理装置(IOP)(114−1,114−2
)の起動や保守を行う。
)は、一般にはサービスプロセッサと呼ばれ2台の命令
処理装置(IP)(103−1,103−2)と,2台
の入出力処理装置(IOP)(114−1,114−2
)の起動や保守を行う。
すなわち、大型計算機の起動時にはIP (103−1
,103−2)やIOP (114−1,114−2)
のリセットやマイクロプログラムのロードを行い、障害
時や保守時にはIP (103−1,103−2)やI
OP (114−1,114−2)の内部情報を保存す
るため、一対の共用ディスク装置(110−1,110
−2)からのデー′夕の読み込みとデータの書き込みを
実行する。
,103−2)やIOP (114−1,114−2)
のリセットやマイクロプログラムのロードを行い、障害
時や保守時にはIP (103−1,103−2)やI
OP (114−1,114−2)の内部情報を保存す
るため、一対の共用ディスク装置(110−1,110
−2)からのデー′夕の読み込みとデータの書き込みを
実行する。
このようなIP (103−1,103−2)とIOP
(114−1,114−2)の起動と保守は、セパレ
ートモードで動作するシステムにおいては個別に随時実
行できなければならないので、中央処理装置(101−
1と101−2)は2台備えられている。さらにシング
ルモードで動作する場合には一方の中央処理装置(10
1−1または101−2)により起動と保守を行わなけ
ればならないので一方の中央処理装置(101−1また
は101−2)から全ての情報を得る必要があり、ハー
ドウェアの構戒情報などディスク装置に記録する情報は
2台の中央処理装置(101−1と102−2)間で共
有されなければならない。
(114−1,114−2)の起動と保守は、セパレ
ートモードで動作するシステムにおいては個別に随時実
行できなければならないので、中央処理装置(101−
1と101−2)は2台備えられている。さらにシング
ルモードで動作する場合には一方の中央処理装置(10
1−1または101−2)により起動と保守を行わなけ
ればならないので一方の中央処理装置(101−1また
は101−2)から全ての情報を得る必要があり、ハー
ドウェアの構戒情報などディスク装置に記録する情報は
2台の中央処理装置(101−1と102−2)間で共
有されなければならない。
以上の理由により本実施例における中央処理装置(10
1−1,101−2)は2台装備され、両者はディスク
装置(110−1,110−2)を共用する6 第1図において中央処理装置(A)(101一1)と中
央処理装置(B)(101−2)は完全に同一の構或に
なっており、同じ条件なら同じ動作を行う.従って、動
作については一方の中央処理装置を説明すれば十分であ
り、以下、中央処理装置(A)(101−1)を中心に
説明する。
1−1,101−2)は2台装備され、両者はディスク
装置(110−1,110−2)を共用する6 第1図において中央処理装置(A)(101一1)と中
央処理装置(B)(101−2)は完全に同一の構或に
なっており、同じ条件なら同じ動作を行う.従って、動
作については一方の中央処理装置を説明すれば十分であ
り、以下、中央処理装置(A)(101−1)を中心に
説明する。
中央処理装ii! (101−1)の内部はプログラム
を格納する主記憶装置(112).そのプログラムを実
行するマイクロプロセッサ(1 1 1)、IP (1
03−1,103−2)、 工○P (114−1,114−2)を接続するIPア
ダプタ(106),2台のディスク装置アダプタ(10
5)、共有メモリアダプタ(104)により構威されて
おり、それらは互いに共通バス(1 1 3)により接
続されている。
を格納する主記憶装置(112).そのプログラムを実
行するマイクロプロセッサ(1 1 1)、IP (1
03−1,103−2)、 工○P (114−1,114−2)を接続するIPア
ダプタ(106),2台のディスク装置アダプタ(10
5)、共有メモリアダプタ(104)により構威されて
おり、それらは互いに共通バス(1 1 3)により接
続されている。
中央処理装置(101−1)内のIPアダプタ(1 0
6)からは、対応するIP (103−1,103−
2)とIOP (114−1,114−2)が接続され
ている。各IOP (114−1 ;114−2)には
周辺装置として磁気ディスク装置(115−1 ; 1
15−2) 、通信制御処理装置(116−1 ; 1
16−2).ラインプリンタ(117−1 ; 117
−2).カードリーダ(118−1,118−2)が接
続される。
6)からは、対応するIP (103−1,103−
2)とIOP (114−1,114−2)が接続され
ている。各IOP (114−1 ;114−2)には
周辺装置として磁気ディスク装置(115−1 ; 1
15−2) 、通信制御処理装置(116−1 ; 1
16−2).ラインプリンタ(117−1 ; 117
−2).カードリーダ(118−1,118−2)が接
続される。
これらの周辺装置群はIP (103−1または103
−2)上で動作するプログラムにより使用される装置で
あり,中央処理装置(101−1,101−2)からは
使用しない。また、共用ディスク装置(110−1,1
10−2)は各IOP(114−1,114−2)に接
続される周辺装置群ではなく、それらの装置群とはまっ
たく独立に動作する。
−2)上で動作するプログラムにより使用される装置で
あり,中央処理装置(101−1,101−2)からは
使用しない。また、共用ディスク装置(110−1,1
10−2)は各IOP(114−1,114−2)に接
続される周辺装置群ではなく、それらの装置群とはまっ
たく独立に動作する。
前に示したように中央処理装置(A)(101−1)と
中央処理装置(B)(101−2)は、中央処理装置(
A)(101−1)を現用系、中央処理装置(B)(1
01−2)を交代系として動作するホットスタンバイ構
或を組み、全体としては1台の動作をするシングルモー
ドと、各々独立に動作する構或を組み、全体としてはA
側システムとB側システムの2台の動作をするセパレー
トモードをとることができる。いずれの構或の場合も、
両方の中央処理装置(101−1,101−2)はDA
SD装置の一種である一対の磁気ディスク装置(110
−1,110−2)を共有する。
中央処理装置(B)(101−2)は、中央処理装置(
A)(101−1)を現用系、中央処理装置(B)(1
01−2)を交代系として動作するホットスタンバイ構
或を組み、全体としては1台の動作をするシングルモー
ドと、各々独立に動作する構或を組み、全体としてはA
側システムとB側システムの2台の動作をするセパレー
トモードをとることができる。いずれの構或の場合も、
両方の中央処理装置(101−1,101−2)はDA
SD装置の一種である一対の磁気ディスク装置(110
−1,110−2)を共有する。
また、中央処理装置(A)(101−1)と中央処理装
置(B)(101−2)間は、相互監視線(126)が
接続され、お互いに他系中央処理装置の動作状況を監視
している。相互監視線(126)上には、ハードウェア
障害発生時のマシンチェック割込みの報告信号や、定期
的に発信する他系中央処運装置(工Of−1又は101
−2)への生存確認問い合わせ信号と、それに対する他
系中央処理装置(101−1又は101−2)からの応
答信号が流れている。
置(B)(101−2)間は、相互監視線(126)が
接続され、お互いに他系中央処理装置の動作状況を監視
している。相互監視線(126)上には、ハードウェア
障害発生時のマシンチェック割込みの報告信号や、定期
的に発信する他系中央処運装置(工Of−1又は101
−2)への生存確認問い合わせ信号と、それに対する他
系中央処理装置(101−1又は101−2)からの応
答信号が流れている。
次に、DASD装置を2重化する必要性について説明す
る。
る。
一般に、中央処理装置(101−1,101−2)は電
子回路部品の集合体であるため機械部品を含むディスク
装置(110−1,110−2)よりも信頼性が1桁高
く、1つの例では中央処理装置(101−1)のMTB
F(平均故障時間間隔)が数十万時間以上であるのに対
して、ディスク装置のMTBFは数万時間以上である。
子回路部品の集合体であるため機械部品を含むディスク
装置(110−1,110−2)よりも信頼性が1桁高
く、1つの例では中央処理装置(101−1)のMTB
F(平均故障時間間隔)が数十万時間以上であるのに対
して、ディスク装置のMTBFは数万時間以上である。
従って高い信頼性を必要とする計算機システムではディ
スク装置を2重化して用いることが多く、本実施例にお
いてもいずれの中央処理装置(101−1又は101−
2)も、その中の2台のディスク装置アダプタ(105
)から2台のディスク制御装fi! (109−1,1
09−2)を介して2台のディスク装置(110−1,
110−2)をアクセスできる。この2台のディスク装
置(110−1,110−2)は同一内容のデータを保
持する2重化共用ディスク構或をとっている。次に共有
メモリ装置(102)を説明する。
スク装置を2重化して用いることが多く、本実施例にお
いてもいずれの中央処理装置(101−1又は101−
2)も、その中の2台のディスク装置アダプタ(105
)から2台のディスク制御装fi! (109−1,1
09−2)を介して2台のディスク装置(110−1,
110−2)をアクセスできる。この2台のディスク装
置(110−1,110−2)は同一内容のデータを保
持する2重化共用ディスク構或をとっている。次に共有
メモリ装置(102)を説明する。
すなわち一対の2重化共用ディスク(110−1,11
0−2)上には各中央処理装置(101−1又は101
−2)を制御するプログラムを格納するr##sVPO
s (120−1,120−2)J各10P (114
−1,114−2)に接続される周辺機器の構或を格納
するrsCDso (121−1,121−2)J〜r
SCDS3 (124−1,124−2)J、IP (
1o3−1,103−2)を制御するマイクロプログラ
ムを格納するrCPUMP (125−1,125−2
)Jなとのごとく、データセットが2重に記録されてい
る。以下、これらを2重化データセットと呼ぶ。
0−2)上には各中央処理装置(101−1又は101
−2)を制御するプログラムを格納するr##sVPO
s (120−1,120−2)J各10P (114
−1,114−2)に接続される周辺機器の構或を格納
するrsCDso (121−1,121−2)J〜r
SCDS3 (124−1,124−2)J、IP (
1o3−1,103−2)を制御するマイクロプログラ
ムを格納するrCPUMP (125−1,125−2
)Jなとのごとく、データセットが2重に記録されてい
る。以下、これらを2重化データセットと呼ぶ。
共有メモリ装1(102)は本発明の実施のために必要
となる後述するデータセット排他制御情報を記録する。
となる後述するデータセット排他制御情報を記録する。
この装置は、各中央処理装置(101−1又は101−
2)内の共有メモリアダプタ(104)を介してMPU
(1 1 1)との間のデータ転送を実施する。共有
メモリ装置(102)は2台の中央処理装置(101−
’1,101−2)に接続するアクセス制御回路(1
0 7)とランダムアクセスメモリ(RAM)1143
からなり、後者にはデータセット排他制御情報を記録す
る2重化データセット制御テーブル(108)を保持す
る。アクセス制御回路(107)はリザーブをかけた側
の中央処理装置(101−1又は101−2)に共有メ
モリ装置(102)を独占的にアクセスさせ、その(中
央処理装置(101−1又は101−2)が共有メモリ
装置(102)をリリースするまで他方の中央処理装置
(101−1,又は101−2)にアクセスさせない。
2)内の共有メモリアダプタ(104)を介してMPU
(1 1 1)との間のデータ転送を実施する。共有
メモリ装置(102)は2台の中央処理装置(101−
’1,101−2)に接続するアクセス制御回路(1
0 7)とランダムアクセスメモリ(RAM)1143
からなり、後者にはデータセット排他制御情報を記録す
る2重化データセット制御テーブル(108)を保持す
る。アクセス制御回路(107)はリザーブをかけた側
の中央処理装置(101−1又は101−2)に共有メ
モリ装置(102)を独占的にアクセスさせ、その(中
央処理装置(101−1又は101−2)が共有メモリ
装置(102)をリリースするまで他方の中央処理装置
(101−1,又は101−2)にアクセスさせない。
また、一方の中央処理装置(101−1,又は101−
2)がリザーブをかけたままでプログラムを実行できな
い停止状態になった場合、反対側の中央処理装置(10
1−1,又は101−2)が強制的に相手側のリザーブ
を解除する。アクセス制御回路(107)の詳細は後に
第11図を参照して説明する。
2)がリザーブをかけたままでプログラムを実行できな
い停止状態になった場合、反対側の中央処理装置(10
1−1,又は101−2)が強制的に相手側のリザーブ
を解除する。アクセス制御回路(107)の詳細は後に
第11図を参照して説明する。
共有メモリ装置(102)内の2重化データセット制御
テーブル(108)は一対の2重化データセット、たと
えばr##sVPOs (120−1,120−2」に
対して1エントリを持つ。
テーブル(108)は一対の2重化データセット、たと
えばr##sVPOs (120−1,120−2」に
対して1エントリを持つ。
ここで、データセットとは、中央処理装置(101−1
,又は101−2)上で動作する1個のプログラムがデ
ィスク装置(110−1または1 1 0−2)を使用
するときに、他のプログラムとの使用領域の重複を避け
るために用いられる論理的な管理単位であり、一般的に
用いられる『ファイル』と同様な概念である。
,又は101−2)上で動作する1個のプログラムがデ
ィスク装置(110−1または1 1 0−2)を使用
するときに、他のプログラムとの使用領域の重複を避け
るために用いられる論理的な管理単位であり、一般的に
用いられる『ファイル』と同様な概念である。
第2図は,2重化データセット制御テーブル(1 0
8)のlエントリの構造を示す図である。
8)のlエントリの構造を示す図である。
1エントリは36バイトの長さからなり、始めの32バ
イトに一対の2重化共用ディスク装置(110−1,1
10−2)上の対応する一対の2重化データセットのデ
ータセット名(201)を記録し、次の2バイトで共用
ディスク装置#0(110−1)データセットに関する
排他制御情報を記録する。但し、これらの2バイトの制
御情報フィールドの各々は、始めの3ビットだけが使用
され残りの13ビット(205)は未使用領域となる。
イトに一対の2重化共用ディスク装置(110−1,1
10−2)上の対応する一対の2重化データセットのデ
ータセット名(201)を記録し、次の2バイトで共用
ディスク装置#0(110−1)データセットに関する
排他制御情報を記録する。但し、これらの2バイトの制
御情報フィールドの各々は、始めの3ビットだけが使用
され残りの13ビット(205)は未使用領域となる。
共用ディスク装置#O側のデータセット排他制御情報は
、共用ディスク装置#O (110−1)内の、データ
セット名(201)で示されるデータセットがリザーブ
された状態であるか否かを示す0側データセットリザー
ブフラグ(202−1)、リザーブフラグ(202−1
)がオンのときどちらの中央処理装置(101−1,又
は101−2)がそのデータセットに対してリザーブを
かけているのかを表示するO側データセットリザーブ中
央処理装置(CPU)番号(203−1).そのデータ
セットがアクセス禁止状態であることを表示するO側デ
ータセット閉塞フラグ(204−1)からなる。共用デ
ィスク装置#1 (110−2)側のデータセットに対
する,排他制御情報(202−2,203−2,204
−2)も全く同様である。
、共用ディスク装置#O (110−1)内の、データ
セット名(201)で示されるデータセットがリザーブ
された状態であるか否かを示す0側データセットリザー
ブフラグ(202−1)、リザーブフラグ(202−1
)がオンのときどちらの中央処理装置(101−1,又
は101−2)がそのデータセットに対してリザーブを
かけているのかを表示するO側データセットリザーブ中
央処理装置(CPU)番号(203−1).そのデータ
セットがアクセス禁止状態であることを表示するO側デ
ータセット閉塞フラグ(204−1)からなる。共用デ
ィスク装置#1 (110−2)側のデータセットに対
する,排他制御情報(202−2,203−2,204
−2)も全く同様である。
このように、2重化データセット制御テーブル(108
)は1対の2重化データセットに対して共用ディスク装
置#O (110−1)側用にillと#1 (110
−2)側用に1組の計2組の排他制御情報を持っている
。
)は1対の2重化データセットに対して共用ディスク装
置#O (110−1)側用にillと#1 (110
−2)側用に1組の計2組の排他制御情報を持っている
。
第3図は一方の中央処理装置(101−1,又は101
−2)が共用ディスク装置(110−1,110−2)
上の1つの2重化されたデータセットに書込を行なうデ
ータセットライト処理(301)のフロー図である.デ
ータセットライトを行なう場合には、まずO番側および
王番側の当該データセットをリザーブする(501).
リザーブ手順の詳細は第5図に示すが、リザーブに失敗
した場合にはなんらかの異常発生を示すのでデータセッ
トライトを中断し(310). リザーブに戊功した場
合はO側データセットがアクセス可能であれば(3 0
3)共用ディスク装置#0のディレクトリ情報を読ん
で(304) 、そのデータセットの物理的位置を調べ
た後その物理的位置へのライト動作を行なう(305)
.1番側のディスク装置についてもO番側と同様なライ
ト動作を行なう(306,307,308)。ライト動
作が完了したらそれらのデータセットをリリースする(
601)。リリース手順の詳細は第6図に示すが、どち
らかのディスク装置において回復不可のライトエラーが
発生した場合はリリース時に閉塞状態を表示するために
、パラメタEDVO,EDVIを設定することによりリ
リース処理601に対してエラー発生の有無を通知する
。
−2)が共用ディスク装置(110−1,110−2)
上の1つの2重化されたデータセットに書込を行なうデ
ータセットライト処理(301)のフロー図である.デ
ータセットライトを行なう場合には、まずO番側および
王番側の当該データセットをリザーブする(501).
リザーブ手順の詳細は第5図に示すが、リザーブに失敗
した場合にはなんらかの異常発生を示すのでデータセッ
トライトを中断し(310). リザーブに戊功した場
合はO側データセットがアクセス可能であれば(3 0
3)共用ディスク装置#0のディレクトリ情報を読ん
で(304) 、そのデータセットの物理的位置を調べ
た後その物理的位置へのライト動作を行なう(305)
.1番側のディスク装置についてもO番側と同様なライ
ト動作を行なう(306,307,308)。ライト動
作が完了したらそれらのデータセットをリリースする(
601)。リリース手順の詳細は第6図に示すが、どち
らかのディスク装置において回復不可のライトエラーが
発生した場合はリリース時に閉塞状態を表示するために
、パラメタEDVO,EDVIを設定することによりリ
リース処理601に対してエラー発生の有無を通知する
。
EDV’O,EDVIは各々共用ディスク装置#O (
110−1)側または#1 (110−2)側のアセク
ス時に回復不可能なエラーが発生したことを示すために
設けたフラグであり、エラーが発生したら′1′、そう
でなければ′O′を設定する。
110−1)側または#1 (110−2)側のアセク
ス時に回復不可能なエラーが発生したことを示すために
設けたフラグであり、エラーが発生したら′1′、そう
でなければ′O′を設定する。
第4図は一方の中央処理装置が共用ディスク装置上の1
つのデータセットから読み出しを行なうデータセットリ
ード処理(401)のフロー図である。データセットリ
ードを行なう場合には、まずO番側または1番側の当該
データセットをリザーブする(501).リザーブ手順
の詳細は第5図に示すが、リザーブに失敗した場合はな
んらかの異常発生を示すのでデータセットリードを中断
し(410)、0側データセットのリザーブに成功した
場合は(403)O番側ディスク装置のディレクトリ情
報を読んで(404)データセットの物理的位置を調べ
た後該物理的位置からのリード動作を行なう(405)
。O番側でなく1番側のディスク装置のリザーブに或功
した場合(406)についてもO番側と同様なリード動
作を行なう(407,408)。リード動作が完了した
らその中央処理装置(自系CPU)がリザーブしたデー
タセットをリリースする(601)。
つのデータセットから読み出しを行なうデータセットリ
ード処理(401)のフロー図である。データセットリ
ードを行なう場合には、まずO番側または1番側の当該
データセットをリザーブする(501).リザーブ手順
の詳細は第5図に示すが、リザーブに失敗した場合はな
んらかの異常発生を示すのでデータセットリードを中断
し(410)、0側データセットのリザーブに成功した
場合は(403)O番側ディスク装置のディレクトリ情
報を読んで(404)データセットの物理的位置を調べ
た後該物理的位置からのリード動作を行なう(405)
。O番側でなく1番側のディスク装置のリザーブに或功
した場合(406)についてもO番側と同様なリード動
作を行なう(407,408)。リード動作が完了した
らその中央処理装置(自系CPU)がリザーブしたデー
タセットをリリースする(601)。
リリース手順の詳細は第6図データセットリリース処理
(601)に示すが、どちらかのディスク装置において
リードエラー発生した場合はリリース時に閉塞状態を表
示するために、パラメタEDVO,EDVIを設定する
ことによりリリース処理601に対してエラー発生の有
無を伝達する。
(601)に示すが、どちらかのディスク装置において
リードエラー発生した場合はリリース時に閉塞状態を表
示するために、パラメタEDVO,EDVIを設定する
ことによりリリース処理601に対してエラー発生の有
無を伝達する。
第5図はデータセットのリザーブ処理の501のフロー
図である。あるデータセットをリザーブするためには2
重化データセット制御テーブル108 (第1図)をア
クセスする必要があるので、共有メモリ装置102をリ
ザーブしなければならない(1301)。共有メモリリ
ザーブ手順の詳細は第13図共有メモリリザーブ処理(
1 3 0 1)に示す。共有メモリ装置(102)の
リザーブに失敗した場合(503)、リザーブ失敗回数
が予め設定した回数以内であれば(504).数十ミリ
秒程度の時間待ち(50.7)をした後、再度共有メモ
リ(1 0 2)のリザーブ処理1301を実行し,規
定回数を越えた場合は共有メモリ(102)アクセスに
関する異常が発生したと考えられるので、オペレータへ
の障害通知など共有メモリリザーブ失敗処理(505)
を行った後リザーブ失敗出口へ出る(5 0 6)。共
有メモリ装置(102)のリザーブに或功した場合(5
03)、2重化データセット制御テーブル(108)の
全エントリの中からリザーブ要求されたデータセット名
と一散するデータセット名を有するエントリを探す(5
08)。
図である。あるデータセットをリザーブするためには2
重化データセット制御テーブル108 (第1図)をア
クセスする必要があるので、共有メモリ装置102をリ
ザーブしなければならない(1301)。共有メモリリ
ザーブ手順の詳細は第13図共有メモリリザーブ処理(
1 3 0 1)に示す。共有メモリ装置(102)の
リザーブに失敗した場合(503)、リザーブ失敗回数
が予め設定した回数以内であれば(504).数十ミリ
秒程度の時間待ち(50.7)をした後、再度共有メモ
リ(1 0 2)のリザーブ処理1301を実行し,規
定回数を越えた場合は共有メモリ(102)アクセスに
関する異常が発生したと考えられるので、オペレータへ
の障害通知など共有メモリリザーブ失敗処理(505)
を行った後リザーブ失敗出口へ出る(5 0 6)。共
有メモリ装置(102)のリザーブに或功した場合(5
03)、2重化データセット制御テーブル(108)の
全エントリの中からリザーブ要求されたデータセット名
と一散するデータセット名を有するエントリを探す(5
08)。
リザーブ要求がデータセットライトモードの場合(50
9)、この一致エントリのO番側リザーブフラグ202
−1 (第2図)、1番側リザーブフラグ202−2
(第2図)がともに1 0 1なら、すなわち両ディス
ク装置(110−1,110−2)のリザーブ要求多様
のデータセットがともにリザーブされていない状態なら
(510).両リザーブフラグ202−1,202−2
を111に設定し(516).両リザーブCPU番号2
03−1,203−2としてリザーブ要求元中央処理装
置(自系CPU)を示す値をこのエントリに設定する(
5 1 7)。この値は、自系サービスプロセッサがA
系の場合は’O’ .B系の場合は′1′とする。この
設定が完了したあと共有メモリ(102)をリリースし
(1321).通常出口で終了する(519)。もしリ
ザーブフラグ202−1又は202−2の内のどちらか
または両方が゛1′なら(510).2つの共用ディス
ク装置#O又は#1のどちらかまたは両方に保持された
リザーブ対象のデータセットが他の中央処理装置(10
1−1.又は101−2)にリザーブされているなら、
そのリザーブされたデータセットの解放を待つため一旦
共有メモリ装置(102)をリリースする(1321)
。データセットリザーブの失敗回数が予め定めた規定回
数より少なければ(512).数十ミリ秒程度の時間待
ち(515)をした後再度データセットリザーブ処理(
1301)を実行する。データセットリザーブの失敗が
規定回数以上の場合(512).データセットリザーブ
関連異常が発生しているとえられるためデータセットリ
ザーブ失敗処理(5 1 3)を行なった後リザーブ失
敗出口で終了する(514)。
9)、この一致エントリのO番側リザーブフラグ202
−1 (第2図)、1番側リザーブフラグ202−2
(第2図)がともに1 0 1なら、すなわち両ディス
ク装置(110−1,110−2)のリザーブ要求多様
のデータセットがともにリザーブされていない状態なら
(510).両リザーブフラグ202−1,202−2
を111に設定し(516).両リザーブCPU番号2
03−1,203−2としてリザーブ要求元中央処理装
置(自系CPU)を示す値をこのエントリに設定する(
5 1 7)。この値は、自系サービスプロセッサがA
系の場合は’O’ .B系の場合は′1′とする。この
設定が完了したあと共有メモリ(102)をリリースし
(1321).通常出口で終了する(519)。もしリ
ザーブフラグ202−1又は202−2の内のどちらか
または両方が゛1′なら(510).2つの共用ディス
ク装置#O又は#1のどちらかまたは両方に保持された
リザーブ対象のデータセットが他の中央処理装置(10
1−1.又は101−2)にリザーブされているなら、
そのリザーブされたデータセットの解放を待つため一旦
共有メモリ装置(102)をリリースする(1321)
。データセットリザーブの失敗回数が予め定めた規定回
数より少なければ(512).数十ミリ秒程度の時間待
ち(515)をした後再度データセットリザーブ処理(
1301)を実行する。データセットリザーブの失敗が
規定回数以上の場合(512).データセットリザーブ
関連異常が発生しているとえられるためデータセットリ
ザーブ失敗処理(5 1 3)を行なった後リザーブ失
敗出口で終了する(514)。
データセットリザーブのリクエストがデータセットリー
ドモードの場合(509).アクセス可能なデータセッ
トをどちらか一方のみリザーブすれば良いので、まず上
記一致エントリのO番側データセットに対する閉塞フラ
グ204−1 (第2図)が1か否かを検査する(52
0)。このフラグがt O jであれば(閉塞されてい
なければ)、次にそのデータセットがリザーブされてい
るか否か(フラグ202−1か1か)を検査し(521
)リザーブされていなければその0番側のリザーブフラ
グ(202−1)を11′に設定し(5 2 2)、リ
ザーブcpu番号(203−1)に自系中央処理装置に
対応する値を設定する(5 2 3)。0側データセッ
トが閉塞されているか(520)またはリザーブされて
いるとき(521)は、上側データセットについてO側
の場合と同様な処理を行なう(524,525,526
,527)1側データセットも閉塞(524)またはリ
ザーブ状態(525)なら、ライトの場合と同様,一旦
共有メモリ(1 0 2)をリリース(1321)Lた
後、再度リザーブ動作(512,515.1301)を
行なう。
ドモードの場合(509).アクセス可能なデータセッ
トをどちらか一方のみリザーブすれば良いので、まず上
記一致エントリのO番側データセットに対する閉塞フラ
グ204−1 (第2図)が1か否かを検査する(52
0)。このフラグがt O jであれば(閉塞されてい
なければ)、次にそのデータセットがリザーブされてい
るか否か(フラグ202−1か1か)を検査し(521
)リザーブされていなければその0番側のリザーブフラ
グ(202−1)を11′に設定し(5 2 2)、リ
ザーブcpu番号(203−1)に自系中央処理装置に
対応する値を設定する(5 2 3)。0側データセッ
トが閉塞されているか(520)またはリザーブされて
いるとき(521)は、上側データセットについてO側
の場合と同様な処理を行なう(524,525,526
,527)1側データセットも閉塞(524)またはリ
ザーブ状態(525)なら、ライトの場合と同様,一旦
共有メモリ(1 0 2)をリリース(1321)Lた
後、再度リザーブ動作(512,515.1301)を
行なう。
第6図はデータセットリリース処理601のフロー図で
ある。データセットリリースの際も、リザーブの場合と
同様まず共有メモリ(1 0 2)をリザーブし、リリ
ース要求で指定されたデータセットに対応する2重化デ
ータセット制#=−ブル(108)の一致エントリを求
める処理を行なう(1301,503,504,505
,507,508)。
ある。データセットリリースの際も、リザーブの場合と
同様まず共有メモリ(1 0 2)をリザーブし、リリ
ース要求で指定されたデータセットに対応する2重化デ
ータセット制#=−ブル(108)の一致エントリを求
める処理を行なう(1301,503,504,505
,507,508)。
−1エントリのO番側データセットのリザーブCPU番
号(203−1)がリザーブ要求元中央処理装置(自系
中央処理装置)に対応する値であり(602)O番側リ
ザーブフラグ(202−1)の値が′1′なら(6 0
3)このリザーブフラグ(202−1)をJ O j
にする。さらに、0番側データセットのリード/ライト
動作でエラーが発生したことを指示されている場合(す
なわち,EDVOが1のとき)(605).O番側の閉
塞フラグ(204−1)を′1′にする。次に、1番側
のデータセットについても同様の処理を行なう (6
07, 608, 609, 610,
611) 。
号(203−1)がリザーブ要求元中央処理装置(自系
中央処理装置)に対応する値であり(602)O番側リ
ザーブフラグ(202−1)の値が′1′なら(6 0
3)このリザーブフラグ(202−1)をJ O j
にする。さらに、0番側データセットのリード/ライト
動作でエラーが発生したことを指示されている場合(す
なわち,EDVOが1のとき)(605).O番側の閉
塞フラグ(204−1)を′1′にする。次に、1番側
のデータセットについても同様の処理を行なう (6
07, 608, 609, 610,
611) 。
リリース処理の操作が終了したあと共有メモリをリリー
スし(1321)データセットリリース処理(601)
を終了する(6 1 3)。
スし(1321)データセットリリース処理(601)
を終了する(6 1 3)。
次に,共有メモリ装置(102)の構造と動作を示す。
第11図は中央処理装置(101−1,又は101−2
)と共有メモリ装置(102)の接続構或を示す構或図
である。中央処理装置(10エー1)と中央処理装置(
101−2)は完全に同じ構戒なので中央処理装置(1
01−1)を中心に説明する。
)と共有メモリ装置(102)の接続構或を示す構或図
である。中央処理装置(10エー1)と中央処理装置(
101−2)は完全に同じ構戒なので中央処理装置(1
01−1)を中心に説明する。
中央処理装置(101−4)内にはマイクロプロセッサ
(111)が設置され,そのマイクロプロセッサ(11
1)は中央処理装置としてのプログラムを実行している
。従って,共用ディスク装置(110−1,110−2
)のアクセス制御はマイクロプロセッサ(1 1 1)
が実行するプログラムにより実現され、共有メモリ装置
(102)内のランダムアクセスメモリRAM (1
1 4 3)に置かれた2重化データセット制御テーブ
ル(108)がアクセスされる。
(111)が設置され,そのマイクロプロセッサ(11
1)は中央処理装置としてのプログラムを実行している
。従って,共用ディスク装置(110−1,110−2
)のアクセス制御はマイクロプロセッサ(1 1 1)
が実行するプログラムにより実現され、共有メモリ装置
(102)内のランダムアクセスメモリRAM (1
1 4 3)に置かれた2重化データセット制御テーブ
ル(108)がアクセスされる。
中央処理装置(101−1)が共有メモリ装置(1 0
2)上の排他制御情報の読みだしおよび書き込みを実
行することは、マイクロプロセッサ(1 1 1)が共
有メモリ装置(102)内のRAM (1143)にデ
ータを書き込んだりすることを意味している。
2)上の排他制御情報の読みだしおよび書き込みを実
行することは、マイクロプロセッサ(1 1 1)が共
有メモリ装置(102)内のRAM (1143)にデ
ータを書き込んだりすることを意味している。
この共有メモリ装置(102)内の回路のうち,アドレ
スバス(1140)、データバス(1141)、制御バ
ス(1 1 4 2)およびRAM (1143)以外
の部分は、2台の中央処理装置(101−1,101−
2)の共有メモリアクセスを排他制御するアクセス制御
回路(1 0 7)の構成を示している。アクセス制御
回路(107)は主に制御回路(1146)とリザーブ
回路(1145)と強制回放回路(1144)から構威
される。
スバス(1140)、データバス(1141)、制御バ
ス(1 1 4 2)およびRAM (1143)以外
の部分は、2台の中央処理装置(101−1,101−
2)の共有メモリアクセスを排他制御するアクセス制御
回路(1 0 7)の構成を示している。アクセス制御
回路(107)は主に制御回路(1146)とリザーブ
回路(1145)と強制回放回路(1144)から構威
される。
つぎに、マイクロプロセッサ(111)が共有メモリ装
置(102)をアクセスする方法を示す。
置(102)をアクセスする方法を示す。
マイクロプロセッサ(1 1 1)から共有メモリ装置
(1 0 2)へのアクセス要求は例えば、問VE.B
&117F008000,D3(’7FOO8000
’番地から1バイト分のデータをマイクロプロセッサ(
1 1 1)内に設けられたデータレジスタ3番の下位
1バイトに格納する。) MOVE.B 04,&H7FOOOOOO (7イク
口プロセッサ(111)内に設けられたデータレジスタ
4番の下位1バイト分の内容を ’ 7FOOOOOO’番地に格納する。)などの命令
により発生し、マイクロプロセッサ(111)に接続し
た共通バス(112)を介して共有メモリアダプタ(1
04)に達する。
(1 0 2)へのアクセス要求は例えば、問VE.B
&117F008000,D3(’7FOO8000
’番地から1バイト分のデータをマイクロプロセッサ(
1 1 1)内に設けられたデータレジスタ3番の下位
1バイトに格納する。) MOVE.B 04,&H7FOOOOOO (7イク
口プロセッサ(111)内に設けられたデータレジスタ
4番の下位1バイト分の内容を ’ 7FOOOOOO’番地に格納する。)などの命令
により発生し、マイクロプロセッサ(111)に接続し
た共通バス(112)を介して共有メモリアダプタ(1
04)に達する。
共有メモリアダプタ(104)は、アドレスバス(11
01)に流れているデータをアドレスデコーダ(110
4)で受け、共有メモリ装置(1 0 2)に割り当て
られているアドレス範囲内の値なら、アドレスが一致し
たことを示す信号線(1105)をONにする。本実施
例においては共有メモリ装置(1 0 2)に割り当て
られているアドレスは’7FOOOOOO’番地から’
7FOOFFFF’番地までなので、アドレスデコーダ
(1104)はアドレスパス(1101)の上位16ビ
ット(A31−A16)が、’7FOO’ となるとき
一致信号を発するように設定する。信号線(1105)
がONになると双方向ドライバ(1 1 0 6)がイ
ネーブル状態になり、中央処理装置(101−1)内の
共通バス(1 1 2)の信号が中央処理装置(101
−1)と共有メモリ装置(1 0 2)間を接続する信
号線(1107−1,1107−1.1109−1)に
流れ、共有メモリ装置(1 0 2)内のA系用アドレ
スバス(1118−1)、データバス(1119−1)
.制御バス(1120−1)に達する。
01)に流れているデータをアドレスデコーダ(110
4)で受け、共有メモリ装置(1 0 2)に割り当て
られているアドレス範囲内の値なら、アドレスが一致し
たことを示す信号線(1105)をONにする。本実施
例においては共有メモリ装置(1 0 2)に割り当て
られているアドレスは’7FOOOOOO’番地から’
7FOOFFFF’番地までなので、アドレスデコーダ
(1104)はアドレスパス(1101)の上位16ビ
ット(A31−A16)が、’7FOO’ となるとき
一致信号を発するように設定する。信号線(1105)
がONになると双方向ドライバ(1 1 0 6)がイ
ネーブル状態になり、中央処理装置(101−1)内の
共通バス(1 1 2)の信号が中央処理装置(101
−1)と共有メモリ装置(1 0 2)間を接続する信
号線(1107−1,1107−1.1109−1)に
流れ、共有メモリ装置(1 0 2)内のA系用アドレ
スバス(1118−1)、データバス(1119−1)
.制御バス(1120−1)に達する。
アドレスが一致しないときは双方向ドライバ(1106
)がイネーブル状態でないのでドライバ内部で切断状態
に保たれるため中央処理装置(101−1)内の共通バ
ス(112)の信号は共有メモリ装置(1 0 2)に
流れない。
)がイネーブル状態でないのでドライバ内部で切断状態
に保たれるため中央処理装置(101−1)内の共通バ
ス(112)の信号は共有メモリ装置(1 0 2)に
流れない。
以上のように中央処理装fil(lol−Bは一般的な
MOVE命令などにより共有メモリ装置(102)のア
クセスができる。
MOVE命令などにより共有メモリ装置(102)のア
クセスができる。
共有メモリ装置(1 0 2)アクセス時のアドレスは
、 ’ 7F000000’番地 アクセス制御レジスタ(
1201)となっており、アクセス制御レジスタ(12
01)の意味については第12図に示す通りである。
、 ’ 7F000000’番地 アクセス制御レジスタ(
1201)となっており、アクセス制御レジスタ(12
01)の意味については第12図に示す通りである。
第11図のアクセス制御回路(1 0 7)の動作を説
明する前に,第12図を用いてアクセス制御レジスタ(
1201)の使用方法を説明する。
明する前に,第12図を用いてアクセス制御レジスタ(
1201)の使用方法を説明する。
アクセス制御レジスタ(1201)は、共有メモリ装置
をマイクロプロセッサ(111)がアクセスする際に必
要な制御を実行するため,レジスタや論理ゲートをマイ
クロプロセッサ(111)のメモリ空間内の適当な位置
(ここでは’7FOOOOOO’番地)に割当て、マイ
クロプロセッサ(111)上で動作するプログラムから
は「レジスタ』であるかのように扱えるようにしたもの
である。
をマイクロプロセッサ(111)がアクセスする際に必
要な制御を実行するため,レジスタや論理ゲートをマイ
クロプロセッサ(111)のメモリ空間内の適当な位置
(ここでは’7FOOOOOO’番地)に割当て、マイ
クロプロセッサ(111)上で動作するプログラムから
は「レジスタ』であるかのように扱えるようにしたもの
である。
このアクセス制御レジスタ(1201)において、最下
位ビットDo (1204)が共有メモリ装置(1 0
2)をアクセスしたいことを示すリザーブ要求(RE
SVREQ)ビット、つぎのビットDi (1203)
が共有メモリ装置(1 0 2)のリザーブ許可(RE
SVACK)ビット、2の7乗のビットD7 (120
2)が他系中央処理装置(101−2)のリザーブ中状
態を強制的に解除する強制リリース(FORCEREL
)ビットである。RESVREQビットを′1′にする
とアクセス制御回路(1 0 7)はリザーブが完了し
たか否かをRESVACKビットを用いて報告する。R
ESVACKビットが′O′ならリザーブ未完了を示し
、RESVACKビットが11′ならリザーブ完了を示
す.RESVREQビットは′1′の値の書き込みによ
ってセットされる。
位ビットDo (1204)が共有メモリ装置(1 0
2)をアクセスしたいことを示すリザーブ要求(RE
SVREQ)ビット、つぎのビットDi (1203)
が共有メモリ装置(1 0 2)のリザーブ許可(RE
SVACK)ビット、2の7乗のビットD7 (120
2)が他系中央処理装置(101−2)のリザーブ中状
態を強制的に解除する強制リリース(FORCEREL
)ビットである。RESVREQビットを′1′にする
とアクセス制御回路(1 0 7)はリザーブが完了し
たか否かをRESVACKビットを用いて報告する。R
ESVACKビットが′O′ならリザーブ未完了を示し
、RESVACKビットが11′ならリザーブ完了を示
す.RESVREQビットは′1′の値の書き込みによ
ってセットされる。
RESVACKビットはリザーブ完了によりセットされ
、RESVREQのリセットによりリセットされる。ま
た、FORCERELビットに′1′を書き込むと他系
中央処理装置(1 0 1−2)のリザーブを強制的に
解除する。
、RESVREQのリセットによりリセットされる。ま
た、FORCERELビットに′1′を書き込むと他系
中央処理装置(1 0 1−2)のリザーブを強制的に
解除する。
FORCERELビッF−′{ま(11 を書き込んだ
瞬間だけtl.pの値をとり、それ以外では常に′0′
にリセットされている。
瞬間だけtl.pの値をとり、それ以外では常に′0′
にリセットされている。
再度第1l図に戻り、アクセス制御回路(107)の動
作を説明する。
作を説明する。
第1l図におけるアクセス制御回路(107)は上記ア
クセス制御レジスタ(1201)の動作仕様を満足する
ように構或されている。この回路は中央処理装置(A)
(101−1)用の回路と、中央処理装置(B)(10
1−2)用の回路からなっておりほとんど同じであるの
で、中央処理装置(A)(101−1)用の回路につい
て重点的に説明し、双方で異なる部分についてのみ中央
処理装置(B)(101−2)用の回路について言及す
る。
クセス制御レジスタ(1201)の動作仕様を満足する
ように構或されている。この回路は中央処理装置(A)
(101−1)用の回路と、中央処理装置(B)(10
1−2)用の回路からなっておりほとんど同じであるの
で、中央処理装置(A)(101−1)用の回路につい
て重点的に説明し、双方で異なる部分についてのみ中央
処理装置(B)(101−2)用の回路について言及す
る。
まず、アクセス制御回路(1 0 7)のうち、共有メ
モリ装置(1 0 2)のリザーブ状態を制御するリザ
ーブ回路(1145)を説明する。リザーブ要求レジス
タ(112.2−1)は中央処理装置(101−1)か
らきた共有メモリ装置(102)のリザーブ要求を記憶
する。このレジスタ(1122−1)への書き込みはア
ドレスデコーダ(1 1 1 2−1)によりアドレス
バス(1111−1)の下位16ビットが’oooo″
のとき実行される。書き込まれる値は制御バス(112
3−1)に指示される書き込みタイミングの瞬間のデー
タバス(1121−1)の最下位ビットDoの値である
。
モリ装置(1 0 2)のリザーブ状態を制御するリザ
ーブ回路(1145)を説明する。リザーブ要求レジス
タ(112.2−1)は中央処理装置(101−1)か
らきた共有メモリ装置(102)のリザーブ要求を記憶
する。このレジスタ(1122−1)への書き込みはア
ドレスデコーダ(1 1 1 2−1)によりアドレス
バス(1111−1)の下位16ビットが’oooo″
のとき実行される。書き込まれる値は制御バス(112
3−1)に指示される書き込みタイミングの瞬間のデー
タバス(1121−1)の最下位ビットDoの値である
。
リザーブ要求レジスタ(1122−1)の値は出力線(
1124−1)を介して2段のフリップフロップ(11
25−1.1129−1)を経由して双方向ドライバ(
1135−1)のイネーブル端子に入力される。すなわ
ち、中央処理装置(A)(101−1)用のドライバ(
1135−1)と中央処理装置(B)(101−2)用
のドライバ(1135−2)がどちらか一方だけイネー
ブルになるように動作することがアクセス制御回路(1
07)の第1の目的である。つまり,共有メモリ装置(
102)のリザーブに成功するということは,信号線(
1137−1と1136−1)または信号線(1 1
3 7−2とl136−2)に′1′の信号が出力され
ることを意味する。
1124−1)を介して2段のフリップフロップ(11
25−1.1129−1)を経由して双方向ドライバ(
1135−1)のイネーブル端子に入力される。すなわ
ち、中央処理装置(A)(101−1)用のドライバ(
1135−1)と中央処理装置(B)(101−2)用
のドライバ(1135−2)がどちらか一方だけイネー
ブルになるように動作することがアクセス制御回路(1
07)の第1の目的である。つまり,共有メモリ装置(
102)のリザーブに成功するということは,信号線(
1137−1と1136−1)または信号線(1 1
3 7−2とl136−2)に′1′の信号が出力され
ることを意味する。
これを実現するため、2段のフリップフロップ(112
5−1.1139−1)の間にアンドゲート(1128
−1)が挿入されており、例えば中央処理装R(A)(
101−1)からのリザーブ要求が発生した時点で、中
央処理装置(B)(101−2)からのリザーブ要求が
既に受け付けられている場合には信号線(1 1 3
1)の値が′11になっているためにフリップフロップ
(1129−1)のD入力が10′となりサービスプロ
セッサ(A)(101−1)側のリザーブ要求は受け付
けられない。また、サービスプロセッサ(B)(101
−2)からのリザーブ要求が来ていなかった場合、信号
線(1 1 3 1)の値は1 0 1 となるので,
フリップフロップ(1129−1)のD入力の値は11
7 となりQ出力の値もIl+になるのでリザーブが或
功する。
5−1.1139−1)の間にアンドゲート(1128
−1)が挿入されており、例えば中央処理装R(A)(
101−1)からのリザーブ要求が発生した時点で、中
央処理装置(B)(101−2)からのリザーブ要求が
既に受け付けられている場合には信号線(1 1 3
1)の値が′11になっているためにフリップフロップ
(1129−1)のD入力が10′となりサービスプロ
セッサ(A)(101−1)側のリザーブ要求は受け付
けられない。また、サービスプロセッサ(B)(101
−2)からのリザーブ要求が来ていなかった場合、信号
線(1 1 3 1)の値は1 0 1 となるので,
フリップフロップ(1129−1)のD入力の値は11
7 となりQ出力の値もIl+になるのでリザーブが或
功する。
フリップフロップ(1125−1.1129−1)はク
ロック端子に入力されるタイミングパルスの立ち上がり
でD端子から入力し、つぎの立ち下がりでその入力値を
Q端子に出力するタイプの回路である。入力または出力
のタイミングを作るクロック(1 1 3 3)は10
MHz程度以上で発振すればフリップフロップの入力タ
イミングを0.1マイクロ秒以下の単位にできるので、
リザーブ要求レジスタ(1122−1)の値をこのピッ
チで入力できる。一方、中央処理装置(101−1,1
01−2)の命令実行周期は0.3マイクロ秒程度以上
なので,もっとも高速にリザーブ要求レジスタタ(11
22−1)の内容を書き換えたとしてもリザーブ要求レ
ジスタ(1 1 2 2−1)値の変化を見逃すことは
なく十分高速に要求を受け付けることができる。
ロック端子に入力されるタイミングパルスの立ち上がり
でD端子から入力し、つぎの立ち下がりでその入力値を
Q端子に出力するタイプの回路である。入力または出力
のタイミングを作るクロック(1 1 3 3)は10
MHz程度以上で発振すればフリップフロップの入力タ
イミングを0.1マイクロ秒以下の単位にできるので、
リザーブ要求レジスタ(1122−1)の値をこのピッ
チで入力できる。一方、中央処理装置(101−1,1
01−2)の命令実行周期は0.3マイクロ秒程度以上
なので,もっとも高速にリザーブ要求レジスタタ(11
22−1)の内容を書き換えたとしてもリザーブ要求レ
ジスタ(1 1 2 2−1)値の変化を見逃すことは
なく十分高速に要求を受け付けることができる。
RESVREQビット(1204)(7)IJザーブ制
御は以上のように実行できるが、 RESVACKビット(1203)を出力すルニは中央
処理装置(A)(101−1)からきた’7FOOOO
OO’番地の読みだし要求に対してその下位2ビット目
のデータバス(1 1 34−1)Diにフリップフロ
ップ(1129−1)の出力をつなぐ。
御は以上のように実行できるが、 RESVACKビット(1203)を出力すルニは中央
処理装置(A)(101−1)からきた’7FOOOO
OO’番地の読みだし要求に対してその下位2ビット目
のデータバス(1 1 34−1)Diにフリップフロ
ップ(1129−1)の出力をつなぐ。
すなわち、共有メモリ装置(1 0 2)のリザーブ戊
功を意味するフリップフロップ(1’l29一1)の出
力線(1136−1)は、ドライバ(1138−1)を
介してデータパス(1 1 1 9−1)の下位2ビッ
ト目であるDi (1134−1)に接続されており、
このドライバ(1138−1)はマイクロプロセッサ(
111)が’7FOOOOOO’番地を読み出す際にイ
ネーブル状態になる。
功を意味するフリップフロップ(1’l29一1)の出
力線(1136−1)は、ドライバ(1138−1)を
介してデータパス(1 1 1 9−1)の下位2ビッ
ト目であるDi (1134−1)に接続されており、
このドライバ(1138−1)はマイクロプロセッサ(
111)が’7FOOOOOO’番地を読み出す際にイ
ネーブル状態になる。
したがって’7FOOOOOO’番地を読み出せばその
下位2ビット目に共有メモリ装置(102)リザーブの
完了または未完了が表示される。
下位2ビット目に共有メモリ装置(102)リザーブの
完了または未完了が表示される。
次に両中央処理装置(101−1,101−2)のアド
レスバス(1118−1または11工8−2)とデータ
バス(1119−1または1119−2)と制御信号バ
ス(1120−1または1120−2)により構或する
バスのうち、どちらの中央処理装置(1 0 1.また
は101ー2)のバスをRAM(1143)に接続する
かを選択する制御回路(1146)について説明する。
レスバス(1118−1または11工8−2)とデータ
バス(1119−1または1119−2)と制御信号バ
ス(1120−1または1120−2)により構或する
バスのうち、どちらの中央処理装置(1 0 1.また
は101ー2)のバスをRAM(1143)に接続する
かを選択する制御回路(1146)について説明する。
リザーブ回路(1145)では中央処理装置(101−
1と101−2)からの共有メモリ装置(102)のア
クセス要求のうち一方だけが許可される。すなわち許可
される側の信号線(1137−1または1137−2)
だけが′1′となるので制御回路の(1146)内の双
方向ドライバ(1135−1または1135−2)のど
ちらかがイネーブル状態になり、その双方向ドライバ(
1135−1または1135−2)に接続されている側
の中央処理装置(l O l − 1または101−2
)からRAM(1143)のアクセスが可能となる。
1と101−2)からの共有メモリ装置(102)のア
クセス要求のうち一方だけが許可される。すなわち許可
される側の信号線(1137−1または1137−2)
だけが′1′となるので制御回路の(1146)内の双
方向ドライバ(1135−1または1135−2)のど
ちらかがイネーブル状態になり、その双方向ドライバ(
1135−1または1135−2)に接続されている側
の中央処理装置(l O l − 1または101−2
)からRAM(1143)のアクセスが可能となる。
次に、他系中央処理装置(101−1または101−2
)からの共有メモリ装置(102)リザーブを強制的に
解除する強制解放回路(1144)について説明する。
)からの共有メモリ装置(102)リザーブを強制的に
解除する強制解放回路(1144)について説明する。
中央処理装置(A)(101−1)から来た’7FOO
OOO○″番地の書き込み要求はアクセス制御レジスタ
(1201)の FORCERELビット(1’202)へのライトとし
て受け付けアンドゲート(1116−1)で検出し、そ
の時点のデータバスの下位8ビット目のD7 (111
7−1)が′1′の場合のみ相手側サービスプロセッサ
(B)(101−2)のリザーブ要求レジスタ(112
2−2)のリセット端子をONにし、そのレジスタの値
を1 0 j にする。これにより、他系のリザーブ状
態を強制的に解除できる。
OOO○″番地の書き込み要求はアクセス制御レジスタ
(1201)の FORCERELビット(1’202)へのライトとし
て受け付けアンドゲート(1116−1)で検出し、そ
の時点のデータバスの下位8ビット目のD7 (111
7−1)が′1′の場合のみ相手側サービスプロセッサ
(B)(101−2)のリザーブ要求レジスタ(112
2−2)のリセット端子をONにし、そのレジスタの値
を1 0 j にする。これにより、他系のリザーブ状
態を強制的に解除できる。
また、両方の中央処理装置(101−1,101−2)
からほぼ同時にリザーブ要求が到着し、一方の要求が受
け付けられたとき、反対側の要求がつぎに必ず受け付け
られる原理はつぎの通りである。
からほぼ同時にリザーブ要求が到着し、一方の要求が受
け付けられたとき、反対側の要求がつぎに必ず受け付け
られる原理はつぎの通りである。
例えば、中央処理装置(B)(101−2)の要求が先
に受け付けられ、中央処理装1 (A)(101−1)
の要求が待ち状態になっているとすると,リザーブ要求
レジスタ(1122−1)の値は111であるから,フ
リップフロップ(1125−1)の値は(11である。
に受け付けられ、中央処理装1 (A)(101−1)
の要求が待ち状態になっているとすると,リザーブ要求
レジスタ(1122−1)の値は111であるから,フ
リップフロップ(1125−1)の値は(11である。
しかし、他系のフリップフロップ(1129−2)の出
力が′1′になっているためJ自系のフリップフロップ
(1129−↓)の出力は′1′になれない。
力が′1′になっているためJ自系のフリップフロップ
(1129−↓)の出力は′1′になれない。
この状況下で中央処理装置(B)(101−1)側のリ
ザーブ要求が解放されると、少なくとも1クロックサイ
クルの間はフリップフロップ(1129−2)の出力が
t O + になるのでアンドゲート(1128−1)
の出力が11′となり、信号線(1130)を介してア
ンドゲート(1128−2)でサービスプロセッサ(B
)(101−2)のリザーブ要求を遮断する。これらの
動作により、フリツププロップ(1129−1)は゛1
″となり、中央処理装置(A)(101−1)側のリザ
ーブ処理が完了する。
ザーブ要求が解放されると、少なくとも1クロックサイ
クルの間はフリップフロップ(1129−2)の出力が
t O + になるのでアンドゲート(1128−1)
の出力が11′となり、信号線(1130)を介してア
ンドゲート(1128−2)でサービスプロセッサ(B
)(101−2)のリザーブ要求を遮断する。これらの
動作により、フリツププロップ(1129−1)は゛1
″となり、中央処理装置(A)(101−1)側のリザ
ーブ処理が完了する。
共有メモリ装置(102)のアクセス制御回路(107
)は以上のように動作する。
)は以上のように動作する。
第13図は共有メモリ装置(102)をリザーブする処
理(1 3 0 1)フロー図である(1301)。
理(1 3 0 1)フロー図である(1301)。
共有メモリ装置(1o2)は、他系の中央処理装置(1
01−1または101−2)が既にリザーブ済みかも知
れないので最大10回リザーブリトライを繰り返す。こ
のリトライのカウンタをセットする(1302)。’7
FOOOOOO’番地に1バイトの′01′を書き込む
ことにより、RESVREQビット(1204)を′1
′にする(1303)。’7FOOOOOO’番地を1
バイト読みだし,その値が′02′ならRESVACK
ビット(1203)が′1′であることを示しているの
でリザーブ或功として終了する(1307)。もしRE
SVACKビット(1204)が′0′ならリトライの
ループを回る(1304)。つぎにループカウントをl
引いて(1306)−0でなければループを回る(13
06)。ループカウントがOならリザーブ失敗を示すた
めリタンコードを4にして終了する(1309). 第14図に示すように、共有メモリ装置(102)のリ
リース処理(1321)は,’7FOOOOOO’番地
に1バイトの’o o’を書き込むことによりRESV
REQビット(1204)をI O +にして(132
1)終了する(1323)。
01−1または101−2)が既にリザーブ済みかも知
れないので最大10回リザーブリトライを繰り返す。こ
のリトライのカウンタをセットする(1302)。’7
FOOOOOO’番地に1バイトの′01′を書き込む
ことにより、RESVREQビット(1204)を′1
′にする(1303)。’7FOOOOOO’番地を1
バイト読みだし,その値が′02′ならRESVACK
ビット(1203)が′1′であることを示しているの
でリザーブ或功として終了する(1307)。もしRE
SVACKビット(1204)が′0′ならリトライの
ループを回る(1304)。つぎにループカウントをl
引いて(1306)−0でなければループを回る(13
06)。ループカウントがOならリザーブ失敗を示すた
めリタンコードを4にして終了する(1309). 第14図に示すように、共有メモリ装置(102)のリ
リース処理(1321)は,’7FOOOOOO’番地
に1バイトの’o o’を書き込むことによりRESV
REQビット(1204)をI O +にして(132
1)終了する(1323)。
第15図に示すように他系中央処理装置(101−1,
101−2)による共有メモリ装置(102)の強制リ
リース処理(1331)は,’7FOOOOOO’番地
に■バイト′80′を書き込むことによりFORCER
ELビット(1 2 0 2)を゛1′にして(1 3
3 2)終了する(1 3 3 3)。
101−2)による共有メモリ装置(102)の強制リ
リース処理(1331)は,’7FOOOOOO’番地
に■バイト′80′を書き込むことによりFORCER
ELビット(1 2 0 2)を゛1′にして(1 3
3 2)終了する(1 3 3 3)。
第16図は強制リリース処理(1331)が必要となる
動作の説明をするフロー図である。他系中央処理装置(
101−1,101−2)が共有メモリ装置をリザーブ
したまま障害などによりプログラムの実行が停止してし
まった場合、共有メモリ装ffi(102)をリザーブ
したままリリースできなくなる危険性がある。共有メモ
リ装置(102)上にはデータセット単位の閉塞情報を
含む2重化データセット制御テーブル(108)が存在
するため、アクセスできない場合閉塞情報の不足により
正確な2重化ディスク装置へのアクセスが不可能となる
。したがってこのような場合には、他系中央処理装置(
たとえば101−1又は101−2)のリザーブ状態を
強制リリースする必要がある。
動作の説明をするフロー図である。他系中央処理装置(
101−1,101−2)が共有メモリ装置をリザーブ
したまま障害などによりプログラムの実行が停止してし
まった場合、共有メモリ装ffi(102)をリザーブ
したままリリースできなくなる危険性がある。共有メモ
リ装置(102)上にはデータセット単位の閉塞情報を
含む2重化データセット制御テーブル(108)が存在
するため、アクセスできない場合閉塞情報の不足により
正確な2重化ディスク装置へのアクセスが不可能となる
。したがってこのような場合には、他系中央処理装置(
たとえば101−1又は101−2)のリザーブ状態を
強制リリースする必要がある。
他系中央処理装置(たとえば101−1又は101−2
)が停止した場合、自中央処理装置(101−2又は1
01−1)は相互監視線(126)により他系中央処理
装置の障害を検出し、中央処理装置の交代処理(140
1)を開始する。
)が停止した場合、自中央処理装置(101−2又は1
01−1)は相互監視線(126)により他系中央処理
装置の障害を検出し、中央処理装置の交代処理(140
1)を開始する。
中央処理装置(101−1,101−2)の交代処理は
、障害側中央処理装置のCPUアダプタ(106)とr
p (103−1.103−2)■○P(1↓4−1,
114−2)間のインタフェースを強制的に切断する処
理から始まる(1402)。次に自系中央処理装置(1
01−1,101−2)のIPアダプタ(106)とC
PU (103−1,103−2) ・■○P(11
4−1,114−2)間のインタフェースを接続する(
1403)。これらの処理によりIP (103−1,
103−2) ・IOP(114−1,114−2)
の処理を他系中央処理装置から自系中央処理装置に引き
継ぐ。次に、他系中央処理装置がリザーブ中の一対の2
重化共用ディスク装置(110−1,110−2)上の
データセットの強制リリース処理(1404)を実行す
る。その後、他系中央処理装置の動作を継続実行する(
1405)。
、障害側中央処理装置のCPUアダプタ(106)とr
p (103−1.103−2)■○P(1↓4−1,
114−2)間のインタフェースを強制的に切断する処
理から始まる(1402)。次に自系中央処理装置(1
01−1,101−2)のIPアダプタ(106)とC
PU (103−1,103−2) ・■○P(11
4−1,114−2)間のインタフェースを接続する(
1403)。これらの処理によりIP (103−1,
103−2) ・IOP(114−1,114−2)
の処理を他系中央処理装置から自系中央処理装置に引き
継ぐ。次に、他系中央処理装置がリザーブ中の一対の2
重化共用ディスク装置(110−1,110−2)上の
データセットの強制リリース処理(1404)を実行す
る。その後、他系中央処理装置の動作を継続実行する(
1405)。
障害発生により停止した他系中央処理装置がリザーブ中
のまま放置状態になっている2重化共用ディスク装置(
110−1,110−2)上のデータセットの強制リリ
ース処理(1404)は、第17図に示すように、次の
ように実行される。
のまま放置状態になっている2重化共用ディスク装置(
110−1,110−2)上のデータセットの強制リリ
ース処理(1404)は、第17図に示すように、次の
ように実行される。
まず共有メモリ装置(102)を強制リリースし(13
31).自系中央処理装置(101−2又は1 0 1
. − 1 )により共有メモリのリザーブ処理を第5
図における処理と同様な手順で実行する(1301,1
413,1414,505,1=116).,m(7)
後,一対の2重化共用DASD上に存在する全ての2重
化データセットに対して、他系中央処理装置(101−
1,101−2)が残した2重化データセット制御テー
ブル(108)上のデータセットリザーブフラグ(20
2−1,202−2)を次のような手順でリセットする
。
31).自系中央処理装置(101−2又は1 0 1
. − 1 )により共有メモリのリザーブ処理を第5
図における処理と同様な手順で実行する(1301,1
413,1414,505,1=116).,m(7)
後,一対の2重化共用DASD上に存在する全ての2重
化データセットに対して、他系中央処理装置(101−
1,101−2)が残した2重化データセット制御テー
ブル(108)上のデータセットリザーブフラグ(20
2−1,202−2)を次のような手順でリセットする
。
まず2重化データセット制御テーブル(工08)を1エ
ントリ毎にカウントするカウンタIを初期値1にする(
1417)。カウンタの値が工〉400となったら全て
のデータセットに対応するエントリを調べ終ったことを
意味するので共有メモリ装置(102)をリリースして
処理を終る(l32↓,1425)。そうでなければ第
■番目のエントリについて調べる(1418)。第エエ
ントリの#0側リザーブSvP番号(203一■)で示
す値がSIDEパラメタで受け取った値と同一なら(1
419).$0側リザーブフラグ(202−1)をl
O Iにする(1420)。
ントリ毎にカウントするカウンタIを初期値1にする(
1417)。カウンタの値が工〉400となったら全て
のデータセットに対応するエントリを調べ終ったことを
意味するので共有メモリ装置(102)をリリースして
処理を終る(l32↓,1425)。そうでなければ第
■番目のエントリについて調べる(1418)。第エエ
ントリの#0側リザーブSvP番号(203一■)で示
す値がSIDEパラメタで受け取った値と同一なら(1
419).$0側リザーブフラグ(202−1)をl
O Iにする(1420)。
また、第エエントリの#1側リザーブCPU番号(20
3−2)で示す値がSIDEパラメタで受け取った値と
同一なら(1421) 、#1側リザーブフラグ(20
2−2)を′0′にする(1422)。
3−2)で示す値がSIDEパラメタで受け取った値と
同一なら(1421) 、#1側リザーブフラグ(20
2−2)を′0′にする(1422)。
さらに次のデータセットに対しても同様なチェックを実
施するため、エントリカウンタエを1増加し(1 4
2 3)ステップ14l8にもどる.以上の様な動作に
よりデータセット単位の排他制御やデータセット単位の
閉塞が可能となるので、第8図に示すように一対の2重
化ディスク装置(110−1,110−2)の両方に部
分的な固定障害(707)が発生している場合でもアク
セス不可能となるデータセットは704−1,702−
2,706−2のみであり、両系のデータセットが完全
に使用不可能になる危険性を小さくできる。第7図はデ
ータセット単位に排他制御と閉塞制御を実施する従来方
式を表した図であり、両側のディスク装置上にlカ所ず
つ障害が発生すると一対の2重化ディスク上のデータセ
ット全てがアクセス不可能となることを示している。
施するため、エントリカウンタエを1増加し(1 4
2 3)ステップ14l8にもどる.以上の様な動作に
よりデータセット単位の排他制御やデータセット単位の
閉塞が可能となるので、第8図に示すように一対の2重
化ディスク装置(110−1,110−2)の両方に部
分的な固定障害(707)が発生している場合でもアク
セス不可能となるデータセットは704−1,702−
2,706−2のみであり、両系のデータセットが完全
に使用不可能になる危険性を小さくできる。第7図はデ
ータセット単位に排他制御と閉塞制御を実施する従来方
式を表した図であり、両側のディスク装置上にlカ所ず
つ障害が発生すると一対の2重化ディスク上のデータセ
ット全てがアクセス不可能となることを示している。
第9図は8台の独立した中央処理装置で構成される複合
計算機システムに本発明を適用した実施例の図である。
計算機システムに本発明を適用した実施例の図である。
本実施例では8台の中央処理装置(901−1から90
1−8)がn個の対の2重化データセットであるデータ
セット1 (906−1と906−2)、データセット
2(911−1と911−2)、・・・、データセット
n(912 1と912−2)を持つ一対の2重化デ
ィスク装置(904−1と904−2)を共用する構戒
をとっている。各ディスク装置(904−1,904−
2,905−1,905−2)は各中央処理装置上の入
出力チャネルから2台ディスク制御装置(903−1と
903−2)を経由して接続されており、2重化共用対
象ディスク装置(904一1と904−2)以外のディ
スク装置(905−1,905−2)には特に構或上に
制限はない。
1−8)がn個の対の2重化データセットであるデータ
セット1 (906−1と906−2)、データセット
2(911−1と911−2)、・・・、データセット
n(912 1と912−2)を持つ一対の2重化デ
ィスク装置(904−1と904−2)を共用する構戒
をとっている。各ディスク装置(904−1,904−
2,905−1,905−2)は各中央処理装置上の入
出力チャネルから2台ディスク制御装置(903−1と
903−2)を経由して接続されており、2重化共用対
象ディスク装置(904一1と904−2)以外のディ
スク装置(905−1,905−2)には特に構或上に
制限はない。
さらに、一対の2重化共用ディスク装置上の一対の2重
化共用データセットのアクセス制御に本発明を適用する
ため共有メモリ装置(9 0 2)を接続する,共有メ
モリ装置としては各中央処理装置(901−1から90
1−8)から入出力チャネル経由で接続される入出力開
始命令によりアクセスする半導体記憶装置や、共有メモ
リアクセス命令により直接アクセスする共有メモリ装置
を用いることができ、その共有メモリ装!(902)上
には2重化データセット制御テーブル(914)を格納
する。
化共用データセットのアクセス制御に本発明を適用する
ため共有メモリ装置(9 0 2)を接続する,共有メ
モリ装置としては各中央処理装置(901−1から90
1−8)から入出力チャネル経由で接続される入出力開
始命令によりアクセスする半導体記憶装置や、共有メモ
リアクセス命令により直接アクセスする共有メモリ装置
を用いることができ、その共有メモリ装!(902)上
には2重化データセット制御テーブル(914)を格納
する。
第10図は本実施例における2重化データセット制御テ
ーブルの1データセット分のエントリを示す図である。
ーブルの1データセット分のエントリを示す図である。
一般に,複数の計算機システムによるデータセットの参
照には、排他的参照と共用参照とがあるため1エントリ
分の2重化データセット制御テーブル(1 0 0 1
)内の各リザーブフラグ(1003−1.1003−2
)内には排他的リザーブフラグ(1 0 0 6)およ
び共用リザーブフラグ(1007)を用意する。データ
セットライトなどデータセットに記録されている内容の
更新を伴なうため排他的使用が必要な場合べ両系データ
セットの排他的リザーブフラグ(100=6−1.10
06−2)を11′とすることにより当該データセット
へのアクセス権を得る。データセットリードなどデータ
セットに記録されている内容の更新を伴なわない共用使
用の場合、一方の系の共用リザーブフラグを′1′とす
ることにより当該データセットへのアクセス権を得るが
、複数の中央処理装置(901−1または901−2・
・・または901−8)が同じデータセットを共用リザ
ーブすることは妨げない。
照には、排他的参照と共用参照とがあるため1エントリ
分の2重化データセット制御テーブル(1 0 0 1
)内の各リザーブフラグ(1003−1.1003−2
)内には排他的リザーブフラグ(1 0 0 6)およ
び共用リザーブフラグ(1007)を用意する。データ
セットライトなどデータセットに記録されている内容の
更新を伴なうため排他的使用が必要な場合べ両系データ
セットの排他的リザーブフラグ(100=6−1.10
06−2)を11′とすることにより当該データセット
へのアクセス権を得る。データセットリードなどデータ
セットに記録されている内容の更新を伴なわない共用使
用の場合、一方の系の共用リザーブフラグを′1′とす
ることにより当該データセットへのアクセス権を得るが
、複数の中央処理装置(901−1または901−2・
・・または901−8)が同じデータセットを共用リザ
ーブすることは妨げない。
本実施例のデータセットリザーブ処理は第1の実施例に
比較して次の点が異なる。すなわち、第1の実施例にお
けるデータセットリザーブ処理(501)では、データ
セットリード時には1対の2重化データセットのうち一
方のみをリザーブしていた。これに対し、本実施例では
、一方のデータセットが、排他的リザーブされていない
限り、(つまり、データセット制御テーブル(914)
の対応する1エントリの1対のリザーブフラグ(100
3−1と1003−2)の一方で排他的リザーブフラグ
(1006)が11′になっていない限り)両方のデー
タセットの共用リザーブフラグ(一対のリザーブフラグ
(1003−1と1003−2)両方の共用リザーブフ
ラグ(1007)を′1′にする。
比較して次の点が異なる。すなわち、第1の実施例にお
けるデータセットリザーブ処理(501)では、データ
セットリード時には1対の2重化データセットのうち一
方のみをリザーブしていた。これに対し、本実施例では
、一方のデータセットが、排他的リザーブされていない
限り、(つまり、データセット制御テーブル(914)
の対応する1エントリの1対のリザーブフラグ(100
3−1と1003−2)の一方で排他的リザーブフラグ
(1006)が11′になっていない限り)両方のデー
タセットの共用リザーブフラグ(一対のリザーブフラグ
(1003−1と1003−2)両方の共用リザーブフ
ラグ(1007)を′1′にする。
1対のリザーブフラグ(1003−1と1003−’2
)のうち一方または両方で排他的リザーブフラグ(10
06)が11′になっている場合、データセットリード
あるいはデータセットテイトの′ためのリザーブ処理が
失敗する。
)のうち一方または両方で排他的リザーブフラグ(10
06)が11′になっている場合、データセットリード
あるいはデータセットテイトの′ためのリザーブ処理が
失敗する。
また、データセットライト時には一対の2重化データセ
ットの両方のリザーブフラグ(1003一lと1003
−2)の排他的リザーブフラグ(1006)と共用リザ
ーブフラグ(1007)が、全て゛O′のときに限り、
データセットの排他的リザーブ、すなわち一対のリザー
ブフラグ(1003−1と1003−2)の両方の排他
的リザーブフラグ(1006)を′1′にすることを実
行する。これ以外の場合は排他的が失敗となる。
ットの両方のリザーブフラグ(1003一lと1003
−2)の排他的リザーブフラグ(1006)と共用リザ
ーブフラグ(1007)が、全て゛O′のときに限り、
データセットの排他的リザーブ、すなわち一対のリザー
ブフラグ(1003−1と1003−2)の両方の排他
的リザーブフラグ(1006)を′1′にすることを実
行する。これ以外の場合は排他的が失敗となる。
また、データセット閉塞フラグ(1004−1と100
4−2)は,前述の第1の実施例と同様、アクセス禁止
状態になったデータセットを識別するために用意するフ
ラグである。
4−2)は,前述の第1の実施例と同様、アクセス禁止
状態になったデータセットを識別するために用意するフ
ラグである。
また、データセットリザーブCPU番号(1005−1
と1005−2)はデータセットのアクセス権を得てい
る中央処理装置番号を表示するために設けるフィールド
で、8ビットからなり、各ビットが1台の中央処理装置
を表す。最上位ビットがCPU番号O、最下位ビットが
CPU番号7に対応し、リザーブフラグ(1003−1
または1003−2)の中の排他的リザーブフラグ(1
006)または共用リザーブフラグ(1007)のどち
らかのビットが′1′であるとともにリザーブCPU番
号(1005−1または1005−2)フィールドのい
ずれかのビットが11′であるとき、対応するCPUが
当該データセットリザーブの要求元であることを示す。
と1005−2)はデータセットのアクセス権を得てい
る中央処理装置番号を表示するために設けるフィールド
で、8ビットからなり、各ビットが1台の中央処理装置
を表す。最上位ビットがCPU番号O、最下位ビットが
CPU番号7に対応し、リザーブフラグ(1003−1
または1003−2)の中の排他的リザーブフラグ(1
006)または共用リザーブフラグ(1007)のどち
らかのビットが′1′であるとともにリザーブCPU番
号(1005−1または1005−2)フィールドのい
ずれかのビットが11′であるとき、対応するCPUが
当該データセットリザーブの要求元であることを示す。
CPU番号(1005−1または1005−2)フィー
ルドの設定は、前記データセットリザーブフラグ(10
03−1または1003−2)を′1′にした時、その
リザーブ要求を実行中の中央処理装置(901−1から
901−8)に対応するビットを11′にする。
ルドの設定は、前記データセットリザーブフラグ(10
03−1または1003−2)を′1′にした時、その
リザーブ要求を実行中の中央処理装置(901−1から
901−8)に対応するビットを11′にする。
また、リザーブを解放するときには解放要求を実行中の
中央処理装置(901−1から901−8)に対応する
ビットを′0′にする。
中央処理装置(901−1から901−8)に対応する
ビットを′0′にする。
本実施例によれば、中央処理装置間でデータセット排他
制御を行なう場合、3台以上の中央処理装置が1個のデ
ータセットを同時に読み出す場合であっても共用するこ
とができ、データセット待ちが発生することによるシス
テム性能の低下を防止することができる。
制御を行なう場合、3台以上の中央処理装置が1個のデ
ータセットを同時に読み出す場合であっても共用するこ
とができ、データセット待ちが発生することによるシス
テム性能の低下を防止することができる。
本発明によれば,一対の2重化共用ディスク装置におけ
る部分的な固定アクセス障害に対する可用性を大幅に向
上することができる。
る部分的な固定アクセス障害に対する可用性を大幅に向
上することができる。
第1図は本発明による計算機システムのブロック図、第
2図は第1図の共有メモリ(102)内の2重化データ
セット制御テーブル(108)の1つのエントリの構或
を示す図,第3図はデータセットライト処理のフロー図
、第4図はデータセットリード処理のフロー図、第5図
はデータセットリザーブ処理のフロー図、第6図はデー
タセットリリース処理のフロー図、第7図は従来制御方
式におけるアクセス障害時のデータセット閉塞状態を示
す図、第8図は本発明によるアクセス障害時のデータセ
ット閉塞状態を示す図、第9図は8台の中央処理装置が
2重化共用データセットを制御する場合のシステム構或
図、第10図は第9図のシステムに用いる排他的および
共用リザーブを制御する2重化制御テーブルのエントリ
を示す図である. 第11図は第1図の装置に用いる共用メモリ装置(10
2)の詳細回路図,第12図は第1l図の装置に用いる
アクセス制御レジスタ(1201)内のデータを示す図
,第13図は共有メモリリザーブ処理のフローチャート
、第14図は共有メモリリリース処理のフローチャート
、第15図は他系リザーブ状態強制リリースのフローチ
ャート、第16図はSvP交代処理のフローチャート、
第17図は共用ディスク装置の強制リリース処理のフロ
ーチャートである。 符号の説明 101−1・・・中央処理装置(A).101−2・・
・中央処理装置(B)、102・・・共有メモリ装置,
110−1・・・共用ディスク装置#O、1 1 0−
1・・・共用ディスク#1.108・・・2重化データ
セット制御テーブル、111・・・マイクロプロセッサ
、113・・・共通バス、301・・・データセットラ
イト処理、401・・・データセットリード処理、50
1・・データセットリザーブ処理、60↓・・・データ
セットリリース処理、901・・・中央処理装置、90
2・共有メモリ装置、914・・2重化データセット制
御テーブル、904・・共有ディスク装置、906・・
2重化データセット、1工44・・強制解放回路.11
45・・・リザーブ回路、↓146・・・制御回路、1
201・・・アクセス制御レジスタ、1301・・共有
メモリリザーブ処理、132l・・・共有メモリリリー
ス処理、133↓・・・強制リリース処理、140↓・
・・CPU交代処理、1404・・・共用ディスク装置
の強制リリース処理。 多 / 1] 匈ヲ ミ 竿..3)21 壷らl デ゛−フゼノト クイト 品+)A グa/ デ”17仁ット リード゜ ■ 名 10lfi 名 12 図 −193−
2図は第1図の共有メモリ(102)内の2重化データ
セット制御テーブル(108)の1つのエントリの構或
を示す図,第3図はデータセットライト処理のフロー図
、第4図はデータセットリード処理のフロー図、第5図
はデータセットリザーブ処理のフロー図、第6図はデー
タセットリリース処理のフロー図、第7図は従来制御方
式におけるアクセス障害時のデータセット閉塞状態を示
す図、第8図は本発明によるアクセス障害時のデータセ
ット閉塞状態を示す図、第9図は8台の中央処理装置が
2重化共用データセットを制御する場合のシステム構或
図、第10図は第9図のシステムに用いる排他的および
共用リザーブを制御する2重化制御テーブルのエントリ
を示す図である. 第11図は第1図の装置に用いる共用メモリ装置(10
2)の詳細回路図,第12図は第1l図の装置に用いる
アクセス制御レジスタ(1201)内のデータを示す図
,第13図は共有メモリリザーブ処理のフローチャート
、第14図は共有メモリリリース処理のフローチャート
、第15図は他系リザーブ状態強制リリースのフローチ
ャート、第16図はSvP交代処理のフローチャート、
第17図は共用ディスク装置の強制リリース処理のフロ
ーチャートである。 符号の説明 101−1・・・中央処理装置(A).101−2・・
・中央処理装置(B)、102・・・共有メモリ装置,
110−1・・・共用ディスク装置#O、1 1 0−
1・・・共用ディスク#1.108・・・2重化データ
セット制御テーブル、111・・・マイクロプロセッサ
、113・・・共通バス、301・・・データセットラ
イト処理、401・・・データセットリード処理、50
1・・データセットリザーブ処理、60↓・・・データ
セットリリース処理、901・・・中央処理装置、90
2・共有メモリ装置、914・・2重化データセット制
御テーブル、904・・共有ディスク装置、906・・
2重化データセット、1工44・・強制解放回路.11
45・・・リザーブ回路、↓146・・・制御回路、1
201・・・アクセス制御レジスタ、1301・・共有
メモリリザーブ処理、132l・・・共有メモリリリー
ス処理、133↓・・・強制リリース処理、140↓・
・・CPU交代処理、1404・・・共用ディスク装置
の強制リリース処理。 多 / 1] 匈ヲ ミ 竿..3)21 壷らl デ゛−フゼノト クイト 品+)A グa/ デ”17仁ット リード゜ ■ 名 10lfi 名 12 図 −193−
Claims (1)
- 【特許請求の範囲】 1、複数の処理装置と、それぞれごとに使用権を確保し
た後でアクセスされる複数のデータグループを保持する
第1の直接アクセス記憶装置(DASD)と、該複数の
データグループの各々と対を成す、同一内容の複数のデ
ータグループを保持する第2のDASDからなる、該複
数の処理装置によりアクセスされる、2重化されたDA
SDとからなる計算機システムにおいて、(a)該二重
化されたDASDのそれぞれに保持された複数のデータ
グループの内、そこに回復不可能な障害がすでに発生し
たデータグループを識別する情報を記憶し、 (b)該二重化されたDASDのいずれか一方に保持さ
れた一つのデータグループを該複数の処理装置の一つが
アクセスするとき、該一つのデータグループが回復不可
能な障害がすでに発生したデータグループか否かを該記
憶された情報から判別し、 (c)該一つのデータグループが回復不可能な障害がま
だ発生していないデータグループのとき、該一方のDA
SD内の該一つのデータグループを該一つの処理装置に
よりアクセスし、(d)該一つのデータグループが回復
不可能な障害が既に発生しているデータグループである
とき、該一つのデータグループへのアクセスを中止する
、 ステップからなるDASDアクセス制御方法。 2、(e)該一つの処理装置により要求されたアクセス
が、読み出しのための場合、該一つのデータグループが
回復不可能な障害が既に発生しているデータグループで
あるとき、該二重化されたDASDの他方のDASDに
保持された、該一つのデータグループと対を成す他のデ
ータグループが回復不可能な障害がすでに発生したデー
タグループか否かを該記憶された情報から判別し、 (f)該他のデータグループに回復不可能な障害がまだ
発生していないとき、該他のデータグループを該一つの
処理装置により読み出しのためにアクセスする、 ステップをさらに有する第1項のDASDアクセス制御
方法。 3、該ステップ(f)は、該一つの処理装置により出力
される、該他のデータグループを読み出すためのアクセ
ス要求に応答して行なわれる第2項のDASDアクセス
制御方法。 4、該ステップ(c)の実行中に、該一つのデータグル
ープに回復不可能な障害が発生したとき、該一つのデー
タグループへのアクセスを中断し、該ステップ(c)及
び(d)を実行するステップを更に有する第2項のDA
SDアクセス制御方法。 5、(e)該一つの処理装置により要求されたアクセス
が、書き込みのための場合、該一つのデータグループが
回復不可能な障害が既に発生しているデータグループで
あるか否かに無関係に、該二重化されたDASDの他方
のDASDに保持された、該一つのデータグループと対
を成す他のデータグループが回復不可能な障害がすでに
発生したデータグループか否かを該記憶された情報から
判別し、 (f)該他のデータグループが回復不可能な障害がまだ
発生していないデータグループであるとき該他のデータ
グループを該一つの処理装置により書き込みのためにア
クセスし、 (g)該他のデータグループが回復不可能な障害が既に
発生したデータグループであるとき、該他のデータグル
ープへの該一つの処理装置による書き込みのためのアク
セスを中止する、ステップをさらに有する第1項のDA
SDアクセス制御方法。 6、該ステップ(f)は、該一つの処理装置により出力
される、該他のデータグループへの書き込みのためのア
クセス要求に応答して行なわれる第5項のDASDアク
セス制御方法。 7、該ステップ(b)は、 (b1)それぞれDASDに保持された複数のデータグ
ループのそれぞれに対応して記憶され、対応するデータ
グループに回復不可能な障害がすでに発生したか否かを
示す複数の閉塞フラグの内、該アクセスすべき一つのデ
ータグループに対応する一つの閉塞フラグを読み出し、
(b2)該読みだされた一つの閉塞フラグが障害表示状
態にあるか否かにより該一つのデータグループが回復不
可能な障害がすでに発生したデータグループか否かの判
別をおこなう、ステップからなる、 第1項のDASDアクセス制御方法。 8、該一つの閉塞フラグは、該二重化されたDASDの
それぞれに保持された複数のデータグループのそれぞれ
に対応する閉塞フラグを記憶する、該複数の処理装置に
共通に設けられたランダムアクセスメモリから読み出さ
れる 第7項のDASDアクセス制御方法。 9、該一つの閉塞フラグの読み出しおよび該一つの閉塞
フラグが障害表示状態にあるか否かの判別は、該一つの
処理装置により行なう第8項のDASDアクセス制御方
法。 10、該一つのデータグループをアクセス中に該データ
グループに回復不可能な障害が発生したとき、該一つの
データグループに対する該一つの閉塞フラグを障害表示
状態に書き換えるステップを更に有する第6項のDAS
Dアクセス制御方法。 11、該一つのデータグループに対する該一つの閉塞フ
ラグの、障害表示状態への書き換えは、該一つの処理装
置により行なう第10項のDASDアクセス制御方法。 12、複数の処理装置と、それぞれごとに使用権を確保
した後でアクセスされる複数のデータグループを保持す
る第1の直接アクセス記憶装置(DASD)と、該複数
のデータグループの各々と対を成す、同一内容の複数の
データグループを保持する第2のDASDからなる、該
複数の処理装置によりアクセスされる、2重化されたD
ASDとからなる計算機システムにおいて、(a)該二
重化されたDASDのそれぞれに保持された該複数のデ
ータグループのそれぞれに対応して、それぞれのデータ
グループがリザーブ状態に有るか否かを示すリザーブフ
ラグを、該複数の処理装置に共通に設けられたランダム
アクセスメモリに記憶し、 (b)該二重化されたDASDのいずれか一方に保持さ
れた一つのデータグループを該複数の処理装置の一つが
アクセスするとき、該ランダムアクセスメモリを該一つ
の処理装置のためにリザーブし、 (c)その後、該一つのデータグループに対応する一つ
のリザーブフラグを該ランダムアクセスメモリから読み
出し、 (d)該読みだされた一つのリザーブフラグがリザーブ
表示状態にないとき、該記憶された一つのリザーブフラ
グをリザーブ表示状態に変更し、それにより該一つのデ
ータグループをリザーブし、 (e)その後、該ランダムアクセスメモリのリザーブを
解除し、その後該一つのデータグループを該一つの処理
装置によりアクセスする、ステップを有するDASDア
クセス制御方法。 13、(f)該アクセス後に、該ランダムアクセスメモ
リを該一つの処理装置のためにリザーブし、(g)該ラ
ンダムアクセスメモリを該一つの処理装置のためにリザ
ーブした状態で、該一つのデータグループに対応する一
つのリザーブフラグをリザーブ解除表示状態に変更し、
それにより該一つのデータグループのリザーブを解除す
る、 ステップを更に有する第12項のDASDアクセス制御
方法。 14、(h)該一つの処理装置が該一つデータグループ
または該他のデータグループをリザーブしたまま故障し
たとき、該一つの処理装置以外の他の処理装置が、該二
重化されたDASDに保持された、該複数のデータグル
ープの内、該一つの処理装置によりリザーブされたまま
になっているデータグループを検出し、 (i)該他の処理装置が、該検出されたデータグループ
のリザーブを強制的に解除する ステップを更に有する第13項のDASDアクセス制御
方法。 15、(j)該ステップ(d)により、該記憶された一
つのリザーブフラグをリザーブ表示状態に変更するとき
、該ステップ(e)の実行前に、該一つの処理装置に割
り当てられた処理装置識別情報を該一つデータグループ
に対するリザーブ処理装置識別情報として記憶するステ
ップを更に有し、 該ステップ(h)は、該一つの処理装置以外の処理装置
が、該二重化されたDASDに保持され、該複数のデー
タグループのそれぞれに対応して記憶されているリザー
ブ処理装置識別情報が、該一つの処理装置に割り当てら
れた処理装置識別情報に一致するか否かを判別し、その
判別結果により、該一つの処理装置によりリザーブされ
たままになっているデータグループを検出するステップ
からなる、 第14項のDASDアクセス制御方法。 16、複数の処理装置と、 それぞれごとに使用権を確保した後でアクセスされる複
数のデータグループを保持する、該複数の処理装置に接
続され、それらによりアクセスされる第1の直接アクセ
ス記憶装置(DASD)と、 それぞれ該複数のデータグループの1つに対する、該複
数の処理装置からのアクセスを制御するための、複数の
制御情報を保持する、該複数の処理装置に共通に設けら
れたランダムアクセスメモリと、 該複数の処理装置と、該ランダムアクセスメモリに接続
され、該複数の処理装置から該ランダムアクセスメモリ
へのアクセスの実行を制御するアクセス制御回路であっ
て、 該複数の処理装置の1つにより実行された、該ランダム
アクセスメモリのリザーブを要求する命令に応答して、
該1つの処理装置のために該ランダムアクセスメモリを
リザーブし、該1つの処理装置により実行された、該ラ
ンダムアクセスメモリのリザーブの解除を要求する命令
に応答して、該リザーブを解除するリザーブ手段と、 該リザーブ回路に接続され、該複数の処理装置の一つに
より実行された命令が要求する、該ランダムアクセスメ
モリの内のいずれかの制御情報へのアクセスの実行を、
該1つの処理装置に対して該ランダムアクセスメモリが
既にリザーブされているか否かに依存して制御する制御
手段と、 を有するものと、 からなる計算機システム。 17、該リザーブ手段は、該複数の処理装置の内のいず
れかの二つの処理装置によりそれぞれ実行された、リザ
ーブを要求する二つの命令に応答して、該二つの処理装
置のうち、直前に該ランダムアクセスメモリをリザーブ
した処理装置以外の処理装置に対して、該ランダムアク
セスメモリを優先的にリザーブする手段を有する第16
項の計算機システム。 18、該アクセス制御回路は、該一つの処理装置により
該ランダムアクセスメモリがリザーブされているときに
該一つの処理装置以外の処理装置により実行された、リ
ザーブの強制的解除を要求する命令に応答して、該一つ
の処理装置のためにリザーブを解除する手段を更に有す
る、第16項の計算機システム。 19、該第1のDASD内の該複数のデータグループと
同一内容の複数のデータグループを保持する第2のDA
SDを更に有し、 該ランダムアクセスメモリは、該第1、第2のDASD
のそれぞれに保持された互いに同一の内容の一組のデー
タグループの一方にそれぞれ対する一組の制御情報を保
持するメモリからなる第16項の計算機システム。 20、該一組の制御情報は対応するデータグループの名
称とともに、該ランダムアクセスメモリに保持されてい
る第19項の計算機システム。 21、1つのデータグループに対する制御情報は、該デ
ータグループを占有して読み出しまたは書込を行なうた
めに該データグループを該複数の処理装置の1つが予約
した状態にあるか否かを示すデータグループ・リザーブ
フラグと、該データグループが予約された状態に有ると
き、該データグループを予約した1つの処理装置を表す
リザーブCPU番号と、 該データグループが、固定的な障害により読み出しまた
は書き込みが不可能な状態に有るか否かを示すデータグ
ループ閉塞フラグからなる、第19項の計算機シテスム
。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1-156805 | 1989-06-21 | ||
| JP15680589 | 1989-06-21 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0394321A true JPH0394321A (ja) | 1991-04-19 |
Family
ID=15635710
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2159785A Pending JPH0394321A (ja) | 1989-06-21 | 1990-06-20 | アクセス制御方法 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5202887A (ja) |
| JP (1) | JPH0394321A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007172172A (ja) * | 2005-12-20 | 2007-07-05 | Fujitsu Ltd | ファイバーチャネルスイッチおよびそれを用いたコンピュータシステム |
| US7624301B2 (en) | 2005-03-28 | 2009-11-24 | Fujitsu Limited | Method and apparatus for identifying failure module |
Families Citing this family (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5363502A (en) * | 1990-06-08 | 1994-11-08 | Hitachi, Ltd. | Hot stand-by method and computer system for implementing hot stand-by method |
| US5544347A (en) | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
| FR2692379B1 (fr) * | 1991-10-04 | 1996-08-14 | Aerospatiale Ste Nat Indle | Procede de detection et de passivation de pannes dans un systeme de traitement de donnees, et systeme de traitement de donnees adapte a sa mise en oeuvre |
| JPH0619785A (ja) * | 1992-03-27 | 1994-01-28 | Matsushita Electric Ind Co Ltd | 分散共有仮想メモリーとその構成方法 |
| JPH0628108A (ja) * | 1992-07-09 | 1994-02-04 | Hitachi Ltd | データ記憶システム |
| US5621887A (en) * | 1993-04-07 | 1997-04-15 | Sequoia Systems, Inc. | Fault tolerant disk management system which tests failed disks during varied time intervals which are based upon the criticality associated with the failed disks |
| US6161162A (en) * | 1993-12-08 | 2000-12-12 | Nec Corporation | Multiprocessor system for enabling shared access to a memory |
| JP3385091B2 (ja) * | 1994-05-13 | 2003-03-10 | 三菱電機株式会社 | 計算機間の排他制御装置 |
| EP0709779B1 (en) * | 1994-10-31 | 2001-05-30 | International Business Machines Corporation | Virtual shared disks with application-transparent recovery |
| US5619642A (en) * | 1994-12-23 | 1997-04-08 | Emc Corporation | Fault tolerant memory system which utilizes data from a shadow memory device upon the detection of erroneous data in a main memory device |
| US5826046A (en) * | 1994-12-30 | 1998-10-20 | International Business Machines Corporation | Method and apparatus for polling and selecting any paired device in any drawer |
| US5941994A (en) * | 1995-12-22 | 1999-08-24 | Lsi Logic Corporation | Technique for sharing hot spare drives among multiple subsystems |
| US5978933A (en) * | 1996-01-11 | 1999-11-02 | Hewlett-Packard Company | Generic fault tolerant platform |
| 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 |
| US5907862A (en) * | 1996-07-16 | 1999-05-25 | Standard Microsystems Corp. | Method and apparatus for the sharing of a memory device by multiple processors |
| US5922077A (en) * | 1996-11-14 | 1999-07-13 | Data General Corporation | Fail-over switching system |
| US5870241A (en) * | 1996-11-26 | 1999-02-09 | International Business Machines Corporation | Method and apparatus for evasive maneuvering to keep DASD heads away from protruding surface defects |
| US7013305B2 (en) | 2001-10-01 | 2006-03-14 | International Business Machines Corporation | Managing the state of coupling facility structures, detecting by one or more systems coupled to the coupling facility, the suspended state of the duplexed command, detecting being independent of message exchange |
| US6684306B1 (en) * | 1999-12-16 | 2004-01-27 | Hitachi, Ltd. | Data backup in presence of pending hazard |
| US6944787B2 (en) * | 2001-10-01 | 2005-09-13 | International Business Machines Corporation | System-managed duplexing of coupling facility structures |
| WO2004059505A1 (en) | 2002-12-17 | 2004-07-15 | Systemauto | System, method and computer program product for sharing information in a distributed framework |
| US10977134B2 (en) | 2014-08-19 | 2021-04-13 | Netapp Inc. | Restoration process to restore corrupted data of a volume |
| US10037147B2 (en) | 2015-12-14 | 2018-07-31 | International Business Machines Corporation | Sharing files in a multisystem environment |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3676860A (en) * | 1970-12-28 | 1972-07-11 | Ibm | Interactive tie-breaking system |
| US3725872A (en) * | 1971-03-03 | 1973-04-03 | Burroughs Corp | Data processing system having status indicating and storage means |
| US4187538A (en) * | 1977-06-13 | 1980-02-05 | Honeywell Inc. | Read request selection system for redundant storage |
| JPS588018B2 (ja) * | 1978-09-14 | 1983-02-14 | 日本電気株式会社 | 多重プロセッサシステム |
| CA1102007A (en) * | 1979-05-15 | 1981-05-26 | Prem L. Sood | Duplicated memory system having status indication |
| US4376300A (en) * | 1981-01-02 | 1983-03-08 | Intel Corporation | Memory system employing mostly good memories |
| JPS58140862A (ja) * | 1982-02-16 | 1983-08-20 | Toshiba Corp | 相互排他方式 |
| US4574350A (en) * | 1982-05-19 | 1986-03-04 | At&T Bell Laboratories | Shared resource locking apparatus |
| JPS6120148A (ja) * | 1984-07-07 | 1986-01-28 | Nec Corp | フアイルの排他制御方式 |
| US4847754A (en) * | 1985-10-15 | 1989-07-11 | International Business Machines Corporation | Extended atomic operations |
| 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 |
| US5051887A (en) * | 1987-08-25 | 1991-09-24 | International Business Machines Corporation | Maintaining duplex-paired storage devices during gap processing using of a dual copy function |
| US4984153A (en) * | 1988-04-27 | 1991-01-08 | Unisys Corporation | Storage locking control for a plurality of processors which share a common storage unit |
-
1990
- 1990-06-20 JP JP2159785A patent/JPH0394321A/ja active Pending
- 1990-06-21 US US07/541,749 patent/US5202887A/en not_active Expired - Lifetime
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7624301B2 (en) | 2005-03-28 | 2009-11-24 | Fujitsu Limited | Method and apparatus for identifying failure module |
| JP2007172172A (ja) * | 2005-12-20 | 2007-07-05 | Fujitsu Ltd | ファイバーチャネルスイッチおよびそれを用いたコンピュータシステム |
Also Published As
| Publication number | Publication date |
|---|---|
| US5202887A (en) | 1993-04-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0394321A (ja) | アクセス制御方法 | |
| US5802345A (en) | Computer system with a reduced number of command end interrupts from auxiliary memory unit and method of reducing the number of command end interrupts | |
| US5764882A (en) | Multiprocessor system capable of isolating failure processor based on initial diagnosis result | |
| US6412078B2 (en) | External storage | |
| US4901232A (en) | I/O controller for controlling the sequencing of execution of I/O commands and for permitting modification of I/O controller operation by a host processor | |
| JPH07141117A (ja) | ディスク制御装置の制御方法 | |
| JPH07306844A (ja) | マルチプロセッサシステムの無停止プログラム変更方法およびマルチプロセッサシステムおよびディスク制御装置の無停止プログラム変更方法およびディスク制御装置 | |
| JP2004199551A (ja) | ストレージシステム及び障害ストレージ装置の切り離し方法 | |
| US7117320B2 (en) | Maintaining data access during failure of a controller | |
| US8756381B2 (en) | Storage subsystem and load distribution method for executing data processing using normal resources even if an abnormality occurs in part of the data processing resources that intermediate data processing between a host computer and a storage device | |
| US6801983B2 (en) | Disk control device and storage device using it | |
| JPH0384643A (ja) | デイスク制御装置のキヤツシユ組込制御方法 | |
| US4977500A (en) | System recovery method for computer system having a standby system with a wait job operation capability | |
| JPH06214782A (ja) | プロセッサ制御コード導入システムおよび方法 | |
| JP3329986B2 (ja) | マルチプロセッサシステム | |
| JPS59106056A (ja) | フエイルセイフ式デ−タ処理システム | |
| JP2001022599A (ja) | フォールトトレラント・システム,フォールトトレラント処理方法およびフォールトトレラント制御用プログラム記録媒体 | |
| US5761704A (en) | Apparatus for copying disk | |
| JP2963298B2 (ja) | 二重化共有メモリにおける排他制御命令のリカバリ方法および計算機システム | |
| JP3385407B2 (ja) | マルチプロセッサシステムの無停止プログラム変更方法およびマルチプロセッサシステム | |
| JPS6095663A (ja) | 2重化磁気デイスク装置の自動切換装置 | |
| JP3515495B2 (ja) | ディスク制御装置及びその制御方法 | |
| JP2755103B2 (ja) | 記憶装置のアクセス方法 | |
| JP2001229042A (ja) | ディスク制御装置 | |
| JP2922342B2 (ja) | 割込み制御装置 |