(57)【要約】【課題】  自系のメモリ装置内のデータと他系のメモリ装置内のデータとの相違の詳細（差分）を生成する。【解決手段】  主記憶制御部１０２は、プロセッサ１０１からの共有アドレスを伴う差分要求により、主記憶部１０３から読み出しデータを読み出す。共有メモリ通信制御部１０４は、系間通信手段３００を介して主記憶読み出し要求を情報処理装置２００へ出力する。情報処理装置２００では、主記憶読み出し要求により、主記憶部２０３から主記憶制御部２０２共有メモリ通信制御部２０４、を通じて読み出しデータを読み出し情報処理装置１００へ出力する。主記憶制御部１０２は、共有メモリ通信制御部１０４を通じて読み出しデータを入力し主記憶部１０３からの読み出しデータとの差分を生成し、プロセッサ１０１に出力する。【選択図】      図１
2006235955.tif 000002
【特許請求の範囲】
【請求項１】
１以上の自系プロセッサから、記憶装置アドレス、および、差分要求を入力し、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力し、自系の前記記憶装置から読み出しデータを入力し、他系に読み出し要求、および、記憶装置アドレスを出力し、他系からの読み出しデータを入力し、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力することを特徴とする共有データ処理回路。
【請求項２】
１以上の自系プロセッサからの差分要求、および、記憶装置アドレス格納するプロセッサ要求バッファと、
差分要求を読み出し要求として出力する制御回路と、
制御回路からの読み出し要求、前記プロセッサ要求バッファからの記憶装置アドレスを格納する他系要求送信バッファと、
前記他系要求送信バッファからの読み出し要求、記憶装置アドレスを他系に出力し、他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を入力する通信制御回路と、
前記通信制御回路より他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を格納する他系要求受信バッファと、
前記プロセッサ要求バッファからの差分要求、および、記憶装置アドレスと前記他系要求受信バッファからの読み出し要求、および、記憶装置アドレスとを選択し自系の前記記憶装置に出力する選択回路と、
自系の前記記憶装置からの読み出しデータを入力する読み出しバッファと、
前記他系要求受信バッファより他系からの読み出しデータを入力し、前記読み出しバッファより自系の前記記憶装置からの読み出しデータを入力し、他系からの読み出しデータと自系の前記記憶装置からの読み出しデータとの差分を生成する差分生成回路と、
前記差分生成回路から差分を入力し、前記自系のプロセッサに出力するプロセッサ応答バッファと、
を有することを特徴とする共有データ処理回路。
【請求項３】
差分要求、および、記憶装置アドレスを出力する１以上の自系プロセッサと、１以上の自系プロセッサから、記憶装置アドレス、および、差分要求を入力し、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力し、自系の前記記憶装置から読み出しデータを入力し、他系に読み出し要求、および、記憶装置アドレスを出力し、他系からの読み出しデータを入力し、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する共有データ処理回路とを有することを特徴とする情報処理装置。
【請求項４】
差分要求、および、記憶装置アドレスを出力する１以上の自系プロセッサと、
差分要求を読み出し要求として出力する制御回路と、
制御回路からの読み出し要求、前記プロセッサ要求バッファからの記憶装置アドレスを格納する他系要求送信バッファと、
前記他系要求送信バッファからの読み出し要求、記憶装置アドレスを他系に出力し、他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を入力する通信制御回路と、
前記通信制御回路より他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を格納する他系要求受信バッファと、
前記プロセッサ要求バッファからの差分要求、および、記憶装置アドレスと前記他系要求受信バッファからの読み出し要求、および、記憶装置アドレスとを選択し自系の前記記憶装置に出力する選択回路と、
自系の前記記憶装置からの読み出しデータを入力する読み出しバッファと、
前記他系要求受信バッファより他系からの読み出しデータを入力し、前記読み出しバッファより自系の前記記憶装置からの読み出しデータを入力し、他系からの読み出しデータと自系の前記記憶装置からの読み出しデータとの差分を生成する差分生成回路と、
前記差分生成回路から差分を入力し、前記自系のプロセッサに出力するプロセッサ応答バッファとを備える共有データ処理回路と、
を有することを特徴とする情報処理装置。
【請求項５】
前記共有データ処理回路からの差分要求、および、記憶装置アドレスにしたがって読み出しデータを読み出し、共有データ処理回路より他系からの読み出し要求、および、記憶装置アドレスにしたがって読み出しデータを読み出す自系の前記記憶装置を有することを特徴とする請求項３記載の情報処理装置。
【請求項６】
前記共有データ処理回路からの差分要求、および、記憶装置アドレスにしたがって読み出しデータを読み出し、共有データ処理回路より他系からの読み出し要求、および、記憶装置アドレスにしたがって読み出しデータを読み出す自系の前記記憶装置を有することを特徴とする請求項４記載の情報処理装置。
【請求項７】
請求項５記載の複数の前記情報処理装置と、前記情報処理装置間を接続し、読み出し要求、および、読み出しデータを転送する系間通信手段とを有することを特徴とする情報処理システム。
【請求項８】
請求項６記載の複数の前記情報処理装置と、前記情報処理装置間を接続し、書き込み要求、および、読み出しデータを転送する系間通信手段とを有することを特徴とする情報処理システム。
【請求項９】
１以上の自系プロセッサから、記憶装置アドレス、差分要求、および、他系を特定する転送先情報を入力し、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力し、自系の前記記憶装置から読み出しデータを入力し、転送先情報で指定された他系に読み出し要求、および、記憶装置アドレスを出力し、他系からの読み出しデータを入力し、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力することを特徴とする共有データ処理回路。
【請求項１０】
１以上の自系プロセッサから、差分要求、および、記憶装置アドレスを入力し、自系の前記記憶装置に差分要求、記憶装置アドレスを出力し、自系の前記記憶装置から読み出しデータを入力し、接続された全他系に読み出し要求、記憶装置アドレスを出力し、他系からの読み出しデータを入力し、自系の前記記憶装置からの読み出しデータと全他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力することを特徴とする共有データ処理回路。
【請求項１１】
１以上の自系プロセッサから、記憶装置アドレス、および、差分要求を入力する手順と、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力する手順と、自系の前記記憶装置から読み出しデータを入力する手順と、他系に読み出し要求、および、記憶装置アドレスを出力する手順と、他系からの読み出しデータを入力する手順と、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する手順とを含むことを特徴とする共有データ処理方法。
【請求項１２】
プロセッサ要求バッファが、１以上の自系プロセッサからの差分要求、および、記憶装置アドレス格納する手順と、
制御回路が、差分要求を読み出し要求として出力する手順と、
他系要求送信バッファが、制御回路からの読み出し要求、前記プロセッサ要求バッファからの記憶装置アドレスを格納する手順と、
通信制御回路が、前記他系要求送信バッファからの読み出し要求、記憶装置アドレスを他系に出力する手順と、前記通信制御回路が、他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を入力する手順と、
他系要求受信バッファが、前記通信制御回路より他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を格納する手順と、
選択回路が、前記プロセッサ要求バッファからの差分要求、および、記憶装置アドレスと前記他系要求受信バッファからの読み出し要求、および、記憶装置アドレスとを選択し自系の前記記憶装置に出力する手順と、
読み出しバッファが、自系の前記記憶装置からの読み出しデータを入力する手順と、
差分生成回路が、前記他系要求受信バッファより他系からの読み出しデータを入力し、前記読み出しバッファより自系の前記記憶装置からの読み出しデータを入力し、他系からの読み出しデータと自系の前記記憶装置からの読み出しデータとの差分を生成する手順と、
プロセッサ応答バッファが、前記差分生成回路から差分を入力し、前記自系のプロセッサに出力する手順と、
を含むことを特徴とする共有データ処理方法。
【請求項１３】
１以上の自系プロセッサから、記憶装置アドレス、差分要求、および、他系を特定する転送先情報を入力する手順と、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力する手順と、自系の前記記憶装置から読み出しデータを入力する手順と、転送先情報で指定された他系に読み出し要求、および、記憶装置アドレスを出力する手順と、他系からの読み出しデータを入力し、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する手順とを含むことを特徴とする共有データ処理方法。
【請求項１４】
１以上の自系プロセッサから、差分要求、および、記憶装置アドレスを入力する手順と、自系の前記記憶装置に差分要求、記憶装置アドレスを出力する手順と、自系の前記記憶装置から読み出しデータを入力する手順と、接続された全他系に読み出し要求、記憶装置アドレスを出力する手順と、他系からの読み出しデータを入力する手順と、自系の前記記憶装置からの読み出しデータと全他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する手順とを含むことを特徴とする共有データ処理方法。
【請求項１５】
１以上の自系プロセッサから、記憶装置アドレス、および、差分要求を入力する手順と、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力する手順と、自系の前記記憶装置から読み出しデータを入力する手順と、他系に読み出し要求、および、記憶装置アドレスを出力する手順と、他系からの読み出しデータを入力する手順と、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する手順とをコンピュータに実行させることを特徴とする共有データ処理プログラム。
【請求項１６】
プロセッサ要求バッファに、１以上の自系プロセッサからの差分要求、および、記憶装置アドレス格納する手順を実行させ、
制御回路に、差分要求を読み出し要求として出力する手順を実行させ、
他系要求送信バッファに、制御回路からの読み出し要求、前記プロセッサ要求バッファからの記憶装置アドレスを格納する手順を実行させ、
通信制御回路に、前記他系要求送信バッファからの読み出し要求、記憶装置アドレスを他系に出力する手順と、前記通信制御回路に、他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を入力する手順を実行させ、
他系要求受信バッファに、前記通信制御回路より他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を格納する手順を実行させ、
選択回路に、前記プロセッサ要求バッファからの差分要求、および、記憶装置アドレスと前記他系要求受信バッファからの読み出し要求、および、記憶装置アドレスとを選択し自系の前記記憶装置に出力する手順を実行させ、
読み出しバッファに、自系の前記記憶装置からの読み出しデータを入力する手順を実行させ、
差分生成回路に、前記他系要求受信バッファより他系からの読み出しデータを入力し、前記読み出しバッファより自系の前記記憶装置からの読み出しデータを入力し、他系からの読み出しデータと自系の前記記憶装置からの読み出しデータとの差分を生成する手順を実行させ、
プロセッサ応答バッファに、前記差分生成回路から差分を入力し、前記自系のプロセッサに出力する手順を実行させることを特徴とする共有データ処理プログラム。
【請求項１７】
１以上の自系プロセッサから、記憶装置アドレス、差分要求、および、他系を特定する転送先情報を入力する手順と、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力する手順と、自系の前記記憶装置から読み出しデータを入力する手順と、転送先情報で指定された他系に読み出し要求、および、記憶装置アドレスを出力する手順と、他系からの読み出しデータを入力し、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する手順とをコンピュータに実行させることを特徴とする共有データ処理プログラム。
【請求項１８】
１以上の自系プロセッサから、差分要求、および、記憶装置アドレスを入力する手順と、自系の前記記憶装置に差分要求、記憶装置アドレスを出力する手順と、自系の前記記憶装置から読み出しデータを入力する手順と、接続された全他系に読み出し要求、記憶装置アドレスを出力する手順と、他系からの読み出しデータを入力する手順と、自系の前記記憶装置からの読み出しデータと全他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する手順とをコンピュータに実行させることを特徴とする共有データ処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、共有データ処理回路、情報処理装置、情報処理システム、共有データ処理方法、共有データ処理プログラムに関し、特に、共有データの差分の生成を効率化した共有データ処理回路、情報処理装置、情報処理システム、共有データ処理方法、共有データ処理プログラムに関する。
【背景技術】
【０００２】
従来の二重可データ処理装置における自系のメモリ装置内のデータと他系のメモリ装置内のデータの同期の技術に関して、特許文献１に開示されている。この技術は、同期モード時に、中央処理装置からのリード要求により、自系のメモリ装置からの読み出しデータと、他系のメモリ装置からの読み出しデータとを比較するものである。
【０００３】
【特許文献１】特開昭６２−１４０１５３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記特許文献１記載の発明の問題点は、自系のメモリ装置内のデータと他系のメモリ装置内のデータとの相違の詳細がわからないことである。
【０００５】
その理由は、自系のメモリ装置内のデータと他系のメモリ装置内のデータとの比較は実施するが、差分を生成しないからである。
【０００６】
本発明の目的は、上記問題点を解決し、自系のメモリ装置内のデータと他系のメモリ装置内のデータとの相違の詳細（差分）を生成する共有データ処理回路、情報処理装置、情報処理システム、共有データ処理方法、共有データ処理プログラムを提供することである。
【課題を解決するための手段】
【０００７】
本発明の第１の共有データ処理回路は、１以上の自系プロセッサから、記憶装置アドレス、および、差分要求を入力し、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力し、自系の前記記憶装置から読み出しデータを入力し、他系に読み出し要求、および、記憶装置アドレスを出力し、他系からの読み出しデータを入力し、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力することを特徴とする。
【０００８】
本発明の第２の共有データ処理回路は、１以上の自系プロセッサからの差分要求、および、記憶装置アドレス格納するプロセッサ要求バッファと、差分要求を読み出し要求として出力する制御回路と、制御回路からの読み出し要求、前記プロセッサ要求バッファからの記憶装置アドレスを格納する他系要求送信バッファと、前記他系要求送信バッファからの読み出し要求、記憶装置アドレスを他系に出力し、他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を入力する通信制御回路と、前記通信制御回路より他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を格納する他系要求受信バッファと、前記プロセッサ要求バッファからの差分要求、および、記憶装置アドレスと前記他系要求受信バッファからの読み出し要求、および、記憶装置アドレスとを選択し自系の前記記憶装置に出力する選択回路と、自系の前記記憶装置からの読み出しデータを入力する読み出しバッファと、前記他系要求受信バッファより他系からの読み出しデータを入力し、前記読み出しバッファより自系の前記記憶装置からの読み出しデータを入力し、他系からの読み出しデータと自系の前記記憶装置からの読み出しデータとの差分を生成する差分生成回路と、前記差分生成回路から差分を入力し、前記自系のプロセッサに出力するプロセッサ応答バッファと、を有することを特徴とする。
【０００９】
本発明の第１の情報処理装置は、差分要求、および、記憶装置アドレスを出力する１以上の自系プロセッサと、１以上の自系プロセッサから、記憶装置アドレス、および、差分要求を入力し、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力し、自系の前記記憶装置から読み出しデータを入力し、他系に読み出し要求、および、記憶装置アドレスを出力し、他系からの読み出しデータを入力し、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する共有データ処理回路とを有することを特徴とする。
【００１０】
本発明の第２の情報処理装置は、差分要求、および、記憶装置アドレスを出力する１以上の自系プロセッサと、差分要求を読み出し要求として出力する制御回路と、制御回路からの読み出し要求、前記プロセッサ要求バッファからの記憶装置アドレスを格納する他系要求送信バッファと、前記他系要求送信バッファからの読み出し要求、記憶装置アドレスを他系に出力し、他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を入力する通信制御回路と、前記通信制御回路より他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を格納する他系要求受信バッファと、前記プロセッサ要求バッファからの差分要求、および、記憶装置アドレスと前記他系要求受信バッファからの読み出し要求、および、記憶装置アドレスとを選択し自系の前記記憶装置に出力する選択回路と、自系の前記記憶装置からの読み出しデータを入力する読み出しバッファと、前記他系要求受信バッファより他系からの読み出しデータを入力し、前記読み出しバッファより自系の前記記憶装置からの読み出しデータを入力し、他系からの読み出しデータと自系の前記記憶装置からの読み出しデータとの差分を生成する差分生成回路と、前記差分生成回路から差分を入力し、前記自系のプロセッサに出力するプロセッサ応答バッファとを備える共有データ処理回路と、を有することを特徴とする。
【００１１】
本発明の第３の情報処理装置は、前記第１の情報処理装置であって、前記共有データ処理回路からの差分要求、および、記憶装置アドレスにしたがって読み出しデータを読み出し、共有データ処理回路より他系からの読み出し要求、および、記憶装置アドレスにしたがって読み出しデータを読み出す自系の前記記憶装置を有することを特徴とする。
【００１２】
本発明の第４の情報処理装置は、前記第２の情報処理装置であって、前記共有データ処理回路からの差分要求、および、記憶装置アドレスにしたがって読み出しデータを読み出し、共有データ処理回路より他系からの読み出し要求、および、記憶装置アドレスにしたがって読み出しデータを読み出す自系の前記記憶装置を有することを特徴とする。
【００１３】
本発明の第１の情報処理システムは、複数の前記第３の情報処理装置と、前記情報処理装置間を接続し、読み出し要求、および、読み出しデータを転送する系間通信手段とを有することを特徴とする。
【００１４】
本発明の第２の情報処理システムは、複数の前記第４の情報処理装置と、前記情報処理装置間を接続し、書き込み要求、および、読み出しデータを転送する系間通信手段とを有することを特徴とする。
【００１５】
本発明の第３の共有データ処理回路は、１以上の自系プロセッサから、記憶装置アドレス、差分要求、および、他系を特定する転送先情報を入力し、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力し、自系の前記記憶装置から読み出しデータを入力し、転送先情報で指定された他系に読み出し要求、および、記憶装置アドレスを出力し、他系からの読み出しデータを入力し、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力することを特徴とする。
【００１６】
本発明の第４の共有データ処理回路は、１以上の自系プロセッサから、差分要求、および、記憶装置アドレスを入力し、自系の前記記憶装置に差分要求、記憶装置アドレスを出力し、自系の前記記憶装置から読み出しデータを入力し、接続された全他系に読み出し要求、記憶装置アドレスを出力し、他系からの読み出しデータを入力し、自系の前記記憶装置からの読み出しデータと全他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力することを特徴とする。
【００１７】
本発明の第１の共有データ処理方法は、１以上の自系プロセッサから、記憶装置アドレス、および、差分要求を入力する手順と、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力する手順と、自系の前記記憶装置から読み出しデータを入力する手順と、他系に読み出し要求、および、記憶装置アドレスを出力する手順と、他系からの読み出しデータを入力する手順と、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する手順とを含むことを特徴とする。
【００１８】
本発明の第２の共有データ処理方法は、プロセッサ要求バッファが、１以上の自系プロセッサからの差分要求、および、記憶装置アドレスを格納する手順と、制御回路が、差分要求を読み出し要求として出力する手順と、他系要求送信バッファが、制御回路からの読み出し要求、前記プロセッサ要求バッファからの記憶装置アドレスを格納する手順と、通信制御回路が、前記他系要求送信バッファからの読み出し要求、記憶装置アドレスを他系に出力する手順と、前記通信制御回路が、他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を入力する手順と、他系要求受信バッファが、前記通信制御回路より他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を格納する手順と、選択回路が、前記プロセッサ要求バッファからの差分要求、および、記憶装置アドレスと前記他系要求受信バッファからの読み出し要求、および、記憶装置アドレスとを選択し自系の前記記憶装置に出力する手順と、読み出しバッファが、自系の前記記憶装置からの読み出しデータを入力する手順と、差分生成回路が、前記他系要求受信バッファより他系からの読み出しデータを入力し、前記読み出しバッファより自系の前記記憶装置からの読み出しデータを入力し、他系からの読み出しデータと自系の前記記憶装置からの読み出しデータとの差分を生成する手順と、プロセッサ応答バッファが、前記差分生成回路から差分を入力し、前記自系のプロセッサに出力する手順と、を含むことを特徴とする。
【００１９】
本発明の第３の共有データ処理方法は、１以上の自系プロセッサから、記憶装置アドレス、差分要求、および、他系を特定する転送先情報を入力する手順と、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力する手順と、自系の前記記憶装置から読み出しデータを入力する手順と、転送先情報で指定された他系に読み出し要求、および、記憶装置アドレスを出力する手順と、他系からの読み出しデータを入力し、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する手順とを含むことを特徴とする。
【００２０】
本発明の第４の共有データ処理方法は、１以上の自系プロセッサから、差分要求、および、記憶装置アドレスを入力する手順と、自系の前記記憶装置に差分要求、記憶装置アドレスを出力する手順と、自系の前記記憶装置から読み出しデータを入力する手順と、接続された全他系に読み出し要求、記憶装置アドレスを出力する手順と、他系からの読み出しデータを入力する手順と、自系の前記記憶装置からの読み出しデータと全他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する手順とを含むことを特徴とする。
【００２１】
本発明の第１の共有データ処理プログラムは、１以上の自系プロセッサから、記憶装置アドレス、および、差分要求を入力する手順と、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力する手順と、自系の前記記憶装置から読み出しデータを入力する手順と、他系に読み出し要求、および、記憶装置アドレスを出力する手順と、他系からの読み出しデータを入力する手順と、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する手順とをコンピュータに実行させることを特徴とする。
【００２２】
本発明の第２の共有データ処理プログラムは、プロセッサ要求バッファに、１以上の自系プロセッサからの差分要求、および、記憶装置アドレス格納する手順を実行させ、制御回路に、差分要求を読み出し要求として出力する手順を実行させ、他系要求送信バッファに、制御回路からの読み出し要求、前記プロセッサ要求バッファからの記憶装置アドレスを格納する手順を実行させ、通信制御回路に、前記他系要求送信バッファからの読み出し要求、記憶装置アドレスを他系に出力する手順と、前記通信制御回路が、他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を入力する手順を実行させ、他系要求受信バッファに、前記通信制御回路より他系からの読み出しデータ、または、「他系からの読み出し要求、および、記憶装置アドレス」を格納する手順を実行させ、選択回路に、前記プロセッサ要求バッファからの差分要求、および、記憶装置アドレスと前記他系要求受信バッファからの読み出し要求、および、記憶装置アドレスとを選択し自系の前記記憶装置に出力する手順を実行させ、読み出しバッファに、自系の前記記憶装置からの読み出しデータを入力する手順を実行させ、差分生成回路に、前記他系要求受信バッファより他系からの読み出しデータを入力し、前記読み出しバッファより自系の前記記憶装置からの読み出しデータを入力し、他系からの読み出しデータと自系の前記記憶装置からの読み出しデータとの差分を生成する手順を実行させ、プロセッサ応答バッファに、前記差分生成回路から差分を入力し、前記自系のプロセッサに出力する手順を実行させることを特徴とする。
【００２３】
本発明の第３の共有データ処理プログラムは、１以上の自系プロセッサから、記憶装置アドレス、差分要求、および、他系を特定する転送先情報を入力する手順と、自系の前記記憶装置に読み出し要求、および、記憶装置アドレスを出力する手順と、自系の前記記憶装置から読み出しデータを入力する手順と、転送先情報で指定された他系に読み出し要求、および、記憶装置アドレスを出力する手順と、他系からの読み出しデータを入力し、自系の前記記憶装置からの読み出しデータと他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する手順とをコンピュータに実行させることを特徴とする。
【００２４】
本発明の第４の共有データ処理プログラムは、１以上の自系プロセッサから、差分要求、および、記憶装置アドレスを入力する手順と、自系の前記記憶装置に差分要求、記憶装置アドレスを出力する手順と、自系の前記記憶装置から読み出しデータを入力する手順と、接続された全他系に読み出し要求、記憶装置アドレスを出力する手順と、他系からの読み出しデータを入力する手順と、自系の前記記憶装置からの読み出しデータと全他系からの読み出しデータとの差分を生成し前記自系プロセッサに出力する手順とをコンピュータに実行させることを特徴とする。
【発明の効果】
【００２５】
本発明の効果は、自系の記憶装置内の共有データと他系の記憶装置内の共有データとの不一致の部分を詳細に効率よく検出できるという効果を持つ。
【００２６】
その理由は、自系の記憶装置内の共有データと他系の記憶装置内の共有データとの差分を生成するからである。
【発明を実施するための最良の形態】
【００２７】
次に、本発明を実施するための第１の最良の形態について図面を参照して詳細に説明する。
【００２８】
図１は、本発明を実施するための第１の最良の形態の構成を示すブロック図である。
【００２９】
図１を参照すると、本発明を実施するための第１の最良の形態は、情報処理装置１００と情報処理装置２００と、系間通信手段３００とから構成される。
【００３０】
情報処理装置１００（たとえば、コンピュータ）は、プロセッサ１０１、主記憶制御部１０２、主記憶部１０３（メモリ等）、および、共有メモリ通信制御部１０４を備える。情報処理装置２００（たとえば、コンピュータ）は、プロセッサ２０１、主記憶制御部２０２、主記憶部２０３、および、共有メモリ通信制御部２０４を備える。情報処理装置１００の共有メモリ通信制御部１０４と、情報処理装置２００の共有メモリ通信制御部２０４とは、系間通信手段３００により接続される。主記憶制御部１０２、および、共有メモリ通信制御部１０４をまとめて共有データ処理回路１０５と呼称する。また、主記憶制御部２０２、および、共有メモリ通信制御部２０４をまとめて共有データ処理回路２０５と呼称する。
【００３１】
次に、自系、他系について説明する。系は、情報処理単位である。情報処理装置１００を自系とすれば、情報処理装置２００は他系である。また、情報処理装置２００を自系とすれば、情報処理装置１００は他系である。したがって、たとえば、主記憶制御部１０２にとって、主記憶部１０３は、自系に存在し、主記憶部２０３は、他系に存在する。
【００３２】
プロセッサ１０１（プロセッサ２０１）は、自系の主記憶部１０３（主記憶部２０３）のみに書き込む非共有データであるのか、および、自系の主記憶部１０３（主記憶部２０３）、および、他系の主記憶部２０３（主記憶部１０３）の両方に書き込む共有データであるのかを指し示す「共有アドレス」を伴う主記憶書き込み要求を出力する。
【００３３】
情報処理装置１００の主記憶制御部１０２は、プロセッサ１０１からの書き込みデータ、「共有アドレス」を伴う主記憶書き込み要求を検出すると、自系の主記憶部１０３へ書き込みデータの書き込みを行うとともに、共有メモリ通信制御部１０４へも主記憶書き込み要求を転送する。共有メモリ通信制御部１０４は、系間通信手段３００を介して主記憶書き込み要求を情報処理装置２００へ出力する。情報処理装置２００では、主記憶書き込み要求により、共有メモリ通信制御部２０４、主記憶制御部２０２を通じて書き込みデータ（主記憶部１０３へ書き込まれた書き込みデータと同一のデータ）が主記憶部２０３へ書き込まれる。
【００３４】
また、情報処理装置２００の主記憶制御部２０２は、プロセッサ２０１からの書き込みデータ、「共有アドレス」を伴う主記憶書き込み要求を検出すると、自系の主記憶部２０３へ書き込みデータの書き込みを行うとともに、共有メモリ通信制御部２０４へも主記憶書き込み要求を転送する。共有メモリ通信制御部２０４は、系間通信手段３００を介して書き込み要求を情報処理装置１００へ出力する。情報処理装置１００では、主記憶書き込み要求により、共有メモリ通信制御部１０４、主記憶制御部１０２を通じて書き込みデータ（主記憶部２０３へ書き込まれた書き込みデータと同一のデータ）が主記憶部１０３へ書き込まれる。
【００３５】
プロセッサ１０１、プロセッサ２０１、主記憶部１０３、主記憶部２０３は、当業者にとってよく知られており、その詳細な構成の説明は省略する。
【００３６】
また、系間通信手段３００は、主記憶書き込み要求を情報処理装置１００・情報処理装置２００間で転送可能であればよい。
【００３７】
また、プロセッサ１０１（プロセッサ２０１）は、自系の主記憶部１０３（主記憶部２０３）、および、他系の主記憶部２０３（主記憶部１０３）の両方に書き込まれた共有データの差分を取り出すための「共有アドレス」を伴う差分要求を出力する。
【００３８】
情報処理装置１００の主記憶制御部１０２は、プロセッサ１０１からの「共有アドレス」を伴う差分要求を検出すると、自系の主記憶部１０３から「共有アドレス」で指定される共有データの読み出しを行うとともに、共有メモリ通信制御部１０４へも「共有アドレス」で指定される共有データを読み出すための主記憶書読み出し要求を転送する。共有メモリ通信制御部１０４は、系間通信手段３００を介して主記憶書読み出し要求を情報処理装置２００へ出力する。情報処理装置２００では、主記憶読み出し要求により、読み出しデータ（「共有アドレス」で指定される共有データ）が主記憶部２０３から主記憶制御部２０２を通じて共有メモリ通信制御部２０４へ読み出される。共有メモリ通信制御部２０４は、読み出しデータを系間通信手段３００を介して読み出しデータを情報処理装置１００へ出力する。情報処理装置１００では、共有メモリ通信制御部１０４を介して主記憶制御部１０２が情報処理装置２００からの読み出しデータ（共有データ）を入力し、情報処理装置２００からの読み出しデータと主記憶部１０３から読み出した読み出しデータ（共有データ）との差分を作成し、プロセッサ１０１に出力する。プロセッサ１０１は、差分を入力する。
【００３９】
また、情報処理装置２００においても、プロセッサ２０１から「共有アドレス」を伴う差分要求に対して、情報処理装置１００と同様の処理が行われる。
【００４０】
図２は、本発明を実施するための第１の最良の形態の主記憶読み出し要求に伴う共有アドレスの一例を示す説明図である。
【００４１】
図２を参照すると、共有アドレスは、共有アドレスフラグ、主記憶物理アドレスを含む。一般のプロセッサは、実際に利用する主記憶空間より多くのアドレスを利用可能であり、上位ビットは使われていないことがある。そこで、アドレスの上位ビットが、共有データに対するアドレスであることを示す共有アドレスフラグとして利用される。たとえば、共有アドレスフラグが“１”であれば、共有データに対するアドレスであり、“０”であれば、共有データに対するアドレスでないことを示す。下位ビットは、主記憶部１０３、主記憶部２０３の物理アドレスである主記憶物理アドレスとなっている。
【００４２】
図２の例では、共有アドレス内の下位ビットを主記憶物理アドレスとして用いているが、主記憶物理アドレスとは他の型式のアドレス（たとえば、主記憶部１０３、主記憶部２０３に対する論理アドレス）としてもよい。この場合は、主記憶制御部１０２、主記憶制御部２０２に、他の型式のアドレスから物理アドレスへの変換手段（たとえば、ＴＬＢ：トランスレーション・ルックアサイド・バッファ）を備え、他の型式のアドレスから物理アドレスへ変換すればよい。
【００４３】
主記憶制御部１０２（主記憶制御部２０２）は、プロセッサ１０１（プロセッサ２０１）からの差分要求に対し共有アドレスフラグを調べても、調べなくてもよい。
【００４４】
次に、本発明を実施するための第１の最良の形態の動作について図面を参照して説明する。
【００４５】
図３、図４は、本発明を実施するための第１の最良の形態の動作を示すタイミングチャートである。
【００４６】
図３、図４は、情報処理装置１００が自系であり、情報処理装置２００が他系である例を示す。
【００４７】
図３を参照すると、まず、情報処理装置１００のプロセッサ１０１が、共有アドレスを伴う差分要求を生成する（図３Ｔ１）。プロセッサ１０１は、共有アドレス（主記憶物理アドレス）を伴う差分要求を主記憶制御部１０２に出力する（Ｔ２）。
【００４８】
主記憶制御部１０２は、差分要求、および、共有アドレスを入力する（Ｔ３）。次に、主記憶制御部１０２は、主記憶物理アドレスを伴う主記憶読み出し要求を主記憶部１０３に対して出力する（Ｔ４）。
【００４９】
主記憶部１０３は、主記憶制御部１０２からの主記憶読み出し要求にしたがい主記憶物理アドレスで指定される位置から読み出しデータ（共有データ）を読み出し（Ｔ５）、主記憶制御部１０２に出力する（Ｔ５−１）。主記憶制御部１０２は、読み出しデータ（共有データ）を入力し内部に保持する（Ｔ５−２）。
【００５０】
また、主記憶制御部１０２は、主記憶物理アドレスを伴う主記憶読み出し要求を共有メモリ通信制御部１０４へ出力する（Ｔ６）。
【００５１】
共有メモリ通信制御部１０４は、主記憶制御部１０２から主記憶物理アドレスを伴う主記憶読み出し要求を入力する（Ｔ７）。次に、共有メモリ通信制御部１０４は、主記憶物理アドレスを伴う主記憶読み出し要求を、他系の情報処理装置２００の共有メモリ通信制御部２０４に転送するために、系間通信手段３００に出力する（Ｔ８）。
【００５２】
系間通信手段３００は、共有メモリ通信制御部１０４からの主記憶物理アドレスを伴う主記憶読み出し要求を共有メモリ通信制御部２０４に転送する（Ｔ９）。
【００５３】
共有メモリ通信制御部２０４は、主記憶物理アドレスを伴う主記憶読み出し要求を入力すると（Ｔ１０）、主記憶物理アドレスを伴う主記憶読み出し要求を主記憶制御部２０２に出力する（Ｔ１１）。
【００５４】
主記憶制御部２０２は、主記憶物理アドレスを伴う主記憶読み出し要求を入力すると（Ｔ１２）、主記憶部２０３に出力する（Ｔ１３）。
【００５５】
主記憶部２０３は、主記憶制御部２０２からの主記憶読み出し要求にしたがい主記憶物理アドレスで指定される位置から読み出しデータ（共有データ）を読み出し（Ｔ１４）、主記憶制御部２０２に出力する（図４Ｔ１５）。主記憶制御部２０２は、主記憶制御部２０２からの読み出しデータを入力し（Ｔ１６）、共有メモリ通信制御部２０４に出力する（Ｔ１７）。
【００５６】
共有メモリ通信制御部２０４は、主記憶制御部２０２から読み出しデータを入力し（Ｔ１８）、読み出しデータを情報処理装置１００に転送するために系間通信手段３００へ出力する（Ｔ１９）。
【００５７】
系間通信手段３００は、共有メモリ通信制御部２０４からの読み出しデータを共有メモリ通信制御部１０４に転送する（Ｔ２０）。共有メモリ通信制御部１０４は、読み出しデータを入力し（Ｔ２１）、主記憶制御部１０２に出力する（Ｔ２２）。
【００５８】
主記憶制御部１０２は、読み出しデータを入力すると（Ｔ２３）、保持しておいた主記憶部１０３からの読み出しデータと共有メモリ通信制御部１０４からの読み出しデータとの差分を生成する（Ｔ２４）。次に、主記憶制御部１０２は、差分をプロセッサ１０１に出力する（Ｔ２５）。次に、プロセッサ１０１は、主記憶制御部１０２からの差分を入力する（Ｔ２６）。
【００５９】
差分は、読み出しデータの差分は、たとえば、ビットごとの一致・不一致を示すデータが可能である。一致するビットは、“１”にし、一致しないビットは、“０”にすることで、差分を表すことができる。
【００６０】
また、ステップＴ４、ステップＴ５、ステップＴ５−１、ステップＴ５−２の処理をＴ２３の後に実施する構成も可能である。
【００６１】
以上は、２台の情報処理装置に関して説明したが、３台以上の情報処理装置にも適用可能である。
【００６２】
また、情報処理装置１００（情報処理装置２００）が１台のプロセッサ１０１（プロセッサ２０１）だけでなく複数台のプロセッサを含む構成が可能である。この場合、複数のプロセッサと主記憶制御部１０２（主記憶制御部２０２）との間は、調停が実施されるバス構成とすることが可能である。
【００６３】
以上のようにして、プロセッサ１０１（プロセッサ２０１）が、主記憶物理アドレスを伴う差分要求を出力することで、自系の主記憶部１０３（主記憶部２０３）、他系の主記憶部２０３（主記憶部１０３）の共有データの共有データの差分が生成できる。したがって、本発明を実施するための第１の最良の形態は、共有データの不一致の部分を詳細に効率よく検出できるという効果を持つ。
【００６４】
次に、本発明を実施するための第１の最良の形態の実施例に関して図面を参照して詳細に説明する。
【００６５】
図５は、図１の主記憶制御部１０２の構成の実施例を示す詳細ブロック図である。
【００６６】
図５を参照すると、主記憶制御部１０２は、プロセッサ要求バッファ４０１と、判定回路４０２と、制御回路４０３と、選択回路４０４と、他系要求送信バッファ４０５と、他系要求受信バッファ４０６と、差分生成回路４０７と、プロセッサ応答バッファ４０８と、読み出しデータバッファ４０９とを含む。上記以外の構成を含むことも可能である。
【００６７】
プロセッサ要求バッファ４０１は、プロセッサ１０１からの各種要求（たとえば、共有アドレスを伴う主記憶読み出し要求、または、または、共有アドレスを伴う差分要求、または、書き込みデータ、共有アドレスを伴う主記憶書き込み要求等）を格納する。選択回路４０４は、プロセッサ要求バッファ４０１からの各種要求、主記憶物理アドレス、および／または、書き込みデータを選択し、主記憶部１０３に出力する。判定回路４０２は、プロセッサ要求バッファ４０１からの共有アドレスフラグが、共有データに対するアドレスを示しているかどうかを判定し、判定結果を制御回路４０３に出力する。
【００６８】
プロセッサ１０１からの要求が、主記憶書き込み要求である場合、判定回路４０２における判定結果が、共有データに対するアドレスを示していると、他系要求送信バッファ４０５は、プロセッサ要求バッファ４０１から書き込みデータ、主記憶物理アドレスを伴う主記憶書き込み要求を格納し、共有メモリ通信制御部１０４に出力する。
【００６９】
また、プロセッサ１０１からの要求が、差分要求である場合、制御回路４０３は、差分要求であることを検出し、プロセッサ要求バッファ４０１からの差分要求を主記憶読み出し要求に変換し、プロセッサ要求バッファ４０１からの主記憶物理アドレスと供に他系要求送信バッファ４０５に出力する。ここで、差分要求を主記憶読み出し要求に変換しないで、そのまま、情報処理装置２００へ転送する方式も可能である。この場合、情報処理装置１００、情報処理装置２００は、差分要求を主記憶読み出し要求と認識する。
【００７０】
あるいは、プロセッサ１０１が、差分要求を含まない各種要求と、差分を示す情報１ビットとを出力し、他系要求送信バッファ４０５は、プロセッサ要求バッファ４０１から差分要求を含まない各種要求を入力し、差分を示す情報１ビットを入力しない方式が可能である。この場合、情報処理装置２００に対しては、差分要求ではなく、主記憶読み出し要求が転送される。
【００７１】
他系要求受信バッファ４０６は、共有メモリ通信制御部１０４からの書き込みデータ、主記憶物理アドレスを伴う主記憶書き込み要求、または、主記憶読み出し要求を選択回路４０４に出力する。あるいは、他系要求受信バッファ４０６は、プロセッサ１０１からの差分要求に対する読み出しデータを差分生成回路４０７に出力する。
【００７２】
選択回路４０４は、他系要求受信バッファ４０６からの主記憶物理アドレス、書き込みデータを選択し、主記憶書き込み要求と供に主記憶部１０３に出力する。あるいは、選択回路４０４は、プロセッサ要求バッファ４０１からの主記憶物理アドレスを選択し、差分要求と供に主記憶部１０３に出力する。あるいは、選択回路４０４は、他系要求受信バッファ４０６からの主記憶物理アドレスを選択し、主記憶読み出し要求（差分要求に基づく）と供に主記憶部１０３に出力する。
【００７３】
読み出しデータバッファ４０９は、主記憶部１０３からの読み出しデータを入力し、差分生成回路４０７（プロセッサ１０１からの読み出し要求、または、差分要求の場合）、または、他系要求送信バッファ４０５（情報処理装置２００からの主記憶読み出し要求の場合）に出力する。
【００７４】
差分生成回路４０７は、プロセッサ１０１からの要求が、主記憶読み出し要求であった場合、読み出しデータバッファ４０９からの読み出しデータをプロセッサ応答バッファ４０８に出力する。また、差分生成回路４０７は、プロセッサ１０１からの要求が、差分要求であった場合、読み出しデータバッファ４０９からの読み出しデータと他系要求受信バッファ４０６からの（元々、情報処理装置２００からの）読み出しデータとの差分を生成しプロセッサ応答バッファ４０８に出力する。
【００７５】
プロセッサ応答バッファ４０８は、差分生成回路４０７から読み出しデータ、または、差分を入力し、プロセッサ１０１に出力する。
【００７６】
制御回路４０３は、プロセッサ要求バッファ４０１からの各種要求、判定回路４０２からの判定結果、および、他系要求受信バッファ４０６からの主記憶書き込み要求、または、主記憶読み出し要求、または、読み出しデータを入力し、プロセッサ要求バッファ４０１、選択回路４０４、他系要求送信バッファ４０５、他系要求受信バッファ４０６、差分生成回路４０７、プロセッサ応答バッファ４０８、読み出しデータバッファ４０９等の制御を行う。
【００７７】
制御回路４０３は、ファームウェアプログラムを格納するコントロールストアと、ファームウェアプログラムをデコードし制御信号を生成するデコーダとを含んで構成することも可能である。
【００７８】
また、共有メモリ通信制御部１０４も、ファームウェア制御の構成とすることが可能である。
【００７９】
次に、プロセッサ１０１、プロセッサ２０１が使用する論理アドレスのアドレスマップの１実施例について図面を参照して説明する。
【００８０】
図６は、本発明を実施するための第１の最良の形態の論理アドレスのアドレスマップの内容を示す説明図である。
【００８１】
図６を参照すると、プロセッサ１０１、プロセッサ２０１が使用する論理アドレスのアドレスマップは、共有領域と非共有領域とに分割される。共有領域は、自系・他系の両方に主記憶書き込みが実施される共有データの領域であり、非共有領域は、自系にのみ主記憶書き込みが実施される非共有データの領域である。プロセッサ１０１、プロセッサ２０１のＴＬＢは、論理アドレスから物理アドレスに変換する場合、入力した論理アドレスが共有領域であれば、共有アドレスフラグに関し、共有データを示す値で、入力した論理アドレスが非共有領域であれば、非共有データを示す値で出力する。
【００８２】
また、前述したように、プロセッサ１０１、プロセッサ２０１が、論理アドレスを出力し、主記憶制御部１０２、主記憶制御部２０２内のＴＬＢが論理アドレスから物理アドレスに変換する構成も可能である。
【００８３】
次に、本発明を実施するための第２の最良の形態について図面を参照して詳細に説明する。
【００８４】
図７は、本発明を実施するための第２の最良の形態の構成を示すブロック図である。
【００８５】
図７を参照すると、本発明を実施するための第２の最良の形態は、Ｎ台の情報処理装置８００、情報処理装置８１０、・・・、情報処理装置８Ｎ０と、系間通信手段５００とから構成される。
【００８６】
情報処理装置８００（情報処理装置８１０、・・・、情報処理装置８Ｎ０）は、プロセッサ８０１（プロセッサ８１１、・・・、プロセッサ８Ｎ１）と、主記憶制御部８０２（主記憶制御部８１２、・・・、主記憶制御部８Ｎ２）と、主記憶部８０３（主記憶部８１３、・・・、主記憶部８Ｎ３）と、共有メモリ通信制御部８０４（共有メモリ通信制御部８１４、・・・、共有メモリ通信制御部８Ｎ４）とを含む。共有メモリ通信制御部８０４、共有メモリ通信制御部８１４、・・・、共有メモリ通信制御部８Ｎ４は、系間通信手段５００により接続される。
【００８７】
本発明を実施するための第２の最良の形態の第１の最良の形態との相違点は、「共有アドレス」に共有データを転送する転送先の情報処理装置８００〜情報処理装置８Ｎ０を指定する情報を含むことである。
【００８８】
図８は、本発明を実施するための第２の最良の形態の主記憶読み出し要求に伴う共有アドレスの一例を示す説明図である。
【００８９】
図８を参照すると、共有アドレスは、共有アドレスフラグ、共有データを転送する転送先の情報処理装置８００〜情報処理装置８Ｎ０を指定する転送先情報、および、主記憶物理アドレスを含む。たとえば、転送先情報は、情報処理装置８００〜情報処理装置８Ｎ０に対応するビットを含むビットマップで構成可能である。
【００９０】
次に、本発明を実施するための第２の最良の形態の動作について情報処理装置８００を例にとって説明する。
【００９１】
主記憶制御部８０２は、プロセッサ８０１から共有アドレスを伴う差分要求を入力し、主記憶部８０３に主記憶物理アドレスを伴う主記憶読み出し要求を出力し、主記憶部８０３からの読み出しデータを入力し内部に保持する。また、主記憶制御部８０２は、共有メモリ通信制御部８０４に、転送先情報、主記憶物理アドレスを伴う主記憶読み出し要求を出力する。
【００９２】
共有メモリ通信制御部８０４は、系間通信手段５００に転送先情報、主記憶物理アドレスを伴う主記憶読み出し要求を出力する。次に、系間通信手段５００は、情報処理装置８１０〜情報処理装置８Ｎ０に転送先情報、主記憶物理アドレスを伴う主記憶読み出し要求を転送する。この場合、系間通信手段５００は、バス構成が適用可能である。
【００９３】
共有メモリ通信制御部８１４〜共有メモリ通信制御部８Ｎ４は、転送先情報を調べ、自系に対応する値であれば、それぞれ、主記憶制御部８１２〜主記憶制御部８Ｎ２に、主記憶物理アドレスを伴う主記憶読み出し要求を出力する。
【００９４】
主記憶制御部８１２〜主記憶制御部８Ｎ２は、それぞれ、主記憶部８１３〜主記憶部８Ｎ３に主記憶物理アドレスを伴う読み出し要求を出力する。主記憶部８１３〜主記憶部８Ｎ３は、主記憶物理アドレスで示される領域から読み出しデータを読み出し、それぞれ主記憶制御部８１２〜主記憶制御部８Ｎ２に出力する。
【００９５】
次に、主記憶制御部８１２〜主記憶制御部８Ｎ２は、転送元情報（情報処理装置８００〜情報処理装置８Ｎ０を識別する）を伴う読み出しデータを共有メモリ通信制御部８１４〜８Ｎ４に出力する。共有メモリ通信制御部８１４〜８Ｎ４は、系間通信手段５００に読み出しデータを出力する。
【００９６】
共有メモリ通信制御部８０４は、系間通信手段５００から転送元情報を伴う読み出しデータを入力し、主記憶制御部８０２に出力する。主記憶制御部８０２は、共有メモリ通信制御部８０４からの転送元情報を伴う読み出しデータを入力し、主記憶部８０３からの読み出しデータと共有メモリ通信制御部８０４からの読み出しデータとの差分を生成し、転送元データと供にプロセッサ８０１に出力する。主記憶制御部８０２は、各情報処理装置８１０〜情報処理装置８Ｎ０からの読み出しデータと主記憶部８０３からの読み出しデータとの差分を別々にプロセッサに出力する方式も、まとめて出力する方式もどちらも可能である。
【００９７】
また、系間通信手段５００は、共有メモリ通信制御部８０４、共有メモリ通信制御部８１４、・・・、共有メモリ通信制御部８Ｎ４のそれぞれ２台ずつを独立に接続する構成も可能である。この場合、系間通信手段５００は、転送先情報を調べ、該当する共有メモリ通信制御部（共有メモリ通信制御部８０４、共有メモリ通信制御部８１４、・・・、共有メモリ通信制御部８Ｎ４）に主記憶読み出し要求を出力する。したがって、この場合、系間通信手段５００は、転送先情報を転送する必要はない。
【００９８】
他の動作は、本発明を実施するための第１の最良の形態の動作と同一である。
【００９９】
次に、本発明を実施するための第２の最良の形態の論理アドレスのアドレスマップの１実施例について図面を参照して説明する。
【０１００】
図９は、本発明を実施するための第２の最良の形態の論理アドレスのアドレスマップの内容を示す説明図である。
【０１０１】
図９を参照すると、論理アドレスマップの非共有領域は、情報処理装置８００と情報処理装置８１０との共有データの共有領域、・・・、情報処理装置８００と、情報処理装置８１０と、・・・と、情報処理装置８Ｎ０との共有データの共有領域のように分割可能である。すなわち、｛２の（Ｎ＋１）乗｝−（Ｎ＋１）［個］の領域に分割可能である。
【０１０２】
本発明を実施するための第２の最良の形態は、第１の最良の形態と比較して、情報処理装置８００〜情報処理装置８Ｎ０が、異なる動作を実施する場合に柔軟に対応できるという効果を持つ。
【０１０３】
また、以上では、系間通信手段３００、系間通信手段５００で、主記憶物理アドレスを転送する構成をとっているが、論理アドレスを転送する構成も可能である。この場合、たとえば、受信側の共有メモリ通信制御部１０４、または、主記憶制御部１０２等で、論理アドレスから物理アドレスに変換する。
【０１０４】
また、以上では、主記憶（たとえば、主記憶部１０３）に関して説明したが、主記憶以外の記憶装置に本発明が適用可能である。
【０１０５】
また、以上では、プロセッサ１０１等が、差分要求を出力する構成としたが、プロセッサが、差分要求を出力せず、替わりに主記憶読み出し要求を出力する構成も可能である。この場合、主記憶制御部１０２は、共有データに対する主記憶読み出し要求であれば、主記憶部８０３からの読み出しデータ、および、情報処理装置２００からの読み出しデータとの差分の両方をプロセッサ１０１に出力する。
【０１０６】
また、上述したように、プロセッサ１０１が、差分要求を含まない各種要求と、差分を示す情報１ビットとを出力する構成も可能である。
【産業上の利用可能性】
【０１０７】
本発明は、現用系・待機系を持つ多重コンピュータシステム、並列コンピュータシステム等に利用できる。
【図面の簡単な説明】
【０１０８】
【図１】本発明を実施するための第１の最良の形態の構成を示すブロック図である。
【図２】本発明を実施するための第１の最良の形態の主記憶読み出し要求に伴う共有アドレスの一例を示す説明図である。
【図３】本発明を実施するための第１の最良の形態の動作を示すタイミングチャートである。
【図４】本発明を実施するための第１の最良の形態の動作を示すタイミングチャートである。
【図５】図１の主記憶制御部の構成の実施例を示す詳細ブロック図である。
【図６】本発明を実施するための第１の最良の形態の論理アドレスのアドレスマップの内容を示す説明図である。
【図７】本発明を実施するための第２の最良の形態の構成を示すブロック図である。
【図８】本発明を実施するための第２の最良の形態の主記憶読み出し要求に伴う共有アドレスの一例を示す説明図である。
【図９】本発明を実施するための第２の最良の形態の論理アドレスのアドレスマップの内容を示す説明図である。
【符号の説明】
【０１０９】
１００    情報処理装置
１０１    プロセッサ
１０２    主記憶制御部
１０３    主記憶部
１０４    共有メモリ通信制御部
１０５    共有データ処理回路
２００    情報処理装置
２０１    プロセッサ
２０２    主記憶制御部
２０３    主記憶部
２０４    共有メモリ通信制御部
２０５    共有データ処理回路
３００    系間通信手段
４０１    プロセッサ要求バッファ
４０２    判定回路
４０３    制御回路
４０４    選択回路
４０５    他系要求送信バッファ
４０６    他系要求受信バッファ
４０７    差分生成回路
４０８    プロセッサ応答バッファ
４０９    読み出しデータバッファ
５００    系間通信手段
８００    情報処理装置
８０１    プロセッサ
８０２    主記憶制御部
８０３    主記憶部
８０４    共有メモリ通信制御部
８１０    情報処理装置
８１１    プロセッサ
８１２    主記憶制御部
８１３    主記憶部
８１４    共有メモリ通信制御部
８Ｎ０    情報処理装置
８Ｎ１    プロセッサ
８Ｎ２    主記憶制御部
８Ｎ３    主記憶部
８Ｎ４    共有メモリ通信制御部
【図１】
2006235955.tif 000003
【図２】
2006235955.tif 000004
【図３】
2006235955.tif 000005
【図４】
2006235955.tif 000006
【図５】
2006235955.tif 000007
【図６】
2006235955.tif 000008
【図７】
2006235955.tif 000009
【図８】
2006235955.tif 000010
【図９】
2006235955.tif 000011