JPH05204762A - ストレージへのアクセスを保護する方法及び装置と、ストレージ・ブロツクに隔離を与える方法 - Google Patents

ストレージへのアクセスを保護する方法及び装置と、ストレージ・ブロツクに隔離を与える方法

Info

Publication number
JPH05204762A
JPH05204762A JP4106473A JP10647392A JPH05204762A JP H05204762 A JPH05204762 A JP H05204762A JP 4106473 A JP4106473 A JP 4106473A JP 10647392 A JP10647392 A JP 10647392A JP H05204762 A JPH05204762 A JP H05204762A
Authority
JP
Japan
Prior art keywords
key
access
storage
general
block
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
JP4106473A
Other languages
English (en)
Other versions
JPH0736171B2 (ja
Inventor
Carl E Clark
カール・エドワード・クラーク
Michael G Mall
マイケル・ジェラード・モール
Casper A Scalzi
キャスパー・アンソニー・スカルジ
Bhaskar Sinha
バスカ・シンハ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH05204762A publication Critical patent/JPH05204762A/ja
Publication of JPH0736171B2 publication Critical patent/JPH0736171B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1491Protection against unauthorised use of memory or access to memory by checking the subject access rights in a hierarchical protection system, e.g. privilege levels, memory rings

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 【目的】 メモリの保護キイに対して、管理的レベル、
非一般向けの中間レベル及び一般向けレベルで構成され
る3つのアクセス・レベルを与える。 【構成】 管理的レベルのアクセス・キイにより動作す
るプログラム・ルーチンはストレージ・ブロツクの一般
向けレベルと、中間レベルの両方をアクセスすることが
できる。中間レベルのアクセス・キイで動作するプログ
ラム・ルーチンは管理レベルのストレージ・ブロツクを
アクセスできないが、一般向けレベル及び中間レベルの
キイを割り当てられたストレージ・ブロツクにはアクセ
スできる。第3のレベルの一般向けストレージ・キイ
(PSK)を用いたプログラム・アクセス・キイは同じ
PSK値を持つブロツクしかアクセスできず、他のキイ
値を持つブロツクはアクセスできない。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、メモリのストレージ・
ブロツクに割り当てられ、不当なアクセス動作からスト
レージ・ブロツクを保護するための保護キイであつて、
プログラムによつてアクセスされねばならない保護キイ
を用いたプログラムに要求することによつて、コンピユ
ータ・メモリの異なつた部分にあるプログラム及びデー
タを保護するためのストレージ保護キイの使用を改良す
ることに関する。ストレージ・ブロツクへのアクセス保
護は、これらの異なつたストレージ・ブロツクが同じ仮
想アドレス空間にある場合でもストレージの他の領域中
のプログラム・コードの実行により生じるワイルド・ス
トアに対して、1つのストレージ・ブロツク中のコード
及びデータを保護する。
【0002】
【従来の技術】メモリのストレージ・ブロツクのための
ストレージ保護キイは米国特許第3576544号及び
同第4472790号に開示されている。ストレージ保
護キイはIBM社で販売されているIBMシステム/3
60、システム/370及びシステム/390、または
それらと互換性あるシステムに使用されている。
【0003】現在のIBMシステム/390のアーキテ
クチヤは、IBM社で刊行された「Enterprise System
Architecture S/390 Principles of Operation」という
名称の刊行物(番号SA22-7201-00)に記載されているよ
うにストレージ・キイ0乃至15とアクセス・キイ0乃
至15をサポートしている。現在のIBM社のシステム
において、0乃至15の保護キイは、2つの保護レベ
ル、つまり、管理的なクラスの保護キイ(保護キイ0で
実行される)と、ユーザ・クラスの保護キイ(保護キイ
1乃至15で実行される)とを与えている。管理的な保
護キイ0はメモリの任意のストレージ・ブロツク中のデ
ータにアクセスすることができる(ストレージ・ブロツ
クに割り当てられたストレージ・キイとは関係なく)。
然しながら、非管理的なアクセス・キイ(保護キイ1乃
至15)は、アクセス・キイ(アクセス・プログラムに
よつて用いられる)と、アクセスが行なわれているスト
レージ・ブロツクに割り当てられたストレージ・キイと
の間に同一性(equarity)が存在する場合に限つてスト
ア・アクセスが許容される。
【0004】ストレージ保護キイは、IBMシステム/
360、システム/370及びシステム/390のメイ
ン・ストレージ中の各4キロバイトのブロツク(ペイ
ジ)のメイン・ストレージのハードウエアによつて与え
られる。システムのメイン・ストレージへアクセスが行
なわれる度に、アクセス用の各プログラムに与えられて
いるアクセス・キイのチエツクが行なわれる。アクセス
・キイはプログラムのプログラム・ステータス・ワード
(PSW)中のアクセス・キイのフイールドから与えら
れる。アクセス・キイは、保護キイの一致が存在するか
否かを決めるために、ハードウエアで実行される複雑な
規則のセツトを使用して、ストレージ・システムのハー
ドウエアにアドレスされたペイジのストレージ保護キイ
に対して比較される。
【0005】保護キイの比較の規則は、各ストレージ・
キイ中の取出し保護(FP)ビツトの使用を含んでい
る。(ストレージへのアクセスは、FPビツトの感知に
は影響されず、非管理的なアクセス・キイ1乃至15に
対してストア・アクセスを可能とする前に、アクセス・
キイとストレージ・キイとの間の同一性が必要とされ
る。)取出し要求のために、FPビツトは、非管理的な
アクセス・キイ1乃至15に対してアクセスを許容する
ために同一性が必要とされるか否かを制御する。若し、
FPビツトが0であれば、アクセス・キイの値や、或は
ストレージ保護キイの値には関係なく可能とされる取出
しアクセスを許容するために、キイの間の同一性は必要
とされない。然しながら、若し、FPビツトが1であれ
ば、非管理的なキイ1乃至15の取出しアクセスを許容
するためにキイの間の同一性が必要とされる。
【0006】管理的なアクセス・キイ0がストレージ・
キイ1乃至15と等しいと否とに拘らず、管理的なキイ
0はアクセスを許容される。
【0007】IBMシステム/390のアーキテクチヤ
に使用されているシステムに現在存在しているストレー
ジの・キイによる保護方法には、管理的なレベル(保護
キイ0)と、非管理的なレベル(保護キイ1乃至15)
の2つのレベルがある。管理的なプログラムは非管理的
なキイを割り当てられたストレージ・ブロツクにアクセ
スすることができるのに反して、非管理的なプログラム
は管理的なキイを割り当てられたストレージ・ブロツク
にアクセスすることはできない。
【0008】保護キイによる保護はすべてのストレージ
のアクセスに対して行なわれるので、保護キイによる方
法は、システム中の各ストレージ・アクセスのクリチカ
ル・パス(最短経路)に与えられる。従つて、システム
/390(及びシステム390の前のシステム/360
及びシステム/370)のシステムにおける保護キイ制
御のハードウエアは、各ストレージ・アクセスのアクセ
ス時間を増加しないように、各ストレージ・アクセス中
の他の制御動作と重複した並列関係で動作される。
【0009】IBM社とは異なつた他のコンピユータの
アーキテクチヤにおけるストレージの保護方法におい
て、ハードウエアにより実施されるストレージ保護キイ
を使用したことは知られていない。例えば、以前のマル
チツクス(Multics)システムは、ストレージ保護キイ
を用いない保護用リングを使用していた。マルチツクス
はストレージ・ブロツクにストレージ保護キイを割り当
てることは知らなかつた。このシステムは各処理にリン
グ番号を割り当てており、この処理は、セグメントに分
割されたアドレスを使用したプログラムの呼び出し/返
還インストラクシヨンによつて実施されていた。このシ
ステムは、すべての処理がリング番号の階層内において
低い順番を持つリングに割り当てられた他の処理に割り
当てられた仮想ストレージにアクセスすることができる
ものである。本発明は、このような保護用リングを必要
としない。
【0010】保護キイは、システム中の実際のストレー
ジへのアクセスに保護を与え、更に、ストレージ・キイ
によつて与えられる保護以外のアクセス保護を与える仮
想アドレス及び仮想アドレス空間のようなシステム/3
90に与えられた他の保護方法に加えてアドレシングの
保護を与える。プログラムされたアドレスの仮想アドレ
シングは、実際のメイン・ストレージの中の任意のペイ
ジ位置に仮想アドレスをマツプして、これにより、シス
テムが使用されている際に、1つのアドレスから他のア
ドレスに可変であり、ユーザにとつて未知のアドレスの
実際的なペイジ位置を作る。若し、1つのアドレス空間
において実行するプログラムが他のアドレス空間へアク
セスすることを許容されなければ、第2のアドレス空間
のデータ及びプログラムはそのプログラムから保護され
る。1つのアドレス空間へアドレスする能力を持つてい
るが、そのアドレス空間内のデータのあるものに対して
権限を持つていないプログラムからそのアドレス空間を
保護するために、ストレージ保護キイが使用される。
【0011】従来の技術による保護方法において、実ア
ドレス、即ち絶対アドレスである上部境界のアドレス及
び下部境界のアドレスとの比較結果を使用するようなス
トレージの保護方法は、上述の保護キイの保護方法とは
異質のタイプである。
【0012】然しながら、コンピユータ・システムにお
いて使用可能な他のタイプの保護方法は、これらの方法
によつてシステムの性能は同じように影響を受けないか
ら、これらのタイプと本発明の保護方法とを同じ基準で
相互に比較することはできない。
【0013】上述の保護キイによる保護は、含まれたア
クセス・キイ及びストレージ・キイの初期化を必要とす
る。プログラムのアクセス・キイは、プログラムが実行
されているPSW(プログラム・ステータス・ワード)
中のフイールドによつて特定される。ストレージ・キイ
は実際のストレージの各ブロツクと関連されている。1
つのプログラムに対して1つ以上のキイにアクセスする
能力を与えることができる。この能力は、実行されるタ
スクのためのオペレーテイング・システムによつて初期
化されるPKM(プログラム・キイ・マスク)と呼ばれ
る制御レジスタのフイールドによつて与えられる。然し
ながら、通常、一時に、ただ1つのアクセス・キイの値
が活動化される。(ストレージの一方の位置から他方の
位置にデータを移動するために、インストラクシヨンの
小さなセツトがシステム/390のアーキテクチヤの中
にあり、各オペランドに対して別個の保護キイを許容し
ている。このうちの1つのキイがPSWのキイである。
(PSWのビツト15は0である−図3参照。)若し、
PSWが管理的な状態になければ、他のキイがPKMに
よつて権限付けられなければならない。)1つ以上のキ
イを使用するように権限付けられたプログラムは、任意
の時点で、意図されたストレージ・アクセスによつて必
要とされた時、SPKA(Set PSW Key From Address-
アドレスからPSWをセツトせよ)と呼ばれるシステム
/390のインストラクシヨンを使用することによつて
PSWでアクセスするキイの値を管理しなければならな
い。管理的なアクセス・キイだけが、特定のPSWのア
クセス・キイの管理機能を遂行することなく、2つ以上
のキイに同時にアクセスする能力を許容する。
【0014】然しながら、他の保護技術は、アドレス空
間スイツチングの付加的な性能を含む仮想アドレシング
保護技術を使用するために(アドレス空間スイツチング
は、キイ保護においては必要ない)、プログラムの性能
を低下するプログラム呼出し/返還インストラクシヨン
を使用するような、特にプログラムされたインストラク
シヨンを、インストラクシヨンのクリチカル・パス中で
実行させることが必要である。
【0015】例えば、ソフトウエア・サブシステムは、
1つのアドレス空間と、アプリケーシヨン・プログラム
とを、仮想アドレス空間の分離を与えるために、異なつ
たアドレス空間に置くことができる。従つて、アプリケ
ーシヨンプログラムのサブシステムと、そのようなアド
レス空間との間で移動するときに、アドレス空間を切り
換えるために著しい性能低下が生じるが、そのような顕
著な性能低下は本発明によつて回避することができ、し
かも、本発明は、サブシステムのデータに対してではな
く、アプリケーシヨン・プログラムに対して異なつたス
トレージ保護キイを割り当てることによつて、アクセス
・キイの管理なしでアプリケーシヨン・プログラムのデ
ータにサブシステムによるアクセスを可能として、必要
なすべての保護の利益を獲得する。
【0016】
【発明が解決しようとする課題】従つて、本発明の目的
は、従来の管理的なクラスの保護キイによつて動作する
ことのできる一般向け保護キイのクラスと、保護キイの
新規な中間クラスとをサポートするストレージ保護シス
テムを提供することにある。
【0017】本発明の他の目的は、インストラクシヨン
が同じアドレス空間において実行されるか、または、異
なつたアドレス空間において実行されるかに拘らず、一
般向けストレージ・キイのアクセス権限の下で実行する
インストラクシヨンによつて、一般向けストレージ・キ
イを割り当てられていないストレージのすべてのブロツ
クにワイルド・ストレージ・ブロツクが生じないように
保護することにある。
【0018】本発明の他の目的は、異なつたPSK値の
下で実行されるインストラクシヨンによつて、単一のP
SK値を持つストレージ・ブロツクがアクセスされない
ように保護することにあり、これと同時に、単一のPS
Kのストレージ・ブロツクは、同じアドレス空間であ
れ、異なつたアドレス空間であれ、管理的な保護キイの
クラス、または中間的な保護キイのクラスの任意の値の
アクセス権限により実行されるインストラクシヨンによ
つて、キイ管理プログラムのステツプなしで、自由にア
クセスすることができる。
【0019】
【課題を解決するための手段】本発明は、管理的なレベ
ル(保護キイ0)及び非管理的なレベル(保護キイ1乃
至15)で構成された2つのレベルの保護構造を持つて
いるIBMシステム/390のアーキテクチヤを使用し
たシステムで現在見られるストレージ・キイによる保護
に対して、単方向アクセスの第3の保護レベルを付加し
ている。管理的なレベルにおいて動作するこのプログラ
ム・ルーチンは非管理的なレベルのストレージ・ブロツ
クにアクセスすることができるが、しかし、非管理的な
レベルにおいて動作するプログラム・ルーチンは管理的
なレベルのストレージ・ブロツクにアクセスすることは
できない。
【0020】本発明は、一般向けのアクセス可能なレベ
ルとして使用する第2の保護レベルから、単方向アクセ
スの第3の保護レベルを分割しているけれども、従来の
システム/390の保護キイによる方法の単方向のアク
セス保護の2つの保護レベルを維持している。本発明
は、インストラクシヨンの短い経路を可能にするための
プログラム・コードの要件を増加せず、そして、アドレ
ス空間の切換えを全く必要としないで、3つの保護レベ
ルすべてに対して保護キイによる利益を維持している。
本明細書中において、ストレージ・キイの制御の第3の
レベルは、一般向けストレージ・キイ(public storage
key)レベル、またはPSKレベルと呼ぶことにする。
これらの3つのレベルは、管理的なクラス、中間的なク
ラス及び一般向けクラスである3つのクラスの保護キイ
を与える。すべてのクラスには、コード化された保護キ
イの組からの特定の値が割り当てられている。例えば、
16個の保護キイを与える4ビツト・コードが用いられ
た場合、すべてのクラスの保護キイはこれらの16個の
コードから割り当てられる。夫々のクラスに対して特定
のコード値を割り当てることは、最初は任意であるが、
ただし、一度割り当てられた後には、割り当てられたコ
ードは一貫して使用されなければならない。これら3つ
のクラスのうちの各クラスは1つ、またはそれ以上の保
護キイを持つことができる。管理的なクラス(最上位の
クラス)の保護キイは、保護キイ0が好ましい単一の保
護キイを持つている。PSKクラス(最下位のクラス)
は1つ、または複数個の保護キイを持つことができる。
若し、複数個のPSKの値が割り当てられたならば、P
SK値の1つの値を用いたプログラムによるアクセス
は、同じPSK値を持つストレージ・ブロツクだけにし
かアクセスすることができない。管理的なクラス及びP
SKクラスに割り当てられなかつた16個のコードのう
ちの残りのコードは中間クラスの保護キイによつて使用
可能である。中間クラスのアクセス・キイは、中間クラ
スに割り当てられたストレージ・ブロツクにアクセスす
ることができるばかりでなく、すべてのPSKに割り当
てられたストレージ・ブロツクにもアクセスすることが
できる。
【0021】例えば、管理的なキイとしてキイ0を使用
していた従来のプログラムとの互換性を維持するため
に、第1の(管理的な)クラスとしてキイ0を選ぶこと
ができる。次に、第3の(一般向け)クラスは、1つ、
またはそれ以上の残りのキイ(キイ1乃至15)から選
ばれたキイ、例えばキイ9をPSK(一般向けストレー
ジ・キイ)として選ぶことができる。キイ9をPSKと
して選ぶことは、第2(中間)のクラスのキイを作るた
めに、キイ1乃至8と10乃至15とを残す。
【0022】通常のストレージ保護キイは、取出し保護
ビツト(FP)フイールドと、動作に若干の変更を要す
るけれども本発明によつて与えられる新規な保護キイに
よつて使用されるACCフイールドとを持つている。本
明細書において、同一性の状態(または、不同一性の状
態)とは、アドレスされたストレージ保護キイの内容
と、アクセス・キイ・フイールド(通常、このキイ・フ
イールドはPSWから得られる)との間に同一性(また
は、不同一性)が存在することを意味する。
【0023】新規な第3の(一般向け)クラスの動作規
則は、若し、同一性の状態がストレージ・ブロツクの一
般向けストレージ・キイにより見出されたならば、スト
レージ・キイ中のFPビツトの設定とは関係なく、一般
向けアクセス・キイはストレージ・ブロツクに対してス
トア・アクセスだけを許容すると言う規則である。但
し、一般向けアクセス・キイによる取出し動作は、FP
ビツトの設定によつて制御される。若し、ストレージ・
キイの中のFPの値が1であれば、取出し動作は、一般
向けアクセス・キイと一般向けストレージ・キイとの間
に同一性が存在するときに限つて許容される。しかし、
若し、ストレージ・キイの中のFPの値が0であれば、
取出し動作は一般向けアクセス・キイと一般向けストレ
ージ・キイとの間の同一性がなくとも許容される。
【0024】第2の(中間的)クラスのキイ(1乃至8
及び10乃至15)は新規なPSKクラスと適合させる
ために、本発明に従つて変更される。従来の技術におい
ては、非管理的なキイを有するストレージ・ブロツクに
ストア・アクセスするための非管理的なアクセス・キイ
を使用したプログラムに対して、常に同一性が要求され
ている。これは本発明によつて変更されており、中間ク
ラスの任意のキイ(そして、管理的なクラスのキイ)
は、FPビツトの状態とは無関係に、同一性なしでPS
Kのストレージ・ブロツクにストア・アクセス、また
は、取出しアクセスすることができる。
【0025】その結果、中間キイの能力は、特別の保護
キイ管理のプログラミングを用いることなく異なつたス
トレージ・キイを有するストレージ・ブロツクにアクセ
スできるように拡張されており、従来の技術において、
この能力は管理的なキイだけしか持つていない。従つ
て、本発明に基づく中間クラスのキイを用いたプログラ
ムは、中間クラスのキイを割り当てられたストレージ・
ブロツクにアクセス可能なばかりでなく、一般向けクラ
スのキイを割り当てられた任意のストレージ・ブロツク
にもアクセスすることができる。従つて、本発明は、非
管理的なキイが異なつたキイを持つストレージ・ブロツ
クをアクセスすることができる前に、非管理的なキイを
変更するための付加的にプログラムされたインストラク
シヨン(例えばPSWの中において)を使用させる従来
技術の下で課された要求を回避することができる。例え
ば、中間クラスのアクセス・キイにより実行するプログ
ラムは、同じ中間クラスのキイと同一のストレージ・キ
イによつて取出しアクセスの保護がされているストレー
ジ・ブロツク中のワードから「ロード」インストラクシ
ヨンを実行することができ、そして、その直後のインス
トラクシヨンにおいて、一般向けクラスのストレージ・
キイを持つストレージ・ブロツクに「ストア」インスト
ラクシヨンを使用することができる。
【0026】しかし、中間クラスのキイを使用して、F
Pの設定とは無関係にストレージ・ブロツクの中にスト
アするための中間クラスのキイに対する同一性の要件は
残つている。そして、取出しアクセスはFPの設定によ
り制御される。若し、ストレージ・キイの中のFP値が
1であれば、取出しアクセスは、中間クラスのアクセス
・キイと、他の中間クラスのストレージ・キイとの間に
同一性が存在するときにだけ許容される。しかし、スト
レージ・キイの中のFP値が0に設定されていれば、中
間クラスのアクセス・キイと中間クラスのストレージ・
キイとの間の同一性なしで、取出しアクセスが許容され
る。
【0027】従来の管理的なクラスのキイ(保護キイ
0)の規則は本発明によつて変更されておらず、むしろ
PSKブロツクまで拡張されており、ストレージ・キイ
0を割り当てられたストレージ・ブロツクを除いて、ア
クセス・キイ0を使用したプログラムによつてストレー
ジ・ブロツク(PSKブロツクを含む)にアクセスする
ためには、キイの同一性は必要としない。
【0028】従つて、中間クラスの任意のキイ(キイ1
乃至8及び10乃至15)を使用するユーザは一般向け
クラスのキイ(キイ9)のストレージ・ブロツクにアク
セスすることができる。但し、一般的なクラスのストレ
ージ・キイ(キイ9)のユーザは、管理的なキイ(キイ
0)によつて保護されているか、または中間クラスのス
トレージ・キイ(キイ1乃至8及びキイ10乃至16)
によつて保護されているすべてのストレージ・ブロツク
にストアすること(または、取出しアクセスの保護がオ
ンにされていれば、取出すこと)はできない。
【0029】
【実施例】図1は本発明の良好な実施例を含むハードウ
エアを示すブロツク図である。図1において、複数個の
中央処理ユニツトCP−0乃至CP−Nと、I/O用の
サブチヤンネルを持つ複数個のI/O装置I/O−0乃
至I/O−Kと、制御装置及びチヤンネルが示されてい
る。CP及びI/Oは、メイン・ストレージ(MS)2
1からデータ単位を取出し、またはメイン・ストレージ
にデータ単位ストアするのを制御するメイン・ストレー
ジのコントローラ20に対してメモリ・アクセス要求を
行なう。MS21は、MSのデータ単位をストアするた
めの複数個のDRAMアレイを含んでいる。各MSアク
セス要求はMSから取出され、またはMSにストアされ
るデータ単位の絶対アドレスを含んでいる。通常、CP
は仮想アドレスである論理アドレスを発生するが、しか
し、システム390のアーキテクチヤに従つた実アドレ
スでもよい。任意のCPにより発生された各仮想アドレ
スは、要求側のアクセス・キイと共に、アクセス要求に
よりMSに送られる絶対アドレスに、CPにおいて変換
される。
【0030】要求される絶対アドレスは、要求されるデ
ータ単位を含んでいるMS中の4キロバイトのブロツク
(以下、ペイジと言う)のアドレスを表わす高位部分を
持つている。
【0031】保護キイのアレイ22はシステム/390
のアーキテクチヤにおいて定義されているストレージ保
護キイを含む1個、またはそれ以上のDRAMで構成さ
れている。
【0032】キイ・アレイ22中の保護キイは、1対1
の関係でMS21中のデータ・ストレージのそれぞれの
ペイジ単位と関連されている。メイン・ストレージ、M
S21がデータ単位のアドレスを送られた時、キイ・ア
レイ22は、MS21においてアクセスされているデー
タ単位と関連されたアレイ22中のストレージ保護キイ
を位置付けるために、データ単位のペイジ・アドレスが
同時に送られる。MS21及びキイ・アレイ22をアド
レスする態様は公知である。
【0033】図2はキイ・アレイ22の中にある各スト
レージ保護キイのフオームを示している。(これらのフ
オームはシステム/390のアーキテクチヤによつて定
義されている。)各ストレージ保護キイはキイ・アレイ
において、1バイトのストレージ位置を占め、4ビツト
のACCフイールドを含む幾つかのフイールドを持つて
いるが、1バイト全部がストレージ保護キイである場合
には、しばしば「ストレージ保護キイ」と呼ばれてい
る。ストレージ保護キイのACCフイールド以外の他の
フイールドは1ビツトのフイールドであり、それらは、
FP(取出し保護)フイールド、R(参照)フイールド
及びC(変更)フイールドである。ストレージ保護キイ
中のACC「キイ」フイールドの内容は、MSへのアク
セスを要求するプログラムによつて与えられる4ビツト
の「アクセス・キイ」と比較される。本発明はこの比較
動作を制御し、この比較動作はFPビツトのフイールド
の設定によつて影響される。
【0034】保護キイのチエツクのハードウエア23は
キイ・アレイ22から取出されたストレージ保護キイを
受け取る。保護キイをチエツクするハードウエア23
は、CP、またはI/Oによつて行なわれた現在の要求
で与えられた「アクセス・キイ」に対して、取出された
「ストレージ保護キイ」をチエツクする。
【0035】「アクセス・キイ」は従来技術のシステム
/390のアーキテクチヤによつて定義されている。ア
クセス・キイはMSへアクセスする動作を要求したC
P、またはI/Oの実行によつて与えられる。図3、図
4及び図5はアクセス・キイのための異なつたソース
(供給源)を示している。この特定のソースはMSへの
アクセス要求をしたCP、またはI/Oエンテイテイに
よつて選択される。
【0036】図3は各CP、0乃至Nにあるアクセス・
キイのPSW(プログラム・ステータス・ワード)ソー
スを示している。関連するCP中のPSWはMSへのア
クセスを要求したCPによつて実行されるインストラク
シヨンの大部分のアクセス・キイのソースである。若干
のCPのインストラクシヨンは、アクセス・キイの唯一
のソースとしてPSWを使用せず、この場合、アクセス
・キイのソースは、汎用目的レジスタ(GR)であり、
この場合にアクセス・キイは図4に示したビツト位置2
4乃至27にある。これらの若干のインストラクシヨン
は、システム/390のアーキテクチヤにおけるインス
トラクシヨン、一次側へ移動せよ、二次側へ移動せよ、
キイと共に移動せよ、目的位置のキイと共に移動せよ及
びソース・キイと共に移動せよとして定義されている。
【0037】図3において、PSWのビツト位置15の
Pフイールドは、関連するCPが問題状態、即ち管理的
な状態において動作しているか否かを制御する。若し、
問題状態(PSWのビツト15が1である)にあれば、
要求側がGR中で特定されたアクセス・キイを使用する
よう権限を授けられたか否かを決定するために、CR3
(図6参照)中のPSWキイ・マスクが使用される。若
し、管理的な状態にあれば、PKMに関係することな
く、GR中で特定されたキイが使用される。
【0038】図5はMSへのアクセスを要求したI/O
用のアクセス・キイのソースとして、I/Oアクセス要
求(I/O装置、I/O−0からI/O−Kまでのすべ
てのI/Oから)の大部分の要求によつて用いられるO
RB(動作要求ブロツク)を示している。ORBはシス
テム/390のアーキテクチヤ中のI/O装置を始動す
る始動サブチヤンネル・インストラクシヨンによつて得
られるMS中の制御ブロツクである。ORB中のビツト
位置0乃至3はアクセス・キイを含んでいる。
【0039】システム390のアーキテクチヤ中のスタ
ツキング・プログラム呼び出し(PC)インストラクシ
ヨンはETE(エントリ−テーブルのエントリ)から取
出されたアクセス・キイを使用し、この場合、このアク
セス・キイは図7に示したEK(エントリ・キイ)と呼
ばれる。EKアクセス・キイの使用は図6に示したCR
(制御レジスタ)3の中のPSWキイ・マスクにより動
作する。効果的なマスクは、システム/390のアーキ
テクチヤにおいて定義されているように、図7に示した
ETE中のMフイールドの制御の下にある権限キイ・マ
スク・フイールド及びエントリ・キイ・マスク・フイー
ルドによつて修正されたような、CR(制御レジスタ)
3中のPSWキイ・マスク・フイールドの修正である。
【0040】本発明の実施例の動作は、CR0のビツト
位置7(CR0.7として記載される)にある図8に示
したPSK(一般向けストレージ・キイ)モード・フイ
ールドをセツトすることによつて制御される。本発明の
実施例の動作は、CR0のビツト位置、0.7が1にセ
ツトされた時に呼び出され、そして、CR0.7が0に
セツトされた時に通常のキイ動作が得られる。
【0041】図9は、PSK動作を生じるように、CR
0.7が1にセツトされた時に、システム中の任意のC
P、またはI/Oからのストレージのアクセス要求に対
して実行される本発明の実施例の動作ステツプを示す。
【0042】図9において、ストレージ・アクセス要求
が図1のメイン・ストレージのコントローラによつて実
行するための優先を通常の態様で受け取つた時に、ステ
ツプ31に入る。
【0043】与えられたアクセス・キイが管理的なクラ
スのキイであることをステツプ31が見出したならば、
「イエス」の経路を通つて、そのアクセスを完成するた
めにステツプ32に行き、そして、ステツプ32におい
て、MS21における取出しアクセス要求、またはスト
ア・アクセス要求を完成するための図1の「MSアクセ
ス許容信号」が、保護キイのチエツクのハードウエア2
3によつてMS21に与えられる。ステツプ31におい
て、アクセス・キイが管理的なクラスのキイでないこと
が見出されたならば、処理はステツプ33に移動する
「ノー」の経路を取る。
【0044】ステツプ33は、アクセス・キイがストレ
ージ保護キイ(図2参照)中のACCフイールドと等し
いか否かを見出すために、アクセス・キイをテストす
る。若し、「イエス」ならば、取出しアクセス、または
ストアアクセスを完了するために、ステツプ32への経
路を取る。しかし、若し、アクセス・キイがストレージ
・キイと等しくなければ、アクセス・キイがPSKモー
ドにあるのか、または通常のモードにあるのかを決定す
るために、モード・ビツトCR、0.7の状態をテスト
するステツプ34に行く「ノー」の経路を取る。若し、
CR、0.7が0状態にあれば、PSKモードは、現在
のところ活性化されておらず、ステツプ38への「ノ
ー」の出口に行く。次に、ステツプ38において、アク
セス要求は、取出しアクセス要求であるか否かを決定す
るためにテストされる。ステツプ38において取出しア
クセス要求でないことが見出されたならば、そのアクセ
ス要求はストア・アクセス要求である。若し、アクセス
要求がストア・アクセスであることが見出されたなら
ば、そのストア・アクセスは許容されない。何故なら
ば、ステツプ33においてアクセス・キイがストレージ
・キイと等しい場合にだけ、ステツプ33からステツプ
32への「イエス」経路を経てストア・アクセスが許容
されるからである。しかし、この場合、アクセス・キイ
とストレージ・キイとの間での不同一性が表示されて、
ステツプ33の「ノー」の経路を取つたので、ストア要
求の完了は禁止される。従つて、若し、ステツプ38に
おいて、取出しアクセス要求が見出されなければ、ステ
ツプ38はステツプ41への「ノー」の経路を取り、ス
テツプ41において、このストア・アクセス要求は完成
されないことを表示するためにアクセス例外が発生され
る。その結果、図1のアクセス許容ラインは活性化され
ず、MSにおいてストア・アクセスが発生するのを阻止
する。
【0045】しかし、若し、CR、0.7がステツプ3
4によつて1状態であることが見出されたならば、PS
Kモードが存在し、そして、アクセス・キイが一般向け
キイのクラスとして定義されている保護キイのコード値
の任意の1つのコードと等しいか否かのテストを行なう
ことによつて、アクセス・キイが一般向けキイのクラス
の中にあるか否かを決定するステツプ36に向かう「イ
エス」の経路が取られる。若し、アクセス・キイが一般
向けクラスのキイと等しいことが見出されたならば、経
路はステツプ38に向かう「イエス」の経路を取る。
(例えば、値9、または15を一般向けクラス中の1つ
のキイとして選択することができ、あるいは、複数のキ
イの一般向けクラスは9、10及び15のキイを持たせ
ることができる。)
【0046】然しながら、若しアクセス・キイが一般向
けクラス中のどのキイとも等しくなければ、ステツプ3
6からステツプ37への「ノー」の経路を取る。ステツ
プ37は、現在の一般向けキイが一般向けキイのクラス
中の何れかのキイと等しいか否かをテストすることによ
つて、現在のアクセス・キイが一般向けのキイであるか
否かを決定する。若し、アクセス・キイが一般向けキイ
であれば、MSにおける取出しアクセス、またはストア
・アクセスを完了するためにステツプ37からステツプ
32への「イエス」の経路が取られる。しかし、若し、
ステツプ37において、アクセス・キイが一般向けキイ
ではないことが見出されたならば、FPビツトが取出し
アクセス要求である場合にのみFPビツトの状態がアク
セスを許容するのに使用されるので、現在のアクセス要
求が取出しアクセス要求であるか、または、取出しアク
セスでない(即ち、ストア・アクセスである)かを決定
するためのステツプ38に入る。
【0047】ステツプ38においてストア・アクセス要
求であることが見出された場合、既に説明したように、
ステツプ38からステツプ41への経路を取ることはな
い。(前のステツプ33において、ストレージ・キイは
アクセス・キイと等しくないことを見出した時にストア
・アクセスは許容されない。)然しながら、若し、その
アクセス要求が取出しアクセス要求であると決定された
ならば、ステツプ38からステツプ42への「イエス」
の経路が取られる。ステツプ42は、取出しアクセスの
保護がオン(FP=1)にセツトされているか否かを決
定するために、現在アドレスされているストレージ保護
キイ中のFPフイールドの状態をテストし、FP=1で
ある場合、取出しアクセスは禁止され、そして、割り込
みが取られて、現在のインストラクシヨンに対する実行
が抑制される禁止動作が取られていることを表示するア
クセス例外を発生するステツプ41に、「イエス」の経
路が取られる。ステツプ42において、若し、取出しア
クセスの保護がオフ(FP=0)にセツトされているこ
とが発見されれば、取出しアクセスが許容され、ステツ
プ32への「ノー」の経路を取る。
【0048】図10に示された状態図において、クラス
I、II及びIIIの3つの保護キイのクラスの階層が
示されており、この階層の中で、クラスIが最高位でク
ラスIIIが最低位であり、アクセス制御は、クラスI
からクラスII、クラスIIからクラスIIIへの順序
で制御の制限が厳しくなる。クラスIは管理的なクラス
であり、クラスIIは中間クラスであり、クラスIII
は一般向けクラスである。各クラスは1つ、またはそれ
以上の保護キイを含んでいる。例えば、4ビツトの保護
キイのフイールド(保護キイはキイ0乃至キイ15とし
て特定されている。)中の保護キイを特定するシステム
において、管理的なクラスIは、キイ0によつて任意に
表示することができる。一般向けクラスIIIはキイ9
によつて任意に表示することができる。従つて、中間ク
ラスIIは残りのキイ1乃至8及び10乃至15によつ
て表示される。
【0049】図10の図表において、各クラスを示す丸
印を出て、同じ丸印に戻る循環矢印によつて示されてい
るように、各クラスはそれ自身でアクセスすることがで
きる。これは、アクセス・キイとストレージ・キイの比
較において同一性がある場合を示している。クラスIは
中間クラスIIでも、一般向けクラスIIIでも任意の
他のクラスにアクセスすることができる。中間クラスI
Iがアクセスすることのできるクラスは一般クラスII
Iだけである。クラスIIIにある一般向けキイの使用
は他のクラスにアクセスすることはできず、そして、一
般向けキイは、1つの一般向けクラスのキイが他の一般
向けクラスのストレージ・キイに割り当てられたストレ
ージ・ブロツクに入ることを許容された後に、アクセス
・キイとストレージ・キイとの間の同一性の比較テスト
に差し向けられる。
【0050】以下の表は、図9で説明した方法によつて
制御され、図10に示した3つのクラスの状態を使用し
た時、ストレージ・キイ及びアクセス・キイの使用の結
果発生された取出しアクセス及びストア・アクセスを示
している。以下の表において、ストレージ・キイ中の取
出し保護(FP)ビツトの設定は、取出し動作を制御
し、この制御状態はアスタリスク「*」、即ちF*で示さ
れている。
【0051】 3つのクラスのアクセス制御表 ス ト レ ー ジ ・ キ イ クラスI クラスII クラスIII −−−−−−−−−−−−−−−−−−−−−−−−−−−−− ア ク クラスI F/S F/S F/S セ ス クラスII F* F*/S* F/S ・ キ クラスIII F* F* F*/S* イ 凡例:F/S=取出しアクセス(F)及びストア・アク
セス(S)が許容される。(FPビツトの設定には関係
なし。) F* =下記の条件(a)または(b)の場合だけ、取
出しアクセスが許容される。 (a) FP=0である。 (b) FP=1であり、かつ、アクセス・キイ=ス
トレージ・キイである。 S* =アクセス・キイ=ストレージ・キイの場合だ
け、ストア・アクセスが許容される。(FPビツトの設
定は影響しない。)
【0052】図11はMSのアクセス動作によつて保護
キイをチエツクする動作と重複するように動作されるの
が好ましい保護キイのチエツクのハードウエアを示して
いる。つまり、この保護キイのチエツクのハードウエア
は、MSのDRAMのアクセス動作と同時に動作するこ
とができ、そして、この保護キイのチエツクのハードウ
エアは、メモリが要求されたデータ単位に対して取出し
動作、またはストア動作を完了する前に、「アクセス可
能」信号か、または「アクセス例外」信号の何れかの出
力信号を発生することができる。
【0053】4つの比較回路131、133、137及
び136は、図11に示した比較を同時に(並列的に)
行なう図9に示したステツプ31、33、37及び36
による比較動作を遂行する。出力ライン72は図1に示
された「アクセス例外」信号を与える。これらは、図9
に示されたステツプ32及びステツプ41と同じ機能で
ある。
【0054】正電位ロジツク回路が図11に示されてお
り、図示された回路を実施するために使用されるアンド
回路、オア回路、インバータ回路はこの道の専門家には
公知である。比較回路131、133、137及び13
6の各々は図9に示した比較動作を遂行して、図11に
示したバイナリ1及び0出力信号を発生する。これらの
比較回路が図9で説明した条件を満して、「イエス」の
状態になれば、バイナリ1の出力信号が発生される。こ
れらの比較回路が図9で説明した条件を満足しないで、
「ノー」の状態になれば、バイナリ0の出力信号が発生
される。
【0055】図9の動作と図11の動作との間の対応関
係は以下の通りである。オア回路57からの出力信号は
図9のステツプ31、またはステツプ33の「イエス」
の経路を表わしている。アンド・ゲート55はステツプ
37からの「ノー」の経路を表わしている。アンド・ゲ
ート61、64及び67のいずれかからの信号は、ステ
ツプ38からの「ノー」の経路を表わしている。アンド
・ゲート62、64及び67のいずれかからの信号はス
テツプ42から「イエス」の経路を表わしている。アン
ド・ゲート63、65及び68のいずれかからの信号
は、ステツプ42から「ノー」の経路を表わしている。
【0056】図11に示したハードウエアの構成は図9
に示した処理を達成するための1つの方法を示すもので
ある。同じ機能を達成するために多くの他の回路構成を
与えるために、ブール代数による処理を図11の回路表
示に適用することができる。例えば、複数個のアンド・
ゲート及びそれらの入力は図9において、経路の順番毎
に1つのアンド・ゲートに組み入れることができ、この
場合、アンド・ゲート51、52、53及び54は、1
つのレベルのアンド・ゲートの動作にするために、アン
ド・ゲート61乃至69に編入することができる。
【0057】図11において、「アクセス完了」信号を
発生し、出力するためのライン71は、オア・ゲート回
路57及びアンド・ゲート63、65、68及び55か
らの複数個の信号をドツト・オア論理(ただ1つのオア
回路、または複数個のアンド・ゲートがライン71上に
一度に1つの信号を与える)で組み合せる。「アクセス
例外」信号を発生し、出力するためのライン72は、ア
ンド・ゲート61、62、64、66及び69からの複
数個の信号をドツト・オア論理(これらのゲートのうち
のただ1つだけがライン72の上に一度に1つの信号を
与える)で組み合せる。
【0058】
【発明の効果】本発明により、プログラミングで制御す
ることのできるメモリ・ストレージ用の保護キイの保護
のレベルを拡張することができる。
【図面の簡単な説明】
【図1】本発明の実施例を説明するためのブロツク図で
ある。
【図2】従来のストレージ保護キイを示す図である。
【図3】プログラム・ステータス・ワード(PSW)中
のアクセス・キイ及びPビツトを示す図である。
【図4】幾つかの異なつたタイプのインストラクシヨン
によつて使用される汎用目的レジスタ(GR)中のアク
セス・キイを示す図である。
【図5】I/O動作に用いられる動作要求ブロツク(O
RB)中のアクセス・キイを示す図である。
【図6】制御レジスタ(CR)3の中のPSWキイ・マ
スク・ビツトを示す図である。
【図7】アドレス空間制御において使用されるエントリ
・キイ・フイールド及びキイ・マスク・フイールドを示
す図である。
【図8】本発明の実施例によつて使用される一般向けス
トレージ・キイ(PSK)モードの制御フイールドを示
す図である。
【図9】本発明の処理方法の実施例を説明するための流
れ図である。
【図10】本発明の動作を説明するための状態図であ
る。
【図11】本発明の実施例のハードウエアを説明するた
めの図である。
【符号の説明】
20 メイン・ストレージのコントローラ 21 メイン・ストレージ(MS) 22 保護キイ・アレイ 23 保護キイのチエツクのハードウエア CP 中央処理装置
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成5年2月19日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】発明の名称
【補正方法】変更
【補正内容】
【発明の名称】 ストレージへのアクセスを保護する方
法及び装置と、ストレージ・ブロツクに隔離を与える方
フロントページの続き (72)発明者 マイケル・ジェラード・モール アメリカ合衆国ニューヨーク州、ラグラン ジェビル、スクゥエアー・ウッド・ドライ ブ 20番地 (72)発明者 キャスパー・アンソニー・スカルジ アメリカ合衆国ニューヨーク州、ポキプシ ー、アカデミー・ストリート、エイピーテ イ7E 16番地 (72)発明者 バスカ・シンハ アメリカ合衆国ニューヨーク州、ワッピン ジャース・フオールス、ケンデル・ドライ ブ 19番地

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 異なつたプログラムによつてデータ・ブ
    ロツクにアクセスすることができるデータ処理装置シス
    テムにおいて、メモリ・ストレージ中のデータ・ブロツ
    クへのアクセスに保護を与える方法において、 すべてのキイのうちの残りのキイが非一般向けキイであ
    るようにすべてのキイから一般向けキイを選択するステ
    ツプと、 システム中の特定のプログラムに対しての一般向けキイ
    から、一般向けアクセス・キイとして一般向けキイを割
    り当てるステツプと、 非一般向けアクセス・キイを持つプログラムの実行によ
    つてストア可能であるブロツクと、一般向けアクセス・
    キイを割り当てられたプログラムによつてストア可能で
    ない非一般向けストレージ・キイを割り当てられたブロ
    ツクとを除き、特定のプログラムによつて本来的にスト
    アされるブロツクに対して、一般向けストレージ・キイ
    と同じ一般向けキイを割り当てるステツプとを含むスト
    レージへのアクセスを保護する方法。
  2. 【請求項2】 プログラムのアクセス・キイと一般向け
    ストレージ・キイとの間の同一性が得られた時、特定の
    プログラムによつて、一般向けストレージ・キイを割り
    当てられたブロツクへのストア・アクセスを許容し、一
    般向けキイと等しくない非一般向けアクセス・キイを持
    つ他のプログラムによつて、一般向けストレージ・キイ
    を割り当てられたブロツクへのストア・アクセスを許容
    することを含む請求項1に記載のストレージへのアクセ
    スを保護する方法。
  3. 【請求項3】 一般向けキイをアクセス・キイとして使
    用可能にさせ、コンピユータの状態を一般向けキイ・モ
    ードに設定することによつてストレージ・キイとして使
    用可能にさせることを特徴とする請求項1に記載のスト
    レージへのアクセスを保護する方法。
  4. 【請求項4】 任意のブロツクに割り当てられた一般向
    けストレージ・キイと関連して取出しアクセスを保護す
    るフイールドを与えることと、 取出しアクセスの保護フイールドがオフにセツトされて
    いる場合には、一般向けアクセス・キイとして一般向け
    キイを割り当てられたプログラムによつて、非一般向け
    ストレージ・キイを割り当てられたブロツクへの取出し
    アクセス(ストア・アクセスではない)を許容し、取出
    しアクセスの保護フイールドがオンに設定されている場
    合には、上記一般向けキイを割り当てられたプログラム
    によつて、非一般向けストレージ・キイを割り当てられ
    たブロツクへの取出しアクセスを許容せず、かつ、非一
    般向けキイを割り当てられたブロツクへのストア・アク
    セスを常に阻止することを含む請求項1に記載のストレ
    ージへのアクセスを保護する方法。
  5. 【請求項5】 異なつた処理によりデータ・ブロツクに
    アクセスすることができるデータ処理装置システムのコ
    ンピユータ・ストレージ中のデータ・ブロツクへのアク
    セスを保護する方法において、 システムにおいて使用可能な0乃至15のキイ範囲から
    一般向けキイとして選択されたキイから一般向けアクセ
    ス・キイを特定のプログラムに割り当てることと、特定
    のプログラムによりアクセスさせ、そして、キイ範囲の
    中の残りのキイからの非一般向けアクセス・キイを割り
    当てられたシステム中のプログラムによつてアクセスさ
    せるストレージ中のブロツクに対して、一般向けストレ
    ージ・キイと同じ一般向けキイをストレージ中のブロツ
    クに割り当てることと、 一般向けストレージ・キイが特定のプログラムの一般向
    けアクセス・キイと同一性を持つ時だけに、特定のプロ
    グラムによつて、一般向けストレージ・キイを割り当て
    られたブロツクへのストア・アクセスを許容し、プログ
    ラム中の非一般向けアクセス・キイとブロツクの一般向
    けストレージ・キイとの間の同一性がなくとも、非一般
    向けアクセス・キイを用いたプログラムによつて、ブロ
    ツクへのストア・アクセスを許容することとを含むデー
    タ・ブロツクへのアクセスを保護する方法。
  6. 【請求項6】 ストア・アクセスに関する必要な権限を
    持たないプログラムによつてストレージ・ブロツク中に
    ストアされるのを防ぐための保護キイを使用したコンピ
    ユータ・システムにおけるストレージ中のブロツクの間
    を単一方向で隔離を与える方法において、 管理プログラムにより使用するための管理的なキイのク
    ラス(第1のクラス)中の管理的なキイとして複数の保
    護キイのうちの少なくとも1つの保護キイを割り当てる
    ことと、一般向けキイと同じストレージ保護キイを割り
    当てられたブロツクへストアすることに対して、プログ
    ラムにより制限して使用するための一般向けキイのクラ
    ス(第3のクラス)中の一般向けキイとして、少なくと
    も他の1つの保護キイを割り当てることと、中間的なキ
    イのクラス(第2のクラス)に1つ、またはそれ以上の
    保護キイを割り当てることと、 管理的なキイのクラス中のキイと同一性を持つキイか、
    または、中間的なキイのクラス中のキイと同一性を持つ
    キイと同じアクセス・キイを割り当てられたプログラム
    によつて、ストレージ・キイとして一般向けキイを割り
    当てられたブロツクにストア・アクセス及び取出しアク
    セスを許容するが、アクセス・キイとして一般向けキイ
    を使用するプログラムによつて、ストレージ・キイと同
    じ一般向けキイを割り当てられていないブロツクへのス
    トアを許容しないこととを含むストレージ・ブロツクの
    隔離を与える方法。
  7. 【請求項7】 一般向けキイの状態か、または非一般向
    けキイ状態かを特定するための制御レジスタ中の一般向
    けキイ・モード・フイールドを設定することと、一般向
    けキイの状態は任意のプログラムに対するアクセス・キ
    イとして、かつ任意のブロツクに対してストレージ・キ
    イとして一般向けキイの使用を許容し、非一般向けキイ
    の状態は一般向けキイの使用を禁止して、同じキイが非
    一般向けキイとして用いられるのを制御することを特徴
    とする請求項6に記載のストレージ・ブロツクの隔離を
    与える方法。
  8. 【請求項8】 複数のプログラムの同時実行を有するシ
    ステムにおけるストレージ・ブロツクへのアクセスを保
    護する方法において、 割り当てられたストレージ・ブロツクに対して権限を持
    たないプログラムによるストア・アクセス及び取出しア
    クセスに対して複数個のキイの組を与えることと、 管理的なキイ及び中間的なキイは非一般向けキイとなる
    ように、上記キイの組の中の複数個のキイを一般向けキ
    イ(第3のクラス)として選択し、1つの管理的なキイ
    (第1のクラス)として上記組から他のキイを選択し、
    上記組中の残りのキイを中間的なキイとして選択するこ
    とと、 上記キイの組の中の非一般向けキイと同じアクセス・キ
    イを割り当てられたプログラムによつて、一般向けキイ
    と同じストレージ・キイを割り当てられたブロツクへ読
    み取りアクセス及び書き込みアクセスを許容し、一般向
    けキイと同じアクセス・キイを割り当てられたプログラ
    ムによつて、同じ一般向けキイと同じストレージ・キイ
    を割り当てられたブロツクへ読み取り及び書き込みアク
    セスを許容し、一般向けキイと同じアクセス・キイを割
    り当てられたプログラムによつて、非一般向けキイと同
    じストレージ・キイ、または、アクセス・キイとは異な
    つた一般向けキイと同じストレージ・キイを持つブロツ
    クに書き込みアクセスを許容しないこととを含むストレ
    ージ・ブロツクへのアクセスを保護する方法。
  9. 【請求項9】 コンピユータ・システムのストレージ中
    のブロツク中のデータ単位にアクセスするためのプログ
    ラム要求によつて無権限のアクセスを防御する装置にお
    いて、 ストレージ中のブロツク中にアクセスされるデータ単位
    のアドレスを与え、上記ブロツクへのアクセスを要求す
    るプログラムに関連したアクセス・キイを与え、アクセ
    スの態様を識別する取出し/ストア信号を与えるプロセ
    ツサ手段と、 ストレージにおいてアドレスされたブロツクと関連した
    ストレージ・キイを取出すための手段と、 アクセス・キイは管理的キイの信号を与える管理的なキ
    イと同一か否かをテストする手段と、 同一性信号を与えるためにストレージ・キイとアクセス
    ・キイとを比較する手段と、 ストレージ・キイが一般向けストレージ・キイ信号を与
    えるための一般向けキイと同一であるか否かを決定する
    手段と、 アクセス・キイが一般向けアクセス・キイ信号を与える
    一般向けキイと同一であるか否かを決定する手段と、 (1)管理的なキイ信号が与えられた場合、または
    (2)同一性信号が与えられた場合、または(3)一般
    向けストレージ・キイ信号と、非一般向けアクセス・キ
    イ信号と、不同一性信号と非管理的なキイ信号とが与え
    られた場合、または(4)一般向けキイが付勢されてい
    る時に、取出しアクセス要求信号と、一般向けアクセス
    ・キイ信号と、不同一性信号と、非管理的なキイ信号と
    が与えられた場合、または(5)一般向けキイ信号が滅
    勢されている時に、取出しアクセス要求信号と、一般向
    けアクセス・キイ信号と、不同一性信号、または、非管
    理的なキイ信号が与えられた場合に、要求したプロセツ
    サ手段に信号を送り、アドレスされたデータ単位へのア
    クセスを可能にする回路手段とを含むデータ単位へのア
    クセスを保護する装置。
  10. 【請求項10】 (1)一般向けキイの使用が付勢され
    ている時に、ストア要求信号と、非一般向けストレージ
    ・キイ信号と、非一般向けアクセス・キイ信号と、不同
    一性信号と、非管理的なキイ信号とが与えられた場合、
    または(2)一般向けキイの使用が付勢されている時
    に、ストア要求信号と、一般向けアクセス・キイ信号
    と、不同一性信号と、非管理的なキイ信号が与えられた
    場合、(3)一般向けキイの使用が滅勢されている時
    に、ストア要求信号と、一般向けアクセス・キイ信号
    と、不同一性信号とが与えられた場合に、プロセツサに
    対して例外信号を発生して、要求プロセツサ手段から、
    または要求プロセツサ手段へアドレス・データ単位を送
    るのを阻止する回路手段を含むことを特徴とする請求項
    9に記載のデータ単位へのアクセスを保護する装置。
JP4106473A 1991-06-06 1992-04-24 ストレージへのアクセスを保護する方法及び装置と、ストレージ・ブロツクに隔離を与える方法 Expired - Lifetime JPH0736171B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/710,875 US5163096A (en) 1991-06-06 1991-06-06 Storage protection utilizing public storage key control
US710875 1991-06-06

Publications (2)

Publication Number Publication Date
JPH05204762A true JPH05204762A (ja) 1993-08-13
JPH0736171B2 JPH0736171B2 (ja) 1995-04-19

Family

ID=24855901

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4106473A Expired - Lifetime JPH0736171B2 (ja) 1991-06-06 1992-04-24 ストレージへのアクセスを保護する方法及び装置と、ストレージ・ブロツクに隔離を与える方法

Country Status (8)

Country Link
US (1) US5163096A (ja)
EP (1) EP0587587A1 (ja)
JP (1) JPH0736171B2 (ja)
CA (1) CA2064640C (ja)
HU (1) HUT67635A (ja)
PL (1) PL170547B1 (ja)
SK (1) SK136193A3 (ja)
WO (1) WO1992022032A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010535444A (ja) * 2007-08-01 2010-11-18 エヌエックスピー ビー ヴィ アプリケーションを無効にするための移動通信装置及び方法
EP2610755A2 (en) 2011-12-28 2013-07-03 Fujitsu Limited Information processing apparatus and unauthorized access prevention method

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5335334A (en) * 1990-08-31 1994-08-02 Hitachi, Ltd. Data processing apparatus having a real memory region with a corresponding fixed memory protection key value and method for allocating memories therefor
US5341422A (en) * 1992-09-17 1994-08-23 International Business Machines Corp. Trusted personal computer system with identification
US5491752A (en) * 1993-03-18 1996-02-13 Digital Equipment Corporation, Patent Law Group System for increasing the difficulty of password guessing attacks in a distributed authentication scheme employing authentication tokens
US5475829A (en) * 1993-03-22 1995-12-12 Compaq Computer Corp. Computer system which overrides write protection status during execution in system management mode
US5351295A (en) * 1993-07-01 1994-09-27 Digital Equipment Corporation Secure method of neighbor discovery over a multiaccess medium
US5475763A (en) * 1993-07-01 1995-12-12 Digital Equipment Corp., Patent Law Group Method of deriving a per-message signature for a DSS or El Gamal encryption system
US5483598A (en) * 1993-07-01 1996-01-09 Digital Equipment Corp., Patent Law Group Message encryption using a hash function
US7036019B1 (en) 1994-04-01 2006-04-25 Intarsia Software Llc Method for controlling database copyrights
US5590309A (en) * 1994-04-01 1996-12-31 International Business Machines Corporation Storage protection cache and backing storage having system control element data cache pipeline and storage protection bits in a stack array with a stack directory for the stack array
JPH07271865A (ja) 1994-04-01 1995-10-20 Mitsubishi Corp データベース著作権管理方法
JP2970739B2 (ja) * 1994-09-30 1999-11-02 日本ビクター株式会社 光ディスクの再生制御方法
US7302415B1 (en) 1994-09-30 2007-11-27 Intarsia Llc Data copyright management system
DE69532434T2 (de) 1994-10-27 2004-11-11 Mitsubishi Corp. Gerät für Dateiurheberrechte-Verwaltungssystem
US6424715B1 (en) * 1994-10-27 2002-07-23 Mitsubishi Corporation Digital content management system and apparatus
US8595502B2 (en) 1995-09-29 2013-11-26 Intarsia Software Llc Data management system
JP3786993B2 (ja) * 1995-12-14 2006-06-21 株式会社日立製作所 データ記憶ユニット及び該ユニットを用いたデータ記憶装置
US5802397A (en) * 1996-05-23 1998-09-01 International Business Machines Corporation 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
US5809546A (en) * 1996-05-23 1998-09-15 International Business Machines Corporation Method for managing I/O buffers in shared storage by structuring buffer table having entries including storage keys for controlling accesses to the buffers
US5787309A (en) * 1996-05-23 1998-07-28 International Business Machines Corporation 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
US5724551A (en) * 1996-05-23 1998-03-03 International Business Machines Corporation Method for managing I/O buffers in shared storage by structuring buffer table having entries include storage keys for controlling accesses to the buffers
US5900019A (en) * 1996-05-23 1999-05-04 International Business Machines Corporation Apparatus for protecting memory storage blocks from I/O accesses
JP3228182B2 (ja) 1997-05-29 2001-11-12 株式会社日立製作所 記憶システム及び記憶システムへのアクセス方法
US6229894B1 (en) * 1997-07-14 2001-05-08 Entrust Technologies, Ltd. Method and apparatus for access to user-specific encryption information
US6182174B1 (en) * 1998-04-13 2001-01-30 International Business Machines Corporation Memory card interface method using multiplexed storage protect key to indicate command acceptance
US7171567B1 (en) * 1999-08-02 2007-01-30 Harris Interactive, Inc. System for protecting information over the internet
EP1218860A2 (en) * 1999-09-20 2002-07-03 Ethentica, Inc. Cryptographic server with provisions for interoperability between cryptographic systems
US7391865B2 (en) 1999-09-20 2008-06-24 Security First Corporation Secure data parser method and system
JP2001167040A (ja) 1999-12-14 2001-06-22 Hitachi Ltd 記憶サブシステム及び記憶制御装置
US7657727B2 (en) * 2000-01-14 2010-02-02 Hitachi, Ltd. Security for logical unit in storage subsystem
JP4651230B2 (ja) * 2001-07-13 2011-03-16 株式会社日立製作所 記憶システム及び論理ユニットへのアクセス制御方法
US6684209B1 (en) * 2000-01-14 2004-01-27 Hitachi, Ltd. Security method and system for storage subsystem
US6748592B1 (en) * 2000-02-14 2004-06-08 Xoucin, Inc. Method and apparatus for protectively operating a data/information processing device
JP4719957B2 (ja) * 2000-05-24 2011-07-06 株式会社日立製作所 記憶制御装置及び記憶システム並びに記憶システムのセキュリティ設定方法
US7539828B2 (en) * 2000-08-08 2009-05-26 Faronics Corporation Method and system for automatically preserving persistent storage
US6807602B1 (en) * 2000-10-30 2004-10-19 Hewlett-Packard Development Company, L.P. System and method for mapping bus addresses to memory locations utilizing access keys and checksums
AU2003246111A1 (en) * 2003-07-07 2005-01-21 Lg Electronics, Inc. Upgrade apparatus and its method for home network system
WO2006047694A1 (en) 2004-10-25 2006-05-04 Orsini Rick L Secure data parser method and system
EP1952575B1 (en) 2005-11-18 2017-12-27 Security First Corp. Secure data parser method and system
US7634708B2 (en) * 2006-09-15 2009-12-15 International Business Machines Corporation Relocatable storage protect keys for system main memory
CA2670597A1 (en) 2006-12-05 2008-06-12 Don Martin Improved tape backup method using a secure data parser
EP2060053B1 (en) * 2007-09-14 2017-03-29 Security First Corp. Systems and methods for managing cryptographic keys
CA2710868A1 (en) 2008-01-07 2009-07-16 Security First Corp. Systems and methods for securing data using multi-factor or keyed dispersal
WO2009105280A2 (en) 2008-02-22 2009-08-27 Security First Corporation Systems and methods for secure workgroup management and communication
CA2760251A1 (en) 2009-05-19 2010-11-25 Security First Corp. Systems and methods for securing data in the cloud
WO2011068738A2 (en) 2009-11-25 2011-06-09 Orsini Rick L Systems and methods for securing data in motion
AU2011235068B2 (en) 2010-03-31 2015-10-01 Security First Corp. Systems and methods for securing data in motion
WO2011150346A2 (en) 2010-05-28 2011-12-01 Laurich Lawrence A Accelerator system for use with secure data storage
CN106100852A (zh) 2010-09-20 2016-11-09 安全第公司 用于安全数据共享的系统和方法
US8918885B2 (en) * 2012-02-09 2014-12-23 International Business Machines Corporation Automatic discovery of system integrity exposures in system code
US10146707B2 (en) 2017-03-14 2018-12-04 International Business Machines Corporation Hardware-based memory protection
GB2576005B (en) * 2018-07-31 2020-10-07 Advanced Risc Mach Ltd Handling guard tag loss

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR1562429A (ja) * 1967-04-11 1969-04-04
US3576544A (en) * 1968-10-18 1971-04-27 Ibm Storage protection system
US3761883A (en) * 1972-01-20 1973-09-25 Ibm Storage protect key array for a multiprocessing system
US3825903A (en) * 1973-04-30 1974-07-23 Ibm Automatic switching of storage protect keys
US4405829A (en) * 1977-12-14 1983-09-20 Massachusetts Institute Of Technology Cryptographic communications system and method
US4424414A (en) * 1978-05-01 1984-01-03 Board Of Trustees Of The Leland Stanford Junior University Exponentiation cryptographic apparatus and method
US4366537A (en) * 1980-05-23 1982-12-28 International Business Machines Corp. Authorization mechanism for transfer of program control or data between different address spaces having different storage protect keys
US4471163A (en) * 1981-10-05 1984-09-11 Donald Thomas C Software protection system
US4472790A (en) * 1982-02-05 1984-09-18 International Business Machines Corporation Storage fetch protect override controls
AU542447B2 (en) * 1982-02-27 1985-02-21 Fujitsu Limited System for controlling key storage unit
JPS5958700A (ja) * 1982-09-29 1984-04-04 Fujitsu Ltd 記憶保護判定方式
US4668318A (en) * 1983-12-19 1987-05-26 The Goodyear Tire & Rubber Company Method for producing braided spiral reinforced hose

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010535444A (ja) * 2007-08-01 2010-11-18 エヌエックスピー ビー ヴィ アプリケーションを無効にするための移動通信装置及び方法
US8811971B2 (en) 2007-08-01 2014-08-19 Nxp B.V. Mobile communication device and method for disabling applications
EP2610755A2 (en) 2011-12-28 2013-07-03 Fujitsu Limited Information processing apparatus and unauthorized access prevention method
US8521977B2 (en) 2011-12-28 2013-08-27 Fujitsu Limited Information processing apparatus and access control method

Also Published As

Publication number Publication date
US5163096A (en) 1992-11-10
HUT67635A (en) 1995-04-28
JPH0736171B2 (ja) 1995-04-19
SK136193A3 (en) 1994-08-10
CA2064640C (en) 1995-12-12
PL170547B1 (pl) 1996-12-31
HU9303459D0 (en) 1994-04-28
EP0587587A1 (en) 1994-03-23
WO1992022032A1 (en) 1992-12-10
CA2064640A1 (en) 1992-12-07

Similar Documents

Publication Publication Date Title
JPH05204762A (ja) ストレージへのアクセスを保護する方法及び装置と、ストレージ・ブロツクに隔離を与える方法
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
US5628023A (en) Virtual storage computer system having methods and apparatus for providing token-controlled access to protected pages of memory via a token-accessible view
US5619671A (en) Method and apparatus for providing token controlled access to protected pages of memory
US6745307B2 (en) Method and system for privilege-level-access to memory within a computer
US7774561B2 (en) Key-controlled object-based memory protection
US5802590A (en) Method and system for providing secure access to computer resources
EP0040702B1 (en) Authorization mechanism for transfer of program control or data between different address spaces having different storage protect keys
US7975117B2 (en) Enforcing isolation among plural operating systems
EP0115877B1 (en) Critical system protection
US5900019A (en) Apparatus for protecting memory storage blocks from I/O accesses
US7149873B2 (en) Methods and apparatus for a dual address space operating system
US5724551A (en) Method for managing I/O buffers in shared storage by structuring buffer table having entries include storage keys for controlling accesses to the buffers
WO1997036235A1 (en) Protection domains in a single address space
JPH0812645B2 (ja) データ処理システム内のシステムフアイルを保護する方法及びデータ処理システム
KR20050027082A (ko) 메모리 관리 시스템 및 선형 어드레스 기반 메모리 엑세스보안 제공 방법
JPH0736172B2 (ja) データ使用領域へのアクセスを制御する制御装置および方法
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
CN112639779A (zh) 用于存储器地址从对象特定虚拟地址空间转换成物理地址空间的安全性配置
KR100995146B1 (ko) 개선된 메모리 엑세스 보안을 제공하는 메모리에 디바이스엑세스를 제어하기 위한 시스템 및 방법
US5146565A (en) I/O Control system having a plurality of access enabling bits for controlling access to selective ports of an I/O device
KR20050018630A (ko) 타겟 보안을 결정하기 위한 물리적 어드레스-기반 보안에관한 방법 및 장치
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
JPH0133857B2 (ja)
JP4478458B2 (ja) 所望のセキュリティを用いた入出力デバイスにアクセスするための方法及び装置