JPS62100852A - 機密保護方法 - Google Patents
機密保護方法Info
- Publication number
- JPS62100852A JPS62100852A JP61254524A JP25452486A JPS62100852A JP S62100852 A JPS62100852 A JP S62100852A JP 61254524 A JP61254524 A JP 61254524A JP 25452486 A JP25452486 A JP 25452486A JP S62100852 A JPS62100852 A JP S62100852A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- routine
- calling routine
- gateway
- privilege level
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 12
- 230000003111 delayed effect Effects 0.000 claims description 8
- 230000003028 elevating effect Effects 0.000 claims description 2
- 101100424692 Arabidopsis thaliana TBL30 gene Proteins 0.000 abstract 1
- 238000012790 confirmation Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000012795 verification Methods 0.000 description 2
- OVSKIKFHRZPJSS-UHFFFAOYSA-N 2,4-D Chemical compound OC(=O)COC1=CC=C(Cl)C=C1Cl OVSKIKFHRZPJSS-UHFFFAOYSA-N 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/468—Specific access rights for resources, e.g. using capability register
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45537—Provision of facilities of other operating environments, e.g. WINE
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の技術分野〕
本発明は低い特権レベルのルーチンが高い特権レベルの
ルーチンを呼び出す機密保護方法に関する。
ルーチンを呼び出す機密保護方法に関する。
階層型計算機システムにおいては、低い特権を有するプ
ロセスが、より高い特権を有するシステム全体に渉るサ
ービスルーチンを呼び出すときは常に保護確認が必須で
ある。
ロセスが、より高い特権を有するシステム全体に渉るサ
ービスルーチンを呼び出すときは常に保護確認が必須で
ある。
このようなシステムに通常用意される特権レベルとして
は、オペレーティングシステムのみに与えられる最高位
特権、オペレーティングシステム及び中間のプログラム
スーパーバイザに与えられるいくつかの中位特権、そし
て非特権操作およびユーザプログラムに与えられる最低
位特権があるうユーザプログラムがオペレーティングシ
ステムそのものによってしか実行できないようなこと(
例えば仮想番地計算機メモリの物理メモリ部分のアクセ
スなど)を行うため、オペレーティングシステムを呼び
出す必要が生じると、ある形式の保護が行われニーザブ
ログラムはある順序に従ってのみ高位特権ルーチンを使
用することが可能である。
は、オペレーティングシステムのみに与えられる最高位
特権、オペレーティングシステム及び中間のプログラム
スーパーバイザに与えられるいくつかの中位特権、そし
て非特権操作およびユーザプログラムに与えられる最低
位特権があるうユーザプログラムがオペレーティングシ
ステムそのものによってしか実行できないようなこと(
例えば仮想番地計算機メモリの物理メモリ部分のアクセ
スなど)を行うため、オペレーティングシステムを呼び
出す必要が生じると、ある形式の保護が行われニーザブ
ログラムはある順序に従ってのみ高位特権ルーチンを使
用することが可能である。
何らかの保護がなされないと、システム内のデータの機
密はなくなり、どのプログラムもシステムデータ全てに
対して無制限にアクセスできるようになる。あるいは、
ユーザプログラムがオペレーティングシステムを破壊す
ることも実際起り得る。これらのいずれも今日の商用シ
ステムで受は入れられる余地はない。たとえば、賃金台
帳がシステム内に格納されており、そのシステムに特権
保護がなされていなければ、唯でも単にユーザプログラ
ムを書くことにより自分の昇給が行えよう。
密はなくなり、どのプログラムもシステムデータ全てに
対して無制限にアクセスできるようになる。あるいは、
ユーザプログラムがオペレーティングシステムを破壊す
ることも実際起り得る。これらのいずれも今日の商用シ
ステムで受は入れられる余地はない。たとえば、賃金台
帳がシステム内に格納されており、そのシステムに特権
保護がなされていなければ、唯でも単にユーザプログラ
ムを書くことにより自分の昇給が行えよう。
このような保護確認は頻繁に発生し、呼出ルーチンのア
クセス権と特権の正当化に多くのシステム資源を必要と
する。そのため、システム性能が著しく労化する。
クセス権と特権の正当化に多くのシステム資源を必要と
する。そのため、システム性能が著しく労化する。
従来のシステムでは、オペレーティングシステムに対す
るエントリポイントを制限するためにスーパーバイザコ
ール命令を頻繁に使用していた。
るエントリポイントを制限するためにスーパーバイザコ
ール命令を頻繁に使用していた。
より高い特権を望むユーザプログラムはスーパーバイザ
コール命令によりシステムプロ七ツ丈に実際ハードウェ
ア割込を起し、システムは単一のオペレーティングシス
テム位置に分岐するっオペレーティングシステムはユー
ザの要求が何であったかを解明し、大きな特権ディスバ
ッチ表を介して分岐し所要の操作を行い、単一のオペレ
ーティングシステム位置に復帰し、全ての所要システム
状態を格納してユーザプログラムに戻る。
コール命令によりシステムプロ七ツ丈に実際ハードウェ
ア割込を起し、システムは単一のオペレーティングシス
テム位置に分岐するっオペレーティングシステムはユー
ザの要求が何であったかを解明し、大きな特権ディスバ
ッチ表を介して分岐し所要の操作を行い、単一のオペレ
ーティングシステム位置に復帰し、全ての所要システム
状態を格納してユーザプログラムに戻る。
従って本発明の目的は、スーパーバイザコールや割込が
不安な高速特権確認をおこなう方法を提供することであ
る。
不安な高速特権確認をおこなう方法を提供することであ
る。
本発明の1実施例では新しく“ゲートウェイ”命令を設
け、スーパーバイザコールや割込を必要とせずに、計算
機システムにおける特権確認を単一サイクルオペレーシ
ョンで行う。加えて、ゲートウェイ命令ハオペレーティ
ングシステムへのエントリポイントを無数に許容する。
け、スーパーバイザコールや割込を必要とせずに、計算
機システムにおける特権確認を単一サイクルオペレーシ
ョンで行う。加えて、ゲートウェイ命令ハオペレーティ
ングシステムへのエントリポイントを無数に許容する。
高い特権を有するサービスをコンピュータシステムの他
のプロシージャの呼び出し罠用いるのと同じ丈ブルーチ
ンコールの約定?用いて呼び出すことができる。そこで
、低位特権ルーチンでより高位の特権レベルを要求する
ためにコンパイルされたコードは“通常の”プロシージ
ャコールと同じになる。
のプロシージャの呼び出し罠用いるのと同じ丈ブルーチ
ンコールの約定?用いて呼び出すことができる。そこで
、低位特権ルーチンでより高位の特権レベルを要求する
ためにコンパイルされたコードは“通常の”プロシージ
ャコールと同じになる。
呼び出されたエントリポイントの駐在する仮想メモリの
ページがゲートウェイ型の集合の1つであると、ゲート
ウェイ命令はページ自身が指定するレベルに昇位すべき
ルーチンの特権を昇位する。
ページがゲートウェイ型の集合の1つであると、ゲート
ウェイ命令はページ自身が指定するレベルに昇位すべき
ルーチンの特権を昇位する。
そして特権レベルの変更が必要なくなるページの特権よ
り高位の¥f権が与えられるまでひきつづき高位特権を
要求するのに必安な動作を実行させる。
り高位の¥f権が与えられるまでひきつづき高位特権を
要求するのに必安な動作を実行させる。
実際の機密確認は、変換索引バンファ(T L B )
が仮想アドレス変換を実行中に、呼び出されたルーチン
の仮想ページ番地に付随する7ビツトのアクセス権フィ
ールドのビットと現在走行中のプロセスの特権レベルの
状態をつぎ合わせて確認することで先ず実行される。
が仮想アドレス変換を実行中に、呼び出されたルーチン
の仮想ページ番地に付随する7ビツトのアクセス権フィ
ールドのビットと現在走行中のプロセスの特権レベルの
状態をつぎ合わせて確認することで先ず実行される。
呼び出し側の特権レベルが限界内にあれば、TLBはタ
ーゲット仮想ページにある命令の実行を呼び出したルー
チンに許可するうつぎにゲートウェイ命令の実行が進ん
で、’r L 8エントリのアクセス権フィールドにあ
る他のピントが与える所髪の特権レベルをもつゲートウ
ェイが指定する位置に分岐する。しかしながら、呼び出
しルーチンが該ルーチンが現在有する特権レベルより高
位のあるいはより低位の特権を要するページを実行しよ
うとすると、’r L Bはゲートウェイ命令を含む命
令の実行を禁止しソフトウェアトラップをかけも従って
呼び出しルーチンが不許可命令を実行することは絶対に
ない。この保護図式が他の命令の実行を不許可ページか
ら閉め出す図式に近ければ。
ーゲット仮想ページにある命令の実行を呼び出したルー
チンに許可するうつぎにゲートウェイ命令の実行が進ん
で、’r L 8エントリのアクセス権フィールドにあ
る他のピントが与える所髪の特権レベルをもつゲートウ
ェイが指定する位置に分岐する。しかしながら、呼び出
しルーチンが該ルーチンが現在有する特権レベルより高
位のあるいはより低位の特権を要するページを実行しよ
うとすると、’r L Bはゲートウェイ命令を含む命
令の実行を禁止しソフトウェアトラップをかけも従って
呼び出しルーチンが不許可命令を実行することは絶対に
ない。この保護図式が他の命令の実行を不許可ページか
ら閉め出す図式に近ければ。
ゲートウェイ保護はシステムの他の命令と同じ構造にな
る。
る。
そこで、ゲートウェイ命令はプログラムカウンタの状態
に関連した通常の分岐命令(即bsPc相対分岐)と同
様に作用する。加えてゲートウェイ命令はゲートウェイ
分岐のフィールドで指定される汎用レジスタに呼び出し
ルーチンの本来の特権レベルを退避する。このレジスタ
(呼び出しルーチン復帰リンク格納レジスタと称する)
の低位2ビツトは呼び出し側の2ピツト特権レベルであ
る。ゲートウェイ命令の実行によりこれらの2ビツトが
呼び出し側の実際の特権レベルに強制されるので、呼び
出しルーチンが復帰リンクを捏造して呼び出し側をより
高い特権レベルで復帰させることは不可能である。
に関連した通常の分岐命令(即bsPc相対分岐)と同
様に作用する。加えてゲートウェイ命令はゲートウェイ
分岐のフィールドで指定される汎用レジスタに呼び出し
ルーチンの本来の特権レベルを退避する。このレジスタ
(呼び出しルーチン復帰リンク格納レジスタと称する)
の低位2ビツトは呼び出し側の2ピツト特権レベルであ
る。ゲートウェイ命令の実行によりこれらの2ビツトが
呼び出し側の実際の特権レベルに強制されるので、呼び
出しルーチンが復帰リンクを捏造して呼び出し側をより
高い特権レベルで復帰させることは不可能である。
また、呼び出しルーチンによって呼び出されたルーチン
がさらにもう1つの特権ルーチンのサービ、スを必要と
するときは、呼び出されたルーチンが自身でもう1つの
ゲートウェイな介して前記同様に呼び出しをおこなう。
がさらにもう1つの特権ルーチンのサービ、スを必要と
するときは、呼び出されたルーチンが自身でもう1つの
ゲートウェイな介して前記同様に呼び出しをおこなう。
最後に1通常のパイブライ/計算機のように遅延分岐を
許容する計算機システムにおいては、遅延される命令が
開始したあと所与の数マシンサイクル(遅延期間)遅延
される命令は実際に実行されず、このような場合ゲート
ウェイ命令に対して払わねばならない注意について記載
する。この場合呼び出しルーチンは生起した分岐の遅延
期間にゲートウェイ命令を実行してはならない、何故な
と い らば、こうするこKてゲートウェイ(及び特権昇位)が
実行され、高位特権で呼び出しルーチンに制御が返され
るからである。このような動作の結果として呼び出しル
ーチンは、オベンーティングシステムの制御を受けずに
それ自身の特権レベルを実効的に昇位することになり、
保護確認機構全体を破壊してし15つ 〔発明l実施例〕 第1図は本発明のl実施例を使用するパイプライン計算
機1017)ブロック図で第2図はシステムlOを保護
するだめのゲートウェイ命令の使用方法を示すフローチ
ャートである。命令ユニット20は高位特権サービスル
ーチンにプロシージャコールを要求する低位特権ルーチ
ンを格納している。
許容する計算機システムにおいては、遅延される命令が
開始したあと所与の数マシンサイクル(遅延期間)遅延
される命令は実際に実行されず、このような場合ゲート
ウェイ命令に対して払わねばならない注意について記載
する。この場合呼び出しルーチンは生起した分岐の遅延
期間にゲートウェイ命令を実行してはならない、何故な
と い らば、こうするこKてゲートウェイ(及び特権昇位)が
実行され、高位特権で呼び出しルーチンに制御が返され
るからである。このような動作の結果として呼び出しル
ーチンは、オベンーティングシステムの制御を受けずに
それ自身の特権レベルを実効的に昇位することになり、
保護確認機構全体を破壊してし15つ 〔発明l実施例〕 第1図は本発明のl実施例を使用するパイプライン計算
機1017)ブロック図で第2図はシステムlOを保護
するだめのゲートウェイ命令の使用方法を示すフローチ
ャートである。命令ユニット20は高位特権サービスル
ーチンにプロシージャコールを要求する低位特権ルーチ
ンを格納している。
命令ユニット20は、ゲートウェイ命令の適当なエント
リポイントを格納する物理メモリ40内の位置を決定す
るため、仮想アドレスバス35を介してTLB30をア
ドレスしこの高位特権ルーチンをシークする。典型的に
は、ゲートウェイ命令の種々のエントリポイントがプロ
グラミング用システム文書内で公開される。TLB30
は物理メモリ40内の所望のエントリポイントのアドレ
スな計算する5次に計算されたアドレスに格納されたゲ
ートウェイ命令が次の命令バス5oを介して物理メモリ
40から命令ユニット20へ、実行ユニット60へそし
てフジスタフアイル80内・の物理ターゲットレジスタ
70へそれぞれ転送され本その後、高位特権サービスル
ーチンから復帰するだめの復帰アドレスが命令ユニット
2oにより結果バス85を介してターゲットレジスタ7
oに格納される。第3図に示すターゲットレジスタ7゜
は、低位2ビツト3]0に格納された本来の低位特権レ
ベルといっしょに復帰アト”レスをアドレス位置300
に格納する。T L 830は、次に実行アクセスが許
されるかどうかを決定するため、簡単に後述するように
、呼び出し命令のアクセス権を確認する。実行アクセス
がTL830により拒否されると、実行ユニット60内
のゲートウェイ命令の実行を停止するため、TL830
からトラップ制御パス90を介して命令ユニット20に
ソフトウェアトラップが転送される。TL830が実行
d煕 アクセスを許可すると、遅延#喘分岐が保留されてなけ
れば、ゲートウェイ命令はターゲットレジスタ70の低
位2ビツトに格納された実際の特権レベルを(呼出しル
ーチンによって捏造されないように)再退避する。つぎ
に、呼び出し命令の特権をゲートウェイ命令を格納する
ページに対するTLBエントリのページ型式フィールド
412で指定される特権レベルに昇位する。そして、呼
ばれたルーチンへ分岐するためのターゲットアドレスが
命令ユニット20あるいは実行ユニット60で適宜計算
される。つぎにターゲットアドレスにあるター、ゲット
命令が命令ユニット20で使用するためシステムの次の
命令サイクルで物理メモリ40から取り出される。そし
て所望の高位特権を持つ呼ばれたサービスルーチンの実
行が実行ユニット60内で進む。従ってゲートウェイ命
令はエントリポイントからターゲット命令への遅延分岐
として働く。
リポイントを格納する物理メモリ40内の位置を決定す
るため、仮想アドレスバス35を介してTLB30をア
ドレスしこの高位特権ルーチンをシークする。典型的に
は、ゲートウェイ命令の種々のエントリポイントがプロ
グラミング用システム文書内で公開される。TLB30
は物理メモリ40内の所望のエントリポイントのアドレ
スな計算する5次に計算されたアドレスに格納されたゲ
ートウェイ命令が次の命令バス5oを介して物理メモリ
40から命令ユニット20へ、実行ユニット60へそし
てフジスタフアイル80内・の物理ターゲットレジスタ
70へそれぞれ転送され本その後、高位特権サービスル
ーチンから復帰するだめの復帰アドレスが命令ユニット
2oにより結果バス85を介してターゲットレジスタ7
oに格納される。第3図に示すターゲットレジスタ7゜
は、低位2ビツト3]0に格納された本来の低位特権レ
ベルといっしょに復帰アト”レスをアドレス位置300
に格納する。T L 830は、次に実行アクセスが許
されるかどうかを決定するため、簡単に後述するように
、呼び出し命令のアクセス権を確認する。実行アクセス
がTL830により拒否されると、実行ユニット60内
のゲートウェイ命令の実行を停止するため、TL830
からトラップ制御パス90を介して命令ユニット20に
ソフトウェアトラップが転送される。TL830が実行
d煕 アクセスを許可すると、遅延#喘分岐が保留されてなけ
れば、ゲートウェイ命令はターゲットレジスタ70の低
位2ビツトに格納された実際の特権レベルを(呼出しル
ーチンによって捏造されないように)再退避する。つぎ
に、呼び出し命令の特権をゲートウェイ命令を格納する
ページに対するTLBエントリのページ型式フィールド
412で指定される特権レベルに昇位する。そして、呼
ばれたルーチンへ分岐するためのターゲットアドレスが
命令ユニット20あるいは実行ユニット60で適宜計算
される。つぎにターゲットアドレスにあるター、ゲット
命令が命令ユニット20で使用するためシステムの次の
命令サイクルで物理メモリ40から取り出される。そし
て所望の高位特権を持つ呼ばれたサービスルーチンの実
行が実行ユニット60内で進む。従ってゲートウェイ命
令はエントリポイントからターゲット命令への遅延分岐
として働く。
最後の呼び出されたサービスルーチンが完了スると、実
行ユニット60は結果バス85を介してターゲットレジ
スタ70に格納された復帰アドレスを読み出し、ターゲ
ットレジスタ70に格納された本来の低位特権を持つ指
定の復帰アドレスの呼び出しルーチンに復帰する。
行ユニット60は結果バス85を介してターゲットレジ
スタ70に格納された復帰アドレスを読み出し、ターゲ
ットレジスタ70に格納された本来の低位特権を持つ指
定の復帰アドレスの呼び出しルーチンに復帰する。
TL830による実際の機密保護は、ゲートウェイ命令
のアクセスに対すると同様な“通常の”命令に対するも
のと同じであり、それは仮想メモリのページ全体の粒状
度に応じてなされる。すなわち、1度T L t330
が呼び出しルーチンの実行アクセス権を承認すると、呼
び出しルーチンは第4図に示すようにゲートウェイ命令
430を含む仮想メモリページ410上の全ての情報に
対して実行アクセスをHこなえる。各仮想ページ410
はそのページに対するアクセス権とアクセス識別子を含
むページ特性400と関連している。ページ特性400
は、呼び出しルーチンのアクセス型式(読み出し、書き
込み、実行)、特権レベル、そしてメモリページ410
上に読み出し、書き込みあるいは実行することが呼び出
しルーチンに許町されているかどうかを確認する1組の
保護識別子と比較される。
のアクセスに対すると同様な“通常の”命令に対するも
のと同じであり、それは仮想メモリのページ全体の粒状
度に応じてなされる。すなわち、1度T L t330
が呼び出しルーチンの実行アクセス権を承認すると、呼
び出しルーチンは第4図に示すようにゲートウェイ命令
430を含む仮想メモリページ410上の全ての情報に
対して実行アクセスをHこなえる。各仮想ページ410
はそのページに対するアクセス権とアクセス識別子を含
むページ特性400と関連している。ページ特性400
は、呼び出しルーチンのアクセス型式(読み出し、書き
込み、実行)、特権レベル、そしてメモリページ410
上に読み出し、書き込みあるいは実行することが呼び出
しルーチンに許町されているかどうかを確認する1組の
保護識別子と比較される。
アクセス権はページ特性40007ピントに符号化され
てHす、最初の3ビツト412がページ型式を指定し、
残り4ビツト415は呼び出しルーチンがページ410
を使用するのに許町されるべき最高位および最低位特権
を指定する2つの特権レベルフィールドである。第5図
はページ特性400の中でアクセス権がどのようにコー
ド化されるかを示す。
てHす、最初の3ビツト412がページ型式を指定し、
残り4ビツト415は呼び出しルーチンがページ410
を使用するのに許町されるべき最高位および最低位特権
を指定する2つの特権レベルフィールドである。第5図
はページ特性400の中でアクセス権がどのようにコー
ド化されるかを示す。
ここで、XI、EASTとXMO8Tは実行できる最低
位と最高位の特権レベルであり、RBAD及びWRI’
rg フィールドはページ410にアクセスできる最
低位特権フィールドを指定する。そこで、通常のシステ
ム機能では3つのアクセス型式(読み出し、書き込み及
び実行)が可能であり、それらは、XLEAS’r と
XMO8T限界内ニオけるロード確認のみの読み出しア
クセス、ストア確認のみの書き込みアクセス、命令取り
出し確認のみの実行アクセスである。一般に、第5図に
示すように4つの相異る型式のゲートウェイベージ(す
なわち所有/ゲートウェイ0.1.2.3)があればシ
ステム10で必要な数の異る特権レベルを定義するのに
十分である。異る特権レベルが4つであるから、ゲート
ウェイの4つの異る状態(00。
位と最高位の特権レベルであり、RBAD及びWRI’
rg フィールドはページ410にアクセスできる最
低位特権フィールドを指定する。そこで、通常のシステ
ム機能では3つのアクセス型式(読み出し、書き込み及
び実行)が可能であり、それらは、XLEAS’r と
XMO8T限界内ニオけるロード確認のみの読み出しア
クセス、ストア確認のみの書き込みアクセス、命令取り
出し確認のみの実行アクセスである。一般に、第5図に
示すように4つの相異る型式のゲートウェイベージ(す
なわち所有/ゲートウェイ0.1.2.3)があればシ
ステム10で必要な数の異る特権レベルを定義するのに
十分である。異る特権レベルが4つであるから、ゲート
ウェイの4つの異る状態(00。
01.10.l])を定義するにはビット412中の2
ビツトあれば十分である。そしてこれら2ビツトが対応
するページのゲートウェイ命令の実行の結果の特権レベ
ルを決定する。
ビツトあれば十分である。そしてこれら2ビツトが対応
するページのゲートウェイ命令の実行の結果の特権レベ
ルを決定する。
前述のように、ゲートウェイ命令は生起分岐命令(ta
<en branch 1nstruction )の
パイプライン遅延期間許可されない。このようなことが
起らないように命令ユニット(第1図参照)内の第6図
に示す状態語60008ビツトがセットされ生起遅延分
岐が保留かどうかを指示する。Bビットは命令ユニット
20によって生起分岐とれについてもセットされ、パイ
プライン遅延期間内は真であり、遅延期間後の次のパイ
プラインサイクルで命令ユニット20によりクリアされ
る。従って、第2図に示すように、生起分岐が保留中に
ゲートウェイ命令が実行されようとすると、ゲートウェ
イ命令はトラップされ呼び出しルーチンがそれ自身の特
権レベルを昇位しないようにする。
<en branch 1nstruction )の
パイプライン遅延期間許可されない。このようなことが
起らないように命令ユニット(第1図参照)内の第6図
に示す状態語60008ビツトがセットされ生起遅延分
岐が保留かどうかを指示する。Bビットは命令ユニット
20によって生起分岐とれについてもセットされ、パイ
プライン遅延期間内は真であり、遅延期間後の次のパイ
プラインサイクルで命令ユニット20によりクリアされ
る。従って、第2図に示すように、生起分岐が保留中に
ゲートウェイ命令が実行されようとすると、ゲートウェ
イ命令はトラップされ呼び出しルーチンがそれ自身の特
権レベルを昇位しないようにする。
以上本発明の1実施例によれば、スーパーバイザコール
を使用することなく低位特権のルーチンがより高位の特
権を有するサービスルーチンを呼び出して使用すること
ができる。かつ、それは単一サイクルオペレーションで
あるから、従来にない速度と省資源を達成できる。従っ
て実用に供して有益である。
を使用することなく低位特権のルーチンがより高位の特
権を有するサービスルーチンを呼び出して使用すること
ができる。かつ、それは単一サイクルオペレーションで
あるから、従来にない速度と省資源を達成できる。従っ
て実用に供して有益である。
第1図は本発明の実施例を用いた保護システムを使用す
る計算機システム全体のブロック図、第2図は第1図の
システムを保護するためのフローチャート、第3図は本
発明の1実施例で用いるゲートウェイ命令の実行中呼び
出しルーチンの本来の特権しづルを保持するターゲット
レジスタの構造図、第4図は本発明の1実施例で用いる
ゲートウェイ命令を格納するメモリページのブロック図
、第5図は本発明の1実施例で用いるアクセス権を示す
図、第6図は第1図のシステムにおけるプロセッサ状態
語の構成を示す図。 10 : /<イブライン計算機、20:命令ユニソ)
;30:’rL8;40:物理メモIJ:35:仮想ア
ドレスバス;50:次の命令バス;60:%行ユニット
;70:物理ターゲットレジスタ;80:ターゲットレ
ジスタファイル;85:結果バス;90ニドラップ制御
バス; 300 ニアドレス位置; 310 :本来の
特権レベル; 400 :ベージ特性; 410 :仮
想メモリページ; 412 :ページ型式フィールド;
430 ニゲ−トウエイ命令; 600 :状態語。 出願人 嘴河・ヒユーレット・パッカード株式会社代理
人 弁理士 長 谷 川 次 男000
同At) −001READ
Wf21TE010
READ/XLEA’E)丁 XMO
ST011 REAC)/XLE−AST
wgtvt/ThosT100 X
LEAST XMOST101
XLE−AST XMOST
−110XLEAST XMOST1
11 ’ XLEAST
XMOS丁F] ゲートや伝イ 芙メ1稼) 川 マ(才俣君lレベ)し 動出しマ1甲−5−ニタ 1C眸 ヂレタ 嘔垂ノ檜ケ づ−トー ダメヤミック コード :G 5 第1頁の絖き o発 明 者 テレンス・シー・ミラ アメ1゜−
り・= [力合衆国カリフォルニア州メンロー・パーク、オーを
−ト169
る計算機システム全体のブロック図、第2図は第1図の
システムを保護するためのフローチャート、第3図は本
発明の1実施例で用いるゲートウェイ命令の実行中呼び
出しルーチンの本来の特権しづルを保持するターゲット
レジスタの構造図、第4図は本発明の1実施例で用いる
ゲートウェイ命令を格納するメモリページのブロック図
、第5図は本発明の1実施例で用いるアクセス権を示す
図、第6図は第1図のシステムにおけるプロセッサ状態
語の構成を示す図。 10 : /<イブライン計算機、20:命令ユニソ)
;30:’rL8;40:物理メモIJ:35:仮想ア
ドレスバス;50:次の命令バス;60:%行ユニット
;70:物理ターゲットレジスタ;80:ターゲットレ
ジスタファイル;85:結果バス;90ニドラップ制御
バス; 300 ニアドレス位置; 310 :本来の
特権レベル; 400 :ベージ特性; 410 :仮
想メモリページ; 412 :ページ型式フィールド;
430 ニゲ−トウエイ命令; 600 :状態語。 出願人 嘴河・ヒユーレット・パッカード株式会社代理
人 弁理士 長 谷 川 次 男000
同At) −001READ
Wf21TE010
READ/XLEA’E)丁 XMO
ST011 REAC)/XLE−AST
wgtvt/ThosT100 X
LEAST XMOST101
XLE−AST XMOST
−110XLEAST XMOST1
11 ’ XLEAST
XMOS丁F] ゲートや伝イ 芙メ1稼) 川 マ(才俣君lレベ)し 動出しマ1甲−5−ニタ 1C眸 ヂレタ 嘔垂ノ檜ケ づ−トー ダメヤミック コード :G 5 第1頁の絖き o発 明 者 テレンス・シー・ミラ アメ1゜−
り・= [力合衆国カリフォルニア州メンロー・パーク、オーを
−ト169
Claims (1)
- 【特許請求の範囲】 1、コンピュータシステムにおいて低位特権呼び出しル
ーチンが高位特権サービスルーチンを呼び出す際におけ
るつぎの(イ)〜(チ)の工程より成る機密保護方法。 (イ)前記呼び出しルーチンの現アクセス権を決定する
ため命令ユニットのアクセス権フィールドを読み出す工
程、 (ロ)前記呼び出しルーチンの指定するゲートウェイ命
令を格納するメモリページのアクセス権を決定するため
該メモリページのアクセス権フィールドを読み出す工程
、 (ハ)前記呼び出しルーチンの現アクセス権と前記メモ
リページのアクセス権を比較する工程、 (ニ)前記比較により前記呼び出しルーチンが前記メモ
リページへエントリが許可されたとき、前記呼び出しル
ーチンの特権レベルを前記ゲートウェイ命令が指定する
より高位の特権レベルに昇位する工程、 (ホ)前記呼び出しルーチンの物理ターゲットレジスタ
に前記呼び出しルーチンの本来の低位特権レベルを格納
する工程、 (ヘ)前記サービスルーチンの制御により、前記ゲート
ウェイ命令により指定された前記サービスルーチンの位
置に分岐する工程、 (ト)前記サービスルーチンを実行する工程、(チ)前
記ターゲットレジスタに格納された前記本来の低位特権
レベルとアドレス位置で前記呼び出しルーチンに制御を
返す工程。 2、前記エントリが許可されないとき前記ゲートウェイ
命令の実行をトラップする工程を含む特許請求の範囲第
1項記載の機密保護方法。 3、前記コンピュータシステムが遅延分岐命令を有し、
前記比較をおこなったとき前記遅延分岐命令が保留中の
とき前記ゲートウェイ命令の実行をトラップする工程を
含む特許請求の範囲第1項記載の機密保護方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/792,702 US4809160A (en) | 1985-10-28 | 1985-10-28 | Privilege level checking instruction for implementing a secure hierarchical computer system |
US792702 | 1985-10-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS62100852A true JPS62100852A (ja) | 1987-05-11 |
JPH0738160B2 JPH0738160B2 (ja) | 1995-04-26 |
Family
ID=25157790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61254524A Expired - Lifetime JPH0738160B2 (ja) | 1985-10-28 | 1986-10-24 | 機密保護方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US4809160A (ja) |
EP (1) | EP0220920B1 (ja) |
JP (1) | JPH0738160B2 (ja) |
CA (1) | CA1273126A (ja) |
DE (1) | DE3680456D1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001249848A (ja) * | 2000-02-08 | 2001-09-14 | Emerging Architectures Llc | 先行特権レベルに基づく特権昇格 |
JP2008257735A (ja) * | 2007-04-03 | 2008-10-23 | Arm Ltd | 保護された関数呼び出し |
Families Citing this family (131)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5140684A (en) * | 1987-09-30 | 1992-08-18 | Mitsubishi Denki Kabushiki Kaisha | Access privilege-checking apparatus and method |
US5023773A (en) * | 1988-02-10 | 1991-06-11 | International Business Machines Corporation | Authorization for selective program access to data in multiple address spaces |
US5434999A (en) * | 1988-11-09 | 1995-07-18 | Bull Cp8 | Safeguarded remote loading of service programs by authorizing loading in protected memory zones in a terminal |
US5057996A (en) * | 1989-06-29 | 1991-10-15 | Digital Equipment Corporation | Waitable object creation system and method in an object based computer operating system |
US5297283A (en) * | 1989-06-29 | 1994-03-22 | Digital Equipment Corporation | Object transferring system and method in an object based computer operating system |
US5136712A (en) * | 1989-06-29 | 1992-08-04 | Digital Equipment Corporation | Temporary object handling system and method in an object based computer operating system |
US5187790A (en) * | 1989-06-29 | 1993-02-16 | Digital Equipment Corporation | Server impersonation of client processes in an object based computer operating system |
US5129083A (en) * | 1989-06-29 | 1992-07-07 | Digital Equipment Corporation | Conditional object creating system having different object pointers for accessing a set of data structure objects |
US5129084A (en) * | 1989-06-29 | 1992-07-07 | Digital Equipment Corporation | Object container transfer system and method in an object based computer operating system |
US5265227A (en) * | 1989-11-14 | 1993-11-23 | Intel Corporation | Parallel protection checking in an address translation look-aside buffer |
US5469556A (en) * | 1989-12-12 | 1995-11-21 | Harris Corporation | Resource access security system for controlling access to resources of a data processing system |
US5627987A (en) * | 1991-11-29 | 1997-05-06 | Kabushiki Kaisha Toshiba | Memory management and protection system for virtual memory in computer system |
GB2273585A (en) * | 1992-12-21 | 1994-06-22 | Hanover | Temporary password access. |
US5764969A (en) * | 1995-02-10 | 1998-06-09 | International Business Machines Corporation | Method and system for enhanced management operation utilizing intermixed user level and supervisory level instructions with partial concept synchronization |
US6101590A (en) * | 1995-10-10 | 2000-08-08 | Micro Unity Systems Engineering, Inc. | Virtual memory system with local and global virtual address translation |
US5745676A (en) * | 1995-12-04 | 1998-04-28 | International Business Machines Corporation | Authority reduction and restoration method providing system integrity for subspace groups and single address spaces during program linkage |
US6578044B1 (en) | 1997-11-17 | 2003-06-10 | Sun Microsystems, Inc. | Method and system for typesafe attribute matching |
US6466947B2 (en) | 1998-03-20 | 2002-10-15 | Sun Microsystems, Inc. | Apparatus and method for dynamically verifying information in a distributed system |
US6938263B2 (en) | 1996-04-23 | 2005-08-30 | Sun Microsystems, Inc. | System and method for facilitating dynamic loading of “stub” information to enable a program operating in one address space to invoke processing of a remote method or procedure in another address space |
US6463446B1 (en) | 1998-02-26 | 2002-10-08 | Sun Microsystems, Inc. | Method and apparatus for transporting behavior in an event-based distributed system |
US6182083B1 (en) | 1997-11-17 | 2001-01-30 | Sun Microsystems, Inc. | Method and system for multi-entry and multi-template matching in a database |
US6138238A (en) | 1997-12-11 | 2000-10-24 | Sun Microsystems, Inc. | Stack-based access control using code and executor identifiers |
US6560656B1 (en) | 1998-02-26 | 2003-05-06 | Sun Microsystems, Inc. | Apparatus and method for providing downloadable code for use in communicating with a device in a distributed system |
US6247026B1 (en) | 1996-10-11 | 2001-06-12 | Sun Microsystems, Inc. | Method, apparatus, and product for leasing of delegation certificates in a distributed system |
US6237024B1 (en) | 1998-03-20 | 2001-05-22 | Sun Microsystem, Inc. | Method and apparatus for the suspension and continuation of remote processes |
US6226746B1 (en) * | 1998-03-20 | 2001-05-01 | Sun Microsystems, Inc. | Stack-based system and method to combine security requirements of methods |
US6393497B1 (en) | 1998-03-20 | 2002-05-21 | Sun Microsystems, Inc. | Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system |
US6598094B1 (en) | 1998-03-20 | 2003-07-22 | Sun Microsystems, Inc. | Method and apparatus for determining status of remote objects in a distributed system |
US6487607B1 (en) | 1998-02-26 | 2002-11-26 | Sun Microsystems, Inc. | Methods and apparatus for remote method invocation |
US6282652B1 (en) | 1998-02-26 | 2001-08-28 | Sun Microsystems, Inc. | System for separately designating security requirements for methods invoked on a computer |
US6446070B1 (en) * | 1998-02-26 | 2002-09-03 | Sun Microsystems, Inc. | Method and apparatus for dynamic distributed computing over a network |
US6421704B1 (en) | 1998-03-20 | 2002-07-16 | Sun Microsystems, Inc. | Method, apparatus, and product for leasing of group membership in a distributed system |
US6832223B1 (en) | 1996-04-23 | 2004-12-14 | Sun Microsystems, Inc. | Method and system for facilitating access to a lookup service |
US6708171B1 (en) | 1996-04-23 | 2004-03-16 | Sun Microsystems, Inc. | Network proxy |
US6185611B1 (en) * | 1998-03-20 | 2001-02-06 | Sun Microsystem, Inc. | Dynamic lookup service in a distributed system |
US6272559B1 (en) | 1997-10-15 | 2001-08-07 | Sun Microsystems, Inc. | Deferred reconstruction of objects and remote loading for event notification in a distributed system |
US6438614B2 (en) | 1998-02-26 | 2002-08-20 | Sun Microsystems, Inc. | Polymorphic token based control |
US5948097A (en) * | 1996-08-29 | 1999-09-07 | Intel Corporation | Method and apparatus for changing privilege levels in a computer system without use of a call gate |
US6237009B1 (en) | 1996-10-11 | 2001-05-22 | Sun Microsystems, Inc. | Lease renewal service |
US6728737B2 (en) | 1996-10-11 | 2004-04-27 | Sun Microsystems, Inc. | Method and system for leasing storage |
US5832529A (en) | 1996-10-11 | 1998-11-03 | Sun Microsystems, Inc. | Methods, apparatus, and product for distributed garbage collection |
US6105132A (en) * | 1997-02-20 | 2000-08-15 | Novell, Inc. | Computer network graded authentication system and method |
US5895467A (en) * | 1997-04-11 | 1999-04-20 | Informix Software, Inc. | Selectively switching memory access permission for manipulating data in a database |
US6253256B1 (en) | 1997-10-15 | 2001-06-26 | Sun Microsystems, Inc. | Deferred reconstruction of objects and remote loading in a distributed system |
US6957427B1 (en) | 1997-10-15 | 2005-10-18 | Sun Microsystems, Inc. | Remote object activation in a distributed system |
US6192476B1 (en) * | 1997-12-11 | 2001-02-20 | Sun Microsystems, Inc. | Controlling access to a resource |
US6604127B2 (en) | 1998-03-20 | 2003-08-05 | Brian T. Murphy | Dynamic lookup service in distributed system |
WO1999044133A2 (en) | 1998-02-26 | 1999-09-02 | Sun Microsystems, Inc. | Method and system for deterministic hashes to identify remote methods |
US6996840B1 (en) * | 1998-12-18 | 2006-02-07 | Myspace Ab | Method for executing a security critical activity |
US6901518B1 (en) | 1999-04-08 | 2005-05-31 | Sun Microsystems, Inc. | Method and system for establishing trust in downloaded proxy code |
US6877163B1 (en) | 1999-06-14 | 2005-04-05 | Sun Microsystems, Inc. | Method and system for dynamic proxy classes |
US6845393B1 (en) | 1999-06-14 | 2005-01-18 | Sun Microsystems, Inc. | Lookup discovery service in a distributed system having a plurality of lookup services each with associated characteristics and services |
US6918084B1 (en) | 2000-05-09 | 2005-07-12 | Sun Microsystems, Inc. | Spawning new repository spaces using information provided in advertisement schema messages |
US6862594B1 (en) | 2000-05-09 | 2005-03-01 | Sun Microsystems, Inc. | Method and apparatus to discover services using flexible search criteria |
US6792466B1 (en) | 2000-05-09 | 2004-09-14 | Sun Microsystems, Inc. | Trusted construction of message endpoints in a distributed computing environment |
US7188251B1 (en) | 2000-05-09 | 2007-03-06 | Sun Microsystems, Inc. | System and method for secure message-based leasing of resources in a distributed computing environment |
US8001232B1 (en) | 2000-05-09 | 2011-08-16 | Oracle America, Inc. | Event message endpoints in a distributed computing environment |
US7243356B1 (en) | 2000-05-09 | 2007-07-10 | Sun Microsystems, Inc. | Remote method invocation with secure messaging in a distributed computing environment |
US8082491B1 (en) | 2000-05-09 | 2011-12-20 | Oracle America, Inc. | Dynamic displays in a distributed computing environment |
US6850979B1 (en) | 2000-05-09 | 2005-02-01 | Sun Microsystems, Inc. | Message gates in a distributed computing environment |
US6973493B1 (en) | 2000-05-09 | 2005-12-06 | Sun Microsystems, Inc. | Mechanism and apparatus for security of newly spawned repository spaces in a distributed computing environment |
US7016966B1 (en) | 2000-05-09 | 2006-03-21 | Sun Microsystems, Inc. | Generating results gates in a distributed computing environment |
US7072967B1 (en) | 2000-05-09 | 2006-07-04 | Sun Microsystems, Inc. | Efficient construction of message endpoints |
US8135796B1 (en) | 2000-05-09 | 2012-03-13 | Oracle America, Inc. | Mechanism and apparatus for accessing and addressing services in a distributed computing environment |
US6868447B1 (en) | 2000-05-09 | 2005-03-15 | Sun Microsystems, Inc. | Mechanism and apparatus for returning results of services in a distributed computing environment |
US7010573B1 (en) | 2000-05-09 | 2006-03-07 | Sun Microsystems, Inc. | Message gates using a shared transport in a distributed computing environment |
US6917976B1 (en) | 2000-05-09 | 2005-07-12 | Sun Microsystems, Inc. | Message-based leasing of resources in a distributed computing environment |
US6789077B1 (en) | 2000-05-09 | 2004-09-07 | Sun Microsystems, Inc. | Mechanism and apparatus for web-based searching of URI-addressable repositories in a distributed computing environment |
US7080078B1 (en) | 2000-05-09 | 2006-07-18 | Sun Microsystems, Inc. | Mechanism and apparatus for URI-addressable repositories of service advertisements and other content in a distributed computing environment |
US6950875B1 (en) | 2000-05-09 | 2005-09-27 | Sun Microsystems, Inc. | Message conductors in a distributed computing environment |
US7395333B1 (en) | 2000-05-09 | 2008-07-01 | Sun Microsystems, Inc. | Method and apparatus to obtain negotiated service advertisement |
US7200848B1 (en) | 2000-05-09 | 2007-04-03 | Sun Microsystems, Inc. | Migrating processes using data representation language representations of the processes in a distributed computing environment |
US6643650B1 (en) | 2000-05-09 | 2003-11-04 | Sun Microsystems, Inc. | Mechanism and apparatus for using messages to look up documents stored in spaces in a distributed computing environment |
US6970869B1 (en) | 2000-05-09 | 2005-11-29 | Sun Microsystems, Inc. | Method and apparatus to discover services and negotiate capabilities |
US7370091B1 (en) | 2000-05-09 | 2008-05-06 | Sun Microsystems, Inc. | Method and apparatus for obtaining space advertisements |
US7065574B1 (en) | 2000-05-09 | 2006-06-20 | Sun Microsystems, Inc. | Messaging system using pairs of message gates in a distributed computing environment |
US6898618B1 (en) | 2000-05-09 | 2005-05-24 | Sun Microsystems, Inc. | Client-specified display services in a distributed computing environment |
US7716492B1 (en) | 2000-05-09 | 2010-05-11 | Oracle America, Inc. | Method and apparatus to obtain service capability credentials |
US7577834B1 (en) | 2000-05-09 | 2009-08-18 | Sun Microsystems, Inc. | Message authentication using message gates in a distributed computing environment |
US7260543B1 (en) | 2000-05-09 | 2007-08-21 | Sun Microsystems, Inc. | Automatic lease renewal with message gates in a distributed computing environment |
US6789126B1 (en) | 2000-05-09 | 2004-09-07 | Sun Microsystems, Inc. | Addressing message gates in a distributed computing environment |
US6854115B1 (en) | 2000-06-02 | 2005-02-08 | Sun Microsystems, Inc. | Process persistence in a virtual machine |
US6957237B1 (en) | 2000-06-02 | 2005-10-18 | Sun Microsystems, Inc. | Database store for a virtual heap |
US6763440B1 (en) | 2000-06-02 | 2004-07-13 | Sun Microsystems, Inc. | Garbage collection using nursery regions for new objects in a virtual heap |
US6941410B1 (en) | 2000-06-02 | 2005-09-06 | Sun Microsystems, Inc. | Virtual heap for a virtual machine |
US6760815B1 (en) | 2000-06-02 | 2004-07-06 | Sun Microsystems, Inc. | Caching mechanism for a virtual heap |
US6865657B1 (en) | 2000-06-02 | 2005-03-08 | Sun Microsystems, Inc. | Garbage collector for a virtual heap |
US7136907B1 (en) | 2000-10-19 | 2006-11-14 | International Business Machines Corporation | Method and system for informing an operating system in a system area network when a new device is connected |
US6851059B1 (en) * | 2000-10-19 | 2005-02-01 | International Business Machines Corporation | Method and system for choosing a queue protection key that is tamper-proof from an application |
US7409432B1 (en) | 2000-10-19 | 2008-08-05 | International Business Machines Corporation | Efficient process for handover between subnet managers |
US7296275B2 (en) | 2001-01-04 | 2007-11-13 | Sun Microsystems, Inc. | Method and system for passing objects in a distributed system using serialization contexts |
US6772372B2 (en) | 2001-03-06 | 2004-08-03 | Hewlett-Packard Development Company, L.P. | System and method for monitoring unaligned memory accesses |
US6694457B2 (en) * | 2001-03-06 | 2004-02-17 | Hewlett-Packard Development Company, L.P. | System and method for monitoring execution of privileged instructions |
US7756969B1 (en) | 2001-09-07 | 2010-07-13 | Oracle America, Inc. | Dynamic provisioning of identification services in a distributed system |
US20030051029A1 (en) * | 2001-09-07 | 2003-03-13 | Reedy Dennis G. | Dynamic provisioning of sevice components in a distributed system |
US7660887B2 (en) * | 2001-09-07 | 2010-02-09 | Sun Microsystems, Inc. | Systems and methods for providing dynamic quality of service for a distributed system |
US7272832B2 (en) * | 2001-10-25 | 2007-09-18 | Hewlett-Packard Development Company, L.P. | Method of protecting user process data in a secure platform inaccessible to the operating system and other tasks on top of the secure platform |
US6854039B1 (en) * | 2001-12-05 | 2005-02-08 | Advanced Micro Devices, Inc. | Memory management system and method providing increased memory access security |
US7698522B1 (en) * | 2002-01-11 | 2010-04-13 | Global Foundries | Method and apparatus for linear address based page level security scheme to determine current security context |
EP1367119B1 (en) * | 2002-05-28 | 2008-09-17 | Toyo Boseki Kabushiki Kaisha | Methods of culturing, storing, and inducing differentiation in cells, instrument for use in the methods and method of using the instrument. |
US20040083202A1 (en) * | 2002-08-30 | 2004-04-29 | Arkivio, Inc. | Techniques to control recalls in storage management applications |
US20040168047A1 (en) * | 2003-02-24 | 2004-08-26 | Matsushita Electric Industrial Co., Ltd. | Processor and compiler for creating program for the processor |
US7434264B2 (en) * | 2003-03-07 | 2008-10-07 | Freescale Semiconductor, Inc. | Data processing system with peripheral access protection and method therefor |
KR101037006B1 (ko) * | 2003-11-28 | 2011-05-25 | 파나소닉 주식회사 | 데이터 처리장치 |
US7792874B1 (en) | 2004-01-30 | 2010-09-07 | Oracle America, Inc. | Dynamic provisioning for filtering and consolidating events |
US20050198512A1 (en) * | 2004-03-02 | 2005-09-08 | International Business Machines Corporation | System, method and program product for managing privilege levels in a computer system |
US7363491B2 (en) * | 2004-03-31 | 2008-04-22 | Intel Corporation | Resource management in security enhanced processors |
US7782329B2 (en) * | 2004-12-10 | 2010-08-24 | Rockwell Collins, Inc. | Method and apparatus for protected graphics generation |
US20060136679A1 (en) * | 2004-12-21 | 2006-06-22 | O'connor Dennis M | Protected processing apparatus, systems, and methods |
US7930738B1 (en) * | 2005-06-02 | 2011-04-19 | Adobe Systems Incorporated | Method and apparatus for secure execution of code |
US7895651B2 (en) * | 2005-07-29 | 2011-02-22 | Bit 9, Inc. | Content tracking in a network security system |
US8984636B2 (en) * | 2005-07-29 | 2015-03-17 | Bit9, Inc. | Content extractor and analysis system |
US20070028291A1 (en) * | 2005-07-29 | 2007-02-01 | Bit 9, Inc. | Parametric content control in a network security system |
US8272058B2 (en) * | 2005-07-29 | 2012-09-18 | Bit 9, Inc. | Centralized timed analysis in a network security system |
US9390031B2 (en) * | 2005-12-30 | 2016-07-12 | Intel Corporation | Page coloring to associate memory pages with programs |
CN101004723A (zh) * | 2006-01-18 | 2007-07-25 | 鸿富锦精密工业(深圳)有限公司 | 信息交互系统和方法 |
US20070234330A1 (en) * | 2006-03-01 | 2007-10-04 | Microsoft Corporation | Prevention of executable code modification |
US8880901B2 (en) * | 2006-05-25 | 2014-11-04 | Red Hat, Inc. | Secure address handling in a processor |
US9158710B2 (en) * | 2006-08-31 | 2015-10-13 | Intel Corporation | Page coloring with color inheritance for memory pages |
US7882318B2 (en) * | 2006-09-29 | 2011-02-01 | Intel Corporation | Tamper protection of software agents operating in a vitual technology environment methods and apparatuses |
US7802050B2 (en) * | 2006-09-29 | 2010-09-21 | Intel Corporation | Monitoring a target agent execution pattern on a VT-enabled system |
GB2448151B (en) * | 2007-04-03 | 2011-05-04 | Advanced Risc Mach Ltd | Memory domain based security control within data processing systems |
US8966623B2 (en) * | 2010-03-08 | 2015-02-24 | Vmware, Inc. | Managing execution of a running-page in a virtual machine |
US8782380B2 (en) * | 2010-12-14 | 2014-07-15 | International Business Machines Corporation | Fine-grained privilege escalation |
US20140101412A1 (en) * | 2012-10-04 | 2014-04-10 | Ricardo Ramirez | Speculative privilege elevation |
US9398019B2 (en) * | 2014-08-07 | 2016-07-19 | Vmware, Inc. | Verifying caller authorization using secret data embedded in code |
US9411979B2 (en) | 2014-08-07 | 2016-08-09 | Vmware, Inc. | Embedding secret data in code |
US10922402B2 (en) | 2014-09-29 | 2021-02-16 | Vmware, Inc. | Securing secret data embedded in code against compromised interrupt and exception handlers |
US10162694B2 (en) | 2015-12-21 | 2018-12-25 | Intel Corporation | Hardware apparatuses and methods for memory corruption detection |
US11269640B2 (en) | 2017-02-13 | 2022-03-08 | Qualcomm Incorporated | Speculative transitions among modes with different privilege levels in a block-based microarchitecture |
GB2562102B (en) * | 2017-05-05 | 2019-09-04 | Advanced Risc Mach Ltd | An apparatus and method for managing use of capabilities |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5384524A (en) * | 1976-12-30 | 1978-07-26 | Ibm | Computer system having program hierarchy safety mechanism |
JPS56140452A (en) * | 1980-04-01 | 1981-11-02 | Hitachi Ltd | Memory protection system |
JPS6046744A (ja) * | 1983-08-24 | 1985-03-13 | 株式会社東芝 | フライホイ−ル発電システム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2258112A5 (ja) | 1973-11-30 | 1975-08-08 | Honeywell Bull Soc Ind | |
US4087856A (en) * | 1976-06-30 | 1978-05-02 | International Business Machines Corporation | Location dependence for assuring the security of system-control operations |
US4346436A (en) * | 1979-03-23 | 1982-08-24 | Burroughs Corporation | Interpretive digital data processor comprised of a multi-level hierarchy of processors and having program protection means |
US4409655A (en) * | 1980-04-25 | 1983-10-11 | Data General Corporation | Hierarchial memory ring protection system using comparisons of requested and previously accessed addresses |
US4471163A (en) * | 1981-10-05 | 1984-09-11 | Donald Thomas C | Software protection system |
-
1985
- 1985-10-28 US US06/792,702 patent/US4809160A/en not_active Expired - Lifetime
-
1986
- 1986-10-21 EP EP86308166A patent/EP0220920B1/en not_active Expired
- 1986-10-21 DE DE8686308166T patent/DE3680456D1/de not_active Expired - Lifetime
- 1986-10-24 JP JP61254524A patent/JPH0738160B2/ja not_active Expired - Lifetime
- 1986-10-27 CA CA000521499A patent/CA1273126A/en not_active Expired
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5384524A (en) * | 1976-12-30 | 1978-07-26 | Ibm | Computer system having program hierarchy safety mechanism |
JPS56140452A (en) * | 1980-04-01 | 1981-11-02 | Hitachi Ltd | Memory protection system |
JPS6046744A (ja) * | 1983-08-24 | 1985-03-13 | 株式会社東芝 | フライホイ−ル発電システム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001249848A (ja) * | 2000-02-08 | 2001-09-14 | Emerging Architectures Llc | 先行特権レベルに基づく特権昇格 |
JP2008257735A (ja) * | 2007-04-03 | 2008-10-23 | Arm Ltd | 保護された関数呼び出し |
Also Published As
Publication number | Publication date |
---|---|
EP0220920B1 (en) | 1991-07-24 |
DE3680456D1 (de) | 1991-08-29 |
CA1273126A (en) | 1990-08-21 |
US4809160A (en) | 1989-02-28 |
JPH0738160B2 (ja) | 1995-04-26 |
EP0220920A1 (en) | 1987-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS62100852A (ja) | 機密保護方法 | |
US3377624A (en) | Memory protection system | |
US5280614A (en) | Apparatus and method for controlling access to data using domains | |
JPH08278886A (ja) | データ処理システムでの拡張システム管理操作のための方法およびシステム | |
CN109840410A (zh) | 一种进程内数据隔离与保护的方法和系统 | |
KR20130036189A (ko) | 하드웨어 모드와 보안 플래그에 의존하여 판독된 명령어에 대한 메모리 영역의 제한 | |
JP2021531583A (ja) | メモリ・システム内に記憶されている制御テーブルのための二分探索手順 | |
KR100791815B1 (ko) | 컴퓨터 시스템 및 컴퓨터 시스템에서 인스트럭션을 실행하는 방법 | |
JP3072706B2 (ja) | データ保護装置及びコンピュータ・システム | |
US6785883B1 (en) | Software system for tracing data | |
WO2019237865A1 (zh) | 一种数据保护方法及计算装置 | |
KR102782483B1 (ko) | 레지스터 액세스 제어 | |
US5822607A (en) | Method for fast validation checking for code and data segment descriptor loads | |
EP0285309A2 (en) | Memory protection apparatus for use in an electronic calculator | |
US4633406A (en) | Digital data processing system method for making a general call | |
JPS6073762A (ja) | 記憶保護方式 | |
JPS60105043A (ja) | 情報処理方式 | |
Wald | Utilization of a multiprocessor in command and control | |
JPS6138508B2 (ja) | ||
KR20140012479A (ko) | 컴퓨터 시스템과, 컴퓨터 시스템의 주소 이동 방법 및 컴퓨터 시스템의 시스템함수 모니터링 방법 | |
JPH01195542A (ja) | マルチプログラミング処理装置 | |
JPH01106244A (ja) | 仮想記憶装置のデータ保護検査方法 | |
JPH01288943A (ja) | 記憶保護方式 | |
JPH0363853A (ja) | Sac命令制御方式 | |
JPH0242559A (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |