JPH0612333A - 情報処理装置の記憶保護方式 - Google Patents

情報処理装置の記憶保護方式

Info

Publication number
JPH0612333A
JPH0612333A JP16728392A JP16728392A JPH0612333A JP H0612333 A JPH0612333 A JP H0612333A JP 16728392 A JP16728392 A JP 16728392A JP 16728392 A JP16728392 A JP 16728392A JP H0612333 A JPH0612333 A JP H0612333A
Authority
JP
Japan
Prior art keywords
key
protection
main memory
value
storage
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
JP16728392A
Other languages
English (en)
Inventor
Nobuyuki Shimura
伸之 志村
Kazuo Hibi
一夫 日比
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
Hitachi Computer Engineering Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Computer Engineering 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 Hitachi Ltd, Hitachi Computer Engineering Co Ltd filed Critical Hitachi Ltd
Priority to JP16728392A priority Critical patent/JPH0612333A/ja
Publication of JPH0612333A publication Critical patent/JPH0612333A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

(57)【要約】 【目的】本発明の目的は、各プログラム間の記憶保護を
確保した上で、より柔軟な記憶保護機構を提供する事に
ある。 【構成】キー制御記憶保護機構を具備する情報処理装置
に於いて、16ビットのマスクレジスタを設ける。マス
クレジスタの各ビットは主記憶キーの0から15に対応
し、「1」であるビットに対応する主記憶キーに対して
はアクセス許可されるようにする。さらに、識別キーレ
ジスタを設け、保護キーと識別キーが一致したときのみ
マスクレジスタによるアクセス許可が行われる。 【効果】マスクレジスタと識別キーレジスタに設定する
値を変更する事により、本記憶保護構成の具体的キーの
値を柔軟に変更する事ができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、情報処理装置の記憶保
護機構に係わり、とりわけ、柔軟性のある主記憶保護機
構を具備する情報処理装置の提供に好適な記憶保護機構
に係わる。
【0002】
【従来の技術】計算機のソフトウェア利用状況におい
て、マルチタスプログラミングはごく一般に行われてい
る。このような状況の中では、各プログラム間の記憶保
護が重要である。大型計算機に於ける記憶保護機構は複
数のメカニズムが採用されているが、その基本となるの
は、多重仮想空間によるプログラム動作空間の分割と、
キー制御記憶保護である。
【0003】多重仮想空間によるプログラム動作空間の
分割により、各プログラム間の記憶保護は完全に達成さ
れる。しかしながら、一つのプログラム空間内に於いて
もユーザープログラムとシステムプログラムが混在する
のが通常であり、それらプログラム間での記憶保護を実
現するため、キー制御記憶保護が用いられる。
【0004】このキー制御記憶保護機構の基本的動作は
以下の通りである。
【0005】(1)主記憶装置を4096バイトの大きさ
のブロックに分割されており、 (2)各ブロックには、主記憶キーが設定され、 (3)主記憶アクセス元装置には保護キーが割り当てられ
る。
【0006】(4)主記憶アクセス時には、アクセス元の
保護キーと被アクセス主記憶ブロックの主記憶キーが比
較され、基本的には、両者が一致しないと該アクセスは
許可されない。
【0007】
【発明が解決しようとする課題】一つのプログラムが動
作するときには、スーパーバイザプログラムにより、該
プログラムに割り当てた主記憶領域には然るべき主記憶
キーが設定され、該プログラムに対しても然るべき保護
キーの使用が許可される。
【0008】もし同一空間内に、特権レベルの異なるプ
ログラムが混在する場合は、各プログラムの主記憶領域
には別々の主記憶キーが設定される。たとえば、特権レ
ベルAのプログラムに割り当てられた領域には主記憶キ
ーとして14が設定され、特権レベルBのプログラムに
割り当てられた領域には主記憶キーとして15が設定さ
れる。
【0009】さきに述べた従来技術によれば、例えば特
権レベルAのプログラムが両プログラムの領域をアクセ
スしようとする場合、その都度保護キーを書き換える必
要がある。例えば、特権レベルAのプログラムが自分自
身の主記憶領域をアクセスするときには、保護キーとし
て14を使用しなければならない。一方、特権レベルA
のプログラムが特権レベルBの主記憶領域をアクセスす
るときには、保護キーとして15を使用しなければなら
ない。すなわち、いちいち保護キーを変更する必要があ
るのであって、これは、プログラムの性能上無視できな
いオーバーヘッドとなりうる。
【0010】ここで、若干の考察を行ってみよう。かか
る事態の中で、以下事実、および、要求はもっともなも
のであろう。
【0011】(1)一般論としてシステムプログラムはユ
ーザープログラムよりも信頼性が高い、 (2)システムプログラムはユーザープログラム領域を場
合によっては頻繁にアクセスする必要がある。
【0012】(3)ユーザープログラムの不良によってシ
ステムプログラム領域を破壊される事態だけは避けた
い。
【0013】もし、記憶保護機構を改造し、たとえば、
リング記憶保護の概念を導入すれば解決できる事は明ら
かである。
【0014】しかし、それは、多大なハードウェアの変
更を伴うものである事は想像にかたくない。
【0015】ならば、特定の保護キーと主記憶キーとの
組み合わせのみ例外的にアクセスを許可する事でかかる
事態を乗り切ろうとする事は、汎用大型計算機を設計し
ている立場からみると、かなり現実的な話しである。
【0016】例えば、目下、先にあげた理由により性能
的に問題となっているプログラムがあり、そのプログラ
ムは、特権レベルAのサブプログラムと、特権レベルB
のサブプログラムからなり、それぞれに割り当てられた
主記憶領域の主記憶キーがそれぞれ14と15と判明し
ているならば、その組み合わせに限ったハードウェアの
変更を行えばよい。具体的には、保護キーが14なら
ば、従来の主記憶キー14のみならず、主記憶キー15
もアクセス許可されるようにする。
【0017】これならば、さほどハードウェアの変更を
伴わなくても実現できる。が、保護キーと主記憶キーの
他の組み合わせについては全く対応できない。どうして
も対応せざるをえないならば、再度のハードウェアの変
更を実施しなければならない。
【0018】本発明の目的とするところは、従来のキー
制御記憶保護機構より柔軟な記憶保護機構を、従来のキ
ー制御記憶保護機構ハードウェアに大幅な変更を加える
事なく実現する事にある。
【0019】より具体的な本発明の目的は、以下の点に
ある。
【0020】(1)従来からのキー制御記憶保護機構を
具備する計算機システムに於いて、主記憶装置をアクセ
スする際、アクセス元が使用する一つの保護キーとは異
なる主記憶キーが設定されている記憶ブロックをアクセ
スできる様にする事。
【0021】(2)上記目的を、大幅なハードウェアの変
更なく実現すること。しいては、ハードウェアコストの
増加を招くことなく実現すること。
【0022】(3)任意の保護キーと主記憶キーの組み合
わせでも、(1)の目的を達成できる事。
【0023】(4)前記第3の目的を、ハードウェアの変
更を行う事無く、達成できる事。
【0024】
【課題を解決するための手段】
(1)アクセス元が使用しうる保護キーと、被アクセス主
記憶ブロックに設定しうる主記憶キーとの全ての組み合
わせごとに固有の、あるいは、一部の組み合わせごとに
固有の、記憶保護判定情報を保持する第1の手段。
【0025】(2)主記憶装置のアクセスが行われる際、
前記第1の手段により保持されており、アクセス元の使
用する保護キーと被アクセス主記憶ブロックが保持する
主記憶キーによって決定される、唯一の記憶保護判定情
報を読み出す第2の手段。
【0026】(3)前記第2の手段で読み出された記憶保
護判定情報に従って、当該アクセスの妥当性を決定する
第3の手段。
【0027】
【作用】前記第1の手段は、アクセス元が使用しうる保
護キーと、被アクセス主記憶ブロックに設定しうる主記
憶キーとの全ての組み合わせごとに固有の、あるいは、
一部の組み合わせごとに固有の、記憶保護判定情報を保
持する。
【0028】アクセス元が主記憶装置をアクセスする
際、アクセス元が使用する保護キーと、被アクセス主記
憶ブロックに設定されている主記憶キーとにより、前記
第2の手段は、前記第1の手段が保持している、当該保
護キーと主記憶キーの組み合わせに唯一の記憶保護判定
を読みだす。
【0029】第2の手段により読み出された記憶保護判
定情報に従い、前記第3の手段は当該アクセスの妥当性
を判定する。
【0030】
【実施例】本発明の一実施例を、図1を用いて説明す
る。
【0031】図1は、本発明の1実施例を説明するため
の機能ブロック図である。
【0032】中央処理装置(以下CPUと略す)101
は、本実施例に示す情報処理装置の中心を成すものであ
る。
【0033】主記憶装置(以下MSUと略す)102
は、CPU101が実行すべき命令を保持し、また、そ
の命令に必要なデータを保持する。
【0034】CPU101はMSU102に格納されて
いる命令を読みだし、解読し、実行する。命令の実行に
際しては、多くの場合、やはりMSU102に格納され
ているデータをアクセス(参照あるいは更新)する。
【0035】主記憶制御装置(以下MCUと略す)10
3は、CPU101がMSU102をアクセスする際の
制御を行う。
【0036】記憶保護制御装置(以下PCUと称す)1
04は、CPU101がMSU102をアクセスする
際、そのアクセスの権限をチェックする。
【0037】以下、順次各装置についての詳細を説明す
る。
【0038】〔中央処理装置101〕中央処理装置(C
PU)101は、本実施例に示す情報処理装置の中心を
なす装置である。
【0039】マイクロプログラム110は、CPU10
1全体の制御を行う。
【0040】主記憶装置アクセス要求回路(以下REQ
と称す)111は、CPU101がMSU102に対し
てアクセス動作を行う際の制御を行う。
【0041】プロセキサー(以下PKYと称す)112
は、CPU101がMSU102をアクセスする際の保
護キーの値を保持するレジスタであり、信号線10を介
してマイクロプログラム110によりデータの設定・読
みだしが行われる。
【0042】データアドレスレジスタ(以下DARと略
す)113は、CPU101がMSU102をアクセス
する際のデータアドレスを保持するレジスタである。
【0043】CPU101がMSU102をアクセスす
る時、REQ111は、PKY112が保持する保護キ
ーと、DAR113が保持するデータアドレスとそれぞ
れ信号線11,12を介してMCU103へ送出する。
【0044】CTR114は、マイクロプログラム11
0により読み書きされるレジスタである。本実施例に於
いて、CTR114は32ビットのレジスタであり、各
々のビットを順にビット0、ビット1・・・ビット3
0、ビット31として識別する。CTR114ビット0
の保持する値は、信号線14を介してPCU104へ送
出される。なお、CTR114ビット0の値は、以下説
明に於いて大切な役割をはたすが、本発明に固有のもの
ではない。
【0045】主記憶装置(MSU)102は、CPU1
01が実行すべき命令を保持し、また、その命令の実行
に必要なデータを保持する。
【0046】MSU102が保持するデータは、MCU
103によってその読み書きが制御される。
【0047】MSU102は、記憶保護機能を実現する
ために複数の記憶ブロックに分割されている。本実施例
に於いては、各記憶ブロックは4096バイトの大きさ
である。各記憶ブロックは、それぞれに固有の主記憶キ
ーを設定することができる。実際には、各記憶ブロック
に設定されている主記憶キーは、PCU104内に保持
されている。
【0048】主記憶制御回路(MCU)103は、CP
U101がMSU102をアクセスする際の制御を行
う。
【0049】テンポラリキーレジスタ103(以下TK
R130と称す)は、CPU101内のPKY112か
ら信号線11を介して送出されてくる保護キーを一時的
に保持するレジスタである。その保持する値は、信号線
20を介してPCU104へ送出される。
【0050】テンポラリアドレスレジスタ131(以下
TAR131と称す)は、CPU101内のDAR11
3から信号線12を介して送出されてくるアドレスを一
時的に保持するレジスタである。その保持する値は、M
SU102へアクセス制御に用いられる。さらに、その
保持する値は、信号線21を介してPCU104へ送出
される。
【0051】記憶保護制御装置(PCU)104は、C
PU101がMSU102をアクセスする際、そのアク
セスの権限をチェックする。
【0052】主記憶キーアレイ(以下SKAと略す)1
40は、MSU102の各記憶ブロックごとの主記憶キ
ーを保持するメモリである。
【0053】デコーダー(以下DECと略す)141
は、MCU103から信号線21を介して送出されてく
るアドレスをデコードし、そのアドレスの記憶ブロック
に対応する主記憶キーを選択するデコーダである。選択
された主記憶キーは、信号線40へ送出される。
【0054】比較回路(以下CMPと略す)142は、
TKR130から信号線20,42と経由して入力され
る値と、SKA140から信号線40,41と経由して
入力される値とを比較し、比較結果が等しいならば
「1」なる値を、等しくないならば「0」なる値を信号
線43へ出力する比較回路である。
【0055】識別キーレジスタ(以下IKYと略す)1
43は、信号線15,44を介してマイクロプログラム
110によりその値を設定・読み出しされるレジスタで
ある。その保持する値は、信号線45を介して比較回路
144へ出力される。
【0056】比較回路(CMP)144は、TKR13
0から信号線20,46と経由して入力される値と、I
KY143から信号線45を介して入力される値とを比
較し、比較結果が等しいならば「1」なる値を、等しく
ないならば「0」なる値を信号線47へ出力する比較回
路である。
【0057】アクセスマスクレジスタ(以下AMRと略
す)145は、信号線15,48を介してマイクロプロ
グラム110によりその値を設定・読み出しされるレジ
スタである。本実施例に於いては、AMR145は16
ビットのレジスタであり、各々のビットを順にビット
0、ビット1・・・ビット14、ビット15として識別
する。各ビットが保持する値は「0」か「1」であり、
それらの値は信号線群49を介して選択回路146へ出
力される。
【0058】信号線群49は、各々がAMR145の各
ビットに対応した16本の信号線であり、AMR145
が保持する各ビットの値をSEL146へ入力する。
【0059】選択回路(以下SELと略す)146は、
SKA140から信号線40,51を経由して入力され
る値に従い、信号線AMR145から信号線群49を介
して入力される16個の入力から1つを選択して信号線
50へ出力する選択回路である。本実施例に於いては、
信号線51は4ビット幅であり、従って、そのとりうる
値は0から15(10進)までの16種類である。そし
て、この値がnの時AMR145のビットnから送出さ
れてくる値を信号線50へ出力する。例えば、この値が
3ならば、AMR145のビット3から送出されてくる
値を、この値が14ならば、AMR145のビット14
から送出されてくる値を出力する。
【0060】論理積回路(以下ANDと略す)147
は、CMP144から信号線47を介して入力される値
と、SEL146から信号線50を介して入力される値
との論理積をとり、その結果を信号線52へ出力する2
入力の論理積回路である。2つの入力が共に「1」の時
のみ「1」なる値を、そうでないならば「0」なる値を
出力する。
【0061】ここで、IKY143,CMP144,A
MR145,SEL146,AND147は、本発明に
固有の効果をもたらす為に、きわめて重要な役割をはた
す。これらがいかにして本発明の効果をもたらすかは、
以下の説明の中で明らかになるであろう。
【0062】論理積回路(AND)148は、CTR1
14から信号線14を介して入力される値と、AND1
47から信号線52を介して入力される値との論理積を
とり、その結果を信号線53へ出力する2入力の論理積
回路である。2つの入力が共に「1」の時のみ「1」な
る値を、そうでないならば「0」なる値を出力する。論
理和回路(以下ORと略す)149は、CMP142か
ら信号線43を介して入力される値と、AND148か
ら信号線53を介して入力される値との論理和をとり、
その結果を信号線54へ出力する2入力の論理和回路で
ある。2つの入力のいずれかが「1」ならば「1」なる
値を、そうでないならば「0」なる値を出力する。
【0063】判定回路150は、OR149から信号線
54を介して入力される値を元にアクセス権限の判定を
行う判定回路である。本実施例に於いては、信号線54
から入力される値が「1」ならばアクセスを許可し、
「0」でならば不許可とする。判定が不許可の場合、
「1」なる値をアクセス不許可信号として信号線55へ
出力する。
【0064】このアクセス不許可信号は、信号線55,
56を経由してMCU103へ伝達される。信号線56
よりアクセス不許可信号を受けとったばあい、MCU1
03は、目下のMSU102に対するアクセス動作を中
止する。
【0065】また、アクセス不許可信号は、信号線5
5,57を経由してREQ111へ伝達される。信号線
57よりアクセス不許可信号を受けとったばあい、RE
Q111は、記憶保護例外処理を行う。
【0066】では次に、以上述べてきた各機能部位が、
いかなる役割を果たすかを説明する。
【0067】いま、CPU101がMSU102をアク
セスしようとしている。そして、そのアクセス対象とな
るアドレスを含む記憶ブロックをSBとする。さらに、
当該記憶ブロックに対応する主記憶キー:SKYはSK
A140に設定されているものとする。
【0068】また、CPU101の目下のアクセス権を
示す保護キー:PKYがPKY112に設定されている
ものとする。
【0069】なお、今回の場合、CTR114ビット0
には「0」なる値が設定されているものとする。
【0070】先ず、PKY112の保持する保護キー:
PKYが、信号線11を介してMCU103へ送出され
る。同時に、アクセス対象となるアドレスがDAR11
3へ設定され、さらに、そのアドレスは信号線12を介
してMCU103へ送出される。
【0071】MCU103は、信号線11,12を介し
て伝達される保護キー:PKYとアクセス対象アドレス
とをそれぞれTKR130,TAR131に保持する。
そしてTAR131の保持するアドレスに従い、MSU
102のアクセス動作を開始する。
【0072】同時にMCU103は、TKR130が保
持する保護キー:PKYと、TAR131が保持するア
クセス対象アドレスは、それぞれ信号線20,21を介
してPCU104へ送出する。
【0073】PCU104は、信号線21を介して伝達
されるアクセス対象アドレスをDEC141へ入力す
る。DEC141は、SKA140が保持している多数
の主記憶キーの中から、アクセス対象ブロックSBに対
応する主記憶キー:SKYを選択し、信号線40,41
を経由してCMP142へ入力する。
【0074】CMP142のもう一方の入力は、TKR
130から信号線20,42を経由して伝達される保護
キー:PKYである。
【0075】CMP142は、上記2入力の比較を行
い、信号線43に出力する。すなわち、 「主記憶キー:SKY」=「保護キー:PKY」 なる条件が成立したときのみ信号線43へ「1」なる値
が出力され、 「主記憶キー:SKY」≠「保護キー:PKY」 ならば、信号線43へは「0」なる値が出力される。
【0076】CMP142の出力信号は信号線43を介
してOR149へ入力される。OR149のもう一方の
入力は、信号線53を介して入力されるAND148の
出力である。AND148の一つの入力は信号線14を
介して入力されるCTR114ビット0の値であるが、
CTR114ビット0には前もって「0」なる値が設定
されているのでAND148の出力は常に「0」であ
り、その値が信号線53を介してOR149へ入力され
ている。従って、OR149の出力は信号線43を介し
て入力されるCMP142の出力信号の値となり、それ
は、信号線54を介して判定回路150へ入力される。
【0077】判定回路150は、信号線54を介して入
力される値が「1」ならばアクセス許可と判定し、
「0」ならばアクセス不許可と判定するのであるから、
以上まとめるとアクセス許可となる条件は以下のように
なる。
【0078】『「主記憶キー:SKY」と「保護キー:
PKY」とが等しい』・・・(条件1) 次に、本発明に
固有の働きについて説明する。
【0079】先ず、一般的な動作を図1に即して説明す
る。
【0080】いま、CPU101がMSU102をアク
セスしようとしている。そして、そのアクセス対象とな
るアドレスを含む記憶ブロックをSBとする。さらに、
当該記憶ブロックに対応する主記憶キー:SKYはSK
A140に設定されているものとする。
【0081】またCPU101の目下のアクセス権を示
す保護キー:PKYがPKY112に設定されているも
のとする。
【0082】なお、今回の場合、CTR114ビット0
には「1」なる値が設定されているものとする。CTR
114のビット0に「1」になる値を設定することで、
本発明に固有の効果を有効にすることができる。
【0083】先ず、PKY112の保持する保護キー:
PKYが、信号線11を介してMCU103へ送出され
る。同時にアクセス対象となるアドレスがDAR113
へ設定され、さらに、そのアドレスは信号線12を介し
てMCU103へ送出される。
【0084】MCU103は、信号線11,12を介し
て伝達される保護キー:PKYとアクセス対象アドレス
とそれぞれTKR130,TAR131に保持する。そ
して、TAR131の保持するアドレスに従い、MSU
102のアクセス動作を開始する。
【0085】同時にMCU103は、TKR130が保
持する保護キー:PKYと、TAR131が保持するア
クセス対象アドレスは、それぞれ信号線20,21を介
してPCU104へ送出する。
【0086】PCU104は、信号線21を介して伝達
されるアクセス対象アドレスをDEC141へ入力す
る。DEC141は、SKA140が保持している多数
の主記憶キーの中から、アクセス対象ブロックSBに対
応する主記憶キー:SKYを選択し、信号線40,41
を経由してCMP142へ入力する。
【0087】CMP142のもう一方の入力は、TKR
130から信号線20,42を経由して伝達される保護
キー:PKYである。
【0088】CMP142は、上記2入力の比較を行
い、信号線43に出力する。
【0089】すなわち、CMP142の出力値は、
『「主記憶キー:SKY」と「保護キー:PKY」とが
等しい』・・・(条件1)という「条件1」が成り立つ
時のみ「1」となり、そうでないならば「0」となる。
【0090】これは、既に説明したとおりであり、本発
明に固有の動作ではない。上記で説明した動作と並行し
て進行する、本発明に固有の動作を引き続き説明する。
【0091】PCU104は、信号線20を介して伝達
されるTKR130の保持する保護キー:PKYを、信
号線46を介してCMP144へ入力する。CMP14
4のもう一方の入力は、信号線45を介して入力される
IKY143が保持している識別キー:IKYである。
【0092】従って、CMP144の出力値は、「識別
キー:IKY」=「保護キー:PKY」なる条件が成立
したときのみ「1」となり、「識別キー:IKY」≠
「保護キー:PKY」ならば、「0」となる。
【0093】同時にDEC141によって選択された主
記憶キー:SKYは、信号線40,51を経由してSE
L149へ伝達される。SEL146は、信号線51を
介して入力される値に従って信号線群49を介して入力
される16個の信号から1つを選択して信号線50へ出
力する。信号線49は、それぞれAMR145に保持さ
れている各ビットの値をSEL146へ伝達している。
【0094】従って、SEL146の出力値は、「主記
憶キー:SKY」の値「n」に対応するAMR145の
ビットnの値が「1」である時「1」となり、「主記憶
キー:SKY」の値「n」に対応するAMR145のビ
ットnの値が「0」ならば、「0」となる。
【0095】上記説明したCMP144の出力値とSE
L146の出力値は、それぞれ信号線47,50を介し
てAND147へ入力され、AND147は両入力の論
理積をとって信号線52へ出力する。
【0096】すなわち、AND147の出力値は、
『「識別キー:IKY」と「保護キー:PKY」とが等
しく、かつ「主記憶キー:SKY」の値「n」に対応す
るAMR145のビットnの値が「1」、である』・・
・・・(条件2)という「条件2」が成り立つ時のみ
「1」となり、そうでないならば「0」となる。
【0097】AND147の出力は信号線52を介して
AND148へ入力される。AND148のもう一方の
入力は信号線14を介して入力されるCTR114ビッ
ト0の値であるが、CTR114ビット0には前もって
「1」なる値が設定されている。
【0098】従って、AND148は信号線52を介し
て入力されるAND147の出力値をそのまま信号線5
3へ出力し、OR149へ入力する。
【0099】OR149は、信号線43を介して入力さ
れるCMP142の出力値と、信号線53を介して入力
されるAND148の出力値との論理和値を信号線54
を介して判定回路150へ入力する。すなわち、上記
「条件1」か「条件2」のいずれかが成り立つときOR
149は「1」なる値を、そうでないならば「0」なる
値を判定回路150へ入力する。
【0100】判定回路150は、信号線54を介して入
力される値が「1」ならばアクセス許可と判定し、
「0」ならばアクセス不許可と判定するものであるか
ら、以上まとめるとアクセス許可となる条件は以下のよ
うになる。
【0101】『「主記憶キー:SKY」と「保護キー:
PKY」とが等しい、または、「識別キー:IKY」と
「保護キー:PKY」とが等しく、かつ、「主記憶キ
ー:SKY」の値「n」に対応するAMR145のビッ
トnの値が「1」、である』・・・・・(条件3)な
お、今回はCTR114ビット0の値を「1」に前もっ
て設定していたが、もし「0」に設定しているならば、
AND148の出力する値は、信号線52を介して入力
されるAND147の出力値に拘らず「0」となる。従
って、OR149が出力する値は常に信号線43を介し
て入力されるCMP142の出力値であり、この場合、
本発明に固有の動作は、アクセス条件判定になんら影響
を与えないことは明らかである。
【0102】さて、最後に、具体的な説明をつけ加えよ
う。
【0103】先に説明したように、従来技術による限
り、保護キー以外の値を主記憶キーとして設定された記
憶ブロックをアクセスすることは不可能であった。
【0104】たとえば保護キー:PKYとして14(1
6進表記で「E」)なる値が設定されている場合、主記
憶キー:SKYとして15(16進表記で「F」)なる
値が設定されている記憶ブロックをアクセスすることは
不可能であった。そのため、主記憶キー:SKYとして
15(16進表記で「F」)なる値が設定されている記
憶ブロックをどうしてもアクセスしたいのならば、保護
キー:PKYを15に再設定するしか手だてはなかっ
た。
【0105】本発明によれば、保護キー:PKYを14
のままで、主記憶キー:SKYとして15(16進表記
で「F」)なる値が設定されている記憶ブロックをアク
セスすることができる。
【0106】そのために、マイクロプログラム110
は、以下の初期設定を行う。
【0107】(1)IKY143に14なる値を設定す
る。・・・(初期設定1) (2)AMR145に「0001」(16進表記)なる値
を設定する。すなわち、AMR145のビット0〜ビッ
ト14にそれぞれ「0」なる値を、ビット15に「1」
なる値を設定する。・・・(初期設定2) この初期設定は、たとえば、本実施例に示す情報処理装
置の電源投入時に既に行われているものとする。
【0108】CPU101がMSU102の記憶ブロッ
クSBをアクセスしようとする。
【0109】このとき、「主記憶キー:SKY」=15
であり、「保護キーPKY」=14である。
【0110】このとき、さきに説明した「条件1」、
『「主記憶キーSKY」と「保護キー:PKY」とが等
しい』・・・(条件1)は成り立たないので、従来技術
による限りは本アクセスは許可されない。
【0111】しかし、「条件3」、『「主記憶キー:S
KY」と「保護キー:PKY」とが等しい、または、
「識別キー:IKY」と「保護キー:PKY」とが等し
く、かつ、「主記憶キー:SKY」の値「n」に対応す
るAMR145のビットnの値が「1」、である。』・
・・・(条件3)は成り立つ。
【0112】なぜならば、「初期設定1」により「識別
キー:IKY」には14が設定されているため、『「識
別キー:IKY(=14)」と「保護キー:PKY(=
14)」とが等しく』、かつ、「初期設定2」によりA
MR145のビット15の値が「1」に設定されている
ため、『「主記憶キー:SKY(=15)」の値「n
(=15)」に対応するAMR145のビット15の値
が「1」である』、からである。
【0113】そして、この具体例に於いては、保護キ
ー:PKYを14のままで、主記憶キー:SKYとして
15なる値が設定されている記憶ブロックをアクセスす
ることができる事を示した。しかしながら、既に明らか
な事であろうが、本発明の固有の効果として、「初期設
定1」と「初期設定2」の設定内容を変更する事によ
り、何等ハードウェアを変更する事なく、保護キー:P
KYと主記憶キー:SKYの組み合わせを変更する事が
できる。
【0114】たとえば、保護キー:PKYを8のまま
で、主記憶キー:SKYとして9なる値が設定されてい
る記憶ブロックをアクセスできるようにしたいならば、
マイクロプログラム110は以下の様に初期設定すれば
よい。
【0115】(1)IKY143に8なる値を設定する。
【0116】(2)AMR145に「0040」(16進
表記)なる値を設定する。すなわち、AMR145のビ
ット0〜ビット8、ビット10〜ビット15にそれぞれ
「0」なる値を、ビット9に「1」なる値を設定する。
【0117】さらに付け加えるならば、本発明の固有の
効果として、「初期設定1」と「初期設定2」の設定内
容を変更する事により、何等ハードウェアを変更する事
なく、ある保護キー:PKYのままで複数の相異なる主
記憶キー:SKYが設定されている記憶ブロックをアク
セスできるように変更する事ができる。
【0118】たとえば、保護キー:PKYを8のまま
で、主記憶キー:SKYとして9,10,11なる値が
設定されている複数の記憶ブロックをアクセスできるよ
うにしたいならば、マイクロプログラム110は以下の
様に初期設定すればよい。
【0119】(1)IKY143に8なる値を設定する。
【0120】(2)AMR145に「0070」(16進
表記)なる値を設定する。すなわち、AMR145のビ
ット0〜ビット8、ビット12〜ビット15にそれぞれ
「0」なる値を、ビット9〜ビット11、に「1」なる
値を設定する。
【0121】
【発明の効果】以上説明してきたように、本発明によれ
ば、従来のキー制御記憶保護機構より柔軟な記憶保護機
構を、従来のキー制御記憶保護機構ハードウェアに大幅
な変更を加える事なく実現する事ができる。
【0122】より具体的には、 (1)従来からのキー制御記憶保護機構を具備する計算機
システムに於いて、主記憶装置をアクセスする際、アク
セス元が使用する一つの保護キーとは異なる主記憶キー
が設定されている記憶ブロックをアクセスできる様にす
る事ができる。
【0123】(2)上記効果を、大幅なハードウェアの変
更なく達成できる。しいては、ハードウェアコストの増
加を招くことなく達成できる。
【0124】(3)任意の保護キーと主記憶キーの組み合
わせでも、(1)の目的を達成できる。
【0125】(4)前記第3の目的を、ハードウェアの変
更を行う事無く、達成できる。
【図面の簡単な説明】
【図1】本発明の1実施例を説明するための機能ブロッ
ク図である。
【符号の説明】 CPU101…中央処理装置、 MSU102…主記憶装置、 MCU103…主記憶制御装置、 PCU104…記憶保護制御装置、 IKY143…識別キーレジスタ、 CMP144…比較回路、 AMR145…アクセスマスクレジスタ、 SEL146…セレクタ、 AND147…論理積回路。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】少なくとも1つの中央処理装置と、主記憶
    装置を有する情報処理装置であって、 該中央処理装置は保護キーを具備し、 該主記憶装置は複数のブロックに分割され、各ブロック
    は主記憶キーを具備し、 該中央処理装置が該主記憶装置をアクセスする際、該保
    護キーと主記憶キーとが比較され、 それが一致したか否かで主記憶装置アクセスの許可不許
    可を決定する記憶保護機構を具備した情報処理装置にお
    いて、 前記保護キーと前記主記憶キーとの組み合わせで決定さ
    れる唯一の記憶保護判定情報を、前記保護キーと前記主
    記憶キーとの全ての、もしくは、一部の組み合わせで保
    持する第1の手段と、 前記中央処理装置が前記主記憶装置をアクセスする際、
    前記中央処理装置が保持する前記保護キーと、被アクセ
    ス主記憶ブロックが保持する前記主記憶キーとの組み合
    わせに従い、前期第1の手段に保持されている、当該保
    護キーと主記憶キーの組み合わせに唯一の該記憶保護判
    定情報を読み出す第2の手段と、 前第2の手段で読み出された記憶保護判定情報に従っ
    て、当該アクセスの妥当性を決定する第3の手段とを具
    備することを特徴とする情報処理装置の記憶保護方式。
