JPH1115682A - マルチオペレーティングシステム - Google Patents
マルチオペレーティングシステムInfo
- Publication number
- JPH1115682A JPH1115682A JP9165554A JP16555497A JPH1115682A JP H1115682 A JPH1115682 A JP H1115682A JP 9165554 A JP9165554 A JP 9165554A JP 16555497 A JP16555497 A JP 16555497A JP H1115682 A JPH1115682 A JP H1115682A
- Authority
- JP
- Japan
- Prior art keywords
- lock
- management
- locked
- data
- display
- 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
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Abstract
(57)【要約】
【課題】 データの不整合や矛盾を防止し、その操作性
を向上させることが可能なマルチオペレーティングシス
テムを提供する。 【解決手段】 サーバコンピュータ1と、クライアント
コンピュータ2とが、ネットワーク3により接続された
クライアント−サーバシステムにおけるマルチオペレー
ティングシステムにおいて、クライアントコンピュータ
2が、サーバコンピュータ1上のオブジェクトに対して
ロックを行うと、このサーバコンピュータ1は、ロック
が行われたサーバコンピュータ1上のオブジェクトに関
係する他の全てのオブジェクトをロックする。
を向上させることが可能なマルチオペレーティングシス
テムを提供する。 【解決手段】 サーバコンピュータ1と、クライアント
コンピュータ2とが、ネットワーク3により接続された
クライアント−サーバシステムにおけるマルチオペレー
ティングシステムにおいて、クライアントコンピュータ
2が、サーバコンピュータ1上のオブジェクトに対して
ロックを行うと、このサーバコンピュータ1は、ロック
が行われたサーバコンピュータ1上のオブジェクトに関
係する他の全てのオブジェクトをロックする。
Description
【0001】
【発明の属する技術分野】本発明は、マルチオペレーテ
ィングシステムに関し、特にクライアントサーバシステ
ムにおけるマルチオペレーティングシステムに関する。
ィングシステムに関し、特にクライアントサーバシステ
ムにおけるマルチオペレーティングシステムに関する。
【0002】
【従来の技術】従来のマルチオペレーティングシステム
におけるデータ処理方法としては、そのデータ処理の高
速化、簡素化を図るために、トランザクションプロセッ
シングが用いられている。
におけるデータ処理方法としては、そのデータ処理の高
速化、簡素化を図るために、トランザクションプロセッ
シングが用いられている。
【0003】マルチオペレーティングシステムにおける
トランザクションプロセッシングでは、あるオブジェク
トを操作しようとする場合、他のオペレータによるデー
タの書換え等が操作中に発生してデータ等の不整合や矛
盾が発生しないように、操作するオブジェクトをロック
した後にそのオブジェクトを操作している。
トランザクションプロセッシングでは、あるオブジェク
トを操作しようとする場合、他のオペレータによるデー
タの書換え等が操作中に発生してデータ等の不整合や矛
盾が発生しないように、操作するオブジェクトをロック
した後にそのオブジェクトを操作している。
【0004】従って、従来のマルチオペレーティングシ
ステムにおいては、オペレータがあるオブジェクトを操
作している最中は、そのオブジェクトがロックされ、他
のオペレータはそのオブジェクトに対して処理を行うこ
とができないため、データ等の不整合や矛盾を防止する
ことができるとしている。
ステムにおいては、オペレータがあるオブジェクトを操
作している最中は、そのオブジェクトがロックされ、他
のオペレータはそのオブジェクトに対して処理を行うこ
とができないため、データ等の不整合や矛盾を防止する
ことができるとしている。
【0005】
【発明が解決しようとする課題】しかしながら、従来の
マルチオペレーティングシステムにおいては、オペレー
タが直接操作するオブジェクトをロックすることはでき
るが、そのオブジェクトに関係し、そのオブジェクトの
データが変化した際に影響を受ける他のオブジェクトを
ロックすることができないため、データ等に不整合や矛
盾が発生するという問題点を有している。
マルチオペレーティングシステムにおいては、オペレー
タが直接操作するオブジェクトをロックすることはでき
るが、そのオブジェクトに関係し、そのオブジェクトの
データが変化した際に影響を受ける他のオブジェクトを
ロックすることができないため、データ等に不整合や矛
盾が発生するという問題点を有している。
【0006】例えばオペレータAがあるオブジェクトa
を操作するためにこのオブジェクトaをロックし、この
オブジェクトaの内容を変更した際に、この変更したオ
ブジェクトaと関係している他のオブジェクトbが影響
を受ける場合がある。この際、オブジェクトbはロック
されていないため、オペレータBがオブジェクトbを操
作していた場合、データ等に不整合や矛盾が生じる。
を操作するためにこのオブジェクトaをロックし、この
オブジェクトaの内容を変更した際に、この変更したオ
ブジェクトaと関係している他のオブジェクトbが影響
を受ける場合がある。この際、オブジェクトbはロック
されていないため、オペレータBがオブジェクトbを操
作していた場合、データ等に不整合や矛盾が生じる。
【0007】また、従来のマルチオペレーティングシス
テムにおけるトランザクションプロセッシングの場合、
オブジェクトをロックしようとして初めてそのオブジェ
クトがロックできるか否かが分かるため、あるオブジェ
クトがロックされているかどうかは、そのオブジェクト
をロックしてみないと分からない。つまりそのオブジェ
クトをロックしようとしたときに初めてそのオブジェク
トが既にロックされているか、ロックされていないかが
分かるため、効率よくロックされていないオブジェクト
を選択することが困難であるという問題点も有してい
る。
テムにおけるトランザクションプロセッシングの場合、
オブジェクトをロックしようとして初めてそのオブジェ
クトがロックできるか否かが分かるため、あるオブジェ
クトがロックされているかどうかは、そのオブジェクト
をロックしてみないと分からない。つまりそのオブジェ
クトをロックしようとしたときに初めてそのオブジェク
トが既にロックされているか、ロックされていないかが
分かるため、効率よくロックされていないオブジェクト
を選択することが困難であるという問題点も有してい
る。
【0008】本発明は、上記事情に鑑みなされたもの
で、データの不整合や矛盾を防止し、その操作性を向上
させることが可能なマルチオペレーティングシステムを
提供することを目的とする。
で、データの不整合や矛盾を防止し、その操作性を向上
させることが可能なマルチオペレーティングシステムを
提供することを目的とする。
【0009】
【課題を解決するための手段】請求項1記載の発明は、
サーバコンピュータと、少なくとも1以上のクライアン
トコンピュータとが接続されたクライアント−サーバシ
ステムにおけるマルチオペレーティングシステムにおい
て、前記1以上のクライアントコンピュータの内の1の
クライアントコンピュータが、前記サーバコンピュータ
上のオブジェクトに対してロックを行うと、前記サーバ
コンピュータは、該ロックが行われたサーバコンピュー
タ上のオブジェクトに関係する他の全てのオブジェクト
をロックすることを特徴とする。
サーバコンピュータと、少なくとも1以上のクライアン
トコンピュータとが接続されたクライアント−サーバシ
ステムにおけるマルチオペレーティングシステムにおい
て、前記1以上のクライアントコンピュータの内の1の
クライアントコンピュータが、前記サーバコンピュータ
上のオブジェクトに対してロックを行うと、前記サーバ
コンピュータは、該ロックが行われたサーバコンピュー
タ上のオブジェクトに関係する他の全てのオブジェクト
をロックすることを特徴とする。
【0010】より具体的に図面を参照して説明すると、
本発明は、関連オブジェクト検索手段(図2のS18)
によって検索されたオブジェクトを連続してロックする
ロック開始手段(図2のS11)と、その連続したロッ
クを解除するロック終了手段(図2のS12)とを有す
る。
本発明は、関連オブジェクト検索手段(図2のS18)
によって検索されたオブジェクトを連続してロックする
ロック開始手段(図2のS11)と、その連続したロッ
クを解除するロック終了手段(図2のS12)とを有す
る。
【0011】従って、この発明によれば、クライアント
コンピュータがオブジェクトに対して操作を行う際に、
この操作を行うオブジェクトの他に、この操作を行うオ
ブジェクトのデータが変更されることにより、その変更
の影響を受ける他の全てのオブジェクトを、この操作を
行うオブジェクトに関係するオブジェクトとみなしてロ
ックするため、オペレータによる操作中に、他のオペレ
ータにより他のオブジェクトのデータが書き換えられ、
データの不整合や矛盾が発生することを防止することが
できる。
コンピュータがオブジェクトに対して操作を行う際に、
この操作を行うオブジェクトの他に、この操作を行うオ
ブジェクトのデータが変更されることにより、その変更
の影響を受ける他の全てのオブジェクトを、この操作を
行うオブジェクトに関係するオブジェクトとみなしてロ
ックするため、オペレータによる操作中に、他のオペレ
ータにより他のオブジェクトのデータが書き換えられ、
データの不整合や矛盾が発生することを防止することが
できる。
【0012】つまり、オブジェクトがロックされると
き、自身に関連した他のオブジェクトをロックする。従
って、直接操作しようとするオブジェクト以外のオブジ
ェクトであっても、必要なオブジェクトだけはロックす
ることができ、これにより複数のオペレータが、それぞ
れ異なるクライアントコンピュータからオブジェクトを
操作してもデータに不整合や矛盾が生ずることを防止す
ることができる。
き、自身に関連した他のオブジェクトをロックする。従
って、直接操作しようとするオブジェクト以外のオブジ
ェクトであっても、必要なオブジェクトだけはロックす
ることができ、これにより複数のオペレータが、それぞ
れ異なるクライアントコンピュータからオブジェクトを
操作してもデータに不整合や矛盾が生ずることを防止す
ることができる。
【0013】請求項2記載の発明は、請求項1記載の発
明において、前記サーバコンピュータ上のオブジェクト
は、ロックIDを記憶するためのロックID記憶手段を
有し、前記1以上のクライアントコンピュータの内の1
のクライアントコンピュータに、該ロックID記憶手段
に記憶されたロックIDを送信することを特徴とする。
明において、前記サーバコンピュータ上のオブジェクト
は、ロックIDを記憶するためのロックID記憶手段を
有し、前記1以上のクライアントコンピュータの内の1
のクライアントコンピュータに、該ロックID記憶手段
に記憶されたロックIDを送信することを特徴とする。
【0014】従って、この発明によれば、請求項1記載
の発明の作用が得られると共に、ロックID記憶手段に
記憶されたロックIDが、オブジェクトをロック又はロ
ック解除を行う際の、鍵の役割を果たすので、他のクラ
イアントコンピュータによりデータが書換えられること
を防止でき、さらに、オブジェクトのデータの書換えに
よるデータの不整合や矛盾を防止することができる。
の発明の作用が得られると共に、ロックID記憶手段に
記憶されたロックIDが、オブジェクトをロック又はロ
ック解除を行う際の、鍵の役割を果たすので、他のクラ
イアントコンピュータによりデータが書換えられること
を防止でき、さらに、オブジェクトのデータの書換えに
よるデータの不整合や矛盾を防止することができる。
【0015】請求項3記載の発明は、請求項2記載の発
明において、前記サーバコンピュータ上のオブジェクト
は、該オブジェクトのデータを記憶する管理データ記憶
手段を有し、前記1以上のクライアントコンピュータの
内の1のクライアントコンピュータのロックIDと、前
記ロックID記憶手段に記憶されたロックIDとが一致
した場合に、該管理データ記憶手段に記憶されている管
理データを書き換えることを特徴とする。
明において、前記サーバコンピュータ上のオブジェクト
は、該オブジェクトのデータを記憶する管理データ記憶
手段を有し、前記1以上のクライアントコンピュータの
内の1のクライアントコンピュータのロックIDと、前
記ロックID記憶手段に記憶されたロックIDとが一致
した場合に、該管理データ記憶手段に記憶されている管
理データを書き換えることを特徴とする。
【0016】従って、この発明によれば、請求項2記載
の発明の作用が得られると共に、オブジェクトのデータ
を書き換える際には、データを書き換えるクライアント
コンピュータのロックIDと、ロックID記憶手段に記
憶されたIDとを比較して、この比較が一致した場合に
のみ、データの書換えを行っているため、他のクライア
ントコンピュータがロックされているオブジェクトのデ
ータを書き換えてしまうという事態を避けることができ
る。
の発明の作用が得られると共に、オブジェクトのデータ
を書き換える際には、データを書き換えるクライアント
コンピュータのロックIDと、ロックID記憶手段に記
憶されたIDとを比較して、この比較が一致した場合に
のみ、データの書換えを行っているため、他のクライア
ントコンピュータがロックされているオブジェクトのデ
ータを書き換えてしまうという事態を避けることができ
る。
【0017】請求項4記載の発明は、請求項1から3の
いずれかに記載の発明において、前記クライアント−サ
ーバシステムに接続されている、少なくとも1以上のク
ライアントコンピュータは、前記ロックされた全てのオ
ブジェクトが、ロック状態であることを表示することを
特徴とする。
いずれかに記載の発明において、前記クライアント−サ
ーバシステムに接続されている、少なくとも1以上のク
ライアントコンピュータは、前記ロックされた全てのオ
ブジェクトが、ロック状態であることを表示することを
特徴とする。
【0018】より具体的に図面を参照して説明すると、
本発明は、管理データをクライアントコンピュータに送
信するための管理データ読出手段(図2のS15)と、
オブジェクトのデータとロック状態を常時把握するため
の管理データ取得手段(図3のS25)とを有する。
本発明は、管理データをクライアントコンピュータに送
信するための管理データ読出手段(図2のS15)と、
オブジェクトのデータとロック状態を常時把握するため
の管理データ取得手段(図3のS25)とを有する。
【0019】従って、この発明によれば、請求項1から
3のいずれかに記載の発明の作用が得られると共に、ロ
ック状態にある全てのオブジェクトが、ロック状態であ
るということを認識可能なように表示されているため、
オブジェクトを選択する際の効率を向上させることがで
きる。
3のいずれかに記載の発明の作用が得られると共に、ロ
ック状態にある全てのオブジェクトが、ロック状態であ
るということを認識可能なように表示されているため、
オブジェクトを選択する際の効率を向上させることがで
きる。
【0020】つまり、オブジェクトのロック状態は全て
のクライアントコンピュータの画面に反映される。これ
によりオペレータはオブジェクトのロック状態を常に把
握することができる。
のクライアントコンピュータの画面に反映される。これ
によりオペレータはオブジェクトのロック状態を常に把
握することができる。
【0021】請求項5記載の発明は、請求項1から4の
いずれかに記載の発明において、前記クライアントコン
ピュータは、前記オブジェクトのロック状態に基づい
て、入力を制御する入力制御手段を有することを特徴と
する。
いずれかに記載の発明において、前記クライアントコン
ピュータは、前記オブジェクトのロック状態に基づい
て、入力を制御する入力制御手段を有することを特徴と
する。
【0022】より具体的に図面を参照して説明すると、
本発明は、管理データに基づいてオペレータによる入力
が制限される入力手段(図3のS22)を有する。
本発明は、管理データに基づいてオペレータによる入力
が制限される入力手段(図3のS22)を有する。
【0023】従って、この発明によれば、請求項1から
4のいずれかに記載の発明の作用が得られると共に、ロ
ックされているオブジェクトは、クライアントコンピュ
ータにおいて、そのオブジェクトに対するデータ入力等
が制御されているので、データの不整合や矛盾が発生す
ることを防止することができ、さらに効率的にマルチオ
ペレーティングシステムを利用することができる。
4のいずれかに記載の発明の作用が得られると共に、ロ
ックされているオブジェクトは、クライアントコンピュ
ータにおいて、そのオブジェクトに対するデータ入力等
が制御されているので、データの不整合や矛盾が発生す
ることを防止することができ、さらに効率的にマルチオ
ペレーティングシステムを利用することができる。
【0024】つまり、オブジェクトのロック状態によっ
てクライアントコンピュータへの入力に制限を設ける。
これによりオペレータはロックされているオブジェクト
に対してデータ入力をする等の無駄な操作を行うことが
軽減され、クライアントとサーバとの間における無駄な
通信量をも減らすことができる。
てクライアントコンピュータへの入力に制限を設ける。
これによりオペレータはロックされているオブジェクト
に対してデータ入力をする等の無駄な操作を行うことが
軽減され、クライアントとサーバとの間における無駄な
通信量をも減らすことができる。
【0025】請求項6記載の発明は、請求項1から5の
いずれかに記載の発明において、前記サーバコンピュー
タは、前記ロックされてから一定時間が経過したオブジ
ェクトのロックを解除するためのロック解除手段を有す
ることを特徴とする。
いずれかに記載の発明において、前記サーバコンピュー
タは、前記ロックされてから一定時間が経過したオブジ
ェクトのロックを解除するためのロック解除手段を有す
ることを特徴とする。
【0026】より具体的に図面を参照して説明すると、
本発明は、ロック状態を終了させるロック終了手段(図
2のS12)を有する。
本発明は、ロック状態を終了させるロック終了手段(図
2のS12)を有する。
【0027】従って、この発明によれば、請求項1から
5のいずれかに記載の発明の作用が得られると共に、一
定時間が経過した後には、ロックされていたオブジェク
トはそのロックが解除されるので、マルチオペレーティ
ングシステムの利用効率をさらに向上させることができ
る。
5のいずれかに記載の発明の作用が得られると共に、一
定時間が経過した後には、ロックされていたオブジェク
トはそのロックが解除されるので、マルチオペレーティ
ングシステムの利用効率をさらに向上させることができ
る。
【0028】つまり、サーバ側オブジェクト内において
は一定時間が経過するとロックを解除する。これにより
クライアント側オブジェクトがサーバ側オブジェクトを
ロックしたまま解除せず、停止または通信不能になって
も所定時間が経過するとサーバ側オブジェクトはロック
を解除するので、ロックされたサーバ側オブジェクトが
いつまでもロックされ続ける、いわゆるデッドロックを
防止することができる。
は一定時間が経過するとロックを解除する。これにより
クライアント側オブジェクトがサーバ側オブジェクトを
ロックしたまま解除せず、停止または通信不能になって
も所定時間が経過するとサーバ側オブジェクトはロック
を解除するので、ロックされたサーバ側オブジェクトが
いつまでもロックされ続ける、いわゆるデッドロックを
防止することができる。
【0029】請求項7記載の発明は、請求項6記載の発
明において、前記ロック解除手段が、一定時間をカウン
トするタイマーを有することを特徴とする。
明において、前記ロック解除手段が、一定時間をカウン
トするタイマーを有することを特徴とする。
【0030】従って、この発明によれば、請求項6記載
の発明の作用が得られると共に、一定時間をタイマーに
よりカウントし、このカウント結果に基づいて、オブジ
ェクトのロックを解除しているため、オブジェクトのデ
ッドロックを効率的に回避することができる。
の発明の作用が得られると共に、一定時間をタイマーに
よりカウントし、このカウント結果に基づいて、オブジ
ェクトのロックを解除しているため、オブジェクトのデ
ッドロックを効率的に回避することができる。
【0031】
【発明の実施の形態】次に、図面を参照して、本発明に
係るマルチオペレーティングシステムの実施形態につい
て説明する。
係るマルチオペレーティングシステムの実施形態につい
て説明する。
【0032】図1に、本発明に係るマルチオペレーティ
ングシステムの第1の実施形態の構成図を示す。
ングシステムの第1の実施形態の構成図を示す。
【0033】図1の(a)は、ハードウェア環境を示す
構成図である。サーバコンピュータ1と、クライアント
コンピュータ2と、ネットワーク3とを含む。クライア
ントコンピュータ2は複数(本実施形態では3台。)存
在する。サーバコンピュータ1、クライアントコンピュ
ータ2及びネットワーク3はクライアント−サーバシス
テムを構成し、それぞれのクライアントコンピュータ2
から異なるオペレータによりサーバコンピュータ1が操
作可能であり、従って、マルチオペレーティングシステ
ムが構成されている。勿論、本発明においては、サーバ
コンピュータ1やクライアントコンピュータ2の数は、
上記の値に限定されるものではない。
構成図である。サーバコンピュータ1と、クライアント
コンピュータ2と、ネットワーク3とを含む。クライア
ントコンピュータ2は複数(本実施形態では3台。)存
在する。サーバコンピュータ1、クライアントコンピュ
ータ2及びネットワーク3はクライアント−サーバシス
テムを構成し、それぞれのクライアントコンピュータ2
から異なるオペレータによりサーバコンピュータ1が操
作可能であり、従って、マルチオペレーティングシステ
ムが構成されている。勿論、本発明においては、サーバ
コンピュータ1やクライアントコンピュータ2の数は、
上記の値に限定されるものではない。
【0034】図1の(a)に示されるように、このクラ
イアント−サーバシステムは、3台のクライアントコン
ピュータ2が、ネットワーク3によりサーバコンピュー
タ1に接続され、それぞれのクライアントコンピュータ
2には、ディスプレイ等により構成される表示装置21
と、キーボードやマウスやポインティングデバイス等に
より構成される入力装置22とを備えている。
イアント−サーバシステムは、3台のクライアントコン
ピュータ2が、ネットワーク3によりサーバコンピュー
タ1に接続され、それぞれのクライアントコンピュータ
2には、ディスプレイ等により構成される表示装置21
と、キーボードやマウスやポインティングデバイス等に
より構成される入力装置22とを備えている。
【0035】図1の(b)は、オブジェクトの構成を示
す構成図である。サーバコンピュータ1上には管理対象
となるオブジェクト(以下、管理オブジェクトと言
う。)S1が複数存在する。また、それぞれのクライア
ントコンピュータ2上には管理オブジェクトS1の状態
を表示し、オペレータの入力を監視するオブジェクト
(以下、表示オブジェクトと言う。)S2が複数存在す
る。
す構成図である。サーバコンピュータ1上には管理対象
となるオブジェクト(以下、管理オブジェクトと言
う。)S1が複数存在する。また、それぞれのクライア
ントコンピュータ2上には管理オブジェクトS1の状態
を表示し、オペレータの入力を監視するオブジェクト
(以下、表示オブジェクトと言う。)S2が複数存在す
る。
【0036】管理オブジェクトS1は、複数存在し、そ
れぞれなんらかのデータを管理している。管理オブジェ
クトS1は、C++言語等のオブジェクトである。
れぞれなんらかのデータを管理している。管理オブジェ
クトS1は、C++言語等のオブジェクトである。
【0037】表示オブジェクトS2は、複数存在し、そ
れぞれがあらかじめ決められた特定の管理オブジェクト
S1に対するユーザインタフェースの役割をする。表示
オブジェクトS2と管理オブジェクトS1とは、多対1
の関係である。表示オブジェクトS2は、C++言語等
のオブジェクトである。
れぞれがあらかじめ決められた特定の管理オブジェクト
S1に対するユーザインタフェースの役割をする。表示
オブジェクトS2と管理オブジェクトS1とは、多対1
の関係である。表示オブジェクトS2は、C++言語等
のオブジェクトである。
【0038】次に、図2に、図1の(b)に示される管
理オブジェクトS1の構造のブロック図を示し、図3
に、図1の(b)に示される表示オブジェクトS2の構
造のブロック図を示す。
理オブジェクトS1の構造のブロック図を示し、図3
に、図1の(b)に示される表示オブジェクトS2の構
造のブロック図を示す。
【0039】まず、図2に示される管理オブジェクトS
1の構造のブロック図について説明する。図2に示され
るように、サーバコンピュータ1に備えられた管理オブ
ジェクトS1は、オブジェクトのロックを開始するロッ
ク開始手段S11と、オブジェクトのロックを終了させ
るロック終了手段S12と、ロック時間更新手段S13
と、管理データ変更手段S14と、管理データ読出手段
S15と、ロックIDを記憶するための第1のロックI
D記憶部S16と、第1のタイマーS17と、関連オブ
ジェクト検索手段S18と、管理データ記憶部S19と
から構成されている。
1の構造のブロック図について説明する。図2に示され
るように、サーバコンピュータ1に備えられた管理オブ
ジェクトS1は、オブジェクトのロックを開始するロッ
ク開始手段S11と、オブジェクトのロックを終了させ
るロック終了手段S12と、ロック時間更新手段S13
と、管理データ変更手段S14と、管理データ読出手段
S15と、ロックIDを記憶するための第1のロックI
D記憶部S16と、第1のタイマーS17と、関連オブ
ジェクト検索手段S18と、管理データ記憶部S19と
から構成されている。
【0040】ロック開始手段S11は、第1のロックI
D記憶部S16との間でデータをやり取りし、関連オブ
ジェクト検索手段S18からデータが与えられ、第1の
タイマーS17にデータを与える。
D記憶部S16との間でデータをやり取りし、関連オブ
ジェクト検索手段S18からデータが与えられ、第1の
タイマーS17にデータを与える。
【0041】ロック終了手段S12は、第1のロックI
D記憶部S16との間でデータをやり取りし、第1のタ
イマーS17及び関連オブジェクト検索手段S18から
データが与えられる。
D記憶部S16との間でデータをやり取りし、第1のタ
イマーS17及び関連オブジェクト検索手段S18から
データが与えられる。
【0042】ロック時間更新手段S13は、第1のロッ
クID記憶部S16及び関連オブジェクト検索手段S1
8からデータが与えられ、第1のタイマーS17にデー
タを与える。
クID記憶部S16及び関連オブジェクト検索手段S1
8からデータが与えられ、第1のタイマーS17にデー
タを与える。
【0043】管理データ変更手段S14は、第1のロッ
クID記憶部S16からデータが与えられ、管理データ
記憶部S19にデータを与える。
クID記憶部S16からデータが与えられ、管理データ
記憶部S19にデータを与える。
【0044】管理データ読み出し手段S15は、管理デ
ータ記憶部S19からデータが与えられる。
ータ記憶部S19からデータが与えられる。
【0045】管理データ記憶部S19は、関連オブジェ
クト検索手段S18にデータを与える。
クト検索手段S18にデータを与える。
【0046】次に、図3に示される表示オブジェクトS
2の構成のブロック図について以下に説明する。図3に
示されるように、この表示オブジェクトS2は、書き換
えるべきデータが入力する管理データ取得手段S25
と、ロック開始要求手段S26と、ロック終了要求手段
S27と、ロック時間更新要求手段S28と、管理デー
タ変更要求手段S29と、表示手段S21と、入力手段
S22と、第2のタイマーS23と、第2のロックID
記憶部S24とから構成されている。
2の構成のブロック図について以下に説明する。図3に
示されるように、この表示オブジェクトS2は、書き換
えるべきデータが入力する管理データ取得手段S25
と、ロック開始要求手段S26と、ロック終了要求手段
S27と、ロック時間更新要求手段S28と、管理デー
タ変更要求手段S29と、表示手段S21と、入力手段
S22と、第2のタイマーS23と、第2のロックID
記憶部S24とから構成されている。
【0047】図3に示されるように、管理データ取得手
段S25は、表示手段S21及び入力手段S22にデー
タを与える。
段S25は、表示手段S21及び入力手段S22にデー
タを与える。
【0048】ロック開始要求手段S26は、表示手段S
21、第2のタイマーS23及び第2のロックID記憶
部S24にデータを与え、入力手段S22からデータを
受けとる。
21、第2のタイマーS23及び第2のロックID記憶
部S24にデータを与え、入力手段S22からデータを
受けとる。
【0049】ロック終了要求手段S27は、表示手段S
21にデータを与え、入力手段S22、第2のタイマー
S23及び第2のロックID記憶部S24からデータを
受け取る。
21にデータを与え、入力手段S22、第2のタイマー
S23及び第2のロックID記憶部S24からデータを
受け取る。
【0050】ロック時間更新要求手段S28は、第2の
タイマーS23との間においてデータのやり取りを行
い、表示手段S21にデータを与える。
タイマーS23との間においてデータのやり取りを行
い、表示手段S21にデータを与える。
【0051】管理データ変更要求手段S29は、表示手
段S21にデータを与え、入力手段S22及び第2のロ
ックID記憶部S24からデータを受け取る。
段S21にデータを与え、入力手段S22及び第2のロ
ックID記憶部S24からデータを受け取る。
【0052】ここで、図2に示される管理オブジェクト
S1が備える各部材と、図3に示される表示オブジェク
トS2が備える各部材との間は、図1の(b)に示され
るネットワークにより接続されているので、その間にお
いてデータのやり取りが可能となっている。
S1が備える各部材と、図3に示される表示オブジェク
トS2が備える各部材との間は、図1の(b)に示され
るネットワークにより接続されているので、その間にお
いてデータのやり取りが可能となっている。
【0053】次に、図2及び図3に示されるそれぞれの
部材の動作について、以下に詳細に説明する。まず、図
2に示される管理オブジェクトS1の構成部材の動作に
ついて説明する。
部材の動作について、以下に詳細に説明する。まず、図
2に示される管理オブジェクトS1の構成部材の動作に
ついて説明する。
【0054】ロック開始手段S11は、クライアントコ
ンピュータ2に備えられた表示オブジェクトS2からの
要求により、管理オブジェクトS1をロックする。この
ロックは、まず表示オブジェクトS2のロック開始要求
手段S26または他の管理オブジェクトS1のロック開
始手段S11から、ロック開始要求通知またはロック開
始要求通知とロックIDとを受け取ることにより行われ
る。
ンピュータ2に備えられた表示オブジェクトS2からの
要求により、管理オブジェクトS1をロックする。この
ロックは、まず表示オブジェクトS2のロック開始要求
手段S26または他の管理オブジェクトS1のロック開
始手段S11から、ロック開始要求通知またはロック開
始要求通知とロックIDとを受け取ることにより行われ
る。
【0055】このとき第1のロックID記憶部S16に
ロックIDが既に記憶されていれば要求拒否を、要求送
信側に返信し、動作を終了する。第1のロックID記憶
部S16にロックIDが記憶されておらず、ロックID
を受け取っていなければ、新たにロックIDを生成す
る。その後関連オブジェクト検索手段S18より、対象
とされている管理オブジェクトS1のデータが変更され
ることにより、その変更の影響を受ける他にロックすべ
き管理オブジェクトS1(以下、関連オブジェクトと言
う。)のリストを得て、この関連オブジェクトとなった
管理オブジェクトS1に対してロック開始要求通知とロ
ックIDとを送信し、結果が送信されてくるのを待つ。
ロックIDが既に記憶されていれば要求拒否を、要求送
信側に返信し、動作を終了する。第1のロックID記憶
部S16にロックIDが記憶されておらず、ロックID
を受け取っていなければ、新たにロックIDを生成す
る。その後関連オブジェクト検索手段S18より、対象
とされている管理オブジェクトS1のデータが変更され
ることにより、その変更の影響を受ける他にロックすべ
き管理オブジェクトS1(以下、関連オブジェクトと言
う。)のリストを得て、この関連オブジェクトとなった
管理オブジェクトS1に対してロック開始要求通知とロ
ックIDとを送信し、結果が送信されてくるのを待つ。
【0056】受信した結果が要求拒否であれば、表示オ
ブジェクトS2に要求拒否を通知して動作を終了する。
受信した結果が正常であればロックIDを第1のロック
ID記憶部S16に格納し、第1のタイマーS17をス
タートさせ、表示オブジェクトS2にロックIDと正常
終了の通知とを送信し動作を終了する。
ブジェクトS2に要求拒否を通知して動作を終了する。
受信した結果が正常であればロックIDを第1のロック
ID記憶部S16に格納し、第1のタイマーS17をス
タートさせ、表示オブジェクトS2にロックIDと正常
終了の通知とを送信し動作を終了する。
【0057】ロック終了手段S12は、表示オブジェク
トS2からの要求により管理オブジェクトS1のロック
を解除する。このロックの解除は、まず表示オブジェク
トS2のロック終了要求手段S27または他の管理オブ
ジェクトS1のロック終了手段S12から、ロック終了
要求通知とロックIDとを受け取ることにより行われ
る。
トS2からの要求により管理オブジェクトS1のロック
を解除する。このロックの解除は、まず表示オブジェク
トS2のロック終了要求手段S27または他の管理オブ
ジェクトS1のロック終了手段S12から、ロック終了
要求通知とロックIDとを受け取ることにより行われ
る。
【0058】このとき第1のロックID記憶部S16に
ロックIDが記憶されていなければ、エラーを表示オブ
ジェクトS2へ送信し終了する。ロックIDが記憶され
ていれば、受信したロックIDと比較し、値が違ってい
れば要求拒否通知を表示オブジェクトS2へ送信し終了
する。ロックIDが一致したならば、関連オブジェクト
検索手段S18より、関連オブジェクトのリストを得
て、それらの管理オブジェクトS1にロック終了要求通
知とロックIDを送信し、結果が送信されてくるのを待
つ。受信した結果が要求拒否またはエラーであれば、エ
ラーを表示オブジェクトS2へ送信し終了する。受信し
た結果が正常であれば、第1のタイマーS17を停止さ
せ第1のロックID記憶部S16に記憶されているロッ
クIDを消去し、表示オブジェクトS2に正常終了の通
知を送信し、動作を終了する。
ロックIDが記憶されていなければ、エラーを表示オブ
ジェクトS2へ送信し終了する。ロックIDが記憶され
ていれば、受信したロックIDと比較し、値が違ってい
れば要求拒否通知を表示オブジェクトS2へ送信し終了
する。ロックIDが一致したならば、関連オブジェクト
検索手段S18より、関連オブジェクトのリストを得
て、それらの管理オブジェクトS1にロック終了要求通
知とロックIDを送信し、結果が送信されてくるのを待
つ。受信した結果が要求拒否またはエラーであれば、エ
ラーを表示オブジェクトS2へ送信し終了する。受信し
た結果が正常であれば、第1のタイマーS17を停止さ
せ第1のロックID記憶部S16に記憶されているロッ
クIDを消去し、表示オブジェクトS2に正常終了の通
知を送信し、動作を終了する。
【0059】ロック時間更新手段S13は、表示オブジ
ェクトS2からの要求により管理オブジェクトS1のロ
ックを継続する処理を行う。そのため、まず表示オブジ
ェクトS2のロック時間更新要求手段S28または他の
管理オブジェクトS1のロック時間更新手段S13か
ら、ロック時間更新要求通知とロックIDとを受け取
る。
ェクトS2からの要求により管理オブジェクトS1のロ
ックを継続する処理を行う。そのため、まず表示オブジ
ェクトS2のロック時間更新要求手段S28または他の
管理オブジェクトS1のロック時間更新手段S13か
ら、ロック時間更新要求通知とロックIDとを受け取
る。
【0060】このとき第1のロックID記憶部S16に
ロックIDが記憶されていなければ、エラーを表示オブ
ジェクトS2へ送信し、動作を終了する。ロックIDが
記憶されていれば、この記憶されているロックIDと、
受信したロックIDとを比較し、値が違っていれば要求
拒否通知を表示オブジェクトS2へ送信し、動作を終了
する。ロックIDが一致したならば、関連オブジェクト
検索手段S18より、関連オブジェクトのリストを得
て、それらの管理オブジェクトS1にロック時間更新通
知とロックIDとを送信し、結果が送信されてくるのを
待つ。受信した結果が要求拒否またはエラーであれば、
エラーを表示オブジェクトS2へ送信し終了する。受信
した結果が正常であれば、第1のタイマーS17を再ス
タートさせ、表示オブジェクトS2に正常終了の通知を
送信し、動作を終了する。
ロックIDが記憶されていなければ、エラーを表示オブ
ジェクトS2へ送信し、動作を終了する。ロックIDが
記憶されていれば、この記憶されているロックIDと、
受信したロックIDとを比較し、値が違っていれば要求
拒否通知を表示オブジェクトS2へ送信し、動作を終了
する。ロックIDが一致したならば、関連オブジェクト
検索手段S18より、関連オブジェクトのリストを得
て、それらの管理オブジェクトS1にロック時間更新通
知とロックIDとを送信し、結果が送信されてくるのを
待つ。受信した結果が要求拒否またはエラーであれば、
エラーを表示オブジェクトS2へ送信し終了する。受信
した結果が正常であれば、第1のタイマーS17を再ス
タートさせ、表示オブジェクトS2に正常終了の通知を
送信し、動作を終了する。
【0061】管理データ変更手段S14は、表示オブジ
ェクトS2からの要求により管理オブジェクトS1の管
理データ記憶部S19に記憶されている管理データを変
更する動作を行う。
ェクトS2からの要求により管理オブジェクトS1の管
理データ記憶部S19に記憶されている管理データを変
更する動作を行う。
【0062】まず表示オブジェクトS2に備えられた管
理データ変更要求手段S29から、管理データ変更要求
と、変更すべきデータと、管理データと、ロックIDと
を受け取る。このとき第1のロックID記憶部S16に
ロックIDが記憶されていなければ、エラーを表示オブ
ジェクトS2へ送信し終了する。ロックIDが記憶され
ていれば、この記憶されたロックIDと受信したロック
IDとを比較し、値が違っていれば要求拒否通知を表示
オブジェクトS2へ送信し終了する。ロックIDが一致
したならば、受信したデータを管理データ記憶部S19
に格納し、表示オブジェクトS2に正常終了の通知を送
信し、動作を終了する。
理データ変更要求手段S29から、管理データ変更要求
と、変更すべきデータと、管理データと、ロックIDと
を受け取る。このとき第1のロックID記憶部S16に
ロックIDが記憶されていなければ、エラーを表示オブ
ジェクトS2へ送信し終了する。ロックIDが記憶され
ていれば、この記憶されたロックIDと受信したロック
IDとを比較し、値が違っていれば要求拒否通知を表示
オブジェクトS2へ送信し終了する。ロックIDが一致
したならば、受信したデータを管理データ記憶部S19
に格納し、表示オブジェクトS2に正常終了の通知を送
信し、動作を終了する。
【0063】管理データ読出手段S15は、表示オブジ
ェクトS2からの要求により管理オブジェクトS1の管
理データ記憶部S19に記憶されている管理データを読
み出し、表示オブジェクトS2へ送信する。まず表示オ
ブジェクトS2の管理データ取得手段S25から、管理
データ読出要求とロックIDとを受け取る。このとき第
1のロックID記憶部S16にロックIDが記憶されて
いないか、ロックIDが記憶されていても受信したロッ
クIDと値が違っていれば要求拒否通知を表示オブジェ
クトS2へ送信し終了する。ロックIDが一致している
ならば、管理データ記憶部S19に格納している管理デ
ータを表示オブジェクトS2に正常終了の通知と共に送
信する。
ェクトS2からの要求により管理オブジェクトS1の管
理データ記憶部S19に記憶されている管理データを読
み出し、表示オブジェクトS2へ送信する。まず表示オ
ブジェクトS2の管理データ取得手段S25から、管理
データ読出要求とロックIDとを受け取る。このとき第
1のロックID記憶部S16にロックIDが記憶されて
いないか、ロックIDが記憶されていても受信したロッ
クIDと値が違っていれば要求拒否通知を表示オブジェ
クトS2へ送信し終了する。ロックIDが一致している
ならば、管理データ記憶部S19に格納している管理デ
ータを表示オブジェクトS2に正常終了の通知と共に送
信する。
【0064】第1のロックID記憶部S16は、ロック
IDを記憶する。ロックIDが記憶されている場合は、
管理オブジェクトS1はロックされていることになる。
IDを記憶する。ロックIDが記憶されている場合は、
管理オブジェクトS1はロックされていることになる。
【0065】第1のタイマーS17は、所定の時間をカ
ウントし、この所定の時間が経過したら、ロック終了手
段S12にその旨を表す信号を出力し、ロック終了手段
S12にロック終了動作を行わせる。
ウントし、この所定の時間が経過したら、ロック終了手
段S12にその旨を表す信号を出力し、ロック終了手段
S12にロック終了動作を行わせる。
【0066】関連オブジェクト検索手段S18は、あら
かじめ決められている規則に従って、管理データ記憶部
S19からこの管理オブジェクトS1を変更したときに
影響を与える他の管理オブジェクトS1を検出する。
かじめ決められている規則に従って、管理データ記憶部
S19からこの管理オブジェクトS1を変更したときに
影響を与える他の管理オブジェクトS1を検出する。
【0067】管理データ記憶部S19は、管理オブジェ
クトS1が管理しているデータを記憶する。
クトS1が管理しているデータを記憶する。
【0068】次に、図3に示される表示オブジェクトS
2が備える各ブロックの動作について、図2及び図3を
参照して以下に詳細に説明する。
2が備える各ブロックの動作について、図2及び図3を
参照して以下に詳細に説明する。
【0069】表示手段S21は、クライアントコンピュ
ータ2の表示装置21に、管理データ取得手段S25に
よって得られた管理オブジェクトS1の管理データや、
ロック状態や、エラーなどを表示する。
ータ2の表示装置21に、管理データ取得手段S25に
よって得られた管理オブジェクトS1の管理データや、
ロック状態や、エラーなどを表示する。
【0070】入力手段S22は、クライアントコンピュ
ータ2の入力装置22から入力されたデータをロック開
始要求手段S26、ロック終了要求手段S27及び管理
データ変更要求手段S29に送る。また管理データ取得
手段S25より管理オブジェクトS1のロック状態を取
得し、入力装置22からの入力に制限を加える。より具
体的には、管理オブジェクトS1が他の表示オブジェク
トS2にロックされている際には、全ての入力を無視す
る。
ータ2の入力装置22から入力されたデータをロック開
始要求手段S26、ロック終了要求手段S27及び管理
データ変更要求手段S29に送る。また管理データ取得
手段S25より管理オブジェクトS1のロック状態を取
得し、入力装置22からの入力に制限を加える。より具
体的には、管理オブジェクトS1が他の表示オブジェク
トS2にロックされている際には、全ての入力を無視す
る。
【0071】第2のタイマーS23は、ロック開始要求
手段S26によりその動作がスタートさせられ、所定の
時間が経過した後に、ロック時間更新要求手段S28に
信号を出力し、ロック時間更新要求手段S28に時間更
新動作を開始させる。
手段S26によりその動作がスタートさせられ、所定の
時間が経過した後に、ロック時間更新要求手段S28に
信号を出力し、ロック時間更新要求手段S28に時間更
新動作を開始させる。
【0072】第2のロックID記憶部S24は、ロック
開始要求手段S26により与えられたロックIDを記憶
する。
開始要求手段S26により与えられたロックIDを記憶
する。
【0073】管理データ取得手段S25は、繰り返し管
理オブジェクトS1の管理データとロック状態を取得
し、表示手段S21に出力する。この状態において、ま
ず第2のロックID記憶部S24からロックIDを取得
し、この取得したロックIDを管理データ読出通知と共
に、管理オブジェクトS1へ送信し、結果を受信するま
で待つ。結果が正常ならば受信した管理データとロック
状態とを表示手段S21及び入力手段S22へ送り、動
作を終了する。
理オブジェクトS1の管理データとロック状態を取得
し、表示手段S21に出力する。この状態において、ま
ず第2のロックID記憶部S24からロックIDを取得
し、この取得したロックIDを管理データ読出通知と共
に、管理オブジェクトS1へ送信し、結果を受信するま
で待つ。結果が正常ならば受信した管理データとロック
状態とを表示手段S21及び入力手段S22へ送り、動
作を終了する。
【0074】ロック開始要求手段S26は、入力手段S
22により起動され、管理オブジェクトS1にロック開
始要求通知を出力し、結果を待つ。結果が正常ならばロ
ックIDを受信しているので、そのロックIDを第2の
ロックID記憶部S24に記憶させ、第2のタイマーS
23をスタートさせた後、動作を終了する。結果が正常
でなければ表示手段S21にエラーを表す信号を送る。
22により起動され、管理オブジェクトS1にロック開
始要求通知を出力し、結果を待つ。結果が正常ならばロ
ックIDを受信しているので、そのロックIDを第2の
ロックID記憶部S24に記憶させ、第2のタイマーS
23をスタートさせた後、動作を終了する。結果が正常
でなければ表示手段S21にエラーを表す信号を送る。
【0075】ロック終了要求手段S27は、入力手段S
22により起動され、第2のロックID記憶部S24か
ら取得したロックIDとロック終了要求通知とを管理オ
ブジェクトS1へ送り、結果を受信するまで待つ。受信
した結果が正常ならば第2のロックID記憶部S24に
記憶されたロックIDを削除し、第2のタイマーS23
のカウント動作を停止させる。結果が正常でなければ、
表示手段S21にエラーを表す信号を送る。
22により起動され、第2のロックID記憶部S24か
ら取得したロックIDとロック終了要求通知とを管理オ
ブジェクトS1へ送り、結果を受信するまで待つ。受信
した結果が正常ならば第2のロックID記憶部S24に
記憶されたロックIDを削除し、第2のタイマーS23
のカウント動作を停止させる。結果が正常でなければ、
表示手段S21にエラーを表す信号を送る。
【0076】ロック時間更新要求手段S28は、第2の
タイマーS23により起動され、管理オブジェクトS1
に第2のロックID記憶部S24から取得したロックI
Dとともにロック更新要求通知を送り結果を待つ。結果
が正常ならば第2のタイマーS23を再スタートさせ
る。正常でなければ、表示手段S21にエラーを表す信
号を送る。
タイマーS23により起動され、管理オブジェクトS1
に第2のロックID記憶部S24から取得したロックI
Dとともにロック更新要求通知を送り結果を待つ。結果
が正常ならば第2のタイマーS23を再スタートさせ
る。正常でなければ、表示手段S21にエラーを表す信
号を送る。
【0077】管理データ変更要求手段S29は、入力手
段S22より取得したデータと、第2のロックID記憶
部S24より取得したロックIDとを管理オブジェクト
S1に送信し、結果を待つ。結果が正常ならば終了す
る。結果が正常でなければ、表示手段S21にエラーを
表す信号を送る。
段S22より取得したデータと、第2のロックID記憶
部S24より取得したロックIDとを管理オブジェクト
S1に送信し、結果を待つ。結果が正常ならば終了す
る。結果が正常でなければ、表示手段S21にエラーを
表す信号を送る。
【0078】次に、図2から図7を参照して、本実施形
態の動作について説明する。
態の動作について説明する。
【0079】まず動作の概要を説明し、その後詳細につ
いて説明する。図2、図3及び図4を用いて動作の概要
を説明する。図4は、本実施形態に係るマルチオペレー
ティングシステムの動作の概要を示すフローチャートで
ある。本発明に係るマルチオペレーティングシステムに
おける動作には、基本的に3つの動作がある。第1は管
理オブジェクトを階層的にロックする動作、第2はロッ
クの状態を画面に常時表示し、さらにロックの状態に合
わせて入力を制限する動作、第3は管理オブジェクトが
タイムアウト時にロックを解除する動作である。
いて説明する。図2、図3及び図4を用いて動作の概要
を説明する。図4は、本実施形態に係るマルチオペレー
ティングシステムの動作の概要を示すフローチャートで
ある。本発明に係るマルチオペレーティングシステムに
おける動作には、基本的に3つの動作がある。第1は管
理オブジェクトを階層的にロックする動作、第2はロッ
クの状態を画面に常時表示し、さらにロックの状態に合
わせて入力を制限する動作、第3は管理オブジェクトが
タイムアウト時にロックを解除する動作である。
【0080】図3に示される表示オブジェクトS2は、
対応する管理オブジェクトS1の管理データを変更する
前にその管理オブジェクトS1をロックする。ロック中
は他の表示オブジェクトS2を介して、この管理オブジ
ェクトS1の管理データを変更することはできない。表
示オブジェクトS2は、管理オブジェクトS1の管理デ
ータを変更した後、ロックを解除する。
対応する管理オブジェクトS1の管理データを変更する
前にその管理オブジェクトS1をロックする。ロック中
は他の表示オブジェクトS2を介して、この管理オブジ
ェクトS1の管理データを変更することはできない。表
示オブジェクトS2は、管理オブジェクトS1の管理デ
ータを変更した後、ロックを解除する。
【0081】さらに、管理オブジェクトS1のロックは
階層構造となっている。この階層構造となっている管理
オブジェクトS1のロックについて、図4の(a)を参
照して説明する。
階層構造となっている。この階層構造となっている管理
オブジェクトS1のロックについて、図4の(a)を参
照して説明する。
【0082】図4の(a)に、階層構造になっているオ
ブジェクトのロックを行う際の動作のフローチャートを
示す。このフローチャートによれば、まず、ステップA
11において、管理データがロックされているか否かを
確認する。ロックされていなければ(No)、動作を終
える。
ブジェクトのロックを行う際の動作のフローチャートを
示す。このフローチャートによれば、まず、ステップA
11において、管理データがロックされているか否かを
確認する。ロックされていなければ(No)、動作を終
える。
【0083】ロックされていれば(Yes)、ステップ
A12において管理データのロックを継続し、関連する
他の管理データをロックし(ステップA13)、入力デ
ータを管理データに設定し(ステップA14)、管理デ
ータのロックを解除して(ステップA15)動作を終え
る。
A12において管理データのロックを継続し、関連する
他の管理データをロックし(ステップA13)、入力デ
ータを管理データに設定し(ステップA14)、管理デ
ータのロックを解除して(ステップA15)動作を終え
る。
【0084】すなわち、例えばある表示オブジェクトS
2を介して、管理オブジェクトS1−Aをロックしたと
する。このとき管理オブジェクトS1−Aに予め定義さ
れている手段により管理オブジェクトS1−Aのデータ
を変更することで影響を受ける他の管理オブジェクトS
1−Bを割り出し、それを管理オブジェクトS1−A自
身がロックする(ステップA11,A12,A13,A
14,A15)。
2を介して、管理オブジェクトS1−Aをロックしたと
する。このとき管理オブジェクトS1−Aに予め定義さ
れている手段により管理オブジェクトS1−Aのデータ
を変更することで影響を受ける他の管理オブジェクトS
1−Bを割り出し、それを管理オブジェクトS1−A自
身がロックする(ステップA11,A12,A13,A
14,A15)。
【0085】クライアントコンピュータ2の表示装置2
1には表示オブジェクトS2の管理データ取得手段S2
5によって得られた管理オブジェクトS1の管理データ
とロックの状態が表示手段S21によって表示されてい
る。
1には表示オブジェクトS2の管理データ取得手段S2
5によって得られた管理オブジェクトS1の管理データ
とロックの状態が表示手段S21によって表示されてい
る。
【0086】次に、ロックされている管理オブジェクト
S1の入力制御動作について、図4の(b)に示される
フローチャートに基づいて説明する。
S1の入力制御動作について、図4の(b)に示される
フローチャートに基づいて説明する。
【0087】図4の(b)に示されるフローチャートに
よれば、ステップA20において、管理データとロック
状態のデータとを取得する。そして、データを出力し
(ステップA21)、ロック中か否かを確認し(ステッ
プA22)、ロック中でなければ(No)、ステップA
20に移行し、ロック中であれば(Yes)、ステップ
A23に移行して、入力を制限する(ステップA2
3)。
よれば、ステップA20において、管理データとロック
状態のデータとを取得する。そして、データを出力し
(ステップA21)、ロック中か否かを確認し(ステッ
プA22)、ロック中でなければ(No)、ステップA
20に移行し、ロック中であれば(Yes)、ステップ
A23に移行して、入力を制限する(ステップA2
3)。
【0088】すなわち、管理データ取得手段S25は管
理データ読出手段S15に管理データとロックの状態を
繰り返し要求する。管理データ読出手段S15は管理デ
ータ記憶部S19から管理データを取得し、ロックID
記憶部S16にロックIDが記憶されているか否かを調
べて、管理データとロック状態を管理データ取得手段S
25に送信する。管理データ取得手段S25は、管理オ
ブジェクトS1の管理データとロックの状態を表示手段
S21と入力手段S22に送る。表示手段S21では、
管理データを表示し、その管理データを持っている管理
オブジェクトS1がロックされているならロックされて
いる旨を表示する。入力手段S22では、ロック状態
(他の表示オブジェクトS2が管理オブジェクトS1を
ロックしているとき)に入力装置22からの入力があっ
ても全て無視する(ステップA20,A21,A22,
A23)。
理データ読出手段S15に管理データとロックの状態を
繰り返し要求する。管理データ読出手段S15は管理デ
ータ記憶部S19から管理データを取得し、ロックID
記憶部S16にロックIDが記憶されているか否かを調
べて、管理データとロック状態を管理データ取得手段S
25に送信する。管理データ取得手段S25は、管理オ
ブジェクトS1の管理データとロックの状態を表示手段
S21と入力手段S22に送る。表示手段S21では、
管理データを表示し、その管理データを持っている管理
オブジェクトS1がロックされているならロックされて
いる旨を表示する。入力手段S22では、ロック状態
(他の表示オブジェクトS2が管理オブジェクトS1を
ロックしているとき)に入力装置22からの入力があっ
ても全て無視する(ステップA20,A21,A22,
A23)。
【0089】次に、ロックされた管理オブジェクトS1
が、タイマーにより設定された一定時間後にそのロック
が解除される動作について、図4の(c)に示されるフ
ローチャートを参照して説明する。
が、タイマーにより設定された一定時間後にそのロック
が解除される動作について、図4の(c)に示されるフ
ローチャートを参照して説明する。
【0090】図4の(c)によると、ステップA31に
おいて、第1のタイマーS17のタイマーをスタートさ
せ、ステップA32において、所定時間経過したか否か
を確認し、所定時間経過していない場合は(No)、待
機状態となり、所定時間経過している場合は(Ye
s)、管理データのロックを解除し(ステップA3
3)、その後、動作を終える。
おいて、第1のタイマーS17のタイマーをスタートさ
せ、ステップA32において、所定時間経過したか否か
を確認し、所定時間経過していない場合は(No)、待
機状態となり、所定時間経過している場合は(Ye
s)、管理データのロックを解除し(ステップA3
3)、その後、動作を終える。
【0091】すなわち、管理オブジェクトS1が有する
第1のタイマーS17は、スタートしてから所定時間が
経過すると、ロック終了要求手段S12に、終了要求を
求めることにより、ロックを解除する(ステップA3
1,A32,A33)。
第1のタイマーS17は、スタートしてから所定時間が
経過すると、ロック終了要求手段S12に、終了要求を
求めることにより、ロックを解除する(ステップA3
1,A32,A33)。
【0092】次にオブジェクトのロック動作について詳
細に説明する。はじめにロックの開始、次にロックの解
除、最後にタイマーによるロック解除について説明す
る。
細に説明する。はじめにロックの開始、次にロックの解
除、最後にタイマーによるロック解除について説明す
る。
【0093】図2、図3及び図5を用いてロック開始の
動作を説明する。図5に、管理オブジェクトS1のロッ
クを開始する際の動作のフローチャートを示す。
動作を説明する。図5に、管理オブジェクトS1のロッ
クを開始する際の動作のフローチャートを示す。
【0094】図5の(a)に示されるフローチャートに
よると、ステップA201において、ロック開始入力の
受け付けを行い、ステップA202において、ロック開
始要求を送信し、ステップA203において、サブルー
チンである図5の(b)に示されるフローチャートの動
作を行い、その後、ステップA204において、正常終
了であるか否かを確認する。
よると、ステップA201において、ロック開始入力の
受け付けを行い、ステップA202において、ロック開
始要求を送信し、ステップA203において、サブルー
チンである図5の(b)に示されるフローチャートの動
作を行い、その後、ステップA204において、正常終
了であるか否かを確認する。
【0095】このステップA204の確認において、正
常終了でなければ(No)、動作を終える。正常終了で
あれば(Yes)、ステップA205において、第2の
ロックID記憶部S24がロックIDを記憶し、第2の
タイマーS23のタイマーをスタートさせ、動作を終え
る。
常終了でなければ(No)、動作を終える。正常終了で
あれば(Yes)、ステップA205において、第2の
ロックID記憶部S24がロックIDを記憶し、第2の
タイマーS23のタイマーをスタートさせ、動作を終え
る。
【0096】ここで、上述のステップA203におけ
る、図5の(b)に示されるサブルーチンであるフロー
チャートの動作について説明する。
る、図5の(b)に示されるサブルーチンであるフロー
チャートの動作について説明する。
【0097】図5の(b)を参照すると、まず、ステッ
プA101において、ロック開始手段S11がロック開
始の要求を受信し、ステップA102において、この管
理オブジェクトS1が既にロック状態であるか否かを確
認し、既にロック状態であれば(Yes)、ステップA
103に移行し、ロック状態でなければ(No)、ステ
ップA104に移行する。
プA101において、ロック開始手段S11がロック開
始の要求を受信し、ステップA102において、この管
理オブジェクトS1が既にロック状態であるか否かを確
認し、既にロック状態であれば(Yes)、ステップA
103に移行し、ロック状態でなければ(No)、ステ
ップA104に移行する。
【0098】ステップA104において、第1のロック
ID記憶部S16にロックIDが記憶されているか否
か、すなわちロックIDを受信したか否かを確認し、ロ
ックIDを受信していれば(Yes)、ステップA10
6に移行し、ロックIDを受信していなければ(N
o)、ステップA105において、ロックIDを生成
し、その後ステップA106に移行する。
ID記憶部S16にロックIDが記憶されているか否
か、すなわちロックIDを受信したか否かを確認し、ロ
ックIDを受信していれば(Yes)、ステップA10
6に移行し、ロックIDを受信していなければ(N
o)、ステップA105において、ロックIDを生成
し、その後ステップA106に移行する。
【0099】ステップA106では、関連オブジェクト
検索手段S18が、関連オブジェクトを検索し、検索さ
れた関連オブジェクトに対して、「ロック要求」と、ロ
ックIDとを送信する(ステップA107)。
検索手段S18が、関連オブジェクトを検索し、検索さ
れた関連オブジェクトに対して、「ロック要求」と、ロ
ックIDとを送信する(ステップA107)。
【0100】次に、ステップA108において、上記の
ステップA101からステップA107までの動作(動
作X1)を関連する全てのオブジェクトに対して実行
し、その後ステップA109に移行する。
ステップA101からステップA107までの動作(動
作X1)を関連する全てのオブジェクトに対して実行
し、その後ステップA109に移行する。
【0101】ステップA109では、正常終了であるか
否かを確認し、正常終了でなければ(No)、ステップ
A103に移行し、正常終了であれば(Yes)、ステ
ップA110に移行する。ステップA103では、要求
拒否を表示オブジェクトS2に送信し、その後動作を終
える。
否かを確認し、正常終了でなければ(No)、ステップ
A103に移行し、正常終了であれば(Yes)、ステ
ップA110に移行する。ステップA103では、要求
拒否を表示オブジェクトS2に送信し、その後動作を終
える。
【0102】ステップA110では、ロックIDを第1
のロックID記憶部S16において記憶する。その後、
第1のタイマーS17のタイマーをスタートさせ(ステ
ップA111)、正常終了信号と、ロックIDとを送信
し(ステップA112)、動作を終える。
のロックID記憶部S16において記憶する。その後、
第1のタイマーS17のタイマーをスタートさせ(ステ
ップA111)、正常終了信号と、ロックIDとを送信
し(ステップA112)、動作を終える。
【0103】これら、図5の(a)及び図5の(b)に
示されるフローチャートの動作を、以下にさらにまとめ
る。表示オブジェクトS2の入力手段S22によりロッ
ク開始が入力されると、ロック開始要求手段S26は管
理オブジェクトS1のロック開始手段S11にロック開
始の要求を送信する(ステップA201,A202,A
203)。
示されるフローチャートの動作を、以下にさらにまとめ
る。表示オブジェクトS2の入力手段S22によりロッ
ク開始が入力されると、ロック開始要求手段S26は管
理オブジェクトS1のロック開始手段S11にロック開
始の要求を送信する(ステップA201,A202,A
203)。
【0104】ロック開始手段S11では第1のロックI
D記憶部S16にロックIDが記憶されていれば、要求
拒否をロック開始要求手段S26に送信する(ステップ
A101,A102,A103)。
D記憶部S16にロックIDが記憶されていれば、要求
拒否をロック開始要求手段S26に送信する(ステップ
A101,A102,A103)。
【0105】第1のロックID記憶部S16にロックI
Dが記憶されておらず、ロック要求にロックIDが含ま
れていればそのロックIDを用い、ロック要求にロック
IDが含まれていなければ新たにロックIDを生成する
(ステップA104,A105)。
Dが記憶されておらず、ロック要求にロックIDが含ま
れていればそのロックIDを用い、ロック要求にロック
IDが含まれていなければ新たにロックIDを生成する
(ステップA104,A105)。
【0106】次に、管理オブジェクトS1が備える関連
オブジェクト検索手段S18が、管理データ記憶部S1
9の管理データから得た他にロックすべき管理オブジェ
クトS1(関連オブジェクト)のデータを得る。これら
の管理オブジェクトS1のロック開始手段S11にロッ
ク開始の要求とロックIDとが送信される(ステップA
106,A107,A108)。
オブジェクト検索手段S18が、管理データ記憶部S1
9の管理データから得た他にロックすべき管理オブジェ
クトS1(関連オブジェクト)のデータを得る。これら
の管理オブジェクトS1のロック開始手段S11にロッ
ク開始の要求とロックIDとが送信される(ステップA
106,A107,A108)。
【0107】関連オブジェクトのロックに成功(ロック
IDが送信されてくる)したら、ロックIDを第1のロ
ックID記憶部S16に格納し、タイマーをスタートさ
せ、ロック開始要求手段S26にロックIDを送信する
(ステップA109,A110,A111,A11
2)。
IDが送信されてくる)したら、ロックIDを第1のロ
ックID記憶部S16に格納し、タイマーをスタートさ
せ、ロック開始要求手段S26にロックIDを送信する
(ステップA109,A110,A111,A11
2)。
【0108】ステップA108は他の管理オブジェクト
のロック開始動作であり、前述の手順を同様に処理す
る。
のロック開始動作であり、前述の手順を同様に処理す
る。
【0109】最後に表示オブジェクトS2が備えるロッ
ク開始要求手段S26は、ロックIDを第2のロックI
D記憶部S24に格納し第2のタイマーS23をスター
トさせる(ステップA205,A206)。
ク開始要求手段S26は、ロックIDを第2のロックI
D記憶部S24に格納し第2のタイマーS23をスター
トさせる(ステップA205,A206)。
【0110】このとき、同じ管理オブジェクトS1を表
示している他の表示オブジェクトS2は管理オブジェク
トS1がロックされたことを表示する。例えば図1の
(b)で表示オブジェクトS2−aが管理オブジェクト
S1−Aをロックすると、他の表示オブジェクトは、表
示手段S21によって管理オブジェクトS1−Aがロッ
クされたことを表示する。これは前述の表示の動作で説
明した。
示している他の表示オブジェクトS2は管理オブジェク
トS1がロックされたことを表示する。例えば図1の
(b)で表示オブジェクトS2−aが管理オブジェクト
S1−Aをロックすると、他の表示オブジェクトは、表
示手段S21によって管理オブジェクトS1−Aがロッ
クされたことを表示する。これは前述の表示の動作で説
明した。
【0111】以上の動作により、オブジェクトのロック
が行われる。
が行われる。
【0112】次に、図2、図3及び図6を参照して、ロ
ック解除の動作を説明する。図6に、オブジェクトのロ
ックを解除する際の動作のフローチャートを示す。
ック解除の動作を説明する。図6に、オブジェクトのロ
ックを解除する際の動作のフローチャートを示す。
【0113】図6の(a)によると、まず、ステップA
220において、ロック終了要求手段S27は、ロック
終了の入力を受け付け、その後ロック終了の要求と、ロ
ックIDとを送信する(ステップA221)。
220において、ロック終了要求手段S27は、ロック
終了の入力を受け付け、その後ロック終了の要求と、ロ
ックIDとを送信する(ステップA221)。
【0114】次に、ステップA222において、サブル
ーチンである図6の(b)に示される動作(X2)を行
い、その後ステップA223に移行する。
ーチンである図6の(b)に示される動作(X2)を行
い、その後ステップA223に移行する。
【0115】ステップA223においては、正常に終了
したか否かの確認を行い、正常に終了していれば(Ye
s)、ステップA225に移行し、正常に終了していな
ければ(No)、ステップA224に移行する。ステッ
プA224では、表示手段S21上にエラーを表示し、
その後動作を終える。
したか否かの確認を行い、正常に終了していれば(Ye
s)、ステップA225に移行し、正常に終了していな
ければ(No)、ステップA224に移行する。ステッ
プA224では、表示手段S21上にエラーを表示し、
その後動作を終える。
【0116】ステップA225においては、第2のロッ
クID記憶部S24に記憶されているロックIDを削除
し、第2のタイマーS23のタイマーを停止させ(ステ
ップA226)、その後動作を終える。
クID記憶部S24に記憶されているロックIDを削除
し、第2のタイマーS23のタイマーを停止させ(ステ
ップA226)、その後動作を終える。
【0117】次に、図6の(b)に示されるサブルーチ
ンの動作について説明する。まず、ステップA121に
おいて、管理オブジェクトS2は、ロック終了手段S1
2が、ロック終了の要求とロックIDを受信する。
ンの動作について説明する。まず、ステップA121に
おいて、管理オブジェクトS2は、ロック終了手段S1
2が、ロック終了の要求とロックIDを受信する。
【0118】その後、ステップA122において、ロッ
ク状態であるか否かを確認し、ロック状態でなければ
(No)、ステップA128に移行し、ロック状態であ
れば(Yes)、ステップA123に移行する。ステッ
プA123では、ロックIDが第1のロックID記憶部
S16に記憶されているロックIDと一致しているか否
かの確認を行い、一致していれば(Yes)、ステップ
A124に移行し、一致していなければ(No)、ステ
ップA129に移行する。
ク状態であるか否かを確認し、ロック状態でなければ
(No)、ステップA128に移行し、ロック状態であ
れば(Yes)、ステップA123に移行する。ステッ
プA123では、ロックIDが第1のロックID記憶部
S16に記憶されているロックIDと一致しているか否
かの確認を行い、一致していれば(Yes)、ステップ
A124に移行し、一致していなければ(No)、ステ
ップA129に移行する。
【0119】ステップA124では、関係するオブジェ
クトにロック終了要求の信号と、ロックIDとを送信す
る。
クトにロック終了要求の信号と、ロックIDとを送信す
る。
【0120】そして、ステップA125において、上記
ステップA121からステップA124までの動作(X
2)を、全ての管理オブジェクトに対して実行し、その
後ステップA126に移行する。
ステップA121からステップA124までの動作(X
2)を、全ての管理オブジェクトに対して実行し、その
後ステップA126に移行する。
【0121】ステップA126では、正常に終了したか
否かを確認し、正常に終了していれば(Yes)、ステ
ップA127に移行し、正常に終了していなければ(N
o)、ステップA128に移行する。
否かを確認し、正常に終了していれば(Yes)、ステ
ップA127に移行し、正常に終了していなければ(N
o)、ステップA128に移行する。
【0122】ステップA127では、正常に終了したこ
とを表す信号を送信し、その後動作を終える。ステップ
A128では、エラー信号を送信し、その後動作を終え
る。ステップA129では、要求拒否を表す信号を送信
し、その後動作を終える。
とを表す信号を送信し、その後動作を終える。ステップ
A128では、エラー信号を送信し、その後動作を終え
る。ステップA129では、要求拒否を表す信号を送信
し、その後動作を終える。
【0123】これら、図6の(a)及び図6の(b)に
示されるオブジェクトのロック解除動作について、さら
に、以下にその概要を説明する。
示されるオブジェクトのロック解除動作について、さら
に、以下にその概要を説明する。
【0124】入力手段S22からロック終了要求手段S
27にロック終了の入力が伝えられると、ロック終了要
求手段S27は第2のロックID記憶部S24からロッ
クIDを取得し、ロック終了手段S12に送信する(ス
テップA220,A221)。
27にロック終了の入力が伝えられると、ロック終了要
求手段S27は第2のロックID記憶部S24からロッ
クIDを取得し、ロック終了手段S12に送信する(ス
テップA220,A221)。
【0125】管理オブジェクトS1が備えるロック終了
手段S12では、第1のロックID記憶部S16にロッ
クIDが記憶されてなければ、既にロック状態では無い
のでエラーを返信する(ステップA122,A12
8)。
手段S12では、第1のロックID記憶部S16にロッ
クIDが記憶されてなければ、既にロック状態では無い
のでエラーを返信する(ステップA122,A12
8)。
【0126】逆に第1のロックID記憶部S16にロッ
クIDが記憶されていれば、このロックIDと受信した
ロックIDとを比較し、違う値である場合は要求拒否の
メッセージを表示オブジェクトS2に返信する(ステッ
プA123,A129)。
クIDが記憶されていれば、このロックIDと受信した
ロックIDとを比較し、違う値である場合は要求拒否の
メッセージを表示オブジェクトS2に返信する(ステッ
プA123,A129)。
【0127】ロックIDが一致した場合は、関連オブジ
ェクト検索手段S18により検索された管理オブジェク
トS1にロック終了とロックIDとを送信し、結果が返
信されてくるのを待つ(ステップA124,A12
5)。
ェクト検索手段S18により検索された管理オブジェク
トS1にロック終了とロックIDとを送信し、結果が返
信されてくるのを待つ(ステップA124,A12
5)。
【0128】正常に終了した場合は表示オブジェクトに
正常終了した旨を返信し、正常に終了しなかった場合は
エラーを返信する(ステップA126,A127,A1
28)。
正常終了した旨を返信し、正常に終了しなかった場合は
エラーを返信する(ステップA126,A127,A1
28)。
【0129】表示オブジェクトS2が備えるロック終了
要求手段S27は、管理オブジェクトS1からの返信が
正常終了だった場合、第2のロックID記憶部S24に
記憶されたロックIDを削除し、第2のタイマーS23
を停止させる。エラーだった場合は表示手段S21より
エラーを画面に表示する(ステップA223,A22
4,A225,A226)。
要求手段S27は、管理オブジェクトS1からの返信が
正常終了だった場合、第2のロックID記憶部S24に
記憶されたロックIDを削除し、第2のタイマーS23
を停止させる。エラーだった場合は表示手段S21より
エラーを画面に表示する(ステップA223,A22
4,A225,A226)。
【0130】以上の動作により、オブジェクトのロック
解除が実行される。
解除が実行される。
【0131】次に、図2、図3及び図7を用いてロック
を継続する動作を説明する。図7に、オブジェクトのロ
ック状態を継続させる場合の動作のフローチャートを示
す。
を継続する動作を説明する。図7に、オブジェクトのロ
ック状態を継続させる場合の動作のフローチャートを示
す。
【0132】図7の(a)を参照すると、まず、ステッ
プA251において、第2のタイマーS23のタイマー
をスタートさせる。そして、ステップA252におい
て、所定時間が経過するのを待つ。所定時間が経過した
後、ステップA253において、ロック時間更新要求手
段S28は、ロック時間更新要求を受信する。
プA251において、第2のタイマーS23のタイマー
をスタートさせる。そして、ステップA252におい
て、所定時間が経過するのを待つ。所定時間が経過した
後、ステップA253において、ロック時間更新要求手
段S28は、ロック時間更新要求を受信する。
【0133】そして、ステップA254において、サブ
ルーチンである図7の(b)に示されるフローチャート
の動作(X3)を行い、その後、ステップA255に移
行する。
ルーチンである図7の(b)に示されるフローチャート
の動作(X3)を行い、その後、ステップA255に移
行する。
【0134】ステップA255において、正常に終了し
たか否かを確認し、正常に終了していれば(Yes)、
ステップA251に移行し、正常に終了していなければ
(No)、ステップA256に移行する。ステップA2
56では、表示手段S21上にエラーを表示し、ステッ
プA257において第2のタイマーS23のタイマーを
停止させ、その後動作を終える。
たか否かを確認し、正常に終了していれば(Yes)、
ステップA251に移行し、正常に終了していなければ
(No)、ステップA256に移行する。ステップA2
56では、表示手段S21上にエラーを表示し、ステッ
プA257において第2のタイマーS23のタイマーを
停止させ、その後動作を終える。
【0135】次に、上記ステップA254の動作におけ
る、サブルーチンである図7の(b)に示される動作
(X3)について説明する。
る、サブルーチンである図7の(b)に示される動作
(X3)について説明する。
【0136】まず、ステップA151において、管理オ
ブジェクトS1に備えられた、ロック時間更新手段S1
3が、ロック時間更新要求を受信する。そして、ステッ
プA152において、ロック状態であるか否かを確認
し、ロック状態でなければ(No)、ステップA160
に移行し、ロック状態であれば(Yes)、ステップA
153に移行する。
ブジェクトS1に備えられた、ロック時間更新手段S1
3が、ロック時間更新要求を受信する。そして、ステッ
プA152において、ロック状態であるか否かを確認
し、ロック状態でなければ(No)、ステップA160
に移行し、ロック状態であれば(Yes)、ステップA
153に移行する。
【0137】ステップA153では、第1のロックID
記憶部S16に記憶されているロックIDと一致してい
るか否かを確認し、一致していれば(Yes)、ステッ
プA154に移行し、一致していなければ(No)、ス
テップA159に移行する。
記憶部S16に記憶されているロックIDと一致してい
るか否かを確認し、一致していれば(Yes)、ステッ
プA154に移行し、一致していなければ(No)、ス
テップA159に移行する。
【0138】ステップA154では、第1のタイマーS
17を再スタートさせ、その後、ステップA155にお
いて、関係オブジェクトに対して、ロック時間更新要求
と、ロックIDとを送信し、その後ステップA156に
移行する。
17を再スタートさせ、その後、ステップA155にお
いて、関係オブジェクトに対して、ロック時間更新要求
と、ロックIDとを送信し、その後ステップA156に
移行する。
【0139】ステップA156では、上記のステップA
151からステップA155までの動作を全ての管理オ
ブジェクトにおいて実行し、その後、ステップA157
に移行する。
151からステップA155までの動作を全ての管理オ
ブジェクトにおいて実行し、その後、ステップA157
に移行する。
【0140】ステップA157では、正常に終了したか
否かを確認し、正常に終了すれば(Yes)、ステップ
A158に移行し、正常に終了していなければ(No)
ステップA160に移行する。
否かを確認し、正常に終了すれば(Yes)、ステップ
A158に移行し、正常に終了していなければ(No)
ステップA160に移行する。
【0141】ステップA158では、正常終了を送信
し、その後動作を終える。ステップA159では、要求
拒否を送信し、その後動作を終える。ステップA160
では、エラーを送信し、その後動作を終える。
し、その後動作を終える。ステップA159では、要求
拒否を送信し、その後動作を終える。ステップA160
では、エラーを送信し、その後動作を終える。
【0142】次に、図7の(c)に示されるフローチャ
ートを参照して、所定時間経過した後のロックの自動解
除動作について説明する。
ートを参照して、所定時間経過した後のロックの自動解
除動作について説明する。
【0143】まず、ステップA161において、所定時
間を経過(タイムアウト)していることを確認する。
間を経過(タイムアウト)していることを確認する。
【0144】そして、ステップA162において、関係
オブジェクトにロック解除要求とロックIDとを送信す
る。
オブジェクトにロック解除要求とロックIDとを送信す
る。
【0145】そして、ステップA163において、図6
の(b)に示される動作X2を全ての管理オブジェクト
に対して実行し、その後、動作を終える。
の(b)に示される動作X2を全ての管理オブジェクト
に対して実行し、その後、動作を終える。
【0146】次に、これら図7の(a)、図7の(b)
及び図7の(c)に示される動作について、さらに以下
に詳細に説明する。
及び図7の(c)に示される動作について、さらに以下
に詳細に説明する。
【0147】ロック開始要求手段S26によって始動さ
れた第2のタイマーS23は所定時間が経過する度にロ
ック時間更新要求手段S28を始動する。ロック時間更
新要求手段S28は第2のロックID記憶部S24から
ロックIDを取得し、ロック時間更新手段S13にロッ
クIDを送信する(ステップA251,A252,A2
53)。
れた第2のタイマーS23は所定時間が経過する度にロ
ック時間更新要求手段S28を始動する。ロック時間更
新要求手段S28は第2のロックID記憶部S24から
ロックIDを取得し、ロック時間更新手段S13にロッ
クIDを送信する(ステップA251,A252,A2
53)。
【0148】管理オブジェクトS1側では、ロック時間
更新手段S13が第1のロックID記憶部S16にロッ
クIDが格納されていなければエラーを表示オブジェク
トに返信する(ステップA151,A152,A16
0)。
更新手段S13が第1のロックID記憶部S16にロッ
クIDが格納されていなければエラーを表示オブジェク
トに返信する(ステップA151,A152,A16
0)。
【0149】次に受信したロックIDと管理オブジェク
トの第1のロックID記憶部S16に記憶されたロック
IDとが同じでないなら要求拒否通知を表示オブジェク
トに返信する(ステップA153,A159)。
トの第1のロックID記憶部S16に記憶されたロック
IDとが同じでないなら要求拒否通知を表示オブジェク
トに返信する(ステップA153,A159)。
【0150】次に第2のタイマーS17を再スタートさ
せる(ステップA154)。
せる(ステップA154)。
【0151】次に関連オブジェクト検索手段S18によ
って検索された管理オブジェクトS1に、ロック時間更
新要求通知とロックIDとを送信し、結果が返信されて
くるのを待つ。ステップA156では同様の処理を他の
管理オブジェクト内で実行する(ステップA155,A
156)。
って検索された管理オブジェクトS1に、ロック時間更
新要求通知とロックIDとを送信し、結果が返信されて
くるのを待つ。ステップA156では同様の処理を他の
管理オブジェクト内で実行する(ステップA155,A
156)。
【0152】返信が正常であったら、表示オブジェクト
S2に正常に終了した旨を送信する。エラーであった
ら、表示オブジェクトS2にエラーを送信する(ステッ
プA158,A160)。
S2に正常に終了した旨を送信する。エラーであった
ら、表示オブジェクトS2にエラーを送信する(ステッ
プA158,A160)。
【0153】この時点で表示オブジェクトS2に処理が
戻る。受信した結果が正常であれば再びタイマーをスタ
ートさせて時間の経過を待つ。エラーを受信したら表示
手段S21によってエラーを画面に表示する(ステップ
A255,A256,A257)。
戻る。受信した結果が正常であれば再びタイマーをスタ
ートさせて時間の経過を待つ。エラーを受信したら表示
手段S21によってエラーを画面に表示する(ステップ
A255,A256,A257)。
【0154】図2及び図7の(c)を参照してロックの
自動解除の動作についてさらに詳細に説明する。ある表
示オブジェクトS2が管理オブジェクトS1をロックし
た状態で、クライアントコンピュータ2やネットワーク
3に障害が発生した等の理由により、通信不能になった
場合、管理オブジェクトS1は所定時間経過後に自動的
にロック終了動作を行う。
自動解除の動作についてさらに詳細に説明する。ある表
示オブジェクトS2が管理オブジェクトS1をロックし
た状態で、クライアントコンピュータ2やネットワーク
3に障害が発生した等の理由により、通信不能になった
場合、管理オブジェクトS1は所定時間経過後に自動的
にロック終了動作を行う。
【0155】このロックの自動解除動作においては、第
1のタイマーS17が所定時間経過するとロック終了手
段S12を始動させる(ステップA161,A162,
A163)。従って、この動作によれば、所定時間が経
過したオブジェクトは、自動的にロックが解除されるこ
とになる。
1のタイマーS17が所定時間経過するとロック終了手
段S12を始動させる(ステップA161,A162,
A163)。従って、この動作によれば、所定時間が経
過したオブジェクトは、自動的にロックが解除されるこ
とになる。
【0156】次に、図3及び図8を参照して、ロックさ
れたオブジェクトに対する入力の制限動作について説明
する。図8は、ロックされたオブジェクトに対して入力
を制限する動作を示すフローチャートである。
れたオブジェクトに対する入力の制限動作について説明
する。図8は、ロックされたオブジェクトに対して入力
を制限する動作を示すフローチャートである。
【0157】図8を参照すると、まず、ステップA26
1において、オブジェクトがロックされているか否かを
確認する。そして、ロックされていれば(Yes)、ス
テップA262に移行し、ロックされていなければ(N
o)、ステップA263に移行する。
1において、オブジェクトがロックされているか否かを
確認する。そして、ロックされていれば(Yes)、ス
テップA262に移行し、ロックされていなければ(N
o)、ステップA263に移行する。
【0158】ステップA262では、自分でオブジェク
トをロックしているか否かを確認し、自分でロックして
いれば(Yes)、ステップA263に移行し、自分で
ロックしていなければ(No)、動作を終える。
トをロックしているか否かを確認し、自分でロックして
いれば(Yes)、ステップA263に移行し、自分で
ロックしていなければ(No)、動作を終える。
【0159】ステップA263では、他の部材にこの入
力データを送信し、その後動作を終える。
力データを送信し、その後動作を終える。
【0160】図8に示されるフローチャートの動作を、
以下にさらに詳細に説明する。入力手段S22に入力が
あったとき、管理オブジェクトS1がロックされている
か否かを表すデータを管理データ取得手段S25から受
け取り、ロックされていなければ、入力を受け付け、こ
の入力をそれぞれロック開始要求手段S26、ロック終
了要求手段S27及び管理データ変更要求手段S29に
送る。
以下にさらに詳細に説明する。入力手段S22に入力が
あったとき、管理オブジェクトS1がロックされている
か否かを表すデータを管理データ取得手段S25から受
け取り、ロックされていなければ、入力を受け付け、こ
の入力をそれぞれロック開始要求手段S26、ロック終
了要求手段S27及び管理データ変更要求手段S29に
送る。
【0161】ロックされている場合、第2のロックID
記憶部S24にロックIDが記憶されていれば、自分で
ロックしていることになるので、入力を受け付け、ロッ
ク開始要求手段S26、ロック終了要求手段S27及び
管理データ変更要求手段S29に送る。ロックされてい
てなおかつ第2のロックID記憶部S24にロックID
が記憶されていなければ、他の表示オブジェクトS2が
管理オブジェクトS1をロックしていることになるので
入力を無視する。
記憶部S24にロックIDが記憶されていれば、自分で
ロックしていることになるので、入力を受け付け、ロッ
ク開始要求手段S26、ロック終了要求手段S27及び
管理データ変更要求手段S29に送る。ロックされてい
てなおかつ第2のロックID記憶部S24にロックID
が記憶されていなければ、他の表示オブジェクトS2が
管理オブジェクトS1をロックしていることになるので
入力を無視する。
【0162】次に、図2、図3及び図9を用いて管理デ
ータを変更する動作を説明する。図9は、管理データを
変更する際の動作を示すフローチャートである。
ータを変更する動作を説明する。図9は、管理データを
変更する際の動作を示すフローチャートである。
【0163】まず、図9の(a)に示されるように、ス
テップA271において、管理データが入力され、そし
て、データ変更要求通知を管理データ変更要求手段S2
9が受け、第2のロックID記憶部S24がロックID
を受信し、管理データ取得手段S25がデータを受信す
る(ステップA272)。
テップA271において、管理データが入力され、そし
て、データ変更要求通知を管理データ変更要求手段S2
9が受け、第2のロックID記憶部S24がロックID
を受信し、管理データ取得手段S25がデータを受信す
る(ステップA272)。
【0164】ステップA274では、図9の(b)に示
されるサブルーチンとしてのフローチャートの動作(X
4)を実行し、その後、ステップA274に移行する。
されるサブルーチンとしてのフローチャートの動作(X
4)を実行し、その後、ステップA274に移行する。
【0165】ステップA274では、正常終了であるか
否かを確認し、正常終了であれば(Yes)、動作を終
え、正常終了でなければ(No)、ステップA275に
移行し、ステップA275においてエラー表示を行い、
動作を終える。
否かを確認し、正常終了であれば(Yes)、動作を終
え、正常終了でなければ(No)、ステップA275に
移行し、ステップA275においてエラー表示を行い、
動作を終える。
【0166】次に、図9の(b)に示されるフローチャ
ートの動作(X4)について説明する。まず、ステップ
A171において、データ変更要求通知と、ロックID
とデータとを受信する。
ートの動作(X4)について説明する。まず、ステップ
A171において、データ変更要求通知と、ロックID
とデータとを受信する。
【0167】そして、ステップA172において、ロッ
クIDが一致しているか否かの確認を行う。ロックID
が一致していれば(Yes)、ステップA173に移行
し、ロックIDが一致していなければ(No)、ステッ
プA175に移行する。
クIDが一致しているか否かの確認を行う。ロックID
が一致していれば(Yes)、ステップA173に移行
し、ロックIDが一致していなければ(No)、ステッ
プA175に移行する。
【0168】ステップA173では、データの更新を実
行する。そして、データの更新を実行した後、ステップ
A174において、正常終了を通知して、動作を終え
る。また、ステップA175では、要求拒否を通知し
て、動作を終える。
行する。そして、データの更新を実行した後、ステップ
A174において、正常終了を通知して、動作を終え
る。また、ステップA175では、要求拒否を通知し
て、動作を終える。
【0169】次に、この図9の(a)及び図9の(b)
に示される動作について、以下にさらに詳細に説明す
る。まず入力手段S22から管理データ変更要求手段S
29にデータが送信される。管理データ変更要求手段S
29では第2のロックID記憶部S24からロックID
を取得し、管理データ変更要求通知と共に表示オブジェ
クトS2へ送信する(ステップA271,A272,A
273)。
に示される動作について、以下にさらに詳細に説明す
る。まず入力手段S22から管理データ変更要求手段S
29にデータが送信される。管理データ変更要求手段S
29では第2のロックID記憶部S24からロックID
を取得し、管理データ変更要求通知と共に表示オブジェ
クトS2へ送信する(ステップA271,A272,A
273)。
【0170】管理オブジェクトS1では、管理データ変
更手段S14が第1のロックID記憶部S16から取得
したロックIDと受信したロックIDとの値を比較し、
ロックIDの値が同じであれば受信したデータを管理デ
ータ記憶部S19に格納し、表示オブジェクトS2へ正
常終了を返信する。ロックIDの値が同じでないならば
要求拒否を表示オブジェクトS2へ返信する(ステップ
A171,A172,A173,A174,A17
5)。
更手段S14が第1のロックID記憶部S16から取得
したロックIDと受信したロックIDとの値を比較し、
ロックIDの値が同じであれば受信したデータを管理デ
ータ記憶部S19に格納し、表示オブジェクトS2へ正
常終了を返信する。ロックIDの値が同じでないならば
要求拒否を表示オブジェクトS2へ返信する(ステップ
A171,A172,A173,A174,A17
5)。
【0171】その後、ステップA274に移行し、正常
終了か否かの確認を行い、正常であれば何もせず、正常
でなければその旨を表示する(ステップA274,A2
75)。
終了か否かの確認を行い、正常であれば何もせず、正常
でなければその旨を表示する(ステップA274,A2
75)。
【0172】次に、本発明に係るマルチオペレーティン
グシステムの第1の実施形態について図2、図3及び図
10を参照して詳細に説明する。図10に、本発明に係
るマルチオペレーティングシステムの一実施形態の構成
図を示す。
グシステムの第1の実施形態について図2、図3及び図
10を参照して詳細に説明する。図10に、本発明に係
るマルチオペレーティングシステムの一実施形態の構成
図を示す。
【0173】図10に示されているように、このマルチ
オペレーティングシステムの実施形態は、1台のサーバ
コンピュータ1と、クライアントコンピュータ2−1及
びクライアントコンピュータ2−2とから構成されてい
る。
オペレーティングシステムの実施形態は、1台のサーバ
コンピュータ1と、クライアントコンピュータ2−1及
びクライアントコンピュータ2−2とから構成されてい
る。
【0174】また、サーバコンピュータ1には、2つの
管理オブジェクトS1−1及びS1−2とが備えられて
おり、クライアントコンピュータ2−1には、1つの表
示オブジェクトS2−1が備えられており、クライアン
トコンピュータ2−2には、表示オブジェクトS2−
1’及び表示オブジェクトS2−2が備えられている。
管理オブジェクトS1−1及びS1−2とが備えられて
おり、クライアントコンピュータ2−1には、1つの表
示オブジェクトS2−1が備えられており、クライアン
トコンピュータ2−2には、表示オブジェクトS2−
1’及び表示オブジェクトS2−2が備えられている。
【0175】今、あるオペレータがクライアントコンピ
ュータ2−1から、管理オブジェクトS1−1の管理デ
ータの変更を行う場合を考える。まず、表示オブジェク
トS2−1が管理オブジェクトS1−1をロックする。
管理オブジェクトS1−1は、まだロックされていない
ので、ロックIDを生成する。仮にロックIDの値を、
この図10に示されるように、01234567である
とする。
ュータ2−1から、管理オブジェクトS1−1の管理デ
ータの変更を行う場合を考える。まず、表示オブジェク
トS2−1が管理オブジェクトS1−1をロックする。
管理オブジェクトS1−1は、まだロックされていない
ので、ロックIDを生成する。仮にロックIDの値を、
この図10に示されるように、01234567である
とする。
【0176】さらに管理オブジェクトS1−1は、関連
オブジェクト検索手段S11によって他の管理オブジェ
クトを検索する。仮に管理オブジェクトS1−2が、関
係する管理オブジェクトとして検出されたら、管理オブ
ジェクトS1−1はこの管理オブジェクトS1−2を、
その値が01234567であるロックIDを使ってロ
ックする。同様に管理オブジェクトS1−2が他の管理
オブジェクトをロックする場合もある。最後に管理オブ
ジェクトS1−1は表示オブジェクトS2−1にロック
IDを送信する。
オブジェクト検索手段S11によって他の管理オブジェ
クトを検索する。仮に管理オブジェクトS1−2が、関
係する管理オブジェクトとして検出されたら、管理オブ
ジェクトS1−1はこの管理オブジェクトS1−2を、
その値が01234567であるロックIDを使ってロ
ックする。同様に管理オブジェクトS1−2が他の管理
オブジェクトをロックする場合もある。最後に管理オブ
ジェクトS1−1は表示オブジェクトS2−1にロック
IDを送信する。
【0177】管理オブジェクトS1−1を表示している
表示オブジェクトS2−1、S2−1' は管理データ取
得手段S25によって、管理オブジェクトS1−1がロ
ックされたことを知り、表示手段S21によって画面に
ロックしていることを表示する。
表示オブジェクトS2−1、S2−1' は管理データ取
得手段S25によって、管理オブジェクトS1−1がロ
ックされたことを知り、表示手段S21によって画面に
ロックしていることを表示する。
【0178】次にオペレータがデータを入力すると、表
示オブジェクトS2−1は、ロックID0123456
7と入力データとを管理オブジェクトS1−1に送信す
る。管理オブジェクトS1−1はロックIDが等しいの
で、管理データの変更を実行する。
示オブジェクトS2−1は、ロックID0123456
7と入力データとを管理オブジェクトS1−1に送信す
る。管理オブジェクトS1−1はロックIDが等しいの
で、管理データの変更を実行する。
【0179】オペレータの入力が終了するとロックを解
除するため、表示オブジェクトS2−1は、ロックID
01234567とロック終了要求とを管理オブジェク
トS1−1に送信する。管理オブジェクトS1−1は、
ロック終了手段S12によって第1のロックID記憶部
S16に記憶されているロックIDを削除し、第1のタ
イマーS17を停止させ、管理オブジェクトS1−2に
ロック終了要求を送信する。
除するため、表示オブジェクトS2−1は、ロックID
01234567とロック終了要求とを管理オブジェク
トS1−1に送信する。管理オブジェクトS1−1は、
ロック終了手段S12によって第1のロックID記憶部
S16に記憶されているロックIDを削除し、第1のタ
イマーS17を停止させ、管理オブジェクトS1−2に
ロック終了要求を送信する。
【0180】管理オブジェクトS1−1を表示している
表示オブジェクトS2−1及びS2−1' は管理データ
取得手段S25によって、管理オブジェクトS1−1の
ロックが終了したことを表示手段S21によって画面に
表示する。
表示オブジェクトS2−1及びS2−1' は管理データ
取得手段S25によって、管理オブジェクトS1−1の
ロックが終了したことを表示手段S21によって画面に
表示する。
【0181】このように、本実施形態によれば、複数の
クライアントコンピュータ2上から、サーバコンピュー
タ1上の管理オブジェクトS1をロックした場合、この
ロックされた管理オブジェクトS1に関係し、この管理
オブジェクトS1のデータが書き換えられることにより
影響を受ける管理オブジェクトを全て関連オブジェクト
とし、そして、この関連オブジェクトをもロックするこ
とにより、他のオペレータが関連オブジェクトを操作す
ることによるデータの不整合や矛盾が発生することを防
止することができる。
クライアントコンピュータ2上から、サーバコンピュー
タ1上の管理オブジェクトS1をロックした場合、この
ロックされた管理オブジェクトS1に関係し、この管理
オブジェクトS1のデータが書き換えられることにより
影響を受ける管理オブジェクトを全て関連オブジェクト
とし、そして、この関連オブジェクトをもロックするこ
とにより、他のオペレータが関連オブジェクトを操作す
ることによるデータの不整合や矛盾が発生することを防
止することができる。
【0182】また、サーバコンピュータ1上の管理オブ
ジェクトS1において、第1のロックID記憶部S16
がロックIDを記憶し、クライアントコンピュータ2
が、この第1のロックID記憶手段S16に記憶された
ロックIDを、クライアントコンピュータ2に送信する
ため、ロックIDの管理を完全に行うことができ、他の
クライアントコンピュータ2により、ロックされた管理
オブジェクトS1のデータが書き換えられてしまうこと
を防止することができる。
ジェクトS1において、第1のロックID記憶部S16
がロックIDを記憶し、クライアントコンピュータ2
が、この第1のロックID記憶手段S16に記憶された
ロックIDを、クライアントコンピュータ2に送信する
ため、ロックIDの管理を完全に行うことができ、他の
クライアントコンピュータ2により、ロックされた管理
オブジェクトS1のデータが書き換えられてしまうこと
を防止することができる。
【0183】また、サーバコンピュータ1上の管理オブ
ジェクトS1は、この管理オブジェクトS1のデータを
記憶する管理データ記憶部S19を有し、クライアント
コンピュータ2のロックIDと、第1のロックID記憶
部S16に記憶されたロックIDとが一致した場合にの
み、管理データ記憶部S19に記憶されている管理デー
タを書き換えるため、ロックされたオブジェクトが、他
のクライアントコンピュータによりそのデータが書き換
えられてしまい、データに不整合や矛盾が発生するとい
うことを確実に防止することができる。
ジェクトS1は、この管理オブジェクトS1のデータを
記憶する管理データ記憶部S19を有し、クライアント
コンピュータ2のロックIDと、第1のロックID記憶
部S16に記憶されたロックIDとが一致した場合にの
み、管理データ記憶部S19に記憶されている管理デー
タを書き換えるため、ロックされたオブジェクトが、他
のクライアントコンピュータによりそのデータが書き換
えられてしまい、データに不整合や矛盾が発生するとい
うことを確実に防止することができる。
【0184】また、ロックされた全ての管理オブジェク
トS1は、ロックされたことが分かるように、クライア
ントコンピュータ2の画面上に表示されているので、オ
ペレータは、どのオブジェクトがロックされているのか
否かを簡単に把握することができる。
トS1は、ロックされたことが分かるように、クライア
ントコンピュータ2の画面上に表示されているので、オ
ペレータは、どのオブジェクトがロックされているのか
否かを簡単に把握することができる。
【0185】また、ロックされているオブジェクトへの
データ入力に対して制限を加えているため、管理オブジ
ェクト上のデータの不整合や矛盾が発生することをさら
に防止することができる。
データ入力に対して制限を加えているため、管理オブジ
ェクト上のデータの不整合や矛盾が発生することをさら
に防止することができる。
【0186】また、オブジェクトがロックされてから一
定時間が経過すると、そのロックを自動的に解除するの
で、オブジェクトのデッドロックを確実に防止すること
ができる。
定時間が経過すると、そのロックを自動的に解除するの
で、オブジェクトのデッドロックを確実に防止すること
ができる。
【0187】さらに、管理オブジェクトS1がロックさ
れてから一定時間が経過したか否かを確認するために、
第1のタイマーS17を利用しているため、オブジェク
トがロックされたままになる、いわゆるデッドロックを
有効に回避することができる。
れてから一定時間が経過したか否かを確認するために、
第1のタイマーS17を利用しているため、オブジェク
トがロックされたままになる、いわゆるデッドロックを
有効に回避することができる。
【0188】
【発明の効果】以上の説明から明らかなように、本発明
によれば、管理オブジェクト毎に自身に関係のある他の
管理オブジェクトのデータを持ち、管理オブジェクトが
他の管理オブジェクトをロックすることにより、ある管
理オブジェクトがロックされると、影響のある他の管理
オブジェクトを全てロックすることにより、複数のオペ
レータが、異なるが互いに影響を与える関係にある管理
オブジェクトを操作することによるデータの不整合や矛
盾を防止することが可能なマルチオペレーティングシス
テムを提供することができる。
によれば、管理オブジェクト毎に自身に関係のある他の
管理オブジェクトのデータを持ち、管理オブジェクトが
他の管理オブジェクトをロックすることにより、ある管
理オブジェクトがロックされると、影響のある他の管理
オブジェクトを全てロックすることにより、複数のオペ
レータが、異なるが互いに影響を与える関係にある管理
オブジェクトを操作することによるデータの不整合や矛
盾を防止することが可能なマルチオペレーティングシス
テムを提供することができる。
【0189】また、サーバコンピュータ上のオブジェク
トは、ロックIDを記憶するためのロックID記憶手段
を有し、1以上のクライアントコンピュータの内の1の
クライアントコンピュータに、このロックID記憶手段
に記憶されたロックIDを送信するため、ロックIDの
確認を完全に行うことができ、このロックIDにより、
クライアントコンピュータの識別を完全に行うことが可
能なマルチオペレーティングシステムを提供することが
できる。
トは、ロックIDを記憶するためのロックID記憶手段
を有し、1以上のクライアントコンピュータの内の1の
クライアントコンピュータに、このロックID記憶手段
に記憶されたロックIDを送信するため、ロックIDの
確認を完全に行うことができ、このロックIDにより、
クライアントコンピュータの識別を完全に行うことが可
能なマルチオペレーティングシステムを提供することが
できる。
【0190】また、サーバコンピュータ上のオブジェク
トは、このオブジェクトのデータを記憶する管理データ
記憶手段を有し、1以上のクライアントコンピュータの
内の1のクライアントコンピュータのロックIDと、ロ
ックID記憶手段に記憶されたロックIDとが一致した
場合に、管理データ記憶手段に記憶されている管理デー
タを書き換えるため、オブジェクトがロックされている
際に、他のクライアントコンピュータによりオブジェク
トのデータが書き換えられることによるデータの不整合
や矛盾をさらに完全に防止することが可能なマルチオペ
レーティングシステムを提供することができる。
トは、このオブジェクトのデータを記憶する管理データ
記憶手段を有し、1以上のクライアントコンピュータの
内の1のクライアントコンピュータのロックIDと、ロ
ックID記憶手段に記憶されたロックIDとが一致した
場合に、管理データ記憶手段に記憶されている管理デー
タを書き換えるため、オブジェクトがロックされている
際に、他のクライアントコンピュータによりオブジェク
トのデータが書き換えられることによるデータの不整合
や矛盾をさらに完全に防止することが可能なマルチオペ
レーティングシステムを提供することができる。
【0191】また、管理オブジェクトのロックの状態
を、全てのクライアントコンピュータ上に表示している
ため、オペレータが管理オブジェクトを操作可能か否か
を、操作する前に判断することができ、その操作性を向
上させることが可能なマルチオペレーティングシステム
を提供することができる。
を、全てのクライアントコンピュータ上に表示している
ため、オペレータが管理オブジェクトを操作可能か否か
を、操作する前に判断することができ、その操作性を向
上させることが可能なマルチオペレーティングシステム
を提供することができる。
【0192】また、管理オブジェクトのロックの状態に
よって入力を受け付けないため、オペレータが他のオペ
レータによって既にロックされている管理オブジェクト
を操作することを防ぐことができ、その誤操作を防止
し、操作性をさらに向上させることが可能なマルチオペ
レーティングシステムを提供することができる。
よって入力を受け付けないため、オペレータが他のオペ
レータによって既にロックされている管理オブジェクト
を操作することを防ぐことができ、その誤操作を防止
し、操作性をさらに向上させることが可能なマルチオペ
レーティングシステムを提供することができる。
【0193】また、管理オブジェクトがロックされたま
ま所定の時間が経過すると、そのロックを自動的に解除
するため、管理オブジェクトをロックした状態でクライ
アントコンピュータやネットワーク等に障害が発生した
場合であっても、デッドロック状態が発生することを防
止することが可能なマルチオペレーティングシステムを
提供することができる。
ま所定の時間が経過すると、そのロックを自動的に解除
するため、管理オブジェクトをロックした状態でクライ
アントコンピュータやネットワーク等に障害が発生した
場合であっても、デッドロック状態が発生することを防
止することが可能なマルチオペレーティングシステムを
提供することができる。
【0194】さらに、オブジェクトのロックを自動解除
する際に、その一定時間をカウントするための、タイマ
ーを設けているため、オブジェクトのロック解除をさら
に効率的に行うことが可能なマルチオペレーティングシ
ステムを提供することができる。
する際に、その一定時間をカウントするための、タイマ
ーを設けているため、オブジェクトのロック解除をさら
に効率的に行うことが可能なマルチオペレーティングシ
ステムを提供することができる。
【図1】本発明に係るマルチオペレーティングシステム
を適用するクライアント−サーバシステムの一実施形態
の構成図である。
を適用するクライアント−サーバシステムの一実施形態
の構成図である。
【図2】本発明に係る管理オブジェクトの構造の一実施
形態を示すブロック図である。
形態を示すブロック図である。
【図3】本発明に係る表示オブジェクトの構造の一実施
形態を示すブロック図である。
形態を示すブロック図である。
【図4】本発明に係るマルチオペレーティングシステム
の動作の概要を示すフローチャートである。
の動作の概要を示すフローチャートである。
【図5】本発明に係るマルチオペレーティングシステム
のオブジェクトのロック開始動作を示すフローチャート
である。
のオブジェクトのロック開始動作を示すフローチャート
である。
【図6】本発明に係るマルチオペレーティングシステム
のオブジェクトのロック解除動作を示すフローチャート
である。
のオブジェクトのロック解除動作を示すフローチャート
である。
【図7】本発明に係るマルチオペレーティングシステム
のオブジェクトのロック継続動作を示すフローチャート
である。
のオブジェクトのロック継続動作を示すフローチャート
である。
【図8】本発明に係るマルチオペレーティングシステム
の入力制御動作を示すフローチャートである。
の入力制御動作を示すフローチャートである。
【図9】本発明に係るマルチオペレーティングシステム
の管理データ変更動作を示すフローチャートである。
の管理データ変更動作を示すフローチャートである。
【図10】本発明に係るマルチオペレーティングシステ
ムの第1の実施形態の構成を示すブロック図である。
ムの第1の実施形態の構成を示すブロック図である。
1 サーバコンピュータ 2 クライアントコンピュータ 3 ネットワーク 21 表示装置 22 入力装置 S1 管理オブジェクト S2 表示オブジェクト S11 ロック開始手段 S12 ロック終了手段 S13 ロック時間更新手段 S14 管理データ変更手段 S15 管理データ読出手段 S16 第1のロックID記憶部 S17 第1のタイマー S18 関連オブジェクト検索手段 S19 管理データ記憶部 S21 表示手段 S22 入力手段 S23 第2のタイマー S24 第2のロックID記憶部 S25 管理データ取得手段 S26 ロック開始要求手段 S27 ロック終了要求手段 S28 ロック時間更新要求手段 S29 管理データ変更要求手段
Claims (7)
- 【請求項1】 サーバコンピュータと、少なくとも1以
上のクライアントコンピュータとが接続されたクライア
ント−サーバシステムにおけるマルチオペレーティング
システムにおいて、 前記1以上のクライアントコンピュータの内の1のクラ
イアントコンピュータが、前記サーバコンピュータ上の
オブジェクトに対してロックを行うと、 前記サーバコンピュータは、該ロックが行われたサーバ
コンピュータ上のオブジェクトに関係する他の全てのオ
ブジェクトをロックすることを特徴とするマルチオペレ
ーティングシステム。 - 【請求項2】 前記サーバコンピュータ上のオブジェク
トは、ロックIDを記憶するためのロックID記憶手段
を有し、 前記1以上のクライアントコンピュータの内の1のクラ
イアントコンピュータに、該ロックID記憶手段に記憶
されたロックIDを送信することを特徴とする請求項1
記載のマルチオペレーティングシステム。 - 【請求項3】 前記サーバコンピュータ上のオブジェク
トは、該オブジェクトのデータを記憶する管理データ記
憶手段を有し、 前記1以上のクライアントコンピュータの内の1のクラ
イアントコンピュータのロックIDと、前記ロックID
記憶手段に記憶されたロックIDとが一致した場合に、
該管理データ記憶手段に記憶されている管理データを書
き換えることを特徴とする請求項2記載のマルチオペレ
ーティングシステム。 - 【請求項4】 前記クライアント−サーバシステムに接
続されている、少なくとも1以上のクライアントコンピ
ュータは、 前記ロックされた全てのオブジェクトが、ロック状態で
あることを表示することを特徴とする請求項1から3の
いずれかに記載のマルチオペレーティングシステム。 - 【請求項5】 前記クライアントコンピュータは、 前記オブジェクトのロック状態に基づいて、入力を制御
する入力制御手段を有することを特徴とする請求項1か
ら4のいずれかに記載のマルチオペレーティングシステ
ム。 - 【請求項6】 前記サーバコンピュータは、前記ロック
されてから一定時間が経過したオブジェクトのロックを
解除するためのロック解除手段を有することを特徴とす
る請求項1から5のいずれかに記載のマルチオペレーテ
ィングシステム。 - 【請求項7】 前記ロック解除手段が、一定時間をカウ
ントするタイマーを有することを特徴とする請求項6記
載のマルチオペレーティングシステム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9165554A JPH1115682A (ja) | 1997-06-23 | 1997-06-23 | マルチオペレーティングシステム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9165554A JPH1115682A (ja) | 1997-06-23 | 1997-06-23 | マルチオペレーティングシステム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH1115682A true JPH1115682A (ja) | 1999-01-22 |
Family
ID=15814580
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP9165554A Pending JPH1115682A (ja) | 1997-06-23 | 1997-06-23 | マルチオペレーティングシステム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH1115682A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1316898A3 (de) * | 2001-11-28 | 2004-11-10 | Siemens Aktiengesellschaft | Einfache und sichere Methode zum Sperren von Datensätzen aus CGI-Scripten heraus |
| JP2017507429A (ja) * | 2014-03-06 | 2017-03-16 | エイアールエム リミテッド | トランザクショナル・メモリ・サポート |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01286070A (ja) * | 1988-05-13 | 1989-11-17 | Nec Corp | データ処理システム |
| JPH02195453A (ja) * | 1989-01-25 | 1990-08-02 | Toshiba Corp | ファイルアクセス制御方式 |
| JPH05204677A (ja) * | 1992-01-30 | 1993-08-13 | Fujitsu Ltd | 連想ロック方式 |
| JPH07509794A (ja) * | 1992-07-29 | 1995-10-26 | ノキア テレコミュニカシオンス オサケ ユキチュア | コンピュータに割り当てられたリソースを管理する方法 |
| JPH0922366A (ja) * | 1995-07-05 | 1997-01-21 | Matsushita Electric Ind Co Ltd | 共同作業システム |
-
1997
- 1997-06-23 JP JP9165554A patent/JPH1115682A/ja active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01286070A (ja) * | 1988-05-13 | 1989-11-17 | Nec Corp | データ処理システム |
| JPH02195453A (ja) * | 1989-01-25 | 1990-08-02 | Toshiba Corp | ファイルアクセス制御方式 |
| JPH05204677A (ja) * | 1992-01-30 | 1993-08-13 | Fujitsu Ltd | 連想ロック方式 |
| JPH07509794A (ja) * | 1992-07-29 | 1995-10-26 | ノキア テレコミュニカシオンス オサケ ユキチュア | コンピュータに割り当てられたリソースを管理する方法 |
| JPH0922366A (ja) * | 1995-07-05 | 1997-01-21 | Matsushita Electric Ind Co Ltd | 共同作業システム |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1316898A3 (de) * | 2001-11-28 | 2004-11-10 | Siemens Aktiengesellschaft | Einfache und sichere Methode zum Sperren von Datensätzen aus CGI-Scripten heraus |
| JP2017507429A (ja) * | 2014-03-06 | 2017-03-16 | エイアールエム リミテッド | トランザクショナル・メモリ・サポート |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5095421A (en) | Transaction processing facility within an operating system environment | |
| EP0972240B1 (en) | An agent-implemented locking mechanism | |
| EP0398492B1 (en) | A flexible interface to authentication services in a distributed data processing system | |
| US5434994A (en) | System and method for maintaining replicated data coherency in a data processing system | |
| US6412034B1 (en) | Transaction-based locking approach | |
| US5241675A (en) | Method for enforcing the serialization of global multidatabase transactions through committing only on consistent subtransaction serialization by the local database managers | |
| JP2705717B2 (ja) | ロック装置及び方法、ロック要求の細分性を判別するための装置及び方法 | |
| US7146366B2 (en) | Distributed concurrency control using serialization ordering | |
| US5659682A (en) | Scheme to determine completion of directory operations for server recovery | |
| US20060206901A1 (en) | Method and system for deadlock detection in a distributed environment | |
| US20040205148A1 (en) | Method for operating a computer cluster | |
| EP0482761A2 (en) | Rule driven transaction management system and method | |
| JPH06314227A (ja) | バージョン化オブジェクトに対するロッキング機構 | |
| EP0917051B1 (en) | State-based object transition control and attribute-based locking | |
| JP3222125B2 (ja) | システム間データベース共用方式 | |
| Lafortune | Modeling and analysis of transaction execution in database systems | |
| JPH06337807A (ja) | データベースにおける制約の実行の自動化のためのシステム及び方法 | |
| Patil et al. | Goex: Perspectives and designs towards a runtime for autonomous llm applications | |
| CN109918187A (zh) | 任务调度方法、装置、设备和存储介质 | |
| CN119046025A (zh) | 分布式锁控制方法、装置、计算机设备及介质 | |
| US6826761B1 (en) | Efficient timer management system | |
| CA2521947C (en) | Low-overhead storage cluster configuration locking | |
| CN121209741A (zh) | 基于运行日志的异常控制方法、装置、设备及存储介质 | |
| JP2009129414A (ja) | データベース同期化システム | |
| Son | Scheduling real-time transactions |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20000118 |