JPH05334266A - サーバ・クライアントモデルの処理装置 - Google Patents
サーバ・クライアントモデルの処理装置Info
- Publication number
- JPH05334266A JPH05334266A JP4140269A JP14026992A JPH05334266A JP H05334266 A JPH05334266 A JP H05334266A JP 4140269 A JP4140269 A JP 4140269A JP 14026992 A JP14026992 A JP 14026992A JP H05334266 A JPH05334266 A JP H05334266A
- Authority
- JP
- Japan
- Prior art keywords
- server
- client
- cell
- processing means
- information
- 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
Links
Landscapes
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
- Storage Device Security (AREA)
Abstract
(57)【要約】
【目的】マルチプロセッサ構成のシステムにおけるサー
バ・クライアントモデルの処理装置に関し,耐故障性お
よび処理の高速化の両方の要件を満足するサーバ・クラ
イアント間のデータ共有を可能とすることを目的とす
る。 【構成】サーバ11のセル割当て処理手段14により,クラ
イアント12からの要求に対して,不揮発性の共用メモリ
17内にそのクライアント12に割り当てるセルを確保し,
システム内で一意の識別子をその領域内に設定する。カ
ーネル13のセルアクセス処理手段16は,セル内に設定さ
れた識別子を基に,そのセルが割り当てられた正当なク
ライアント12にのみ,そのセルへのアクセスを許す。ク
ライアント12の通知情報設定処理手段15は,カーネル13
が提供するセルアクセス処理手段16を介して,サーバ11
への通知情報を共用メモリ17内のセルに設定する。
バ・クライアントモデルの処理装置に関し,耐故障性お
よび処理の高速化の両方の要件を満足するサーバ・クラ
イアント間のデータ共有を可能とすることを目的とす
る。 【構成】サーバ11のセル割当て処理手段14により,クラ
イアント12からの要求に対して,不揮発性の共用メモリ
17内にそのクライアント12に割り当てるセルを確保し,
システム内で一意の識別子をその領域内に設定する。カ
ーネル13のセルアクセス処理手段16は,セル内に設定さ
れた識別子を基に,そのセルが割り当てられた正当なク
ライアント12にのみ,そのセルへのアクセスを許す。ク
ライアント12の通知情報設定処理手段15は,カーネル13
が提供するセルアクセス処理手段16を介して,サーバ11
への通知情報を共用メモリ17内のセルに設定する。
Description
【0001】
【産業上の利用分野】本発明は,サーバとクライアント
間において耐故障性を兼ね備えた効率的なデータ共有を
可能とするサーバ・クライアントモデルの処理装置に関
する。
間において耐故障性を兼ね備えた効率的なデータ共有を
可能とするサーバ・クライアントモデルの処理装置に関
する。
【0002】サーバ・クライアントモデルのシステムで
は,特定の処理機能を提供するサーバに対し,クライア
ントがメッセージ通信などにより処理を要求する。その
メッセージ通信のオーバヘッドをできるだけ少なくする
とともに,障害時にもその処理要求に関するデータ等の
資源の一貫性を保証できるようにする必要がある。
は,特定の処理機能を提供するサーバに対し,クライア
ントがメッセージ通信などにより処理を要求する。その
メッセージ通信のオーバヘッドをできるだけ少なくする
とともに,障害時にもその処理要求に関するデータ等の
資源の一貫性を保証できるようにする必要がある。
【0003】
【従来の技術】マルチプロセッサ構成のサーバ・クライ
アントモデルに基づくシステムでは,メッセージ通信に
より各種の情報伝達を行い,クライアント空間とサーバ
空間とで情報を共有している。このようなサーバ・クラ
イアントモデルに基づくシステムとして,例えば以下の
文献に記載されているものがある。
アントモデルに基づくシステムでは,メッセージ通信に
より各種の情報伝達を行い,クライアント空間とサーバ
空間とで情報を共有している。このようなサーバ・クラ
イアントモデルに基づくシステムとして,例えば以下の
文献に記載されているものがある。
【0004】参考文献:日経エレクトロニクス199
1.2.18,no.520,村松他,「システムを止
めずに保守・運用が可能なOSを開発」 従来,このようなシステムにおいて,サーバとクライア
ント間で情報を共有する場合,メッセージ通信で情報の
引き渡しを行うか,または外部記憶装置等に設けたファ
イルを共有することによって,情報の共有を行ってい
た。
1.2.18,no.520,村松他,「システムを止
めずに保守・運用が可能なOSを開発」 従来,このようなシステムにおいて,サーバとクライア
ント間で情報を共有する場合,メッセージ通信で情報の
引き渡しを行うか,または外部記憶装置等に設けたファ
イルを共有することによって,情報の共有を行ってい
た。
【0005】なお,サーバとクライアント間で情報の共
有が必要な処理としては,クライアント側の処理異常な
どに対し,サーバがクライアントの処理状態を継続し,
データなどの資源の一貫性を保証する必要がある処理,
例えばトランザクション処理などが挙げられる。
有が必要な処理としては,クライアント側の処理異常な
どに対し,サーバがクライアントの処理状態を継続し,
データなどの資源の一貫性を保証する必要がある処理,
例えばトランザクション処理などが挙げられる。
【0006】
【発明が解決しようとする課題】サーバ・クライアント
モデルのシステムにおいて,サーバとクライアント間で
情報を共有する場合,メッセージ通信やファイルを共有
する方式が用いられているが,耐故障性または処理の高
速性のいずれかが阻害されるという問題があった。以下
にその問題点を具体的に説明する。
モデルのシステムにおいて,サーバとクライアント間で
情報を共有する場合,メッセージ通信やファイルを共有
する方式が用いられているが,耐故障性または処理の高
速性のいずれかが阻害されるという問題があった。以下
にその問題点を具体的に説明する。
【0007】メッセージ通信によって,クライアント側
の情報をサーバ側で共有する必要がある場合には,クラ
イアント側の情報が変化するたびに,サーバ側へのメッ
セージ通信が必要になる。一方,クライアントとサーバ
間のメッセージ通信では,情報が正しく伝わる必要があ
るため,必ず同期をとらなければならない。したがっ
て,頻繁にクライアント側の情報が変化する場合には,
多量のメッセージ通信が行われることになり,メッセー
ジ通信のオーバヘッドが大きくなって,処理高速化の妨
げとなる。
の情報をサーバ側で共有する必要がある場合には,クラ
イアント側の情報が変化するたびに,サーバ側へのメッ
セージ通信が必要になる。一方,クライアントとサーバ
間のメッセージ通信では,情報が正しく伝わる必要があ
るため,必ず同期をとらなければならない。したがっ
て,頻繁にクライアント側の情報が変化する場合には,
多量のメッセージ通信が行われることになり,メッセー
ジ通信のオーバヘッドが大きくなって,処理高速化の妨
げとなる。
【0008】そこで,メッセージ通信を減らし,なおか
つ,サーバとクライアントで情報を共有する方式とし
て,主記憶上のメモリ領域を共有して使うことが考えら
れる。この方式は,サーバとクライアントとで同じメモ
リ領域をアクセス可能とすることにより,情報を共有化
するものである。しかし,この方式では,共有できる範
囲が,同じ主記憶を共有できる一つのプロセッサモジュ
ール内に限られ,サーバとクライアントとが異なるプロ
セッサモジュールに存在する場合には,情報を共有する
ことができない。また,プロセッサモジュールに障害が
発生した場合には,主記憶の内容も失われるため,耐故
障性を実現することができないという問題がある。
つ,サーバとクライアントで情報を共有する方式とし
て,主記憶上のメモリ領域を共有して使うことが考えら
れる。この方式は,サーバとクライアントとで同じメモ
リ領域をアクセス可能とすることにより,情報を共有化
するものである。しかし,この方式では,共有できる範
囲が,同じ主記憶を共有できる一つのプロセッサモジュ
ール内に限られ,サーバとクライアントとが異なるプロ
セッサモジュールに存在する場合には,情報を共有する
ことができない。また,プロセッサモジュールに障害が
発生した場合には,主記憶の内容も失われるため,耐故
障性を実現することができないという問題がある。
【0009】耐故障性を考えた場合には,主記憶上のメ
モリは,揮発性のため十分ではない。そこで,障害にな
っても情報が失われない不揮発性のものとして,ファイ
ルを情報の共有に使用することが考えられる。ファイル
を利用すれば,同じファイルを参照できる範囲で,サー
バとクライアントとを異なるプロセッサモジュールに配
置することができる。また,クライアントが存在するプ
ロセッサモジュールがダウンしても,サーバがファイル
をアクセスすることができるので,情報が失われずに処
理を継続することができる。なお,ここでのファイルの
アクセスは,特定のプロセッサモジュールに限定され
ず,複数のプロセッサモジュールから同等にアクセスで
きることを前提としている。
モリは,揮発性のため十分ではない。そこで,障害にな
っても情報が失われない不揮発性のものとして,ファイ
ルを情報の共有に使用することが考えられる。ファイル
を利用すれば,同じファイルを参照できる範囲で,サー
バとクライアントとを異なるプロセッサモジュールに配
置することができる。また,クライアントが存在するプ
ロセッサモジュールがダウンしても,サーバがファイル
をアクセスすることができるので,情報が失われずに処
理を継続することができる。なお,ここでのファイルの
アクセスは,特定のプロセッサモジュールに限定され
ず,複数のプロセッサモジュールから同等にアクセスで
きることを前提としている。
【0010】しかし,このようなファイルを使用したサ
ーバとクライアントでの情報の共有方法では,耐故障性
は実現できるものの,クライアント側の情報が変化する
たびに,ファイルへのアクセスが必要となり,メッセー
ジ通信にも増してオーバヘッドが大きくなるという問題
がある。
ーバとクライアントでの情報の共有方法では,耐故障性
は実現できるものの,クライアント側の情報が変化する
たびに,ファイルへのアクセスが必要となり,メッセー
ジ通信にも増してオーバヘッドが大きくなるという問題
がある。
【0011】本発明は上記問題点の解決を図り,耐故障
性および処理の高速化の両方の要件を満足するデータの
共有方式を提供することを目的としている。
性および処理の高速化の両方の要件を満足するデータの
共有方式を提供することを目的としている。
【0012】
【課題を解決するための手段】図1は,本発明の原理説
明図である。図1において,10−1ないし10−nは
各々1または複数のCPUとローカルメモリとを備えた
プロセッサモジュール,11は特定の処理機能を提供す
るサーバ,12−1,12−2はサーバ11に対し処理
を要求するプロセスであるクライアント,13は各プロ
セッサモジュールに分散して配置されるオペレーティン
グ・システムのカーネル,14はセル割当て処理手段,
15−1,15−2は通知情報設定処理手段,16−1
ないし16−nはセルアクセス処理手段,17は各プロ
セッサモジュールからアクセス可能な不揮発性の共用メ
モリ(SSU),18はサーバ獲得領域を表す。
明図である。図1において,10−1ないし10−nは
各々1または複数のCPUとローカルメモリとを備えた
プロセッサモジュール,11は特定の処理機能を提供す
るサーバ,12−1,12−2はサーバ11に対し処理
を要求するプロセスであるクライアント,13は各プロ
セッサモジュールに分散して配置されるオペレーティン
グ・システムのカーネル,14はセル割当て処理手段,
15−1,15−2は通知情報設定処理手段,16−1
ないし16−nはセルアクセス処理手段,17は各プロ
セッサモジュールからアクセス可能な不揮発性の共用メ
モリ(SSU),18はサーバ獲得領域を表す。
【0013】サーバ11内に,セル割当て処理手段14
を設ける。セル割当て処理手段14はクライアント12
−1,…からの要求に対して,共用メモリ17内にあら
かじめ獲得したサーバ獲得領域18から,そのクライア
ント12−1,…に割り当てる領域(以下,セルとい
う)を確保し,システム内で一意の識別子をその領域内
に設定する処理手段である。
を設ける。セル割当て処理手段14はクライアント12
−1,…からの要求に対して,共用メモリ17内にあら
かじめ獲得したサーバ獲得領域18から,そのクライア
ント12−1,…に割り当てる領域(以下,セルとい
う)を確保し,システム内で一意の識別子をその領域内
に設定する処理手段である。
【0014】また,カーネル13内に,セルアクセス処
理手段16−1,…を設ける。セルアクセス処理手段1
6−1は,サーバ獲得領域18のセル内に設定された識
別子を基に,そのセルが割り当てられた正当なクライア
ント12−1,…にのみ,そのセルへのアクセスを許す
アクセス機能を提供する処理手段である。
理手段16−1,…を設ける。セルアクセス処理手段1
6−1は,サーバ獲得領域18のセル内に設定された識
別子を基に,そのセルが割り当てられた正当なクライア
ント12−1,…にのみ,そのセルへのアクセスを許す
アクセス機能を提供する処理手段である。
【0015】クライアント12−1,…内に,通知情報
設定処理手段15−1,…を設ける。通知情報設定処理
手段15−1,…は,カーネル13が提供するセルアク
セス処理手段16−1,…を介して,サーバ11への通
知情報を共用メモリ17内のセルに設定する処理手段で
ある。
設定処理手段15−1,…を設ける。通知情報設定処理
手段15−1,…は,カーネル13が提供するセルアク
セス処理手段16−1,…を介して,サーバ11への通
知情報を共用メモリ17内のセルに設定する処理手段で
ある。
【0016】
【作用】図2は,本発明の作用説明図である。本発明
は,従来,サーバ11の耐故障性のためだけに使用して
いた不揮発性の共用メモリ17を,サーバ・クライアン
ト間の情報共有に応用することにより,処理の高速化と
耐故障性の両立という新たなニーズを実現するものであ
る。
は,従来,サーバ11の耐故障性のためだけに使用して
いた不揮発性の共用メモリ17を,サーバ・クライアン
ト間の情報共有に応用することにより,処理の高速化と
耐故障性の両立という新たなニーズを実現するものであ
る。
【0017】各クライアント12−1,…からサーバ1
1に対し,頻繁に変化するような何らかの情報を伝達す
る場合,クライアント12−1,…からサーバ11に対
し,共用メモリ17内の領域を要求する。
1に対し,頻繁に変化するような何らかの情報を伝達す
る場合,クライアント12−1,…からサーバ11に対
し,共用メモリ17内の領域を要求する。
【0018】サーバ11は,共用メモリ17内にあらか
じめサーバ獲得領域18を獲得しておき,その中を区分
してセル(CELL1〜CELLk)として管理してい
る。クライアント12−1,…からの要求に対し,1つ
のセルを確保し,そのセル内にシステムで一意の識別子
を設定する。
じめサーバ獲得領域18を獲得しておき,その中を区分
してセル(CELL1〜CELLk)として管理してい
る。クライアント12−1,…からの要求に対し,1つ
のセルを確保し,そのセル内にシステムで一意の識別子
を設定する。
【0019】以後,クライアント12−1,…は,図2
に示すように,セルアクセス処理手段16を介して,サ
ーバ獲得領域18内のセルに情報を書き込むことができ
る。すなわち,図2に示すように,サーバ11と各クラ
イアント12間で,データを共有するイメージとなる。
に示すように,セルアクセス処理手段16を介して,サ
ーバ獲得領域18内のセルに情報を書き込むことができ
る。すなわち,図2に示すように,サーバ11と各クラ
イアント12間で,データを共有するイメージとなる。
【0020】クライアント12−1,…からサーバ11
への情報の伝達は,割当てられたセルに情報を書き込む
だけでよいので,頻繁に情報が変化する場合であって
も,オーバヘッドは少ない。また,共用メモリ17は不
揮発性であるので,クライアント12−1等のクラッシ
ュ時にも,情報が失われることはない。さらにまた,セ
ルに設定された識別子によって,サーバ獲得領域18へ
のアクセス可否のチェックが行われるので,クライアン
ト12間のセキュリティも保証される。
への情報の伝達は,割当てられたセルに情報を書き込む
だけでよいので,頻繁に情報が変化する場合であって
も,オーバヘッドは少ない。また,共用メモリ17は不
揮発性であるので,クライアント12−1等のクラッシ
ュ時にも,情報が失われることはない。さらにまた,セ
ルに設定された識別子によって,サーバ獲得領域18へ
のアクセス可否のチェックが行われるので,クライアン
ト12間のセキュリティも保証される。
【0021】すなわち,サーバ獲得領域18はサーバ1
1とカーネル13からだけアクセスできる。そして,ク
ライアント12はカーネル13経由でしかアクセスでき
ないのでセキュリティの保証が可能になる。カーネル1
3はクライアント12が変えることのできないクライア
ント12に対して持つカーネル情報を元にチェックする
ので改竄することもできない。
1とカーネル13からだけアクセスできる。そして,ク
ライアント12はカーネル13経由でしかアクセスでき
ないのでセキュリティの保証が可能になる。カーネル1
3はクライアント12が変えることのできないクライア
ント12に対して持つカーネル情報を元にチェックする
ので改竄することもできない。
【0022】なお,サーバ11は,サーバ獲得領域18
に対して,セルアクセス処理手段16を介することな
く,ダイレクトにアクセス可能である。
に対して,セルアクセス処理手段16を介することな
く,ダイレクトにアクセス可能である。
【0023】
【実施例】図3は,本発明の実施例説明図である。以
下,トランザクションの状態を管理するサーバ11の例
により,本発明の実施例を説明する。大きな処理の流れ
としては,図3に示す(a) 〜(f) のようになる。
下,トランザクションの状態を管理するサーバ11の例
により,本発明の実施例を説明する。大きな処理の流れ
としては,図3に示す(a) 〜(f) のようになる。
【0024】(a) サーバ空間の初期化 (b) クライアント12によるトランザクション機能の使
用開始宣言 (c) サーバ11による共用メモリ(SSU)セルの割当
て (d) クライアント12によるトランザクションの開始と
状態の変更 (e) クライアント12のクラッシュまたはトランザクシ
ョン機能の終了 (f) サーバ11による一貫性の保証およびSSUセルの
解放 以下,この全体の処理の流れについて,詳細に説明す
る。 (a) サーバ空間の初期化 サーバ11は,初期設定時に,共用メモリ17内に
所定の大きさのサーバ獲得領域18を獲得する。この領
域をセルに区分し,空き管理用ビットマップ32を作成
して,全セルを空き状態に設定する。
用開始宣言 (c) サーバ11による共用メモリ(SSU)セルの割当
て (d) クライアント12によるトランザクションの開始と
状態の変更 (e) クライアント12のクラッシュまたはトランザクシ
ョン機能の終了 (f) サーバ11による一貫性の保証およびSSUセルの
解放 以下,この全体の処理の流れについて,詳細に説明す
る。 (a) サーバ空間の初期化 サーバ11は,初期設定時に,共用メモリ17内に
所定の大きさのサーバ獲得領域18を獲得する。この領
域をセルに区分し,空き管理用ビットマップ32を作成
して,全セルを空き状態に設定する。
【0025】 処理要求等のメッセージを受け取るた
めのメールボックス30を作成する。 メールボックス30の宛先登録により,任意の空間
からメッセージを受け取ることができるように,メール
ボックス30の宛先を公開する。
めのメールボックス30を作成する。 メールボックス30の宛先登録により,任意の空間
からメッセージを受け取ることができるように,メール
ボックス30の宛先を公開する。
【0026】 処理要求に関するメッセージの受信を
待つ。 (b) クライアント12によるトランザクション機能の使
用開始宣言 サーバ11の提供するトランザクション機能の使用
開始宣言機構を呼び出す。通常,サービス性の向上など
のために,クライアント12とサーバ11とのメッセー
ジインタフェースは,サーバ11の提供する関数の中に
隠蔽される。
待つ。 (b) クライアント12によるトランザクション機能の使
用開始宣言 サーバ11の提供するトランザクション機能の使用
開始宣言機構を呼び出す。通常,サービス性の向上など
のために,クライアント12とサーバ11とのメッセー
ジインタフェースは,サーバ11の提供する関数の中に
隠蔽される。
【0027】 サーバ空間の宛先を獲得する。 サーバ空間へのメッセージ送信を行う。 そして,サーバ空間からの返信メッセージを待つ。
【0028】 クライアント12は,サーバ11から
の返信メッセージを受信すると,カーネル13に対し,
SSUセルの初期化を依頼し,アクセス環境を作成す
る。 サーバ11の提供するトランザクション機能の使用
開始宣言機構から復帰する。 (c) サーバ11による共用メモリ(SSU)セルの割当
て サーバ11は,処理要求のメッセージを受信したな
らば,その内容を解析する。トランザクション機能の使
用開始宣言であれば,以下の処理を行う。
の返信メッセージを受信すると,カーネル13に対し,
SSUセルの初期化を依頼し,アクセス環境を作成す
る。 サーバ11の提供するトランザクション機能の使用
開始宣言機構から復帰する。 (c) サーバ11による共用メモリ(SSU)セルの割当
て サーバ11は,処理要求のメッセージを受信したな
らば,その内容を解析する。トランザクション機能の使
用開始宣言であれば,以下の処理を行う。
【0029】 空き管理用ビットマップ32により,
空きのSSUセルを検索する。空きのSSUセルが見つ
かったならば,空き管理用ビットマップ32における該
当ビットを使用中にセットし,そのビットの位置をセル
番号とする。
空きのSSUセルを検索する。空きのSSUセルが見つ
かったならば,空き管理用ビットマップ32における該
当ビットを使用中にセットし,そのビットの位置をセル
番号とする。
【0030】 割当てたSSUセルなどの情報をケー
パビリティとして登録する。これにより,クライアント
12に対してケーパビリティの発行が可能となる。この
情報は,オブジェクト情報31として管理される。
パビリティとして登録する。これにより,クライアント
12に対してケーパビリティの発行が可能となる。この
情報は,オブジェクト情報31として管理される。
【0031】 クライアント12に対し,獲得したS
SUセルのセル番号とケーパビリティを,返信メッセー
ジに載せて通知する。クライアント12は,以降,この
ケーパビリティを使って,サーバ11と通信することが
可能となる。サーバ11は,ケーパビリティを使って送
られたメッセージを受信した場合には,該当するケーパ
ビリティ情報を取り出すことが可能となる。また,クラ
イアント空間がクラッシュした場合には,カーネル13
のクラッシュ検出機構によるサービスにより,クラッシ
ュした空間に発行したケーパビリティの宛先にその旨通
知される。 (d) クライアント12によるトランザクションの開始と
状態の変更 トランザクション開始機構を呼び出す。
SUセルのセル番号とケーパビリティを,返信メッセー
ジに載せて通知する。クライアント12は,以降,この
ケーパビリティを使って,サーバ11と通信することが
可能となる。サーバ11は,ケーパビリティを使って送
られたメッセージを受信した場合には,該当するケーパ
ビリティ情報を取り出すことが可能となる。また,クラ
イアント空間がクラッシュした場合には,カーネル13
のクラッシュ検出機構によるサービスにより,クラッシ
ュした空間に発行したケーパビリティの宛先にその旨通
知される。 (d) クライアント12によるトランザクションの開始と
状態の変更 トランザクション開始機構を呼び出す。
【0032】 カーネル13のアクセス機構を利用
し,共用メモリ17にトランザクションを開始した旨の
情報を記録する。 トランザクション遂行のための資源へのアクセスを
行う。 (e) クライアント12のクラッシュまたはトランザクシ
ョン機能の終了 トランザクションの終了機構を呼び出す。
し,共用メモリ17にトランザクションを開始した旨の
情報を記録する。 トランザクション遂行のための資源へのアクセスを
行う。 (e) クライアント12のクラッシュまたはトランザクシ
ョン機能の終了 トランザクションの終了機構を呼び出す。
【0033】 共用メモリ17へプリペア開始状態を
記録する。 資源をプリペア状態に変更する。 共用メモリ17へコミット開始状態を記録する。
記録する。 資源をプリペア状態に変更する。 共用メモリ17へコミット開始状態を記録する。
【0034】 資源をコミット状態に変更する。 共用メモリ17にトランザクション終了状態を記録
する。 サーバ11に対し,ケーパビリティを使って返却す
る旨のメッセージを送信する。なお,上記(b) の処理
以降でクライアント空間がクラッシュした場合には,カ
ーネル13により,自動的にこの処理が代行される。
なお,これらの処理については,従来技術と同様である
ので,これ以上のさらに詳しい説明は省略する。 (f) サーバ11による一貫性の保証およびSSUセルの
解放 サーバ11は,ケーパビリティを宛先とした返却メ
ッセージを受信する。
する。 サーバ11に対し,ケーパビリティを使って返却す
る旨のメッセージを送信する。なお,上記(b) の処理
以降でクライアント空間がクラッシュした場合には,カ
ーネル13により,自動的にこの処理が代行される。
なお,これらの処理については,従来技術と同様である
ので,これ以上のさらに詳しい説明は省略する。 (f) サーバ11による一貫性の保証およびSSUセルの
解放 サーバ11は,ケーパビリティを宛先とした返却メ
ッセージを受信する。
【0035】 オブジェクト情報31のケーパビリテ
ィ情報を参照し,SSUセル番号を取り出す。 SSUセルの情報を参照し,トランザクション終了
状態になっていないことを検出した場合には,一貫性を
保証するための資源状態のREDO/UNDO処理を行
う。すなわち,データが中途半端な状態にならないよう
に,資源に対する処理を完遂した状態にする処理または
処理前の状態に戻す処理を行う。
ィ情報を参照し,SSUセル番号を取り出す。 SSUセルの情報を参照し,トランザクション終了
状態になっていないことを検出した場合には,一貫性を
保証するための資源状態のREDO/UNDO処理を行
う。すなわち,データが中途半端な状態にならないよう
に,資源に対する処理を完遂した状態にする処理または
処理前の状態に戻す処理を行う。
【0036】 クライアント12に対して発行したケ
ーパビリティ情報を削除する。以降,該当するケーパビ
リティは不当となり,使用することはできなくなる。 SSUセルを解放する。
ーパビリティ情報を削除する。以降,該当するケーパビ
リティは不当となり,使用することはできなくなる。 SSUセルを解放する。
【0037】以上の処理によって,クライアント12と
サーバ11間でトランザクションの状態に関する情報を
共有することができ,クライアント12がクラッシュし
た場合にも,資源の一貫性を保証することができるよう
になる。
サーバ11間でトランザクションの状態に関する情報を
共有することができ,クライアント12がクラッシュし
た場合にも,資源の一貫性を保証することができるよう
になる。
【0038】図4は,上記処理におけるサーバ11によ
るセルの割当て処理フローチャートである。サーバ11
は,セルを割当てるとき,以下の処理を行う。 (1) サーバ空間の初期化を終了したならば,処理要求に
係る受信メッセージを待つ。
るセルの割当て処理フローチャートである。サーバ11
は,セルを割当てるとき,以下の処理を行う。 (1) サーバ空間の初期化を終了したならば,処理要求に
係る受信メッセージを待つ。
【0039】(2) メッセージを受信したならば,メッセ
ージが正当であるか否かを判定する。メッセージの正当
性は,例えばメッセージ中の特定のフィールドに設定さ
れたデータ(合言葉)が一致するか否かによって判断す
る。その特定のフィールドにあらかじめクライアント1
2とサーバ11との間で取り決められた合言葉が設定さ
れていなければ,不当な要求であるのでエラーとして処
理する。
ージが正当であるか否かを判定する。メッセージの正当
性は,例えばメッセージ中の特定のフィールドに設定さ
れたデータ(合言葉)が一致するか否かによって判断す
る。その特定のフィールドにあらかじめクライアント1
2とサーバ11との間で取り決められた合言葉が設定さ
れていなければ,不当な要求であるのでエラーとして処
理する。
【0040】(3) メッセージが正当であれば,図3に示
す空き管理用ビットマップ32によって,サーバ獲得領
域18内の空きセルを検索する。 (4) 空きのSSUセルが存在しなければ,エラーメッセ
ージを返信する。
す空き管理用ビットマップ32によって,サーバ獲得領
域18内の空きセルを検索する。 (4) 空きのSSUセルが存在しなければ,エラーメッセ
ージを返信する。
【0041】(5) 空きのSSUセルがあったならば,要
求識別子(ID)を生成する。このIDは,システムで
一意に識別できるものであればよく,例えば,要求元ク
ライアントのプロセスIDを,要求IDとして利用する
ことができる。
求識別子(ID)を生成する。このIDは,システムで
一意に識別できるものであればよく,例えば,要求元ク
ライアントのプロセスIDを,要求IDとして利用する
ことができる。
【0042】(6) SSUセルへ要求IDを埋め込む。 (7) このセルに関するケーパビリティを生成し,オブジ
ェクト情報31を登録する。
ェクト情報31を登録する。
【0043】(8) 要求元へケーパビリティ,SSUセル
番号,要求ID等を通知するメッセージを返信し,処理
を終了する。図5は,上記処理におけるクライアント1
2によるセルの獲得処理フローチャートである。
番号,要求ID等を通知するメッセージを返信し,処理
を終了する。図5は,上記処理におけるクライアント1
2によるセルの獲得処理フローチャートである。
【0044】(1) SSUセルを獲得済みかどうかを判定
する。獲得済みであれば,処理を終了する。 (2) SSUセルを未獲得であれば,サーバ11へのメッ
セージの宛先を獲得する。
する。獲得済みであれば,処理を終了する。 (2) SSUセルを未獲得であれば,サーバ11へのメッ
セージの宛先を獲得する。
【0045】(3) サーバ11へSSUセルの獲得を要求
するメッセージを送信する。 (4) 〜(5) カーネル13に対し,SSUセルの初期化を
依頼し,SSUセルへのアクセス環境を作成する。
するメッセージを送信する。 (4) 〜(5) カーネル13に対し,SSUセルの初期化を
依頼し,SSUセルへのアクセス環境を作成する。
【0046】図6は,カーネル13によるセルアクセス
処理フローチャートであって,特に図6の(イ)は,ク
ライアント12からのSSUセルの初期化要求に対する
処理を示している。
処理フローチャートであって,特に図6の(イ)は,ク
ライアント12からのSSUセルの初期化要求に対する
処理を示している。
【0047】(1) 要求元クライアントのIDと,サーバ
11によってSSUセル内に埋め込まれたIDとを比較
する。 (2) 一致するIDがなければ,エラーであるので,その
まま処理を終了する。
11によってSSUセル内に埋め込まれたIDとを比較
する。 (2) 一致するIDがなければ,エラーであるので,その
まま処理を終了する。
【0048】(3) セルの領域内をクリアするなどの初期
化を行う。 (4) SSUのアクセス範囲,すなわちSSUにおけるセ
ルの位置情報を,アクセス範囲としてメモリ上の作業域
に記憶する。
化を行う。 (4) SSUのアクセス範囲,すなわちSSUにおけるセ
ルの位置情報を,アクセス範囲としてメモリ上の作業域
に記憶する。
【0049】図6の(ロ)は,クライアント12からの
SSUセルへの書き込み要求に対するカーネルの処理を
示している。 (1) 初期化時に作業域に記憶していたそのクライアント
12のアクセス範囲を取り出す。
SSUセルへの書き込み要求に対するカーネルの処理を
示している。 (1) 初期化時に作業域に記憶していたそのクライアント
12のアクセス範囲を取り出す。
【0050】(2) アクセス範囲が登録されていなかった
ならば,処理を終了する。 (3) アクセス範囲があったならば,該当部分を更新す
る。 図7は,カーネル13のクラッシュ検出機構によって,
クライアント12のクラッシュが通知されたときに,サ
ーバ11が行う一貫性保証およびセル解放の処理フロー
チャートである。
ならば,処理を終了する。 (3) アクセス範囲があったならば,該当部分を更新す
る。 図7は,カーネル13のクラッシュ検出機構によって,
クライアント12のクラッシュが通知されたときに,サ
ーバ11が行う一貫性保証およびセル解放の処理フロー
チャートである。
【0051】(1) 〜(2) 受信メッセージを待っていると
きに,クラッシュ通知のメッセージを受信したならば,
登録しておいた図3に示すオブジェクト情報31を取り
出す。
きに,クラッシュ通知のメッセージを受信したならば,
登録しておいた図3に示すオブジェクト情報31を取り
出す。
【0052】(3) SSUセル番号をもとに,該当するS
SUセルにアクセスし,SSUセル内に,トランザクシ
ョン終了状態の情報が書き込まれているか否かを調べ
る。トランザクション終了状態であれば,処理(7) へ移
る。
SUセルにアクセスし,SSUセル内に,トランザクシ
ョン終了状態の情報が書き込まれているか否かを調べ
る。トランザクション終了状態であれば,処理(7) へ移
る。
【0053】(4) 〜(6) トランザクション終了状態でな
ければ,REDO処理が必要であるか否かによって,R
EDO処理またはUNDO処理を行う。すなわち,デー
タ等の資源に対する処理を完遂させた状態にするか,処
理前の状態にするかのいずれかの処理を行う。
ければ,REDO処理が必要であるか否かによって,R
EDO処理またはUNDO処理を行う。すなわち,デー
タ等の資源に対する処理を完遂させた状態にするか,処
理前の状態にするかのいずれかの処理を行う。
【0054】(7) オブジェクト情報31を削除する。 (8) SSUセルを解放し,空きセルとする。 以上の処理によって,クライアント12のクラッシュ時
にも,サーバ11により,データの一貫性が保証され
る。
にも,サーバ11により,データの一貫性が保証され
る。
【0055】
【発明の効果】以上説明したように,本発明によれば,
サーバとクライアントとの情報の共有に,不揮発性の共
用メモリを使用することにより,高速かつ耐故障性を備
えたシステムを実現することが可能になる。
サーバとクライアントとの情報の共有に,不揮発性の共
用メモリを使用することにより,高速かつ耐故障性を備
えたシステムを実現することが可能になる。
【図1】本発明の原理説明図である。
【図2】本発明の作用説明図である。
【図3】本発明の実施例説明図である。
【図4】本発明の実施例に係るサーバによるセルの割当
て処理フローチャートである。
て処理フローチャートである。
【図5】本発明の実施例に係るクライアントによるセル
の獲得処理フローチャートである。
の獲得処理フローチャートである。
【図6】本発明の実施例に係るカーネルのセルアクセス
処理フローチャートである。
処理フローチャートである。
【図7】本発明の実施例に係るサーバによる一貫性保証
およびセル解放処理フローチャートである。
およびセル解放処理フローチャートである。
10−1,10−2,… プロセッサモジュール 11 サーバ 12−1,12−2,… クライアント 13 カーネル 14 セル割当て処理手段 15−1,15−2,… 通知情報設定処理手段 16−1,16−2,… セルアクセス処理手段 17 共用メモリ 18 サーバ獲得領域
Claims (1)
- 【請求項1】 複数のプロセッサモジュール(10)と,各
プロセッサモジュール(10)からアクセス可能な不揮発性
の共用メモリ(17)とを備え,各プロセッサモジュール(1
0)上でシステムを制御するカーネル(13)と,特定の処理
機能を提供するサーバ(11)と,そのサーバ(11)に対し処
理を要求するクライアント(12)とが動作するサーバ・ク
ライアントモデルの処理装置において,前記サーバ(11)
は,前記クライアント(12)からの要求に対して,前記共
用メモリ(17)内にそのクライアント(12)に割り当てる領
域を確保し,システム内で一意の識別子をその領域内に
設定するセル割当て処理手段(14)を備え,前記カーネル
(13)は,前記共用メモリ(17)における領域内に設定され
た識別子を基に,その領域が割り当てられた正当なクラ
イアント(12)にのみ,その領域へのアクセスを許すセル
アクセス処理手段(16)を備え,前記クライアント(12)
は,前記カーネル(13)が提供するセルアクセス処理手段
(16)を介して,前記サーバ(11)への通知情報を前記共用
メモリ(17)内の領域に設定する通知情報設定処理手段(1
5)を備えたことを特徴とするサーバ・クライアントモデ
ルの処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4140269A JPH05334266A (ja) | 1992-06-01 | 1992-06-01 | サーバ・クライアントモデルの処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4140269A JPH05334266A (ja) | 1992-06-01 | 1992-06-01 | サーバ・クライアントモデルの処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH05334266A true JPH05334266A (ja) | 1993-12-17 |
Family
ID=15264849
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4140269A Withdrawn JPH05334266A (ja) | 1992-06-01 | 1992-06-01 | サーバ・クライアントモデルの処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH05334266A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11316746A (ja) * | 1998-02-06 | 1999-11-16 | Ncr Internatl Inc | 拡張可能な並列処理コンピュ―タ・システムにおけるデ―タ通信方法 |
| JPH11316748A (ja) * | 1998-02-06 | 1999-11-16 | Ncr Internatl Inc | 並列処理コンピュ―タ・システムにおけるデ―タの転送方法 |
| JP2006293516A (ja) * | 2005-04-07 | 2006-10-26 | Matsushita Electric Ind Co Ltd | バスアクセス制御装置 |
-
1992
- 1992-06-01 JP JP4140269A patent/JPH05334266A/ja not_active Withdrawn
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11316746A (ja) * | 1998-02-06 | 1999-11-16 | Ncr Internatl Inc | 拡張可能な並列処理コンピュ―タ・システムにおけるデ―タ通信方法 |
| JPH11316748A (ja) * | 1998-02-06 | 1999-11-16 | Ncr Internatl Inc | 並列処理コンピュ―タ・システムにおけるデ―タの転送方法 |
| JP2006293516A (ja) * | 2005-04-07 | 2006-10-26 | Matsushita Electric Ind Co Ltd | バスアクセス制御装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7124255B2 (en) | Message based inter-process for high volume data | |
| US5222217A (en) | System and method for implementing operating system message queues with recoverable shared virtual storage | |
| JP3748774B2 (ja) | キャッシュコヒーレンス共用ディスクコンピュータシステムにおけるi/o転送 | |
| US6785892B1 (en) | Communications between partitioned host processors and management processor | |
| Leach et al. | The architecture of an integrated local network | |
| US8024528B2 (en) | Global address space management | |
| US6205466B1 (en) | Infrastructure for an open digital services marketplace | |
| CN1143230C (zh) | 一种多处理器系统内的分区存储器保护的装置和方法 | |
| US5161227A (en) | Multilevel locking system and method | |
| US5845147A (en) | Single lock command for an I/O storage system that performs both locking and I/O data operation | |
| US5423044A (en) | Shared, distributed lock manager for loosely coupled processing systems | |
| EP0447038B1 (en) | A system for establishing a communication path in a closely coupled computer system | |
| US6023712A (en) | Method and apparatus for brokering memory resources | |
| EP0459912B1 (en) | An issue processing system for a right to use a resource | |
| US8185710B2 (en) | Hardware memory locks | |
| US7631150B2 (en) | Memory management in a shared memory system | |
| CN111897666A (zh) | 用于多进程之间通信的方法、设备及系统 | |
| JPH1145187A (ja) | 分散ガーベッジコレクションのためのリソースの管理方法、装置、コンピュータプログラム生産物、コンピュータシステム並びにプラットフォーム間に分散したリソースの割当及び割当解除方法 | |
| CN111343262B (zh) | 分布式集群登录方法、装置、设备和存储介质 | |
| US20080082622A1 (en) | Communication in a cluster system | |
| JPH1063525A (ja) | 情報処理装置、情報処理システム及びその制御方法 | |
| US8239543B1 (en) | Method and an apparatus to provide access to operational data in a storage server via multiple data management protocols | |
| JPH07253950A (ja) | ネットワークファイルシステム | |
| JP3877186B2 (ja) | 並列計算機 | |
| JP2971119B2 (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: 19990803 |