JPH01240947A - 主記憶の記憶保護方式 - Google Patents

主記憶の記憶保護方式

Info

Publication number
JPH01240947A
JPH01240947A JP6744588A JP6744588A JPH01240947A JP H01240947 A JPH01240947 A JP H01240947A JP 6744588 A JP6744588 A JP 6744588A JP 6744588 A JP6744588 A JP 6744588A JP H01240947 A JPH01240947 A JP H01240947A
Authority
JP
Japan
Prior art keywords
key
library
stack
access
protection
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
JP6744588A
Other languages
English (en)
Inventor
Shizuo Yokohata
静生 横畑
Akiyoshi Miura
三浦 明義
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 Microcomputer System Ltd
Hitachi Ltd
Original Assignee
Hitachi Ltd
Hitachi Microcomputer Engineering 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 Microcomputer Engineering Ltd filed Critical Hitachi Ltd
Priority to JP6744588A priority Critical patent/JPH01240947A/ja
Publication of JPH01240947A publication Critical patent/JPH01240947A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は計算機の仮想記憶システムに係わり、特に共通
ライブラリ間の記憶保護に好適な主記憶の記憶保護に関
する。
〔従来の技術〕
従来の主記憶装置では、制御レジスタにキー、主記憶に
ロックを持たせ、一致した主記憶のアクセスだけを許可
していた。
〔発明が解決しようとする問題点〕
保護キーによる記憶保護における上記従来技術はオーバ
ヘッドの点について配慮がされておらず問題があった。
(1)ライブラリを分類して各ライブラリにキーを割付
け、ライブラリ間の記憶保護を行なうことは可能である
が、ライブラリの呼び出しにおけるオーバヘッドが大き
い。例えばジョブがライブラリaを呼び出しライブラリ
内でジョブとライブラリaの開領域をアクセスするのに
はキーをその都度アクセス領域のキーに変更しなければ
ならない、また、このキー変更の命令は特権命令となっ
ており変更にはシステムコールを発行しなれればならな
ず1回のオーバヘッドも大きい。
(2)ライブラリを分類してライブラリが使う共通ルー
チンを作成するには、上記(1)におけるキー変更用に
キーをパラメタとして渡すか、または共通ルーチンとせ
ずにn個の同様なルーチンを作成しなければならない。
本発明の目的は、これらのオーバヘッドを軽減してライ
ブラリ間の記憶保護を行なうことである。
ここで行なう記憶保護とは、各ジョブ、各ライブラリ、
スーパーバイザの間で書き込み保護を行なうものである
。また書き込み許可をする領域は、現在実行中のジョブ
またはライブラリから順次呼び出されて来た実行経路中
の全領域(今後この領域をスコープと呼ぶ)であり、そ
の他の領域はすべて書き込み不許可となる。
〔問題点を解決するための手段〕
上記目的はスタックを設け、保護キーの変更の都度その
過程を示す保護キーの値をスタック上に積み、アクセス
許可をスタック上の全キーを用いてチエツクすることに
より達成される。
ジョブがライブラリを呼び出したり、ライブラリが他の
ライブラリを呼び出した時、呼び出されたプログラムは
自白のデータを参照する場合、実行キーを白領域のロッ
ク値に変更する。このとき計算機は旧キー値をスタック
上へ退避する。この操作はキー値が変更される都度行な
う。ライブラリは処理が終了すると実行キーを元に戻す
命令を発行し、スタック上の旧キー値が回復される。ア
クセル許可のチエツクはスタック上の全キー値とアクセ
スするメモリのロック値の比較によりチエツクを行なう
。1つのキーでもロック値と一致すれば一致と見なしア
クセスを許可する。実行中のプログラムは実行経路中の
ジョブおよび全ライブラリ領域をアクセスすることがで
きるが、他の領域をアクセスすることはできない。これ
により実行経路中のジョブおよびライブラリの他領域の
アクセスはキー変更の1命令だけで行なうことができ、
他領域のアクセスの都度キーを変更するシステムコール
を発行するオーバーヘッドが軽減される。
〔作用〕
ライブラリにより実行キーが変更されると、スタック上
に旧キー値が退避される。アクセス許可のチエツクは制
御レジスタ中のキーとスタック上の全キー値とアクセス
するメモリのロック値の比較により行なわれる。この時
スタック上の全キーは現ライブラリが参照することので
きるデータ領域の範囲を示している。したがってスタッ
ク上の1つのキーでもロック値と一致すればアクセスは
許可されるが、一致しなければ現ライブラリのアクセス
範囲外と見なされアクセスは許可されない。
このようにスタックは保護キーが変更された時に旧キー
値を退避し、ライブラリの実行が終了した時に直前のキ
ー値に戻すために利用される。スタック上のキー値が現
実行中ライブラリを除くアクセス可能範囲を示している
〔実施例〕
以下、本発明の一実施例を説明する。
第1図は仮想記憶システムにおけるアドレス変換を示す
概略図である。1は制御レジスタで、その中のアドレス
変換テーブルを指すポインタ6と保護キー5がある。実
行中の命令はプログラム・カウンタ10が示す。セグメ
ントテーブル2.ページテーブル3はアドレス変換テー
ブルと呼び論理アドレスを物理アドレスに変換するため
に用いる。ページテーブル3の各エントリは物理ページ
4に対応しており、その中に物理ページのロック7と書
込み許可を示すライトフラグ8がある。9は保護キーを
変更前の値を蓄積するキースタックである。
第2図は仮想記憶空間の構成を示す。この空間内にはス
ーパーバイザ11.共通ライブラリ21゜22.23.
ジョブ31,32,33が入る。共通ライブラリ、ジョ
ブの個数は実際にはいくつでも良い。
第3図は本実施例の中で行なう保護を示している。
第4図は保護キー5.ロック7、ライトフラグ8の組み
合ね世による記憶保護の内容を示したものである。
第5図は仮想記憶空間におけるロックの割付けを示した
ものである。
第6図に従ってライブラリ間の記憶保護について説明す
る。
ジョブ(job 1 )実行中は制御レジスタ1中の保
護キー5の値をジョブのロック値と同じ値1にする。キ
ースタックは空の状態である。ジョブ実行中は第4図に
示す記憶保護に従い自領域内は読み出し、書き込み共に
可能であるが、その他の領域は読み出しだけが許可とな
り書き込みは行なえない。ジョブがライブラリ(Hb 
1 )を呼び出すと、ライブラリは白領域内のデータを
参照するために保護キーを変更する。この保護キーの変
更は実行中の領域内のロック値に限って変更できるよう
にして非特権命令とすることにより、ライブラリが必要
に応じてキー変更命令(push)を実行できるように
する。この命令実行により新しい保護キーとライトフラ
グが制御レジスタに設定される。旧保護キーはキースタ
ック上に積まれる。ライブラリ(lib 1 )実行中
は、制御レジスタ中の保護キーとキースタック上の保護
キーのいずれかに一致する領域すなわちジョブ(job
 1 )とライブラリ(fib 1 )の領域の両方に
