Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPH0217822B2 - - Google Patents
[go: Go Back, main page]

JPH0217822B2 - - Google Patents

Info

Publication number
JPH0217822B2
JPH0217822B2 JP8982385A JP8982385A JPH0217822B2 JP H0217822 B2 JPH0217822 B2 JP H0217822B2 JP 8982385 A JP8982385 A JP 8982385A JP 8982385 A JP8982385 A JP 8982385A JP H0217822 B2 JPH0217822 B2 JP H0217822B2
Authority
JP
Japan
Prior art keywords
procedure
processor
information
address
execution
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
Application number
JP8982385A
Other languages
English (en)
Other versions
JPS61248152A (ja
Inventor
Naoyuki Nomura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
Nippon Electric Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP8982385A priority Critical patent/JPS61248152A/ja
Publication of JPS61248152A publication Critical patent/JPS61248152A/ja
Publication of JPH0217822B2 publication Critical patent/JPH0217822B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Description

【発明の詳細な説明】 技術分野 本発明はプロシージヤ切替制御方式に関し、特
に主記憶装置を少なくとも部分的に共有する複数
のプロセツサからなるマルチプロセツサタイプの
情報処理装置におけるプロシージヤ切替制御方式
に関するものである。
従来技術 従来、この種のマルチプロセツサシステムで
は、機構的には高々ジヨブプロセス単位に実行プ
ロセツサの指定が可能となつているのみであり、
一つのジヨブプロセス内でのプロシージヤ切替時
に特定プロセツサへの実行の切替を実現するに
は、切替直前のプロシージヤ中に特殊な専用命令
を用いて切替処理をプログラミングしておかなけ
ればならなかつた。この特殊な専用命令は、実行
プロセツサの選択というシステム内部の情報が命
令コードに反映されるという点と、その結果特定
装置に依存した命令となるという点で一般のソフ
トウエア命令と異なるものである。
従つて、いくつかのプロシージヤに異なるプロ
セツサを割りつけて上述の方法でソフトウエアを
一旦作成した後に、性能上の理由等からプロシー
ジヤ−プロセツサ間の対応付けを変更する必要に
追られた場合、その都度プログラムを改変しなけ
ればならなかつた。ここでいうプログラムはシス
テムからみたユーザープログラムのことであるか
らアセンブリ語または機械語の姿をしており、上
述のプログラムの改変は通常システムプログラム
である翻訳プログラム(コンパイラ)中のアセン
ブリ語または機械語、中間言語等生成部分の改変
によつて実現されることになる。コンパイラの改
変作業には、専門の技術者が整つた支援環境の下
で慎重な配慮の下に当たるが、それでも尚一度立
された信頼度を落とす危険がある。
このように従来の方式では、即応性、経済性、
安全性の点で問題があるためにプログラムの改変
を不要とするべく、単純で確実な手段を予め提供
し、この手段を媒介としてプロセツサ選択情報を
システムへ引き渡すような方式が望まれるように
なる。
発明の目的 本発明は上記要求に鑑みてなされたものであ
り、その目的とするところは、プロシージヤ切替
直前のプロシージヤ中の命令語群から切替後のプ
ロシージヤの実行プロセツサに関する情報を追放
するようにし、かつユーザプログラムやシステム
プログラムを改変することなくプロシージヤープ
ロセツサの割付けを変更することが可能なプロシ
ージヤ切替制御方式を提供することにある。
発明の構成 本発明によるプロシージヤ切替制御方式は、プ
ロシージヤが実行されるべきプロセツサをこれ等
プロシージヤ毎に夫々対応して指定するプロセツ
サ指定情報格納手段と、プロシージヤの切替え要
求発生時にプロセツサ指定情報に基づいてプロシ
ージヤが実行されるべきプロシージヤを決定する
手段とを設け、このプロシージヤの実膏制御を決
定されたプロセツサへ移行するようにしたことを
特徴とするものである。
かかる構成とすることにより、プロシージヤの
プロセツサへの割付けは、そのプロシージヤを含
むジヨブプロセスの実行とは無関係に事前に予め
プロセツサ指定情報格納手段へプロセツサ指定情
報を格納しておけば良いこととなり、実行プログ
ラムの命令語中にプロセツサ指定情報が全く反映
されずに済むことになるのである。
実施例 以下、本発明の実施例につき図面を参照して説
明する。
実施例を取り上げるに当たり、次の2点に留意
して発明の効果が最大なものとなるよう意図して
いる。すなわち、第1にプロシージヤの実行プロ
セツサ情報格納手段の値を切替える方法として最
小限の手間で済ませるために、結合編集プログラ
ム実行時のパラメタ指定(指定無き場合は以前の
値を引き継ぐ)で行うようにしたこと。第2に当
該格納手段の値を読む手間を新たに増やさないた
め、プロシージヤの切替時に従来から必ず読み出
していた情報中の空き地(冗長な部分)を利用し
て格納場所とした点である。
次に本発明の実施例である高速科学演算処理、
いわゆるスーパーコンピユータについて図面を用
いて説明する。システム構成の概略が第1図に示
されており、制御プロセツサ202(以下「CP」
と略記)と算術演算プロセツサ204(以下
「AP」と略記)とは互いに異なるアーキテクチヤ
を持ち命令語体系が全く異なり、ジヨブプロセス
は各プロセツサの独自の基体ソフトウエア(以下
「OS」と略記)の管理下で実行される。システム
の起動時、全体的な制御がCP202によつての
み行われることを除けば、両プロセツサは多くの
共通の演算処理機能を備えている。AP204で
実行できる機能であれば、その実行速度はCP2
02に比べて著しく速いものとする。
主記憶装置201の内部は、主としてCP20
2の命令後を格納するための記憶領域CM201
1と、主としてAP204の命令語を格納するた
めの主記憶領域GM2012とに分かれている
が、「アクセス時間が長い」及び「アクセス方式
が限定される」等の制約の下でCP202から
GM2012、AP204からCM2011へのア
クセスも可能となつている。この意味でCPとAP
とは主記憶を共有して互いにデータを交換する。
システム制御装置203はこれら2つのプロセ
ツサ202,204、主記憶装置201、入出力
処理装置205の間に置かれ、これらの装置の要
求に従つて受動的に動作するインターフエース装
置である。尚、206は外部記憶装置を示してい
る。
第2図は本発明の内容及び動作を第1図の実施
例の装置について描いたフローチヤート例であ
る。図中太線Eで示したジヨブプロセス(計算機
システム中の実行の最小単位)J1は、比較され
る全てのジヨブプロセスよりも高い実行優先度
(両プロセツサ上)を持つものとする。図で一点
鎖線からなる枠を用いてプロセツサの2種のモー
ド、すなわちユーザーモードU1〜U6とシステ
ムモードS1〜S4とを区別しているが、前者は
一般の投入されたジヨブのユーザープログラムを
実行している状態であり、後者はジヨブ管理等シ
ステムの特権プログラムを実行している状態を示
す。
01は通常の単一プロセツサシステムでも広く
採用されているあるジヨブプロセスで使用される
全てのプロシージヤの移入点アドレスなどの情報
(PD)をまとめた表であり、プロシージヤ移入命
令「ENTER」のオペランド指定によりこの表中
の各エントリアがアクセスされる。302はプロ
シージヤ移入時に前プロシージヤの戻りアドレス
などの実行情報を退避したり、呼び出されるプロ
シージヤへのメツセージを格納したりするための
スタツクフレームと呼ばれる領域であり、移入プ
ロシージヤの深さに応じてスタツク上に積み重ね
られる。
ジヨブプロセスJ1の制御構造体はCP202、
AP204毎に存在してそれぞれ「J1のPCB」
「J1のPSB」と呼ばれる。これらは現在のプロ
セスの状態を示す情報を保持しているが、その中
に最近作成したスタツクフレームのアドレス情報
も含んでおり、プロシージヤ退出時にJ1はこの
アドレス情報によりスタツクフレームへアクセス
して前プロシージヤの情報の復元等を行う。
本発明の構成における「プロシージヤが実行さ
れるべきプロセツサをプロシージヤ毎に夫々対応
して指定するプロセツサ指定情報格納手段」に該
当するのは表301の各エントリの最下位1ビツ
ト及びスタツクフレーム302中の戻りアドレス
格納場所の最下位1ビツトである。前者はプロシ
ージヤ入時に、後者はプロシージヤ退出時に参照
されて、各プロセツサのシステムモード下の動作
(本発明の構成における「プロシージヤ切替え要
求発生時に前記プロセツサ指定情報に基づいて該
プロシージヤが実行されるべきプロセツサを決定
する手段」に該当するものであり、命令の組合
せ、それらの命令動作を担うフアームウエア・ハ
ードウエアがその実体である)により、呼び出さ
れるプロシージヤを実行すべきプロセツサに点矢
線D1,D2の如く伝達される。
ここでアドレス格納場所の最下位ビツトを借用
して支障無い事は次の理由による。ほとんどのデ
ジタル計算機では、通常の情報処理の単位(ワー
ド)がアドレス指定可能な最小単位(バイト)よ
り大きく、プロシージヤのように大きな単位の記
憶領域はワードが境界で区切られるものであるか
ら開始アドレスの下位数ビツトが0となる。そこ
で、この必ず0であることがわかつているビツト
を他の情報の格納手段に用いて、本来のアドレス
に用いる時は0にリセツトして移送してやればよ
い。本実施例では、1バイト=8ビツト、1ワー
ド=4バイトとし、利用可能となる下位2ビツト
のうち最下位1ビツトを前記格納手段として使用
する。
尚、図中欠印線で折れ線C1〜C4はプロセツ
サ間通信を示し、D1,D2は実行プロセツサ指
定情報の移動を示し、実線B1〜B3はアドレス
の指示、二重線Aはプロシージヤの諸退避情報の
流れを夫々示している。
次に、第2図に即して本実施例の動作を時間順
に折つて説明する。処理の流れの大略は、「始め
CP上で実行されていたジヨブプロセスJ1がAP
上のプロシージヤに移入してAP上で実行後、再
びCP上の元のプロシージヤに戻つてCP上で実行
される」ということである。プロシージヤは切替
え後ジヨブプロセスJ1が即実行されるのはこの
プロセスJ1がユーザージヨブプロセスの中では
最高の優先度を持つからである。
まず、CP上のJ1のあるプロシージヤ実行中
に「スタツク作成」命令を実行して本プロシージ
ヤ用のスタツクフレームを作成する。このときレ
ジスタ内容の退避などと共に戻りアドレス(次命
令「ENTER」の次の命令のアドレスであり、こ
のアドレスは必ずワード境界に置かれるものとす
る)を格納するが、このアドレスの最下位ビツト
にはCP名として“0”を格納する。AP名付
“1”とし、本アドレスをワード境界に置けない
場合、スタツクフレーム中の別な箇所にプロセツ
サ名指定ビツトを格納すればよく、いずれにせよ
本ビツトの格納場所がスタツクフレーム中のどこ
にあるかは本質的な問題ではない。
続いて「ENTER」命令の実行で、オペランド
xの値に基づいてアドレス表301の該当エント
リx′を取り出し、(最小下位1ビツト)=“1”を
みて他プロセツサ上のプロシージヤ(自プロセツ
サ上のプロシージヤは“0”とする)であること
を知り、またx′の最下位1ビツトをリセツトした
値を呼び出されるプロシージヤの開始アドレスに
展開する。「ENTER」命令後、CPはシステムモ
ードとなつてまずJ1のロールアウトを行う。
他プロセツサ(AP)への移入であることが判
明しているから、J1のCP上の制御構造体PCB
1からAP上の制御構造体PSB1へ内容(現在の
J1の状態)を移送する。こうしてプロシージヤ
移入の準備が完了して後CPからAPへ「移入要
求」の通信を送信し、APからのリプライを待ち
合わせる。リプライ受信機CPは他のジヨブプロ
セスの実行が可能となり、優先度に応じて次々と
ロールイン、実行、ロールアウト…を繰り返す。
J1のプロシージヤ切替え以前に遡つてAP上
での処理の流れをながめると、APはユーザーモ
ードU4でジヨブプロセスJ2を実行していて、
実行中にCPからのプロシージヤ移入要求通信C
1を受信した後、J2の実行を中断してシステム
モードS3となる。リプライC2を送出後、レジ
スタ内容等をJ2のPSBに退避し、J1/J2
の優先度を比較して、J2のロールアウト、J1
のロールインを続けて実行した後、APはユーザ
ーモードU5となつてJ1の実行を開始する。こ
の際、301中のx′から展開された開始アドレス
がロールインされている。プロシージヤ退出命令
「RETURN」を実行すると、APはシステムモー
ドS4となつて、J1をロールアウトし、J1の
スタツクフレーム中の退出先プロシージヤのプロ
セツサ指定情報格納場所(スタツクフレーム30
2の戻りアドレスの最下位1ビツト)からプロセ
ツサ名“0”(=CP)を読み取る。ローカルに使
用したレジスタ等はスタツクフレーム302か
ら、プロシージヤ間共通に用いる領域はPSB1
から夫々PCB1の内容を移送し、APからCPへプ
ロシージヤ退出要求通信C3を送出する。CPか
らリプライC4を受信機、J1実行中にJ2より
優先度の高いジヨブプロセスが実行可能状態にな
つていない限り、APではJ2をロールインして
ユーザーモードU6となつてJ2の実行を再開す
る。
一方CP上では、ジヨブプロセスJNの実行中に
プロシージヤ退出要求通信C3を受信後、JNを中
断してシステムモードS2となる。APへのリプ
ライC4の送出後、レジスタ内容等をJNのPCBN
に退避し、J1/JNの優先度を比較してJNをロー
ルアウト、J1をロールインした後、ユーザーモ
ードU3となつてJ1のCP上でのプロシージヤ
を再開する。
以上、第2図に即して本発明の動作の説明を述
べたが、上述の如く、プロシージヤ移入時とプロ
シージヤ退出時とに本発明が少し異なつて適用さ
れており(第2図参照)、2種類の実施例を示し
たことになる。
プロセツサ選択情報格納手段に値を格納する方
法としては、プロシージヤ退出時は前述の如くス
タツクフレーム作成の命令動作に依るが、プロシ
ージヤ移入時には、少なくともENTER命令実行
以前に予め値が定まつている必要性があり、様々
の方式が考えられる。ジヨブプロセスの実行中に
動的に格納することも可能であるが、それは特殊
な機能を実現する場合であり、ここでは先に述べ
た本発明の趣旨に沿つて、第3図Bに示す如くコ
ンパイル後の結合編集時にパラメータとしてプロ
セツサ選択情報を入力し、結合編集プログラムが
プロシージヤ移入点アドレスを生成する際に前記
格納手段に格納するものとする。
尚、第3図Aは従来方式を第3図Bと対比して
示すものであり、命令語を生成するコンパイラを
変更する方法である。
発明の効果 以上説明したように、本発明によれば、マルチ
プロセツサシステムでジヨブプロセス中の個々の
プロシージヤ単位にプロセツサを選択する場合、
各プロシージヤに対応して新たにプロセツサ選択
情報の格納手段を設けて実行プロセツサへ制御を
切り替えることにより、ユーザープログラム、シ
ステムプログラムを改変することなくプロシージ
ヤプロセツサの割り付けを変更することが可能と
なる効果がある。
【図面の簡単な説明】
第1図は本発明の実施例の概略システムブロツ
ク図、第2図は第1図のブロツクの動作を説明す
るフローチヤート、第3図は本発明の方式を従来
方式と対照して判り易く示した図である。 主要部分の符号の説明、201……主記憶装
置、202……制御プロセツサ、203……シス
テム制御装置、204……演算プロセツサ。

Claims (1)

    【特許請求の範囲】
  1. 1 主記憶装置の少なくとも1部を共有する複数
    のプロセツサからなる情報処理装置におけるプロ
    シージヤの切替制御方式であつて、プロシージヤ
    が実行されるべきプロセツサを前記プロシージヤ
    毎に夫々対応して指定するプロセツサ指定情報格
    納手段と、プロシージヤの切替え要求発生時に前
    記プロセツサ指定情報に基づいてプロシージヤが
    実行されるべきプロセツサを決定する手段とを設
    け、このプロシージヤの実行制御を決定されたプ
    ロセツサへ移行するようにしたことを特徴とする
    プロシージヤ切替制御方式。
JP8982385A 1985-04-25 1985-04-25 プロシ−ジヤ切替制御方式 Granted JPS61248152A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8982385A JPS61248152A (ja) 1985-04-25 1985-04-25 プロシ−ジヤ切替制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8982385A JPS61248152A (ja) 1985-04-25 1985-04-25 プロシ−ジヤ切替制御方式

Publications (2)

Publication Number Publication Date
JPS61248152A JPS61248152A (ja) 1986-11-05
JPH0217822B2 true JPH0217822B2 (ja) 1990-04-23

Family

ID=13981475

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8982385A Granted JPS61248152A (ja) 1985-04-25 1985-04-25 プロシ−ジヤ切替制御方式

Country Status (1)

Country Link
JP (1) JPS61248152A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02245864A (ja) * 1989-03-20 1990-10-01 Hitachi Ltd 多重プロセッサシステム

Also Published As

Publication number Publication date
JPS61248152A (ja) 1986-11-05

Similar Documents

Publication Publication Date Title
JP3659062B2 (ja) 計算機システム
JP3320358B2 (ja) コンパイル方法、例外処理方法、及びコンピュータ
JP3546678B2 (ja) マルチos構成方法
JP2539352B2 (ja) 階層型多重計算機システム
JPH07311749A (ja) マルチプロセッサシステム及びカーネル置換方法
JPH1185618A (ja) 仮想メモリ変換を制御する方法
JP5131269B2 (ja) マルチプロセッシングシステム
JP3169624B2 (ja) プロセッサ間通信方法およびそのための並列プロセッサ
JPH1173365A (ja) データ移動操作を最適化する方法
JPH0217822B2 (ja)
US6092152A (en) Method for stack-caching method frames
JPH06202877A (ja) エミュレーション装置
JP3209560B2 (ja) マイクロプロセッサ・システムの割込管理方法
JPH0519179B2 (ja)
JP3022398B2 (ja) 仮想計算機方式
JPH06324861A (ja) Cpu制御システム及び制御方法
JPH07114517A (ja) マルチプロセッサシステムのプログラム実行制御方式
JPS61117635A (ja) 仮想記憶制御方式
JPH05265846A (ja) メモリ管理方式
JPH0535507A (ja) 中央処理装置
JPH05108374A (ja) マルチタスク実行装置
JPH06242975A (ja) 多重情報処理システムの仮想計算機ディスパッチ方式
JPH04291642A (ja) キャッシュ制御方式
JPH04302352A (ja) マルチプロセッサシステム
JPH0738168B2 (ja) データ処理装置