JPH09106373A - 計算機システムにおける共用データの無効化方法 - Google Patents
計算機システムにおける共用データの無効化方法Info
- Publication number
- JPH09106373A JPH09106373A JP7263837A JP26383795A JPH09106373A JP H09106373 A JPH09106373 A JP H09106373A JP 7263837 A JP7263837 A JP 7263837A JP 26383795 A JP26383795 A JP 26383795A JP H09106373 A JPH09106373 A JP H09106373A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- shared data
- data
- tree structure
- computer system
- 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
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Memory System (AREA)
Abstract
(57)【要約】
【課題】 複数のプロセッサが木構造に接続された計算
機システムにおいて、共用データの一貫性を維持するた
めの共用データの無効化方法を提供する。 【解決手段】 第1のプロセッサ100─2において共
用データaの更新が要求されたことに応じて、前記共用
データaを保持する最も上位の第2のプロセッサ100
─1の前記共用データaを更新する。そして、前記第2
のプロセッサ100─1よりも下位のプロセッサ100
─2が保持する前記共用データaのコピーを、前記木構
造を介して連鎖的に無効化し、第1のプロセッサ100
─2において共用データを更新する。
機システムにおいて、共用データの一貫性を維持するた
めの共用データの無効化方法を提供する。 【解決手段】 第1のプロセッサ100─2において共
用データaの更新が要求されたことに応じて、前記共用
データaを保持する最も上位の第2のプロセッサ100
─1の前記共用データaを更新する。そして、前記第2
のプロセッサ100─1よりも下位のプロセッサ100
─2が保持する前記共用データaのコピーを、前記木構
造を介して連鎖的に無効化し、第1のプロセッサ100
─2において共用データを更新する。
Description
【0001】
【発明の属する技術分野】本発明は、計算機システムに
おける共用データの無効化方法に関し、特に、複数のプ
ロセッサが木構造に接続された計算機システムに好適な
計算機システムにおける共用データの無効化方法に関す
る。
おける共用データの無効化方法に関し、特に、複数のプ
ロセッサが木構造に接続された計算機システムに好適な
計算機システムにおける共用データの無効化方法に関す
る。
【0002】
【従来の技術】特開平6―83706号公報は、複数の
プロセッサが前記各プロセッサとチャネルを介して接続
された特定のプロセッサ(共用プロセッサ)内のデータ
を共用可能な計算機システムを開示している。この計算
機システムでは、各プロセッサの主記憶装置と、前記共
用プロセッサの主記憶装置と、前記共用プロセッサを除
く各プロセッサに接続された入出力装置とが記憶階層を
形成する。即ち、各プロセッサが高速にアクセス可能な
記憶装置の順番は、各自のプロセッサの主記憶装置、共
用プロセッサの主記憶装置、各自のプロセッサに接続さ
れた入出力装置の順である。
プロセッサが前記各プロセッサとチャネルを介して接続
された特定のプロセッサ(共用プロセッサ)内のデータ
を共用可能な計算機システムを開示している。この計算
機システムでは、各プロセッサの主記憶装置と、前記共
用プロセッサの主記憶装置と、前記共用プロセッサを除
く各プロセッサに接続された入出力装置とが記憶階層を
形成する。即ち、各プロセッサが高速にアクセス可能な
記憶装置の順番は、各自のプロセッサの主記憶装置、共
用プロセッサの主記憶装置、各自のプロセッサに接続さ
れた入出力装置の順である。
【0003】前記計算機システムにおいて、前記共用プ
ロセッサは、各々の共用データのコピーを前記共用プロ
セッサに接続されたどのプロセッサが保持しているかを
記憶している。従って、あるプロセッサが共用データを
更新したとき、共用プロセッサはチャネルを介して各プ
ロセッサ内の前記共用データの更新前のコピーを効率的
に無効化できる。これにより、複数のプロセッサが前記
各プロセッサとチャネルを介して接続された特定のプロ
セッサ(共用プロセッサ)内のデータを共用可能な計算
機システムにおいて、共用データの一貫性(コヒーレン
シ)を維持できる。
ロセッサは、各々の共用データのコピーを前記共用プロ
セッサに接続されたどのプロセッサが保持しているかを
記憶している。従って、あるプロセッサが共用データを
更新したとき、共用プロセッサはチャネルを介して各プ
ロセッサ内の前記共用データの更新前のコピーを効率的
に無効化できる。これにより、複数のプロセッサが前記
各プロセッサとチャネルを介して接続された特定のプロ
セッサ(共用プロセッサ)内のデータを共用可能な計算
機システムにおいて、共用データの一貫性(コヒーレン
シ)を維持できる。
【0004】
【発明が解決しようとする課題】前記公報に開示された
共用データのコヒーレンシを維持する方法は、複数のプ
ロセッサが前記各プロセッサとチャネルを介して接続さ
れた特定のプロセッサ(共用プロセッサ)内のデータを
共用する形態の計算機システムにおいて、共用データの
一貫性を維持する上で効果がある。
共用データのコヒーレンシを維持する方法は、複数のプ
ロセッサが前記各プロセッサとチャネルを介して接続さ
れた特定のプロセッサ(共用プロセッサ)内のデータを
共用する形態の計算機システムにおいて、共用データの
一貫性を維持する上で効果がある。
【0005】一方、複数のプロセッサが木構造に接続さ
れた計算機システムでは、特定のプロセッサが他の全て
のプロセッサとチャネルを介して接続されているわけで
はない。このため、複数のプロセッサが木構造に接続さ
れた計算機システムでは、あるプロセッサが共用データ
を更新したとき、特定の共用プロセッサがチャネルを介
して他の各プロセッサ内の前記共用データの更新前のコ
ピーを直接に無効化することはできない。このため、複
数のプロセッサが木構造に接続された計算機システムに
おいて、どのようにすれば共用データの一貫性を維持で
きるかという課題がある。
れた計算機システムでは、特定のプロセッサが他の全て
のプロセッサとチャネルを介して接続されているわけで
はない。このため、複数のプロセッサが木構造に接続さ
れた計算機システムでは、あるプロセッサが共用データ
を更新したとき、特定の共用プロセッサがチャネルを介
して他の各プロセッサ内の前記共用データの更新前のコ
ピーを直接に無効化することはできない。このため、複
数のプロセッサが木構造に接続された計算機システムに
おいて、どのようにすれば共用データの一貫性を維持で
きるかという課題がある。
【0006】本発明の目的は、複数のプロセッサが木構
造に接続された計算機システムにおいて共用データの一
貫性を維持するための、計算機システムにおける共用デ
ータの無効化方法を提供することにある。
造に接続された計算機システムにおいて共用データの一
貫性を維持するための、計算機システムにおける共用デ
ータの無効化方法を提供することにある。
【0007】
【課題を解決するための手段】本発明に係わる計算機シ
ステムにおける共用データの無効化方法は、前記課題を
解決し、前記目的を達成したものであり、次のようなも
のである。
ステムにおける共用データの無効化方法は、前記課題を
解決し、前記目的を達成したものであり、次のようなも
のである。
【0008】すなわち、複数のプロセッサが木構造に接
続され、各プロセッサに前記木構造における下位のプロ
セッサの共用データが配置された計算機システムにおけ
る共用データの無効化方法であって、第1のプロセッサ
における共用データの更新要求に応じて、前記共用デー
タのコピーを保持するプロセッサの中で最上位の第2の
プロセッサの前記共用データを更新し、前記第2のプロ
セッサよりも下位のプロセッサが保持する前記共用デー
タの更新前のコピーを前記木構造を介して連鎖的に無効
化することを特徴とする計算機システムにおける共用デ
ータの無効化方法である。
続され、各プロセッサに前記木構造における下位のプロ
セッサの共用データが配置された計算機システムにおけ
る共用データの無効化方法であって、第1のプロセッサ
における共用データの更新要求に応じて、前記共用デー
タのコピーを保持するプロセッサの中で最上位の第2の
プロセッサの前記共用データを更新し、前記第2のプロ
セッサよりも下位のプロセッサが保持する前記共用デー
タの更新前のコピーを前記木構造を介して連鎖的に無効
化することを特徴とする計算機システムにおける共用デ
ータの無効化方法である。
【0009】また、各プロセッサ毎に前記共用データを
保持する最上位のプロセッサか否かを識別するための最
上位識別子を有し、第1のプロセッサにおける共用デー
タの更新要求に応じて、前記最上位識別子を用いて、前
記共用データのコピーを保持するプロセッサの中で最上
位の第2のプロセッサか否かを識別することを特徴とす
る計算機システムにおける共用データの無効化方法であ
る。
保持する最上位のプロセッサか否かを識別するための最
上位識別子を有し、第1のプロセッサにおける共用デー
タの更新要求に応じて、前記最上位識別子を用いて、前
記共用データのコピーを保持するプロセッサの中で最上
位の第2のプロセッサか否かを識別することを特徴とす
る計算機システムにおける共用データの無効化方法であ
る。
【0010】また、各プロセッサ毎に前記共用データを
保持する最下位のプロセッサか否かを識別するための最
下位識別子を有し、前記第2のプロセッサよりも下位の
プロセッサが保持する前記共用データの更新前のコピー
を前記木構造を介して、前記最下位識別子が最下位を示
すプロセッサまで連鎖的に無効化することを特徴とする
計算機システムにおける共用データの無効化方法であ
る。
保持する最下位のプロセッサか否かを識別するための最
下位識別子を有し、前記第2のプロセッサよりも下位の
プロセッサが保持する前記共用データの更新前のコピー
を前記木構造を介して、前記最下位識別子が最下位を示
すプロセッサまで連鎖的に無効化することを特徴とする
計算機システムにおける共用データの無効化方法であ
る。
【0011】また、各プロセッサ毎に前記共用データを
保持するプロセッサのル−トを識別するためのル−ト識
別子を有し、前記第2のプロセッサよりも下位のプロセ
ッサが保持する前記共用データの更新前のコピーを前記
木構造を介して、前記ル−ト識別子が示すプロセッサの
ル−トにおいて連鎖的に無効化することを特徴とする計
算機システムにおける共用データの無効化方法である。
保持するプロセッサのル−トを識別するためのル−ト識
別子を有し、前記第2のプロセッサよりも下位のプロセ
ッサが保持する前記共用データの更新前のコピーを前記
木構造を介して、前記ル−ト識別子が示すプロセッサの
ル−トにおいて連鎖的に無効化することを特徴とする計
算機システムにおける共用データの無効化方法である。
【0012】さらに、第3のプロセッサにおける共用デ
ータの書き出し要求に応じて、前記第3のプロセッサが
前記木構造における最上位のプロセッサか否かを判定
し、前記第3のプロセッサが最上位のプロセッサでない
とき、前記木構造における上位の第4のプロセッサに対
して前記共用データを書き出すとともに、前記共用デー
タを前記第3のプロセッサにおいて無効化し、前記第3
のプロセッサが最上位のプロセッサであるとき、前記第
3のプロセッサに接続された入出力装置に対して前記共
用データを書き出すとともに、前記共用データを前記木
構造を介して全プロセッサにおいて連鎖的に無効化する
ことを特徴とする計算機システムにおける共用データの
無効化方法である。
ータの書き出し要求に応じて、前記第3のプロセッサが
前記木構造における最上位のプロセッサか否かを判定
し、前記第3のプロセッサが最上位のプロセッサでない
とき、前記木構造における上位の第4のプロセッサに対
して前記共用データを書き出すとともに、前記共用デー
タを前記第3のプロセッサにおいて無効化し、前記第3
のプロセッサが最上位のプロセッサであるとき、前記第
3のプロセッサに接続された入出力装置に対して前記共
用データを書き出すとともに、前記共用データを前記木
構造を介して全プロセッサにおいて連鎖的に無効化する
ことを特徴とする計算機システムにおける共用データの
無効化方法である。
【0013】以下、本発明の代表的な作用を説明する。
【0014】複数のプロセッサが木構造に接続された計
算機システムにおいて、各プロセッサに前記木構造にお
ける下位のプロセッサの共用データを配置しておく。ま
た、各プロセッサ毎に前記共用データを保持する最上位
のプロセッサか否かを識別するための最上位識別子と、
各プロセッサ毎に前記共用データを保持する最下位のプ
ロセッサか否かを識別するための最下位識別子と、各プ
ロセッサ毎に前記共用データを保持するプロセッサのル
−トを識別するためのル−ト識別子を設定しておく。
算機システムにおいて、各プロセッサに前記木構造にお
ける下位のプロセッサの共用データを配置しておく。ま
た、各プロセッサ毎に前記共用データを保持する最上位
のプロセッサか否かを識別するための最上位識別子と、
各プロセッサ毎に前記共用データを保持する最下位のプ
ロセッサか否かを識別するための最下位識別子と、各プ
ロセッサ毎に前記共用データを保持するプロセッサのル
−トを識別するためのル−ト識別子を設定しておく。
【0015】そして、第3のプロセッサにおける共用デ
ータの書き出し要求に応じて、前記第3のプロセッサが
木構造における最上位のプロセッサか否かを判定する。
そして、前記第3のプロセッサが最上位のプロセッサで
ないとき、前記木構造における上位の第4のプロセッサ
に対して前記共用データを書き出すとともに前記共用デ
ータを前記第3のプロセッサにおいて無効化する。一
方、前記第3のプロセッサが最上位のプロセッサである
とき、前記第3のプロセッサに接続された入出力装置に
対して前記共用データを書き出すとともに、前記共用デ
ータを前記木構造を介して全プロセッサにおいて連鎖的
に無効化する。
ータの書き出し要求に応じて、前記第3のプロセッサが
木構造における最上位のプロセッサか否かを判定する。
そして、前記第3のプロセッサが最上位のプロセッサで
ないとき、前記木構造における上位の第4のプロセッサ
に対して前記共用データを書き出すとともに前記共用デ
ータを前記第3のプロセッサにおいて無効化する。一
方、前記第3のプロセッサが最上位のプロセッサである
とき、前記第3のプロセッサに接続された入出力装置に
対して前記共用データを書き出すとともに、前記共用デ
ータを前記木構造を介して全プロセッサにおいて連鎖的
に無効化する。
【0016】以上の処理により、第1のプロセッサから
ある共用データを参照しようとしたとき、前記共用デー
タが木構造中のあるプロセッサ内に保持されていれば、
それは第1のプロセッサ自身あるいは第1のプロセッサ
の上位のプロセッサに必ず保持されている。また、前記
共用データがどのプロセッサ内にも保持されていなけれ
ば、それは最上位のプロセッサに接続された入出力装置
に必ず存在することになる。即ち、共用データのアクセ
スは、木構造における上位のプロセッサに対して行えば
十分であり、下位のプロセッサおよび上下関係のないプ
ロセッサにアクセスする必要はない。
ある共用データを参照しようとしたとき、前記共用デー
タが木構造中のあるプロセッサ内に保持されていれば、
それは第1のプロセッサ自身あるいは第1のプロセッサ
の上位のプロセッサに必ず保持されている。また、前記
共用データがどのプロセッサ内にも保持されていなけれ
ば、それは最上位のプロセッサに接続された入出力装置
に必ず存在することになる。即ち、共用データのアクセ
スは、木構造における上位のプロセッサに対して行えば
十分であり、下位のプロセッサおよび上下関係のないプ
ロセッサにアクセスする必要はない。
【0017】そこで、第1のプロセッサが共用データの
読み出しを要求したことに応じて、前記第1のプロセッ
サが前記共用データを保持するか否かを判定する。そし
て、前記判定が肯定的であるとき、前記第1のプロセッ
サが保持する前記共用データを読み出す。一方、前記判
定が否定的であるとき、前記第1のプロセッサよりも前
記木構造における上位の第2のプロセッサあるいは最上
位のプロセッサに接続された入出力装置から前記共用デ
ータを読み出す。
読み出しを要求したことに応じて、前記第1のプロセッ
サが前記共用データを保持するか否かを判定する。そし
て、前記判定が肯定的であるとき、前記第1のプロセッ
サが保持する前記共用データを読み出す。一方、前記判
定が否定的であるとき、前記第1のプロセッサよりも前
記木構造における上位の第2のプロセッサあるいは最上
位のプロセッサに接続された入出力装置から前記共用デ
ータを読み出す。
【0018】また、第1のプロセッサにおける共用デー
タの更新要求に応じて、前記共用データを保持する最上
位の第2のプロセッサを前記最上位識別子を用いて識別
し、前記第2のプロセッサが保持する前記共用データを
更新する。そして、前記第2のプロセッサよりも下位の
プロセッサが保持する前記共用データの更新前のコピー
を前記木構造を介して連鎖的に無効化する。このとき、
各プロセッサが前記共用データに対して保持するプロセ
ッサルートが示す下位のプロセッサに対してのみ、共用
データの無効化を要求すればよい。また、各プロセッサ
における前記共用データの最下位プロセッサ識別子が最
下位を示すとき、さらに下位のプロセッサに対して、共
用データの無効化を要求する必要はない。
タの更新要求に応じて、前記共用データを保持する最上
位の第2のプロセッサを前記最上位識別子を用いて識別
し、前記第2のプロセッサが保持する前記共用データを
更新する。そして、前記第2のプロセッサよりも下位の
プロセッサが保持する前記共用データの更新前のコピー
を前記木構造を介して連鎖的に無効化する。このとき、
各プロセッサが前記共用データに対して保持するプロセ
ッサルートが示す下位のプロセッサに対してのみ、共用
データの無効化を要求すればよい。また、各プロセッサ
における前記共用データの最下位プロセッサ識別子が最
下位を示すとき、さらに下位のプロセッサに対して、共
用データの無効化を要求する必要はない。
【0019】以上のようにして、複数のプロセッサが木
構造に接続された計算機システムにおいて共用データの
一貫性を維持するための、計算機システムにおける共用
データの無効化方法を提供できる。
構造に接続された計算機システムにおいて共用データの
一貫性を維持するための、計算機システムにおける共用
データの無効化方法を提供できる。
【0020】
【発明の実施の形態】以下、本発明の実施例を、図を用
いて詳細に説明する。
いて詳細に説明する。
【0021】1.計算機システムの構成 図1は、本実施例が前提とする計算機システムの構成図
である。
である。
【0022】図1において、100−i(1≦i≦7)
はプロセッサ、110−i(1≦i≦7)はメモリ、1
20はデイスク装置である。木構造に接続されている各
プロセッサ100−iは、この木構造を用いて、1つ上
位および1つ下位のプロセッサと直接交信できる。本実
施例では、例えばプロセッサ100−2にとって木構造
の上にあるプロセッサ100−1を上位のプロセッサと
呼び、木構造の下にあるプロセッサ100−4および1
00−5を下位のプロセッサと呼ぶ。また、例えばプロ
セッサ100−4にとって、プロセッサ100−5は上
位でもなければ下位でもない。
はプロセッサ、110−i(1≦i≦7)はメモリ、1
20はデイスク装置である。木構造に接続されている各
プロセッサ100−iは、この木構造を用いて、1つ上
位および1つ下位のプロセッサと直接交信できる。本実
施例では、例えばプロセッサ100−2にとって木構造
の上にあるプロセッサ100−1を上位のプロセッサと
呼び、木構造の下にあるプロセッサ100−4および1
00−5を下位のプロセッサと呼ぶ。また、例えばプロ
セッサ100−4にとって、プロセッサ100−5は上
位でもなければ下位でもない。
【0023】デイスク装置120は、1台しか記載して
いないが、複数台接続されていてよい。また、本実施例
では、各プロセッサ100−iには、木構造における下
位のプロセッサの共用データが配置されているものとす
る。さらに、各プロセッサ100−iには、プロセッサ
の識別子として’i’が設定されているものとする。
いないが、複数台接続されていてよい。また、本実施例
では、各プロセッサ100−iには、木構造における下
位のプロセッサの共用データが配置されているものとす
る。さらに、各プロセッサ100−iには、プロセッサ
の識別子として’i’が設定されているものとする。
【0024】2.共用データの管理構造 次に、図2を用いて、共用データの管理構造を説明す
る。
る。
【0025】各プロセッサ100のメモリ110には、
メモリ110内に保持する共用データ140−jを管理
するためのデイレクトリ130がある。デイレクトリ1
30の各エントリは各々異なる共用データに対応してお
り、第j番目のエントリは次のフィールドから構成され
る。
メモリ110内に保持する共用データ140−jを管理
するためのデイレクトリ130がある。デイレクトリ1
30の各エントリは各々異なる共用データに対応してお
り、第j番目のエントリは次のフィールドから構成され
る。
【0026】(a)データ名131−j:このエントリ
に対応する共用データ140−jのデータ名を保持す
る。 (b)データレベル132−j データレベル132内のフラグH(High)が有効で
あるとき、このプロセッサ100が共用データ140−
jを保持するプロセッサのルートにおいて、最上位のプ
ロセッサであることを示す。例えば、データaがプロセ
サ100−2および100−4に保持されており、プロ
セサ100−1に保持されていないとき、プロセサ10
0−2のデイレクトリ130−2のデータaに対応する
エントリのデータレベル132には、フラグHが設定さ
れる。
に対応する共用データ140−jのデータ名を保持す
る。 (b)データレベル132−j データレベル132内のフラグH(High)が有効で
あるとき、このプロセッサ100が共用データ140−
jを保持するプロセッサのルートにおいて、最上位のプ
ロセッサであることを示す。例えば、データaがプロセ
サ100−2および100−4に保持されており、プロ
セサ100−1に保持されていないとき、プロセサ10
0−2のデイレクトリ130−2のデータaに対応する
エントリのデータレベル132には、フラグHが設定さ
れる。
【0027】また、データレベル132内のフラグL
(Low)が有効であるとき、このプロセッサ100が
共用データ140−jを保持するプロセッサのルートに
おいて、最下位のプロセッサであることを示す。例え
ば、データaがプロセサ100−1および100−2に
保持されており、プロセサ100−4および100−5
に保持されていないとき、プロセサ100−2のデイレ
クトリ130−2のデータaに対応するエントリのデー
タレベル132には、フラグLが設定される。
(Low)が有効であるとき、このプロセッサ100が
共用データ140−jを保持するプロセッサのルートに
おいて、最下位のプロセッサであることを示す。例え
ば、データaがプロセサ100−1および100−2に
保持されており、プロセサ100−4および100−5
に保持されていないとき、プロセサ100−2のデイレ
クトリ130−2のデータaに対応するエントリのデー
タレベル132には、フラグLが設定される。
【0028】ただし、共用データ140−jがプロセッ
サ100のみに保持されるとき、データレベル132内
には、フラグHおよびフラグLの両方が設定される。
サ100のみに保持されるとき、データレベル132内
には、フラグHおよびフラグLの両方が設定される。
【0029】(c)プロセッサルート133−j:共用
データ140−jのコピーを有する下位のプロセッサに
至るルートにおいて、1つ下位のプロセッサの識別子を
保持する。例えば、データaがプロセサ100−2およ
び100−4に保持されており、プロセサ100−5に
保持されていないとき、プロセッサ100−2のデイレ
クトリ130−2のデータaに対応するエントリのプロ
セッサルート133には、プロセッサ100−4の識別
子である’4’が保持される。
データ140−jのコピーを有する下位のプロセッサに
至るルートにおいて、1つ下位のプロセッサの識別子を
保持する。例えば、データaがプロセサ100−2およ
び100−4に保持されており、プロセサ100−5に
保持されていないとき、プロセッサ100−2のデイレ
クトリ130−2のデータaに対応するエントリのプロ
セッサルート133には、プロセッサ100−4の識別
子である’4’が保持される。
【0030】(d)データアドレス134−j:共用デ
ータ140−jのメモリ110におけるアドレスを保持
する。
ータ140−jのメモリ110におけるアドレスを保持
する。
【0031】3.共用データの書き出し処理 次に、図3のフローチャートを用いて、共用データの書
き出し処理を説明する。ここで共用データの書き出しと
は、プロセッサ100─iにおいてメモリ110─iに
空き領域を作るために、プロセッサ100─iに保持す
る共用データを上位のプロセッサあるいはデイスク装置
120にコピーし、プロセッサ100─iでは保持しな
いようにすることを示す。
き出し処理を説明する。ここで共用データの書き出しと
は、プロセッサ100─iにおいてメモリ110─iに
空き領域を作るために、プロセッサ100─iに保持す
る共用データを上位のプロセッサあるいはデイスク装置
120にコピーし、プロセッサ100─iでは保持しな
いようにすることを示す。
【0032】プロセッサ100─2において、データ名
aの共用データ140の書き出し要求がある(ステップ
3000)と、まず、デイレクトリ130−2のデータ
aに対応するエントリのデータレベル132にフラグH
またはフラグLが設定されているか否かを判定する(ス
テップ3010)。フラグHまたはフラグLが設定され
ていなければ、プロセッサ100−2において共用デー
タaの領域を空き領域にするとともに、デイレクトリ1
30−2の共用データaに対応するエントリのデータア
ドレスを無効化し(ステップ3020)、共用データa
の書き出し処理を終了する。
aの共用データ140の書き出し要求がある(ステップ
3000)と、まず、デイレクトリ130−2のデータ
aに対応するエントリのデータレベル132にフラグH
またはフラグLが設定されているか否かを判定する(ス
テップ3010)。フラグHまたはフラグLが設定され
ていなければ、プロセッサ100−2において共用デー
タaの領域を空き領域にするとともに、デイレクトリ1
30−2の共用データaに対応するエントリのデータア
ドレスを無効化し(ステップ3020)、共用データa
の書き出し処理を終了する。
【0033】一方、フラグHまたはフラグLが設定され
ていれば、プロセッサ100─2の識別子である’2’
と、データ名aと、設定されているデータレベルHまた
はフラグLと、データaとからなるタグ200─1を構
成し、上位のプロセッサ100─1に送る(ステップ3
030)。
ていれば、プロセッサ100─2の識別子である’2’
と、データ名aと、設定されているデータレベルHまた
はフラグLと、データaとからなるタグ200─1を構
成し、上位のプロセッサ100─1に送る(ステップ3
030)。
【0034】プロセッサ100─1では、データaを格
納する領域があるかを判定し(ステップ3040)、あ
るならば共用データaをコピーし、データ名aの共用デ
ータ140をデイレクトリ130─1に登録し(ステッ
プ3050)、プロセッサ100─2に書き出しの完了
を通知する(ステップ3060)。このとき、デイレク
トリ130─1のエントリへの登録内容は、次のとおり
である。
納する領域があるかを判定し(ステップ3040)、あ
るならば共用データaをコピーし、データ名aの共用デ
ータ140をデイレクトリ130─1に登録し(ステッ
プ3050)、プロセッサ100─2に書き出しの完了
を通知する(ステップ3060)。このとき、デイレク
トリ130─1のエントリへの登録内容は、次のとおり
である。
【0035】(a)データ名131─j:データ名aを
設定する。 (b)データレベル132─j:タグ200─1で指定
されたデータレベルと以前設定されていたデータレベル
132─jとの和を設定する。
設定する。 (b)データレベル132─j:タグ200─1で指定
されたデータレベルと以前設定されていたデータレベル
132─jとの和を設定する。
【0036】(c)プロセッサルート133─j:タグ
200─1で指定されたデータレベルがLのとき、プロ
セッサルート133─jからプロセッサ100─2の識
別子である’2’を削除する。タグ200─1で指定さ
れたデータレベルがHのとき、プロセッサルート133
─jにプロセッサ100─2の識別子である’2’を追
加する。ただし、タグ200─1にデータレベルがLお
よびHが指定されているとき、プロセッサルート133
─jを0にリセットする。
200─1で指定されたデータレベルがLのとき、プロ
セッサルート133─jからプロセッサ100─2の識
別子である’2’を削除する。タグ200─1で指定さ
れたデータレベルがHのとき、プロセッサルート133
─jにプロセッサ100─2の識別子である’2’を追
加する。ただし、タグ200─1にデータレベルがLお
よびHが指定されているとき、プロセッサルート133
─jを0にリセットする。
【0037】(d)データアドレス134─j:コピー
したデータ名aの共用データ140のアドレスを格納す
る。
したデータ名aの共用データ140のアドレスを格納す
る。
【0038】また、データaを格納する領域がないなら
ば、データ名aの共用データ140をデイスク120に
書き出し(ステップ3070)、データaを木構造を介
して全プロセッサにおいて連鎖的に無効化する(ステッ
プ3080)。この連鎖的無効化については、後で詳し
く述べる。その後、プロセッサ100─1が書き出し完
了通知をプロセッサ100─2に対して送った(ステッ
プ3060)結果、プロセッサ100─2は、共用デー
タaのアドレスをデイレクトリ130−2において無効
化する(ステップ3020)。
ば、データ名aの共用データ140をデイスク120に
書き出し(ステップ3070)、データaを木構造を介
して全プロセッサにおいて連鎖的に無効化する(ステッ
プ3080)。この連鎖的無効化については、後で詳し
く述べる。その後、プロセッサ100─1が書き出し完
了通知をプロセッサ100─2に対して送った(ステッ
プ3060)結果、プロセッサ100─2は、共用デー
タaのアドレスをデイレクトリ130−2において無効
化する(ステップ3020)。
【0039】以上、プロセッサ100─2によるデータ
名aの共用データ140の書き出し要求の処理を説明し
たが、他のプロセッサ100による共用データの書き出
し要求も同様に処理される。
名aの共用データ140の書き出し要求の処理を説明し
たが、他のプロセッサ100による共用データの書き出
し要求も同様に処理される。
【0040】4.共用データの参照処理 次に、図4のフローチャートを用いて、共用データ14
0の参照処理を説明する。
0の参照処理を説明する。
【0041】プロセッサ100─2がデータ名aの共用
データ140の参照を要求したとき(ステップ400
0)、データ名aの共用データ140がプロセッサ10
0─2のデイレクトリ130─2に登録されているか否
かを判定し(ステップ4010)、登録されていればメ
モリ110─2内の共用データ140を参照する(ステ
ップ4020)。
データ140の参照を要求したとき(ステップ400
0)、データ名aの共用データ140がプロセッサ10
0─2のデイレクトリ130─2に登録されているか否
かを判定し(ステップ4010)、登録されていればメ
モリ110─2内の共用データ140を参照する(ステ
ップ4020)。
【0042】一方、登録されていなければ、プロセッサ
100─2は、自身のプロセッサの識別子である’2’
とデータ名aとを格納したタグ200─2を、木構造に
おいて上位に存在するプロセッサ100─1に送る(ス
テップ4030)。プロセッサ100─1では、タグ2
00─2がデータ名を保持するデータaが、デイレクト
リ130─1に登録されているかを判定し(ステップ4
040)、登録されている場合にはメモリ110─1か
らデータ名aの共用データ140を得る(ステップ40
50)。他方、登録されていない場合にはデイスク装置
120からデータ名aの共用データ140を得て、デイ
レクトリ130─1に登録する。(ステップ406
0)。このとき、デイレクトリ130─1のデータレベ
ル132─jからフラグLを削除するとともに、プロセ
ッサルート133─jにプロセッサ100─2の識別子
である’2’を追加する。
100─2は、自身のプロセッサの識別子である’2’
とデータ名aとを格納したタグ200─2を、木構造に
おいて上位に存在するプロセッサ100─1に送る(ス
テップ4030)。プロセッサ100─1では、タグ2
00─2がデータ名を保持するデータaが、デイレクト
リ130─1に登録されているかを判定し(ステップ4
040)、登録されている場合にはメモリ110─1か
らデータ名aの共用データ140を得る(ステップ40
50)。他方、登録されていない場合にはデイスク装置
120からデータ名aの共用データ140を得て、デイ
レクトリ130─1に登録する。(ステップ406
0)。このとき、デイレクトリ130─1のデータレベ
ル132─jからフラグLを削除するとともに、プロセ
ッサルート133─jにプロセッサ100─2の識別子
である’2’を追加する。
【0043】次に、プロセッサ100─1は、タグ20
0─2にデータa自身および変更前のデータレベル13
2─jを付加したタグ200─3を、タグ200─2に
登録されているプロセッサ100─2に送る(ステップ
4070)。その結果、プロセッサ100─2は、デイ
レクトリ130─2にデータ名aの共用データ140を
登録し(ステップ4080)、データaを参照する(ス
テップ4020)。このとき、プロセッサ100─2の
デイレクトリ130─2のエントリへの登録内容は、次
のとおりである。
0─2にデータa自身および変更前のデータレベル13
2─jを付加したタグ200─3を、タグ200─2に
登録されているプロセッサ100─2に送る(ステップ
4070)。その結果、プロセッサ100─2は、デイ
レクトリ130─2にデータ名aの共用データ140を
登録し(ステップ4080)、データaを参照する(ス
テップ4020)。このとき、プロセッサ100─2の
デイレクトリ130─2のエントリへの登録内容は、次
のとおりである。
【0044】(a)データ名131─j:データ名aを
設定する。 (b)データレベル132─j:データaはプロセッサ
100─2だけでなくプロセッサ100─1にも保持さ
れている。従って、フラグHは設定しない。また、タグ
200─3にフラグLが設定されている場合、フラグL
を設定する。
設定する。 (b)データレベル132─j:データaはプロセッサ
100─2だけでなくプロセッサ100─1にも保持さ
れている。従って、フラグHは設定しない。また、タグ
200─3にフラグLが設定されている場合、フラグL
を設定する。
【0045】(c)ルートプロセッサ134─j:デー
タaの参照によって、下位のプロセッサのデータaの保
持状態が変更されるわけではない。従って、変更する必
要はない。
タaの参照によって、下位のプロセッサのデータaの保
持状態が変更されるわけではない。従って、変更する必
要はない。
【0046】(d)データアドレス134─j:コピー
したデータ名aの共用データ140のメモリ110─1
におけるアドレスを格納する。
したデータ名aの共用データ140のメモリ110─1
におけるアドレスを格納する。
【0047】以上、プロセッサ100─2によるデータ
名aの共用データ140の参照要求の処理を説明した
が、他のプロセッサ100─iによる共用データの参照
要求も同様に処理される。このようにして、各プロセッ
サは、木構造における上位のプロセッサを共用プロセッ
サとして、利用できる。
名aの共用データ140の参照要求の処理を説明した
が、他のプロセッサ100─iによる共用データの参照
要求も同様に処理される。このようにして、各プロセッ
サは、木構造における上位のプロセッサを共用プロセッ
サとして、利用できる。
【0048】5.共用データの更新処理 次に、図5のフローチャートを用いて、共用データの更
新処理を説明する。
新処理を説明する。
【0049】プロセッサ100─2がデータ名aの共用
データ140の更新を要求した(ステップ5000)と
き、デイレクトリ130─2を用いて共用データ140
のデータレベルがHか否かを判定し(ステップ501
0)、データレベルがHのとき、プロセッサ100─2
よりも下位のプロセッサが保持する共用データ140を
木構造を介して連鎖的に無効化し(ステップ502
0)、プロセッサ100─2において共用データ140
を更新する(ステップ5090)。このとき、データレ
ベル132─jには、フラグHおよびフラグLを設定す
る。また、ルートプロセッサ134─jは、0にリセッ
トする。
データ140の更新を要求した(ステップ5000)と
き、デイレクトリ130─2を用いて共用データ140
のデータレベルがHか否かを判定し(ステップ501
0)、データレベルがHのとき、プロセッサ100─2
よりも下位のプロセッサが保持する共用データ140を
木構造を介して連鎖的に無効化し(ステップ502
0)、プロセッサ100─2において共用データ140
を更新する(ステップ5090)。このとき、データレ
ベル132─jには、フラグHおよびフラグLを設定す
る。また、ルートプロセッサ134─jは、0にリセッ
トする。
【0050】一方、データレベルがHでないとき、プロ
セッサ100─4自身のプロセッサの識別子である’
2’とデータ名aとデータaとを格納したタグ200─
4を上位に存在するプロセッサ100─1に送ることに
より、データ名aの共用データ140の更新を要求する
(ステップ5030)。タグ200─4が送られてきた
プロセッサ100─1では、プロセッサ100─1にお
いてデータaのデータレベルがHか否かをデイレクトリ
130─1を用いて判定(ステップ5040)し、デー
タレベルがHでなければさらに上位のプロセッサに共用
データの更新を要求する(ステップ5050)。ただ
し、本実施例では、プロセッサ100─1よりも上位の
プロセッサはないので、プロセッサ100─1において
データaのデータレベルは必ずHである。
セッサ100─4自身のプロセッサの識別子である’
2’とデータ名aとデータaとを格納したタグ200─
4を上位に存在するプロセッサ100─1に送ることに
より、データ名aの共用データ140の更新を要求する
(ステップ5030)。タグ200─4が送られてきた
プロセッサ100─1では、プロセッサ100─1にお
いてデータaのデータレベルがHか否かをデイレクトリ
130─1を用いて判定(ステップ5040)し、デー
タレベルがHでなければさらに上位のプロセッサに共用
データの更新を要求する(ステップ5050)。ただ
し、本実施例では、プロセッサ100─1よりも上位の
プロセッサはないので、プロセッサ100─1において
データaのデータレベルは必ずHである。
【0051】一方、データaのデータレベルがHのと
き、プロセッサ100─1では、タグ200─4が保持
するデータ名aをもとに、デイレクトリ130─1を検
索し、データaを更新する(ステップ5060)。この
とき、プロセッサ100─1では、プロセッサルート1
33─jには、プロセッサ100─2の識別子である’
2’のみを設定する。そして、プロセッサ100─1
は、下位のプロセッサが保持する共用データaの更新前
のコピーを木構造を介して連鎖的に無効化する(ステッ
プ5070)。
き、プロセッサ100─1では、タグ200─4が保持
するデータ名aをもとに、デイレクトリ130─1を検
索し、データaを更新する(ステップ5060)。この
とき、プロセッサ100─1では、プロセッサルート1
33─jには、プロセッサ100─2の識別子である’
2’のみを設定する。そして、プロセッサ100─1
は、下位のプロセッサが保持する共用データaの更新前
のコピーを木構造を介して連鎖的に無効化する(ステッ
プ5070)。
【0052】その後、プロセッサ100─1はタグ20
0─4がプロセッサの識別子を保持するプロセッサ10
0─2に対して、データaのデータ更新完了通知を報告
し(ステップ5080)、その結果、プロセッサ100
─2は共用データaを更新する(ステップ5090)。
このとき、プロセッサ100─2では、データレベル1
32─jにフラグLを設定するとともに、共用データa
に対応するデイレクトリ130─2のエントリのプロセ
ッサルート133─jをリセットする。
0─4がプロセッサの識別子を保持するプロセッサ10
0─2に対して、データaのデータ更新完了通知を報告
し(ステップ5080)、その結果、プロセッサ100
─2は共用データaを更新する(ステップ5090)。
このとき、プロセッサ100─2では、データレベル1
32─jにフラグLを設定するとともに、共用データa
に対応するデイレクトリ130─2のエントリのプロセ
ッサルート133─jをリセットする。
【0053】以上、プロセッサ100─2によるデータ
名aの共用データ140の更新要求の処理を説明した
が、他のプロセッサ100による共用データの更新要求
も同様に処理される。また、本実施例のステップ502
0およびステップ5070では、データaの更新前のコ
ピーを連鎖的に無効化したが、連鎖的にデータaを更新
してもよい。
名aの共用データ140の更新要求の処理を説明した
が、他のプロセッサ100による共用データの更新要求
も同様に処理される。また、本実施例のステップ502
0およびステップ5070では、データaの更新前のコ
ピーを連鎖的に無効化したが、連鎖的にデータaを更新
してもよい。
【0054】6.共用データの連鎖的無効化処理 次に、図6のフローチャートを用いて、共用データの連
鎖的無効化処理を説明する。
鎖的無効化処理を説明する。
【0055】プロセッサ100─iにおいて、データa
の連鎖的無効化要求を受け付ける(ステップ6000)
と、プロセッサ100─iのデイレクトリ130─iに
おいて、データaを無効化する(ステップ6010)。
次に、プロセッサ100─iにおいて、データaのデー
タレベル132─jにフラグLが設定されていたか否か
を判定(ステップ6020)し、設定されていれば、こ
のプロセッサのルートにおけるデータaの無効化を完了
する(ステップ6030)。一方、フラグLが設定され
ていなければ、データaのプロセッサルート133─j
が識別子を保持していた各プロセッサに対して、データ
aの無効化を要求する(ステップ6040)。
の連鎖的無効化要求を受け付ける(ステップ6000)
と、プロセッサ100─iのデイレクトリ130─iに
おいて、データaを無効化する(ステップ6010)。
次に、プロセッサ100─iにおいて、データaのデー
タレベル132─jにフラグLが設定されていたか否か
を判定(ステップ6020)し、設定されていれば、こ
のプロセッサのルートにおけるデータaの無効化を完了
する(ステップ6030)。一方、フラグLが設定され
ていなければ、データaのプロセッサルート133─j
が識別子を保持していた各プロセッサに対して、データ
aの無効化を要求する(ステップ6040)。
【0056】以上のようにして、共用データの連鎖的無
効化処理を、関連するプロセッサのみに限定して実行で
きる。また、共用データの連鎖的更新も、本実施例の無
効化処理と同様に実行できる。
効化処理を、関連するプロセッサのみに限定して実行で
きる。また、共用データの連鎖的更新も、本実施例の無
効化処理と同様に実行できる。
【0057】7.距離を考慮した共用データの参照処理 次に、図7のフローチャートを用いて、距離を考慮した
共用データ140の参照処理を説明する。
共用データ140の参照処理を説明する。
【0058】本実施例では、デイレクトリ130のデー
タレベル132─jには、デイレクトリ130を有する
プロセッサと参照を許可するプロセッサとの距離(言い
替えれば、プロセッサの階層の段数)を指定する。例え
ば、プロセッサ100─1内のデイレクトリ130のデ
ータaに対応するエントリのデータレベル132─jに
1が設定されているとき、データaは、プロセッサ10
0─1と距離1であるプロセッサ100─2とプロセッ
サ100─3のみによって参照可能であり、距離2以上
のプロセッサでは、参照できないことを示す。
タレベル132─jには、デイレクトリ130を有する
プロセッサと参照を許可するプロセッサとの距離(言い
替えれば、プロセッサの階層の段数)を指定する。例え
ば、プロセッサ100─1内のデイレクトリ130のデ
ータaに対応するエントリのデータレベル132─jに
1が設定されているとき、データaは、プロセッサ10
0─1と距離1であるプロセッサ100─2とプロセッ
サ100─3のみによって参照可能であり、距離2以上
のプロセッサでは、参照できないことを示す。
【0059】プロセッサ100─2がデータ名aの共用
データ140の参照を要求したとき(ステップ700
0)、データ名aの共用データ140がプロセッサ10
0─2のデイレクトリ130─2に登録されているか否
かを判定し(ステップ7010)、登録されていればメ
モリ110─2内の共用データ140を参照する(ステ
ップ7020)。
データ140の参照を要求したとき(ステップ700
0)、データ名aの共用データ140がプロセッサ10
0─2のデイレクトリ130─2に登録されているか否
かを判定し(ステップ7010)、登録されていればメ
モリ110─2内の共用データ140を参照する(ステ
ップ7020)。
【0060】一方、登録されていなければ、プロセッサ
100─2は、自身のプロセッサの識別子である’2’
とデータ名aとを格納したタグ200─5を、木構造に
おいて上位に存在するプロセッサ100─1に送る(ス
テップ7030)。プロセッサ100─1では、タグ2
00─2がデータ名を保持するデータaに対応するデイ
レクトリ130─1のエントリのデータレベル132─
jが、タグ200─2に登録されているプロセッサの識
別子の個数以上かを判定し(ステップ7040)、条件
を満足する場合には、プロセッサ100─1は、タグ2
00─2にデータa自身を付加したタグ200─6を、
タグ200─2に登録されているプロセッサ100─2
に送る(ステップ7050)。その結果、プロセッサ1
00─2は、デイレクトリ130─2にデータ名aの共
用データ140を登録し(ステップ7060)、データ
aを参照する(ステップ7020)。
100─2は、自身のプロセッサの識別子である’2’
とデータ名aとを格納したタグ200─5を、木構造に
おいて上位に存在するプロセッサ100─1に送る(ス
テップ7030)。プロセッサ100─1では、タグ2
00─2がデータ名を保持するデータaに対応するデイ
レクトリ130─1のエントリのデータレベル132─
jが、タグ200─2に登録されているプロセッサの識
別子の個数以上かを判定し(ステップ7040)、条件
を満足する場合には、プロセッサ100─1は、タグ2
00─2にデータa自身を付加したタグ200─6を、
タグ200─2に登録されているプロセッサ100─2
に送る(ステップ7050)。その結果、プロセッサ1
00─2は、デイレクトリ130─2にデータ名aの共
用データ140を登録し(ステップ7060)、データ
aを参照する(ステップ7020)。
【0061】一方、条件を満足しない場合には、プロセ
ッサ100─1は、プロセッサ100─2にデータaの
参照拒絶を通知する(ステップ7070)。その結果、
プロセッサ100─2では、データaの参照拒絶の処理
が実行される(ステップ7080)。
ッサ100─1は、プロセッサ100─2にデータaの
参照拒絶を通知する(ステップ7070)。その結果、
プロセッサ100─2では、データaの参照拒絶の処理
が実行される(ステップ7080)。
【0062】以上、プロセッサ100─2による距離を
考慮したデータ名aの共用データ140の参照要求の処
理を説明したが、他のプロセッサ100─iによる共用
データの参照要求も同様に処理される。
考慮したデータ名aの共用データ140の参照要求の処
理を説明したが、他のプロセッサ100─iによる共用
データの参照要求も同様に処理される。
【0063】以上のようにして、本実施例によれば、複
数のプロセッサが木構造に接続された計算機システムに
おいて、共用データの一貫性を維持するための共用デー
タの無効化方法を提供できる。
数のプロセッサが木構造に接続された計算機システムに
おいて、共用データの一貫性を維持するための共用デー
タの無効化方法を提供できる。
【0064】
【発明の効果】本発明によれば、複数のプロセッサが木
構造に接続された計算機システムにおいて、共用データ
の一貫性を維持するための共用データの無効化方法を提
供できる。
構造に接続された計算機システムにおいて、共用データ
の一貫性を維持するための共用データの無効化方法を提
供できる。
【図1】本発明の実施例が前提とする計算機システムの
構成図。
構成図。
【図2】本発明の実施例の共用データの管理構造図。
【図3】本発明の実施例の共用データの書き出し処理の
フローチャート。
フローチャート。
【図4】本発明の実施例の共用データの参照処理のフロ
ーチャート。
ーチャート。
【図5】本発明の実施例の共用データの更新処理のフロ
ーチャート。
ーチャート。
【図6】本発明の実施例の共用データの連鎖的無効化処
理のフローチャート。
理のフローチャート。
【図7】本発明の実施例の距離を考慮した共用データの
参照処理のフローチャート。
参照処理のフローチャート。
100:プロセッサ、110:メモリ、120:デイス
ク装置、130:デイレクトリ、140:共用データ、
200:タグ
ク装置、130:デイレクトリ、140:共用データ、
200:タグ
Claims (9)
- 【請求項1】複数のプロセッサが木構造に接続され、各
プロセッサに前記木構造における下位のプロセッサの共
用データが配置された計算機システムにおける共用デー
タの無効化方法であって、 第1のプロセッサにおける共用データの更新要求に応じ
て、前記共用データのコピーを保持するプロセッサの中
で最上位の第2のプロセッサの前記共用データを更新
し、 前記第2のプロセッサよりも下位のプロセッサが保持す
る前記共用データの更新前のコピーを前記木構造を介し
て連鎖的に無効化することを特徴とする計算機システム
における共用データの無効化方法。 - 【請求項2】各プロセッサ毎に前記共用データを保持す
る最上位のプロセッサか否かを識別するための最上位識
別子を有し、 第1のプロセッサにおける共用データの更新要求に応じ
て、前記最上位識別子を用いて、前記共用データのコピ
ーを保持するプロセッサの中で最上位の第2のプロセッ
サか否かを識別することを特徴とする請求項1に記載の
計算機システムにおける共用データの無効化方法。 - 【請求項3】各プロセッサ毎に前記共用データを保持す
る最下位のプロセッサか否かを識別するための最下位識
別子を有し、 前記第2のプロセッサよりも下位のプロセッサが保持す
る前記共用データの更新前のコピーを前記木構造を介し
て、前記最下位識別子が最下位を示すプロセッサまで連
鎖的に無効化することを特徴とする請求項1に記載の計
算機システムにおける共用データの無効化方法。 - 【請求項4】各プロセッサ毎に前記共用データを保持す
るプロセッサのルートを識別するためのルート識別子を
有し、 前記第2のプロセッサよりも下位のプロセッサが保持す
る前記共用データの更新前のコピーを前記木構造を介し
て、前記ルート識別子が示すプロセッサのルートにおい
て連鎖的に無効化することを特徴とする請求項1に記載
の計算機システムにおける共用データの無効化方法。 - 【請求項5】第3のプロセッサにおける共用データの書
き出し要求に応じて、前記第3のプロセッサが前記木構
造における最上位のプロセッサか否かを判定し、 前記プロセッサが最上位のプロセッサでないとき、前記
木構造における上位の第4のプロセッサに対して前記共
用データを書き出すとともに、前記共用データを前記第
3のプロセッサにおいて無効化し、 前記第3のプロセッサが最上位のプロセッサであると
き、前記第3のプロセッサに接続された入出力装置に対
して前記共用データを書き出すとともに、前記共用デー
タを前記木構造を介して全プロセッサにおいて連鎖的に
無効化することを特徴とする請求項1に記載の計算機シ
ステムにおける共用データの無効化方法。 - 【請求項6】複数のプロセッサが木構造に接続され、各
プロセッサに前記木構造における下位のプロセッサの共
用データが配置された計算機システムにおける共用デー
タの無効化方法であって、 第1のプロセッサにおける共用データの更新要求に応じ
て、前記共用データのコピーを保持するプロセッサの中
で最上位の第2のプロセッサの前記共用データを更新
し、 前記第2のプロセッサよりも下位のプロセッサが保持す
る前記共用データの更新前のコピーを前記木構造を介し
て連鎖的に更新することを特徴とする計算機システムに
おける共用データの無効化方法。 - 【請求項7】各プロセッサ毎に前記共用データを保持す
る最下位のプロセッサか否かを識別するための最下位識
別子を有し、 前記第2のプロセッサよりも下位のプロセッサが保持す
る前記共用データの更新前のコピーを前記木構造を介し
て、前記最下位識別子が最下位を示すプロセッサまで連
鎖的に更新することを特徴とする請求項6に記載の計算
機システムにおける共用データの無効化方法。 - 【請求項8】各プロセッサ毎に前記共用データを保持す
るプロセッサのル−トを識別するためのル−ト識別子を
有し、 前記第2のプロセッサよりも下位のプロセッサが保持す
る前記共用データの更新前のコピーを前記木構造を介し
て、前記ル−ト識別子が示すプロセッサのル−トにおい
て連鎖的に更新することを特徴とする請求項6に記載の
計算機システムにおける共用データの無効化方法。 - 【請求項9】複数のプロセッサが木構造に接続され、各
プロセッサに前記木構造における下位のプロセッサの共
用データが配置された計算機システムにおける共用デー
タの無効化方法であって、 第1のプロセッサにおける共用データの参照要求に応じ
て、前記第1のプロセッサと前記共用データのコピーを
保持する第2のプロセッサが所定の関係を満足するか否
かを判定し、 所定の関係を満足するとき、前記共用データの参照を許
可し、 所定の関係を満足しないとき、前記共用データの参照を
拒絶することを特徴とする計算機システムにおける共用
データの無効化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7263837A JPH09106373A (ja) | 1995-10-12 | 1995-10-12 | 計算機システムにおける共用データの無効化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7263837A JPH09106373A (ja) | 1995-10-12 | 1995-10-12 | 計算機システムにおける共用データの無効化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH09106373A true JPH09106373A (ja) | 1997-04-22 |
Family
ID=17394919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7263837A Pending JPH09106373A (ja) | 1995-10-12 | 1995-10-12 | 計算機システムにおける共用データの無効化方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH09106373A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007316956A (ja) * | 2006-05-25 | 2007-12-06 | Fujitsu Ltd | 通信インターフェース装置及び通信方法 |
-
1995
- 1995-10-12 JP JP7263837A patent/JPH09106373A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007316956A (ja) * | 2006-05-25 | 2007-12-06 | Fujitsu Ltd | 通信インターフェース装置及び通信方法 |
JP4696025B2 (ja) * | 2006-05-25 | 2011-06-08 | 富士通株式会社 | 計算処理システムおよびデータ更新方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0936555B1 (en) | Cache coherency protocol with independent implementation of optimised cache operations | |
US6199141B1 (en) | Method and apparatus for virtual memory mapping and transaction management in an object-oriented database system | |
JP2505939B2 (ja) | デ―タのキャストアウトを制御する方法 | |
US5822763A (en) | Cache coherence protocol for reducing the effects of false sharing in non-bus-based shared-memory multiprocessors | |
US7581025B2 (en) | System and method for synchronizing copies of data in a computer system | |
US6240413B1 (en) | Fine-grained consistency mechanism for optimistic concurrency control using lock groups | |
US5537574A (en) | Sysplex shared data coherency method | |
US6938128B1 (en) | System and method for reducing memory latency during read requests | |
AU749592B2 (en) | I/O forwarding in a cache coherent shared disk computer system | |
JPH04268649A (ja) | メモリへのデータブロックのエントリを制御する方法 | |
JPH10240589A (ja) | 実データ遅延取出しを行うデータベース処理方法 | |
CN1534487A (zh) | 高速缓存分配 | |
JPS5849945B2 (ja) | バツフア合せ方式 | |
JP2000250812A (ja) | メモリ・キャッシュ・システムおよびその管理方法 | |
US6934813B1 (en) | System and method for caching data based on identity of requestor | |
JPH08235061A (ja) | マルチプロセッサ・データ処理システム | |
US6334172B1 (en) | Cache coherency protocol with tagged state for modified values | |
JP2614400B2 (ja) | データ転送方法及び装置 | |
JP2004531005A (ja) | データベースへのアクセスを制御するための異なったデータベースサーバ間のデータベースのオーナーシップのパーティション化 | |
JP2746530B2 (ja) | 共有メモリマルチプロセッサ | |
US20040098561A1 (en) | Multi-processor system and method of accessing data therein | |
US6247098B1 (en) | Cache coherency protocol with selectively implemented tagged state | |
US9063858B2 (en) | Multi-core system and method for data consistency by memory mapping address (ADB) to hash table pattern associated with at least one core | |
JPH09106373A (ja) | 計算機システムにおける共用データの無効化方法 | |
EP0392184A2 (en) | Hierarchical memory organization |