対して読み込み、書き込み可能となり、他の領域は読み
込み可、書き込み不可となる。
同様にライブラリ(lib 1 )がライブラリ(li
b 2 )を呼び出してライブラリ(Hb 2 )実行
中は、キースタック内にジョブ(jobl)とライブラ
リ(libl)のロック値が入り、制御レジスタにはラ
イブラリ(fib2)のロックイ直が設定される。これ
によりライブラリ(1,1b2)からはジョブ(job
l)、ライブラリ(]1bl)、ライブラリ(]、1b
2)領域のいずれに対しても書き込み可能となる。各ラ
イブラリは処理が終了すると、キーを元に戻す命令(p
op)を実行した後、呼び出し元に戻る。
上記においてテキスト部とデータにより保護を変える場
合はライトフラグを用いる。テキスト部のライトフラグ
をO、データ部のライトフラグを1にすることにより、
データ部に対してだけ書き込みを許可することもできる
第7図はpush命令のフローチャートである。
push命令はまず制御レジスタ中にある保護キーをキ
ースタック上に積み退避しく1.01)、次のプログラ
ムカウンタのイ直からセグメント、ページテーブルをひ
き現在実行中の領域のロック値およびライトフラグを取
り出す。この値を新しいキー値。
ライトフラグとして制御レジスタへ設定する(102)
第8図はρ0ρ命令のフローチャートである。まずキー
スタック最上のキー値を取り出しく201.)、その値
を新しいキー値として制御レジスタへ設定する。
第9図は各命令の中で行なう記憶保護チエツクである。
本実施例では読み込みは任意の領域に対して可能であり
、書き込みについてのみ保護される。各命令の書き込み
を行なう番地のページのロック値、ライトフラグを取り
出す(301)。取り出したロック値と制御レジスタ中
の保護キーを比較し、一致すれば次にライトフラグをチ
エツクし1になっていれば書き込み可と児なし次の処理
をする(302)。不一致の場合は、キースタック上の
保護キーと順次一致するか比較する。一致すればライト
フラグにより書き込みチエツクを行なう。いずれも一致
しないか、ライトフラグがOであれば記憶保護エラーと
する(303)。
本実施例によれば、ライブラリがシステムコールにより
保護キーを変更する必要がなくなり、ライブラリ実行に
おけるオーバヘッドを軽減できる効果がある。
〔発明の効果〕
本発明によれば、保護キーの変更がシステムコールでは
なく1命令により行なえるので、キー変更に伴うオーバ
ヘッドを軽減できる効果がある。
システムコールは百〜数百ステップ実行することになる
【図面の簡単な説明】
第1図は本発明の一実施例のアドレス変換の説明図、第
2図は仮想記憶空間の構成図、第3図は保護すべき項目
の説明図、第4図はキープロテクションの説明図、第5
図はロックの割付けを示す説明図、第6図はライブラリ
呼び出しとキースタックの変化の説明図、第7図はキー
変更用push命令のフローチャート、第8図はキーを
元に戻すpop命令のフローチャート、第9図は各命令
における記憶保護チエツクのフローチャートである。 9・・・キースタック。 躬 / 凹 第 2 図 第 、32 第 4 図

