JPS63138432A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPS63138432A
JPS63138432A JP28431586A JP28431586A JPS63138432A JP S63138432 A JPS63138432 A JP S63138432A JP 28431586 A JP28431586 A JP 28431586A JP 28431586 A JP28431586 A JP 28431586A JP S63138432 A JPS63138432 A JP S63138432A
Authority
JP
Japan
Prior art keywords
register
registers
general
management
task
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.)
Pending
Application number
JP28431586A
Other languages
English (en)
Inventor
Hidetaka Nishino
西野 秀毅
Hiroshi Watanabe
坦 渡辺
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP28431586A priority Critical patent/JPS63138432A/ja
Publication of JPS63138432A publication Critical patent/JPS63138432A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、情報処理装置に関し、特に、冗長な汎用レジ
スタの操作を排除して、効率的なプログラムを実行する
ことが可能な情報処理装置に関する。
[従来技術〕 情報処理装置において、プログラムを実行する場合、タ
スク群やサブルーチン群にとって、共通のハードウェア
資源である中央演算装置内の汎用レジスタの管理は不可
欠である。例えば、あるタスクの実行時に2割り込みや
スーパーバイザ呼び出し等が発生すると、そのタスクの
実行を一時中断し、その中断の後、ある時点で再開する
。この再開のため、汎用レジスタを管理し、汎用レジス
タの値の退避、および回復する必要がある。
このような汎用レジスタの管理については、例えば、′
オペレーティング・システム、Madniek、Don
ovan著、池田克夫訳2日本コンピュータ協会、第4
61頁〜465頁″に記載されている方法では、その中
断時点の汎用レジスタの値を保存し、実行再開時に、汎
用レジスタの値を、その保存さオtた値に入れ換えるた
め、全ての汎用レジスタ用の退避領域を確保して、汎用
レジスタの値の退避、および回復を実現している。
〔発明が解決しようとする問題点〕
上記従来技術では、汎用レジスタの値の退避。
および回復については、退避領域を確保して、全ての汎
用レジスタの値を退避する方式を採用しているため、無
駄な退避や回復をすることがあり、効率的なプログラム
の実行が難しいという問題があった。
本発明の目的は、タスク切り換えやサブルーチン呼び出
し等が発生した場合、無駄な汎用レジスタの退避、およ
び回復を減少することが可能な情報処理装置を提供する
ことにある。
〔問題を解決するための手段〕
上記目的を達成するため、本発明の情報処理装置は、中
央演算処理装置内の多数の汎用レジスタに対し、機械命
令語により、その汎用レジスタを参照する情報処理装置
において、上記汎用レジスタの値を参照する際、その値
が以降も再度参照される値か否かを指定する生死フラグ
、その生死フラグと、汎用レジスタとを関係付けて、全
ての汎−用レジスタを管理する手段(管理レジスタ)、
および、その管理レジスタに生の表示がある汎用レジス
タのみを、選択的に退避・回復させる命令語を設けたこ
とに特徴がある。
〔作用〕
本発明においては、各々の汎用レジスタの中、何れの汎
用レジスタに退避、および回復が必要であるかを、常に
モニタする管理レジスタを設け、この管理レジスタを参
照して、必要な汎用レジスタのみを、退避、および回復
させる。
タスク切り換え等において、退避、および回復が必要な
汎用レジスタは、生きている汎用レジスタである。なお
、生きている汎用レジスタとは、その時点以降、その値
が有効であり、再度、参照される汎用?ジスタである。
また、死んでいる汎用レジスタとは、その時点以降、そ
の値が無効であり、再度、参照されることのない汎用レ
ジスタである。
その汎用レジスタに対する参照(リード)があると、そ
の参照以降の生死を、プログラマ、またはコンパイラが
1機械命令語で指定する。従って。
汎用レジスタに値を設定(ロード)する場合、その汎用
レジスタの生死番;関する指定は不要である。
汎用レジスタの生死の表現については、管理レジスタは
、1個の汎用レジスタにつき、1ビツトで表現するため
、汎用レジスタの個数分のビット数を持つ。また、機械
命令語において、オペランドの汎用レジスタ番;対する
生死の指定方法は、オペランド情報の拡張、あるいは、
オペレーション・コードの拡張の何れを用いてもよい。
例えば、アセンブリ語では、その記法との互換性を保持
するため、特別の記法の追加がなければ、その汎用レジ
スタが有効であることを示す、従って、オペランドのレ
ジスタが無効である場合のみ、レジスタ番号の前後に特
定の記号を付け゛る方法等で表現する。
この場合、]が特別の記号であれば、5TORE コR
1+○PRという命令語により、R1がMOVE命令以
降、無効となることを意味する。
また、5TORE  R1,OPRという命令語により
、R1は、この命令以降も有効であることを意味する。
なお、高級言語では、コンパイラが出力する命令語に対
して、生死の指定を行うため、ソースプログラムを変更
する必要はない。
汎用レジスタの生死状態を示す管理レジスタ情報は、タ
スク毎に異なるため、各タスクは、個別に管理レジスタ
情報を保存する領域、つまり、管理レジスタ退避領域を
、主メ、モリに確保する。
また、タスク管理のために必要な2つの機能。
つまり、(1)管理レジスタから管理レジスタ退避領域
へのデータ転送機能、および、(2)管理レジスタ退避
領域から管理レジスタへのデータ転送機能に対応して、
5AVECNT (e a)と、RE S T ORE
 CN T (e a )とを、命令語として新・設す
