JPH02165251A - メツセージ記憶方法及びシステム - Google Patents
メツセージ記憶方法及びシステムInfo
- Publication number
- JPH02165251A JPH02165251A JP1271896A JP27189689A JPH02165251A JP H02165251 A JPH02165251 A JP H02165251A JP 1271896 A JP1271896 A JP 1271896A JP 27189689 A JP27189689 A JP 27189689A JP H02165251 A JPH02165251 A JP H02165251A
- Authority
- JP
- Japan
- Prior art keywords
- message
- storage
- msf
- generation
- name
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
- Debugging And Monitoring (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
A、産業上の利用分野
本発明は、情報の記憶及び検索、特に複数個のホスト装
置からのメツセージの記憶及び検索に関与するシステム
に関するものである。
置からのメツセージの記憶及び検索に関与するシステム
に関するものである。
B、従来技術及びその問題点
分散データベースでは、通常、一義的な名前を割り当て
る問題が生じる。オブジェクトをあるサイトで作成する
ときに、データベース全体にわたって一意的な名前を与
えなければならない。これを行なうために用いられてき
た1つの方法は、システム内の他のすべてのサイトに照
会またはポーリングを行なって、割り当てようとする名
前が使用されていないことを確認するものであった。そ
のために、大域ロッキング、または名前スペースの静的
区分のいずれかの方法が用いられてきた。
る問題が生じる。オブジェクトをあるサイトで作成する
ときに、データベース全体にわたって一意的な名前を与
えなければならない。これを行なうために用いられてき
た1つの方法は、システム内の他のすべてのサイトに照
会またはポーリングを行なって、割り当てようとする名
前が使用されていないことを確認するものであった。そ
のために、大域ロッキング、または名前スペースの静的
区分のいずれかの方法が用いられてきた。
すべての名前を大域ロックすることにより、新しいメツ
セージの作成者は自由に、任意の新しい名前を選択でき
る。さらに、将来の命名の際にこノヨウなシステムのす
べてのサイトに対する照会が行なわれるので、メツセー
ジがある場所から他の場所へ移動する場合、それに関す
る情報をその現在位置に保持しておくだけでよい。この
自由に名前を割当てできることの代償として、いずれか
のサイトが新しい名前を取り出そうとしてすべてのサイ
トを照会しなければならなくなるたびにあらゆるサイト
で名前の割当てを停止するため、時間と費用が増加する
。
セージの作成者は自由に、任意の新しい名前を選択でき
る。さらに、将来の命名の際にこノヨウなシステムのす
べてのサイトに対する照会が行なわれるので、メツセー
ジがある場所から他の場所へ移動する場合、それに関す
る情報をその現在位置に保持しておくだけでよい。この
自由に名前を割当てできることの代償として、いずれか
のサイトが新しい名前を取り出そうとしてすべてのサイ
トを照会しなければならなくなるたびにあらゆるサイト
で名前の割当てを停止するため、時間と費用が増加する
。
システムのオーバーヘッド・コストをなくするための他
の方法は、与えられたメツセージのすべてまたは一部を
取り出し、それを名前が作成されたサイトの名前と連結
することによって、名前を作成するものである。たとえ
ば、Houston というサイトに記憶されたSa鳳
というメツセージに対しては、”Saw、 Houst
on という名前を使用する。
の方法は、与えられたメツセージのすべてまたは一部を
取り出し、それを名前が作成されたサイトの名前と連結
することによって、名前を作成するものである。たとえ
ば、Houston というサイトに記憶されたSa鳳
というメツセージに対しては、”Saw、 Houst
on という名前を使用する。
この方法の欠点は、”Sam、 )Iouston
という名前のメツセージがデータベース中でDalla
sなどの位置に再配置されるとき、その名前のレコード
を、それがDallasに存在すること及びその現在の
位置の注釈をつけて、Houstonに保持しなければ
ならないことである。そうしないと、後になって別のS
amが、このようなシステムの一意性要件に違反して1
louston で作成されることがある。
という名前のメツセージがデータベース中でDalla
sなどの位置に再配置されるとき、その名前のレコード
を、それがDallasに存在すること及びその現在の
位置の注釈をつけて、Houstonに保持しなければ
ならないことである。そうしないと、後になって別のS
amが、このようなシステムの一意性要件に違反して1
louston で作成されることがある。
したがって、本発明の目的は、システム内の他のどのサ
イトにも照会する必要がなく、自由かつ容易な名前の割
当てによって、オブジェクトまたはメツセージに固有で
一意的な名前を割り当てることにある。
イトにも照会する必要がなく、自由かつ容易な名前の割
当てによって、オブジェクトまたはメツセージに固有で
一意的な名前を割り当てることにある。
本発明の他の目的は、名前の重複がないことを保証する
ために名前の記録を維持する必要なしに、メツセージま
たはオブジェクトを他のサイトに移動できるようにする
ことである。
ために名前の記録を維持する必要なしに、メツセージま
たはオブジェクトを他のサイトに移動できるようにする
ことである。
C0問題点を解決するための手段
メソセージ記憶システムは、通信やデータ・ベース処理
などの目的で各種の上位処理装置によって後で検索する
ため、入りメツセージを記憶するために使用される。こ
れは、メツセージ記憶機構と記憶機構マネジャの2つの
主要構成要素から成る。
などの目的で各種の上位処理装置によって後で検索する
ため、入りメツセージを記憶するために使用される。こ
れは、メツセージ記憶機構と記憶機構マネジャの2つの
主要構成要素から成る。
メツセージ記憶機構は実メツセージが記憶される場所で
あり、またメツセージが最初に入力され検索される場所
でもある。第2の構成要素である記憶機構マネジャは、
いくつかのメツセージ記憶機構及びディスク駆動機構な
どの外部記憶装置の間でのメツセージの記憶を調整する
。記憶機構マネジャは、所与のメツセージ記憶機構がそ
の記憶容ユに達したとき、メツセージを移動させシステ
ムのまわりでメツセージを追跡することによって、メツ
セージが常に一意的な名前で割り当てられるようにする
。
あり、またメツセージが最初に入力され検索される場所
でもある。第2の構成要素である記憶機構マネジャは、
いくつかのメツセージ記憶機構及びディスク駆動機構な
どの外部記憶装置の間でのメツセージの記憶を調整する
。記憶機構マネジャは、所与のメツセージ記憶機構がそ
の記憶容ユに達したとき、メツセージを移動させシステ
ムのまわりでメツセージを追跡することによって、メツ
セージが常に一意的な名前で割り当てられるようにする
。
操作に当っては、メツセージ記憶機構がある使用可能な
名前を求めてシステム全体を照会することを必要とせず
に、メツセージがシステム内に入ってきた時に、メツセ
ージ記憶システムがメツセージに一意的な名前を割り当
てる。メツセージを記憶する方法は本来、あるメツセー
ジを検索する要求が通信装置やデータベース装置などの
上位処理装置から提示されたときに、混乱が起こらない
ように、各メソセージに一意的な名前が割り当てられる
ことを保証する。
名前を求めてシステム全体を照会することを必要とせず
に、メツセージがシステム内に入ってきた時に、メツセ
ージ記憶システムがメツセージに一意的な名前を割り当
てる。メツセージを記憶する方法は本来、あるメツセー
ジを検索する要求が通信装置やデータベース装置などの
上位処理装置から提示されたときに、混乱が起こらない
ように、各メソセージに一意的な名前が割り当てられる
ことを保証する。
D、実施例
第1図は、メツセージ記憶システム(MSS)100の
説明図である。MSSlooでは、上位処理装置111
〜115などの様々な上位処理装置を(たとえばVTA
Mシステムを用いて)対話式通信用の通信回線116を
介して、または(たとえばIMSシステムを用いて)デ
ィスク駆動機構に接続されたデータ回線117を介して
他の装置に接続することができる。当業者なら理解して
いるように、他の装置を一方または両方の通信回線に取
り付けることもできる。上位処理装置は、データ回線2
20〜224を介して交換機150などの相互接続機構
にも接続される。
説明図である。MSSlooでは、上位処理装置111
〜115などの様々な上位処理装置を(たとえばVTA
Mシステムを用いて)対話式通信用の通信回線116を
介して、または(たとえばIMSシステムを用いて)デ
ィスク駆動機構に接続されたデータ回線117を介して
他の装置に接続することができる。当業者なら理解して
いるように、他の装置を一方または両方の通信回線に取
り付けることもできる。上位処理装置は、データ回線2
20〜224を介して交換機150などの相互接続機構
にも接続される。
MSSlooの実際のメツセージ記憶用構成要素は、メ
ツセージ記憶機構(MSF)1101120.130及
び記憶機構マネジャ(SFM)140である。これらの
装置もデータ回線16o1170.180及び19oを
介して、交換機150などの相互接続機構に接続される
。SFM14Oはまたデータ回線210を介し、ディス
ク駆動機構200などの分離した記憶装置にも接続する
ことができる。システム中に存在するMSFと周辺装置
の数は、システムのニーズとシステム設計者によって決
まる。 、MSS100中のMS
Fは、大容量の高速記憶機構に接続された障害許容マイ
クロプロセッサからなる専用の記憶g置として設計され
ている。MSF中のプロセッサは、メソセージの記憶と
受取りを行なうのに必要な機能のみを支援するプログラ
ムを実行する。このように構造が単純なため、MSFの
信頼性が最大になる。しかしながら、当業者なら理解し
ているように、代替設計も実現可能である。たとえば、
MSFは十分な記憶機構を存するどんな汎用コンピュー
タを使用しても実施できる。
ツセージ記憶機構(MSF)1101120.130及
び記憶機構マネジャ(SFM)140である。これらの
装置もデータ回線16o1170.180及び19oを
介して、交換機150などの相互接続機構に接続される
。SFM14Oはまたデータ回線210を介し、ディス
ク駆動機構200などの分離した記憶装置にも接続する
ことができる。システム中に存在するMSFと周辺装置
の数は、システムのニーズとシステム設計者によって決
まる。 、MSS100中のMS
Fは、大容量の高速記憶機構に接続された障害許容マイ
クロプロセッサからなる専用の記憶g置として設計され
ている。MSF中のプロセッサは、メソセージの記憶と
受取りを行なうのに必要な機能のみを支援するプログラ
ムを実行する。このように構造が単純なため、MSFの
信頼性が最大になる。しかしながら、当業者なら理解し
ているように、代替設計も実現可能である。たとえば、
MSFは十分な記憶機構を存するどんな汎用コンピュー
タを使用しても実施できる。
MSS100中のSFMは、要求を適時に処理するのに
十分な処理速度を有する任意の汎用コンピュータとして
設計される。SFMは、そのディスク駆動機構とそのM
SFへの接続を用いて、ホストがどのMSFを使用する
かの選択及びあるMSFから別のMSFまたはディスク
へのメツセージの順序圧しい転送に関連する繁雑な処理
をすべて管理する。この責任分担によって、MSFは迅
速かつ確実なメツセージの記憶及び検索サービスを提供
することができる。
十分な処理速度を有する任意の汎用コンピュータとして
設計される。SFMは、そのディスク駆動機構とそのM
SFへの接続を用いて、ホストがどのMSFを使用する
かの選択及びあるMSFから別のMSFまたはディスク
へのメツセージの順序圧しい転送に関連する繁雑な処理
をすべて管理する。この責任分担によって、MSFは迅
速かつ確実なメツセージの記憶及び検索サービスを提供
することができる。
MSSlooのようなシステムは、通信の信頼性を高め
、いずれかの上位処理装置が障害を起こしてもエンドユ
ーザにその影響が及ばないように作動する。データ・ベ
ース・アクセスなどの要求が通信回線116を介してシ
ステム内で発生すると、この要求は予め指定されたMS
Fに記憶される。MSFはメツセージを送ってきた通信
処理装置に名前を戻し、その通信処理装置はその名前を
あるデータ・ベース・ホストに渡し、そのデータ・ベー
ス・ホストはメツセージ検索準備ができたとき、通信処
理装置が自分のタスクを処理するのを妨げることなく、
メツセージを検索する。
、いずれかの上位処理装置が障害を起こしてもエンドユ
ーザにその影響が及ばないように作動する。データ・ベ
ース・アクセスなどの要求が通信回線116を介してシ
ステム内で発生すると、この要求は予め指定されたMS
Fに記憶される。MSFはメツセージを送ってきた通信
処理装置に名前を戻し、その通信処理装置はその名前を
あるデータ・ベース・ホストに渡し、そのデータ・ベー
ス・ホストはメツセージ検索準備ができたとき、通信処
理装置が自分のタスクを処理するのを妨げることなく、
メツセージを検索する。
このようにして、データ・ベース処理装置は送信請求さ
れない信号(すなわち記憶されたメツセージの名前)を
短く切って少しずつ受け取るだけでよくなる。後で詳し
く説明するが、それによって、未使用の名前を探してシ
ステムをポーリングする必要がなく、また必要な時にメ
ツセージの検索をスピード・アップする必要もなしに、
入ってくる各メツセージに一意的な名前を割り当てるこ
とも可能になる。
れない信号(すなわち記憶されたメツセージの名前)を
短く切って少しずつ受け取るだけでよくなる。後で詳し
く説明するが、それによって、未使用の名前を探してシ
ステムをポーリングする必要がなく、また必要な時にメ
ツセージの検索をスピード・アップする必要もなしに、
入ってくる各メツセージに一意的な名前を割り当てるこ
とも可能になる。
メツセージがシステムに入ると、メツセージは所与の上
位処理装置に対して指定されたMSI?’に転送され、
指定されたMSFの最初の空いている記憶位置に記憶さ
れる。MSFによって使用されホストに戻される名前は
、記憶位置と世代番号からなっている。
位処理装置に対して指定されたMSI?’に転送され、
指定されたMSFの最初の空いている記憶位置に記憶さ
れる。MSFによって使用されホストに戻される名前は
、記憶位置と世代番号からなっている。
世代番号はあるMSS中で各MSFに一意的なものであ
る。一意的な世代番号はSFMによって割り当てられ監
視される。すなわち、MSSlooのようなシステムで
、初期世代番号はMSFlloに対しては1、MSF1
20には2、MSF130には3とすることができる。
る。一意的な世代番号はSFMによって割り当てられ監
視される。すなわち、MSSlooのようなシステムで
、初期世代番号はMSFlloに対しては1、MSF1
20には2、MSF130には3とすることができる。
記憶位置はMSF中のメツセージが記憶されるアドレス
に対応する。記憶位置アドレスはシステム内のすべての
MSFで識別されることになる。いずれかのMSFが容
量−杯に近づくと、SFM140は新しい世代番号を割
り当て、前の世代番号の下で命名されたメツセージを、
他のいづれかのMSF中の自由空間、またはディスク駆
動機構200などの装置の記憶域に移す。
に対応する。記憶位置アドレスはシステム内のすべての
MSFで識別されることになる。いずれかのMSFが容
量−杯に近づくと、SFM140は新しい世代番号を割
り当て、前の世代番号の下で命名されたメツセージを、
他のいづれかのMSF中の自由空間、またはディスク駆
動機構200などの装置の記憶域に移す。
メソセージが記憶された後にデータ・ベース処理装置1
13〜115の一つに送られる名前は、メソセージを受
け取ったときの所与のMSFの世代番号、ならびにメツ
セージが記憶されるMSF内の記憶位置からなる。MS
Fが容量−杯になったためにメツセージが移された場合
、メツセージのその新しい記憶位置が、SFMによる調
整によっであるMSFにとって使用可能になる。このよ
うにして、移されたメツセージが検索が要求されたとき
、そのメツセージはそのMSF中では見つからないが、
メソセージの現在の記憶位置を探すようSFMに通知す
ることによってその検索ができる。
13〜115の一つに送られる名前は、メソセージを受
け取ったときの所与のMSFの世代番号、ならびにメツ
セージが記憶されるMSF内の記憶位置からなる。MS
Fが容量−杯になったためにメツセージが移された場合
、メツセージのその新しい記憶位置が、SFMによる調
整によっであるMSFにとって使用可能になる。このよ
うにして、移されたメツセージが検索が要求されたとき
、そのメツセージはそのMSF中では見つからないが、
メソセージの現在の記憶位置を探すようSFMに通知す
ることによってその検索ができる。
したがって、メツセージの記憶位置と特定のMSFに独
自の世代番号がメツセージの名前を構成するので、MS
Fは、所与の名前がメツセージに割り当てるために使用
できるかどうかを判定するようには設計されてはいない
ことがわかる。1つの世代番号/記憶位置マツピングし
か存在し得ないので、命令は本来的にシステムによって
実施される。
自の世代番号がメツセージの名前を構成するので、MS
Fは、所与の名前がメツセージに割り当てるために使用
できるかどうかを判定するようには設計されてはいない
ことがわかる。1つの世代番号/記憶位置マツピングし
か存在し得ないので、命令は本来的にシステムによって
実施される。
第2図は、新しいメツセージを記憶する方法の流れ図で
ある。この特定のMSFに対する現世代番号はすでにS
FMから得られているものと仮定する。
ある。この特定のMSFに対する現世代番号はすでにS
FMから得られているものと仮定する。
新しいメツセージが到着すると、特定のMSF中の空い
た記憶位置がメツセージを記憶する場所として選定され
る。ブロック230に示すように、メツセージの位置を
記録するためにメツセージ表にも1つの項目が作成され
る。次に、現世代番号と記憶位置からなる名前が、新し
いメツセージに対して割り当てられる。それからメツセ
ージの名前とメツセージ自体が、MSF内の指定された
位置に記憶され、メツセージの名前がメツセージ作成側
に戻される。メツセージの名前は、MSFの中に記憶さ
れており、したがって検索要求が生じた場合に、所与の
記憶位置のメツセージが要求されているメツセージであ
るかどうか判定するために、MSF内に記憶された名前
を、要求された名前と比較することができる。次いでM
SFは、ブロック260に示すように、それが記憶容量
に近づいているかどうか判定し、そうである場合は、M
SFがそのメツセージ記憶容量に達しつつあることを示
すメツセージをSIi’Mに送る。そうでない場合は、
このルーチンは終了する。
た記憶位置がメツセージを記憶する場所として選定され
る。ブロック230に示すように、メツセージの位置を
記録するためにメツセージ表にも1つの項目が作成され
る。次に、現世代番号と記憶位置からなる名前が、新し
いメツセージに対して割り当てられる。それからメツセ
ージの名前とメツセージ自体が、MSF内の指定された
位置に記憶され、メツセージの名前がメツセージ作成側
に戻される。メツセージの名前は、MSFの中に記憶さ
れており、したがって検索要求が生じた場合に、所与の
記憶位置のメツセージが要求されているメツセージであ
るかどうか判定するために、MSF内に記憶された名前
を、要求された名前と比較することができる。次いでM
SFは、ブロック260に示すように、それが記憶容量
に近づいているかどうか判定し、そうである場合は、M
SFがそのメツセージ記憶容量に達しつつあることを示
すメツセージをSIi’Mに送る。そうでない場合は、
このルーチンは終了する。
第3図は、すでに名前が付けられたメツセージに対して
記憶域を割り振る方法の流れ図である。
記憶域を割り振る方法の流れ図である。
この状況は、メツセージがあるMSFから他の装置に転
送されている時に発生する。その−例は、MSFがその
記憶容量に達しつつあるかまたは既に達しており、次に
入ってくるメツセージのための場所を空けるためにその
メツセージをオフロードしなければならない場合である
。このような状況では、メツセージが他のMSF(また
恐らくは、ディスク駆動機構200などの記憶装置)に
オフロードされることがあり得る。
送されている時に発生する。その−例は、MSFがその
記憶容量に達しつつあるかまたは既に達しており、次に
入ってくるメツセージのための場所を空けるためにその
メツセージをオフロードしなければならない場合である
。このような状況では、メツセージが他のMSF(また
恐らくは、ディスク駆動機構200などの記憶装置)に
オフロードされることがあり得る。
ブロック280に示すように、既に割り当てられた名前
をもつメツセージがMSFに到達すると、最初のステッ
プは、メソセージの名前の中で指定された記憶位置がふ
さがっているかどうかを検査することである。そうでな
い場合は、メツセージはその名前とともにその名前の中
で指定された記憶位置に記憶される。メツセージの名前
は索引表中にも記憶され、したがって後でのメツセージ
検索要求が処理できる。メツセージの名前の中で指定さ
れた記憶位置がすでにふさがっている場合には、ブロッ
ク300に示すように、ふさがっていない記憶位置がそ
のメツセージのために選ばれる。
をもつメツセージがMSFに到達すると、最初のステッ
プは、メソセージの名前の中で指定された記憶位置がふ
さがっているかどうかを検査することである。そうでな
い場合は、メツセージはその名前とともにその名前の中
で指定された記憶位置に記憶される。メツセージの名前
は索引表中にも記憶され、したがって後でのメツセージ
検索要求が処理できる。メツセージの名前の中で指定さ
れた記憶位置がすでにふさがっている場合には、ブロッ
ク300に示すように、ふさがっていない記憶位置がそ
のメツセージのために選ばれる。
メソセージがその元の名を維持している間に、そのメツ
セージに対する新しい記述または指定がMSF中の索引
表に挿入される。この指定は、メツセージの元の名前と
メツセージが記憶される新しいMSF内の新しい記憶位
置からなる。次に制御がブロック320に移り、そこで
名前とメツセージがこの新しい空いた記憶位置に記憶さ
れる。
セージに対する新しい記述または指定がMSF中の索引
表に挿入される。この指定は、メツセージの元の名前と
メツセージが記憶される新しいMSF内の新しい記憶位
置からなる。次に制御がブロック320に移り、そこで
名前とメツセージがこの新しい空いた記憶位置に記憶さ
れる。
この処理が完了すると、ブロック330に示すように、
MSFは再びそれが記憶容全満杯に近づきつつあるかど
うかを判定する。そうである場合、ブロック340に示
すように、MSFが満杯に達したかまたは達しつつある
ことを示すメツセージがSFMに送られる。MSFがそ
の記憶容■に近づいておらずまたは達していない場合は
、このルーチンは終了する。
MSFは再びそれが記憶容全満杯に近づきつつあるかど
うかを判定する。そうである場合、ブロック340に示
すように、MSFが満杯に達したかまたは達しつつある
ことを示すメツセージがSFMに送られる。MSFがそ
の記憶容■に近づいておらずまたは達していない場合は
、このルーチンは終了する。
第4図は、メツセージ記憶システムからメツセージを検
索する方法の流れ図である。この動作は。
索する方法の流れ図である。この動作は。
上位処理装置111〜115などの装置による所定のメ
ツセージの検索要求で始まる。
ツセージの検索要求で始まる。
メソセージ検索動作の制御がブロック350で開始され
、そこで検索要求が入力される。その場合に最初のステ
ップは、ブロック350に示すように、メツセージの名
前がメツセージ名によって指定された記憶位置に記憶さ
れているかどうか判定することである。メツセージ名が
指定された記憶位置にある名前と同じである場合、プロ
、り360に示すようにメツセージが検索され、メツセ
ージ要求側に送り返される。
、そこで検索要求が入力される。その場合に最初のステ
ップは、ブロック350に示すように、メツセージの名
前がメツセージ名によって指定された記憶位置に記憶さ
れているかどうか判定することである。メツセージ名が
指定された記憶位置にある名前と同じである場合、プロ
、り360に示すようにメツセージが検索され、メツセ
ージ要求側に送り返される。
要求されたメツセージの中で指定された記憶位置にある
名前が要求されているメツセージの名前と同じでない場
合は、ブロック370に示すようにMSFの索引表が探
索される。名前(及びメツセージ)の記憶位置は記憶位
置情報を含む部分メツセージ名から得られるが、要求さ
れているメツセージと要求されているメツセージ中で指
定された記憶位置にあるメツセージ名とが比較されると
きは、フルネームが比較されることに留意されたい。こ
のフルネームは世代番号と元の記憶位置からなる。
名前が要求されているメツセージの名前と同じでない場
合は、ブロック370に示すようにMSFの索引表が探
索される。名前(及びメツセージ)の記憶位置は記憶位
置情報を含む部分メツセージ名から得られるが、要求さ
れているメツセージと要求されているメツセージ中で指
定された記憶位置にあるメツセージ名とが比較されると
きは、フルネームが比較されることに留意されたい。こ
のフルネームは世代番号と元の記憶位置からなる。
制御がブロック370からブロック380に移り、そこ
で索引表中に名前が存在するかどうかの判断が行なわれ
る。索引表中に名前が存在する場合、索引表中で指定さ
れた記憶位置が検査され、メンセージがその位置に存在
する場合は、それがメツセージ要求側に戻される。別の
MSFから現在のMSFに移されたメソセージの場合に
この上うな状況が生じることになる。この場合、索引表
はメツセージの名前、及びそのメツセージを含んでいた
MSF中の新しい記憶位置を含むことになる。
で索引表中に名前が存在するかどうかの判断が行なわれ
る。索引表中に名前が存在する場合、索引表中で指定さ
れた記憶位置が検査され、メンセージがその位置に存在
する場合は、それがメツセージ要求側に戻される。別の
MSFから現在のMSFに移されたメソセージの場合に
この上うな状況が生じることになる。この場合、索引表
はメツセージの名前、及びそのメツセージを含んでいた
MSF中の新しい記憶位置を含むことになる。
索引表の検索が成功しなかった場合は、制御は判断ブロ
ック390に移り、そこで現世代番号が要求されている
メツセージの世代番号と同じであるかどうか判定される
。同じである場合は、その同じ世代番号は、メツセージ
がメツセージ名の中で指定された記憶位置に位置すべき
ことを意味するので、エラーが発生する。指定した記憶
位置にも索引表中にもメツセージが見つからなかったの
で、エラーが発生し、ブロック410に示すようにエラ
ー・メツセージがメツセージ要求側に送り返される。
ック390に移り、そこで現世代番号が要求されている
メツセージの世代番号と同じであるかどうか判定される
。同じである場合は、その同じ世代番号は、メツセージ
がメツセージ名の中で指定された記憶位置に位置すべき
ことを意味するので、エラーが発生する。指定した記憶
位置にも索引表中にもメツセージが見つからなかったの
で、エラーが発生し、ブロック410に示すようにエラ
ー・メツセージがメツセージ要求側に送り返される。
メツセージの世代番号が現世代番号と同じでない場合は
、ブロック400に示すようにメツセージ検索要求がS
FMに渡される。この時点でSFMは、ブロック405
に示すように、満杯に近づいたためにSFMがメツセー
ジを別のMSFに再配置したかどうか判定するために、
そのメツセージ記憶位置の表を探索する。次いで、SF
Mはメツセージ要求を、SFMがメツセージを以前に再
配置したMSFに転送し、ブロック407に示すように
、メツセージが以前に再配置されたMSFで前記の操作
が繰り返される。メツセージが見つからなかった場合に
は、エラーが発生し、ブロック410に示すようにエラ
ー・メツセージがメツセージ要求側に送り返される。
、ブロック400に示すようにメツセージ検索要求がS
FMに渡される。この時点でSFMは、ブロック405
に示すように、満杯に近づいたためにSFMがメツセー
ジを別のMSFに再配置したかどうか判定するために、
そのメツセージ記憶位置の表を探索する。次いで、SF
Mはメツセージ要求を、SFMがメツセージを以前に再
配置したMSFに転送し、ブロック407に示すように
、メツセージが以前に再配置されたMSFで前記の操作
が繰り返される。メツセージが見つからなかった場合に
は、エラーが発生し、ブロック410に示すようにエラ
ー・メツセージがメツセージ要求側に送り返される。
第5図は、メツセージ記憶システムからメソセージを削
除する方法の流れ図である。操作はブロック440に送
られるメツセージを削除する要求で始まる。
除する方法の流れ図である。操作はブロック440に送
られるメツセージを削除する要求で始まる。
判断ブロック440で、削除すべきメツセージの名前が
そのメツセージ名の中で指定された記憶位置に記憶され
ているかどうかの判定が行なわれる。指定された記憶位
置にメツセージ名が含まれている場合、ブロック450
に示すように、その記憶位置は将来のメツセージ用の空
いた記憶位置としてマークされる。その記憶位置に削除
すべきメツセージの名前が含まれていない場合は、制御
はブロック460に進み、そこで現世代番号が削除すべ
きメツセージの名前中の世代番号と比較される。世代番
号が同じ場合には、 ブロック480で「そのようなメ
ツセージはない」というエラー・メツセージが出される
。世代番号が同じでない場合には、制御はブロック47
0に進み、そこで現MSF中の索引表の探索が行なわれ
る。
そのメツセージ名の中で指定された記憶位置に記憶され
ているかどうかの判定が行なわれる。指定された記憶位
置にメツセージ名が含まれている場合、ブロック450
に示すように、その記憶位置は将来のメツセージ用の空
いた記憶位置としてマークされる。その記憶位置に削除
すべきメツセージの名前が含まれていない場合は、制御
はブロック460に進み、そこで現世代番号が削除すべ
きメツセージの名前中の世代番号と比較される。世代番
号が同じ場合には、 ブロック480で「そのようなメ
ツセージはない」というエラー・メツセージが出される
。世代番号が同じでない場合には、制御はブロック47
0に進み、そこで現MSF中の索引表の探索が行なわれ
る。
判断ブロック490で、索引表の探索が成功したか否か
の判定が行なわれる。探索が成功し、削除すべきメツセ
ージの名前が索引表中で見つかった場合には、ブロック
500に示すように、索弓表の項目中で指定された記憶
位置が検査される。
の判定が行なわれる。探索が成功し、削除すべきメツセ
ージの名前が索引表中で見つかった場合には、ブロック
500に示すように、索弓表の項目中で指定された記憶
位置が検査される。
次いで、ブロック510に示すように、その記憶位置が
将来のメツセージが記憶できる空いた記憶位置としてマ
ークされる。次に制御はブロック520に進み、そこで
メツセージの名前と記憶場所が索引表から削除される。
将来のメツセージが記憶できる空いた記憶位置としてマ
ークされる。次に制御はブロック520に進み、そこで
メツセージの名前と記憶場所が索引表から削除される。
ブロック490での判定がノーで、その名前が索引表中
に存在しないことを意味する場合には、ブロック530
に示すように、探索要求がSFMに渡される。次いでS
FMは、そのメツセージが他のMSFに再配置されたか
どうか調べるために、その表を探索する。再配置された
場合にはメツセージが以前に再配置された特定のMSF
で第5図に示した処理が繰り返される。
に存在しないことを意味する場合には、ブロック530
に示すように、探索要求がSFMに渡される。次いでS
FMは、そのメツセージが他のMSFに再配置されたか
どうか調べるために、その表を探索する。再配置された
場合にはメツセージが以前に再配置された特定のMSF
で第5図に示した処理が繰り返される。
第6図は、前記のMSFが満杯に近づいているかまたは
達したときに、SFMがMSFからメソセージを受け取
る状況の1例を示す流れ図である。
達したときに、SFMがMSFからメソセージを受け取
る状況の1例を示す流れ図である。
この信号がSMFに到達し、次いで論理の流れがブロッ
ク540から開始する。
ク540から開始する。
ブロック540で、この例では、メツセージを送るMS
FがFで表される指定番号を有するものと仮定する。次
いでブロック550に示すように、SFMは、世代番号
Gに対する世代カウントがOになるように、Gで表され
る世代番号を選定する。
FがFで表される指定番号を有するものと仮定する。次
いでブロック550に示すように、SFMは、世代番号
Gに対する世代カウントがOになるように、Gで表され
る世代番号を選定する。
Oの世代カウントは、世代番号が割り当てられていない
ことを表すSFM内での表示である。負の世代カウント
は、世代カウントの絶対値によって指定されたMSFに
世代番号が割り当てられていることを意味する。正の世
代カウントは、世代番号が使用されたが、現在新しい名
前の割当てに使用されてはいないことを意味する。この
状況が生じるのは、世代番号が名前の割当てに使用され
、名前とメツセージが現に他のMSFまたはディスク駆
動機構200などの記憶装置に記憶されている場合であ
る。
ことを表すSFM内での表示である。負の世代カウント
は、世代カウントの絶対値によって指定されたMSFに
世代番号が割り当てられていることを意味する。正の世
代カウントは、世代番号が使用されたが、現在新しい名
前の割当てに使用されてはいないことを意味する。この
状況が生じるのは、世代番号が名前の割当てに使用され
、名前とメツセージが現に他のMSFまたはディスク駆
動機構200などの記憶装置に記憶されている場合であ
る。
ブロック560で、MSF Fが文字Pで表される現世
代番号を有するものと仮定する。ブロック570で、G
で表される現世代番号がMSFFに割り当てられる。同
時に、ブロック580に示すように、Gの世代カウント
が負のFに設定される。これは、世代番号Gが負のFの
絶対値をもつMSFに割り当てられることを意味する。
代番号を有するものと仮定する。ブロック570で、G
で表される現世代番号がMSFFに割り当てられる。同
時に、ブロック580に示すように、Gの世代カウント
が負のFに設定される。これは、世代番号Gが負のFの
絶対値をもつMSFに割り当てられることを意味する。
この場合、それはMSF Fである。
SFMはどの世代番号が割り当てられるがの記録を維持
するが、個々のMSFの内部にどれだけのメツセージが
記憶されているがの記録は各MSFが維持する。したが
って、ブロック590に示すように、MSF Fに、
それが世代番号と共に含んでいるメツセージの数を照会
しなければならない。
するが、個々のMSFの内部にどれだけのメツセージが
記憶されているがの記録は各MSFが維持する。したが
って、ブロック590に示すように、MSF Fに、
それが世代番号と共に含んでいるメツセージの数を照会
しなければならない。
この例では、ブロック600に示すように、照会された
MSFは、世代番号Pを含むメツセージの数と同じ数X
を戻す。
MSFは、世代番号Pを含むメツセージの数と同じ数X
を戻す。
次のステップは、Pの世代カウントを数Xに設定するこ
とである。戻された数Xは正の値になる。
とである。戻された数Xは正の値になる。
Pの世代番号に数Xを割り当てることによって、SFM
はPが使用中の世代カウントであることを知り、さらに
、それは正の値なので、SFMはその名前の中に世代番
号Pを含むメツセージがMSSの間で分散されているこ
とを知ることになる。
はPが使用中の世代カウントであることを知り、さらに
、それは正の値なので、SFMはその名前の中に世代番
号Pを含むメツセージがMSSの間で分散されているこ
とを知ることになる。
これはブロック810に示されている。
次のステップは、ブロック620であり、そこでSFM
はMSF Fから世代番号Pを有するメツセージを読
み取る。次いで、ブロックE330に示すように、メツ
セージの元の名を維持しながら、それらのメツセージが
他のMSF(または、恐らくはディスク駆動機構200
などの記憶装置)に書き込まれる。これらの移されたメ
ツセージの記憶位置が、ブロック640に示すように移
動メツセージ表に記憶される。ブロック650に示す最
終ステップで、世代番号Pを有するメツセージのすべて
がMSF Fから削除される。この時点でこのルーチ
ンが終了する。
はMSF Fから世代番号Pを有するメツセージを読
み取る。次いで、ブロックE330に示すように、メツ
セージの元の名を維持しながら、それらのメツセージが
他のMSF(または、恐らくはディスク駆動機構200
などの記憶装置)に書き込まれる。これらの移されたメ
ツセージの記憶位置が、ブロック640に示すように移
動メツセージ表に記憶される。ブロック650に示す最
終ステップで、世代番号Pを有するメツセージのすべて
がMSF Fから削除される。この時点でこのルーチ
ンが終了する。
第7図は、SFMが所与のMSFからメツセージ検索要
求を受け取ったときの、SFMの動作の構成図である。
求を受け取ったときの、SFMの動作の構成図である。
この例では、ブロック660で、Fが所与のMSFの番
号であると仮定し、(J、K)が所与のメツセージの名
前であるとする。判断ブロック670で、世代JがMS
Fのいずれかに割り当てられているか否かの判定が行な
われる。判定が真の場合、制御はブロック680に移り
、この例では、MSF Cは検索するべく要求された
メツセージの世代番号を含むものと仮定する。したがっ
てブロック690に示すように、メソセージ検索要求が
MSF Cに送られる。ブロック670での判断が誤
の場合、制御は判断ブロック700に移り、そこで(J
、K)が移動メツセージ表中で指定されているかどうか
判定される。その判定が誤の場合、ブロック710に示
すように、そのメツセージは存在しないという指示が、
メツセージを要求しているMSFに戻される。
号であると仮定し、(J、K)が所与のメツセージの名
前であるとする。判断ブロック670で、世代JがMS
Fのいずれかに割り当てられているか否かの判定が行な
われる。判定が真の場合、制御はブロック680に移り
、この例では、MSF Cは検索するべく要求された
メツセージの世代番号を含むものと仮定する。したがっ
てブロック690に示すように、メソセージ検索要求が
MSF Cに送られる。ブロック670での判断が誤
の場合、制御は判断ブロック700に移り、そこで(J
、K)が移動メツセージ表中で指定されているかどうか
判定される。その判定が誤の場合、ブロック710に示
すように、そのメツセージは存在しないという指示が、
メツセージを要求しているMSFに戻される。
この例では、ブロック720に示すように、メツセージ
(J、K)の現記憶位置をNとする。これは判断ブロッ
ク700の判定が真の場合である。
(J、K)の現記憶位置をNとする。これは判断ブロッ
ク700の判定が真の場合である。
次に、ブロック730に示すようにメツセージ検索要求
がMSF Hに送られ、ルーチンは終了する。
がMSF Hに送られ、ルーチンは終了する。
第8図は、SMFがメツセージをあるMSFから別のM
SFに転送する方法を示す流れ図である。
SFに転送する方法を示す流れ図である。
この例では、文字Fは前のMSFの番号、すなわちメソ
セージの転送元のMSFの番号を表す。文字Tは、MS
F Fからのメツセージが転送される先の新しいMS
Fの番号を表す。これはブロック740に示されている
。文字Pは、ブロック750に示すよ・うに、MSF
Fに割り当てられた現世代番号を表す。
セージの転送元のMSFの番号を表す。文字Tは、MS
F Fからのメツセージが転送される先の新しいMS
Fの番号を表す。これはブロック740に示されている
。文字Pは、ブロック750に示すよ・うに、MSF
Fに割り当てられた現世代番号を表す。
ブロック760に示すように、SMFは、世代カウント
がOになる世代番号Nを取り出さなければならない。こ
れは単に世代番号が使用されていないことを表すだけで
ある。次いで、ブロック770に示すように、SFMは
世代番号NをMSFTに割り当てる。
がOになる世代番号Nを取り出さなければならない。こ
れは単に世代番号が使用されていないことを表すだけで
ある。次いで、ブロック770に示すように、SFMは
世代番号NをMSFTに割り当てる。
次に、SFMは、MSFFを使用しているすべての上位
処理装置に、あらゆるメツセージ記憶操作にMSF
Tを使用するよう知らせる。これはブロック780に示
されている。次に、ブロック790に示すように、SF
Mは、MSFを待ってホストからの要求の受取りと処理
をやめなければならない。この暫定的な待ち時間の間に
、SFMは、第7図に示したアルゴリズムを使って、M
SF Tに送られた上位処理装置からのまだMSFF
にあるメツセージに対する要求を処理する。
処理装置に、あらゆるメツセージ記憶操作にMSF
Tを使用するよう知らせる。これはブロック780に示
されている。次に、ブロック790に示すように、SF
Mは、MSFを待ってホストからの要求の受取りと処理
をやめなければならない。この暫定的な待ち時間の間に
、SFMは、第7図に示したアルゴリズムを使って、M
SF Tに送られた上位処理装置からのまだMSFF
にあるメツセージに対する要求を処理する。
これは、MSF FからMSF Tへのメツセージ
の転送が完了する前の期間である。
の転送が完了する前の期間である。
次いで、SFMはMSF F中のすべてのメツセージ
を読み出し、別のMSFなどの別の記憶位置やディスク
駆動機構200などの記憶装置にそれを複写する。これ
はブロック800に図示されている。MSF Fから
すべてのメツセージが転送された後、MSF Fはメ
ツセージを全く含まス空であり、したがってブロック8
10に示すように修理、交換または変更のために使用か
ら外すことができる。
を読み出し、別のMSFなどの別の記憶位置やディスク
駆動機構200などの記憶装置にそれを複写する。これ
はブロック800に図示されている。MSF Fから
すべてのメツセージが転送された後、MSF Fはメ
ツセージを全く含まス空であり、したがってブロック8
10に示すように修理、交換または変更のために使用か
ら外すことができる。
第9A図は、空いた世代番号がないときの世代番号の選
択の構成図である。この状況は、あるMSSに対する世
代番号の数が限られている場合に発生する。MSFがS
FMに、MSFがその記憶容量に一杯になり、メソセー
ジをオフ・ロードする必要があることを通知した後、通
常、SMFはメツセージをオフ・ロードする前に空いた
世代番号を選定し、それをMSFに割り当てる。ただし
、すべての世代番号が使用中である可能性もある。
択の構成図である。この状況は、あるMSSに対する世
代番号の数が限られている場合に発生する。MSFがS
FMに、MSFがその記憶容量に一杯になり、メソセー
ジをオフ・ロードする必要があることを通知した後、通
常、SMFはメツセージをオフ・ロードする前に空いた
世代番号を選定し、それをMSFに割り当てる。ただし
、すべての世代番号が使用中である可能性もある。
この状況では、すべての世代番号が使用中である場合で
も、SFMが可能な世代番号のうちから1つの新しい世
代番号を取り出すことが、必要である。次いで、SFM
は(やはり、可能な世代番号の数が限られているものと
仮定して)、その名前に世代番号が含まれるすべての現
存メツセージを見つけなければならない。これらの現存
メツセージのための元の記憶位置をそれらのメツセージ
名から抜き出し、メツセージをそれらの元の記憶位置に
移さなければならない。それらの記憶位置に他のメツセ
ージが(別の世代番号で)すでに記憶されている場合に
は、これらの追加のメツセージをMSFからアンロード
し、ディスク駆動機構といった記憶装置中など、どこか
他の場所に記憶しなければならない。次に、現存のメツ
セージがそれらの名前中で指定された記憶位置に記憶さ
れ、SFMは、それが選定した新しい世代番号の使用を
開始するようMSFに通知する。
も、SFMが可能な世代番号のうちから1つの新しい世
代番号を取り出すことが、必要である。次いで、SFM
は(やはり、可能な世代番号の数が限られているものと
仮定して)、その名前に世代番号が含まれるすべての現
存メツセージを見つけなければならない。これらの現存
メツセージのための元の記憶位置をそれらのメツセージ
名から抜き出し、メツセージをそれらの元の記憶位置に
移さなければならない。それらの記憶位置に他のメツセ
ージが(別の世代番号で)すでに記憶されている場合に
は、これらの追加のメツセージをMSFからアンロード
し、ディスク駆動機構といった記憶装置中など、どこか
他の場所に記憶しなければならない。次に、現存のメツ
セージがそれらの名前中で指定された記憶位置に記憶さ
れ、SFMは、それが選定した新しい世代番号の使用を
開始するようMSFに通知する。
ブロック820は、この例で行なった仮定を示す。この
場合、Tは容量限界に達したMSFを表す。Mはこれま
でに見つかった最小のメツセージ・カウントを表す。こ
れは可能などのメツセージ・木本 カウントよりも大きい値、この例では(231)−1に
初期設定される。Gはメツセージ・カウントが最小の世
代番号を表し、ゼロに初期設定される。Mは比較のため
の値を表し、ゼロに初期設定される。
場合、Tは容量限界に達したMSFを表す。Mはこれま
でに見つかった最小のメツセージ・カウントを表す。こ
れは可能などのメツセージ・木本 カウントよりも大きい値、この例では(231)−1に
初期設定される。Gはメツセージ・カウントが最小の世
代番号を表し、ゼロに初期設定される。Mは比較のため
の値を表し、ゼロに初期設定される。
ブロック830で、(文字Jで表される)どの世代番号
が、SMFが使用する次の世代番号として選定されるか
を選ぶためのルーチンが始まる。
が、SMFが使用する次の世代番号として選定されるか
を選ぶためのルーチンが始まる。
ブロック840で、文字Cは所与の世代番号Jに対する
世代カウントを表す。判断ブロック850に示スように
、Cの値が0より小さい場合には、制御はブロック86
0に移る。MSFにその世代番fで記憶されているメツ
セージの数を得るために、−C(これは正の値)の世代
カウントを有するMSFが照会される。次いで、ブロッ
ク870に示すように、CがMSF −Cによって戻
されたメツセージの数に再初期設定される。プロ、ツク
880で、CがMに対して指定された値より小さいか否
かを判定する。小さい場合、MはCの値に再初期設定さ
れ、Gは世代番号Jに割り当てられる。次に制御がブロ
ック830に戻り、限られた数の世代番号Jを含むシス
テムで、世代番号Jのそれぞれについてこのルーチンが
完了するまで繰り返される。
世代カウントを表す。判断ブロック850に示スように
、Cの値が0より小さい場合には、制御はブロック86
0に移る。MSFにその世代番fで記憶されているメツ
セージの数を得るために、−C(これは正の値)の世代
カウントを有するMSFが照会される。次いで、ブロッ
ク870に示すように、CがMSF −Cによって戻
されたメツセージの数に再初期設定される。プロ、ツク
880で、CがMに対して指定された値より小さいか否
かを判定する。小さい場合、MはCの値に再初期設定さ
れ、Gは世代番号Jに割り当てられる。次に制御がブロ
ック830に戻り、限られた数の世代番号Jを含むシス
テムで、世代番号Jのそれぞれについてこのルーチンが
完了するまで繰り返される。
各世代番号Jについて上記のステップが完了すると、制
御はブロック900に移り、そこでCが世代Gに対する
世代カウントと等しくなるように割り当てられる。判断
プロ、ツク910でCがゼロより小さいかどうか判定さ
れる。Cがゼロより小さくない場合には、制御はブロッ
ク920に移り、そこでSFMの移動メツセージ表から
名前(G。
御はブロック900に移り、そこでCが世代Gに対する
世代カウントと等しくなるように割り当てられる。判断
プロ、ツク910でCがゼロより小さいかどうか判定さ
れる。Cがゼロより小さくない場合には、制御はブロッ
ク920に移り、そこでSFMの移動メツセージ表から
名前(G。
K)(Kは世代Gにおけるある記憶位置を表す)を存す
るメツセージのリストが得られる。ブロック910でC
がゼロより小さいと判定された場合には、制御は930
に移り、そこでSFMはMSF−C(これは正の値を表
す)から名前(G。
るメツセージのリストが得られる。ブロック910でC
がゼロより小さいと判定された場合には、制御は930
に移り、そこでSFMはMSF−C(これは正の値を表
す)から名前(G。
K)を有するメツセージのリストを得る。
第9B図は、このルーチンの続きの部分を示したもので
あるが、ここで上記のステップで決定された世代番号に
対するメツセージが移動する。これはページ結合子Aを
介してブロック940に表されている。制御はブロック
950に移り、そこでメツセージがMSF(問題のMS
F)の記憶位置Kに記憶されているか否かが判定される
。記憶されている場合には、ブロック960で記憶位置
Kに記憶されたメツセージ中の世代番号がMSFTに対
する現世代であるかどうかが判定される。
あるが、ここで上記のステップで決定された世代番号に
対するメツセージが移動する。これはページ結合子Aを
介してブロック940に表されている。制御はブロック
950に移り、そこでメツセージがMSF(問題のMS
F)の記憶位置Kに記憶されているか否かが判定される
。記憶されている場合には、ブロック960で記憶位置
Kに記憶されたメツセージ中の世代番号がMSFTに対
する現世代であるかどうかが判定される。
メツセージ世代番号がMSF Tの現歇代番号である
場合は、ブロック970に示すように、そのメツセージ
はMSF T中の他の記憶位置に記憶される。世代番
号が異なる場合は、ブロック980に示すように、メツ
セージは必ずしもMSFではなく、別の記憶位置に移さ
れる。次に、(G。
場合は、ブロック970に示すように、そのメツセージ
はMSF T中の他の記憶位置に記憶される。世代番
号が異なる場合は、ブロック980に示すように、メツ
セージは必ずしもMSFではなく、別の記憶位置に移さ
れる。次に、(G。
K ’)で指定されたメツセージがMSF Tからご
く最近性に移されたメツセージの記憶位置に記憶される
。次いで、制御は(G、K)で指定される次のメツセー
ジの操作に戻る。それが完了するとMSF TはMS
Fから世代Gがその現世代番号として使用されるとの通
知を受ける。
く最近性に移されたメツセージの記憶位置に記憶される
。次いで、制御は(G、K)で指定される次のメツセー
ジの操作に戻る。それが完了するとMSF TはMS
Fから世代Gがその現世代番号として使用されるとの通
知を受ける。
操作例
MSSlooのようなメソセージ記憶システムの操作例
は、システム内のMSFに世代番号を割り当てることか
ら始まる。この場合、SFMはMSFIIOに世代番号
1を、MSF120に世代番号2を、そしてMSF13
0に世代番号3を割り当てる。MSFIIOに割り当て
られている上位処理装置からシステムに入ってくる最初
のメツセージは、記憶位置1に記憶される。1例として
、rlli thereJのメツセージを使用すると、
メツセージの状況は次のようになる。
は、システム内のMSFに世代番号を割り当てることか
ら始まる。この場合、SFMはMSFIIOに世代番号
1を、MSF120に世代番号2を、そしてMSF13
0に世代番号3を割り当てる。MSFIIOに割り当て
られている上位処理装置からシステムに入ってくる最初
のメツセージは、記憶位置1に記憶される。1例として
、rlli thereJのメツセージを使用すると、
メツセージの状況は次のようになる。
現世代 メツセージ表 索引表台、これ
らの処理装置からくるメツセージはそれぞれMSFに記
憶されることになる。この例(すべてのメツセージがS
MF 110に記憶される)で続けると、記憶すべき次
の2つのメツセージはすでに名前が割り当てられている
。それらのメツセージは名前(3,2)をもつrTha
t’s l ife Jと名前(2,1)をもつrHe
re today Jである。
らの処理装置からくるメツセージはそれぞれMSFに記
憶されることになる。この例(すべてのメツセージがS
MF 110に記憶される)で続けると、記憶すべき次
の2つのメツセージはすでに名前が割り当てられている
。それらのメツセージは名前(3,2)をもつrTha
t’s l ife Jと名前(2,1)をもつrHe
re today Jである。
したがって、更新後の状況表は次のようになる。
現世代
メツセージ表 索引表
名前 メツセージ
(1,1) lli there (2,1)
: 3(3、2) That’s 1ife(2、1
) Here today ここで、もっと多くのメツセージをシステムに加えるこ
とができる。他の上位処理装置がそれぞれMSF2及び
MSF3に割り当てられている場メツセージ検索要求は
まずMSFによって処理される。たとえば、(1,1)
、(2,1)、(1,2)と名づけられた3つのメツセ
ージが、記憶された後に上位処理装置から要求された場
合、メツセージが記憶されたMSFから処理が開始され
る。この場合、メツセージ(1,1)は記憶位置1で見
つかる。メツセージ(2,1)は記憶位置1では見つか
らないが、索引表を探索した後に記憶位置3で見つかる
。メツセージ(1,2)は記憶位置2で見つからず、索
引表を探索しても見つからない。上記の3つのメツセー
ジだけがシステム中にあるので、SFMへの信号によっ
て、メツセージは見つからす、エラー信号がメツセージ
要求側に戻される。
: 3(3、2) That’s 1ife(2、1
) Here today ここで、もっと多くのメツセージをシステムに加えるこ
とができる。他の上位処理装置がそれぞれMSF2及び
MSF3に割り当てられている場メツセージ検索要求は
まずMSFによって処理される。たとえば、(1,1)
、(2,1)、(1,2)と名づけられた3つのメツセ
ージが、記憶された後に上位処理装置から要求された場
合、メツセージが記憶されたMSFから処理が開始され
る。この場合、メツセージ(1,1)は記憶位置1で見
つかる。メツセージ(2,1)は記憶位置1では見つか
らないが、索引表を探索した後に記憶位置3で見つかる
。メツセージ(1,2)は記憶位置2で見つからず、索
引表を探索しても見つからない。上記の3つのメツセー
ジだけがシステム中にあるので、SFMへの信号によっ
て、メツセージは見つからす、エラー信号がメツセージ
要求側に戻される。
元の3つのメツセージに話を戻すと、システムはメツセ
ージの削除も行なう。(1,1)及び(2,1)と名づ
けられたメツセージを削除する信号が入力された場合、
システムの状況は次のようになる。
ージの削除も行なう。(1,1)及び(2,1)と名づ
けられたメツセージを削除する信号が入力された場合、
システムの状況は次のようになる。
現世代 メツセージ表 索引表SMFは世
代、世代カウント、移されたメソセージ及び現記憶位置
に関する情報を含んでいる。この情報は、SFM中の様
々な表の中に記憶される。
代、世代カウント、移されたメソセージ及び現記憶位置
に関する情報を含んでいる。この情報は、SFM中の様
々な表の中に記憶される。
MSF世代番号と世代カウント情報を含む表は、可能な
すべての世代番号について、世代カウントがゼロから始
まる。SFMが初期設定されて、世代番号1で初期設定
されているMSFllo、世代番号2で初期設定されて
いるMSF120.及び世代番号3で初期設定されてい
るMSF130などMSFが世代番号を受け取った後、
SFMは世代番号にマイナスをつけた世代カウントを割
り当てる。すなわち、MSFIIOは−1の世代カウン
トを有し、MSI”120は−2の世代カウントを有し
、そしてMSF130は−3の世代カウントを有するこ
とになる。この情報はすべてSFM140中の表に記憶
される。また、移動されたメツセージの名前とその現記
憶位置を含む移動メツセージ表は、最初は情報なしで始
まり、メツセージが実際にあるMSFから別のMSFま
たはディスク駆動機構200などの別の記憶装置に移さ
れるま−で、その状態に留まる。メツセージが移動され
た時点で、移動メツセージ表が移されたメソセージの記
憶位置に関する情報で更新される。メツセージが移され
、様々なMSFに対する世代カウントが変更されると、
世代番号/世代カウント表が、世代番号が使用中である
が現在は使用されていないことを反映するように現情報
で更新される。使用中であるが現在使用されていない世
代番号については、世代番号/世代カウント表は、この
ような世代番号に対応する世代カウント・フィールド中
に正の値を持つことによって、この情報を反映する。た
だし、現世代番号表は、新しい世代番号がこのとき所与
のMSFに割り当てられていることを示す。次の表は、
MSFlの現世代の変更前と変更後のシステムの状況を
示す。
すべての世代番号について、世代カウントがゼロから始
まる。SFMが初期設定されて、世代番号1で初期設定
されているMSFllo、世代番号2で初期設定されて
いるMSF120.及び世代番号3で初期設定されてい
るMSF130などMSFが世代番号を受け取った後、
SFMは世代番号にマイナスをつけた世代カウントを割
り当てる。すなわち、MSFIIOは−1の世代カウン
トを有し、MSI”120は−2の世代カウントを有し
、そしてMSF130は−3の世代カウントを有するこ
とになる。この情報はすべてSFM140中の表に記憶
される。また、移動されたメツセージの名前とその現記
憶位置を含む移動メツセージ表は、最初は情報なしで始
まり、メツセージが実際にあるMSFから別のMSFま
たはディスク駆動機構200などの別の記憶装置に移さ
れるま−で、その状態に留まる。メツセージが移動され
た時点で、移動メツセージ表が移されたメソセージの記
憶位置に関する情報で更新される。メツセージが移され
、様々なMSFに対する世代カウントが変更されると、
世代番号/世代カウント表が、世代番号が使用中である
が現在は使用されていないことを反映するように現情報
で更新される。使用中であるが現在使用されていない世
代番号については、世代番号/世代カウント表は、この
ような世代番号に対応する世代カウント・フィールド中
に正の値を持つことによって、この情報を反映する。た
だし、現世代番号表は、新しい世代番号がこのとき所与
のMSFに割り当てられていることを示す。次の表は、
MSFlの現世代の変更前と変更後のシステムの状況を
示す。
MSFlの現世代の変更前:
MSF
現世代
世代: 12345
世代カウントニー1−2 1 3 2SF
1 :
現世代
メツセージ表
名前 メツセージ
(1+ 1 ) Ili there(1+ 2
) 1lere today索引表 MSFIの現世代の変更後二 MSF 現世代 世代: 世代カウント: 移されたメツセージ 現記憶位置 MSF 1 : 現世代 メツセージ表 名前 メツセージ (1、1) Ili there (1r 2 ) 1lere today(:L
2) That’s 1ife索引表 (3,2):3 ずとも、メツセージに対して一意的な名前を付与するこ
とができる。
) 1lere today索引表 MSFIの現世代の変更後二 MSF 現世代 世代: 世代カウント: 移されたメツセージ 現記憶位置 MSF 1 : 現世代 メツセージ表 名前 メツセージ (1、1) Ili there (1r 2 ) 1lere today(:L
2) That’s 1ife索引表 (3,2):3 ずとも、メツセージに対して一意的な名前を付与するこ
とができる。
第1図は、本発明による3つのメツセージ記憶機構、1
つの記憶機構マネジャ及び交換機を含むメツセージ記憶
システムを示すブロック図である。 第2図は、第1図のシステムにおいて新しいメツセージ
がどのように命名されて記憶されるかを示す流れ図であ
る。 第3図は、以前に名前が付けられたメツセージを記憶す
るステップを示す流れ図である。 第4図は、メツセージがどのように検索されるかを示す
流れ図である。 第5図は、メツセージがどのように削除されるかを示す
流れ図である。 第6図は、メツセージ記憶機構が満杯のときの記憶機構
マネジャによるメツセージの分散を示す流れ図である。 第7図は、記憶機構マネジャに対するメツセージ検索要
求を示す流れ図である。 第8図は、記憶機構マネジャが作業負荷をあるメツセー
ジ記憶機構から他のメツセージ記憶機構にどのように分
散させるかを示す流れ図である。 第9図は、世代番号に空きがないときに記憶機構マネジ
ャがどのように新しい世代番号を割り当てるかを示す流
れ図である。 100・・・・メツセージ記憶システム(MSS)、1
101120.130・・・・メツセージ記憶機構(M
SF) 、111−115・・・・上位処理装置、11
6・・・・通信回線、117・・・・データ回線、14
0・・・・記憶機構マネジャ(SFM)、150・・・
・交換機、160,1701180.190,210・
・・・データ回線、200・・・・ディスク駆動機構。 第3図 メツセージ(j、に)検索 MSFが記憶容態に近づいているという信号第5図 第8図
つの記憶機構マネジャ及び交換機を含むメツセージ記憶
システムを示すブロック図である。 第2図は、第1図のシステムにおいて新しいメツセージ
がどのように命名されて記憶されるかを示す流れ図であ
る。 第3図は、以前に名前が付けられたメツセージを記憶す
るステップを示す流れ図である。 第4図は、メツセージがどのように検索されるかを示す
流れ図である。 第5図は、メツセージがどのように削除されるかを示す
流れ図である。 第6図は、メツセージ記憶機構が満杯のときの記憶機構
マネジャによるメツセージの分散を示す流れ図である。 第7図は、記憶機構マネジャに対するメツセージ検索要
求を示す流れ図である。 第8図は、記憶機構マネジャが作業負荷をあるメツセー
ジ記憶機構から他のメツセージ記憶機構にどのように分
散させるかを示す流れ図である。 第9図は、世代番号に空きがないときに記憶機構マネジ
ャがどのように新しい世代番号を割り当てるかを示す流
れ図である。 100・・・・メツセージ記憶システム(MSS)、1
101120.130・・・・メツセージ記憶機構(M
SF) 、111−115・・・・上位処理装置、11
6・・・・通信回線、117・・・・データ回線、14
0・・・・記憶機構マネジャ(SFM)、150・・・
・交換機、160,1701180.190,210・
・・・データ回線、200・・・・ディスク駆動機構。 第3図 メツセージ(j、に)検索 MSFが記憶容態に近づいているという信号第5図 第8図
Claims (2)
- (1)記憶位置を有するメッセージ記憶機構を複数具備
するメッセージ記憶システムにおいて、複数のホスト装
置からのメッセージを記憶する方法であって、 (a)メッセージ記憶機構の各々に独自の世代番号を割
り当てて、 (b)メッセージを受け取って、メッセージ記憶機構の
空いている記憶位置を突き止め、 (c)該メッセージを該空いている記憶位置にて記憶し
、 (d)該メッセージが記憶されたメッセージ記憶機構の
世代番号と記憶位置からなる独自の名前によって、該記
憶されたメッセージを識別し、(e)該独自の名前を、
該メッセージを送ったホスト装置へ返し、 (f)メッセージ記憶機構が実質的にその記憶容量に達
すると世代番号を変更する ことを特徴とする、メッセージ記憶方法。 - (2)記憶位置を有するメッセージ記憶機構を複数具備
してなり、複数のホスト装置からのメッセージを記憶す
るシステムであって、 (a)メッセージ記憶機構の各々に独自の世代番号を割
り当てる手段、 (b)メッセージを受け取って、メッセージ記憶機構の
空いている記憶位置を突きとめる手段、(c)該メッセ
ージを該空いている記憶位置にて記憶する手段、 (d)該メッセージが記憶されたメッセージ記憶機構の
世代番号と記憶位置からなる独自の名前によって、該記
憶されたメッセージを識別するための、命名手段、 (e)該独自の名前を、該メッセージを送ったホスト装
置へ返す手段、 (f)メッセージ記憶機構が実質的にその記憶容量に達
すると世代番号を変更する手段 を有することを特徴とする、メッセージ記憶システム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/264,420 US5023772A (en) | 1988-10-31 | 1988-10-31 | Method and system for storing messages based upon a non-queried name assignment |
| US264420 | 1988-10-31 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02165251A true JPH02165251A (ja) | 1990-06-26 |
| JPH069041B2 JPH069041B2 (ja) | 1994-02-02 |
Family
ID=23006005
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1271896A Expired - Lifetime JPH069041B2 (ja) | 1988-10-31 | 1989-10-20 | メツセージ記憶方法及びシステム |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5023772A (ja) |
| EP (1) | EP0366864B1 (ja) |
| JP (1) | JPH069041B2 (ja) |
| DE (1) | DE68924393T2 (ja) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5339418A (en) * | 1989-06-29 | 1994-08-16 | Digital Equipment Corporation | Message passing method |
| JP2828029B2 (ja) * | 1996-05-08 | 1998-11-25 | 日本電気株式会社 | 音声蓄積再生サービス装置 |
| JP2002259830A (ja) * | 2001-02-28 | 2002-09-13 | Ricoh Co Ltd | メッセージシステム、メッセージ提供方法、及びプログラム |
| US7139524B2 (en) * | 2004-05-06 | 2006-11-21 | Bellsouth Intellectual Property Corporation | Systems and methods for delivering a stored message to a subscriber |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4484262A (en) * | 1979-01-09 | 1984-11-20 | Sullivan Herbert W | Shared memory computer method and apparatus |
| US4412285A (en) * | 1981-04-01 | 1983-10-25 | Teradata Corporation | Multiprocessor intercommunication system and method |
| US4420807A (en) * | 1981-08-31 | 1983-12-13 | International Business Machines Corporation | Selectively holding data in a buffer for defective backing store tracks |
| US4543627A (en) * | 1981-12-14 | 1985-09-24 | At&T Bell Laboratories | Internal communication arrangement for a multiprocessor system |
| US4630196A (en) * | 1983-04-13 | 1986-12-16 | At&T Information Systems, Inc. | Store and forward facility for use in multiprocessing environment |
| US4644470A (en) * | 1984-07-20 | 1987-02-17 | International Business Machines Corp. | Non-unique names for broadcast messages |
-
1988
- 1988-10-31 US US07/264,420 patent/US5023772A/en not_active Expired - Fee Related
-
1989
- 1989-06-30 EP EP89111924A patent/EP0366864B1/en not_active Expired - Lifetime
- 1989-06-30 DE DE68924393T patent/DE68924393T2/de not_active Expired - Fee Related
- 1989-10-20 JP JP1271896A patent/JPH069041B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| DE68924393T2 (de) | 1996-05-02 |
| US5023772A (en) | 1991-06-11 |
| DE68924393D1 (de) | 1995-11-02 |
| EP0366864A3 (en) | 1991-08-14 |
| EP0366864A2 (en) | 1990-05-09 |
| JPH069041B2 (ja) | 1994-02-02 |
| EP0366864B1 (en) | 1995-09-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5778394A (en) | Space reclamation system and method for use in connection with tape logging system | |
| US6397309B2 (en) | System and method for reconstructing data associated with protected storage volume stored in multiple modules of back-up mass data storage facility | |
| US7325041B2 (en) | File distribution system in which partial files are arranged according to various allocation rules associated with a plurality of file types | |
| US7281032B2 (en) | File sharing system with data mirroring by storage systems | |
| US5664155A (en) | Dynamically assigning a dump space in a shared data facility to receive dumping information to be captured | |
| US5890156A (en) | Distributed redundant database | |
| US5873103A (en) | Data storage management for network interconnected processors using transferrable placeholders | |
| EP3002672B1 (en) | Apparatus for increasing data storage capacity | |
| US6275897B1 (en) | Remote cache utilization for mirrored mass storage subsystem | |
| US6148382A (en) | Arrangement for filtering data item updates to reduce the number of updates to a data item to be stored on mass data storage facility | |
| US20070112812A1 (en) | System and method for writing data to a directory | |
| US6029229A (en) | Digital data storage subsystem including directory for efficiently providing formatting information for stored records | |
| US6330655B1 (en) | Digital data storage subsystem including directory for efficiently providing formatting information for stored records | |
| US6629199B1 (en) | Digital data storage system including directory for efficiently providing formatting information for stored records and utilization of a check value for verifying that a record is from a particular storage location | |
| US6839763B1 (en) | System and method for expediting transfer of data from a local storage facility to a remote storage facility | |
| US8572201B2 (en) | System and method for providing a directory service network | |
| US5900009A (en) | System and method for accessing records in a cache slot which are associated with a current owner storage element or at least one previous owner storage element | |
| JPH02165251A (ja) | メツセージ記憶方法及びシステム | |
| US8478898B2 (en) | System and method for routing directory service operations in a directory service network | |
| US6842843B1 (en) | Digital data storage subsystem including arrangement for increasing cache memory addressability | |
| US5802557A (en) | System and method for caching information in a digital data storage subsystem | |
| EP0417396A2 (en) | Distributed image storage and retrieval system | |
| US6594726B1 (en) | Digital data storage subsystem including arrangement for efficiently controlling fast write storage operation | |
| US20070106691A1 (en) | System and method for efficient directory performance using non-persistent storage | |
| JPH05298376A (ja) | データベース処理方式 |