JPH09269912A - 情報処理方法とその装置 - Google Patents

情報処理方法とその装置

Info

Publication number
JPH09269912A
JPH09269912A JP8080179A JP8017996A JPH09269912A JP H09269912 A JPH09269912 A JP H09269912A JP 8080179 A JP8080179 A JP 8080179A JP 8017996 A JP8017996 A JP 8017996A JP H09269912 A JPH09269912 A JP H09269912A
Authority
JP
Japan
Prior art keywords
data
application
shared
shared data
information processing
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.)
Withdrawn
Application number
JP8080179A
Other languages
English (en)
Inventor
Masahiko Yoshimoto
雅彦 吉本
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP8080179A priority Critical patent/JPH09269912A/ja
Publication of JPH09269912A publication Critical patent/JPH09269912A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 複数のアプリケーションソフトウエア間で共
有データを参照する場合、ユーザ間の対話的処理を容易
に実現できる情報処理方法とその装置を提供する。 【解決手段】 複数のアプリケーションが共有データを
参照する制御を行う情報処理方法であって、第1のアプ
リケーションの要求に基づく共有データに対する修正/
追加データを格納する。そして、第1のアプリケーショ
ンのコミット要求に基づいて、格納された修正/追加デ
ータに基づいて、前記共有データを更新する(S30
5)。そして、更新された共有データに関する情報を他
の前記共有データを参照中のアプリケーションに通知す
る(S306)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、情報処理方法とそ
の装置、特に、トランザクション間の並行性を向上させ
る情報処理方法とその装置に関する。
【0002】
【従来の技術】従来より、データベースシステムにおけ
るトランザクション処理においては、ロック機構を用い
た並行制御が用いられてきた。このロックの種類として
は一般に、データの更新を行う際に必要となる排他ロッ
クと、データの参照を行う際に必要となる共有ロックが
ある。
【0003】さらにロックの獲得と解放は、2フェーズ
ロッキングと呼ばれる方式、すなわち、トランザクショ
ン間の相互干渉を防止し、結果として、一貫性のあるス
ケジューリングを保証する方式に従って行われるのが通
例であった。
【0004】
【発明が解決しようとする課題】しかしながら、従来の
方式では、対話的な操作環境を有するアプリケーション
には適していないという問題点があった。例えば、ある
ユーザの操作により、データの更新を目的としてトラン
ザクションが起動されたとき、該データに対しては排他
ロックの獲得が必要である。しかし、そのためには、他
のトランザクションによって、排他、もしくは共有ロッ
クの確保が行なわれていないことが必要となる。
【0005】これによれば、以下のような問題点が生じ
る。すなわち、上記データの内容が、例えば、ウインド
ウシステム上のウインドウ内に表示されている場合、ウ
インドウの内容の一貫性を保証するためには、共有ロッ
クの獲得が必要であるが、これによれば、他のトランザ
クションによる排他ロックの獲得は不可能であり、ウイ
ンドウに表示されている間のデータの更新を行うことが
できなくなる。
【0006】一方、一貫性の保証を放棄して、共有ロッ
クの確保に続いてデータの読出しを行い、該データの内
容をアプリケーション内のメモリ領域に複写したのち、
該獲得した共有ロックを解放すれば、他のトランザクシ
ョンによるデータの更新は可能になる。しかし、この場
合であっても、排他ロックが確保されている間は、後続
するトランザクションによる共有ロックの確保は不可能
である。この結果、排他ロックが確保される以前に読み
出しを終えたアプリケーションにおいては、必ずしも一
貫性の保証されないデータが保持され、他方、排他ロッ
クが確保された以後に読み出しを試みようとするアプリ
ケーションにおいては、排他ロックが解放されるまでの
間、予測できない待ち時間が生じることになる。これら
の振舞いは、複数のユーザが協調しながら、データを共
有する分散環境においては、著しく不適当である。本発
明は、以上説明した問題点、すなわち、従来のトランザ
クション処理、特に並行制御機構を用いて、複数ユーザ
間で共有されるデータを用いた対話的処理の実現が困難
であったという問題点を解決する。
【0007】本発明は、上記従来例に鑑みてなされたも
ので、複数のアプリケーションソフトウエア間で共有デ
ータを参照する場合、従来のトランザクション処理機構
にとっては、対話的な処理の実現が困難であったという
問題点を解決した情報処理方法とその装置を提供するこ
とを目的とする。
【0008】
【課題を解決するための手段】上記目的を達成するた
め、本発明の情報処理方法とその装置は以下の構成を備
える。即ち、複数のアプリケーションが共有データを参
照する制御を行う情報処理方法であって、第1のアプリ
ケーションの要求に基づく共有データに対する修正/追
加データを格納する格納工程と、前記第1のアプリケー
ションのコミット要求に基づいて、前記格納工程で格納
された修正/追加データに基づいて、前記共有データを
更新する更新工程と、前記更新工程で更新された共有デ
ータに関する情報を他の前記共有データを参照中のアプ
リケーションに通知する通知工程とを備える。
【0009】また、別の発明は、複数のアプリケーショ
ンが共有データを参照する制御を行う情報処理装置であ
って、第1のアプリケーションの要求に基づく共有デー
タに対する修正/追加データを格納する格納手段と、前
記第1のアプリケーションのコミット要求に基づいて、
前記格納手段で格納された修正/追加データに基づい
て、前記共有データを更新する更新手段と、前記更新手
段で更新された共有データに関する情報を他の前記共有
データを参照中のアプリケーションに通知する通知手段
とを備える。
【0010】
【発明の実施の形態】はじめに、本発明の実施の形態の
情報処理方法とその装置のポイントを要約した後に、そ
の詳細な説明に入るものとする。本発明の実施の形態の
情報処理方法のポイントは、データベースの所望のデー
タ領域(D1)に対して共有ロックをかけずにアクセス
しているアプリケーションソフトウエア(AP1)に対
して、別のアプリケーションソフトウエア(AP2)が
上述のデータ領域(D1)を更新するトランザクション
の途中で、更新内容をコミットした時に、その更新が発
生したことを通知する。そして、別のアプリケーション
ソフトウエア(AP2)が、その後、アボードした場
合、即ち、更新を無効として、データ領域(D1)の元
の内容に戻す処理を行う。そして、その元の内容に戻し
た処理を行ったことを、再び、アプリケーションソフト
ウエア(AP1)に対して通知する。この様な処理構成
を備えることによって、複数ユーザ間で共有されるデー
タを用いた対話的処理を容易に行うことができる。
【0011】尚、本処理構成では、上述のアプリケーシ
ョンソフトウエア(AP1)に対しては、アプリケーシ
ョンソフトウエア(AP1)が参照したいデータ領域に
対する共有ロックが係っているか否かにかかわらず、デ
ータ参照操作を許可する。 [実施例1]以下、本発明の実施の形態の情報処理方法
とその装置について、図を用いて説明する。なお、本発
明を実施する装置としては、周知のワークステーショ
ン、もしくは、パーソナルコンピュータでよい。
【0012】図1は、所定のアプリケーションソフトウ
エアからのデータ参照要求を処理する手順を示すフロー
チャートである。ここで、このアプリケーションソフト
ウエアの識別子を"a",データの識別子を"d"とする。
また、図2は、図1のフローチャートが示す処理の基本
要素を記述した図である。図2は、アプリケーションソ
フトウエアa(1000)、アプリケーションソフトウ
エアb(1001)、...、アプリケーションソフトウ
エアm(1002)が本情報処理装置内に存在している
例を示している。また、各アプリケーションソフトウエ
アが、DB(データベース)(3000)中のデータ領
域"d"を共通にアクセスする場合を示している。
【0013】アプリケーションソフトウエアa(100
0)に対応する参照データ識別子リストD(a)(20
00)は、アプリケーションソフトウエアa(100
0)がDB(3000)のどのデータをアクセス中であ
るかを示すためのもので、参照中の各データの識別子を
格納したリストである。データ参照アプリケーションリ
ストA(d)(2001)は、DB(3000)中のデー
タ"d"をアクセス中の各アプリケーションソフトウエア
の識別子を格納したリストである。
【0014】これらの参照データ識別子リストD(a)
(2000)とデータ参照アプリケーションリストA
(d)(2001)は、図7を参照して後述するメモリ2
02の一部の領域にアサインされている。以下、図2を
図1のフローチャートの示す処理手順の理解を容易にす
るための補助図として参照しながら、アプリケーション
ソフトウエアからのデータ参照要求を処理する手順を説
明する。この例では、排他ロックや共有ロックをかけず
にデータベースをアクセスする処理に関して説明する。
図1のフローチャートの示す処理は、所定のトランザク
ションマネージャ(TM)などによって、実行される。
【0015】まず、ステップS102では、アプリケー
ションソフトウエアaから、TMに対して、データベー
スのデータdを参照する要求があると、TMは、アプリ
ケーションソフトウエアaが参照しているデータ識別子
のリストD(a)を取り出す。ステップS103では、
D(a)にdが含まれているかどうか判定する。そし
て、含まれていれば、アプリケーションソフトウエアa
は、既にデータdの参照処理を起動したものとみなし
て、直ちに処理を終了する。逆に、含まれていなけれ
ば、次のステップS104に移行する。
【0016】ステップS104では、dを参照している
アプリケーションソフトウエアのリストA(d)を取り
出す。ステップS105では、A(d)にはaは含まれ
ていないので、A(d)にaを追加する。ステップS1
06では、識別子dの指すデータ内容をアプリケーショ
ンソフトウエアaに転送する。
【0017】ステップS107では、D(a)にdを追
加して、処理を終了する。以上、アプリケーションソフ
トウエアaからデータベースに対するデータ参照要求を
処理する手順を説明した。尚、図1において、2つのリ
ストD(a)とA(d)との一貫性は、公知の手法によ
って常に保たれているものとする。
【0018】また、ステップS102〜S104、およ
び、ステップS105〜S107の処理順序は、実施し
ているデータ共有機構の実装形態に依存するものであ
り、本発明は、この処理順序に制限されるものではな
い。図1に示した手順の逆操作、すなわち、データ参照
の解除については、図1と全く同様である。すなわち、
アプリケーションソフトウエアaとデータdについて、
D(a)にdが含まれるとき、D(a)からdを削除す
るとともに、A(d)からaを削除すればよい。
【0019】図3は、TMが、図1の手順に従って共有
データに対する参照処理を開始した後に、各アプリケー
ションからアクセスされるデータベースのデータに対す
る共有ロックの設定処理の説明を行う。図4は、共有ロ
ックの設定対象を管理するリストL,L’の構成例を示
す図である。
【0020】図4の共有ロック要求識別子リストL(4
000)は、TMが生成したもので、各アプリケーショ
ンソフトウエアからの共有ロックの獲得処理を要求する
データ識別子のリストである。これは、TMが、データ
ベースへの各アプリケーションからのアクセスを監視し
て生成した、データベースへアクセスのあったデータの
リスト、即ち、上述した D(x);x=a,b,...c に等価のリストであるか、または、D(x)のうち、ア
プリケーションソフトウエアから共有ロック要求が行わ
れたデータのリストである。
【0021】ここで、この共有ロック要求識別子リスト
L(4000)は、図7を参照して後述するメモリ20
2の一部の領域にアサインされている。図3のステップ
S202では、上述の共有ロック要求識別子リストL
(4000)の要素であって、既に、共有ロック、また
は、排他ロックが確保されているものを取り除いたリス
トL’(非ロックデータ識別子リスト)を生成する。
【0022】ステップS203では、リストL’が空か
どうかをチェックする。そして、空でなければ、ステッ
プS204へ進む。空であれば、処理を終了する。ステ
ップS204では、リストL’の各要素に対する共有ロ
ックの確保を行い、処理を終了する。以上の処理をTM
が繰り返すことによって、共有ロックの必要なデータに
対して、適宜、共有ロックをかけていくことができる。
【0023】TMは、また上述の処理と共に、データベ
ースへの各アプリケーションからのアクセスの内のデー
タ更新の発生を監視して、データ更新の発生したデータ
の識別子を羅列したデータリストGを生成する。次に、
図5は、各アプリケーションがデータ更新(コミット)
を行うトランザクションにおけるTMの処理手順を示す
フローチャートである。
【0024】まず、ステップS302では、リストGの
データを取り込む。ステップS303では、リストGが
空かどうかチェックして、空であれば処理を終了する。
他方、空でなければステップS304へ進む。ステップ
S304では、リストGから要素を1つ取り出してd1
とする。ステップS305では、d1の内容が既に退避
済みかどうかチェックする。そして、退避済みであれ
ば、ステップS303に戻る。逆に、退避済みでなけれ
ば、ステップS306に進む。
【0025】ステップS306では、d1の内容を一時
的に退避する。ステップS307では、d1の内容を更
新する。ステップS308では、d1の参照を行ってい
るリストA(d1)の各アプリケーションソフトウエア
に対し変更の通知を行う。そして、ステップS303に
戻り、同様の処理を繰り返す。
【0026】以上の処理によって、所定のアプリケーシ
ョンがデータ更新した情報を、参照中の他のアプリケー
ションに知らせることができる。尚、ステップS306
におけるd1の内容の退避領域は、最終的にトランザク
ションが終了した時点で解放される。ここで、トランザ
クションが最終的に終了するとは、コミットまたはアボ
ートのいずれかである。ここで、コミットとは、更新し
た内容を確定する処理である。また、アボートとは、更
新した内容を確定せずに廃棄する、言い換えれば、更新
前の状態に戻す処理を意味する。
【0027】従って、コミットであった場合には、単
に、退避領域が解放される。一方、アボートであった場
合には、d1の退避領域が空でなければ、一時的に行わ
れた更新処理の内容が破棄され、d1の内容として退避
領域の内容が再設定される。この時、A(d1)が空で
なければ、ステップS308と同様にA(d1)の各要
素に対して変更の通知が行われる。
【0028】以上、説明した処理手順を用いれば、例え
ば、あるアプリケーションソフトウエアa1とa2にお
いて、効果的なデータ共有を行うことができる。これを
図6を参照して説明する。図6に示すように、データベ
ースにデータdt1,dt2,dt3,dt4があると
し、アプリケーションソフトウエアa1とa2がそれぞ
れ図1の手順に従って、dt1,dt2,dt3、およ
び、dt1,dt2,dt4の参照手順を開始したとす
る。
【0029】ここで、アプリケーションソフトウエアa
1とa2が、それぞれdt1とdt2の更新を行うため
にトランザクションを開始したとする。このとき、図3
に示した処理手順において、共有ロックを確保するデー
タ識別子のリストは、アプリケーションソフトウエアa
1についてはdt3であり、a2についてはdt4を含
むものとする。
【0030】図3に示した手順によって上記の共有ロッ
クが確保されれば、何らかの時点でa1とa2はそれぞ
れdt1とdt2に関する排他ロックを確保することに
なるが、a1とa2間のロックの競合が存在しないた
め、他の外乱要因がなければこれらはともに成功する。
この段階で、図5で示した手順に従って一時的な内容更
新を行えば、アプリケーションソフトウエアa1とa2
は、それぞれ、他方が行った更新が直ちに通知され、そ
れに従って処理を行うことが可能である。
【0031】なお、一般には、データ更新トランザクシ
ョンの途中で、他のトランザクションによる一時的な更
新通知が行われるのは好ましくない。これは、前者のト
ランザクションにおける一時的な更新内容の評価によっ
ては、最終的に、コミットを行う段階で一貫性が保証さ
れない可能性があるためである。従って、通常のトラン
ザクション開始時には、図1の手順で参照を開始した全
ての共有データについて図3に示した手順を適用するの
が適当である。
【0032】さらに、トランザクションとしては、デー
タの更新を行わない類のトランザクションもあるが、こ
れについても図3に示した手順を適用することは可能で
ある。 この場合のトランザクションの目的は、トラン
ザクションの間に他のトランザクションに更新を禁止す
ることである。本実施の形態においては、データ参照処
理における共有ロックの確保は不用であって、むしろ不
用なロックによりトランザクション間の競合を回避する
ために、読み出しトランザクションは必要最小限にとど
めるのが適当である。 [実施の形態2]以上説明した実施の形態においては、
トランザクションにおけるロックの獲得・解放処理を2
フェーズで行うものとしていた。
【0033】しかしながら、本実施の形態に係る更新処
理と参照処理が共存し、なおかつ、一時的な更新処理を
支援するようなシステムにおいては、いわゆる「seriali
zability」を犠牲にしても、データの共有を許すのが適
当である。これを実現するために、明示的なロック解放
命令をアプリケーションに提供する。図7は、明示的な
ロック解放命令を受信した時のTMの処理手順を示すフ
ローチャートである。
【0034】尚、本フローチャートにおいて、排他ロッ
クを解放して共有ロックを確保する手順を示すが、排他
ロックの解放処理や共有ロックの解放処理についても同
様である。ただし、共有ロックの解放処理については、
後述する一時的な更新処理は行われない。ステップS4
01では、明示的にロックの解放を行うデータ識別子d
2を受信する。
【0035】ステップS402では、d2に関する排他
ロックが既に確保されているかどうかをチェックする。
そして、排他ロックの確保が行われていなければ処理を
終了する。さもなければ、ステップS403へ進む。ス
テップS403では、d2の内容を変更したかどうかを
判定する。そして、変更を行っている場合には、ステッ
プS404に進む。変更がなければ、ステップS405
に進む。
【0036】ステップS404では、図5に示した手順
に従って一時的に更新内容を反映させる。ステップS4
05では、排他ロックを共有ロックに変更して、処理を
終了する。 尚、ステップS405における処理は不可
分に行われるものとし、かつ、該ロックの解放を待って
いる他のトランザクションに優先して行われるものとす
る。
【0037】図7においては、2フェーズロックに従わ
ない個々のトランザクションについて処理手順を示し
た。しかし一般には、入れ子になったトランザクション
処理が行われることがあり、上位のトランザクションが
2フェーズロックに従うにもかかわらず、下位のサブト
ランザクションにおいて図7の手順を行うと矛盾が生じ
る。
【0038】これを防ぐために、上位トランザクション
のいずれかがロックの獲得・解放処理を2フェーズロッ
クに従う場合には、サブトランザクションにおけるロッ
クの獲得・解放処理は指定かかわらず2フェーズで行う
ものとする。この場合、上記明示的なロック解放命令は
遅延評価され、最終的には2フェーズロックに従わない
上位トランザクションに戻った時点で評価される。
【0039】次に、図8は、上述した各フローチャート
の処理を実行する情報処理装置の構成例を示す図であ
る。この図で、CPU200は、本情報処理装置全体の
制御を、メモリ202に格納された各種プログラムを読
み出し、解釈し、実行することで行う。メモリ202に
は、上述した各フローチャートに対応するプログラムが
格納され、また、データべースが格納されている。
【0040】キーボード203とポインティングデバイ
ス204は、コマンドやデータの入力を行う。ディスプ
レイモニタ201は、CPU200での処理結果や、キ
ーボード203とポインティングデバイス204から入
力したコマンドやデータを表示する。なお、本発明は、
複数の機器から構成されるシステムに適用しても、一つ
の機器からなる装置に適用してもよい。
【0041】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体を、システムあるいは装置に供給し、そ
のシステムあるいは装置のコンピュータ(またはCPU
やMPU)が記憶媒体に格納されたプログラムコードを
読出し実行することによっても、達成されることは言う
までもない。
【0042】この場合、記憶媒体から読出されたプログ
ラムコード自体が前述した実施形態の機能を実現するこ
とになり、そのプログラムコードを記憶した記憶媒体は
本発明を構成することになる。プログラムコードを供給
するための記憶媒体としては、例えば、フロッピディス
ク,ハードディスク,光ディスク,光磁気ディスク,C
D−ROM,CD−R,磁気テープ,不揮発性のメモリ
カード,ROMなどを用いることができる。
【0043】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOS(オペレ
ーティングシステム)などが実際の処理の一部または全
部を行い、その処理によって前述した実施形態の機能が
実現される場合も含まれることは言うまでもない。
【0044】さらに、記憶媒体から読出されたプログラ
ムコードが、コンピュータに挿入された機能拡張ボード
やコンピュータに接続された機能拡張ユニットに備わる
メモリに書込まれた後、そのプログラムコードの指示に
基づき、その機能拡張ボードや機能拡張ユニットに備わ
るCPUなどが実際の処理の一部または全部を行い、そ
の処理によって前述した実施形態の機能が実現される場
合も含まれることは言うまでもない。
【0045】本発明を上記記憶媒体に適用する場合、そ
の記憶媒体には、先に説明したフローチャートに対応す
るプログラムコードを格納することになるが、簡単に説
明すると、上述の各フローチャートに対応する各プログ
ラムモジュールを記憶媒体に格納することになる。以上
説明したように、本実施の形態の情報処理方法では、ア
プリケーションソフトウエアに対して、共有ロックの獲
得の有無にかかわらずデータ参照操作を許可する。ま
た、該データ参照操作を行っているアプリケーションソ
フトウエアがデータ更新処理を目的とするトランザクシ
ョンを開始する際に、そのトランザクションの起動に先
だって、上記データ参照操作が起動されている一連の共
有データに対して共有ロックを確保するかどうかを指定
する。そして、該データ更新処理を目的とするトランザ
クションの処理の途中で一時的に更新内容をコミットし
た場合、そのコミット処理でデータを変更したことを知
らせる変更通知を、上記データ参照操作を起動している
一連のアプリケーションソフトウエアに対して通知す
る。
【0046】また、上記トランザクションが最終的にア
ボートされた場合には、上記コミット処理に対応する逆
操作を行って、元のデータを回復する。そして、その逆
操作における変更通知を、上記データ参照操作を起動し
ている一連のアプリケーションソフトウエアに対して通
知する。尚、上記データ更新処理を目的とするトランザ
クションは、ロックの獲得・解放処理を2フェーズロッ
クに従って行うかどうかを指定することができる。
【0047】以上の基本処理構成によって、複数ユーザ
間で共有されるデータを用いた対話的処理を容易に実現
することができる。
【0048】
【発明の効果】以上説明したように本発明によれば、複
数のアプリケーションソフトウエア間で共通データを参
照する場合、従来のトランザクション処理機構にとって
は、対話的な処理の実現が困難であったという問題点を
解決できる。
【図面の簡単な説明】
【図1】本発明に係る一実施の形態の各アプリケーショ
ンからデータベースの所定のデータに対するデータ参照
要求を処理する手順を示すフローチャートである。
【図2】図1の処理を説明するための図である。
【図3】共有ロックの獲得処理手順を示すフローチャー
トである。
【図4】共有ロック要求データ識別子リストと非ロック
データ識別子リストの構成例を示す図である。
【図5】トランザクションの途中で一時的にデータ更新
内容を、所定のアプリケーションに通知する処理する処
理手順を示すフローチャートである。
【図6】第1の実施の形態の処理例を説明するための図
である。
【図7】明示的にロック解放を行う処理手順を示すフロ
ーチャートである。
【図8】本実施の形態の情報処理を実行するハードウエ
ア構成の一例を示す図である。

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 複数のアプリケーションが共有データを
    参照する制御を行う情報処理方法であって、 第1のアプリケーションの要求に基づく共有データに対
    する修正/追加データを格納する格納工程と、 前記第1のアプリケーションのコミット要求に基づい
    て、前記格納工程で格納された修正/追加データに基づ
    いて、前記共有データを更新する更新工程と、 前記更新工程で更新された共有データに関する情報を他
    の前記共有データを参照中のアプリケーションに通知す
    る通知工程とを備えることを特徴とする情報処理方法。
  2. 【請求項2】 前記第1のアプリケーションのアボード
    要求に基づいて、前記更新工程で更新された共有データ
    を、前記格納工程で格納される以前のデータに復帰させ
    る復帰工程をさらに備えることを特徴とする請求項1に
    記載の情報処理方法。
  3. 【請求項3】 前記共有データをアクセスするアプリケ
    ーションを検知する検知工程と、 前記検知工程で検知されたアプリケーションがアクセス
    するデータに対して、当該アプリケーションが共有ロッ
    クまたは排他ロックを確保していない場合、当該アプリ
    ケーションが前記更新工程を行うに先だって、共有ロッ
    クを設定する設定工程とをさらに備えることを特徴とす
    る請求項1に記載の情報処理方法。
  4. 【請求項4】 前記復帰工程はさらに、前記更新工程で
    更新された共有データを、前記格納工程で格納される以
    前のデータに復帰させる旨の情報を、前記共有データを
    使用中の他のアプリケーションに通知する復帰通知工程
    を備えることを特徴とする請求項2に記載の情報処理方
    法。
  5. 【請求項5】 複数のアプリケーションが共有データを
    参照する制御を行う情報処理装置であって、 第1のアプリケーションの要求に基づく共有データに対
    する修正/追加データを格納する格納手段と、 前記第1のアプリケーションのコミット要求に基づい
    て、前記格納手段で格納された修正/追加データに基づ
    いて、前記共有データを更新する更新手段と、 前記更新手段で更新された共有データに関する情報を他
    の前記共有データを参照中のアプリケーションに通知す
    る通知手段とを備えることを特徴とする情報処理装置。
  6. 【請求項6】 前記第1のアプリケーションのアボード
    要求に基づいて、前記更新手段で更新された共有データ
    を、前記格納手段で格納される以前のデータに復帰させ
    る復帰手段をさらに備えることを特徴とする請求項5に
    記載の情報処理装置。
  7. 【請求項7】 前記共有データをアクセスするアプリケ
    ーションを検知する検知手段と、 前記検知手段で検知されたアプリケーションがアクセス
    するデータに対して、当該アプリケーションが共有ロッ
    クまたは排他ロックを確保していない場合、当該アプリ
    ケーションが前記更新工程を行うに先だって、共有ロッ
    クを設定する設定手段とをさらに備えることを特徴とす
    る請求項5に記載の情報処理装置。
  8. 【請求項8】 前記復帰手段はさらに、前記更新手段で
    更新された共有データを、前記格納手段で格納される以
    前のデータに復帰させる旨の情報を、前記共有データを
    使用中の他のアプリケーションに通知する復帰通知手段
    を備えることを特徴とする請求項7に記載の情報処理方
    法。