JP16728392A 1992-06-25 1992-06-25 情報処理装置の記憶保護方式 Pending JPH0612333A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16728392A JPH0612333A (ja) 1992-06-25 1992-06-25 情報処理装置の記憶保護方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16728392A JPH0612333A (ja) 1992-06-25 1992-06-25 情報処理装置の記憶保護方式

Publications (1)

Publication Number Publication Date
JPH0612333A true JPH0612333A (ja) 1994-01-21

Family

ID=15846885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16728392A Pending JPH0612333A (ja) 1992-06-25 1992-06-25 情報処理装置の記憶保護方式

Country Status (1)

Country Link
JP (1) JPH0612333A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002077826A1 (en) * 2001-03-22 2002-10-03 Sony Computer Entertainment Inc. Memory protection system and method for computer architecture for broadband networks
US6809734B2 (en) 2001-03-22 2004-10-26 Sony Computer Entertainment Inc. Resource dedication system and method for a computer architecture for broadband networks
US6826662B2 (en) 2001-03-22 2004-11-30 Sony Computer Entertainment Inc. System and method for data synchronization for a computer architecture for broadband networks
US7093104B2 (en) 2001-03-22 2006-08-15 Sony Computer Entertainment Inc. Processing modules for computer architecture for broadband networks
US7233998B2 (en) 2001-03-22 2007-06-19 Sony Computer Entertainment Inc. Computer architecture and software cells for broadband networks
JP2009537879A (ja) * 2006-05-19 2009-10-29 インターナショナル・ビジネス・マシーンズ・コーポレーション ユーザ選択可能なストレージ・アクセス・キーを用いてデータを移動する方法及びシステム

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002077826A1 (en) * 2001-03-22 2002-10-03 Sony Computer Entertainment Inc. Memory protection system and method for computer architecture for broadband networks
US6526491B2 (en) 2001-03-22 2003-02-25 Sony Corporation Entertainment Inc. Memory protection system and method for computer architecture for broadband networks
US6809734B2 (en) 2001-03-22 2004-10-26 Sony Computer Entertainment Inc. Resource dedication system and method for a computer architecture for broadband networks
US6826662B2 (en) 2001-03-22 2004-11-30 Sony Computer Entertainment Inc. System and method for data synchronization for a computer architecture for broadband networks
US7093104B2 (en) 2001-03-22 2006-08-15 Sony Computer Entertainment Inc. Processing modules for computer architecture for broadband networks
US7139882B2 (en) 2001-03-22 2006-11-21 Sony Computer Entertainment Inc. Memory protection system and method for computer architecture for broadband networks
US7233998B2 (en) 2001-03-22 2007-06-19 Sony Computer Entertainment Inc. Computer architecture and software cells for broadband networks
JP2009537879A (ja) * 2006-05-19 2009-10-29 インターナショナル・ビジネス・マシーンズ・コーポレーション ユーザ選択可能なストレージ・アクセス・キーを用いてデータを移動する方法及びシステム
JP4653236B2 (ja) * 2006-05-19 2011-03-16 インターナショナル・ビジネス・マシーンズ・コーポレーション ユーザ選択可能なストレージ・アクセス・キーを用いてデータを移動する方法及びシステム

