JPH041374B2 - - Google Patents
Info
- Publication number
- JPH041374B2 JPH041374B2 JP57122151A JP12215182A JPH041374B2 JP H041374 B2 JPH041374 B2 JP H041374B2 JP 57122151 A JP57122151 A JP 57122151A JP 12215182 A JP12215182 A JP 12215182A JP H041374 B2 JPH041374 B2 JP H041374B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- access
- shared memory
- cpu
- debug
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/362—Debugging of software
- G06F11/3648—Debugging of software using additional hardware
-
- 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/468—Specific access rights for resources, e.g. using capability register
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Storage Device Security (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
- Debugging And Monitoring (AREA)
Description
【発明の詳細な説明】
本発明は、マイクロコンピユータ間の二重化共
有メモリ制御方法に係り、特に他のコンピユータ
により共有メモリを用いてオンライン処理が行な
われている時に、そのオンライン処理のための記
憶内容を利用し、かつその記憶内容をこわすこと
なくあるコンピユータによるデバツグを容易に行
えるようにした、二重化共有メモリ制御方法に関
する。
有メモリ制御方法に係り、特に他のコンピユータ
により共有メモリを用いてオンライン処理が行な
われている時に、そのオンライン処理のための記
憶内容を利用し、かつその記憶内容をこわすこと
なくあるコンピユータによるデバツグを容易に行
えるようにした、二重化共有メモリ制御方法に関
する。
第1図は、本発明の前提となるマルチコンピユ
ータシステムの構成例を示す。二重化共有メモリ
1A,1の各々は、メモリ本体5と、メモリ制御
装置6と、接続CPU台数分のCPU接続機構7と
から構成され、メモリ制御装置6はメモリ本体5
の読み書きの制御、及びCPU接続機構7からの
要求を選択して受付け順に処理する機能を有す
る。CPU接続機構7は、共有メモリとCPU間の
インターフエイス13を介して、CPU2A又は
2Bに接続される。CPU2A(CPU2Bも同じ)
は、共有メモリ接続機構8と、処理装置9と、入
出力バス14と入出力チヤネル10とから構成さ
れる。共有メモリ接続機構8は、2本の共有メモ
リとCPU間のインターフエイス13を介して、
二重化された各々の共有メモリ1A,1Bに接続
され、処理装置9からの共有メモリアクセス要求
を両方の共有メモリに伝え、どちらかの共有メモ
リから正常なデータが得られればそれを処理装置
9に返送する。処置装置9は、プログラムを記
憶、解読、実行する機能を有し、そのプログラム
に従い共有メモリへのアクセスや入出力機器の制
御を行う。入出力チヤネル10は、入出力バス1
4に1台もしくは複数台接続され、処理装置9と
入出力機器との間のデータ転送を制御する。ま
た、CPU間の共有入出力機器4を接続するため、
共有入出力バス装置3が用意されている。共有入
出力バス装置3は、共有入出力バス16と、それ
を制御するバス制御装置12と、該バスにCPU
台数分接続され、CPUと共有バス間のインター
フエイス15を介してCPUの入出力チヤネル1
0とデータ転送を行うCPU接続機構11と、該
バスに接続され共有バスと入出力機器間のインタ
ーフエイス18を介して共有入出力機器4とデー
タ転送を行う入出力チヤネル17とから構成され
る。
ータシステムの構成例を示す。二重化共有メモリ
1A,1の各々は、メモリ本体5と、メモリ制御
装置6と、接続CPU台数分のCPU接続機構7と
から構成され、メモリ制御装置6はメモリ本体5
の読み書きの制御、及びCPU接続機構7からの
要求を選択して受付け順に処理する機能を有す
る。CPU接続機構7は、共有メモリとCPU間の
インターフエイス13を介して、CPU2A又は
2Bに接続される。CPU2A(CPU2Bも同じ)
は、共有メモリ接続機構8と、処理装置9と、入
出力バス14と入出力チヤネル10とから構成さ
れる。共有メモリ接続機構8は、2本の共有メモ
リとCPU間のインターフエイス13を介して、
二重化された各々の共有メモリ1A,1Bに接続
され、処理装置9からの共有メモリアクセス要求
を両方の共有メモリに伝え、どちらかの共有メモ
リから正常なデータが得られればそれを処理装置
9に返送する。処置装置9は、プログラムを記
憶、解読、実行する機能を有し、そのプログラム
に従い共有メモリへのアクセスや入出力機器の制
御を行う。入出力チヤネル10は、入出力バス1
4に1台もしくは複数台接続され、処理装置9と
入出力機器との間のデータ転送を制御する。ま
た、CPU間の共有入出力機器4を接続するため、
共有入出力バス装置3が用意されている。共有入
出力バス装置3は、共有入出力バス16と、それ
を制御するバス制御装置12と、該バスにCPU
台数分接続され、CPUと共有バス間のインター
フエイス15を介してCPUの入出力チヤネル1
0とデータ転送を行うCPU接続機構11と、該
バスに接続され共有バスと入出力機器間のインタ
ーフエイス18を介して共有入出力機器4とデー
タ転送を行う入出力チヤネル17とから構成され
る。
以上のようなマルチコンピユータシステムにお
いて、あるCPUではオンライン運転をしながら、
他のCPUでプログラムの改造、デバツグを行い
たいというニーズがある。しかし、改造するプロ
グラムも共有メモリを使用するため、誤つてオン
ラインCPUの使用しているエリアをこわしてし
まうとオンライン運転がストツプしてしまう。こ
のため、従来からオンライン運転をストツプさせ
る危険性がなく、共有メモリを使用してのプログ
ラムデバツグを行うための、次のような方法が用
いられていた。
いて、あるCPUではオンライン運転をしながら、
他のCPUでプログラムの改造、デバツグを行い
たいというニーズがある。しかし、改造するプロ
グラムも共有メモリを使用するため、誤つてオン
ラインCPUの使用しているエリアをこわしてし
まうとオンライン運転がストツプしてしまう。こ
のため、従来からオンライン運転をストツプさせ
る危険性がなく、共有メモリを使用してのプログ
ラムデバツグを行うための、次のような方法が用
いられていた。
共有メモリ1A,1Bの各々に、そのメモリが
オンラインモードであるかデバツグモード(これ
らをフアンクシヨンモードという)であるかをそ
れ自身で記憶する手段と、CPUからのあるメモ
リアクセスがオンラインアクセスがデバツグアク
セス(これらをアクセスモードという)かを判定
し、共有メモリのフアンクシヨンモードとCPU
からのアクセスモードが一致した時のみアクセス
を許可する手段とを有せしめ、一方、共有メモリ
接続機構8またはCPU接続機構7に、そのCPU
からのアクセスモードを記憶する手段と、それを
メモリアクセス情報として共有メモリへ伝える手
段とを有せしめる。そして、一方の共有メモリを
オンラインモード、他方の共有メモリをデバツグ
モードとし、かつ、オンライン運転のCPUをオ
ンラインアクセス、デバツグ運転のCPUをデバ
ツグアクセスとすることにより、二重化共有メモ
リの片方をオンラインCPU専用、他方をデバツ
グCPU専用と分離し、デバツグCPUのプログラ
ムミスにより、オンラインCPU側の共有メモリ
がこわされる危険性をなくする。
オンラインモードであるかデバツグモード(これ
らをフアンクシヨンモードという)であるかをそ
れ自身で記憶する手段と、CPUからのあるメモ
リアクセスがオンラインアクセスがデバツグアク
セス(これらをアクセスモードという)かを判定
し、共有メモリのフアンクシヨンモードとCPU
からのアクセスモードが一致した時のみアクセス
を許可する手段とを有せしめ、一方、共有メモリ
接続機構8またはCPU接続機構7に、そのCPU
からのアクセスモードを記憶する手段と、それを
メモリアクセス情報として共有メモリへ伝える手
段とを有せしめる。そして、一方の共有メモリを
オンラインモード、他方の共有メモリをデバツグ
モードとし、かつ、オンライン運転のCPUをオ
ンラインアクセス、デバツグ運転のCPUをデバ
ツグアクセスとすることにより、二重化共有メモ
リの片方をオンラインCPU専用、他方をデバツ
グCPU専用と分離し、デバツグCPUのプログラ
ムミスにより、オンラインCPU側の共有メモリ
がこわされる危険性をなくする。
しかし、この従来例には、2つの欠点がある。
一つは、デバツグ運転とはいつても、共有入出力
機器4を使用したり、オンラインCPUダウン時
バツクアツプを可能としたい。ところがこのため
には、オペレーテイングシステムプログラムが、
共有メモリ上の、入出力機器管理情報や運転モー
ド情報を共通に扱うことによつて可能であり、オ
ンラインCPUと、デバツグCPUで共有メモリが
完全に分離化された従来例では、実現困難であ
る。また、もう一つの欠点としては、デバツグプ
ログラムがオンライン運転の情報を見ることがで
きないことである。プラント制御の場合には、そ
のプログラムを一部改造し、それをデバツグする
とき、オンラインCPUが共有メモリ上に作るプ
ラントからの入力情報を元に、制御プログラムが
正しく追随できるかどうかを確めたいが、従来例
では実現困難である。
一つは、デバツグ運転とはいつても、共有入出力
機器4を使用したり、オンラインCPUダウン時
バツクアツプを可能としたい。ところがこのため
には、オペレーテイングシステムプログラムが、
共有メモリ上の、入出力機器管理情報や運転モー
ド情報を共通に扱うことによつて可能であり、オ
ンラインCPUと、デバツグCPUで共有メモリが
完全に分離化された従来例では、実現困難であ
る。また、もう一つの欠点としては、デバツグプ
ログラムがオンライン運転の情報を見ることがで
きないことである。プラント制御の場合には、そ
のプログラムを一部改造し、それをデバツグする
とき、オンラインCPUが共有メモリ上に作るプ
ラントからの入力情報を元に、制御プログラムが
正しく追随できるかどうかを確めたいが、従来例
では実現困難である。
本発明の目的は、この従来例の欠点をなくし、
二重化メモリの片方をデバツグCPUに使用させ
ながら、入出力機器管理情報等の、オペレーテイ
ングシステムの使用する情報のオンラインCPU、
デバツグCPU間の共用化と、デバツグCPUから
のオンライン運転データののぞき見を容易に実現
できる、二重化共有メモリ制御方法を提供するに
ある。
二重化メモリの片方をデバツグCPUに使用させ
ながら、入出力機器管理情報等の、オペレーテイ
ングシステムの使用する情報のオンラインCPU、
デバツグCPU間の共用化と、デバツグCPUから
のオンライン運転データののぞき見を容易に実現
できる、二重化共有メモリ制御方法を提供するに
ある。
本発明は、共有メモリ内に、従来例の機能に加
えて、特定のアドレスエリアを設定可能とし、そ
のアドレスエリア内であればいずれのアクセスモ
ードでもアクセス可能とし、特定のアドレスエリ
ア外であれば共有メモリのフアンクシヨンモード
とアクセスモードが一致したときのみアクセス可
能とし、一方各CPU対応に、そのCPUの用いる
アドレスを複数個アドレス群に分割して該アドレ
ス群毎にアクセスモードを設定可能とし、この設
定されたアクセスモードで共有メモリをアクセス
するようにしたことを特徴としており、更に、上
記のCPU毎のアドレス群の各々に対して共有メ
モリへの書込み禁止情報を設定可能として、間違
つた共有メモリへの書込みを自動的に検出し、防
止するようにしたことを特徴とするものである。
えて、特定のアドレスエリアを設定可能とし、そ
のアドレスエリア内であればいずれのアクセスモ
ードでもアクセス可能とし、特定のアドレスエリ
ア外であれば共有メモリのフアンクシヨンモード
とアクセスモードが一致したときのみアクセス可
能とし、一方各CPU対応に、そのCPUの用いる
アドレスを複数個アドレス群に分割して該アドレ
ス群毎にアクセスモードを設定可能とし、この設
定されたアクセスモードで共有メモリをアクセス
するようにしたことを特徴としており、更に、上
記のCPU毎のアドレス群の各々に対して共有メ
モリへの書込み禁止情報を設定可能として、間違
つた共有メモリへの書込みを自動的に検出し、防
止するようにしたことを特徴とするものである。
以下、本発明を実施例によつて詳細に説明す
る。発明の実施例の全体構成図は、従来例の構成
図である第1図と同一である。以下説明する本発
明の実施例において第1図の中で従来例と異なる
機能を有するのは、共有メモリ接続機構8とメモ
リ制御装置6である。他の機構は従来例と同様で
ある。
る。発明の実施例の全体構成図は、従来例の構成
図である第1図と同一である。以下説明する本発
明の実施例において第1図の中で従来例と異なる
機能を有するのは、共有メモリ接続機構8とメモ
リ制御装置6である。他の機構は従来例と同様で
ある。
第2図は、共有メモリ接続機構8の構成例を示
したものである。処理装置9から送出される仮想
アドレス21はアドレス変換装置26に入力され
る。仮想アドレスはプログラムから見たアドレス
のことをいう。アドレス変換装置26により、本
アドレスは物理アドレス31に変換される。物理
アドレスとは実際のメモリ装置に対応したアドレ
スのことをいう。また、該装置26により該当仮
想アドレスに対応した、デバツグフアンクシヨン
信号30、書込み禁止信号39と、アドレス変換
有効信号40が出力される。デバツグフアンクシ
ヨン信号30とは、本信号が1のときそのアクセ
スはデバツグアクセス、本信号が0のときそのア
クセスはオンラインアクセスであることを示す。
物理アドレス31、デバダツグフアンクシヨン信
号30は、二重化された共有メモリ1A,1Bの
各各へ出力される。処理装置9より送出される書
込みデータ22は、そのまま、二重化された共有
メモリ1A,1Bの各々へ出力される。二重化メ
モリの各々より出力された読出データ32,33
はデータ選択装置27に入力され、そのいずれか
が選択されて、処理装置9へ、読出しデータ23
として出力される。共有メモリ制御機構8の内部
制御装置28は、処理装置9からの起動信号24
を受けるとアクセス動作を開始し、書込み禁止信
号39が0かつアドレス変換有効信号40が1の
とき、共有メモリ1A,1Bの各々へ起動信号3
4を出力し、共有メモリ1A,1Bの各々からの
応答信号35,37とエラー報告信号36,38
を取り込み、エラーのなかつた方を選択するよ
う、読出しデータ選択指定信号29をデータ選択
装置27に出力し、処理装置9へ応答信号25を
出力してそのアクセス動作を終了する。もし、書
込み禁止信号39が1または、アドレス変換有効
信号40が0、または共有メモリ1A,1Bから
のエラー報告信号36,38が両方共1のときは
処理装置9へ応答信号25を出力するときにエラ
ー報告信号41を1とする。
したものである。処理装置9から送出される仮想
アドレス21はアドレス変換装置26に入力され
る。仮想アドレスはプログラムから見たアドレス
のことをいう。アドレス変換装置26により、本
アドレスは物理アドレス31に変換される。物理
アドレスとは実際のメモリ装置に対応したアドレ
スのことをいう。また、該装置26により該当仮
想アドレスに対応した、デバツグフアンクシヨン
信号30、書込み禁止信号39と、アドレス変換
有効信号40が出力される。デバツグフアンクシ
ヨン信号30とは、本信号が1のときそのアクセ
スはデバツグアクセス、本信号が0のときそのア
クセスはオンラインアクセスであることを示す。
物理アドレス31、デバダツグフアンクシヨン信
号30は、二重化された共有メモリ1A,1Bの
各各へ出力される。処理装置9より送出される書
込みデータ22は、そのまま、二重化された共有
メモリ1A,1Bの各々へ出力される。二重化メ
モリの各々より出力された読出データ32,33
はデータ選択装置27に入力され、そのいずれか
が選択されて、処理装置9へ、読出しデータ23
として出力される。共有メモリ制御機構8の内部
制御装置28は、処理装置9からの起動信号24
を受けるとアクセス動作を開始し、書込み禁止信
号39が0かつアドレス変換有効信号40が1の
とき、共有メモリ1A,1Bの各々へ起動信号3
4を出力し、共有メモリ1A,1Bの各々からの
応答信号35,37とエラー報告信号36,38
を取り込み、エラーのなかつた方を選択するよ
う、読出しデータ選択指定信号29をデータ選択
装置27に出力し、処理装置9へ応答信号25を
出力してそのアクセス動作を終了する。もし、書
込み禁止信号39が1または、アドレス変換有効
信号40が0、または共有メモリ1A,1Bから
のエラー報告信号36,38が両方共1のときは
処理装置9へ応答信号25を出力するときにエラ
ー報告信号41を1とする。
第3図は、第2図で説明した共有メモリ接続機
構8内のアドレス変換装置26の内部構成を示し
たものである。仮想アドレス21は複数本の信号
からなるが、これを2つに分割し、一方をページ
アドレス51とし、もう一方をベージ内アドレス
52と称することとする。全てのページアドレス
51は有効ビツト53、デバツグビツト54、フ
レームアドレス55、書込み禁止ビツト56から
なり、これを記憶するメモリを有する。このメモ
リ内容は、プログラムにより初期設定及び途中変
更可能となる。あるページアドレス51に対応し
てこのメモリからアドレス変換有効信号57、デ
バツグフアンクシヨン信号58、フレームアドレ
ス59書込み禁止信号60が送出される。これら
は順にアドレス変換有効信号選択装置65、デバ
ツグフアンクシヨン信号選択装置66、フレーム
アドレス選択装置67、書込み禁止信号選択装置
68の片方の入力に入力される。この選択装置群
の反対側の入力には、順に、アドレス変換不実行
時有効ビツト62の出力、アドレス変換不実行時
のデバツグビツト63の出力、ページアドレス5
1、アドレス変換不実行時の書込み禁止ビツト6
4の出力が入力される。アドレス変換実行ビツト
61が1のとき前者の入力群が選択され、0のと
き後者の入力群が選択される。なお、アドレス変
換不実行時有効ビツト62、アドレス変換不実行
時のデバツグビツト63、アドレス変換不実行時
の書込み禁止ビツト64は、固定または、プログ
ラムにより初期設定可能とする。アドレス変換実
行ビツト61は初期設定可能な手段を有し、通
常、最初は0で、オペレーテイングシステムプロ
グラムがアドレス変換情報53〜56を設定後、
1に書換えられる。前記選択装置群65〜68の
出力は、順に、アドレス変換有効信号40、デバ
ツグフアンクシヨン信号30、フレームアドレス
69、書込み禁止信号39となる。フレームアド
レス69とページ内アドレス52は合わされ、物
理アドレス31となる。
構8内のアドレス変換装置26の内部構成を示し
たものである。仮想アドレス21は複数本の信号
からなるが、これを2つに分割し、一方をページ
アドレス51とし、もう一方をベージ内アドレス
52と称することとする。全てのページアドレス
51は有効ビツト53、デバツグビツト54、フ
レームアドレス55、書込み禁止ビツト56から
なり、これを記憶するメモリを有する。このメモ
リ内容は、プログラムにより初期設定及び途中変
更可能となる。あるページアドレス51に対応し
てこのメモリからアドレス変換有効信号57、デ
バツグフアンクシヨン信号58、フレームアドレ
ス59書込み禁止信号60が送出される。これら
は順にアドレス変換有効信号選択装置65、デバ
ツグフアンクシヨン信号選択装置66、フレーム
アドレス選択装置67、書込み禁止信号選択装置
68の片方の入力に入力される。この選択装置群
の反対側の入力には、順に、アドレス変換不実行
時有効ビツト62の出力、アドレス変換不実行時
のデバツグビツト63の出力、ページアドレス5
1、アドレス変換不実行時の書込み禁止ビツト6
4の出力が入力される。アドレス変換実行ビツト
61が1のとき前者の入力群が選択され、0のと
き後者の入力群が選択される。なお、アドレス変
換不実行時有効ビツト62、アドレス変換不実行
時のデバツグビツト63、アドレス変換不実行時
の書込み禁止ビツト64は、固定または、プログ
ラムにより初期設定可能とする。アドレス変換実
行ビツト61は初期設定可能な手段を有し、通
常、最初は0で、オペレーテイングシステムプロ
グラムがアドレス変換情報53〜56を設定後、
1に書換えられる。前記選択装置群65〜68の
出力は、順に、アドレス変換有効信号40、デバ
ツグフアンクシヨン信号30、フレームアドレス
69、書込み禁止信号39となる。フレームアド
レス69とページ内アドレス52は合わされ、物
理アドレス31となる。
第4図は、CPU接続機構7の構成例を示した
ものである。共有メモリ接続機構8からの起動信
号34が入力され、それはそのまま、共有メモリ
制御装置6へ選択要求信号71として出力され
る。共有メモリ制御装置6は、各CPU接続機構
7から出力された該要求信号を監視し、該要求信
号が1となつているCPU接続機構7のいずれか
1つを選択し、その選択した接続機構にのみ、選
択受付信号72を出力する。選択受付信号72は
CPU接続機構7に入力される。本信号は、CPU
接続機構7内の全てのゲートの制御入力に接続さ
れ、本信号が1となるとこれらのゲートはオープ
ンとなる。これらのゲートがオープンとなること
により、共有メモリ接続機構8より出力の起動信
号34、デバツグフアンクシヨン信号30、物理
アドレス31、書込みデータ22は、各々、起動
信号73、デバツグフアンクシヨン信号76、物
理アドレス77、書込みデータ78として共有メ
モリ制御装置6へ出力され、また、共有メモリ制
御装置6より出力の応答信号74、エラー報告信
号75、読出しデータ79は、各々、応答信号3
5または37、エラー報告信号36または38、
読出しデータ32または33として、共有メモリ
接続機構8へ出力される。
ものである。共有メモリ接続機構8からの起動信
号34が入力され、それはそのまま、共有メモリ
制御装置6へ選択要求信号71として出力され
る。共有メモリ制御装置6は、各CPU接続機構
7から出力された該要求信号を監視し、該要求信
号が1となつているCPU接続機構7のいずれか
1つを選択し、その選択した接続機構にのみ、選
択受付信号72を出力する。選択受付信号72は
CPU接続機構7に入力される。本信号は、CPU
接続機構7内の全てのゲートの制御入力に接続さ
れ、本信号が1となるとこれらのゲートはオープ
ンとなる。これらのゲートがオープンとなること
により、共有メモリ接続機構8より出力の起動信
号34、デバツグフアンクシヨン信号30、物理
アドレス31、書込みデータ22は、各々、起動
信号73、デバツグフアンクシヨン信号76、物
理アドレス77、書込みデータ78として共有メ
モリ制御装置6へ出力され、また、共有メモリ制
御装置6より出力の応答信号74、エラー報告信
号75、読出しデータ79は、各々、応答信号3
5または37、エラー報告信号36または38、
読出しデータ32または33として、共有メモリ
接続機構8へ出力される。
第5図は、メモリ制御装置6の構成例を示した
ものである。選択制御装置80は、各CPU接続
機構からの選択要求信号71を受付け、該信号が
1となつているCPU接続機構7のいずれか1つ
が選択され(第1図ではn=2)、その機構にの
み選択受付信号72が送出される。本信号を受け
たCPU接続機構7だけが以下の転送を行うこと
ができる。まずCPU接続機構7より物理アドレ
ス77、書込みデータ78、デバツグフアンクシ
ヨン信号76及び起動信号73が送出される。物
理アドレス77、書込みデータ78はメモリ5へ
送出される。物理アドレス77とデバツグフアン
クシヨン信号76はフアンクシヨンチエツク装置
84に入力され、判定結果が、アクセスエラー信
号91として出力される。メモリアクセス制御装
置85はCPU接続機構7からの要求信号73を
受付け、アクセスエラー信号91が0ならばメモ
リへの起動信号86を送出する。メモリ5より読
出しデータ79及び応答信号87が出力される
と、読出しデータ79はそのまま、CPU接続機
構7へ出力され、応答信号87はメモリアクセス
制御装置85に入力され、応答信号74がCPU
接続機構7へ出力される。このとき該アクセスで
エラーがなければCPU接続機構7へのエラー報
告信号75は0である。また、アクセスエラー信
号91が1ならばメモリ5への起動信号86は出
力されず、即時に、エラー報告信号75を1と
し、応答信号74がCPU接続機構7へ出力され
る。
ものである。選択制御装置80は、各CPU接続
機構からの選択要求信号71を受付け、該信号が
1となつているCPU接続機構7のいずれか1つ
が選択され(第1図ではn=2)、その機構にの
み選択受付信号72が送出される。本信号を受け
たCPU接続機構7だけが以下の転送を行うこと
ができる。まずCPU接続機構7より物理アドレ
ス77、書込みデータ78、デバツグフアンクシ
ヨン信号76及び起動信号73が送出される。物
理アドレス77、書込みデータ78はメモリ5へ
送出される。物理アドレス77とデバツグフアン
クシヨン信号76はフアンクシヨンチエツク装置
84に入力され、判定結果が、アクセスエラー信
号91として出力される。メモリアクセス制御装
置85はCPU接続機構7からの要求信号73を
受付け、アクセスエラー信号91が0ならばメモ
リへの起動信号86を送出する。メモリ5より読
出しデータ79及び応答信号87が出力される
と、読出しデータ79はそのまま、CPU接続機
構7へ出力され、応答信号87はメモリアクセス
制御装置85に入力され、応答信号74がCPU
接続機構7へ出力される。このとき該アクセスで
エラーがなければCPU接続機構7へのエラー報
告信号75は0である。また、アクセスエラー信
号91が1ならばメモリ5への起動信号86は出
力されず、即時に、エラー報告信号75を1と
し、応答信号74がCPU接続機構7へ出力され
る。
第6図は、第5図で説明したメモリ制御装置6
内のフアンクシヨンチエツク装置84の内部構成
を示したものである。本実施例では、最も簡単な
例として、ある境界の物理アドレス以下がオンラ
インアクセス、デバツグアクセスのいずれでもア
クセス可とし、その境界物理アドレス以上がオン
ラインモードでオンラインアクセスまたはデバツ
グモードでデバツグアクセスのときのみアクセス
可能とする場合について説明する。このフアンク
シヨンチエツク装置84内には、本発明の特徴と
するデバツグモードビツト101と境界レジスタ
102を有する。これらは外部からのスイツチま
たはプログラムによつて設定できるものとする。
デバツグモードビツト101は共有メモリのフア
ンクシヨンモードを決めるもので、1のときデバ
ツグモード、0のときオンラインモードであるこ
とを示す。デバツグモードビツト101の出力と
デバツグフアンクシヨン信号76とが比較器10
3にて比較され、不一致、即ちオンラインモード
でデバツグアクセス、またはデバツグモードでオ
ンラインアクセスのとき、比較器103の出力で
あるモードフアンクシヨン不一致信号105は1
となる。また、境界レジスタ102の出力と物理
アドレス88とが比較器104にて比較され、物
理アドレスが境界レジスタの示すアドレスより大
きいとき比較器104の出力である境界オーバー
信号106は1となる。論理積装置107によ
り、モードフアンクシヨン不一致信号105が1
かつ境界オーバー信号106が1のとき、アクセ
スエラー信号91が1となる。
内のフアンクシヨンチエツク装置84の内部構成
を示したものである。本実施例では、最も簡単な
例として、ある境界の物理アドレス以下がオンラ
インアクセス、デバツグアクセスのいずれでもア
クセス可とし、その境界物理アドレス以上がオン
ラインモードでオンラインアクセスまたはデバツ
グモードでデバツグアクセスのときのみアクセス
可能とする場合について説明する。このフアンク
シヨンチエツク装置84内には、本発明の特徴と
するデバツグモードビツト101と境界レジスタ
102を有する。これらは外部からのスイツチま
たはプログラムによつて設定できるものとする。
デバツグモードビツト101は共有メモリのフア
ンクシヨンモードを決めるもので、1のときデバ
ツグモード、0のときオンラインモードであるこ
とを示す。デバツグモードビツト101の出力と
デバツグフアンクシヨン信号76とが比較器10
3にて比較され、不一致、即ちオンラインモード
でデバツグアクセス、またはデバツグモードでオ
ンラインアクセスのとき、比較器103の出力で
あるモードフアンクシヨン不一致信号105は1
となる。また、境界レジスタ102の出力と物理
アドレス88とが比較器104にて比較され、物
理アドレスが境界レジスタの示すアドレスより大
きいとき比較器104の出力である境界オーバー
信号106は1となる。論理積装置107によ
り、モードフアンクシヨン不一致信号105が1
かつ境界オーバー信号106が1のとき、アクセ
スエラー信号91が1となる。
以上、第2図〜第6図にて、本発明の実施例の
構成を説明した。次にこの使用法と効果を説明す
る。
構成を説明した。次にこの使用法と効果を説明す
る。
第7図は、デバツグのために、片系の共有メモ
リ1Bをデバツグモード、他方をオンラインモー
ドとしたとき、物理アドレスPAの各範囲に対応
するアクセス可能フアンクシヨンを示したもので
ある。本図は第6図で説明したフアンクシヨンチ
エツク装置84の実施例に対応するもので、物理
アドレスが境界レジスタで示すアドレスFRより
小さいとき、オンラインアクセスでもデバツグア
クセスでも両系の共有メモリ1A,1Bにともに
アクセス可能で、物理アドレスがアドレスFRよ
り大きいとき、オンラインモードの共有メモリ1
Aの該当エリアはオンラインアクセスによつての
みアクセス可能で、デバツクモードの共有メモリ
1Bの該当エリアはデバツグアクセスによつての
みアクセス可能である。以上のように、物理アド
レスの一部のエリアはオンラインアクセスにとつ
てもデバツグアクセスにとつても共通で、残りの
エリアはオンラインアクセスとデバツグアクセス
とで分離されるという二重化共有メモリの部分分
離化が実現される。
リ1Bをデバツグモード、他方をオンラインモー
ドとしたとき、物理アドレスPAの各範囲に対応
するアクセス可能フアンクシヨンを示したもので
ある。本図は第6図で説明したフアンクシヨンチ
エツク装置84の実施例に対応するもので、物理
アドレスが境界レジスタで示すアドレスFRより
小さいとき、オンラインアクセスでもデバツグア
クセスでも両系の共有メモリ1A,1Bにともに
アクセス可能で、物理アドレスがアドレスFRよ
り大きいとき、オンラインモードの共有メモリ1
Aの該当エリアはオンラインアクセスによつての
みアクセス可能で、デバツクモードの共有メモリ
1Bの該当エリアはデバツグアクセスによつての
みアクセス可能である。以上のように、物理アド
レスの一部のエリアはオンラインアクセスにとつ
てもデバツグアクセスにとつても共通で、残りの
エリアはオンラインアクセスとデバツグアクセス
とで分離されるという二重化共有メモリの部分分
離化が実現される。
第8図は、最も簡単な使用例であり、CPU1
A(CPU1)、CPU1B(CPU2)で用いる仮想
アドレスVAの使用範囲を示す。オンライン運転
のCPU1は全仮想アドレスVAについてオンライ
ンアクセイ、デバツグ運転のCPU2は全仮想ア
ドレスVAについてデバツグアクセスと設定した
ものである。境界レジスタのアドレスFR以下の
共通エリアは、オペレーテイングシステム使用エ
リアとして共有入出力機器制御情報や運転モード
情報が格納されている。境界レジスタアドレス
FR以上の分離エリアは、アプリケーシヨンプロ
グラム使用エリアとして使用され、オンライン
CPUとデバツグCPUとで分離されているため、
デバツグ中のアプリケーシヨンプログラムが誤つ
てオンライン側の情報を破壊する危険を防止す
る。なお、アプリケーシヨンプログラムがアドレ
スFR以下の共通エリアを破壊する危険の防止に
ついては、アドレスが異なり、また、そのエリア
はオペレーテイングシステムプログラムしかアク
セスしないということを利用し、本発明とは別の
独立した手段にて容易に防護できる。
A(CPU1)、CPU1B(CPU2)で用いる仮想
アドレスVAの使用範囲を示す。オンライン運転
のCPU1は全仮想アドレスVAについてオンライ
ンアクセイ、デバツグ運転のCPU2は全仮想ア
ドレスVAについてデバツグアクセスと設定した
ものである。境界レジスタのアドレスFR以下の
共通エリアは、オペレーテイングシステム使用エ
リアとして共有入出力機器制御情報や運転モード
情報が格納されている。境界レジスタアドレス
FR以上の分離エリアは、アプリケーシヨンプロ
グラム使用エリアとして使用され、オンライン
CPUとデバツグCPUとで分離されているため、
デバツグ中のアプリケーシヨンプログラムが誤つ
てオンライン側の情報を破壊する危険を防止す
る。なお、アプリケーシヨンプログラムがアドレ
スFR以下の共通エリアを破壊する危険の防止に
ついては、アドレスが異なり、また、そのエリア
はオペレーテイングシステムプログラムしかアク
セスしないということを利用し、本発明とは別の
独立した手段にて容易に防護できる。
第8図の使用例について、以下、詳細動作説明
を行う。オンライン運転のCPU1について、共
有メモリ接続機構8内のアドレス変換装置26
(第3図)に関し、全てのページアドレス51に
対応して、有効ビツト53を1、デバツグビツト
54及び書込み禁止ビツト56を0に設定する。
また、フレームアドレス55を、フレームアドレ
ス=ページアドレスとなるように設定する。本設
定はCPU1の立上げ時に行われる。このように
設定することにより、CPU1の共有メモリ接続
機構8より出力される共有メモリアクセスは、全
仮想アドレス21(VA)に対し、デバツグフア
ンシヨン信号30が0、物理アドレス31は仮想
アドレス21と同じとなる。デバツグ運転の
CPU2についても同様の設定を行う。ただしデ
バツグビツトには1が設定され、全仮想アドレス
21に対し、デバツグフアンクシヨン信号30が
1、物理アドレス31と仮想アドレス21は同じ
となる。次に仮想アドレスVAの内、あるアドレ
スより下がオペレーテイングシステムプログラム
が使用するエリア、それより上が、アプリケーシ
ヨンプログラムが使用するエリアとする。このた
め、その境界となるアドレスFRの値を、二重化
共有メモリの両方の境界レジスタ106(第6
図)に設定する。また、片方の共用メモリのデバ
ツグモードビツト101を0とし、他方の共有メ
モリのデバツグモードビツト101を1と設定す
る。前者がオンラインモード共有メモリ、後者が
デバツグモード共有メモリとなる。これら共有メ
モリ側の設定は、プログラムデバツグを始める前
に、共有メモリ側の外部スイツチにより設定した
り、あるいは、CPUのいずれかを用いて共用メ
モリモード設定プログラムを走らせて設定する。
を行う。オンライン運転のCPU1について、共
有メモリ接続機構8内のアドレス変換装置26
(第3図)に関し、全てのページアドレス51に
対応して、有効ビツト53を1、デバツグビツト
54及び書込み禁止ビツト56を0に設定する。
また、フレームアドレス55を、フレームアドレ
ス=ページアドレスとなるように設定する。本設
定はCPU1の立上げ時に行われる。このように
設定することにより、CPU1の共有メモリ接続
機構8より出力される共有メモリアクセスは、全
仮想アドレス21(VA)に対し、デバツグフア
ンシヨン信号30が0、物理アドレス31は仮想
アドレス21と同じとなる。デバツグ運転の
CPU2についても同様の設定を行う。ただしデ
バツグビツトには1が設定され、全仮想アドレス
21に対し、デバツグフアンクシヨン信号30が
1、物理アドレス31と仮想アドレス21は同じ
となる。次に仮想アドレスVAの内、あるアドレ
スより下がオペレーテイングシステムプログラム
が使用するエリア、それより上が、アプリケーシ
ヨンプログラムが使用するエリアとする。このた
め、その境界となるアドレスFRの値を、二重化
共有メモリの両方の境界レジスタ106(第6
図)に設定する。また、片方の共用メモリのデバ
ツグモードビツト101を0とし、他方の共有メ
モリのデバツグモードビツト101を1と設定す
る。前者がオンラインモード共有メモリ、後者が
デバツグモード共有メモリとなる。これら共有メ
モリ側の設定は、プログラムデバツグを始める前
に、共有メモリ側の外部スイツチにより設定した
り、あるいは、CPUのいずれかを用いて共用メ
モリモード設定プログラムを走らせて設定する。
以上のような設定をしておくと、CPU1より、
境界アドレス以下のアドレスへアクセスがあつた
とき、オンラインモード共有メモリのメモリ制御
装置6内のフアンクシヨンチエツク装置84で
は、物理アドレス88の値が境界レジスタ102
の値より小さいため、境界オーバ信号106は0
となり、アクセスエラー信号91は0となる。従
つてこのときはCPU1よりオンラインモード共
有メモリの当該アドレスへの読み書きアクセスは
実施される。一方、デバツグモード共有メモリの
メモリ制御装置6内のフアンクシヨンチエツク装
置84でも同様に、物理アドレス88の値が境界
レジスタ102の値より小さいため、境界オーバ
ー信号106は0となり、従つて、アクセスエラ
ー信号91は0となつて、CPU1よりデバツグ
モード共有メモリの当該アドレスへの読み書きア
クセスも実施される。
境界アドレス以下のアドレスへアクセスがあつた
とき、オンラインモード共有メモリのメモリ制御
装置6内のフアンクシヨンチエツク装置84で
は、物理アドレス88の値が境界レジスタ102
の値より小さいため、境界オーバ信号106は0
となり、アクセスエラー信号91は0となる。従
つてこのときはCPU1よりオンラインモード共
有メモリの当該アドレスへの読み書きアクセスは
実施される。一方、デバツグモード共有メモリの
メモリ制御装置6内のフアンクシヨンチエツク装
置84でも同様に、物理アドレス88の値が境界
レジスタ102の値より小さいため、境界オーバ
ー信号106は0となり、従つて、アクセスエラ
ー信号91は0となつて、CPU1よりデバツグ
モード共有メモリの当該アドレスへの読み書きア
クセスも実施される。
同様にして、CPU2より、境界アドレス以下
のアドレスへアクセスがあつたとき、オンライン
モード共有メモリ及びデバツグモード共有メモリ
の当該アドレスへの読み書きアクセスは実施され
る。
のアドレスへアクセスがあつたとき、オンライン
モード共有メモリ及びデバツグモード共有メモリ
の当該アドレスへの読み書きアクセスは実施され
る。
次に、CPU1より、境界アドレス以上のアド
レスへアクセスがあつたとき、オンラインモード
共有メモリのメモリ制御装置6内のフアンクシヨ
ンチエツク装置84では、物理アドレス88の値
が境界レジスタ102の値より大きいため、境界
オーバー信号106は1となり、また、デバツグ
フアンクシヨン信号76は0、デバツグモードビ
ツト101は0のため、モードフアンクシヨン不
一致信号105は0となり、従つてアクセスエラ
ー信号91は0となる。従つて、このときは
CPU1よりデバツグモード共有メモリの当該ア
ドレスへの読み書きアクセスは実施される。一
方、デバツグモード共有メモリのメモリ制御装置
6内のフアンクシヨンチエツク装置84では、物
理アドレス88の値が境界レジスタ102の値よ
り大きいため、境界オーバー信号106は1とな
り、また、デバツグフアンクシヨン信号76は
0、デバツグモードビツト101は1のため、モ
ードフアンクシヨン不一致信号105は1とな
り、従つて、アクセスエラー信号91は1とな
る。従つて、CPU1よりデバツグモード共有メ
モリの当該アドレスへの読み書きアクセスは実施
されない。
レスへアクセスがあつたとき、オンラインモード
共有メモリのメモリ制御装置6内のフアンクシヨ
ンチエツク装置84では、物理アドレス88の値
が境界レジスタ102の値より大きいため、境界
オーバー信号106は1となり、また、デバツグ
フアンクシヨン信号76は0、デバツグモードビ
ツト101は0のため、モードフアンクシヨン不
一致信号105は0となり、従つてアクセスエラ
ー信号91は0となる。従つて、このときは
CPU1よりデバツグモード共有メモリの当該ア
ドレスへの読み書きアクセスは実施される。一
方、デバツグモード共有メモリのメモリ制御装置
6内のフアンクシヨンチエツク装置84では、物
理アドレス88の値が境界レジスタ102の値よ
り大きいため、境界オーバー信号106は1とな
り、また、デバツグフアンクシヨン信号76は
0、デバツグモードビツト101は1のため、モ
ードフアンクシヨン不一致信号105は1とな
り、従つて、アクセスエラー信号91は1とな
る。従つて、CPU1よりデバツグモード共有メ
モリの当該アドレスへの読み書きアクセスは実施
されない。
同様にして、CPU2より、境界アドレス以上
のアドレスへアクセスがあつたとき、デバツグモ
ード共有メモリの当該アドレスへのアクセスは実
施されるが、オンライン共有メモリの当該アドレ
スへのアクセスは実施されない。
のアドレスへアクセスがあつたとき、デバツグモ
ード共有メモリの当該アドレスへのアクセスは実
施されるが、オンライン共有メモリの当該アドレ
スへのアクセスは実施されない。
以上のようにして、境界アドレス以下のオペレ
ーテイングシステムプログラム使用エリアは、
CPU1,CPU2とが共にアクセスでき、境界ア
ドレス以上のアプリケーシヨンプログラム使用エ
リアは、オンライン運転のCPU1がオンライン
モード共有メモリのみアクセスでき、デバツグ運
転のCPU2がデバツグモード共有メモリのみア
クセスできる。なお、プログラムデバツグが終了
すると、デバツグモード共有メモリのデバツグモ
ードビツト101を0として、オンラインモード
共有メモリにし、別途設けられた何らかのコピー
手段により、既オンラインモード共有メモリの内
容を新しくオンラインモードとなつた共有メモリ
にコピーし、全アドレスにわたつて二重化された
共有メモリとして使用する。また、CPU2の全
ページアドレスに対応するデバツグビツト54を
0に書き換え、CPU2もオンライン運転を行う。
ーテイングシステムプログラム使用エリアは、
CPU1,CPU2とが共にアクセスでき、境界ア
ドレス以上のアプリケーシヨンプログラム使用エ
リアは、オンライン運転のCPU1がオンライン
モード共有メモリのみアクセスでき、デバツグ運
転のCPU2がデバツグモード共有メモリのみア
クセスできる。なお、プログラムデバツグが終了
すると、デバツグモード共有メモリのデバツグモ
ードビツト101を0として、オンラインモード
共有メモリにし、別途設けられた何らかのコピー
手段により、既オンラインモード共有メモリの内
容を新しくオンラインモードとなつた共有メモリ
にコピーし、全アドレスにわたつて二重化された
共有メモリとして使用する。また、CPU2の全
ページアドレスに対応するデバツグビツト54を
0に書き換え、CPU2もオンライン運転を行う。
第9図は、他の使用例を示したものである。オ
ンライン運転のCPU1は、全仮想アドレスVAに
ついてオンラインアクセス、デバツグ運転の
CPU2は、全物理アドレをカバーする分はデバ
ツグアクセスとし、それ以外に、分離されたオン
ラインエリアをカバーする分をオンラインアクセ
スとし、かつ後者の仮想アドレスVAがオンライ
ンエリアの物理アドレスに対応するようにしたも
のである。この使用例では第8図で説明したデバ
ツグ上の利点に加え、更に、オンラインCPUが
処理し、オンラインエリア上に作つているプラン
ト情報等をとりこむことができる。このため、デ
バツグプログラムがオンラインCPUのプログラ
ムと同一の入力をとりこみ、同一の出力を出すか
どうかをチエツクしたり、双方の出力を比較し、
その相関をチエツクすることができ、デバツグの
完成度を高めることかできる。また、デバツグ
CPUのアクセスするオンラインエリアに対応す
る書込み禁止ビツトをオンすることにより、この
エリアは書き込み禁止となり、デバツグ中のアプ
リケーシヨンプログラムによりオンラインエリア
を破壊する危険を容易に回避できる。
ンライン運転のCPU1は、全仮想アドレスVAに
ついてオンラインアクセス、デバツグ運転の
CPU2は、全物理アドレをカバーする分はデバ
ツグアクセスとし、それ以外に、分離されたオン
ラインエリアをカバーする分をオンラインアクセ
スとし、かつ後者の仮想アドレスVAがオンライ
ンエリアの物理アドレスに対応するようにしたも
のである。この使用例では第8図で説明したデバ
ツグ上の利点に加え、更に、オンラインCPUが
処理し、オンラインエリア上に作つているプラン
ト情報等をとりこむことができる。このため、デ
バツグプログラムがオンラインCPUのプログラ
ムと同一の入力をとりこみ、同一の出力を出すか
どうかをチエツクしたり、双方の出力を比較し、
その相関をチエツクすることができ、デバツグの
完成度を高めることかできる。また、デバツグ
CPUのアクセスするオンラインエリアに対応す
る書込み禁止ビツトをオンすることにより、この
エリアは書き込み禁止となり、デバツグ中のアプ
リケーシヨンプログラムによりオンラインエリア
を破壊する危険を容易に回避できる。
第9図の使用例について、以下、詳細動作説明
を行う。オンライン運転のCPU1について、共
有メモリ接続機構8内のアドレス変換装置26
(第3図)に関し、仮想アドレス=物理アドレス
としたときにその物理アドレスが実在する全ての
ページアドレス51に対応して、有効ビツト53
を1、デバツグビツトを0、及び書込み禁止ビツ
ト56を0に設定し、またフレームアドレス55
を、フレームアドレス=ページアドレスとなるよ
うに設定する。本設定はCPU1の立上げ時に行
われる。このように設定することにより、CPU
1の共有メモリ接続機構8より出力される共有メ
モリアクセスは、全仮想アドレス21(VA)に
対し、デバツグフアンクシヨン信号30が0、物
理アドレス31は仮想アドレス21と同じとな
る。一方、デバツグ運転のCPU2については、
共有メモリ接続機構8内のアドレス変換装置26
に関し、仮想アドレス=物理アドレスとしたとき
にその物理アドレスが実在する全てのページアド
レス51に対応して、有効ビツト53を1、デバ
ツグビツト54を1、及び書込み禁止ビツト56
を0に設定し、またフレームアドレス55をフレ
ームアドレス=ページアドレスとなるように設定
する。更に、仮想アドレス=物理アドレスとした
とき、その物理アドレスが実在しないページアド
レスの中から、アプリケーシヨンプログラムが使
用する物理アドレスを全て包含する容量分のペー
ジアドレスに関し、有効ビツト53を1、デバツ
グビツトを0、及び書込み禁止ビツト56を1に
設定し、またフレームアドレス55を、該ページ
アドレスがアプリケーシヨンプログラムが使用す
る物理アドレスのフレームアドレスに対応するよ
うに設定する。これらの設定はCPU2の立上げ
時に行われる。このように設定することにより、
CPU2の共有メモリ接続機構8より出力される
共有メモリアクセスは、実在物理アドレスの範囲
でアクセスするとデバツグフアンクシヨン信号3
0が1、物理アドレス31は仮想アドレス21と
同じとなり、実在アドレス範囲外の、前記アプリ
ケーシヨンプログラムの使用するエリアに対応せ
しめた仮想アドレスをアクセスすると、デバツグ
フアンクシヨン信号30が0、物理アドレス31
は、前記アプリケーシヨンプログラムの使用する
物理アドレスとなる。しかも、後者のアクセス
は、読出しのみ可能である。なお、共有メモリ側
の環境レジスタ102(第6図)、デバツグモー
ドビツト101の設定の説明については、第8図
の説明と全く同一であるため、省略する。
を行う。オンライン運転のCPU1について、共
有メモリ接続機構8内のアドレス変換装置26
(第3図)に関し、仮想アドレス=物理アドレス
としたときにその物理アドレスが実在する全ての
ページアドレス51に対応して、有効ビツト53
を1、デバツグビツトを0、及び書込み禁止ビツ
ト56を0に設定し、またフレームアドレス55
を、フレームアドレス=ページアドレスとなるよ
うに設定する。本設定はCPU1の立上げ時に行
われる。このように設定することにより、CPU
1の共有メモリ接続機構8より出力される共有メ
モリアクセスは、全仮想アドレス21(VA)に
対し、デバツグフアンクシヨン信号30が0、物
理アドレス31は仮想アドレス21と同じとな
る。一方、デバツグ運転のCPU2については、
共有メモリ接続機構8内のアドレス変換装置26
に関し、仮想アドレス=物理アドレスとしたとき
にその物理アドレスが実在する全てのページアド
レス51に対応して、有効ビツト53を1、デバ
ツグビツト54を1、及び書込み禁止ビツト56
を0に設定し、またフレームアドレス55をフレ
ームアドレス=ページアドレスとなるように設定
する。更に、仮想アドレス=物理アドレスとした
とき、その物理アドレスが実在しないページアド
レスの中から、アプリケーシヨンプログラムが使
用する物理アドレスを全て包含する容量分のペー
ジアドレスに関し、有効ビツト53を1、デバツ
グビツトを0、及び書込み禁止ビツト56を1に
設定し、またフレームアドレス55を、該ページ
アドレスがアプリケーシヨンプログラムが使用す
る物理アドレスのフレームアドレスに対応するよ
うに設定する。これらの設定はCPU2の立上げ
時に行われる。このように設定することにより、
CPU2の共有メモリ接続機構8より出力される
共有メモリアクセスは、実在物理アドレスの範囲
でアクセスするとデバツグフアンクシヨン信号3
0が1、物理アドレス31は仮想アドレス21と
同じとなり、実在アドレス範囲外の、前記アプリ
ケーシヨンプログラムの使用するエリアに対応せ
しめた仮想アドレスをアクセスすると、デバツグ
フアンクシヨン信号30が0、物理アドレス31
は、前記アプリケーシヨンプログラムの使用する
物理アドレスとなる。しかも、後者のアクセス
は、読出しのみ可能である。なお、共有メモリ側
の環境レジスタ102(第6図)、デバツグモー
ドビツト101の設定の説明については、第8図
の説明と全く同一であるため、省略する。
第10図は、他の使用例を示したものである。
オンライン運転のCPU1は、全仮想アドレスVA
についてオンラインアクセス、デバツグ運転の
CPU2は、アプリケーシヨンエリアの一部をオ
ンラインアクセスかつそのエリアについては書込
み禁止ビツトをオンとし、残りのエリアについて
はデバツグアクセスとしたものである。この使用
例では、デバツグプログラムが、オンライン
CPUが処理しオンラインエリア上に作つている
プラント情報を直接用いて処理できる。そのエリ
アに書込むプログラム、即ちプラント情報をとり
こむプログラムのデバツグは、本方法では不可で
あるが、それ以外の多くのプログラムのデバツグ
を、オンライン稼動状態と全く同じ状態で行うこ
とができる。
オンライン運転のCPU1は、全仮想アドレスVA
についてオンラインアクセス、デバツグ運転の
CPU2は、アプリケーシヨンエリアの一部をオ
ンラインアクセスかつそのエリアについては書込
み禁止ビツトをオンとし、残りのエリアについて
はデバツグアクセスとしたものである。この使用
例では、デバツグプログラムが、オンライン
CPUが処理しオンラインエリア上に作つている
プラント情報を直接用いて処理できる。そのエリ
アに書込むプログラム、即ちプラント情報をとり
こむプログラムのデバツグは、本方法では不可で
あるが、それ以外の多くのプログラムのデバツグ
を、オンライン稼動状態と全く同じ状態で行うこ
とができる。
第10図の使用例について、以下、詳細動作説
明を行う。オンライン運転のCPU1について、
共有メモリ接続機構8内のアドレス変換装置26
(第3図)に関し、全てのページアドレス51に
対応して、有効ビツト53を1、デバツグビツト
を0、及び書込み禁止ビツト56を0に設定し、
またフレームアドレス55を、フレームアドレス
=ページアドレスとなるように設定する。本設定
はCPU1の立上げ時に行われる。このように設
定することにより、CPU1の共有メモリ接続機
構8より出力される共有メモリアクセスは、全仮
想アドレス21(VA)に対し、デバツグフアン
クシヨン信号30が0、物理アドレス31は仮想
アドレス21と同じとなる。一方、デバツグ運転
のCPU2については、共有メモリ接続機構8内
のアドレス変換機構26(第3図)に関し、全ペ
ージアドレスについてフレームアドレス55をフ
レームアドレス=ページアドレスとなるように設
定し、キペレーテイングシステム使用エリア及び
デバツグするアプリケーシヨンプログラムの書込
むエリアについて、有効ビツト53を1、デバツ
グビツトを1、及び書込み禁止ビツト56を0に
設定し、また、アプリケーシヨンプログラムの読
出すエリアでオンラインCPU側の情報を読みた
いエリアについて、有効ビツト53を1、デバツ
グビツトを0、及び書込み禁止ビツト56を1に
設定する。本設定はCPU2の立上げ時に行われ
る。このように設定することにより、CPU2の
共有メモリ接続機構8より出力される共有メモリ
アクセスは、全仮想アドレス21(VA)に対
し、物理アドレス31は仮想アドレス21と同じ
で、オンラインCPU側の情報を使用したいエリ
アのみデバツグフアンクシヨン信号30が0でか
つ読出しのみ可能であり、その他のエリアは、デ
バツグフアンクシヨン信号30が1となる。
明を行う。オンライン運転のCPU1について、
共有メモリ接続機構8内のアドレス変換装置26
(第3図)に関し、全てのページアドレス51に
対応して、有効ビツト53を1、デバツグビツト
を0、及び書込み禁止ビツト56を0に設定し、
またフレームアドレス55を、フレームアドレス
=ページアドレスとなるように設定する。本設定
はCPU1の立上げ時に行われる。このように設
定することにより、CPU1の共有メモリ接続機
構8より出力される共有メモリアクセスは、全仮
想アドレス21(VA)に対し、デバツグフアン
クシヨン信号30が0、物理アドレス31は仮想
アドレス21と同じとなる。一方、デバツグ運転
のCPU2については、共有メモリ接続機構8内
のアドレス変換機構26(第3図)に関し、全ペ
ージアドレスについてフレームアドレス55をフ
レームアドレス=ページアドレスとなるように設
定し、キペレーテイングシステム使用エリア及び
デバツグするアプリケーシヨンプログラムの書込
むエリアについて、有効ビツト53を1、デバツ
グビツトを1、及び書込み禁止ビツト56を0に
設定し、また、アプリケーシヨンプログラムの読
出すエリアでオンラインCPU側の情報を読みた
いエリアについて、有効ビツト53を1、デバツ
グビツトを0、及び書込み禁止ビツト56を1に
設定する。本設定はCPU2の立上げ時に行われ
る。このように設定することにより、CPU2の
共有メモリ接続機構8より出力される共有メモリ
アクセスは、全仮想アドレス21(VA)に対
し、物理アドレス31は仮想アドレス21と同じ
で、オンラインCPU側の情報を使用したいエリ
アのみデバツグフアンクシヨン信号30が0でか
つ読出しのみ可能であり、その他のエリアは、デ
バツグフアンクシヨン信号30が1となる。
以上が本発明の使用例とその効果である。これ
らの使用例では、CPU2台系としたが、3台以
上の場合にも、オンラインCPU群とデバツグ
CPU群の2群に分けるこトにより、全く同様の
使用方法が可能であることは明らかである。
らの使用例では、CPU2台系としたが、3台以
上の場合にも、オンラインCPU群とデバツグ
CPU群の2群に分けるこトにより、全く同様の
使用方法が可能であることは明らかである。
以上の説明から明らかなように、本発明によれ
ば、二重化共有エモリの部分分離化により、オン
ラインCPUの使用エリアをデバツグCPUのデバ
ツグ中プログラムから防護し、かつオペレーテイ
ングシステムの使用するオンラインCPU、デバ
ツグCPU間の共通エリアを確保し、かつデバツ
グCPUからのオンラインCPUの専用エニアをの
ぞき見ることを容易に実現でき、オンライン運転
中のデバツグの安全性の確保と、デバツグの完成
度向上という効果がある。
ば、二重化共有エモリの部分分離化により、オン
ラインCPUの使用エリアをデバツグCPUのデバ
ツグ中プログラムから防護し、かつオペレーテイ
ングシステムの使用するオンラインCPU、デバ
ツグCPU間の共通エリアを確保し、かつデバツ
グCPUからのオンラインCPUの専用エニアをの
ぞき見ることを容易に実現でき、オンライン運転
中のデバツグの安全性の確保と、デバツグの完成
度向上という効果がある。
第1図は本発明の前提となるマルチコンピユー
タシステムの構成例を示す図、第2図〜第6図は
本発明の方法を実現するための実施例を示す図、
第7図〜第10図は本発明の実施例の使用例を示
す図である。 1A,1B……共有メモリ、2A,2B……
CPU、5……メモリ本体、6……メモリ制御装
置、7……CPU接続機構、8……共有メモリ接
続機構、9……処理装置、21……仮想アドレ
ス、26……アドレス変換装置、30……デバツ
グフアンクシヨン信号、31……物理アドレス、
39……書込み禁止信号、54……デバツグビツ
ト、55……フレームアドレス、56……書込み
禁止ビツト、76……デバツグフアンクシヨン信
号、77……物理アドレス、84……フアンクシ
ヨンチエツク装置、101……デバツグモードビ
ツト、102……境界レジスタ、103,104
……比較器、107……アンドゲート。
タシステムの構成例を示す図、第2図〜第6図は
本発明の方法を実現するための実施例を示す図、
第7図〜第10図は本発明の実施例の使用例を示
す図である。 1A,1B……共有メモリ、2A,2B……
CPU、5……メモリ本体、6……メモリ制御装
置、7……CPU接続機構、8……共有メモリ接
続機構、9……処理装置、21……仮想アドレ
ス、26……アドレス変換装置、30……デバツ
グフアンクシヨン信号、31……物理アドレス、
39……書込み禁止信号、54……デバツグビツ
ト、55……フレームアドレス、56……書込み
禁止ビツト、76……デバツグフアンクシヨン信
号、77……物理アドレス、84……フアンクシ
ヨンチエツク装置、101……デバツグモードビ
ツト、102……境界レジスタ、103,104
……比較器、107……アンドゲート。
Claims (1)
- 1 二重化された共有メモリを共有する処理装置
の各々についてオンラインアクセスかデバツグア
クセスかを示すアクセスモードを設定し、上記二
重化共有メモリの各々について特定アドレス範囲
を設定すると共に、上記特定アドレス範囲外のア
ドレス範囲につきそのメモリがオンラインモード
かデバツグモードかを示すフアンクシヨンモード
を設定し、上記処理装置の任意の1つから上記二
重化共有メモリへのアクセス時には、該アクセス
されるアドレスが上記特定アドレス範囲であれ
ば、前記各々の処理装置がアクセス可能となるよ
うにし、該アクセスされるアドレスが上記アドレ
ス範囲外であれば、アクセスモードがオンライン
アクセスの時はフアンクシヨンモードとしてオン
ラインモードが設定された共有メモリへアクセス
可能であり、デバツグアクセスの時はフアンクシ
ヨンモードとしてデバツグモードが設定された共
有メモリへアクセス可能となるようにしたことを
特徴とする二重化共有メモリ制御方法。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP57122151A JPS5914062A (ja) | 1982-07-15 | 1982-07-15 | 二重化共有メモリ制御方法 |
| DE8383106889T DE3382041D1 (de) | 1982-07-15 | 1983-07-13 | Mehrrechner-system mit zweifach gemeinsamen speichern. |
| EP83106889A EP0099125B1 (en) | 1982-07-15 | 1983-07-13 | Multicomputer system having dual common memories |
| US07/030,266 US4783731A (en) | 1982-07-15 | 1987-03-24 | Multicomputer system having dual common memories |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP57122151A JPS5914062A (ja) | 1982-07-15 | 1982-07-15 | 二重化共有メモリ制御方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5914062A JPS5914062A (ja) | 1984-01-24 |
| JPH041374B2 true JPH041374B2 (ja) | 1992-01-10 |
Family
ID=14828862
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP57122151A Granted JPS5914062A (ja) | 1982-07-15 | 1982-07-15 | 二重化共有メモリ制御方法 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US4783731A (ja) |
| EP (1) | EP0099125B1 (ja) |
| JP (1) | JPS5914062A (ja) |
| DE (1) | DE3382041D1 (ja) |
Families Citing this family (28)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3023425B2 (ja) * | 1987-10-09 | 2000-03-21 | 株式会社日立製作所 | データ処理装置 |
| AU616213B2 (en) * | 1987-11-09 | 1991-10-24 | Tandem Computers Incorporated | Method and apparatus for synchronizing a plurality of processors |
| US5251308A (en) * | 1987-12-22 | 1993-10-05 | Kendall Square Research Corporation | Shared memory multiprocessor with data hiding and post-store |
| US5175839A (en) * | 1987-12-24 | 1992-12-29 | Fujitsu Limited | Storage control system in a computer system for double-writing |
| US5065343A (en) * | 1988-03-31 | 1991-11-12 | Yokogawa Electric Corporation | Graphic display system for process control using a plurality of displays connected to a common processor and using an fifo buffer |
| JPH01297764A (ja) * | 1988-05-25 | 1989-11-30 | Nec Corp | プロセッサ |
| US4965717A (en) * | 1988-12-09 | 1990-10-23 | Tandem Computers Incorporated | Multiple processor system having shared memory with private-write capability |
| AU625293B2 (en) * | 1988-12-09 | 1992-07-09 | Tandem Computers Incorporated | Synchronization of fault-tolerant computer system having multiple processors |
| EP0394514B1 (de) * | 1989-04-25 | 1994-07-13 | Siemens Aktiengesellschaft | Verfahren zur Synchronisation von Datenverarbeitungsanlagen |
| US5182801A (en) * | 1989-06-09 | 1993-01-26 | Digital Equipment Corporation | Apparatus and method for providing fast data transfer between multiple devices through dynamic reconfiguration of the memory space of the devices |
| US5168555A (en) * | 1989-09-06 | 1992-12-01 | Unisys Corporation | Initial program load control |
| JPH03185530A (ja) * | 1989-12-14 | 1991-08-13 | Mitsubishi Electric Corp | データ処理装置 |
| US5295258A (en) * | 1989-12-22 | 1994-03-15 | Tandem Computers Incorporated | Fault-tolerant computer system with online recovery and reintegration of redundant components |
| US5203004A (en) * | 1990-01-08 | 1993-04-13 | Tandem Computers Incorporated | Multi-board system having electronic keying and preventing power to improperly connected plug-in board with improperly configured diode connections |
| EP0457308B1 (en) * | 1990-05-18 | 1997-01-22 | Fujitsu Limited | Data processing system having an input/output path disconnecting mechanism and method for controlling the data processing system |
| JPH04109352A (ja) * | 1990-08-29 | 1992-04-10 | Nec Corp | オンライン情報処理装置 |
| EP0569969B1 (en) * | 1992-05-12 | 1998-03-04 | Nec Corporation | Microcomputer having instruction memory storing instructions for reading out internal conditions |
| US6052801A (en) * | 1995-05-10 | 2000-04-18 | Intel Corporation | Method and apparatus for providing breakpoints on a selectable address range |
| US5659679A (en) * | 1995-05-30 | 1997-08-19 | Intel Corporation | Method and apparatus for providing breakpoints on taken jumps and for providing software profiling in a computer system |
| US5621886A (en) * | 1995-06-19 | 1997-04-15 | Intel Corporation | Method and apparatus for providing efficient software debugging |
| US5740413A (en) * | 1995-06-19 | 1998-04-14 | Intel Corporation | Method and apparatus for providing address breakpoints, branch breakpoints, and single stepping |
| WO1997011419A2 (en) * | 1995-09-08 | 1997-03-27 | Shablamm Computer, Inc. | Synchronous multi-port random access memory |
| GB2329984B (en) * | 1997-10-01 | 2002-07-17 | Thomson Training & Simulation | A Multi-Processor Computer System |
| US6292873B1 (en) * | 1998-05-22 | 2001-09-18 | Hewlett-Packard Company | Dual-ported electronic random access memory that does not introduce additional wait states and that does not cause retransmission of data during shared access |
| US20150161057A1 (en) * | 2013-12-05 | 2015-06-11 | Qualcomm Incorporated | System and method for providing client-side address translation in a memory management system |
| US9606944B2 (en) | 2014-03-20 | 2017-03-28 | International Business Machines Corporation | System and method for computer memory with linked paths |
| US12339979B2 (en) * | 2016-03-07 | 2025-06-24 | Crowdstrike, Inc. | Hypervisor-based interception of memory and register accesses |
| CN111968693B (zh) * | 2020-08-21 | 2022-08-05 | 广芯微电子(广州)股份有限公司 | 一种mcu及mcu调试接口控制方法 |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3573855A (en) * | 1968-12-31 | 1971-04-06 | Texas Instruments Inc | Computer memory protection |
| US3763474A (en) * | 1971-12-09 | 1973-10-02 | Bell Telephone Labor Inc | Program activated computer diagnostic system |
| US4025903A (en) * | 1973-09-10 | 1977-05-24 | Computer Automation, Inc. | Automatic modular memory address allocation system |
| JPS52123137A (en) * | 1976-04-09 | 1977-10-17 | Hitachi Ltd | Duplication memory control unit |
| US4231087A (en) * | 1978-10-18 | 1980-10-28 | Bell Telephone Laboratories, Incorporated | Microprocessor support system |
| US4387427A (en) * | 1978-12-21 | 1983-06-07 | Intel Corporation | Hardware scheduler/dispatcher for data processing system |
| US4354225A (en) * | 1979-10-11 | 1982-10-12 | Nanodata Computer Corporation | Intelligent main store for data processing systems |
| JPS6057091B2 (ja) * | 1980-07-02 | 1985-12-13 | パナフアコム株式会社 | 共通メモリの記憶保護方式 |
| US4503491A (en) * | 1981-06-29 | 1985-03-05 | Matsushita Electric Industrial Co., Ltd. | Computer with expanded addressing capability |
| US4439830A (en) * | 1981-11-09 | 1984-03-27 | Control Data Corporation | Computer system key and lock protection mechanism |
| US4473878A (en) * | 1981-11-23 | 1984-09-25 | Motorola, Inc. | Memory management unit |
-
1982
- 1982-07-15 JP JP57122151A patent/JPS5914062A/ja active Granted
-
1983
- 1983-07-13 DE DE8383106889T patent/DE3382041D1/de not_active Expired - Lifetime
- 1983-07-13 EP EP83106889A patent/EP0099125B1/en not_active Expired
-
1987
- 1987-03-24 US US07/030,266 patent/US4783731A/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| EP0099125A3 (en) | 1987-04-15 |
| DE3382041D1 (de) | 1991-01-17 |
| US4783731A (en) | 1988-11-08 |
| JPS5914062A (ja) | 1984-01-24 |
| EP0099125A2 (en) | 1984-01-25 |
| EP0099125B1 (en) | 1990-12-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0099125B1 (en) | Multicomputer system having dual common memories | |
| KR100303947B1 (ko) | 다중프로세서시스템그리고그의초기화기능분산및자체진단시스템그리고그방법 | |
| US5187792A (en) | Method and apparatus for selectively reclaiming a portion of RAM in a personal computer system | |
| JPWO2010097925A1 (ja) | 情報処理装置 | |
| JPH0260012B2 (ja) | ||
| JPH0713816B2 (ja) | 全体制御を特徴とするマルチプロセッサ計算システム | |
| JPS61182160A (ja) | デ−タ処理装置 | |
| JPH01169557A (ja) | 記憶制御装置 | |
| US4814977A (en) | Apparatus and method for direct memory to peripheral and peripheral to memory data transfers | |
| CA2551045C (en) | Input-output control apparatus, input-output control method, process control apparatus and process control method | |
| JPS6342294B2 (ja) | ||
| JPS60173655A (ja) | マルチプロセツサのメモリ方式 | |
| JPS6250863B2 (ja) | ||
| JPS6113261B2 (ja) | ||
| JPS6057091B2 (ja) | 共通メモリの記憶保護方式 | |
| JPH0795311B2 (ja) | 二重化処理装置 | |
| JPH056706B2 (ja) | ||
| JPH01316851A (ja) | チャネル制御方式 | |
| JPS58137066A (ja) | 計算機システムのメモリアクセス制御方法 | |
| JPS62169244A (ja) | 二重化メモリの両系同時書込方法 | |
| JPS5834856B2 (ja) | キオクセイギヨソウチ | |
| JPS6278642A (ja) | メモリ管理ユニツト制御方式 | |
| CN116662984A (zh) | 内存隔离装置以及基于内存隔离装置的多核计算系统 | |
| JPS59220865A (ja) | 二重化共有メモリのオンライン保守制御方法 | |
| JPH0772882B2 (ja) | 共通メモリ保護方式 |