JP8080179A 1996-04-02 1996-04-02 情報処理方法とその装置 Withdrawn JPH09269912A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8080179A JPH09269912A (ja) 1996-04-02 1996-04-02 情報処理方法とその装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8080179A JPH09269912A (ja) 1996-04-02 1996-04-02 情報処理方法とその装置

Publications (1)

Publication Number Publication Date
JPH09269912A true JPH09269912A (ja) 1997-10-14

Family

ID=13711138

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8080179A Withdrawn JPH09269912A (ja) 1996-04-02 1996-04-02 情報処理方法とその装置

Country Status (1)

Country Link
JP (1) JPH09269912A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11328074A (ja) * 1998-04-15 1999-11-30 Hewlett Packard Co <Hp> ウェブリソ―スのデ―タ変更の通信方法
JP2008118672A (ja) * 2002-09-20 2008-05-22 Ricoh Co Ltd 画像形成装置,共有データ管理方法および共有データ管理システム
US7739458B2 (en) 2002-09-20 2010-06-15 Ricoh Company, Ltd. Image forming apparatus, shared data management method and shared data management system
JP2011510397A (ja) * 2008-01-15 2011-03-31 マイクロソフト コーポレーション 構造化されたデータ要素にアクセスして更新するためのマルチクライアントのコラボレーション

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11328074A (ja) * 1998-04-15 1999-11-30 Hewlett Packard Co <Hp> ウェブリソ―スのデ―タ変更の通信方法
JP2008118672A (ja) * 2002-09-20 2008-05-22 Ricoh Co Ltd 画像形成装置,共有データ管理方法および共有データ管理システム
US7739458B2 (en) 2002-09-20 2010-06-15 Ricoh Company, Ltd. Image forming apparatus, shared data management method and shared data management system
JP2011510397A (ja) * 2008-01-15 2011-03-31 マイクロソフト コーポレーション 構造化されたデータ要素にアクセスして更新するためのマルチクライアントのコラボレーション
US8862979B2 (en) 2008-01-15 2014-10-14 Microsoft Corporation Multi-client collaboration to access and update structured data elements
US9880992B2 (en) 2008-01-15 2018-01-30 Microsoft Technology Licensing, Llc Multi-client collaboration to access and update structured data elements

