JPH10133938A - クラスタ間共有メモリアクセス方式 - Google Patents

クラスタ間共有メモリアクセス方式

Info

Publication number
JPH10133938A
JPH10133938A JP8305827A JP30582796A JPH10133938A JP H10133938 A JPH10133938 A JP H10133938A JP 8305827 A JP8305827 A JP 8305827A JP 30582796 A JP30582796 A JP 30582796A JP H10133938 A JPH10133938 A JP H10133938A
Authority
JP
Japan
Prior art keywords
emu
address
data
storage device
system bus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP8305827A
Other languages
English (en)
Other versions
JP3052857B2 (ja
Inventor
Takao Kishi
高夫 岸
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP8305827A priority Critical patent/JP3052857B2/ja
Priority to US08/962,335 priority patent/US6032234A/en
Publication of JPH10133938A publication Critical patent/JPH10133938A/ja
Application granted granted Critical
Publication of JP3052857B2 publication Critical patent/JP3052857B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0284Multiple user address space allocation, e.g. using different base addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】 複数のクラスタから構成され、拡張記憶装置
(EMU)を共有メモリとして有する疎結合システム
で、クラスタ−EMU間での同期転送を実現する。 【解決手段】 各クラスタのシステムバスに直接に拡張
記憶装置アダプタ(EMA)21,22 を接続し、EMU
(EMA)に主記憶アドレスエリアの一部を割り当て
る。EMA21,22 は、EMUのデータの写しをキャッシ
ュ手段33に保持している。システムバスインタフェース
手段32は、EMUアドレス検出手段31によって、システ
ムバスにEMUに対するリード要求,ライト要求が出力
されたか否かを常時監視する。リード要求を検出する
と、リード要求をキャッシュ制御手段34に伝達してキャ
ッシュ手段33から出力されるリードデータをシステムバ
スに出力する。ライト要求を検出すると、ライト要求を
キャッシュ手段33およびキャッシュ制御手段34に伝達
し、キャッシュの更新およびEMUデータの更新を行わ
せる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ディスク共有方式
(Shared−disk方式)を採用するクラスタ制
御技術に関し、特に、クラスタ間の共有メモリの接続方
式に関する。
【0002】
【従来の技術】従来、クラスタ間共有メモリとしては、
一般に拡張記憶装置(EMU=Expansion M
emory Unit)が使用されていた。EMUは、
高速性、共有性、不揮発性の3つの特性を有した外部装
置である。高速性に関して言えば、主記憶装置と電子デ
ィスク装置の間に位置する記憶階層を構成する記憶装置
である。また、不揮発性に関して言えば、バッテリバッ
クアップ装置が内蔵可能であり、停電時でもEMUの内
容を保持することが可能である。
【0003】NEC技報Vol.48 No. 9/199
5 P28〜36(PX7800中央処理装置)によれ
ば、クラスタとEMUは、拡張記憶装置アダプタ(EM
A)を介して接続されている。EMAは、主記憶とEM
Uとの間のデータ転送制御を行う。EMAが行うデータ
転送制御は、2種類あって、CPUと同期して動作する
同期転送と、CPUとは独立して動作する非同期転送が
ある。同期転送は、CPUの専用命令を実行することに
より、EMAに対し転送の起動と、終了待ちが行われ
る。終了待ちは専用命令の実行の中で行われる。すなわ
ち、転送が終了するまで専用命令の実行は終了しないの
で、ソフトウェア処理から見た転送時間(TAT)は、
短い。非同期転送は、EMAに対し転送の起動を行っ
て、その転送の起動を行ったプロセスは一時終了し、終
了通知は、(他プロセス実行中に)非同期に通知され
る。もちろん、非同期の終了通知を受け取ったCPU
は、該転送の起動を行ったプロセスにスウイッチしなけ
ればならない。従って、ソフトウェア処理から見た転送
時間のTATは非常に長くなる。
【0004】さて、PX7800での同期転送は、シス
テムバスに直結されていないEMAによって、主記憶−
EMU間で実施される。EMAからCPUへの転送終了
通知は、PX7800固有のインタフェースである。
【0005】従って、通常のUNIXサーバでディスク
共有型の(Shared−disk方式の)クラスタを
構成し、EMUを共有メモリとして接続する場合には、
非同期転送なら、mappedI/O制御を利用して実
現可能である。但し、この場合、拡張記憶装置アダプタ
(EMA)は、I/Oバス配下に接続(構成)され、転
送制御は、(専用の)ドライバSWの制御により、主記
憶→CPU→EMA→EMU、または、EMU→EMA
→CPU→主記憶、となる。しかしながら、アプリケー
ションプログラムがEMUとのデータ転送を行う場合、
カーネルの呼び出し(コール)、ドライバの呼び出し
(コール)、カーネルへの復帰(リターン)、アプリケ
ーションプログラムへの復帰(リターン)が必要とな
る。すなわち、プロセススイッチが必要になるので、ソ
フトウェアから見た転送処理のTATは非常に長い。
【0006】同期転送を行う場合は、終了通知は、PX
7800のようなインタフェースはないので、実現不可
能である。従って、ソフトウェアから見た転送処理のT
ATを短くすることはできない。
【0007】特開平6−250915号公報(拡張記憶
制御方式)によれば、複数のクラスタに拡張記憶装置が
接続されるデータ処理装置において、各クラスタと拡張
記憶装置との間でデータ転送を行うことが提案されてい
る。この従来技術では、該データ転送のためのアダプタ
は、拡張記憶装置側に設けられ、該アダプタは、同期化
用バッファとデータ蓄積用バッファを有している。同期
化用バッファは、クラスタ側の動作クロックと拡張記憶
装置側の動作クロックの差を吸収するための一時格納バ
ッファである。データ蓄積用バッファは、同期化用バッ
ファ内に格納されたデータを拡張記憶装置に転送する前
に一時格納、または、拡張記憶装置から読み出されたデ
ータを同期化用バッファに転送する前に一時格納してお
くバッファである。データ蓄積用バッファを偶数メモ
リ、奇数メモリとで構成したことが、特開平1−991
41号公報の技術との差分となっている。上記特開平6
−250915号公報では、拡張記憶装置へのリード/
ライト動作のしくみに関する記述だけで、クラスタと拡
張記憶装置との接続関係および動作連携については、言
及されていない。
【0008】特開平1−99141号公報(共用拡張記
憶制御方式)によれば、特開平6−250915号公報
(拡張記憶制御方式)と同様、複数のクラスタに拡張記
憶装置が接続されるデータ処理装置において、各クラス
タと拡張記憶装置との間でデータ転送を行うことが提案
されている。この従来技術の特徴は、同期化用バッファ
の空き状態,満杯状態の検出と通知、および、クラス
タ、または、拡張記憶装置での対処方法について記述し
ている。しかし、この特開平1−99141号公報でも
結局は、拡張記憶装置へのリード/ライト動作のしくみ
に関する記述だけで、クラスタと拡張記憶装置との接続
関係および動作連携については、言及されていない。
【0009】
【発明が解決しようとする課題】第1の問題点は、通常
のUNIXサーバでディスク共有型の(Shared−
disk方式の)クラスタを構成し、共有ディスクの他
にも、EMUを共有メモリとして接続するような疎結合
システムにおいて、クラスタとEMU間で同期転送がで
きないことである。
【0010】その理由は、EMUは外部記憶装置である
ので、クラスタにEMUを接続するための拡張記憶装置
アダプタをI/Oバス配下に接続しなければならない。
その結果、EMUは、I/Oアクセス対象の装置とな
り、CPU−EMA間のインタフェースはI/Oインタ
フェースとなる。従って、非同期転送のみサポートされ
るが、同期転送はサポートできない。結果的には、TA
Tの短いEMUとのデータ転送が実施できない。
【0011】第2の問題点は、通常のUNIXサーバで
ディスク共有型の(Shared−disk方式の)ク
ラスタを構成し、EMUを共有メモリとして接続するよ
うな疎結合システムにおいて、拡張記憶装置アダプタ
(EMA)をクラスタ内のシステムバスに直結する場
合、EMUは主記憶として扱われる。しかしながら、E
MUの構成情報(EMUにどれくらいのメモリ容量が実
装され、かつ、使用可能なエリアはどれくらいかを示す
情報)がOSに伝えられない。EMUが主記憶の一部と
して扱われるなら、EMUの構成情報も主記憶の構成情
報に組み込まれなければならない。
【0012】その理由は、EMUが外部記憶装置である
ので、EMUの構成情報をクラスタ上で走行するOSへ
伝達する手段がないことである。
【0013】本発明の目的は、通常のUNIXサーバで
ディスク共有型の(Shared−disk方式の)ク
ラスタを構成し、EMUを共有メモリとして接続するよ
うな疎結合システムを提供すること、および、前記疎結
合システムにおいて、クラスタ−EMU間で高速な同期
転送をサポートすることである。さらに、共有ディスク
−EMU間でのデータ転送をサポートすることである。
【0014】
【課題を解決するための手段】本発明のクラスタ間共有
メモリアクセス方式は、通常のUNIXサーバでディス
ク共有型(Shared−disk方式の)クラスタを
構成し、EMUを共有メモリとして接続するような疎結
合システムにおいて、各クラスタとEMU間との間の同
期転送機能をサポートする。前記同期転送機能をサポー
トするために、クラスタ内のシステムバス上のスロット
に拡張記憶装置アダプタ(EMA)が接続される。
【0015】前記拡張記憶装置アダプタ(EMA)に
は、前記拡張記憶装置のうち使用可能なアドレスを保持
するEMUアドレス検出手段を含み、前記システムバス
と接続されるシステムバスインタフェース手段と、前記
システムバスインタフェース手段および前記拡張記憶装
置とデータの授受を行うキャッシュ手段と、前記キャッ
シュ手段の制御を行うキャッシュ制御手段とを含むデー
タ中継手段と、前記キャッシュ制御手段に接続され、前
記キャッシュ制御手段からEMUへのアクセス指示を受
け、前記EMUへのアクセス指示を前記拡張記憶装置へ
送出する(EMUへの)転送機能手段と、前記(EMU
への)転送機能手段からの指示により前記拡張記憶装置
へのアクセスが行われた時のステータス情報を保持する
ステータスレジスタ手段と、を含んでいる。
【0016】さらに、前記疎結合データ処理システム立
ち上げ時、前記拡張記憶装置へのアクセス要求を前記
(EMUへの)転送機能手段へ送出し、前記拡張記憶装
置へのアクセス要求に対するステータス情報を前記ステ
ータスレジスタ手段から受け取り、前記ステータス情報
を送出するEMU診断手段と、前記EMU診断手段より
前記ステータス情報を受け取り、前記ステータス情報が
正常の場合には、前記正常にアクセスが行われたことを
示しているステータス情報に対応する拡張記憶装置アク
セスアドレスの登録を前記EMUアドレス検出手段へ指
示し、また、前記ステータス情報が異常の場合には、前
記異常があったことを示しているステータス情報に対応
する拡張記憶装置アドレスに対し、前記主記憶内の構成
テーブルのエントリを、使用不可を意味するデータへ変
更するよう指示する論理的接続指示手段と、を含んでい
る。
【0017】
【作用】通常のUNIXサーバでディスク共有型の(S
hared−disk方式の)クラスタを構成し、EM
Uを共有メモリとして接続する疎結合システムにおい
て、本発明の拡張記憶装置アダプタ(EMA)が、前記
クラスタ内のシステムバスに接続されている。
【0018】システムバス上のスロットには、あらかじ
めメモリマッピングされたアドレスが定義されており、
前記メモリマッピングされたアドレスにより、主記憶ア
ドレス,mappedI/Oアドレスに区別される。主
記憶アドレスのスロットには、主記憶と拡張記憶装置ア
ダプタ(EMA)が接続される。一方、mappedI
/Oアドレスのスロットには、I/Oバスのブリッジカ
ードが接続される。従って、CPUからのEMUへのア
クセスは主記憶アクセスと同様に処理される。
【0019】従来の主記憶→EMUへの転送処理のう
ち、EMUへのライト処理に関し、拡張記憶装置アダプ
タ(EMA)の動作について説明する。STORE命令
が実行されるCPUは、CPU内の汎用レジスタの内容
を転送データとし、EMUへのライトアドレス、およ
び、ライトリクエストコマンドを、システムバス上に両
者を送出する。一方、拡張記憶装置アダプタ(EMA)
内のシステムバスインタフェース手段は、該システムバ
スインタフェース手段内のEMUアドレス検出手段を使
用して、常時、システムバスに対し、EMUアドレスを
スヌープしている。システムバスインタフェース手段
は、EMUへのライトアドレスを検出すると、ただち
に、対応するアドレス,リクエストコード(この場合
は、ライトリクエスト)、および、データを取り込む。
続いて、システムバスインタフェース手段は、前記取り
込んだアドレスと該リクエストコードをデータ中継手段
内のキャッシュ制御手段へ送出し、前記取り込んだデー
タは、データ中継手段内のキャッシュ手段へ送出する。
【0020】リクエストコードがライトリクエストであ
るので、キャッシュ制御手段は、アドレスとリクエスト
コマンドをそのまま(EMUへの)転送機能手段へ送出
する。(EMUへの)転送機能手段は、キャッシュ制御
手段から送付されたライトリクエストのリクエストコー
ドに従い、EMUへの書き込み動作をEMUに対して指
示する。EMUへの書き込み指示は、アドレス線を使用
して行われる。
【0021】EMUへの書き込みが成功した場合、成功
のリプライを示すビットに対し0がステータスレジスタ
手段へセットされる。
【0022】一方、EMUへの書き込みが失敗した場
合、すなわち、EMUへの書き込み動作中に何らかのエ
ラーが発生した場合、エラーを示すステータス情報がス
テータスレジスタへセットされる。
【0023】次に、従来のEMU→主記憶への転送処理
のうち、EMUへのリード処理に関し、拡張記憶装置ア
ダプタ(EMA)の動作について説明する。LOAD命
令が実行されるCPUは、CPU内の汎用レジスタへE
MUからのリードデータを格納するため、EMUへのリ
ードアドレス、および、リードリクエストコマンドを、
システムバス上に送出する。拡張記憶装置アダプタ(E
MA)内のシステムバスインタフェース手段は、該シス
テムバスインタフェース手段内のEMUアドレス検出手
段を使用して、常時、EMUアドレスをスヌープしてい
る。システムバスインタフェース手段は、EMUへのリ
ードアドレスを検出すると、ただちに、対応するアドレ
ス、および、リクエストコード(この場合は、リードリ
クエスト)を取り込む。続いて、システムバスインタフ
ェース手段は、前記取り込んだアドレス、および、リク
エストコードをデータ中継手段内のキャッシュ制御手段
へ送出する。キャッシュ制御手段は、キャッシュ手段内
に該アドレスに対応するデータが存在するかどうかのチ
ェックを行う。
【0024】もし、キャッシュ手段内に該アドレスに対
応するデータが存在する場合、キャッシュ制御手段は、
キャッシュ手段に対し、該データをシステムバスインタ
フェース手段へ送出するように指示する。
【0025】もし、キャッシュ手段内に該アドレスに対
応するデータが存在しない場合、キャッシュ制御手段
は、(EMUへの)転送機能手段に対し、当該アドレス
と該(リード)リクエストコマンドを送出する。(EM
Uへの)転送機能手段は、キャッシュ制御手段から送付
されたリードリクエストのリクエストコードに従い、E
MUへの読み出し動作をEMUに対し指示する。EMU
への読み出し指示は、アドレス線を使用して行われる。
【0026】EMUからの読み出し動作が成功した場
合、成功のリプライを示すビットに対し、0がステータ
スレジスタ手段へセットされる。また、EMUからのリ
ードデータがデータ中継手段内のキャッシュ手段へ格納
される。続いて、EMUからのリードデータは、キャッ
シュ手段から、セレクタ手段を経て、システムバスイン
タフェース手段へ送出される。システムバスインタフェ
ース手段は、前記EMUからのリードデータの要求元の
CPUに対して、前記EMUからのリードデータを送出
する。
【0027】一方、EMUへの読み出しが失敗した場
合、すなわち、EMUへの読み出し動作中に何らかのエ
ラーが発生した場合、エラーを示すステータス情報がス
テータスレジスタ手段へセットされる。
【0028】以上のようにして、EMUに対するリード
要求とライト要求が実行される。主記憶−EMU間のデ
ータ転送をサブルーチンコールで実行可能となるので、
前記主記憶−EMU間のデータ転送処理のTATを非常
に短くすることができる。
【0029】次に、システム立ち上げ時における拡張記
憶装置アダプタ(EMA)の動作について説明する。シ
ステム立ち上げの起動は、まず、オペレータがサービス
プロセッサをアクセスすることにより行われる。続い
て、サービスプロセッサが拡張記憶装置アダプタ(EM
A)での初期化動作の起動を行う。
【0030】EMU診断手段は、EMUアドレスに対
し、ある一定のアドレス間隔毎に(たとえば、1ワード
アドレス毎、1024ワード毎、実装単位毎、など)、
リード要求を送出し、EMU上でのリード動作の正常ま
たは異常終了の情報を得る。異常終了通知を受け取った
場合には、EMU診断手段は、該リードアドレスに対す
るEMUのメモリに障害があるか、または、実装されて
いない、という判断を下す。
【0031】サービスプロセッサが、拡張記憶装置アダ
プタ(EMA)内のEMU診断手段へ初期化要求を行う
と、EMU診断手段での初期化処理が実行される。ま
ず、EMU診断手段は、EMUに対するリード要求に対
するアドレス、すなわち、EMU上のメモリの開始アド
レスを設定する。次に、EMU診断手段は、リードリク
エストコードとリードアドレスを(EMUへの)転送機
能手段へ送出する。(EMUへの)転送機能手段は、E
MUに対し、該EMU診断手段から受け取ったリードリ
クエストコードとリードアドレスを送出する。EMUに
対するリード動作の正常または異常の結果がステータス
レジスタ手段へ格納される。EMU診断手段は、ステー
タスレジスタ手段に格納されたステータス情報、すなわ
ち、リード動作の正常または異常終了通知のリードを行
う。その結果を論理的接続指示手段へ送出する。該ステ
ータス情報を受け取った論理的接続指示手段は、初期化
処理を行う。
【0032】EMU診断手段は、EMUに対する次リー
ド要求のためのEMUリードアドレスを設定する。新し
く設定されたアドレスがEMUアドレスの最大値を越え
ていなければ、上記動作を繰り返す。もし、該新しく設
定したアドレスがEMUの最大値を越えていたなら、E
MU診断手段での初期化動作は終了する。
【0033】論理的接続指示手段は、EMU診断手段か
らEMUアドレスと該EMUアドレスに対するステータ
ス情報を受け取る。続いて、該ステータス情報に対する
正常または異常の判定を行う。
【0034】もし、該ステータス情報が正常終了通知を
示している場合、EMUアドレス検出手段へ該正常終了
通知に対するEMUのアドレス登録を指示する。こうす
ることで、システムバスインタフェース手段は、アクセ
ス可能なEMUアドレスの情報を獲得できるようになる
ので、システムバスインタフェース手段は、システムバ
ス上にあるEMUアドレスを検出することが可能とな
る。
【0035】また、該ステータス情報が異常終了通知を
示している場合、主記憶内にある構成テーブルに対し、
異常終了通知を受け取ったアドレスに対応するEMUの
構成単位のビットを0にセットするため、論理的接続指
示手段は、セレクタ手段に対し、論理的接続指示手段か
らの送出データをセレクトするよう指示し、all0デ
ータをセレクタ手段へ送出する。同時に、主記憶内にあ
る構成テーブルに対し、異常終了通知を受け取ったアド
レスに対応するEMUの構成単位のビットを含む主記憶
アドレスに対し、該主記憶アドレスと(ライト)リクエ
ストコードをシステムバスインタフェース手段へ送出す
る。
【0036】こうすることで、主記憶内の構成テーブル
でEMUに対する構成ビットが、EMU使用可または不
可の情報を反映するので、OSは、使用不可能なEMU
のエリアを知ることができる。従って、OSは、使用不
可能なEMUのエリアに対し、不具合なアクセスを行う
ことが回避される。
【0037】もちろん、該ステータス情報が異常終了通
知を示している場合、論理的接続指示手段は、EMUア
ドレス検出手段へ該異常終了通知に対するEMUのアド
レス登録を行われない。
【0038】EMU診断手段からの初期化終了通知を受
け取るまで、論理的接続指示手段は、上記動作を繰り返
す。また、EMU診断手段からの初期化終了通知を受け
取ると、論理的接続指示手段は、セレクタ手段に対し、
論理的接続指示手段からの送出データのセレクト指示を
解除する。そして、論理的接続指示手段での初期化処理
が終了する。
【0039】上述のような拡張記憶装置アダプタ(EM
A)に対する初期化処理が行われることにより、主記憶
内の構成テーブルのEMU構成ビットがアクセス可能な
EMUエリアの反映、および、システムバスインタフェ
ース手段内のEMUアドレス検出手段に対しアクセス可
能なEMUアドレスの登録を実現できる。
【0040】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照して説明する。図1は以下の実施の形態が適用さ
れる疎結合のデータ処理システムのブロック図である。
前記疎結合のデータ処理システムは、クラスタ1、2、
非共有ディスク3、4、共有ディスク5、および、EM
U6から構成されている。クラスタ1、2内には、それ
ぞれ、システムバス13、14とサービスプロセッサ1
1、12が含まれており、システムバス13、14に
は、CPU7、8、主記憶9、10、I/Oバス15、
16、および、拡張記憶装置アダプタ(EMA)21、
22が接続されている。I/Oバス15、16のスロッ
トに接続されているI/Oカード17、18は、非共有
ディスク3、4と接続されている。また、I/Oバス1
5、16のスロットに接続されているI/Oカード1
9、20は、共有ディスク5と接続されている。一方、
拡張記憶装置アダプタ(EMA)21、22は、EMU
6に接続されており、クラスタ1、2とEMU6との間
でデータ転送を可能にしている。図面上では、クラスタ
は2台しか表示されていないが、2台以上増加させるこ
とも可能である。またクラスタ内部のCPU、主記憶、
I/Oバスも1個しか表示されていないがシステムバス
のスロット数の許す範囲内で、増加可能である。
【0041】次に、図2を使用して本発明の最も特徴的
である拡張記憶装置アダプタ(EMA)21、22の構
成について説明する。拡張記憶装置アダプタ(EMA)
21、22は、EMUアドレス検出手段31、該EMU
アドレス検出手段31を含むシステムバスインタフェー
ス手段32、キャッシュ手段33、キャッシュ制御手段
34、該キャッシュ手段33および該キャッシュ制御手
段34を含むデータ中継手段35、(EMUへの)転送
機能手段36、ステータスレジスタ手段37、論理的接
続指示手段38、EMU診断手段39、および、セレク
タ手段40とから構成される。拡張記憶装置アダプタ
(EMA)は、システムバス、EMU、サービスプロセ
ッサと外部接続されている。
【0042】システムバスインタフェース手段32は、
システムバスと拡張記憶装置アダプタ(EMA)を接続
している。また、拡張記憶装置アダプタ(EMA)内で
は、データ中継手段35、論理的接続指示手段38、お
よび、セレクタ手段40と接続されている。また、シス
テムバスインタフェース手段32は、内部にEMUアド
レス検出手段31を有している。EMUアドレス検出手
段31は、拡張記憶装置アダプタ(EMA)を介して接
続されているEMUアドレスを保持している。システム
バスインタフェース手段32は、EMUアドレス検出手
段31に格納されているEMUアドレスを使用して、シ
ステムバス上EMUアドレスが存在するかどうか、シス
テムバスを常時スヌープしている。システムバスインタ
フェース手段32は、EMUアドレス検出手段31に設
定されたアドレスを検出すると、システムバスから前記
EMUアドレスに対応するリクエストコード部,アドレ
ス部、および、データ部とを取り込む。リクエストコー
ド部およびアドレス部は、リクエストコード線51、ア
ドレス線52をそれぞれ介して、データ中継手段35内
のキャッシュ制御手段34へ送出される。また、データ
部は、データ線53を介してデータ中継手段35内のキ
ャッシュ手段33へ送出される。
【0043】データ中継手段35は、データ線を介して
EMUと拡張記憶装置アダプタ(EMA)とを接続し、
また、拡張記憶装置アダプタ(EMA)内では、システ
ムバスインタフェース手段32、セレクタ手段40、お
よび、(EMUへの)転送機能手段36と接続されてい
る。データ中継手段35は、キャッシュ制御手段34と
キャッシュ手段33とを有している。キャッシュ手段3
3は、ストアスルー型のキャッシュである。キャッシュ
手段33は、EMU→システムバスのデータ転送の場合
には、セレクタ手段40を経由して、EMUからの転送
データをシステムバスインタフェース手段32へ送出す
る。また、システムバス→EMUのデータ転送の場合に
は、システムバスインタフェース手段32から直接、E
MUへの転送データを受け取る。一方、キャッシュ制御
手段34は、キャッシュ手段33に対する制御を行う。
制御データは、システムバスインタフェース手段32か
ら送られるリクエストコード部とアドレス部である。さ
らに、キャッシュ制御手段34は、キャッシュ手段33
とEMUとの間でデータ転送の指示を行うため、該リク
エストコード部とアドレス部を(EMUへの)転送機能
手段36へ送出する。
【0044】(EMUへの)転送機能手段36は、リク
エストコード線54とアドレス線55を介してEMUと
拡張記憶装置アダプタ(EMA)とを接続し、また、拡
張記憶装置アダプタ(EMA)内では、データ中継手段
35内のキャッシュ制御手段34、および、EMU診断
手段39と接続されている。(EMUへの)転送機能手
段36は、キャッシュ制御手段34からリクエストコー
ドとEMUアドレスを受け取り、EMUへ送出する。ま
た、EMU診断手段39からもEMUに対する診断のア
ドレスとリクエストコード(リード:EMU→キャッシ
ュ手段)を受け取り、EMUへ送出する。
【0045】ステータスレジスタ手段37は、データ線
57を介してEMUと拡張記憶装置アダプタ(EMA)
とを接続し、また、拡張記憶装置アダプタ(EMA)内
では、EMU診断手段39と接続されている。ステータ
スレジスタ手段37は、EMUへのアクセスが行われる
時、および、EMU診断手段39から(EMUへの)転
送機能手段36へ、EMUに対する診断が要求される
時、EMUアクセス時のエラー情報データがセットされ
る。ステータスレジスタ手段37は、EMUに対してリ
ード要求またはライト要求を行った時、EMU上で何ら
かのエラーが発生した場合、エラーの表示を行う。ステ
ータスレジスタ手段37のフォーマットは、図8で示さ
れる。
【0046】EMU診断手段39は、診断線58を介し
てサービスプロセッサと接続されている。拡張記憶装置
アダプタ(EMA)内では、ステータスレジスタ手段3
7,(EMUへの)転送機能手段36、および、論理的
接続指示手段38と接続されている。EMU診断手段3
9は、システム立ち上げ時、サービスプロセッサから診
断要求を受ける。サービスプロセッサから診断要求を受
けると、EMUに対して診断リクエストを(EMUへ
の)転送機能手段36へ送出する。一方、EMUアクセ
スでエラーが発生した場合、ステータスレジスタ手段3
7にエラー情報データがセットされるので、該エラー情
報データをステータスレジスタ手段37から受け取る。
ステータスレジスタ手段37からエラー情報データを受
け取った場合、エラーの発生したEMUの部分へのアク
セス不可を通知する目的で、論理的接続指示手段38へ
エラー情報データを送出する。
【0047】論理的接続指示手段38は、拡張記憶装置
アダプタ(EMA)内で、システムバスインタフェース
手段32内のEMUアドレス検出手段31、EMU診断
手段39、および、セレクタ手段40と接続される。論
理的接続指示手段38は、EMU診断手段39からエラ
ーの発生したEMUのアドレスを受け取る。そして、E
MUアドレス検出手段31へ該エラーの発生したEMU
アドレスを送出する。さらに、論理的接続指示手段38
が異常を示すステータス情報をEMU診断手段39から
受け取った時には、セレクタ手段40を通して、主記憶
内の構成テーブルを更新するため、主記憶へのデータ転
送指示を行う。
【0048】セレクタ手段40は、システムバスインタ
フェース手段32、データ中継手段35内のキャッシュ
手段33、および、論理的接続指示手段38と接続され
ている。セレクタ手段40は、キャッシュ手段33→シ
ステムバスのデータ転送と、論理的接続指示手段38→
システムバスのデータ転送との選択動作が行われる。セ
レクト信号は、論理的接続指示手段38が異常を示すス
テータス情報をEMU診断手段39から受け取った時に
はONとなり、論理的接続指示手段38→システムバス
のデータ転送が選択される。
【0049】図4は、本発明の実施の形態におけるクラ
スタ内での主記憶上の構成テーブルを表示している。こ
の構成テーブルは各クラスタの主記憶内に必ず格納され
ている。
【0050】構成テーブル内のCPU−0,CPU−
1,…,CPU−nに対応する0/1の表示は、CPU
−0、CPU−1、…、CPU−nがシステムバスに接
続され、OSが使用可能かどうかを表示している。CP
U−0、CPU−1、…、CPU−nに対応するビット
が0の場合、OSは前記ビットが0に対応するCPUに
対してアクセスを行わない。一方、CPU−0、CPU
−1、…、CPU−nに対応するビットが1の場合、O
Sは、前記ビットが1に対応するCPUに対してアクセ
スを行う。
【0051】同様に、構成テーブル内のI/O−0、I
/O−1、…、I/O−nに対応する0/1の表示は、
I/Oバス0、I/Oバス1、…、I/Oバスnがシス
テムバスに接続され、OSが使用可能かどうかを表示し
ている。I/O−0、I/O−1、…、I/O−nに対
応するビットが0の場合、OSは前記ビットが0に対応
するI/Oバスに対してアクセスを行わない。一方、I
/O−0、I/O−1、…、I/O−nに対応するビッ
トが1の場合、OSは、前記ビットが1に対応するI/
Oバスに対してアクセスを行う。
【0052】同様に、構成テーブル内のMU−0、MU
−1、…、MU−nに対応する0/1の表示は、MU−
0、MU−1、…,MU−n(MUは主記憶の構成単
位)がシステムバスに接続され、OSが使用可能かどう
かを表示している。MU−0、MU−1、…,MU−n
に対応するビットが0の場合、OSは前記ビットが0に
対応するMUに対してアクセスを行わない。一方、MU
−0、MU−1、…,MU−nに対応するビットが1の
場合、OSは、前記ビットが1に対応するMUに対して
アクセスを行う。
【0053】同様に、構成テーブル内のEU−0、EU
−1、…、EU−nに対応する0/1の表示は、EU−
0、EU−1、…,EU−n(EUはEMUの構成単
位)がシステムバスに接続され、OSが使用可能かどう
かを表示している。EU−0、EU−1、…,EU−n
に対応するビットが0の場合、OSは前記ビットが0に
対応するEUに対してアクセスを行わない。一方、EU
−0、EU−1、…,EU−nに対応するビットが1の
場合、OSは、前記ビットが1に対応するEUに対して
アクセスを行う。
【0054】図5は、本発明の実施の形態におけるクラ
スタ内のメモリマッピングの様子を示している。メモリ
マッピングは、主記憶アドレスエリアとmappedI
/Oアドレスエリアとに分けられる。通常、主記憶アド
レスエリアのアドレスは、主記憶上の実アドレスに対応
する。一方、mappedI/Oアドレスエリアは、I
/Oバス上のスロット、または、システムバス上のCP
Uスロットのアドレスに対応する。
【0055】本発明では、EMUに対するアドレスを主
記憶アドレスエリアの一部に取り込むことを行ってい
る。その結果、EMUへのアクセスも主記憶アドレスと
同様にして行うことが可能となるので、TATの短いE
MUとのデータ転送処理のサポートが可能となる。
【0056】本発明の一実施の形態における動作の様子
を説明する。本発明の一実施の形態は、図1で示すよう
に、共有ディスク5、および、EMU6により、クラス
タ1、2間でデータ共有を可能とする疎結合システムで
ある。
【0057】CPU、主記憶、I/Oを含むクラスタ上
で走行するOSが前記共有メモリ(EMU)をアクセス
するためには、EMUに対するOSからのアクセスアド
レスの設定が必要となる。EMUアドレスの設定に関し
ては、図5のメモリマッピングからわかる通り、主記憶
アドレスエリアに設定するか、または、I/Oアドレス
エリアに設定するかのどちらかである。EMU(EM
A)アドレスをI/Oアドレスエリアに設定するやり方
に関する発明は、従来技術として、特開平6−2509
15号公報や特開平1−99141号公報で紹介されて
いる。拡張記憶装置アダプタ(EMA)がI/Oアドレ
スエリアに設定される場合は、I/Oアクセスになるの
で、ソフトウェアによるI/Oの発行、プロセスの切替
え、I/O終了処理、等のためのオーバヘッドが発生す
る。その結果、EMUに対するデータ転送処理のTAT
が非常に長くなる。
【0058】そこで、本発明では、EMU(EMA)ア
ドレスを主記憶エリアに設定することにより、EMU
(EMA)アドレスをI/Oアドレスエリアに設定した
場合のソフトウェアオーバヘッドを削減し、結果的に
は、EMUへのデータ転送処理のTATを短くすること
を実現している。
【0059】また、EMU(EMA)アドレスを主記憶
アドレスエリアに設定することにより、アプリケーショ
ンプログラムからでも簡単にEMUアクセスを可能とし
ている。
【0060】EMUは、元々外部記憶装置であるので、
データ転送は、主記憶−EMU間で行われる。この転送
動作の実現方法について、図3のフローチャートを使用
して説明する。EMUへのアクセスの方法は、図3のフ
ローチャートで示される通り、主記憶へのアクセス用の
リード命令,ライト命令が使用される。
【0061】まず、主記憶→EMUへのデータ転送の場
合について説明する。ソフトウェアプログラムが、主記
憶→EMUへのデータ転送を行う場合、主記憶→EMU
のデータ転送実行のためのソフトウェア処理をサブルー
チンコールする(ステップ1)。前記サブルーチンコー
ルが起動されると、1ワードずつ転送が開始されること
になる。ステップ2の実行により、LOAD命令が実行
され、M−adrで指定される主記憶上の1ワードが取
り出され、CPU内の汎用レジスタであるAレジスタへ
ロードされる。ステップ3の実行により、STORE命
令が実行され、前記Aレジスタへロードされた1ワード
がアドレスE−adrで指定されるEMUへ書き込まれ
る。ステップ4の実行により、主記憶に対する次リード
アドレス、および、EMUに対する次ライトアドレスが
準備(インクリメント)される。ステップ5の実行によ
り、転送サイズがデクリメントされる。ステップ6の実
行により、転送サイズの残りが0になっていないかどう
かがチェックされる。転送サイズの残りが0になってい
ないのなら、ステップ2へ制御が戻される。転送サイズ
の残りが0になったなら、前記サブルーチン処理は終了
し、主記憶→EMUのデータ転送実行のためのソフトウ
ェアサブルーチンコールを行ったソフトウェアへ復帰さ
れる(ステップ7)。
【0062】次に、EMU→主記憶へのデータ転送の場
合について説明する。ソフトウェアプログラムが、EM
U→主記憶へのデータ転送を行う場合、EMU→主記憶
のデータ転送実行のためのソフトウェア処理をサブルー
チンコールする(ステップ11)。前記サブルーチンコ
ールが起動されると、1ワードずつ転送が開始されるこ
とになる。ステップ12の実行により、LOAD命令が
実行され、E−adrで指定されるEMU上の1ワード
が取り出され、CPU内の汎用レジスタであるAレジス
タへロードされる。ステップ13の実行により、STO
RE命令が実行され、前記Aレジスタへロードされた1
ワードがアドレスM−adrで指定される主記憶へ書き
込まれる。ステップ14の実行により、主記憶に対する
次リードアドレス、および、EMUに対する次ライトア
ドレスが準備(インクリメント)される。ステップ15
の実行により、転送サイズがデクリメントされる。ステ
ップ16の実行により、転送サイズの残りが0になって
いないかどうかがチェックされる。転送サイズの残りが
0になっていないのなら、ステップ12へ制御が戻され
る。転送サイズの残りが0になったなら、前記サブルー
チン処理は終了し、EMU→主記憶のデータ転送実行の
ためのソフトウェアサブルーチンコールを行ったソフト
ウェアへ復帰される(ステップ17)。
【0063】以上のようにして、主記憶−EMU間のデ
ータ転送が主記憶−主記憶間のデータ転送と同じように
して実行可能である。
【0064】上記実行ステップ1〜7,11〜17の中
で、ステップ3およびステップ12が本発明の最も特徴
的である拡張記憶装置アダプタ(EMA)の動作が含ま
れる。ステップ3とステップ12の動作について、図2
を使用して、さらに詳しく説明を行う。
【0065】まず、ステップ3での拡張記憶装置アダプ
タ(EMA)の動作について説明する。STORE E
−adr A命令が実行されるCPUは、CPU内の汎
用レジスタであるAレジスタの内容を転送データとし、
EMUへのライトアドレスとなるE−adr、および、
ライトリクエストコマンドを、システムバス上に両者を
送出する。一方、拡張記憶装置アダプタ(EMA)内の
システムバスインタフェース手段32は、該システムバ
スインタフェース手段32内のEMUアドレス検出手段
31を使用して、常時、システムバスに対し、EMUア
ドレスをスヌープしている。システムバスインタフェー
ス手段32は、EMUへのライトアドレスであるE−a
drを検出すると、ただちに、E−adrに対応するア
ドレス、リクエストコード(この場合は、ライトリクエ
スト)、および、データを取り込む。続いて、システム
バスインタフェース手段32は、前記取り込んだアドレ
スと該リクエストコードをデータ中継手段35内のキャ
ッシュ制御手段34へ送出し、前記取り込んだデータ
は、データ中継手段35内のキャッシュ手段33へ送出
する。
【0066】リクエストコードがライトリクエストであ
るので、キャッシュ制御手段34は、アドレスとリクエ
ストコマンドをそのまま(EMUへの)転送機能手段3
6へ送出する。(EMUへの)転送機能手段36は、キ
ャッシュ制御手段34から送付されたライトリクエスト
のリクエストコードに従い、EMUへの書き込み動作を
EMUに対して指示する。EMUへの書き込み指示は、
アドレス線を使用して行われる。
【0067】一方、EMUへの書き込みが失敗した場
合、すなわち、EMUへの書き込み動作中に何らかのエ
ラーが発生した場合、エラー情報がステータスレジスタ
手段37へセットされる。
【0068】次に、ステップ12での拡張記憶装置アダ
プタ(EMA)の動作について説明する。LOAD E
−adr A命令が実行されるCPUは、CPU内の汎
用レジスタであるAレジスタへEMUからのリードデー
タを格納するため、EMUへのリードアドレスとなるE
−adr、および、リードリクエストコマンドを、シス
テムバス上に送出する。拡張記憶装置アダプタ(EM
A)内のシステムバスインタフェース手段32は、該シ
ステムバスインタフェース手段32内のEMUアドレス
検出手段31を使用して、常時、EMUアドレスをスヌ
ープしている。システムバスインタフェース手段32
は、EMUへのリードアドレスであるE−adrを検出
すると、ただちに、E−adrに対応するアドレス、お
よび、リクエストコード(この場合はリードリクエス
ト)を取り込む。続いて、システムバスインタフェース
手段32は、前記取り込んだアドレス、および、リクエ
ストコードをデータ中継手段35内のキャッシュ制御手
段34へ送出する。キャッシュ制御手段34は、キャッ
シュ手段33内に該アドレスに対応するデータが存在す
るかどうかのチェックを行う。
【0069】もし、キャッシュ手段33内に該アドレス
に対応するデータが存在する場合、キャッシュ制御手段
34は、キャッシュ手段33に対し、該データをシステ
ムバスインタフェース手段32へ送出するように指示す
る。
【0070】もし、キャッシュ手段33内に該アドレス
に対応するデータが存在しない場合、キャッシュ制御手
段34は、(EMUへの)転送機能手段36に対し、該
アドレスと該(リード)リクエストコマンドを送出す
る。(EMUへの)転送機能手段36は、キャッシュ制
御手段34から送付されたリードリクエストのリクエス
トコードに従い、EMUへの読み出し動作をEMUに対
して指示する。EMUへの読み出し指示は、アドレス線
を使用して行われる。
【0071】また、EMUからのリードデータがデータ
中継手段35内のキャッシュ手段33へ格納される。続
いて、EMUからのリードデータは、キャッシュ手段3
3から、セレクタ手段40を経て、システムバスインタ
フェース手段32へ送出される。システムバスインタフ
ェース手段32は、前記EMUからのリードデータの要
求元のCPUに対して、前記EMUからのリードデータ
を送出する。
【0072】一方、EMUへの読み出しが失敗した場
合、すなわち、EMUへの読み出し動作中に何らかのエ
ラーが発生した場合、エラー情報がステータスレジスタ
手段37へセットされる。(ステータスレジスタ手段3
7へエラー情報がセットされる場合の説明については、
後述する。)
【0073】以上のようにして、EMUに対するリード
要求とライト要求が実行される。図3のフローチャート
で示すとおり、主記憶−EMU間のデータ転送がサブル
ーチンコールで実行可能となるので、前記主記憶−EM
U間のデータ転送処理のTATを非常に短くすることが
できる。
【0074】次に、システム立ち上げ時における拡張記
憶装置アダプタ(EMA)の動作について説明する。シ
ステム立ち上げの起動は、まず、オペレータがサービス
プロセッサをアクセスすることにより行われる。続い
て、サービスプロセッサが拡張記憶装置アダプタ(EM
A)での初期化動作の起動を行う。
【0075】EMU診断手段39は、EMUアドレスに
対し、或る一定のアドレス間隔毎に(たとえば、1ワー
ドアドレス毎,1024ワード毎,実装単位毎、な
ど)、リード要求を送出し、EMU上でのリード動作の
正常または異常終了の情報を得る。異常終了通知を受け
取った場合には、EMU診断手段39は、該リードアド
レスに対するEMUのメモリに障害があるか、または、
実装されていない、という判断を下す。
【0076】EMU診断手段39での拡張記憶装置アダ
プタ(EMA)に対する初期化処理は、図6のフローチ
ャートで示される。サービスプロセッサが、拡張記憶装
置アダプタ(EMA)内のEMU診断手段39へ初期化
要求を行うと、図6で示される初期化処理フローに従
い、EMU診断手段39での初期化処理が実行される。
まず、EMU診断手段39は、EMUに対するリード要
求に対するアドレス、すなわち、EMU上のメモリの開
始アドレスを設定する(ステップ21)。次に、ステッ
プ22の実行により、EMU診断手段39は、リードリ
クエストコードとリードアドレスを(EMUへの)転送
機能手段36へ送出する。(EMUへの)転送機能手段
36は、EMUに対し、EMU診断手段39から受け取
ったリードリクエストコードとリードアドレスを送出す
る。EMUに対するリード動作の正常または異常の結果
がステータスレジスタ手段37へ格納される(ステップ
23)。EMU診断手段39は、ステップ24の実行に
より、ステータスレジスタ手段37に格納されたステー
タス情報、すなわち、リード動作の正常または異常終了
通知のリードを行う。その結果を論理的接続指示手段3
8へ送出する(ステップ25)。該ステータス情報を受
け取った論理的接続指示手段38は、後述の通り、図7
で示される処理フローに従い、初期化処理を行う。
【0077】EMU診断手段39は、次にステップ26
の実行を行い、EMUに対する次リード要求のためのE
MUリードアドレスを設定する。新しく設定されたアド
レスがEMUアドレスの最大値を超えていなければ、ス
テップ22〜26の実行を繰り返す。若し、該新しく設
定したアドレスがEMUの最大値を越えていたなら、E
MU診断手段39での初期化動作は終了する。
【0078】論理的接続指示手段38での拡張記憶装置
アダプタ(EMA)に対する初期化処理は、図7のフロ
ーチャートで示される。サービスプロセッサが、拡張記
憶装置アダプタ(EMA)内のEMU診断手段39へ初
期化要求を行い、続いて、EMU診断手段39が論理的
接続指示手段38へ初期化要求を行うと、図7で示され
る初期化処理フローに従い、論理的接続指示手段38で
の処理が実行される。
【0079】論理的接続指示手段38は、EMU診断手
段39からEMUアドレスと該EMUアドレスに対する
ステータス情報を受け取る(ステップ31)。続いて、
ステップ32の実行により、該ステータス情報に対する
正常または異常の判定を行う。
【0080】もし、該ステータス情報が正常終了通知を
示している場合、ステップ34の実行により、EMUア
ドレス検出手段31へ該正常終了通知に対するEMUの
アドレス登録を指示する。こうすることで、システムバ
スインタフェース手段32は、アクセス可能なEMUア
ドレスの情報を獲得できるようになるので、システムバ
スインタフェース手段32は、システムバス上にあるE
MUアドレスを検出することが可能となる。
【0081】また、該ステータス情報が異常終了通知を
示している場合、図4で示される主記憶内にある構成テ
ーブルに対し、異常終了通知を受け取ったアドレスに対
応するEMUの構成単位のビットを0にセットするた
め、ステップ35の実行により、論理的接続指示手段3
8は、セレクタ手段40に対し、論理的接続指示手段3
8からの送出データをセレクトするよう指示し、all
0データをセレクタ手段40へ送出する。同時に、主記
憶内にある構成テーブルに対し、異常終了通知を受け取
ったアドレスに対応するEMUの構成単位のビットを含
む主記憶アドレスに対し、該主記憶アドレスと(ライ
ト)リクエストコードをシステムバスインタフェース手
段32へ送出する。
【0082】こうすることで、主記憶内の構成テーブル
でEMUに対する構成ビットが、EMU使用可または不
可の情報を反映するので、OSは、使用不可能なEMU
のエリアを知ることができる。従って、OSは、使用不
可能なEMUのエリアに対し、不具合なアクセスを行う
ことが回避される。
【0083】もちろん、該ステータス情報が異常終了通
知を示している場合、論理的接続指示手段38は、EM
Uアドレス検出手段31へ該異常終了通知に対するEM
Uのアドレス登録は行わない。
【0084】EMU診断手段39からの初期化終了通知
を受け取るまで、論理的接続指示手段38は、ステップ
31〜35の実行を繰り返す。また、EMU診断手段3
9からの初期化終了通知を受け取ると、論理的接続指示
手段38は、ステップ37の実行へ移行する(ステップ
36)。ステップ37の実行により、論理的接続指示手
段38は、セレクタ手段40に対し、論理的接続指示手
段38からの送出データのセレクト指示を解除する。ス
テップ37の実行が終了すると、論理的接続指示手段3
8での初期化処理が終了する。
【0085】上述のような拡張記憶装置アダプタ(EM
A)に対する初期化処理が行われることにより、主記憶
内の構成テーブルのEMU構成ビットがアクセス可能な
EMUエリアの反映、および、システムバスインタフェ
ース手段32内のEMUアドレス検出手段31に対しア
クセス可能なEMUアドレスの登録、を実現できる。前
者は、OSがアクセス可能なEMUエリアを知るのに役
立ち、また、後者は、OSの不正動作によるアクセス不
可能なEMUエリアへのアクセスを回避するのに役立
つ。(アクセス不可能なEMUエリアへのアクセスが行
われると、システムはハングアップ状態になる。)
【0086】次に、ステータスレジスタ手段37で格納
されるステータス情報について説明する。該ステータス
情報は、図8で示される。
【0087】図8で示される通り、ステータスレジスタ
手段37は、正常/異常通知フィールド101,EMU
アクセスアドレスフィールド102,EU障害表示フィ
ールド103,全EU障害表示フィールド104,EM
Uポート制御部障害表示フィールド105、および、E
MU共通制御部障害表示フィールド106とからなるス
テータス情報を保持する。
【0088】正常/異常通知フィールド101は、1ビ
ット(または1バイト)で構成されており、正常/異常
通知フィールド101=1のとき、EMUアクセスで何
らかの障害が発生したことを示す。また、正常/異常通
知フィールド101=0のとき、EMUアクセスでは障
害が発生せずに正常にリードまたはライト動作が実現で
きたことを示す。
【0089】EMUアクセスアドレスフィールド102
は、正常/異常通知フィールド101=1、すなわち、
障害が発生した時の、EMUアクセスのEMUアクセス
アドレスを示す。
【0090】EU障害表示フィールド103は、EU障
害表示フィールド103=1のとき、正常/異常通知フ
ィールド101=1、すなわち、障害が発生した時の、
EMUのメモリ上の障害がEMUの構成単位のひとつで
あるEUの範囲内に閉じていることを示す。
【0091】全EU障害表示フィールド104は、全E
U障害表示フィールド104=1のとき、正常/異常通
知フィールド101=1、すなわち、障害が発生した時
の、EMUのメモリ上の障害がEMUの構成単位のひと
つであるEUの範囲内を越えて複数のEMUにまたがる
障害であることを示す。
【0092】EMUポート制御部障害表示フィールド1
05は、EMUポート制御部障害表示フィールド105
=1のとき、正常/異常通知フィールド101=1、す
なわち、障害が発生した時の、障害がクラスタとEMU
を接続するEMU側の接続部分で発生したことを示す。
【0093】EMU共通制御部障害表示フィールド10
6は、EMU共通制御部障害表示フィールド106=1
のとき、正常/異常通知フィールド101=1、すなわ
ち、障害が発生した時の、障害がEMU全体の制御にか
かる部分で発生したことを示す。
【0094】上述のようなステータス情報が、ステータ
スレジスタ手段37に格納される。
【0095】次に、通常運用時、EMUへのアクセスが
なされ、ステータスレジスタ手段37に対し異常通知が
なされた場合、ステータスレジスタ手段37は、EMU
診断手段39へEMUアクセスでの異常があったことを
報告する。また、ステータスレジスタ手段37は、異常
通知を含むステータス情報をEMU診断手段39へ送出
する。オペレータは、サービスプロセッサをアクセスす
ることにより、EMUで異常が発生した部位(EMUア
クセスアドレスを含む)を知ることができる。
【0096】また、EMU診断手段39は、論理的接続
指示手段38へステータス情報を通知する。論理的接続
指示手段38は、EMUアドレス検出手段31に対し、
異常が発生したEMUアドレスの登録を削除するよう指
示する。該削除指示を受け取ったEMUアドレス検出手
段31は、異常が発生したEMUアドレスに対するエン
トリをクリアする。(その結果、システムバスに対しリ
プライが返却されないので、システムバスがハングアッ
プ状態になり、クラスタ自体は、タイムアウトにより再
立ち上げが行われる。クラスタの再立ち上げ処理時、論
理的接続指示手段38は、システム立ち上げ時同様、該
主記憶内の構成テーブルに対して、異常通知を発生した
EMUエリアの使用不可を反映するよう、更新要求を送
出する。)
【0097】最後に、EMU−共有ディスク間でのデー
タ転送について補足する。従来、EMU−共有ディスク
間でのデータ転送では、EMU−主記憶−共有ディスク
間での2ステップによる転送が行われていたが、EMU
をシステムバスに直結することにより、EMU−共有デ
ィスク間での直接転送が可能となる。すなわち、EMU
−共有ディスク間でのデータ転送は、主記憶−外部装置
でのデータ転送同様の制御(いわゆる入出力(I/O)
制御)となる。この場合の転送は、共有ディスクがI/
Oアドレス空間に接続されているので、I/O処理とな
り、アプリケーションプログラム、OSカーネル、I/
Oドライバ、間でのプロセスの切り替えは必要となる。
図3の処理フローで示されるデータ転送のためのサブル
ーチンは、I/Oドライバの中で呼び出される。但し、
主記憶を示すM−adrは、共有ディスクを接続してい
るI/O制御カードで定義されているアドレスと解釈さ
れる。
【0098】
【発明の効果】
【0099】第1の効果は、通常のUNIXサーバでデ
ィスク共有型の(Shared−disk方式の)クラ
スタを構成し、共有ディスクの他にも、EMUを共有メ
モリとして接続するような疎結合システムにおいて、ク
ラスタとEMU間で同期転送が実現でき、EMUに対す
るデータ転送処理のTATを(I/OアクセスによるE
MU−クラスタ間のデータ転送の場合より)短くできる
ことである。
【0100】その理由は、EMUが外部記憶装置である
にもかかわらず、EMUとクラスタを接続する本発明の
拡張記憶装置アダプタ(EMA)をクラスタ内のシステ
ムバスに接続し、かつ、メモリマッピング上、EMUを
主記憶アドレスエリアに設定することにより、ソフトウ
ェアからは、EMUを主記憶の一部としているためであ
る。
【0101】第2の効果は、通常のUNIXサーバでデ
ィスク共有型の(Shared−disk方式の)クラ
スタを構成し、EMUを共有メモリとして接続するよう
な疎結合システムにおいて、拡張記憶装置アダプタ(E
MA)をクラスタ内のシステムバスに直結する場合、E
MUが主記憶として扱われるに伴い、EMUは、主記憶
同様、EMUの構成情報が主記憶の構成情報に組み込ま
れ、その結果、EMUの構成情報(EMUにどれくらい
のメモリ容量が実装され、かつ、使用可能なエリアはど
れくらいかを示す情報)がOSに伝えられることであ
る。
【0102】その理由は、システム立ち上げ時、EMU
に対する診断を行い、その診断結果に基づき、主記憶内
の構成テーブルのEMU対応ビットを更新すること、お
よび、システム立ち上げ後のEMUアクセスにおいて障
害が検出れた場合、障害が検出されたEMUの構成部品
を主記憶内のEMU対応ビットに反映させる手段を設け
たためである。
【0103】第3の効果は、通常のUNIXサーバでデ
ィスク共有型の(Shared−disk方式の)クラ
スタを構成し、EMUを共有メモリとして接続するよう
な疎結合システムにおいて、拡張記憶装置アダプタ(E
MA)をクラスタ内のシステムバスに直結する場合、E
MUが主記憶として扱われるに伴い、EMUを共有ディ
スクに対する主記憶内のスワップ対象エリア、すなわ
ち、EMUを共有ディスクに対するバッファキャッシュ
として使用でき、しかも、従来、共有ディスク−主記憶
−EMU間の2ステップによる転送処理がEMU−共有
ディスク間での直接転送が可能となる。
【0104】その理由は、EMUが外部記憶装置である
にもかかわらず、EMUとクラスタを接続する本発明の
拡張記憶装置アダプタ(EMA)をクラスタ内のシステ
ムバスに接続し、かつ、メモリマッピング上、EMUを
主記憶アドレスエリアに設定することにより、ソフトウ
ェアからは、EMUを主記憶の一部としているためであ
る。
【図面の簡単な説明】
【図1】本発明の実施の形態が適用される疎結合データ
処理システムのブロック図である。
【図2】本発明における拡張記憶装置アダプタ(EM
A)のブロック図である。
【図3】本発明でのEMUアクセスのSW処理フローチ
ャートである。
【図4】本発明における主記憶内構成テーブルの一例を
示す図である。
【図5】本発明におけるメモリマッピングを示す図であ
る。
【図6】EMU診断手段での初期化動作フローチャート
である。
【図7】論理的接続指示手段での初期化動作フローチャ
ートである。
【図8】ステータスレジスタ手段のフォーマットの一例
を示す図である。
【符号の説明】
1 クラスタ 2 クラスタ 3 非共有ディスク 4 非共有ディスク 5 共有ディスク 6 拡張記憶装置(EMU) 7 CPU 8 CPU 9 主記憶 10 主記憶 11 サービスプロセッサ 12 サービスプロセッサ 13 システムバス 14 システムバス 15 I/Oバス 16 I/Oバス 17 I/O制御カード 18 I/O制御カード 19 I/O制御カード 20 I/O制御カード 21 拡張記憶装置アダプタ(EMA) 22 拡張記憶装置アダプタ(EMA) 31 EMUアドレス検出手段 32 システムバスインタフェース手段 33 キャッシュ手段 34 キャッシュ制御手段 35 データ中継手段 36 (EMUへの)転送機能手段 37 ステータスレジスタ手段 38 論理的接続指示手段 39 EMU診断手段 40 セレクタ手段 51 リクエストコード線 52 アドレス線 53 データ線 54 リクエストコード線 55 アドレス線 56 データ線 57 データ線 101 正常/異常通知フィールド 102 EMUアクセスアドレスフィールド 103 EU障害表示フィールド 104 全EU障害表示フィールド 105 EMUポート制御部障害表示フィールド 106 EMU共通制御部障害表示フィールド

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 複数のCPUと、主記憶と、前記複数の
    CPUと前記主記憶とを接続するシステムバスと、サー
    ビスプロセッサとを含むクラスタと、前記クラスタを複
    数有し、前記複数のクラスタからそれぞれ接続される拡
    張記憶装置とを含み、オペレーティングシステム(O
    S)によって前記CPU,前記主記憶,前記拡張記憶装
    置の接続情報として使用される構成テーブルが、システ
    ム立上げ時に前記サービスプロセッサによって前記主記
    憶上に作成されるような疎結合データ処理システムにお
    いて、 前記システムバスおよび前記拡張記憶装置に接続され、 前記拡張記憶装置のうち使用可能なアドレスを保持する
    EMUアドレス検出手段を含み、前記システムバスと接
    続されるシステムバスインタフェース手段と、 前記システムバスインタフェース手段および前記拡張記
    憶装置とデータの授受を行うキャッシュ手段と、前記キ
    ャッシュ手段の制御を行うキャッシュ制御手段とを含む
    データ中継手段と、 前記キャッシュ制御手段に接続され、前記キャッシュ制
    御手段からEMUへのアクセス指示を受け、前記EMU
    へのアクセス指示を前記拡張記憶装置へ送出する(EM
    Uへの)転送機能手段と、 前記(EMUへの)転送機能手段からの指示により前記
    拡張記憶装置へのアクセスが行われた時のステータス情
    報を保持するステータスレジスタ手段と、を含み、 前記疎結合データ処理システム立上げ時、前記拡張記憶
    装置へのアクセス要求を前記(EMUへの)転送機能手
    段へ送出し、前記拡張記憶装置へのアクセス要求に対す
    るステータス情報を前記ステータスレジスタ手段から受
    け取り、前記ステータス情報を送出するEMU診断手段
    と、 前記EMU診断手段より前記ステータス情報を受け取
    り、前記ステータス情報が正常の場合には、前記正常に
    アクセスが行われたことを示しているステータス情報に
    対応する拡張記憶装置アクセスアドレスの登録を前記E
    MUアドレス検出手段へ指示し、また、前記ステータス
    情報が異常の場合には、前記異常があったことを示して
    いるステータス情報に対応する拡張記憶装置アドレスに
    対し、前記主記憶内の構成テーブルのエントリを、使用
    不可を意味するデータへ変更するよう指示する論理的接
    続指示手段と、を含む拡張記憶装置アダプタ(EMA)
    を有することを特徴とするクラスタ間共有メモリアクセ
    ス方式。
  2. 【請求項2】 前記主記憶から前記拡張記憶装置へデー
    タを転送する場合、前記主記憶上のデータをロード命令
    によってリードし且つ該リードしたデータをストア命令
    によって前記拡張記憶装置にライトする処理を行うサブ
    ルーチンを実行する構成を有することを特徴とする請求
    項1記載のクラスタ間共有メモリアクセス方式。
  3. 【請求項3】 前記拡張記憶装置から前記主記憶へデー
    タを転送する場合、前記拡張記憶装置上のデータをロー
    ド命令によってリードし且つ該リードしたデータをスト
    ア命令によって前記主記憶上にライトする処理を行うサ
    ブルーチンを実行する構成を有することを特徴とする請
    求項1または2記載のクラスタ間共有メモリアクセス方
    式。
JP8305827A 1996-10-31 1996-10-31 クラスタ間共有メモリアクセス方式 Expired - Fee Related JP3052857B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP8305827A JP3052857B2 (ja) 1996-10-31 1996-10-31 クラスタ間共有メモリアクセス方式
US08/962,335 US6032234A (en) 1996-10-31 1997-10-31 Clustered multiprocessor system having main memory mapping shared expansion memory addresses and their accessibility states

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8305827A JP3052857B2 (ja) 1996-10-31 1996-10-31 クラスタ間共有メモリアクセス方式

Publications (2)

Publication Number Publication Date
JPH10133938A true JPH10133938A (ja) 1998-05-22
JP3052857B2 JP3052857B2 (ja) 2000-06-19

Family

ID=17949857

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8305827A Expired - Fee Related JP3052857B2 (ja) 1996-10-31 1996-10-31 クラスタ間共有メモリアクセス方式

Country Status (2)

Country Link
US (1) US6032234A (ja)
JP (1) JP3052857B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6683938B1 (en) 2001-08-30 2004-01-27 At&T Corp. Method and system for transmitting background audio during a telephone call

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3922859B2 (ja) * 1999-12-28 2007-05-30 株式会社リコー 画像処理装置、画像処理方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
US6687782B1 (en) * 2000-04-25 2004-02-03 Snap-On Technologies, Inc. Method and implementation for addressing and accessing an expanded read only memory (ROM)
US6757767B1 (en) * 2000-05-31 2004-06-29 Advanced Digital Information Corporation Method for acceleration of storage devices by returning slightly early write status
US6785765B1 (en) * 2000-06-30 2004-08-31 Micron Technology, Inc. Status register to improve initialization of a synchronous memory
JP4097883B2 (ja) * 2000-07-04 2008-06-11 松下電器産業株式会社 データ転送装置および方法
US20110060859A1 (en) * 2008-04-21 2011-03-10 Rishabhkumar Shukla Host-to-host software-based virtual system
US20110047313A1 (en) * 2008-10-23 2011-02-24 Joseph Hui Memory area network for extended computer systems
US9047057B2 (en) * 2012-11-16 2015-06-02 International Business Machines Corporation Accessing additional memory space with multiple processors
CN111666231B (zh) * 2019-03-05 2023-02-10 佛山市顺德区顺达电脑厂有限公司 于丛集式系统中维持存储器共享方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR119649A (ja) * 1975-03-24
US4280176A (en) * 1978-12-26 1981-07-21 International Business Machines Corporation Memory configuration, address interleaving, relocation and access control system
US4430727A (en) * 1981-11-10 1984-02-07 International Business Machines Corp. Storage element reconfiguration
US4980850A (en) * 1987-05-14 1990-12-25 Digital Equipment Corporation Automatic sizing memory system with multiplexed configuration signals at memory modules
FR2643993B1 (fr) * 1989-03-03 1991-05-17 Bull Sa Procede pour remplacer des modules memoire dans un systeme informatique et systeme informatique pour la mise en oeuvre du procede
US5485590A (en) * 1990-01-08 1996-01-16 Allen-Bradley Company, Inc. Programmable controller communication interface module which is configurable by a removable memory cartridge
EP0532643B1 (en) * 1990-06-04 1998-12-23 3Com Corporation Method for optimizing software for any one of a plurality of variant architectures
JPH06250915A (ja) * 1993-02-22 1994-09-09 Fujitsu Ltd 拡張記憶制御方式
JPH06348584A (ja) * 1993-06-01 1994-12-22 Internatl Business Mach Corp <Ibm> データ処理システム
US5577221A (en) * 1994-04-14 1996-11-19 Industrial Technology Research Institute Method and device for expanding ROM capacity

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6683938B1 (en) 2001-08-30 2004-01-27 At&T Corp. Method and system for transmitting background audio during a telephone call

Also Published As

Publication number Publication date
JP3052857B2 (ja) 2000-06-19
US6032234A (en) 2000-02-29

Similar Documents

Publication Publication Date Title
US5911084A (en) System and method for accessing peripheral devices on a non-functional controller
KR970001919B1 (ko) 다수의 버스간의 정보 전송 시스템 및 방법
EP0283628B1 (en) Bus interface circuit for digital data processor
JP2514208B2 (ja) ホットスタンドバイメモリ−コピ−方式
US6453391B2 (en) Multiplexed computer system
JP3447404B2 (ja) マルチプロセッサシステム
EP0397476B1 (en) Error logging data storing system
US5682551A (en) System for checking the acceptance of I/O request to an interface using software visible instruction which provides a status signal and performs operations in response thereto
US20090249331A1 (en) Apparatus, system, and method for file system sharing
JP3807250B2 (ja) クラスタシステム、コンピュータ及びプログラム
JP2980632B2 (ja) データ処理システム内のメモリモジュールの交換方法と該方法を実施するためのデータ処理システム
JP2996440B2 (ja) データ処理システムの診断方式
EP1701267B1 (en) Address snoop method and multi-processor system
JP3052857B2 (ja) クラスタ間共有メモリアクセス方式
US5923857A (en) Method and apparatus for ordering writeback data transfers on a bus
JP3080552B2 (ja) 複合計算機システムのメモリ装置
AU606083B2 (en) Interface between processor and special instruction processor in digital data processing system
JP2813182B2 (ja) マルチプロセッサコンピュータ複合装置
JP3348420B2 (ja) メモリーコピー機能を備えた情報処理装置
JP3161319B2 (ja) マルチプロセッサシステム
JP3141948B2 (ja) 計算機システム
JP3862777B2 (ja) 二重化データ一致化方法および二重化制御装置
JP2906197B2 (ja) 二重化バス装置
JP2896206B2 (ja) 多重化メモリ装置のオンライン診断方式
JPH1185673A (ja) 共有バスの制御方法とその装置

Legal Events

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