Claims (1)

    【特許請求の範囲】
  1. 1、制御レジスタ、アドレス変換テーブルを備えた仮想
    記憶システムにおいて、実行経路の保護キーを蓄積する
    キースタックを設けたことを特徴とする主記憶の記憶保
    護方式。
JP6744588A 1988-03-23 1988-03-23 主記憶の記憶保護方式 Pending JPH01240947A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6744588A JPH01240947A (ja) 1988-03-23 1988-03-23 主記憶の記憶保護方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6744588A JPH01240947A (ja) 1988-03-23 1988-03-23 主記憶の記憶保護方式

Publications (1)

Publication Number Publication Date
JPH01240947A true JPH01240947A (ja) 1989-09-26

Family

ID=13345133

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6744588A Pending JPH01240947A (ja) 1988-03-23 1988-03-23 主記憶の記憶保護方式

Country Status (1)

Country Link
JP (1) JPH01240947A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013140446A (ja) * 2011-12-28 2013-07-18 Fujitsu Ltd 情報処理装置および不正アクセス防止方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013140446A (ja) * 2011-12-28 2013-07-18 Fujitsu Ltd 情報処理装置および不正アクセス防止方法

Similar Documents

Publication Publication Date Title
US5023773A (en) Authorization for selective program access to data in multiple address spaces
US4486831A (en) Multi-programming data processing system process suspension
US4979098A (en) Multiple address space token designation, protection controls, designation translation and lookaside
US5210874A (en) Cross-domain call system in a capability based digital data processing system
US5220669A (en) Linkage mechanism for program isolation
US11593277B2 (en) Method of secure memory addressing
JPH01207856A (ja) アドレス空間制御機構
JPS6248258B2 (ja)
WO2019237865A1 (zh) 一种数据保护方法及计算装置
KR100791815B1 (ko) 컴퓨터 시스템 및 컴퓨터 시스템에서 인스트럭션을 실행하는 방법
JPH01240947A (ja) 主記憶の記憶保護方式
US10496555B2 (en) Implementing per-thread memory access permissions
EP0327839B1 (en) Information handling system
GB1585960A (en) Information flow security mechanisms for data processing systems
JPS63240657A (ja) 記憶保護装置
JP2990609B2 (ja) 計算機システム
WO1990005951A1 (en) Method of handling unintended software interrupt exceptions
JPS626351A (ja) 記憶保護装置
JPH01279343A (ja) 計算機システムの主記憶保護方式
JP2541287B2 (ja) システム共用制御ブロック制御方式
JPH0471050A (ja) スタック領域保護回路
JPS6155754A (ja) 記憶保護方式
JPH04236633A (ja) コンピュータシステム
KR20000043478A (ko) 멀티태스킹이 가능한 통신 교환 시스템에서의파일보호기능구현방법
Needham Capabilities and Protection