JPH06222968A - 複製オブジェクトの書込みロックの移動 - Google Patents

複製オブジェクトの書込みロックの移動

Info

Publication number
JPH06222968A
JPH06222968A JP5240012A JP24001293A JPH06222968A JP H06222968 A JPH06222968 A JP H06222968A JP 5240012 A JP5240012 A JP 5240012A JP 24001293 A JP24001293 A JP 24001293A JP H06222968 A JPH06222968 A JP H06222968A
Authority
JP
Japan
Prior art keywords
shadow
replica
write lock
master
copy
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
JP5240012A
Other languages
English (en)
Other versions
JP2549252B2 (ja
Inventor
Hari H Madduri
ハリ・ハラナス・マダリ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH06222968A publication Critical patent/JPH06222968A/ja
Application granted granted Critical
Publication of JP2549252B2 publication Critical patent/JP2549252B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】 複数アドレス空間における複製データ・オブ
ジェクトの更新スピードを改良すること。 【構成】 データ・オブジェクトの更新に必要な準備の
後、陰影複製が、現在書込みロックを保持する複製か
ら、或いはマスタ複製として指定される複製から、書込
みロックを要求する。書込みロックが、要求を発した陰
影複製に転送されて、この陰影複製は自身の更新を実行
する。この更新は次にローカル・システム・ディスプレ
イに反映され、ユーザに対して可視的フィードバックを
提供する。更に、この更新は他の複製にも伝搬されて、
それぞれの関連ディスプレイにおいて変更が表示され
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は一般に複製データに関
し、特に、メモリ内の複数の複製データ・オブジェクト
間における書込みロックの移動に関する。
【0002】
【従来の技術】分散環境における複数のデータ処理シス
テムを、ネットワークを介して結合することが急速に普
及しつつある。ピア・ツー・ピア(peer-to-peer)の関
係において構築される分散アプリケーションにおいて
は、システムは任意の機能を実行するように協力する。
この協力は、良好な対話性能を発揮するために、データ
・オブジェクトの複数のコピーを共用することを必要と
する。任意のアプリケーションからの1つ或いは複数の
共用ディスク・ファイルを介する協力が、良好な応答時
間を保証するのに受容不能なほど遅い場合、データ・オ
ブジェクトは複数のアドレス空間において複製される。
ネットワーク内の分散システムにおいて、データ・オブ
ジェクトの複製は、いくつかのデータ処理システムのメ
モリ内において見い出すことができる。各システムにお
けるデータが現在のものであり、完全であることを保証
するために、全ての複製に渡りデータを管理する方法が
提供されねばならない。従来技術の1つに、1次コピー
或いはマスタ・コピーを使用する方法があり、この場
合、マスタ・コピーが最初に更新され、他の全てのコピ
ーはそれに同期される。特に分散システムにおける対話
式アプリケーションにおいて、全てのコピーが更新され
るまで、ローカル・ディスプレイ上におけるユーザへの
フィードバックを遅延することは、非現実的なものとな
る。
【0003】複製データ・オブジェクトは、複数のメモ
リにおいて物理的に複製されるデータの論理単位であ
る。各メモリは一般に、ネットワークに接続される個々
のデータ処理システムの主メモリである。複製データ・
オブジェクトはいくつかの物理的ロケーション内に存在
するにもかかわらず、そのデータ・オブジェクトの単一
のコピーのように振る舞う。単一のコピーの様に振る舞
うということは、すなわち、いずれかの複製が更新され
ると、他の全ての複製もまた更新されることを意味す
る。いずれか1つの局所複製を読出すことにより、任意
のプロセッサは、離れたロケーションに存在する同一の
複製内のデータを知ることができる。複製がオブジェク
ト指向のプログラムにおいて結合される場合、システム
は同一データを含むだけでなく、論理的にも等価な複数
の複製を有することができる。
【0004】本発明は、複数のアドレス空間において、
複製データ・オブジェクトを更新する改良された手段を
提案する。
【0005】
【発明が解決しようとする課題】従って、本発明の目的
は、複数アドレス空間における複製データ・オブジェク
トの更新スピードを改良することである。
【0006】本発明の別の目的は、複製データ・オブジ
ェクトに対する変更が最初に導入されるデータ処理シス
テムにおける、当該複製データ・オブジェクトの変更の
表示をスピード・アップすることである。
【0007】
【課題を解決するための手段】これらの目的が、データ
・オブジェクトの複製間を移動する書込みロックにより
達成される。本発明は、少なくとも1つのプロセッサ及
びメモリを有するデータ処理システムにおいて使用され
るが、好適には、共通データ・オブジェクトの複数の複
製が複数のアドレス空間に存在する、分散データ処理シ
ステムにおいて使用される。データ・オブジェクトを更
新するために必要な準備の後、陰影複製が、現在書込み
ロックを保持する複製から、或いはマスタ複製として指
定される複製から、書込みロックを要求する。書込みロ
ックは要求を発する陰影複製に移動され、これはそれ自
身の更新を実行する。更新は次にローカル・システム・
ディスプレイに反映されて、ユーザに可視的フィードバ
ックを提供する。更新は他の複製にも伝搬されて、関連
するディスプレイにおいても変更が表示される。
【0008】実施例では、書込みロックは、次の更新を
受信する可能性の最も高い、最後に書込みロックを要求
した複製に保持される。本発明のいくつかの実施例で
は、書込みロックがマスタ複製から要求された後、マス
タ複製は自身が書込みロックを有するかどうかを判断す
る。有さない場合、そのマスタは書込みロックを保持す
る陰影複製からの書込みロックの返却を要求する。書込
みロックを保持する陰影複製はマスタに対し、書込みロ
ックと同様に、現行処理された新たな更新を返却する。
マスタ複製は、2番目の更新を種々のアドレス空間にお
ける複数の複製に伝搬し、書込みロックを最後に要求を
発した複製に提供する。他の実施例では、マスタ複製が
書込みロックの足跡を保持する。書込みロックを要求す
る陰影は、マスタ複製に対し、複数の複製の内のどれが
現在書込みロックを保持しているかを問合わせ、保持す
る複製に対して依頼する。
【0009】本発明は分散データ処理システム環境にお
いて特定のアプリケーションを見い出すが、別のメモリ
区分内に複数の複製を有する単一のプロセッサにおいて
も使用できる。
【0010】
【実施例】本発明は、多数の異なるオペレーティング・
システム下に置かれる様々なコンピュータ或いはコンピ
ュータの集合において実行される。コンピュータは例え
ばパーソナル・コンピュータ、ミニ・コンピュータ、或
いはメインフレーム・コンピュータなどである。しかし
ながら、好適には複数のコンピュータはローカル・エリ
ア・ネットワーク、ワイド・エリア・ネットワーク、或
いは大規模遠隔処理システムなどのネットワークの一部
として使用される。コンピュータの特定の選択は、ディ
スク及びディスク記憶装置の要求によってのみ限定され
るが、IBMPS/2シリーズのコンピュータは本発明
により体系化される。IBMのPS/2シリーズ・コン
ピュータに関する情報については、Techinical Referen
ceManual Personal System/2 Model 50、60 Systems IB
M Corporation(Part No.68X2224 Order Number S68X-
2224)、並びにTechinical Reference ManualPersonal
System/2(Model 80)IBM Corporation(Part No.68X2
256 OrderNumber S68X-2254)を参照されたい。IBM
PS/2パーソナル・コンピュータが実行する1つの
オペレーティング・システムとして、IBMのOS/2
2.0があり、これについてはIBM OS/2 2.0 Operat
ing SystemのOS/2 Techinical Library、Programming Guide Vo.1、2、3
Version 2.00(Ordernos.10G6261、10G6495、10G649
4)を参照されたい。
【0011】別な例として、コンピュータ・システムが
AIX(TM)オペレーティング・システム上で動作す
るIBM RISC System/6000(TM)ラインのコンピュータの
場合が挙げられる。RISC System/6000の様々なモデルが
IBMからの多くの発行書に述べられており、これらに
は、例えばRISC System/6000、7073 and 7016 POWERstation and POWERserver Hardware Technical Re
ference(Order No.SA23-2644-00)がある。
【0012】AIXオペレーティング・システムは、Ge
neral Concepts and Procedure--AIX Version 3 for RI
SC System/6000(Order No.SC23-2202-00)、並びにI
BM社からの他の発行書に述べられている。
【0013】図1に、システム・ユニット11、キーボ
ード12、マウス13、及びディスプレイ14を含むコ
ンピュータ10が示されている。表示装置14の画面1
6はデータ・オブジェクトの可視的変更を表示するため
に使用される。オペレーティング・システムによりサポ
ートされるグラフィカル・ユーザ・インタフェースによ
り、ユーザは"ポイント・アンド・シュート"入力方法を
使用して、ポインタ15を画面16上の特定のロケーシ
ョンに存在するデータ・オブジェクトを表すアイコンに
移動し、マウス・ボタンの1つを押すことにより、ユー
ザ・コマンドの選択を実行する。選択されたデータ・オ
ブジェクトがウィンドウ上に現れ、ウィンドウ上にはそ
のオブジェクトの任意の数の選択画面が表示される。
【0014】図2は図1に示されるマルチメディア・パ
ーソナル・コンピュータのコンポーネントのブロック図
を示す。システム・ユニット11はシステム・バス21
を含み、これには様々なコンポーネントが結合され、ま
たコンピュータのバスを介して、種々のコンポーネント
間の通信が実行される。マイクロプロセッサ22がシス
テム・バス21に接続され、同様にシステム・バス21
に接続される読出し専用メモリ(ROM)23、及びラ
ンダム・アクセス・メモリ(RAM)24によりサポー
トされる。IBMマルチメディアPS/2シリーズのコ
ンピュータ内で使用されるマイクロプロセッサは、イン
テル・ファミリのマイクロプロセッサであり、これらに
は386マイクロプロセッサ或いは486マイクロプロ
セッサが含まれるが、他のマイクロプロセッサ、例えば
モトローラ社の68000、68020或いは6803
0マイクロプロセッサなどのマイクロプロセッサ・ファ
ミリ、並びにIBM、ヒューレット・パッカード、サ
ン、インテル、モトローラなどにより製造される様々な
縮小命令セット・コンピュータ(RISC)型マイクロ
プロセッサなどが、特定のコンピュータにおいて使用さ
れる。
【0015】ROM23は他のコードのほかに、対話及
びディスク・ドライブ並びにキーボードなどの基本的ハ
ードウェア・オペレーションを制御する基本入出力シス
テム(BIOS)を含む。RAM24は主メモリであ
り、オペレーティング・システム及びマルチメディア・
アプリケーション・プログラムがロードされる。メモリ
管理チップ25はシステム・バス21に接続されて、直
接メモリ・アクセス・オペレーションを制御する。すな
わち、RAM24とハード・ディスク・ドライブ26
間、及びフロッピ・ディスク・ドライブ27間のデータ
転送が制御される。CD ROM32もまたシステム・
バス21に接続されて、マルチメディア・プログラム或
いはプレゼンテーション内に存在する大量データを記憶
するために使用される。
【0016】システム・バス21には更に様々なI/O
制御装置が接続され、これらにはキーボード制御装置2
8、マウス制御装置29、ビデオ制御装置30、及びオ
ーディオ制御装置31などが含まれる。キーボード制御
装置28はキーボード12のハードウェア・インタフェ
ースを提供し、マウス制御装置29はマウス13のハー
ドウェア・インタフェースを提供し、ビデオ制御装置3
0はディスプレイ14のハードウェア・インタフェース
を提供し、オーディオ制御装置31はスピーカ15A及
び15Bのハードウェア・インタフェースを提供する。
システム・バス21には更にデジタル信号プロセッサ3
3が接続され、これはスピーカ・システムにより生成さ
れる音声を修正し、好適にはオーディオ制御装置31内
に組込まれる。スピーカ15A及び15Bは、オーディ
オ・オブジェクトをユーザに提供するために使用され
る。最後に、トークン・リング・アダプタなどのI/O
制御装置40がシステム・バスに接続されて、このシス
テムをローカル・エリア・ネットワーク106に接続す
る。
【0017】図3は本発明が使用される分散的共同環境
を表す。3つのデータ処理システム100、102及び
104が、ネットワーク106に接続されて示されてい
る。これらのシステムは任意のベンダから提供されるデ
ータ処理システムであるが、好適にはIBM社の製品で
ある。ネットワーク106はイーサネット或いはPCN
etであるが、好適にはIBMトークン・リングであ
る。この図では、各システムはディスプレイ及びメモリ
を有するように示されており、複製データ・オブジェク
トを共用する。第1のシステム100では、ディスプレ
イ108はメモリ114内に存在するデータ・オブジェ
クト120の円グラフを示す。第2のシステム102で
は、ディスプレイ110はメモリ116内に存在するデ
ータ・オブジェクト120の表を示す。第3のシステム
104では、ディスプレイ112はメモリ118内に存
在するデータ・オブジェクト120の棒グラフを示す。
後の説明のために、第1のコンピュータ・システム10
0におけるデータ・オブジェクトがマスタ複製であり、
第2及び第3のシステム102、104におけるデータ
・オブジェクトが、それぞれ第1及び第2の陰影複製で
あるものとする。図3に表される実施例は、本発明がネ
ットワークに接続される3つの別々のプロセッサ上で機
能する場合を示すが、任意の数のプロセッサをネットワ
ークに接続することが可能である。本発明の別の実施例
では、単一のプロセッサ上の3つの異なるメモリ区分内
で機能する3つの別々のプロセスが、プロセス間通信機
能により結合される。
【0018】図4は、更新を実行するために陰影複製に
おいて発信される書込みロック要求の実施例の流れ図を
示す。例えば、第2のシステム102(図3)上の第1
の陰影120' が更新の実行を要望するものとする。状
態がデータの追加/消去/変更により変更される。例え
ば、テキスト・オブジェクト(これは文書のグループ・
エディタにより使用される)では、更新内容として、単
語の追加、単語の消去、或いは単語の変更がある。陰影
複製を更新するための要求により、処理がステップ15
0で開始される。陰影が既に書込みロックを有するかを
判断するためのテストが、ステップ152で実行され
る。有する場合には、ステップ160で更新処理が開始
される。一方、有さない場合には、ステップ154にお
いて、陰影複製がマスタ複製に書込みロック要求を送信
する。図4の流れ図において、書込みロックが当初、マ
スタ複製により保持されているものと仮定する。従っ
て、次にステップ156において、書込みロックがマス
タにより第1の陰影複製に提供される。ステップ158
において第1の陰影は、第1の陰影が現在書込みロック
を有することを通知するメッセージを受信する。ステッ
プ160では、図5に示される更新処理が開始される。
更新処理の終了後、ステップ162において要求を発し
た陰影、すなわちこの場合には第1の陰影が書込みロッ
クを保持する。実施例では、システム性能を改良するた
めに、書込みロックを要求した最後の陰影、或いは更新
を実行した最後の陰影が書込みロックを保持する。ここ
でデータ・オブジェクトに対する更新が、単一の孤立し
た更新としてではなく、むしろグループとして実行され
ることの方が一般的である。従って、書込みロックをマ
スタに返却し、再度それを要求するよりも、次に更新を
実行する可能性が最も高い、最後に要求を発した陰影が
書込みロックを保持することにより、システム性能が改
良される。
【0019】マスタは各陰影複製がネットワーク内にお
いて配置される場所を追跡する。どの複製がマスタであ
るかを設定し、マスタに陰影を登録する1つの方法が、
米国特許第09/61750号"Determining the Winne
r of a Race in a Distributed System"で述べられている。
【0020】図5は、本発明による書込みロックを保持
する陰影複製における更新手順を示す。局所陰影複製が
更新される時に、処理がステップ180で開始される。
次にステップ182で、局所陰影複製を有するシステム
において、更新を反映するために表示がリフレッシュさ
れる。この場合、システム102のディスプレイ110
上に示される表がリフレッシュされる(図3)。次にス
テップ184において、更新を実行した陰影120'
は、第1のシステム100のマスタ複製に新たな更新情
報を送信する。マスタはステップ186において更新を
受信し、ステップ187でこの更新をマスタ複製に提供
する。ディスプレイすなわちこの場合にはデータ・オブ
ジェクトのパイ画面が、マスタ複製120(図3)を保
持するシステム100においてリフレッシュされる。マ
スタ複製はステップ190において、存在する他の陰影
複製に対しても更新を伝搬する。本説明においては、マ
スタは更新を第3のシステム104(図3)上の第2の
陰影120''に送信するものとする。ステップ192に
おいて、第2の陰影複製が更新を適用し、データ・オブ
ジェクトに対する変更を反映するために、棒グラフ11
2表示をリフレッシュする。
【0021】図6及び図7は、別の陰影複製が書込みロ
ックを保持する時に、第2の陰影複製において発信され
る書込みロック要求の流れ図を示す。処理はステップ2
00において、第2の陰影複製を更新する要求により開
始される。第2の陰影が書込みロックを有するかを判断
するためのテストが、ステップ202で実行される。有
さない場合には、ステップ204でロック要求がマスタ
に送信される。ステップ206において、マスタは自身
が書込みロックを有するかどうかを判断する。有さない
場合、ステップ208において、マスタは図9に示され
るロック・データ構造を参照して、どの陰影が書込みロ
ックを有するかを判断する。マスタはステップ210
で、書込みロックを有する陰影複製に対し、書込みロッ
クをマスタに解放するように依頼する。その陰影はステ
ップ212で書込みロックを解放するが、ステップ21
4で、データ・オブジェクトに対する新たな更新の最中
であるかを判断する。もしそうであれば、この陰影はス
テップ216において、局所複製に対する更新を終了す
る。
【0022】処理は図7に継続する。ステップ218に
おいて、陰影複製はマスタ複製に対して、書込みロック
及び新たな更新を返却する。マスタはステップ220に
おいて、ロック並びに新たな更新を受信する。次にステ
ップ222で、マスタは新たな更新が存在するかを判断
し存在する場合には、ステップ224で、新たな更新が
マスタ複製に提供され、マスタ複製に関連するディスプ
レイがリフレッシュされる。次にステップ226で、新
たな更新が他の陰影に伝搬され、そこで更新が実行され
て、ローカル・ディスプレイがリフレッシュされる。ロ
ックはステップ228で、マスタ複製により第2の陰影
に提供される。第2の陰影複製に対し、それが書込みロ
ックを有することを伝える応答メッセージが、ステップ
230で送信される。この応答はまた、第2の陰影をマ
スタに同期させるのに必要な更新を含む。次にステップ
232で、図5に示される更新手順が開始される。本発
明の実施例によれば、第2の陰影はステップ234にお
いて書込みロックを保持する。なぜなら、第2の陰影が
次の更新を実行する可能性が最も高いからである。
【0023】図8は、ユーザ・プログラムから局所複製
に対する読出し要求のフル・ダイアグラムを示す。処理
はステップ250において、ユーザ・プログラムからの
ウィンドウ再作成要求により開始される。なぜなら、ユ
ーザは例えば、局所複製コピーの画面を表示するウィン
ドウを移動するように決めたりするからである。本発明
は連続的に全ての複製を更新するため、局所複製は全て
の更新に関して最新の状態を維持するものと仮定する。
従ってステップ252で、ユーザ・プログラムが局所陰
影複製或いはマスタ複製をアクセスする場合、データ・
オブジェクトの最も最近のバージョンを獲得することが
比較的保証される。ステップ256において、ユーザ・
プログラムは要求情報に対応する局所陰影複製或いはマ
スタ複製を読出し、画面表示をリフレッシュする。局所
複製に変更が発生していない場合には、システムを通じ
て更新が伝搬される必要はない。
【0024】図9は一般的な書込みロック260のコピ
ーを示す。マスタ及び陰影の両者とも、図9に示される
ロック・データ構造を保持する。書込みロックは3つの
フィールドから構成され、第1のフィールド261は書
込みロックの状態を、第2のフィールド262はロック
の所有者を、第3のフィールド263はロックの現在の
保持者をそれぞれ含む。実施例におけるロックの所有者
は、常にマスタ複製である。しかしながら、同一の複製
が常時、指定されたマスタ複製でなくてもよい。一般的
に、マスタ複製はネットワークに最初に導入されるシス
テムにおける複製である。ロックの保持者は現在進行中
であり、ネットワーク上で実行中のマスタ複製或いは陰
影複製のいずれかである。
【0025】図9はまた、書込みロック・データ構造の
3つの特定の実施例を示す。第1の実施例は、書込みロ
ックが陰影1に提供された後のマスタのロック・データ
構造266を示し、ロックの状態267は"ここには存
在しない"となる。また、ロックの所有者268は"自
身"であり、ロックの保持者269は"陰影1"である。
第2の実施例は、ロックを獲得した後の陰影1のロック
・データ構造270を示す。ここではロックの状態27
1は"フリー"であり、ロックの所有者272は "マス
タ" であり、ロックの保持者273は"自身"である。第
3の実施例は、局所更新が進行中の陰影1のロック・デ
ータ構造276を示す。ここではロックの状態277
は"ビジー"であり、所有者278は"マスタ"であり、ロ
ックの保持者279は"自身"である。
【0026】図10は本発明による書込みロック要求の
別の実施例の流れ図である。ステップ280における陰
影複製に対する更新要求に応答して、ローカル・システ
ムはステップ282で、その陰影複製が書込みロックを
有するかを判断する。その陰影複製が書込みロックを所
持しないと判断されると、ローカル・システムはステッ
プ284で、マスタ複製からロック保持者である複製の
名前を要求する。マスタ複製はステップ286で、ロッ
ク保持複製の識別を含むメッセージを要求を発した陰影
複製に返却する。次にステップ288において、陰影複
製は、現在書込みロックを保持する複製から書込みロッ
クを要求する。ステップ290では、ロックを保持する
陰影複製が書込みロックを解放する。この陰影複製は必
要に応じて更新を完了した後、ステップ291におい
て、書込みロック並びに新たな更新を要求を発した陰影
複製に転送する。ステップ292において、要求を発し
た陰影複製は、新たな更新が存在すればこれを適用し、
ローカル・ディスプレイをリフレッシュする。次にステ
ップ293において、陰影はメッセージをマスタに転送
し、新たなロック保持複製並びに新たな更新(存在する
場合)を通知する。マスタはステップ294で新たな更
新を適用し、ステップ295でその新たな更新を伝搬す
る。次にステップ296で、図5に示される更新処理が
要求を発した陰影において開始される。新たなロック保
持者は次の更新を要求する可能性の最も高い複製である
ため、ステップ298において、書込みロックを保持す
る。
【0027】上述の実施例は単一のデータ・オブジェク
トに関して述べられてきたが、本発明は複数のデータ・
オブジェクトが更新される場合においても対応可能であ
る。また、分散環境における異なるシステムが、異なる
データ・オブジェクトのマスタ複製を保持することも可
能である。1つの状況が図11に示されており、ここで
は共通オブジェクトに関する3つの異なるアプリケーシ
ョンの表示が表されている。第1のウィンドウ300は
マーケット・シェア・アプリケーションに対応し、第2
のウィンドウ302は財政見通しアプリケーションに対
応し、第3のウィンドウ304は研究開発(R&D)支
出アプリケーションに対応する。ここでマーケット・シ
ェア・ウィンドウ300が最初に現れ、財政見通しウィ
ンドウ302が第2に現れ、R&D支出ウィンドウ30
4が最後に現れるものと仮定すると、いくつかの観察が
可能となる。マーケット・シェア・ウィンドウ300
は、販売予測データ・オブジェクト305とマーケット
・シェア・データ・オブジェクト306の両方を含み、
後者は財政見通しウィンドウ302でも共用される。マ
ーケット・シェア・ウィンドウ300が最初に現れるた
め、マーケット・シェア・データ・オブジェクト306
がマスタであり、マーケット・シェア・データ・オブジ
ェクト306' が陰影である。同様に、財政見通しウィ
ンドウ302に示される歳入プロジェクト・データ・オ
ブジェクト307がマスタであり、これはR&D支出ウ
ィンドウ304の歳入プロジェクト・データ・オブジェ
クトより以前に現れる。このように、データ・オブジェ
クトのマスタ・コピーが、異なるマシンにより保持され
ることが可能である。また、財政見通しウィンドウ30
2が最初に現れる場合には、これは両方のマスタ複製を
含むことになる。
【0028】
【発明の効果】以上説明したように、本発明によれば、
複数アドレス空間において、複製データ・オブジェクト
を更新する改良された方法が提供される。
【図面の簡単な説明】
【図1】システム・ユニット、キーボード、マウス、及
びディスプレイを含むコンピュータを示す図である。
【図2】図1に示されるパーソナル・コンピュータのコ
ンポーネントのブロック図である。
【図3】本発明が実施される一般的なネットワーク・ア
ーキテクチャを示す図である。
【図4】本発明による陰影複製において発信される書込
みロック要求の一実施例の流れ図である。
【図5】本発明による書込みロックを有する陰影複製に
おける更新手順の流れ図である。
【図6】第1の陰影複製が書込みロックを保持する時
に、第2の陰影複製において発信される書込みロック要
求の流れ図である。
【図7】第1の陰影複製が書込みロックを保持する時
に、第2の陰影複製において発信される書込みロック要
求の流れ図である。
【図8】ウィンドウ再作成要求に応答する局所陰影複製
における読出しオペレーションの流れ図である。
【図9】一般的な書込みロックデータ構造、及びマスタ
複製及び陰影複製に対応する書込みロックデータ構造を
示す図である。
【図10】書込みロック要求の第2の実施例の流れ図で
ある。
【図11】本発明により、複数のデータ・オブジェクト
がそれらのデータを更新する実施例を表す図である。
【符号の説明】
11 システム・ユニット 12 キーボード 13 マウス 14 ディスプレイ 21 システム・バス 22 マイクロプロセッサ 23 読出し専用メモリ(ROM) 24 ランダム・アクセス・メモリ(RAM) 25 メモリ管理チップ 26 ハード・ディスク・ドライブ 27 フロッピ・ディスク・ドライブ 32 CD ROM 28 キーボード制御装置 29 マウス制御装置 30 ビデオ制御装置 31 オーディオ制御装置 33 デジタル信号プロセッサ 40 I/O制御装置 106 ローカル・エリア・ネットワーク 120 データ・オブジェクト 112 棒グラフ 260 書込みロック 266、270、276 ロック・データ構造 267、277 ロックの状態 268、278 ロック所有者 269、279 ロック保持者 300 マーケット・シェア・ウィンドウ 302 財政見通しウィンドウ 304 R&D支出ウィンドウ 305 販売予測データ・オブジェクト 306 マーケット・シェア・データ・オブジェクト 307 歳入プロジェクト・データ・オブジェクト

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】共通データ・オブジェクトの複数の複製が
    存在するデータ処理システムにおいて、複数の複製を更
    新する方法であって、 上記システム内の第1のメモリ区画内に存在し且つ現在
    書込みロックを保持する第1の複製から書込みロックを
    要求するステップと、 上記書込みロックを、上記システム内の第2のメモリ区
    画内に存在する第2の複製に転送するステップと、 上記第2の複製の更新を実行するステップと、 少なくとも1つの複製における更新を反映するように、
    上記システムの表示をリフレッシュするステップと、 上記更新を上記複数の複製に伝搬するステップとを備え
    る方法。
  2. 【請求項2】共通データ・オブジェクトの複数の複製が
    存在するデータ処理システムであって、 少なくとも1つのメモリ内の第1及び第2のメモリ区分
    と、 それぞれ上記第1及び第2のメモリ区分内に存在する第
    1及び第2の複製と、 現在書込みロックを保持する第1の複製から書込みロッ
    クを要求する手段と、 上記書込みロックを第2の複製に転送する手段と、 上記第2の複製の更新を実行する手段と、 上記更新を上記複数の複製に伝搬する手段と、 少なくとも1つの複製における更新を反映するように、
    上記システムの表示をリフレッシュする手段とを備える
    データ処理システム。
JP5240012A 1992-10-16 1993-09-27 複製オブジェクトの書込みロックの移動 Expired - Fee Related JP2549252B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US961757 1992-10-16
US07/961,757 US5418966A (en) 1992-10-16 1992-10-16 Updating replicated objects in a plurality of memory partitions

Publications (2)

Publication Number Publication Date
JPH06222968A true JPH06222968A (ja) 1994-08-12
JP2549252B2 JP2549252B2 (ja) 1996-10-30

Family

ID=25504952

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5240012A Expired - Fee Related JP2549252B2 (ja) 1992-10-16 1993-09-27 複製オブジェクトの書込みロックの移動

Country Status (2)

Country Link
US (2) US5418966A (ja)
JP (1) JP2549252B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7409389B2 (en) 2003-04-29 2008-08-05 International Business Machines Corporation Managing access to objects of a computing environment

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5418966A (en) * 1992-10-16 1995-05-23 International Business Machines Corporation Updating replicated objects in a plurality of memory partitions
JP2703498B2 (ja) * 1993-04-30 1998-01-26 インターナショナル・ビジネス・マシーンズ・コーポレイション バージョン化オブジェクトに対するロッキング機構
US5526524A (en) * 1993-12-23 1996-06-11 International Business Machines Corporation Method and system for management of locked objects in a computer supported cooperative work environment
US5884308A (en) * 1994-04-21 1999-03-16 British Telecommunications Public Limited Company Updating distributed data files using active token distributed at different times to different sites
US5619656A (en) 1994-05-05 1997-04-08 Openservice, Inc. System for uninterruptively displaying only relevant and non-redundant alert message of the highest severity for specific condition associated with group of computers being managed
JP2580536B2 (ja) * 1994-06-02 1997-02-12 工業技術院長 オブジェクト指向言語における動的オブジェクトの管理方式
US5832487A (en) * 1994-12-15 1998-11-03 Novell, Inc. Replicated object identification in a partitioned hierarchy
US5608903A (en) * 1994-12-15 1997-03-04 Novell, Inc. Method and apparatus for moving subtrees in a distributed network directory
US5892954A (en) * 1995-07-07 1999-04-06 Sun Microsystems, Inc. Method and apparatus for refreshing file locks to minimize conflicting accesses to data files
US6041383A (en) * 1996-07-22 2000-03-21 Cabletron Systems, Inc. Establishing control of lock token for shared objects upon approval messages from all other processes
US5917998A (en) * 1996-07-26 1999-06-29 International Business Machines Corporation Method and apparatus for establishing and maintaining the status of membership sets used in mirrored read and write input/output without logging
US6014667A (en) * 1997-10-01 2000-01-11 Novell, Inc. System and method for caching identification and location information in a computer network
US7930278B2 (en) * 1998-02-13 2011-04-19 Oracle International Corporation Methods to perform disk writes in a distributed shared disk system needing consistency across failures
US7200623B2 (en) 1998-11-24 2007-04-03 Oracle International Corp. Methods to perform disk writes in a distributed shared disk system needing consistency across failures
US7162689B2 (en) 1998-05-28 2007-01-09 Oracle International Corporation Schema evolution in replication
US6532479B2 (en) * 1998-05-28 2003-03-11 Oracle Corp. Data replication for front office automation
US6529904B1 (en) 1998-05-28 2003-03-04 Oracle Corp. Deployment of snapshots with parameterized data description language strings
US6792540B1 (en) 1998-05-28 2004-09-14 Oracle International Corporation Data replication security
US6324544B1 (en) * 1998-10-21 2001-11-27 Microsoft Corporation File object synchronization between a desktop computer and a mobile device
US6605732B1 (en) * 1999-05-03 2003-08-12 Aerojet Fine Chemicals Llc Clean, high-yield preparation of S,S and R,S amino acid isosteres
US7596563B1 (en) * 1999-10-28 2009-09-29 Hewlett-Packard Development Company, L.P. Computerized file system and method
US6505200B1 (en) * 2000-07-06 2003-01-07 International Business Machines Corporation Application-independent data synchronization technique
US20050091666A1 (en) * 2000-08-14 2005-04-28 Transvirtual Technologies, Inc. Portable operating environment for information devices
US20040019640A1 (en) * 2002-07-25 2004-01-29 Bartram Linda Ruth System and method for distributing shared storage for collaboration across multiple devices
US7739240B2 (en) * 2002-12-09 2010-06-15 Hewlett-Packard Development Company, L.P. Replication and replica management in a wide area file system
US7849452B2 (en) * 2004-04-23 2010-12-07 Waratek Pty Ltd. Modification of computer applications at load time for distributed execution
US7844665B2 (en) * 2004-04-23 2010-11-30 Waratek Pty Ltd. Modified computer architecture having coordinated deletion of corresponding replicated memory locations among plural computers
US20050262513A1 (en) * 2004-04-23 2005-11-24 Waratek Pty Limited Modified computer architecture with initialization of objects
US20060095483A1 (en) * 2004-04-23 2006-05-04 Waratek Pty Limited Modified computer architecture with finalization of objects
US7707179B2 (en) * 2004-04-23 2010-04-27 Waratek Pty Limited Multiple computer architecture with synchronization
US20050257219A1 (en) * 2004-04-23 2005-11-17 Holt John M Multiple computer architecture with replicated memory fields
US8090806B1 (en) 2004-06-10 2012-01-03 Cisco Technology, Inc. Two-stage network device configuration process
US7779404B2 (en) * 2004-06-10 2010-08-17 Cisco Technology, Inc. Managing network device configuration using versioning and partitioning
US8028299B2 (en) * 2005-04-21 2011-09-27 Waratek Pty, Ltd. Computer architecture and method of operation for multi-computer distributed processing with finalization of objects
US7958322B2 (en) * 2005-10-25 2011-06-07 Waratek Pty Ltd Multiple machine architecture with overhead reduction
US7849369B2 (en) * 2005-10-25 2010-12-07 Waratek Pty Ltd. Failure resistant multiple computer system and method
US7660960B2 (en) 2005-10-25 2010-02-09 Waratek Pty, Ltd. Modified machine architecture with partial memory updating
US20070100828A1 (en) * 2005-10-25 2007-05-03 Holt John M Modified machine architecture with machine redundancy
US7761670B2 (en) * 2005-10-25 2010-07-20 Waratek Pty Limited Modified machine architecture with advanced synchronization
US8015236B2 (en) * 2005-10-25 2011-09-06 Waratek Pty. Ltd. Replication of objects having non-primitive fields, especially addresses
US20080126572A1 (en) * 2006-10-05 2008-05-29 Holt John M Multi-path switching networks
WO2008040066A1 (en) * 2006-10-05 2008-04-10 Waratek Pty Limited Redundant multiple computer architecture
US20080140801A1 (en) * 2006-10-05 2008-06-12 Holt John M Multiple computer system with dual mode redundancy architecture
US7958329B2 (en) * 2006-10-05 2011-06-07 Waratek Pty Ltd Hybrid replicated shared memory
US20080114853A1 (en) * 2006-10-05 2008-05-15 Holt John M Network protocol for network communications
WO2008040080A1 (en) * 2006-10-05 2008-04-10 Waratek Pty Limited Silent memory reclamation
US20080120475A1 (en) * 2006-10-05 2008-05-22 Holt John M Adding one or more computers to a multiple computer system
WO2008040077A1 (en) * 2006-10-05 2008-04-10 Waratek Pty Limited Multiple communication networks for multiple computers
US20080133692A1 (en) * 2006-10-05 2008-06-05 Holt John M Multiple computer system with redundancy architecture
US20080133859A1 (en) * 2006-10-05 2008-06-05 Holt John M Advanced synchronization and contention resolution
US7962697B2 (en) * 2006-10-05 2011-06-14 Waratek Pty Limited Contention detection
US20080133690A1 (en) * 2006-10-05 2008-06-05 Holt John M Contention detection and resolution
US20100121935A1 (en) * 2006-10-05 2010-05-13 Holt John M Hybrid replicated shared memory
US20080120478A1 (en) * 2006-10-05 2008-05-22 Holt John M Advanced synchronization and contention resolution
US20080140762A1 (en) * 2006-10-05 2008-06-12 Holt John M Job scheduling amongst multiple computers
US20080184071A1 (en) * 2006-10-05 2008-07-31 Holt John M Cyclic redundant multiple computer architecture
US20080133884A1 (en) * 2006-10-05 2008-06-05 Holt John M Multiple network connections for multiple computers
US20100054254A1 (en) * 2006-10-05 2010-03-04 Holt John M Asynchronous data transmission
WO2008040074A1 (en) * 2006-10-05 2008-04-10 Waratek Pty Limited Contention detection with data consolidation
JP5318768B2 (ja) * 2006-10-05 2013-10-16 ワラテック プロプライエタリー リミテッド 高度な競合検出
US20080133862A1 (en) * 2006-10-05 2008-06-05 Holt John M Contention detection with modified message format
US7739349B2 (en) * 2006-10-05 2010-06-15 Waratek Pty Limited Synchronization with partial memory replication
WO2008040064A1 (en) * 2006-10-05 2008-04-10 Waratek Pty Limited Switch protocol for network communications
US20080250221A1 (en) * 2006-10-09 2008-10-09 Holt John M Contention detection with data consolidation
US8316190B2 (en) * 2007-04-06 2012-11-20 Waratek Pty. Ltd. Computer architecture and method of operation for multi-computer distributed processing having redundant array of independent systems with replicated memory and code striping
US8527454B2 (en) * 2007-08-29 2013-09-03 Emc Corporation Data replication using a shared resource
US8510334B2 (en) 2009-11-05 2013-08-13 Oracle International Corporation Lock manager on disk
US20120278294A1 (en) * 2011-04-29 2012-11-01 Siemens Product Lifecycle Management Software Inc. Selective locking of object data elements
US9375561B2 (en) 2011-09-02 2016-06-28 Carefusion 303, Inc. Self-flushing valve
US9569461B2 (en) * 2014-06-11 2017-02-14 The Boeing Company Distributed data authority system
US10235249B1 (en) * 2016-07-01 2019-03-19 EMC IP Holding Company LLC System and method for PaaS replication
US10783026B2 (en) * 2018-02-15 2020-09-22 Honeywell International Inc. Apparatus and method for detecting network problems on redundant token bus control network using traffic sensor
CN109472668B (zh) * 2018-10-24 2021-02-23 广州市创乐信息技术有限公司 一种商品数据的处理方法、系统、服务器和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01258170A (ja) * 1988-04-08 1989-10-16 Hitachi Ltd データセット管理方式

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4506360A (en) * 1982-03-29 1985-03-19 Gould Inc. Multi-station token pass communication system and method
DE3376590D1 (en) * 1982-04-28 1988-06-16 Int Computers Ltd Data processing system
CA1239227A (en) * 1984-10-17 1988-07-12 Randy D. Pfeifer Method of and arrangement for ordering of multiprocessor operations in a multiprocessor system
US5220657A (en) * 1987-12-02 1993-06-15 Xerox Corporation Updating local copy of shared data in a collaborative system
US5055999A (en) * 1987-12-22 1991-10-08 Kendall Square Research Corporation Multiprocessor digital data processing system
JPH06101044B2 (ja) * 1988-01-23 1994-12-12 シャープ株式会社 デッドロック回避実行制御方式
US4961134A (en) * 1988-07-15 1990-10-02 International Business Machines Corporation Method for minimizing locking and reading in a segmented storage space
US5226143A (en) * 1990-03-14 1993-07-06 International Business Machines Corporation Multiprocessor system includes operating system for notifying only those cache managers who are holders of shared locks on a designated page by global lock manager
EP0447736B1 (en) * 1990-03-19 1995-09-27 BULL HN INFORMATION SYSTEMS ITALIA S.p.A. Multiprocessor system having distributed shared resources and dynamic and selective global data replication and method therefor
US5418966A (en) * 1992-10-16 1995-05-23 International Business Machines Corporation Updating replicated objects in a plurality of memory partitions

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01258170A (ja) * 1988-04-08 1989-10-16 Hitachi Ltd データセット管理方式

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7409389B2 (en) 2003-04-29 2008-08-05 International Business Machines Corporation Managing access to objects of a computing environment
US8700584B2 (en) 2003-04-29 2014-04-15 International Business Machines Corporation Managing access to objects of a computing environment

Also Published As

Publication number Publication date
JP2549252B2 (ja) 1996-10-30
US5664176A (en) 1997-09-02
US5418966A (en) 1995-05-23

Similar Documents

Publication Publication Date Title
JP2549252B2 (ja) 複製オブジェクトの書込みロックの移動
JP7263297B2 (ja) ハイブリッドクラウド弾性スケーリングおよび高性能データ仮想化のためのリアルタイムクロスシステムデータベースレプリケーション
US6643667B1 (en) System and method for replicating data
US5289574A (en) Multiple virtual screens on an "X windows" terminal
JP2731374B2 (ja) 書き込み衝突解決方法
US6119151A (en) System and method for efficient cache management in a distributed file system
US6915312B2 (en) Data processing environment with methods providing contemporaneous synchronization of two or more clients
US5991768A (en) Finer grained quiescence for data replication
JP3268555B2 (ja) 記憶システム故障に続き、ミラー論理データ・ボリュームの動的再同期化を有するデータ・プロセッサ記憶システム
JP2731375B2 (ja) データ識別方法
JPH03218514A (ja) I/oバッファのサイズを最適にする方法および最適にされたi/oバッファを有するコンピュータ装置
US5956713A (en) Techniques for reducing the number of snapshots of a database
US20070288587A1 (en) Transactional shared memory system and method of control
CN110188114A (zh) 一种数据操作的优化方法、装置、系统、设备和存储介质
WO2025176121A1 (zh) 数据处理
US7870566B2 (en) Application integration for operating systems without inter-process integration support
US5873098A (en) Dynamic snapshot set adjustment
US7117249B1 (en) Computer system and data sharing method between computers
US6092166A (en) Cross-system data piping method using an external shared memory
CN114546720A (zh) 数据处理方法、分布式协调系统、计算机设备及存储介质
JP2545436B2 (ja) 分散デ―タベ―スコミットメント処理装置
JPH04305741A (ja) データベース入出力制御方式
JPH11272628A (ja) 共用データの転送方法および結合装置
US6430579B1 (en) Partition support tool to maintain/service multiple copies of a database
US20040255833A1 (en) Method, system, and article of manufacture for selecting replication volumes

Legal Events

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