る。なお、<e a>は管理レジスタ退避領域の先頭の
有効アドレスである。
さらに、2つの機能、つまり、(3)管理レジスタを参
照し、有効な全ての汎用レジスタを、主メモリのし、ジ
スタ退避領域に退避するため、データ転送を行う機能、
および、(4)管理レジスタを参照し、管理レジスタ退
避領域から、有効な全ての汎用レジスタに対して、デー
タ転送を行う機能を設け、各機能に対応して、5AVE
REG<e a>と、RE S T ORE RE G
 < e a >とを、命令語として新設する。なお、
(e a)は、管理レジスタ退避領域の有効アドレスで
あり、また、(3)において、有効な汎用レジスタの転
送後、全ての汎用レジスタは無効となる。
このように、新たに設けた5AVECNT、RESTO
RECNT、5AVEREG、およびRESTORER
EGの各命゛令は、一般に命令の実行時間が長いため、
特定の緊急割り込みに対して、命令語の実行中の中断を
許可することもある。
〔実施例〕
以下、本発明の一実施例を図面により説明する。
第1図は、本発明の一実施例の情報処理装置における中
央演算装置の構成図、第2図は本発明の一実施例の情報
処理装置における中央演算装置。
および主メモリ内の関連データ項目の説明図、第3図は
本発明の一実施例における管理レジスタ。
および汎用レジスタの退避・回復フローチャートである
本実施例の情報処理装置における中央演算装置・は、第
1図のように、レジスタ・アクセス回路4゜汎用レジス
タ5.ビット・アドレス変換回路6゜行デコーダ7、列
デコーダ8.および管理レジスタ9を備え、命令レジス
タ10の内容に従い、演算処理を行う、また、汎用レジ
スタ5参照(リード)がある全ての命令語1に対して、
参照する汎用レジスタ5毎に、生死フラグ2を設定する
。なお、レジスタ番号部3には、命令語lのオペランド
のレジスタ番号が保持される。
レジスタ・アクセス回路4は、レジスタ番号部3のレジ
スタ番号の指定に従い、各汎用レジスタ5をアクセスす
る。
管理レジスタ9は、レジスタ番号部3のレジスタ番号が
指定した汎用レジスタ5の生死フラグ2情報を格納し、
この格納の際のビット位置は、そのレジスタ番号情報を
基に、ビット・アドレス変換回路61行デコーダ7、お
よび列デコーダ8により、求められる。
また、本実施例の情報処理装置は、第2図のように、中
央演算装置1°6.および主メモリ17を備え、タスク
管理を行う場合、中央演算装置16内に、各々のタスク
の共通の資源である汎用レジスタ5.および管理レジス
タ9を設け、タスク実行中の割り込み等による中断に備
えて、それらのレジスタの値を退避するため1例えば、
タスクAのタスク・データ領域18.および、タスクB
のタスク・データ領域19内に、それぞれのタスクに対
応する管理レジスタ退避領域゛1o、および12と、レ
ジスタ退避領域11.および13とを設定する。また、
管理レジスタ退避領域10,32゜およびレジスタ退避
領域11.13の各先頭番地は、点線、および矢印で示
すように、主メモリ17内のオペレーティング・システ
ムのデータ領域20にあるタスク制御ブロック(以下T
CBと略す)14.15内に登録される。
本実施例におけるオペレーティング・システムの変更、
および追加処理については、第3図のように、例えば、
タスクの中断処理では(301)、管理レジスタ9を参
照することにより(302)、有効な汎用レジスタ5の
みを退避しく303)、管理レジスタ9も管理レジスタ
退避領域10,12へ退避する(304)。
この処理をアセンブラで記述すると、有効な汎用レジス
タ5のみを退避する命令として、例えば、5AvERE
G d2 (R1)を設け、管理レジスタ9を退避する
命令として、5AVECNTd□ (R1)を設ける。
なお、この場合、TCB14.15の先頭番地は汎用レ
ジスタR1に格納され、管理レジスタ退避領域10.1
2の番地は、TCBI4,15の先頭からa1バイト目
に格納され、レジスタ退避領域11.13の番地は、T
CB14.15の先頭からd2バイト目に格納されてい
る。
また、そのタスクの中断が解除され、タスクの再開処理
を行う場合(305)、まず、管理レジスタ9を中断時
点の内容に復帰するため、RESTORECNTという
命令により、管理レジスタ退避領域10.12から管理
レジスタ9に値をロードする(306)、次に、この管
理レジスタ9に従い、生きているレジスタに対してのみ
、RESTOREREGという命令により、レジスタ退
避領域11.13から値をロードする(307)。
この処理をアセンブラで記述すると、タスクの管理レジ
スタの値をロードする命令として、例えば、RE S 
T ORE CN T  d l  (R1)を設け、
その管理レジスタ9に従い、有効な汎用レジスタ5にの
み、レジスタ退避領域11.13から値をロードする命
令として、RESTOREREGd2 (R1)を設け
る。なお、d□、d2.およびR,は、タスクの中断処
理の場合と同様の値を示す。
こうして、有効な汎用レジスタ5の値のみを退避し、回
復する。
〔発明の効果〕
本発明によれば、内蔵レジスタの状態を表現する管理レ
ジスタと、これに関連する命令を設けることにより、大
量のレジスタを備えた計算機において、タスク・スイッ
チの際、レジスタの無駄な退避、および回復を減少する
ことができるため、その計算機の効率を高めることが可
能である。
【図面の簡単な説明】
第1図は本発明の一実施例の情報処理装置における中央
演算装置゛の構成図、第2図は本発明の一実施例の情報
処理装置における中央演算装置、および主メモリ内の関
連データ項目の説明図、第3図は本発明の一実施例にお
ける管理レジスタ、および汎用レジスタの退避・回復フ
ローチャートである。 1:命令語、2:生死フラグ、3:レジスタ番号部、4
:レジスタ・アクセス回路、5:汎用レジスタ、6:ビ
ツトアドレス変換回路、7:行デコーダ、8:列デコー
ダ、9:管理レジスタ、10:命令レジスタ、11,1
3:レジスタ退避領域、10.12:管理レジスタ退避
領域、14゜15:タスク制御ブロック(TCB)、1
6 :中央演算装置、17:主メモリ、18,19:タ
スク・データ領域、20:主メモリ内のオペレーティン
グ・システムのデータ領域。 第7目 %Z目 第3凶