Similar Documents

Publication Publication Date Title
US10180903B2 (en) Hybrid hardware and software implementation of transactional memory access
US6275863B1 (en) System and method for programming and executing long running transactions
EP1910929B1 (en) Direct-update software transactional memory
JP4237354B2 (ja) トランザクション処理方法及びトランザクション処理システム
US8140497B2 (en) System and method for implementing nonblocking zero-indirection transactional memory
US7761434B2 (en) Multiversion concurrency control in in-memory tree-based data structures
US7747996B1 (en) Method of mixed lock-free and locking synchronization
US20020138483A1 (en) Selective pessimistic locking for a concurrently updateable database
US20080209422A1 (en) Deadlock avoidance mechanism in multi-threaded applications
US20090183159A1 (en) Managing concurrent transactions using bloom filters
US20080215784A1 (en) Realtime-safe read copy update with per-processor read/write locks
US20070073693A1 (en) Transaction and task scheduler
JPH05197604A (ja) マルチプロセッサ・コンピュータ及びその動作方法
US6625601B1 (en) Escrow-locking multithreaded process-pair resource manager dictionary
JPH103416A (ja) 情報処理装置およびその方法
JPH0728679A (ja) チェックイン・チェックアウトモデルにおける施錠方式
KR20010034268A (ko) 데이터베이스 관련 방법
US8095731B2 (en) Mutable object caching
JPH09269912A (ja) 情報処理方法とその装置
CN110730958A (zh) 用于管理按优先级排序的数据库事务的方法和***
JP2001101053A (ja) トランザクション管理方法及びトランザクション管理装置
JP3107094B2 (ja) 共用バッファのロック期間短縮処理方法及び装置
JP6784296B2 (ja) データベース管理装置、データベース管理方法、及びプログラム
JPH05307478A (ja) データベース管理システムの構成法
JP3575236B2 (ja) データベース排他制御方法及びシステム及びデータベース排他制御プログラムを格納した記憶媒体

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20030603