Similar Documents

Publication Publication Date Title
US5845129A (en) Protection domains in a single address space
US6542919B1 (en) Operating system for use with protection domains in a single address space
US6823433B1 (en) Memory management system and method for providing physical address based memory access security
EP0079133B1 (en) Virtual memory protected system
US7068545B1 (en) Data processing apparatus having memory protection unit
US5659756A (en) Method and system for providing access to logical partition information on a per resource basis
US5809546A (en) Method for managing I/O buffers in shared storage by structuring buffer table having entries including storage keys for controlling accesses to the buffers
US6854039B1 (en) Memory management system and method providing increased memory access security
US8051301B2 (en) Memory management system and method providing linear address based memory access security
JPS6022377B2 (ja) アドレス制御方式
KR970011207B1 (ko) 원자 억세스를 제공하는 레지스터가 소프트웨어 인터록 없이 공유된 레지스터의 개별 비트를 세트하고 클리어하기 위한 방법 및 장치
EP1757004A2 (en) Method and apparatus for endianness control in a data processing system
JP2005521942A (ja) 領域粒状、ハードウェア制御メモリ暗号化を提供するシステムおよび方法
EP0377970A2 (en) I/O caching
JPS5960652A (ja) デ−タ処理装置
US5900019A (en) Apparatus for protecting memory storage blocks from I/O accesses
AU600040B2 (en) Implied domain addressing
US5787309A (en) Apparatus for protecting storage blocks from being accessed by unwanted I/O programs using I/O program keys and I/O storage keys having M number of bits
CA1202425A (en) Multiprocessor system including firmware
JP2005512228A (ja) 強化されたメモリアクセスセキュリティを提供する、メモリに対するデバイスのアクセスを制御するシステムおよび方法
JP3454854B2 (ja) メモリ管理装置及び方法
US5287482A (en) Input/output cache
JPH0612333A (ja) 情報処理装置の記憶保護方式
US5802397A (en) System for storage protection from unintended I/O access using I/O protection key by providing no control by I/O key entries over access by CP entity
US5666508A (en) Four state two bit recoded alignment fault state circuit for microprocessor address misalignment fault generation