JPS61248152A - プロシ−ジヤ切替制御方式 - Google Patents

プロシ−ジヤ切替制御方式

Info

Publication number
JPS61248152A
JPS61248152A JP8982385A JP8982385A JPS61248152A JP S61248152 A JPS61248152 A JP S61248152A JP 8982385 A JP8982385 A JP 8982385A JP 8982385 A JP8982385 A JP 8982385A JP S61248152 A JPS61248152 A JP S61248152A
Authority
JP
Japan
Prior art keywords
procedure
processor
executed
information
bit
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
Application number
JP8982385A
Other languages
English (en)
Other versions
JPH0217822B2 (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
NEC Corp
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 NEC Corp filed Critical NEC Corp
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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

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

Claims (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 true JPS61248152A (ja) 1986-11-05
JPH0217822B2 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)

Cited By (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 多重プロセッサシステム

Cited By (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
JPH0217822B2 (ja) 1990-04-23

Similar Documents

Publication Publication Date Title
JP3570442B2 (ja) コンピュータ
JP5131269B2 (ja) マルチプロセッシングシステム
JPS5911921B2 (ja) 数値制御装置
JP2000222226A (ja) アクセス制御装置及びアクセス方法
JPS61248152A (ja) プロシ−ジヤ切替制御方式
JP3539984B2 (ja) プロセッサ
JPS6049352B2 (ja) デ−タ処理装置
JP3022398B2 (ja) 仮想計算機方式
JP3209560B2 (ja) マイクロプロセッサ・システムの割込管理方法
JPH06324861A (ja) Cpu制御システム及び制御方法
JPS61117635A (ja) 仮想記憶制御方式
JPS59144955A (ja) 情報処理装置
JPS62125437A (ja) 付加プロセツサの制御方法
JP3341061B2 (ja) プログラマブルコントローラ
JPH0567973B2 (ja)
JPH0535507A (ja) 中央処理装置
JPH03182945A (ja) 主記憶内データ転送方式
JPH06242975A (ja) 多重情報処理システムの仮想計算機ディスパッチ方式
JPH07141252A (ja) データ処理装置
JPS6394339A (ja) 仮想計算機システム
JPH04291642A (ja) キャッシュ制御方式
JPH07319717A (ja) 情報処理装置のプログラム切替方法
JPS6212555B2 (ja)
JPH0444131A (ja) 複数os走行システムにおけるプロセッサ間通信の実行装置および方法
JPH02183342A (ja) 割込み制御装置