Claims (1)

    【特許請求の範囲】
  1. 1、中央演算装置に内蔵された多数の汎用レジスタに対
    し、機械命令語により、該汎用レジスタを参照する情報
    処理装置において、上記汎用レジスタの値を参照すると
    きに、該値が該参照以降も、再度参照される値か否かを
    指定する手段、該指定手段と該汎用レジスタとを関係付
    けて、全ての該汎用レジスタを管理する手段、および、
    該管理手段の表示に従い、該参照以降も参照される値を
    持つ該汎用レジスタのみを、選択的に退避・回復させる
    手段を設けたことを特徴とする情報処理装置。
JP28431586A 1986-12-01 1986-12-01 情報処理装置 Pending JPS63138432A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28431586A JPS63138432A (ja) 1986-12-01 1986-12-01 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28431586A JPS63138432A (ja) 1986-12-01 1986-12-01 情報処理装置

Publications (1)

Publication Number Publication Date
JPS63138432A true JPS63138432A (ja) 1988-06-10

Family

ID=17676957

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28431586A Pending JPS63138432A (ja) 1986-12-01 1986-12-01 情報処理装置

Country Status (1)

Country Link
JP (1) JPS63138432A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05143331A (ja) * 1991-11-20 1993-06-11 Pfu Ltd 仮想記憶制御における命令中断情報制御方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05143331A (ja) * 1991-11-20 1993-06-11 Pfu Ltd 仮想記憶制御における命令中断情報制御方式

Similar Documents

Publication Publication Date Title
JPH09212371A (ja) レジスタ退避及び復元システム
JPH08505965A (ja) コンテキスト切り換え装置及び方法
EP0217168A2 (en) Method for processing address translation exceptions in a virtual memory system
JPH01161442A (ja) レジスタ退避・回復方式
JPS63138432A (ja) 情報処理装置
US4797816A (en) Virtual memory supported processor having restoration circuit for register recovering
JPH01217635A (ja) レジスタ退避方式
JP3163196B2 (ja) 仮想記憶制御における命令中断情報格納制御方法
JPH11167494A (ja) 演算処理装置、及び演算処理装置のレジスタ管理方法
JP2002149417A (ja) レジスタ退避・回復方法
JPH0554141B2 (ja)
JPS62125437A (ja) 付加プロセツサの制御方法
JPH07120286B2 (ja) 浮動小数点関数擬似命令処理方法
JPH04293159A (ja) ベクトルデータ処理装置
JPH03184127A (ja) レジスタ退避制御方法
JPH0283743A (ja) 情報処理装置
JPS6353650A (ja) 計算機
JPS6356737A (ja) マルチタスク処理装置
JPS61184644A (ja) 仮想計算機システム制御方式
JPH03182945A (ja) 主記憶内データ転送方式
JPH10289113A (ja) 計算機のレジスタコンテキストの保存/復元方式
JPS6394339A (ja) 仮想計算機システム
JPS63310040A (ja) デ−タ採取方式
JPH0363827A (ja) レジスタ退避方式
JPS626329A (ja) デ−タ転送回路