JPH03226855A - プログラム実行方法 - Google Patents
プログラム実行方法Info
- Publication number
- JPH03226855A JPH03226855A JP2267690A JP2267690A JPH03226855A JP H03226855 A JPH03226855 A JP H03226855A JP 2267690 A JP2267690 A JP 2267690A JP 2267690 A JP2267690 A JP 2267690A JP H03226855 A JPH03226855 A JP H03226855A
- Authority
- JP
- Japan
- Prior art keywords
- information
- program
- area
- storage area
- storage medium
- 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
Landscapes
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、例えば、密結合型マルチプロセッザシステム
に代表される、記憶媒体を複数の中央処理装置(以下C
PUと記載; Cent、ral Processi
ng Unit)で共有する計算機システムにおける
共有記憶媒体の管理方法に係り、特に、プログラムの実
行ミスによる共有記憶媒体上の情報の破損の波及拡大を
回避して、計算機システムの信頼度を向−1ニさせるの
に好適なプログラム実行方法に関するものである。
に代表される、記憶媒体を複数の中央処理装置(以下C
PUと記載; Cent、ral Processi
ng Unit)で共有する計算機システムにおける
共有記憶媒体の管理方法に係り、特に、プログラムの実
行ミスによる共有記憶媒体上の情報の破損の波及拡大を
回避して、計算機システムの信頼度を向−1ニさせるの
に好適なプログラム実行方法に関するものである。
計算機システムを構成する要素としては、cPU、主記
憶装置があり、さらに、オンラインシステムの場合は、
通信制御装置が加わる。そして、これらの要素がどのよ
うに結合されているかにより、計算機のシステム構成が
決定される。
憶装置があり、さらに、オンラインシステムの場合は、
通信制御装置が加わる。そして、これらの要素がどのよ
うに結合されているかにより、計算機のシステム構成が
決定される。
計算機のシステム構成を、どのようにするがを決定する
要因として、対象業務の性質や内容が七。
要因として、対象業務の性質や内容が七。
げられる。そして、対象業務にどのようなシステム構成
を適用するかを評価する基準としては、信頼性、および
、経済性がある。
を適用するかを評価する基準としては、信頼性、および
、経済性がある。
計算機システムの利用が広がってきた今日、システムの
信頼性が、特に重要視されており、計算機のシステム構
成に関しても、信頼性を第1にした構成方法が考えられ
てきた。
信頼性が、特に重要視されており、計算機のシステム構
成に関しても、信頼性を第1にした構成方法が考えられ
てきた。
このような、信頼性を向上させる計算機システムとして
、複数のCPUを設けて一連の処理を行ない、CPUの
1つが故障しても、他のCPUで処理を続行するものが
ある。例えば、密結合マルチプロセッサシステムもその
1つである。
、複数のCPUを設けて一連の処理を行ない、CPUの
1つが故障しても、他のCPUで処理を続行するものが
ある。例えば、密結合マルチプロセッサシステムもその
1つである。
密結合マルチプロセッサシステムは、2台以上のCPU
が、記憶媒体を共有し、複数の処理を同時並列処理する
システムである。いずれかのCI)Uが故障した場合は
、その故障したCPUを切り離し、残りのCPUで処理
を継続させることが出来る。融通性に優れており、大型
のオンラインシステムに向いている。このシステムでは
、オペレーティングシステムは一つであり、複数のCP
Uは、全て同等で、また、記憶媒体上のプログラムはど
のCPUからもアクセス可能であり、ある時点で空いて
いるCPUで処理を実行する。
が、記憶媒体を共有し、複数の処理を同時並列処理する
システムである。いずれかのCI)Uが故障した場合は
、その故障したCPUを切り離し、残りのCPUで処理
を継続させることが出来る。融通性に優れており、大型
のオンラインシステムに向いている。このシステムでは
、オペレーティングシステムは一つであり、複数のCP
Uは、全て同等で、また、記憶媒体上のプログラムはど
のCPUからもアクセス可能であり、ある時点で空いて
いるCPUで処理を実行する。
また、密結合マルチプロセッサシステムの他にも、主系
と従系の二系統のシステムを用意し、主系障害時には、
従系に切り換えて処理を継続するデュプレックスシステ
ムや、2重化した41’l互の系で、必要に応じて負荷
を分散するロードシェアシステム等のように、1つのC
PUが故障した場合に、相手の記憶媒体に適宜アクセス
じて、処理を実行するものもある。
と従系の二系統のシステムを用意し、主系障害時には、
従系に切り換えて処理を継続するデュプレックスシステ
ムや、2重化した41’l互の系で、必要に応じて負荷
を分散するロードシェアシステム等のように、1つのC
PUが故障した場合に、相手の記憶媒体に適宜アクセス
じて、処理を実行するものもある。
以上の計算機システムの信頼性向」―のだめのシステム
構成に関しては、「合格情報処理 1989年 2月号
」(学習研究社発行)のPP、15〜17に記載されて
いる。
構成に関しては、「合格情報処理 1989年 2月号
」(学習研究社発行)のPP、15〜17に記載されて
いる。
従来、このような計算機システムの共有記憶媒体の管理
方法においては、複数のプログラムが同一情報を使う場
合には、この情報を共有記憶媒体上のj力所に置き、プ
ログラムからの要求に応じて、この箇所の情報を参照さ
せたり、更新したりしていた。
方法においては、複数のプログラムが同一情報を使う場
合には、この情報を共有記憶媒体上のj力所に置き、プ
ログラムからの要求に応じて、この箇所の情報を参照さ
せたり、更新したりしていた。
第10図は、従来の計算機システムにおいて、2つのプ
ログラムが共有記憶媒体内の情報にアクセスする様子を
示す説明図である。
ログラムが共有記憶媒体内の情報にアクセスする様子を
示す説明図である。
従来の計算機システムにおいて、二つのプログラム11
.12が共有記憶媒体40内のraJという情報をアク
セスする際の情報の流れを示したものである。
.12が共有記憶媒体40内のraJという情報をアク
セスする際の情報の流れを示したものである。
この例では、プログラム11、および、プログラム12
で情報「a、 Jの読み出しくread r a J
)が実行された時には、共有記憶媒体40より情報ra
Jがプログラム11.12に読み出される。また、書き
込み(write Ua J )が実行されたときには
、共有記憶媒体4oへ情報raJが書き込まれており、
各アクセスの領域は、共有記憶媒体4o上で同一であり
、処理の対象となる情報「a」も同一のものである。
で情報「a、 Jの読み出しくread r a J
)が実行された時には、共有記憶媒体40より情報ra
Jがプログラム11.12に読み出される。また、書き
込み(write Ua J )が実行されたときには
、共有記憶媒体4oへ情報raJが書き込まれており、
各アクセスの領域は、共有記憶媒体4o上で同一であり
、処理の対象となる情報「a」も同一のものである。
尚、共有記憶媒体とは、計算機間やプロセッサ間で、プ
ログラムが共有にアクセスできる共有メモリ、もしくは
、ディスク装置、あるいは、計算機内やプロセッサ内で
、プログラムが共有にアクセス出来る主記憶装置の・こ
とである。
ログラムが共有にアクセスできる共有メモリ、もしくは
、ディスク装置、あるいは、計算機内やプロセッサ内で
、プログラムが共有にアクセス出来る主記憶装置の・こ
とである。
[発明が解決しようとする課題]
従来、信頼性を向上させることを目的とし計算機システ
ムにおいては、計算機システムのソフト面での信頼性に
ついての配慮がなされてぃながった。そのため、例えば
、あるプログラムが、障害等により、共有記憶媒体の内
容を誤って書き換えた場合には、不正内容障害が波及す
るという問題があった。
ムにおいては、計算機システムのソフト面での信頼性に
ついての配慮がなされてぃながった。そのため、例えば
、あるプログラムが、障害等により、共有記憶媒体の内
容を誤って書き換えた場合には、不正内容障害が波及す
るという問題があった。
すなわち、あるCPUが、共有記憶媒体内の情報を、誤
って書き換えた場合には、この誤り情報を、他のCPU
も参照するため、他のCPUがこの誤り情報に基づき処
理した結果情報も、誤った情報となってしまう。さらに
、これらの、誤り情報を参照して、他のCPUも処理を
続けるため、共有記憶媒体内の誤り情報が拡大し、この
計算機システムの信頼性は、大きく低下してしまう。
って書き換えた場合には、この誤り情報を、他のCPU
も参照するため、他のCPUがこの誤り情報に基づき処
理した結果情報も、誤った情報となってしまう。さらに
、これらの、誤り情報を参照して、他のCPUも処理を
続けるため、共有記憶媒体内の誤り情報が拡大し、この
計算機システムの信頼性は、大きく低下してしまう。
本発明の目的は、これも従来技術の課題を解決し、共有
記憶媒体を用いて複数のプログラムにより処理を行なう
計算機システムの信頼性を向上させるプログラム実行方
法を提供することである。
記憶媒体を用いて複数のプログラムにより処理を行なう
計算機システムの信頼性を向上させるプログラム実行方
法を提供することである。
〔課題を解決するための手段]
上記目的を達成するため、本発明のプログラム実行方法
は、(1)共有記憶媒体に接続された複数の処理装置か
らなる計算機システムにおいて、プログラムの実行時に
アクセスする情報を格納する情報格納領域を、共有記憶
媒体上で、プログラム毎に個別に割り当て、プログラム
の実行による情報の書き込み処理時には、このプログラ
ムに割り当てた情報格納領域のみへ書き込み、プログラ
ムの実行による情報の読み出し処理時には、個別の情報
格納領域に格納されている同一内容の情報の中から最後
に更新された情報を選択して読み出すことを特徴とする
。
は、(1)共有記憶媒体に接続された複数の処理装置か
らなる計算機システムにおいて、プログラムの実行時に
アクセスする情報を格納する情報格納領域を、共有記憶
媒体上で、プログラム毎に個別に割り当て、プログラム
の実行による情報の書き込み処理時には、このプログラ
ムに割り当てた情報格納領域のみへ書き込み、プログラ
ムの実行による情報の読み出し処理時には、個別の情報
格納領域に格納されている同一内容の情報の中から最後
に更新された情報を選択して読み出すことを特徴とする
。
また、(2)上記(1)に記載のプログラム実行方法に
おいて、プログラム毎に個別に割り当てられた情報格納
領域の各々に対して、この情報格納領域の情報の書き込
み処理実行の履歴を格納する更新識別エリアを付与し、
プログラムの実行による情報の読み出し処理時には、こ
の更新識別エリアを参照して、個別の情報格納領域に格
納されている同一内容の情報の中から、最後に更新され
た情報を選択して読み出すことを特徴とする。
おいて、プログラム毎に個別に割り当てられた情報格納
領域の各々に対して、この情報格納領域の情報の書き込
み処理実行の履歴を格納する更新識別エリアを付与し、
プログラムの実行による情報の読み出し処理時には、こ
の更新識別エリアを参照して、個別の情報格納領域に格
納されている同一内容の情報の中から、最後に更新され
た情報を選択して読み出すことを特徴とする。
また、(3)上記(1)に記載のプログラム実行方法に
おいて、共有記憶媒体上には、プログラムの実行による
書き込み処理がなされた情報と、この情報を格納した情
報格納領域の共有記憶媒体上の位置とを示す格納エリア
データを格納する更新管理エリアを施し、プログラムの
実行による情報の読み出し処理時には、この更新管理エ
リアを参照して、個別の情報格納領域に格納されている
同一内容の情報の中から最後に更新された情報を選択し
て読み出すことを特徴とする。
おいて、共有記憶媒体上には、プログラムの実行による
書き込み処理がなされた情報と、この情報を格納した情
報格納領域の共有記憶媒体上の位置とを示す格納エリア
データを格納する更新管理エリアを施し、プログラムの
実行による情報の読み出し処理時には、この更新管理エ
リアを参照して、個別の情報格納領域に格納されている
同一内容の情報の中から最後に更新された情報を選択し
て読み出すことを特徴とする。
また、(4)上記(2)に記載のプログラム実行方法に
おいて、更新識別エリアには、情報格納領域の情報の書
き込み処理実行の回数を格納し、プログラムの実行によ
る情報の読み出し処理時には、この書き込み処理実行の
回数を参照し、最後に更新されたことを示す回数が、複
数の更新識別エリアにある場合には、この同じ回数を示
す更新識別エリアが付与された複数の情報格納領域の中
から、任意の情報を選択して読み出すことを特徴とする
。
おいて、更新識別エリアには、情報格納領域の情報の書
き込み処理実行の回数を格納し、プログラムの実行によ
る情報の読み出し処理時には、この書き込み処理実行の
回数を参照し、最後に更新されたことを示す回数が、複
数の更新識別エリアにある場合には、この同じ回数を示
す更新識別エリアが付与された複数の情報格納領域の中
から、任意の情報を選択して読み出すことを特徴とする
。
[作用]
本発明においては、共有記憶媒体上の情報格納領域を、
各プログラム毎に持たせ、プログラムからの情報の書き
込みは、該当する情報格納領域に対してのみ行なわせ、
他のプログラムの情報格納領域には行なわせないように
する。
各プログラム毎に持たせ、プログラムからの情報の書き
込みは、該当する情報格納領域に対してのみ行なわせ、
他のプログラムの情報格納領域には行なわせないように
する。
さらに、共有記憶媒体上には、常に、ある情報が最後に
更新された領域の位置がとこであるかを示した更新識別
エリアが施されている。
更新された領域の位置がとこであるかを示した更新識別
エリアが施されている。
そのため、情報を読み出す際に、共有記憶媒体上に同一
内容の情報がある場合には、それらの中の適当な1つを
読み出すことが出来る。このことにより、共有記憶媒体
の管理を自律的にする。また、この情報格納領域の生成
は、対応するプログラムが書き込む処理を行なう時点で
行ない、情報格納領域の削除は、プログラムの終了や、
障害による停止時に行なう。このようにして、計算機シ
ステムの処理性能、および、情報の保存性を向上させる
。
内容の情報がある場合には、それらの中の適当な1つを
読み出すことが出来る。このことにより、共有記憶媒体
の管理を自律的にする。また、この情報格納領域の生成
は、対応するプログラムが書き込む処理を行なう時点で
行ない、情報格納領域の削除は、プログラムの終了や、
障害による停止時に行なう。このようにして、計算機シ
ステムの処理性能、および、情報の保存性を向上させる
。
このように、プログラムからの共有記憶領域への書き込
みは、このプログラムにのみに割り当てられた情報格納
領域に対してのみ行なわれるため、もし、このプログラ
ムが誤った情報を書き込んだとしても、従来の如く、書
き込む以前に該情報格納領域にあった情報が、共有記憶
領域から失われることば無い。また、誤った情報を他プ
ログラムが読み出すことにより障害が波及することも無
い。
みは、このプログラムにのみに割り当てられた情報格納
領域に対してのみ行なわれるため、もし、このプログラ
ムが誤った情報を書き込んだとしても、従来の如く、書
き込む以前に該情報格納領域にあった情報が、共有記憶
領域から失われることば無い。また、誤った情報を他プ
ログラムが読み出すことにより障害が波及することも無
い。
1
また、同一・プログラムの多重化により、プログラムの
論理障害波及を防止する。
論理障害波及を防止する。
以下本発明の実施例を、図面により詳細に説明する。
第1図は、本発明に係るプログラム実行方法の一実施例
を示すフローチャートである。
を示すフローチャートである。
プログラムの命令内容を判別して(ステップ1001、
)、読み出し要求が発生した場合には、まず、共有記憶
媒体内において、読み出すべき情報が格納されている複
数の情報格納領域の中から1つの情報格納領域の選択を
行なう(ステップ1゜02)。尚、この情報格納領域の
選択は、後述する更新識別エリアを用いて行なう。
)、読み出し要求が発生した場合には、まず、共有記憶
媒体内において、読み出すべき情報が格納されている複
数の情報格納領域の中から1つの情報格納領域の選択を
行なう(ステップ1゜02)。尚、この情報格納領域の
選択は、後述する更新識別エリアを用いて行なう。
次に、選択した情報格納領域から、該当する情報を読み
出しくステップ1003)、処理を終了する。
出しくステップ1003)、処理を終了する。
一方、ステップ1001において判別したプログラムの
命令内容が、書き込み要求の場合には、このプログラム
に対応する該当領域に情報を書き2 込む(ステップ1010)。次に、対応する更新識別エ
リアを更新する。
命令内容が、書き込み要求の場合には、このプログラム
に対応する該当領域に情報を書き2 込む(ステップ1010)。次に、対応する更新識別エ
リアを更新する。
このように、本実施例においては、共有記憶媒体上の情
報格納領域を、各プログラム毎に持たせておく。そして
、プログラムからの情報の書き込みの際には、該当する
情報格納領域に対してのみ行ない、他のプログラム用の
情報格納領域には行なわないようにする。
報格納領域を、各プログラム毎に持たせておく。そして
、プログラムからの情報の書き込みの際には、該当する
情報格納領域に対してのみ行ない、他のプログラム用の
情報格納領域には行なわないようにする。
また、情報を読み出す際には、特に、共有記憶媒体上の
複数の情報格納領域に同一内容の情報がある場合には、
それらの中の適当な1つを読み出すことにより、共有記
憶媒体の管理を自律的にする。
複数の情報格納領域に同一内容の情報がある場合には、
それらの中の適当な1つを読み出すことにより、共有記
憶媒体の管理を自律的にする。
尚、共有記憶媒体上の情報格納領域の生成は、対応する
プログラムが書き込む処理を行なう時点で行ない、また
、情報格納領域の削除は、プログラムの終了、または、
障害による停止時に行なうようにする。こうすることに
より、計算機システムの処理の性能、および、情報の保
存性が向上すみ このように、プログラムからの共有記憶媒体への書き込
みは、このプログラムにのみに割り当てられた情報格納
領域に対してのみ行なわれるため、もし、このプログラ
ムが誤った情報を書き込んだとしても、従来の如く、書
き込む以AiJにこの情報格納領域にあった情報が、共
有記憶媒体から失われることは無い。また、誤った情報
を他プログラムが読み出すことによる障害の波及も発生
し無い。
プログラムが書き込む処理を行なう時点で行ない、また
、情報格納領域の削除は、プログラムの終了、または、
障害による停止時に行なうようにする。こうすることに
より、計算機システムの処理の性能、および、情報の保
存性が向上すみ このように、プログラムからの共有記憶媒体への書き込
みは、このプログラムにのみに割り当てられた情報格納
領域に対してのみ行なわれるため、もし、このプログラ
ムが誤った情報を書き込んだとしても、従来の如く、書
き込む以AiJにこの情報格納領域にあった情報が、共
有記憶媒体から失われることは無い。また、誤った情報
を他プログラムが読み出すことによる障害の波及も発生
し無い。
また、同一プログラムの多重化により、プログラムの論
理障害波及の防止も行なうことが出来る。
理障害波及の防止も行なうことが出来る。
第2図は、第1図における処理動作の実行に用いる計算
機システムの一例を示すブロック図である。
機システムの一例を示すブロック図である。
処理装置21.22、共有記憶媒体30と、共通伝送媒
体50を介して結ばれて、各処理装置21.22内では
、それぞれプログラム11、]2が実行される。
体50を介して結ばれて、各処理装置21.22内では
、それぞれプログラム11、]2が実行される。
各プログラム11.12からは、共有記憶媒体30上の
情報40の読み書きが可能である。
情報40の読み書きが可能である。
ここで、各処理装置21.22−Lで実行されるプログ
ラムは、1つとは限らず、複数個存在しても良い。また
、処理装置は、処理装置21.22の2台に限定される
ものではなく、さらに、接続して増設することも出来る
。
ラムは、1つとは限らず、複数個存在しても良い。また
、処理装置は、処理装置21.22の2台に限定される
ものではなく、さらに、接続して増設することも出来る
。
共有記憶媒体30上の各情報を格納する領域は、後で詳
しく述べるように、各処理装置21.22毎に分けられ
ており、第1図で示された処理が、共通伝送媒体50を
介して行なわれる。
しく述べるように、各処理装置21.22毎に分けられ
ており、第1図で示された処理が、共通伝送媒体50を
介して行なわれる。
すなわち、処理装置21のプログラム11による情報4
0の書き込みでは、情報40は、共有記憶媒体上のプロ
グラム11用の情報格納領域に書き込まれる。また、処
理装置22のプログラム12による情報/10の書き込
みでは、情報40は、共有記憶媒体上のプログラム1゛
2用の情報格納領域に書き込まれる。そして、プログラ
ム11、または、プログラム12からの読み出し時には
、最後に更新された情報がある情報格納領域がら、情報
40を読み出す。
0の書き込みでは、情報40は、共有記憶媒体上のプロ
グラム11用の情報格納領域に書き込まれる。また、処
理装置22のプログラム12による情報/10の書き込
みでは、情報40は、共有記憶媒体上のプログラム1゛
2用の情報格納領域に書き込まれる。そして、プログラ
ム11、または、プログラム12からの読み出し時には
、最後に更新された情報がある情報格納領域がら、情報
40を読み出す。
第3図は、第2図における共有記憶媒体に外部記憶装置
を用いた計算機システムの構成を示すブー 15〜 ロック図である。
を用いた計算機システムの構成を示すブー 15〜 ロック図である。
処理装置21.22内のそれぞれのプログラム11.1
2は、ディスク制御装置60の制御に基づき、共有記憶
媒体であるディスク31内の情報40ヘアクセスする構
成となっている。
2は、ディスク制御装置60の制御に基づき、共有記憶
媒体であるディスク31内の情報40ヘアクセスする構
成となっている。
この構成による、処理装置21,22のプログラム11
.12からの、ディスク31へのアクセス方法は、第2
図におけるアクセス処理と同じであり、その動作説明は
省略する。
.12からの、ディスク31へのアクセス方法は、第2
図におけるアクセス処理と同じであり、その動作説明は
省略する。
このように、共有記憶媒体は、ディスクのような外部記
憶装置や、各処理装置内の主記憶装置であっても良い。
憶装置や、各処理装置内の主記憶装置であっても良い。
第4図は、第1図における処理方法により共有記憶媒体
内の情報にアクセスする様子を示す説明図である。
内の情報にアクセスする様子を示す説明図である。
この例では、同一の情報raJの情報格納領域を、プロ
グラム11には情報格納領域41、プログラム12には
情報格納領域42と、それぞれ個別に割り当てである。
グラム11には情報格納領域41、プログラム12には
情報格納領域42と、それぞれ個別に割り当てである。
そして、情報「a」の共有記憶媒体への書き込み6
において、プログラム11では情報格納領域41へ、プ
ログラム12では情報格納領域42へ行なわれる。
ログラム12では情報格納領域42へ行なわれる。
また、読み出しは、raJという情報が格納されている
情報格納領域のどれか1つに対して行なわれる。すなわ
ち、プログラム11.12は、41.42のどちらか適
当な1つの領域から、情報raJを読み出す。
情報格納領域のどれか1つに対して行なわれる。すなわ
ち、プログラム11.12は、41.42のどちらか適
当な1つの領域から、情報raJを読み出す。
同一情報raJが格納されている複数領域の中から、ど
の領域の情報を読み出すかを決める方法に関して、以下
に説明する。
の領域の情報を読み出すかを決める方法に関して、以下
に説明する。
(1)最新更新読み出し方法
情報raJを読み出す際に、その読み出し以前に、この
情報を格納している領域の中で、一番最後に、この情報
の書き込みが行なわれた領域の情報を読み出す方法であ
る。
情報を格納している領域の中で、一番最後に、この情報
の書き込みが行なわれた領域の情報を読み出す方法であ
る。
どの領域の情報が、最後に書き込まれたか、すなわち、
最新のものかを認識するため、各領域に情報の更新識別
エリアを設ける。
最新のものかを認識するため、各領域に情報の更新識別
エリアを設ける。
第5図は、第4図における各情報の情報格納領域に情報
の更新識別エリアを設けた様子を示す説明図である。
の更新識別エリアを設けた様子を示す説明図である。
情報の情報格納領域41.42のそれぞれに対応して、
情報の更新識別エリア51.52を設けている。これら
の更新識別エリアには、具体的には、 (i)対応する情報格納領域が更新された時刻を格納す
る。あるいは、 (ii)対応する情報格納領域が更新された更新識別エ
リアのみ、フラグセット(例えば、「l」を立てる)し
て、他の更新識別エリアをクリア(例えば、rQJ と
する)することにより、どの情報格納領域に格納されて
いる情報が、一番最後に更新されたかを識別できるよう
にする。
情報の更新識別エリア51.52を設けている。これら
の更新識別エリアには、具体的には、 (i)対応する情報格納領域が更新された時刻を格納す
る。あるいは、 (ii)対応する情報格納領域が更新された更新識別エ
リアのみ、フラグセット(例えば、「l」を立てる)し
て、他の更新識別エリアをクリア(例えば、rQJ と
する)することにより、どの情報格納領域に格納されて
いる情報が、一番最後に更新されたかを識別できるよう
にする。
(i)に記載した方法では、読み出す際に、対応する更
新識別エリアの時刻を比較して、一番最後に更新された
情報を読み出す。第5図の例では、プログラム11.1
2が、それぞれ対応する情報格納領域41.42に、プ
ログラム11は時刻「tl」で、プログラム12は時刻
「シ2」で書き込んでいる。
新識別エリアの時刻を比較して、一番最後に更新された
情報を読み出す。第5図の例では、プログラム11.1
2が、それぞれ対応する情報格納領域41.42に、プ
ログラム11は時刻「tl」で、プログラム12は時刻
「シ2」で書き込んでいる。
これらの時刻「tl」、「t2」は、それぞれ、更新識
別エリア51.52へ格納される。
別エリア51.52へ格納される。
時刻は、「tl」の方が、rl;、Jよりも早いものと
する。その場合には、プログラム11が、情報raJ
を読み出す際には、この「Ll」 と「シ2」が比較さ
れ、時刻「L2」側の情報格納領域42内の情報raJ
が読み出され、プログラム]1に渡される。
する。その場合には、プログラム11が、情報raJ
を読み出す際には、この「Ll」 と「シ2」が比較さ
れ、時刻「L2」側の情報格納領域42内の情報raJ
が読み出され、プログラム]1に渡される。
第6図は、第5図における更新識別エリアに時刻の代わ
りにフラグを設けた様子を示す説明図である。
りにフラグを設けた様子を示す説明図である。
更新識別エリア51.52を、第5図の説明における(
]i)に記載した方法で管理するものである。
]i)に記載した方法で管理するものである。
プログラム11が、情報faJを情報格納領域41に書
き込む際には、更新識別エリア51は「IJ、更新職別
エリア52は「0」となる。また、プログラム12が、
情報格納領域42に情報raJを書き込む際には、更新
識別エリア51は「O」、更新識別エリア52は「1」
となる。第Q 6図においては、プログラム12が、情報格納領域42
に情報raJ を書き込んだ状態を示している。
き込む際には、更新識別エリア51は「IJ、更新職別
エリア52は「0」となる。また、プログラム12が、
情報格納領域42に情報raJを書き込む際には、更新
識別エリア51は「O」、更新識別エリア52は「1」
となる。第Q 6図においては、プログラム12が、情報格納領域42
に情報raJ を書き込んだ状態を示している。
プログラム11か、情報raJ を読み出す際には、更
新識別エリア51と更新識別エリア52の比較を行ない
、フラグが「1」となっている更新識別エリア52に対
応した情報格納領域712の情報「a」が読み出され、
プログラム11に渡される。
新識別エリア51と更新識別エリア52の比較を行ない
、フラグが「1」となっている更新識別エリア52に対
応した情報格納領域712の情報「a」が読み出され、
プログラム11に渡される。
第4図において説明した、同一情報が格納されている複
数領域の中から、どの領域の情報を読み出すかに関して
、第5図と第6図で述べた(T)最新更新読み出し方法
以外の方法を、さらに、説明する。
数領域の中から、どの領域の情報を読み出すかに関して
、第5図と第6図で述べた(T)最新更新読み出し方法
以外の方法を、さらに、説明する。
第7図は、第4図における各情報の情報格納領域の情報
の更新識別エリアを、情報格納領域とは別に設けた様子
を示す説明図である。
の更新識別エリアを、情報格納領域とは別に設けた様子
を示す説明図である。
上述の(1)最新更新読み出し方法とは別の実施例とし
て、さらに、高速化し、かつ、更新エリアを削減する方
法であり、以下に、詳しく説明する。
て、さらに、高速化し、かつ、更新エリアを削減する方
法であり、以下に、詳しく説明する。
(11)最新読み出し高速化、省エリア化方法この方法
では、」−述の(1)最新更新読み出し方法で述べた更
新識別エリアを、第5図、第6図で示したように、情報
格納領域のそれぞれに持たせるのではなく、更新管理エ
リア53として、同一内容の情報raJに対して1つ持
たせ、この更新管理エリア53内には、情報を読み出す
際に、どの情報格納領域から読み出せば良いかを示す格
納エリアデータを格納する。
では、」−述の(1)最新更新読み出し方法で述べた更
新識別エリアを、第5図、第6図で示したように、情報
格納領域のそれぞれに持たせるのではなく、更新管理エ
リア53として、同一内容の情報raJに対して1つ持
たせ、この更新管理エリア53内には、情報を読み出す
際に、どの情報格納領域から読み出せば良いかを示す格
納エリアデータを格納する。
この格納エリアデータは、具体的には、(1)情報格納
領域のエリア番号 (jj)情報格納領域のアドレス などである。
領域のエリア番号 (jj)情報格納領域のアドレス などである。
この方法では、プログラムが対応する情報格納領域へ情
報を格納する際に、更新管理エリア53に、格納エリア
データを格納する。そして、プログラムが、情報を読み
出す際に、この格納エリアデータを見て、該当する情報
格納領域から情報を読み出す。
報を格納する際に、更新管理エリア53に、格納エリア
データを格納する。そして、プログラムが、情報を読み
出す際に、この格納エリアデータを見て、該当する情報
格納領域から情報を読み出す。
この第7図の例は、プログラム11.12の読み書きの
タイミングが、第6図と同一のものである。
タイミングが、第6図と同一のものである。
第7図においては、情報raJ を、最後に情報格納領
域へ格納したプログラム12に対応する情報格納領域4
2のアドレスを示すデータが、更新管理エリア53に格
納されている。すなわち、情報格納領域42のアドレス
をr[a]42Jの記号で示している。
域へ格納したプログラム12に対応する情報格納領域4
2のアドレスを示すデータが、更新管理エリア53に格
納されている。すなわち、情報格納領域42のアドレス
をr[a]42Jの記号で示している。
そして、プログラム11が情報raJを読み出す際には
、更新管理エリア53の内容r[a]42Jに基づき、
情報格納領域42内の情報raJを読み出す。
、更新管理エリア53の内容r[a]42Jに基づき、
情報格納領域42内の情報raJを読み出す。
以上、第4図〜第7図で説明した方法により、複数のプ
ログラムで、共通の情報を用いて処理を行なう場合にお
いて、情報の書き込みは、各プログラムに対応付けられ
たそれぞれの情報格納領域に行ない、読み出しは、その
中の最新更新の情報に対して行なうことが出来る。
ログラムで、共通の情報を用いて処理を行なう場合にお
いて、情報の書き込みは、各プログラムに対応付けられ
たそれぞれの情報格納領域に行ない、読み出しは、その
中の最新更新の情報に対して行なうことが出来る。
さて、情報格納領域や、更新識別エリアは、共有記憶媒
体上に割り当てられるが、その割り当ての方法を以下に
説明する。
体上に割り当てられるが、その割り当ての方法を以下に
説明する。
第8図は、第4図における情報格納領域と更新識別エリ
アの割り当て方法を示す説明図である。
アの割り当て方法を示す説明図である。
情報格納領域と更新識別エリアの割り当て方法には、例
えば、 (1)プログラム毎に、プログラムの実行時に割り当て
る方法。
えば、 (1)プログラム毎に、プログラムの実行時に割り当て
る方法。
(11)事前に割り当てる方法。
(ijDプログラム実行時に、書き込みの処理をする際
に割り当てる方法。
に割り当てる方法。
等があり、第8図は、(■)の例である。
すなわち、プログラム12が、情報raJの書き込み(
write r a J )を処理する際に、対応す
る情報格納領域42と、更新識別エリア52を共有記憶
媒体上に割り当てる様子を表したものである。
write r a J )を処理する際に、対応す
る情報格納領域42と、更新識別エリア52を共有記憶
媒体上に割り当てる様子を表したものである。
この方法では、書き込み処理発生まで、記憶領域を割り
当てる必要が無く、また、もし、書き込み処理が無いプ
ログラムでは、割り当て自体が不要となり、記憶領域が
節約できる。
当てる必要が無く、また、もし、書き込み処理が無いプ
ログラムでは、割り当て自体が不要となり、記憶領域が
節約できる。
尚、第8図で、プログラム12が、書き込み処理の前に
、読み出し処理を行なう場合には、情報格納領域41か
ら、情報raJを読み出すこととなる。また、プログラ
ム11が、障害により異常終了した場合には、対応する
情報格納領域41を削除して、他のプログラム、例えば
、プログラム12から読み出せないようにする。
、読み出し処理を行なう場合には、情報格納領域41か
ら、情報raJを読み出すこととなる。また、プログラ
ム11が、障害により異常終了した場合には、対応する
情報格納領域41を削除して、他のプログラム、例えば
、プログラム12から読み出せないようにする。
第9図は、第5図における更新識別エリアに時刻の代わ
りに、更新回数を設けた様子を示す説明図である。
りに、更新回数を設けた様子を示す説明図である。
更新識別エリア511と512、および、513には、
それぞれ、対応する情報格納領域411.412、そし
て、413の情報の更新の回数を示すデータを格納する
。
それぞれ、対応する情報格納領域411.412、そし
て、413の情報の更新の回数を示すデータを格納する
。
第9図の例では、複数のプログラム111.112、お
よび、113が、同一の情報「a」を書き込んでおり、
プログラム12が、これら情報の中の一つを読み出す場
合を示している。
よび、113が、同一の情報「a」を書き込んでおり、
プログラム12が、これら情報の中の一つを読み出す場
合を示している。
読み出す際には、第5図等で説明した方法と同じく、更
新識別エリア511.512.513の4 内容を比較して、最後に更新された情報を、情報格納領
域411.412、または、413から選び出す。
新識別エリア511.512.513の4 内容を比較して、最後に更新された情報を、情報格納領
域411.412、または、413から選び出す。
この際、第9図においては、更新識別エリア511内の
更新回数は[2]であり、更新識別エリア512と51
3内の更新回数が[3]で同一である。この場合は、更
新回数[3]が最後に更新されたことを示す。さらに、
このように、最新更新情報と判断できる情報が、複数で
存在する場合は、それら情報の中から適当な一つを選び
出す。
更新回数は[2]であり、更新識別エリア512と51
3内の更新回数が[3]で同一である。この場合は、更
新回数[3]が最後に更新されたことを示す。さらに、
このように、最新更新情報と判断できる情報が、複数で
存在する場合は、それら情報の中から適当な一つを選び
出す。
すなわち、情報格納領域412、または、413から選
び出す。
び出す。
この方法は、例えば、計算機システムの高信頼化のため
、同一処理内容のプログラムを多重化して実行させるシ
ステムに用いることにより、その計算機システムの信頼
性を、さらに、向上させることが出来る。
、同一処理内容のプログラムを多重化して実行させるシ
ステムに用いることにより、その計算機システムの信頼
性を、さらに、向上させることが出来る。
以上、説明したように、本実施例によれば、共有記憶媒
体を有し、複数のCPUからなる計算機システムにおい
て、プログラムの障害による異常情報の波及を抑えるこ
とができる。
体を有し、複数のCPUからなる計算機システムにおい
て、プログラムの障害による異常情報の波及を抑えるこ
とができる。
本発明によれば、分散計算機システムや、マルチプロセ
ッサシステム等、共有記憶媒体を用いて複数のプログラ
ムにより処理を行なう計算機システムの信頼性を向上さ
せることが出来る。
ッサシステム等、共有記憶媒体を用いて複数のプログラ
ムにより処理を行なう計算機システムの信頼性を向上さ
せることが出来る。
第1図は本発明に係るプログラム実行方法の一実施例を
示すフローチャート、第2図は第1図における処理動作
の実行に用いる計算機システムの一例を示すブロック図
、第3図は第2図における共有記憶媒体に外部記憶装置
を用いた計算機システムの構成を示すブロック図、第4
図は第1図における処理方法により共有記憶媒体内の情
報にアクセスする様子を示す説明図、第5図は第4図に
おける各情報の情報格納領域に情報の更新識別エリアを
設けた様子を示す説明図、第6図は第5図における更新
識別エリアに時刻の代わりにフラグを設けた様子を示す
説明図、第7図は第4図における各情報の情報格納領域
の情報の更新識別エリアを情報格納領域とは別に設けた
様子を示す説明図、第8図は第4図における情報格納領
域と更新識別エリアの割り当て方法を示す説明図、第9
図は第5図における更新識別エリアに時刻の代わりに更
新回数を設けた様子を示す説明図、第10図は従来の引
算機システムにおいて2つのプログラムが共有記憶媒体
内の情報にアクセスする様子を示す説明図である。 11.12ニブログラム、2]、、22:処理装置、3
0.共面記憶媒体、31 ディスク、40:情報、4.
1.=1.2・情報格納領域、50:共通伝送媒体、、
5j、52:更新識別エリア、53 更新管理エリア、
60:ディスク制御装置、111〜113.プログラム
、411〜413:情報格納領域、511〜5■3:更
新識別エリア。 第 3 図 第 図 2 第 5 図 第 図 第 図 第 図 第 9 11 11 12 12
示すフローチャート、第2図は第1図における処理動作
の実行に用いる計算機システムの一例を示すブロック図
、第3図は第2図における共有記憶媒体に外部記憶装置
を用いた計算機システムの構成を示すブロック図、第4
図は第1図における処理方法により共有記憶媒体内の情
報にアクセスする様子を示す説明図、第5図は第4図に
おける各情報の情報格納領域に情報の更新識別エリアを
設けた様子を示す説明図、第6図は第5図における更新
識別エリアに時刻の代わりにフラグを設けた様子を示す
説明図、第7図は第4図における各情報の情報格納領域
の情報の更新識別エリアを情報格納領域とは別に設けた
様子を示す説明図、第8図は第4図における情報格納領
域と更新識別エリアの割り当て方法を示す説明図、第9
図は第5図における更新識別エリアに時刻の代わりに更
新回数を設けた様子を示す説明図、第10図は従来の引
算機システムにおいて2つのプログラムが共有記憶媒体
内の情報にアクセスする様子を示す説明図である。 11.12ニブログラム、2]、、22:処理装置、3
0.共面記憶媒体、31 ディスク、40:情報、4.
1.=1.2・情報格納領域、50:共通伝送媒体、、
5j、52:更新識別エリア、53 更新管理エリア、
60:ディスク制御装置、111〜113.プログラム
、411〜413:情報格納領域、511〜5■3:更
新識別エリア。 第 3 図 第 図 2 第 5 図 第 図 第 図 第 図 第 9 11 11 12 12
Claims (1)
- 【特許請求の範囲】 1、共有記憶媒体に接続された複数の処理装置からなり
、該複数の処理装置内の各々のプログラムの実行に必要
な情報のアクセスを、上記共有記憶媒体に対して行なう
計算機システムのプログラム実行方法において、上記プ
ログラムの実行時にアクセスする情報を格納する情報格
納領域を、上記共有記憶媒体上で、上記プログラム毎に
個別に割り当て、上記プログラムの実行による情報の書
き込み処理時には、該プログラムに割り当てた上記情報
格納領域のみへ書き込み、上記プログラムの実行による
情報の読み出し処理時には、上記個別の情報格納領域に
格納されている同一内容の情報の中から最後に更新され
た情報を選択して読み出すことを特徴とするプログラム
実行方法。 2、請求の項1に記載のプログラム実行方法において、
上記プログラム毎に個別に割り当てられた情報格納領域
の各々に対して、該情報格納領域の情報の書き込み処理
実行の履歴を格納する更新識別エリアを付与し、上記プ
ログラムの実行による情報の読み出し処理時には、該更
新識別エリアを参照して、上記個別の情報格納領域に格
納されている同一内容の情報の中から最後に更新された
情報を選択して読み出すことを特徴とするプログラム実
行方法。 3、請求の項1に記載のプログラム実行方法において、
上記共有記憶媒体上には、上記プログラムの実行による
書き込み処理がなされた情報と、該情報を格納した情報
格納領域の上記共有記憶媒体上の位置とを示す格納エリ
アデータを格納する更新管理エリアを施し、上記プログ
ラムの実行による情報の読み出し処理時には、該更新管
理エリアを参照して、上記個別の情報格納領域に格納さ
れている同一内容の情報の中から最後に更新された情報
を選択して読み出すことを特徴とするプログラム実行方
法。 4、請求の項2に記載のプログラム実行方法において、
上記更新識別エリアには、上記情報格納領域の情報の書
き込み処理実行の回数を格納し、上記プログラムの実行
による情報の読み出し処理時には、該書き込み処理実行
の回数を参照し、最後に更新されたことを示す回数が複
数の更新識別エリアにある場合には、該同じ回数を示す
更新識別エリアが付与された複数の情報格納領域の中か
ら任意の情報を選択して読み出すことを特徴とするプロ
グラム実行方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2267690A JP2830293B2 (ja) | 1990-02-01 | 1990-02-01 | プログラム実行方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2267690A JP2830293B2 (ja) | 1990-02-01 | 1990-02-01 | プログラム実行方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH03226855A true JPH03226855A (ja) | 1991-10-07 |
| JP2830293B2 JP2830293B2 (ja) | 1998-12-02 |
Family
ID=12089467
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2267690A Expired - Lifetime JP2830293B2 (ja) | 1990-02-01 | 1990-02-01 | プログラム実行方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2830293B2 (ja) |
-
1990
- 1990-02-01 JP JP2267690A patent/JP2830293B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JP2830293B2 (ja) | 1998-12-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5781752A (en) | Table based data speculation circuit for parallel processing computer | |
| US6463532B1 (en) | System and method for effectuating distributed consensus among members of a processor set in a multiprocessor computing system through the use of shared storage resources | |
| US7770064B2 (en) | Recovery of application faults in a mirrored application environment | |
| US5802345A (en) | Computer system with a reduced number of command end interrupts from auxiliary memory unit and method of reducing the number of command end interrupts | |
| US7904906B2 (en) | Tracking modified pages on a computer system | |
| EP1091294B1 (en) | Method and apparatus for assigning resources to logical partition clusters | |
| US20050132249A1 (en) | Apparatus method and system for fault tolerant virtual memory management | |
| EP0348994A2 (en) | Directed hardware error identification method and apparatus for error recovery in piplined processing areas of a computer system | |
| US9875057B2 (en) | Method of live migration | |
| EP1011047B1 (en) | Fault recovery method and storage controller in information processing apparatus | |
| US6473845B1 (en) | System and method for dynamically updating memory address mappings | |
| US5485573A (en) | Method and apparatus for assisting in the determination of the source of errors in a multi-host data base management system | |
| US7165160B2 (en) | Computing system with memory mirroring and snapshot reliability | |
| CN112748865B (zh) | 用于存储管理的方法、电子设备和计算机程序产品 | |
| CN114415981A (zh) | 一种多控存储系统的io处理方法、系统及相关组件 | |
| US6810523B2 (en) | Efficient thread programming using a single callback function | |
| EP0514697A2 (en) | Split instruction paging method | |
| US8689230B2 (en) | Determination of running status of logical processor | |
| JPH03226855A (ja) | プログラム実行方法 | |
| US6823498B2 (en) | Masterless building block binding to partitions | |
| EP0851352B1 (en) | Input/output control device and method applied to fault-resilient computer system | |
| JP4708669B2 (ja) | パス冗長化装置及び方法 | |
| KR102866648B1 (ko) | 프로세싱 인 메모리(Processing in Memory)에서의 시간적 접근 공격 제어 방법 및 시스템 | |
| CN119668514B (zh) | 一种共享集群的资源接管方法、装置、设备及介质 | |
| JPH0833855B2 (ja) | ホットスポットデータ管理処理方式 |