JP2004103009A - 保護メモリ領域への無許可アクセスを禁止するためのシステム、方法、およびプログラム - Google Patents
保護メモリ領域への無許可アクセスを禁止するためのシステム、方法、およびプログラム Download PDFInfo
- Publication number
- JP2004103009A JP2004103009A JP2003300452A JP2003300452A JP2004103009A JP 2004103009 A JP2004103009 A JP 2004103009A JP 2003300452 A JP2003300452 A JP 2003300452A JP 2003300452 A JP2003300452 A JP 2003300452A JP 2004103009 A JP2004103009 A JP 2004103009A
- Authority
- JP
- Japan
- Prior art keywords
- call
- location
- memory
- area
- protected
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
Abstract
【解決手段】 保護メモリ領域と信頼メモリ領域の両方を指定する。保護メモリ領域内のある位置にアクセスするための呼出しを受け取る。次に、その呼出しの発信位置を決定する。発信位置が信頼領域内にあるという決定に応答して、その呼出しは保護メモリ領域にアクセスすることが許可される。発信位置が信頼領域外にあるという決定に応答して、その呼出しは保護メモリ領域にアクセスすることが禁止される。
【選択図】 図6
Description
保護メモリ領域を指定するステップと、
信頼メモリ領域を指定するステップと、
前記保護メモリ領域にアクセスするための呼出しを受け取るステップと、
前記呼出しの発信位置を決定するステップと、
前記発信位置が前記信頼領域内にあるという決定に応答して、前記呼出しが前記保護メモリ領域にアクセスすることを許可するステップと、
を含む方法。
(2)前記発信位置が前記信頼領域外にあることに応答して、前記呼出しが前記保護メモリ領域にアクセスすることを禁止するステップをさらに含む、上記(1)に記載の方法。
(3)ソフトウェア・ルーチンを作成するステップと、
前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されているかどうかを判定するステップと、
前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されているという決定に応答して、前記ソフトウェア・ルーチンを前記信頼メモリ領域内に記憶するステップと、
をさらに含む、上記(1)に記載の方法。
(4)前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されていないという決定に応答して、前記ソフトウェア・ルーチンを前記信頼メモリ領域外に記憶するステップをさらに含む、上記(3)に記載の方法。
(5)ソフトウェア・ルーチンを作成するステップと、
前記ソフトウェア・ルーチンがローグ呼出しによるアクセスから保護すべきかどうかを判定するステップであって、前記ローグ呼出しが前記信頼領域外にあるメモリ位置からの呼出しであるステップと、
前記ソフトウェア・ルーチンがローグ呼出しによるアクセスから保護すべきであるという決定に応答して、前記ソフトウェア・ルーチンを前記保護領域内に記憶するステップと、
をさらに含む、上記(1)に記載の方法。
(6)テスト・ルーチンを確立するステップと、
前記保護領域内の任意の位置にアクセスしようと試みるすべての呼出しを前記テスト・ルーチンによりインターセプトするステップと、
前記呼出しのそれぞれの発信位置を前記テスト・ルーチンにより決定するステップと、
前記保護領域内の第1の位置にアクセスしようと試みる第1の呼出しの発信位置が前記信頼領域内にあるという前記テスト・ルーチンによる決定に応答して、前記保護メモリ領域内の前記第1の位置に前記第1の呼出しを前記テスト・ルーチンにより転送するステップと、
をさらに含む、上記(1)に記載の方法。
(7)前記保護領域内の第1の位置にアクセスしようと試みる第1の呼出しの発信位置が前記信頼領域外にあるという前記テスト・ルーチンによる決定に応答して、前記保護メモリ領域内の前記第1の位置にアクセスせずに、前記テスト・ルーチンにより前記第1の呼出しを前記発信位置に返すステップをさらに含む、上記(6)に記載の方法。
(8)ハイパーバイザ機能を実行するためのハイパーバイザ・コードを作成するステップと、
前記ハイパーバイザ・コードを前記保護領域内に記憶するステップと、
をさらに含む、上記(1)に記載の方法。
(9)リンク・レジスタの現行値を決定することにより前記呼出しの発信位置を決定するステップであって、前記リンク・レジスタの前記現行値が前記呼出しが発信されたメモリ位置であるステップをさらに含む、上記(1)に記載の方法。
(10)開始メモリ位置と終了メモリ位置を指定することにより信頼メモリ領域を指定するステップであって、前記信頼領域が前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含むステップをさらに含む、上記(1)に記載の方法。
(11)開始メモリ位置と終了メモリ位置を指定することにより保護メモリ領域を指定するステップであって、前記保護領域が前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含むステップをさらに含む、上記(1)に記載の方法。
(12)開始メモリ位置と終了メモリ位置を指定することにより信頼メモリ領域を指定するステップであって、前記信頼領域が前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含むステップと、
リンク・レジスタの現行値を決定することにより前記呼出しの発信位置を決定するステップであって、前記リンク・レジスタの前記現行値が前記呼出しが発信されたメモリ位置であるステップと、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にあるかどうかを判定するステップと、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にあるという決定に応答して、前記呼出しが発信された前記メモリ位置が前記信頼メモリ領域内にあると決定し、前記呼出しが前記保護メモリ領域にアクセスすることを許可するステップと、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にないという決定に応答して、前記呼出しが発信された前記メモリ位置が前記信頼メモリ領域外にあると決定し、前記呼出しが前記保護メモリ領域にアクセスすることを禁止するステップと、
をさらに含む、上記(1)に記載の方法。
(13)保護メモリ領域への無許可アクセスを禁止するためのデータ処理システムであって、
保護メモリ領域と、
信頼メモリ領域と、
前記保護メモリ領域にアクセスするために受け取る呼出しと、
前記システムが、前記呼出しの発信位置を決定するためのCPU実行コードを含むことと、
前記発信位置が前記信頼領域内にあるという決定に応答して、前記CPU実行コードが、前記呼出しが前記保護メモリ領域にアクセスすることを許可すること、
を具備するデータ処理システム。
(14)前記発信位置が前記信頼領域外にあることに応答して、前記CPU実行コードが、前記呼出しが前記保護メモリ領域にアクセスすることを禁止することをさらに具備する、上記(13)に記載のシステム。
(15)ソフトウェア・ルーチンと、
前記CPU実行コードが、前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されているかどうかを判定することと、
前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されているという決定に応答して、前記ソフトウェア・ルーチンが前記信頼メモリ領域内に記憶されることをさらに具備する、上記(13)に記載のシステム。
(16)前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されていないという決定に応答して、前記ソフトウェア・ルーチンが前記信頼メモリ領域外に記憶されることをさらに具備する、上記(15)に記載のシステム。
(17)ソフトウェア・ルーチンと、
前記CPU実行コードが、前記ソフトウェア・ルーチンがローグ呼出しによるアクセスから保護すべきかどうかを判定し、前記ローグ呼出しが前記信頼領域外にあるメモリ位置からの呼出しであることと、
前記ソフトウェア・ルーチンがローグ呼出しによるアクセスから保護すべきであるという決定に応答して、前記ソフトウェア・ルーチンが前記保護領域内に記憶されることをさらに具備する、上記(13)に記載のシステム。
(18)テスト・ルーチンと、
前記テスト・ルーチンが、前記保護領域内の任意の位置にアクセスしようと試みるすべての呼出しをインターセプトすることと、
前記テスト・ルーチンが、前記呼出しのそれぞれの発信位置を決定することと、
前記保護領域内の第1の位置にアクセスしようと試みる第1の呼出しの発信位置が前記信頼領域内にあるという前記テスト・ルーチンによる決定に応答して、前記テスト・ルーチンが、前記保護メモリ領域内の前記第1の位置に前記第1の呼出しを転送することをさらに具備する、上記(13)に記載のシステム。
(19)前記保護領域内の第1の位置にアクセスしようと試みる第1の呼出しの発信位置が前記信頼領域外にあるという前記テスト・ルーチンによる決定に応答して、前記保護メモリ領域内の前記第1の位置にアクセスせずに、前記テスト・ルーチンが、前記第1の呼出しを前記発信位置に返すことをさらに具備する、上記(18)に記載のシステム。
(20)ハイパーバイザ機能を実行するためのハイパーバイザ・コードと、
前記ハイパーバイザ・コードが前記保護領域内に記憶されることをさらに具備する、上記(13)に記載のシステム。
(21)リンク・レジスタの現行値を決定することにより前記呼出しの発信位置を決定し、前記リンク・レジスタの前記現行値が前記呼出しが発信されたメモリ位置であることをさらに具備する、上記(13)に記載のシステム。
(22)信頼メモリ領域であって、開始メモリ位置と終了メモリ位置を指定することにより指定され、前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含む信頼メモリ領域をさらに具備する、上記(13)に記載のシステム。
(23)保護メモリ領域であって、開始メモリ位置と終了メモリ位置を指定することにより指定され、前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含む保護メモリ領域をさらに具備する、上記(13)に記載のシステム。
(24)信頼メモリ領域であって、開始メモリ位置と終了メモリ位置を指定することにより指定され、前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含む信頼メモリ領域と、
前記CPU実行コードが、リンク・レジスタの現行値を決定することにより前記呼出しの発信位置を決定し、前記リンク・レジスタの前記現行値が前記呼出しが発信されたメモリ位置であることと、
前記CPU実行コードが、前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にあるかどうかを判定することと、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にあるという決定に応答して、前記CPU実行コードが、前記呼出しが発信された前記メモリ位置が前記信頼メモリ領域内にあると決定し、前記呼出しが前記保護メモリ領域にアクセスすることを許可することと、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にないという決定に応答して、前記CPU実行コードが、前記呼出しが発信された前記メモリ位置が前記信頼メモリ領域外にあると決定し、前記呼出しが前記保護メモリ領域にアクセスすることを禁止することをさらに具備する、上記(13)に記載のシステム。
(25)保護メモリ領域への無許可アクセスを禁止するためのプログラムであって、データ処理システムを、
保護メモリ領域を指定するための手段、
信頼メモリ領域を指定するための手段、
前記保護メモリ領域にアクセスするための呼出しを受け取るための手段、
前記呼出しの発信位置を決定するための手段、
前記発信位置が前記信頼領域内にあるという決定に応答して、前記呼出しが前記保護メモリ領域にアクセスすることを許可するための手段、
として機能させるプログラム。
(26)データ処理システムを、前記発信位置が前記信頼領域外にあることに応答して、前記呼出しが前記保護メモリ領域にアクセスすることを禁止するための手段として機能させる上記(25)に記載のプログラム。
(27)データ処理システムを、
ソフトウェア・ルーチンを作成するための手段、
前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されているかどうかを判定するための手段、
前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されているという決定に応答して、前記ソフトウェア・ルーチンを前記信頼メモリ領域内に記憶するための手段、
として機能させる上記(25)に記載のプログラム。
(28)データ処理システムを、前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されていないという決定に応答して、前記ソフトウェア・ルーチンを前記信頼メモリ領域外に記憶するための手段として機能させる上記(27)に記載のプログラム。
(29)データ処理システムを、
ソフトウェア・ルーチンを作成するための手段、
前記ソフトウェア・ルーチンがローグ呼出しによるアクセスから保護すべきかどうかを判定するための手段であって、前記ローグ呼出しが前記信頼領域外にあるメモリ位置からの呼出しである手段、
前記ソフトウェア・ルーチンがローグ呼出しによるアクセスから保護すべきであるという決定に応答して、前記ソフトウェア・ルーチンを前記保護領域内に記憶するための手段、
として機能させる上記(25)に記載のプログラム。
(30)データ処理システムを、
テスト・ルーチンを確立するための手段、
前記保護領域内の任意の位置にアクセスしようと試みるすべての呼出しを前記テスト・ルーチンによりインターセプトするための手段、
前記呼出しのそれぞれの発信位置を前記テスト・ルーチンにより決定するための手段、
前記保護領域内の第1の位置にアクセスしようと試みる第1の呼出しの発信位置が前記信頼領域内にあるという前記テスト・ルーチンによる決定に応答して、前記保護メモリ領域内の前記第1の位置に前記第1の呼出しを前記テスト・ルーチンにより転送するための手段、
として機能させる上記(25)に記載のプログラム。
(31)データ処理システムを、前記保護領域内の第1の位置にアクセスしようと試みる第1の呼出しの発信位置が前記信頼領域外にあるという前記テスト・ルーチンによる決定に応答して、前記保護メモリ領域内の前記第1の位置にアクセスせずに、前記テスト・ルーチンにより前記第1の呼出しを前記発信位置に返すための手段として機能させる上記(30)に記載のプログラム。
(32)データ処理システムを、
ハイパーバイザ機能を実行するためのハイパーバイザ・コードを作成するための手段、
前記ハイパーバイザ・コードを前記保護領域内に記憶するための手段、
として機能させる上記(25)に記載のプログラム。
(33)データ処理システムを、リンク・レジスタの現行値を決定することにより前記呼出しの発信位置を決定するための手段であって、前記リンク・レジスタの前記現行値が前記呼出しが発信されたメモリ位置である手段として機能させる上記(25)に記載のプログラム。
(34)データ処理システムを、開始メモリ位置と終了メモリ位置を指定することにより信頼メモリ領域を指定するための手段であって、前記信頼領域が前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含む手段として機能させる上記(25)に記載のプログラム。
(35)データ処理システムを、開始メモリ位置と終了メモリ位置を指定することにより保護メモリ領域を指定するための手段であって、前記保護領域が前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含む手段として機能させる上記(25)に記載のプログラム。
(36)データ処理システムを、
開始メモリ位置と終了メモリ位置を指定することにより信頼メモリ領域を指定するための手段であって、前記信頼領域が前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含む手段、
リンク・レジスタの現行値を決定することにより前記呼出しの発信位置を決定するための手段であって、前記リンク・レジスタの前記現行値が前記呼出しが発信されたメモリ位置である手段、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にあるかどうかを判定するための手段と、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にあるという決定に応答して、前記呼出しが発信された前記メモリ位置が前記信頼メモリ領域内にあると決定し、前記呼出しが前記保護メモリ領域にアクセスすることを許可するための手段、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にないという決定に応答して、前記呼出しが発信された前記メモリ位置が前記信頼メモリ領域外にあると決定し、前記呼出しが前記保護メモリ領域にアクセスすることを禁止するための手段、
として機能させる上記(25)に記載のプログラム。
12 ネットワーク
14 サーバ
16 記憶装置
18 クライアント
20 クライアント
22 クライアント
100 データ処理システム
101 プロセッサ
102 プロセッサ
103 プロセッサ
104 プロセッサ
106 システム・バス
108 メモリ・コントローラ/キャッシュ
110 RIOハブ
112 RIOバス
114 RIO−PCIブリッジ
115 PCIバス
118 PCIバス
119 PCIバス
120 PCI I/Oアダプタ
120a I/O装置
121 PCI I/Oアダプタ
121a I/O装置
122 RIO−PCIブリッジ
123 PCIバス
126 PCIバス
127 PCIバス
128 PCI I/Oアダプタ
128a I/O装置
129 PCI I/Oアダプタ
129a I/O装置
130 RIO−PCIブリッジ
131 PCIバス
133 PCIバス
134 JTAG/I2Cバス
135 サービス・プロセッサ
136 PCI I/Oアダプタ
140 RIO−PCIブリッジ
141 PCIバス
144 PCIバス
145 PCIバス
148 グラフィック・アダプタ
149 ハード・ディスク・アダプタ
150 ハード・ディスク
160 ローカル・メモリ
161 ローカル・メモリ
162 ローカル・メモリ
163 ローカル・メモリ
190 操作パネル
191 メモリ
193 PCI/ISAブリッジ
194 サービス・プロセッサ・メールボックス・インタフェースおよびISAバス・アクセス・パススルー
195 PCIバス
196 ISAバス
200 ロジカル・パーティション化プラットフォーム
201 パーティション
202 パーティション
203 パーティション
204 パーティション
210 パーティション管理ファームウェア(ハイパーバイザ)
230 パーティション化ハードウェア
232 プロセッサ
234 プロセッサ
236 プロセッサ
238 プロセッサ
240 メモリ
242 メモリ
244 メモリ
246 メモリ
248 I/Oアダプタ
250 I/Oアダプタ
252 I/Oアダプタ
254 I/Oアダプタ
256 I/Oアダプタ
258 I/Oアダプタ
260 I/Oアダプタ
262 I/Oアダプタ
270 記憶装置
290 サービス・プロセッサ
400 メモリ・マップ
402 信頼領域
404 保護領域
406 テスト
500 メモリ・マップ
502 信頼領域
504 保護領域
506 テスト
Claims (36)
- 保護メモリ領域への無許可アクセスを禁止するための方法であって、
保護メモリ領域を指定するステップと、
信頼メモリ領域を指定するステップと、
前記保護メモリ領域にアクセスするための呼出しを受け取るステップと、
前記呼出しの発信位置を決定するステップと、
前記発信位置が前記信頼領域内にあるという決定に応答して、前記呼出しが前記保護メモリ領域にアクセスすることを許可するステップと、
を含む方法。 - 前記発信位置が前記信頼領域外にあることに応答して、前記呼出しが前記保護メモリ領域にアクセスすることを禁止するステップをさらに含む、請求項1に記載の方法。
- ソフトウェア・ルーチンを作成するステップと、
前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されているかどうかを判定するステップと、
前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されているという決定に応答して、前記ソフトウェア・ルーチンを前記信頼メモリ領域内に記憶するステップと、
をさらに含む、請求項1に記載の方法。 - 前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されていないという決定に応答して、前記ソフトウェア・ルーチンを前記信頼メモリ領域外に記憶するステップをさらに含む、請求項3に記載の方法。
- ソフトウェア・ルーチンを作成するステップと、
前記ソフトウェア・ルーチンがローグ呼出しによるアクセスから保護すべきかどうかを判定するステップであって、前記ローグ呼出しが前記信頼領域外にあるメモリ位置からの呼出しであるステップと、
前記ソフトウェア・ルーチンがローグ呼出しによるアクセスから保護すべきであるという決定に応答して、前記ソフトウェア・ルーチンを前記保護領域内に記憶するステップと、
をさらに含む、請求項1に記載の方法。 - テスト・ルーチンを確立するステップと、
前記保護領域内の任意の位置にアクセスしようと試みるすべての呼出しを前記テスト・ルーチンによりインターセプトするステップと、
前記呼出しのそれぞれの発信位置を前記テスト・ルーチンにより決定するステップと、
前記保護領域内の第1の位置にアクセスしようと試みる第1の呼出しの発信位置が前記信頼領域内にあるという前記テスト・ルーチンによる決定に応答して、前記保護メモリ領域内の前記第1の位置に前記第1の呼出しを前記テスト・ルーチンにより転送するステップと、
をさらに含む、請求項1に記載の方法。 - 前記保護領域内の第1の位置にアクセスしようと試みる第1の呼出しの発信位置が前記信頼領域外にあるという前記テスト・ルーチンによる決定に応答して、前記保護メモリ領域内の前記第1の位置にアクセスせずに、前記テスト・ルーチンにより前記第1の呼出しを前記発信位置に返すステップをさらに含む、請求項6に記載の方法。
- ハイパーバイザ機能を実行するためのハイパーバイザ・コードを作成するステップと、
前記ハイパーバイザ・コードを前記保護領域内に記憶するステップと、
をさらに含む、請求項1に記載の方法。 - リンク・レジスタの現行値を決定することにより前記呼出しの発信位置を決定するステップであって、前記リンク・レジスタの前記現行値が前記呼出しが発信されたメモリ位置であるステップをさらに含む、請求項1に記載の方法。
- 開始メモリ位置と終了メモリ位置を指定することにより信頼メモリ領域を指定するステップであって、前記信頼領域が前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含むステップをさらに含む、請求項1に記載の方法。
- 開始メモリ位置と終了メモリ位置を指定することにより保護メモリ領域を指定するステップであって、前記保護領域が前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含むステップをさらに含む、請求項1に記載の方法。
- 開始メモリ位置と終了メモリ位置を指定することにより信頼メモリ領域を指定するステップであって、前記信頼領域が前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含むステップと、
リンク・レジスタの現行値を決定することにより前記呼出しの発信位置を決定するステップであって、前記リンク・レジスタの前記現行値が前記呼出しが発信されたメモリ位置であるステップと、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にあるかどうかを判定するステップと、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にあるという決定に応答して、前記呼出しが発信された前記メモリ位置が前記信頼メモリ領域内にあると決定し、前記呼出しが前記保護メモリ領域にアクセスすることを許可するステップと、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にないという決定に応答して、前記呼出しが発信された前記メモリ位置が前記信頼メモリ領域外にあると決定し、前記呼出しが前記保護メモリ領域にアクセスすることを禁止するステップと、
をさらに含む、請求項1に記載の方法。 - 保護メモリ領域への無許可アクセスを禁止するためのデータ処理システムであって、
保護メモリ領域と、
信頼メモリ領域と、
前記保護メモリ領域にアクセスするために受け取る呼出しと、
前記システムが、前記呼出しの発信位置を決定するためのCPU実行コードを含むことと、
前記発信位置が前記信頼領域内にあるという決定に応答して、前記CPU実行コードが、前記呼出しが前記保護メモリ領域にアクセスすることを許可すること、
を具備するデータ処理システム。 - 前記発信位置が前記信頼領域外にあることに応答して、前記CPU実行コードが、前記呼出しが前記保護メモリ領域にアクセスすることを禁止することをさらに具備する、請求項13に記載のシステム。
- ソフトウェア・ルーチンと、
前記CPU実行コードが、前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されているかどうかを判定することと、
前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されているという決定に応答して、前記ソフトウェア・ルーチンが前記信頼メモリ領域内に記憶されることをさらに具備する、請求項13に記載のシステム。 - 前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されていないという決定に応答して、前記ソフトウェア・ルーチンが前記信頼メモリ領域外に記憶されることをさらに具備する、請求項15に記載のシステム。
- ソフトウェア・ルーチンと、
前記CPU実行コードが、前記ソフトウェア・ルーチンがローグ呼出しによるアクセスから保護すべきかどうかを判定し、前記ローグ呼出しが前記信頼領域外にあるメモリ位置からの呼出しであることと、
前記ソフトウェア・ルーチンがローグ呼出しによるアクセスから保護すべきであるという決定に応答して、前記ソフトウェア・ルーチンが前記保護領域内に記憶されることをさらに具備する、請求項13に記載のシステム。 - テスト・ルーチンと、
前記テスト・ルーチンが、前記保護領域内の任意の位置にアクセスしようと試みるすべての呼出しをインターセプトすることと、
前記テスト・ルーチンが、前記呼出しのそれぞれの発信位置を決定することと、
前記保護領域内の第1の位置にアクセスしようと試みる第1の呼出しの発信位置が前記信頼領域内にあるという前記テスト・ルーチンによる決定に応答して、前記テスト・ルーチンが、前記保護メモリ領域内の前記第1の位置に前記第1の呼出しを転送することをさらに具備する、請求項13に記載のシステム。 - 前記保護領域内の第1の位置にアクセスしようと試みる第1の呼出しの発信位置が前記信頼領域外にあるという前記テスト・ルーチンによる決定に応答して、前記保護メモリ領域内の前記第1の位置にアクセスせずに、前記テスト・ルーチンが、前記第1の呼出しを前記発信位置に返すことをさらに具備する、請求項18に記載のシステム。
- ハイパーバイザ機能を実行するためのハイパーバイザ・コードと、
前記ハイパーバイザ・コードが前記保護領域内に記憶されることをさらに具備する、請求項13に記載のシステム。 - リンク・レジスタの現行値を決定することにより前記呼出しの発信位置を決定し、前記リンク・レジスタの前記現行値が前記呼出しが発信されたメモリ位置であることをさらに具備する、請求項13に記載のシステム。
- 信頼メモリ領域であって、開始メモリ位置と終了メモリ位置を指定することにより指定され、前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含む信頼メモリ領域をさらに具備する、請求項13に記載のシステム。
- 保護メモリ領域であって、開始メモリ位置と終了メモリ位置を指定することにより指定され、前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含む保護メモリ領域をさらに具備する、請求項13に記載のシステム。
- 信頼メモリ領域であって、開始メモリ位置と終了メモリ位置を指定することにより指定され、前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含む信頼メモリ領域と、
前記CPU実行コードが、リンク・レジスタの現行値を決定することにより前記呼出しの発信位置を決定し、前記リンク・レジスタの前記現行値が前記呼出しが発信されたメモリ位置であることと、
前記CPU実行コードが、前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にあるかどうかを判定することと、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にあるという決定に応答して、前記CPU実行コードが、前記呼出しが発信された前記メモリ位置が前記信頼メモリ領域内にあると決定し、前記呼出しが前記保護メモリ領域にアクセスすることを許可することと、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にないという決定に応答して、前記CPU実行コードが、前記呼出しが発信された前記メモリ位置が前記信頼メモリ領域外にあると決定し、前記呼出しが前記保護メモリ領域にアクセスすることを禁止することをさらに具備する、請求項13に記載のシステム。 - 保護メモリ領域への無許可アクセスを禁止するためのプログラムであって、データ処理システムを、
保護メモリ領域を指定するための手段、
信頼メモリ領域を指定するための手段、
前記保護メモリ領域にアクセスするための呼出しを受け取るための手段、
前記呼出しの発信位置を決定するための手段、
前記発信位置が前記信頼領域内にあるという決定に応答して、前記呼出しが前記保護メモリ領域にアクセスすることを許可するための手段、
として機能させるプログラム。 - データ処理システムを、前記発信位置が前記信頼領域外にあることに応答して、前記呼出しが前記保護メモリ領域にアクセスすることを禁止するための手段として機能させる請求項25に記載のプログラム。
- データ処理システムを、
ソフトウェア・ルーチンを作成するための手段、
前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されているかどうかを判定するための手段、
前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されているという決定に応答して、前記ソフトウェア・ルーチンを前記信頼メモリ領域内に記憶するための手段、
として機能させる請求項25に記載のプログラム。 - データ処理システムを、前記ソフトウェア・ルーチンが前記保護メモリ領域にアクセスすることを許可されていないという決定に応答して、前記ソフトウェア・ルーチンを前記信頼メモリ領域外に記憶するための手段として機能させる請求項27に記載のプログラム。
- データ処理システムを、
ソフトウェア・ルーチンを作成するための手段、
前記ソフトウェア・ルーチンがローグ呼出しによるアクセスから保護すべきかどうかを判定するための手段であって、前記ローグ呼出しが前記信頼領域外にあるメモリ位置からの呼出しである手段、
前記ソフトウェア・ルーチンがローグ呼出しによるアクセスから保護すべきであるという決定に応答して、前記ソフトウェア・ルーチンを前記保護領域内に記憶するための手段、
として機能させる請求項25に記載のプログラム。 - データ処理システムを、
テスト・ルーチンを確立するための手段、
前記保護領域内の任意の位置にアクセスしようと試みるすべての呼出しを前記テスト・ルーチンによりインターセプトするための手段、
前記呼出しのそれぞれの発信位置を前記テスト・ルーチンにより決定するための手段、
前記保護領域内の第1の位置にアクセスしようと試みる第1の呼出しの発信位置が前記信頼領域内にあるという前記テスト・ルーチンによる決定に応答して、前記保護メモリ領域内の前記第1の位置に前記第1の呼出しを前記テスト・ルーチンにより転送するための手段、
として機能させる請求項25に記載のプログラム。 - データ処理システムを、前記保護領域内の第1の位置にアクセスしようと試みる第1の呼出しの発信位置が前記信頼領域外にあるという前記テスト・ルーチンによる決定に応答して、前記保護メモリ領域内の前記第1の位置にアクセスせずに、前記テスト・ルーチンにより前記第1の呼出しを前記発信位置に返すための手段として機能させる請求項30に記載のプログラム。
- データ処理システムを、
ハイパーバイザ機能を実行するためのハイパーバイザ・コードを作成するための手段、
前記ハイパーバイザ・コードを前記保護領域内に記憶するための手段、
として機能させる請求項25に記載のプログラム。 - データ処理システムを、リンク・レジスタの現行値を決定することにより前記呼出しの発信位置を決定するための手段であって、前記リンク・レジスタの前記現行値が前記呼出しが発信されたメモリ位置である手段として機能させる請求項25に記載のプログラム。
- データ処理システムを、開始メモリ位置と終了メモリ位置を指定することにより信頼メモリ領域を指定するための手段であって、前記信頼領域が前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含む手段として機能させる請求項25に記載のプログラム。
- データ処理システムを、開始メモリ位置と終了メモリ位置を指定することにより保護メモリ領域を指定するための手段であって、前記保護領域が前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含む手段として機能させる請求項25に記載のプログラム。
- データ処理システムを、
開始メモリ位置と終了メモリ位置を指定することにより信頼メモリ領域を指定するための手段であって、前記信頼領域が前記開始メモリ位置を含む前記開始メモリ位置から前記終了メモリ位置を含む前記終了メモリ位置までのすべてのメモリ位置を含む手段、
リンク・レジスタの現行値を決定することにより前記呼出しの発信位置を決定するための手段であって、前記リンク・レジスタの前記現行値が前記呼出しが発信されたメモリ位置である手段、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にあるかどうかを判定するための手段と、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にあるという決定に応答して、前記呼出しが発信された前記メモリ位置が前記信頼メモリ領域内にあると決定し、前記呼出しが前記保護メモリ領域にアクセスすることを許可するための手段、
前記呼出しが発信された前記メモリ位置が前記開始メモリ位置と前記終了メモリ位置とを含む両者の間にないという決定に応答して、前記呼出しが発信された前記メモリ位置が前記信頼メモリ領域外にあると決定し、前記呼出しが前記保護メモリ領域にアクセスすることを禁止するための手段、
として機能させる請求項25に記載のプログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/242,746 US7266658B2 (en) | 2002-09-12 | 2002-09-12 | System, method, and computer program product for prohibiting unauthorized access to protected memory regions |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004103009A true JP2004103009A (ja) | 2004-04-02 |
Family
ID=32028917
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003300452A Pending JP2004103009A (ja) | 2002-09-12 | 2003-08-25 | 保護メモリ領域への無許可アクセスを禁止するためのシステム、方法、およびプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US7266658B2 (ja) |
JP (1) | JP2004103009A (ja) |
CN (1) | CN1297909C (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011526714A (ja) * | 2008-07-02 | 2011-10-13 | ヒューレット・パッカード・カンパニー | ハイパーバイザ・ローディングのためのメモリ管理 |
US8843742B2 (en) | 2008-08-26 | 2014-09-23 | Hewlett-Packard Company | Hypervisor security using SMM |
JP2016031659A (ja) * | 2014-07-29 | 2016-03-07 | 株式会社デンソー | 電子制御装置 |
JP2017522637A (ja) * | 2014-06-27 | 2017-08-10 | マカフィー, インコーポレイテッド | 悪意呼を軽減するシステムおよび方法 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7730318B2 (en) * | 2003-10-24 | 2010-06-01 | Microsoft Corporation | Integration of high-assurance features into an application through application factoring |
US7530071B2 (en) * | 2004-04-22 | 2009-05-05 | International Business Machines Corporation | Facilitating access to input/output resources via an I/O partition shared by multiple consumer partitions |
JP2006004280A (ja) * | 2004-06-18 | 2006-01-05 | Toshiba Kyaria Kk | マイクロコンピュータおよび電気機器 |
US7971255B1 (en) * | 2004-07-15 | 2011-06-28 | The Trustees Of Columbia University In The City Of New York | Detecting and preventing malcode execution |
US20060026418A1 (en) * | 2004-07-29 | 2006-02-02 | International Business Machines Corporation | Method, apparatus, and product for providing a multi-tiered trust architecture |
US8898246B2 (en) * | 2004-07-29 | 2014-11-25 | Hewlett-Packard Development Company, L.P. | Communication among partitioned devices |
CN100371915C (zh) * | 2004-09-29 | 2008-02-27 | 安国国际科技股份有限公司 | 可携式储存装置及其数据存取方法 |
US7529864B2 (en) | 2004-11-09 | 2009-05-05 | International Business Machines Corporation | Method and system for testing remote I/O functionality |
KR100641191B1 (ko) * | 2005-03-30 | 2006-11-06 | 엘지전자 주식회사 | 이동 통신 단말기의 보안 기능을 개선하는 방법 |
US7380049B2 (en) * | 2005-09-06 | 2008-05-27 | Intel Corporation | Memory protection within a virtual partition |
US20070056039A1 (en) * | 2005-09-07 | 2007-03-08 | Hormuzd Khosravi | Memory filters to aid system remediation |
US7661016B2 (en) * | 2006-02-23 | 2010-02-09 | Librato, Inc. | Method for a checkpoint library to detect corruption by an application |
JP2008077144A (ja) * | 2006-09-19 | 2008-04-03 | Ricoh Co Ltd | 仮想化システム、メモリ管理方法及び制御プログラム |
GB2448151B (en) * | 2007-04-03 | 2011-05-04 | Advanced Risc Mach Ltd | Memory domain based security control within data processing systems |
US20090196417A1 (en) * | 2008-02-01 | 2009-08-06 | Seagate Technology Llc | Secure disposal of storage data |
US20100031057A1 (en) * | 2008-02-01 | 2010-02-04 | Seagate Technology Llc | Traffic analysis resistant storage encryption using implicit and explicit data |
US8103844B2 (en) | 2008-02-01 | 2012-01-24 | Donald Rozinak Beaver | Secure direct platter access |
US8006055B2 (en) * | 2008-03-04 | 2011-08-23 | Microsoft Corporation | Fine granularity hierarchiacal memory protection |
JP5582971B2 (ja) * | 2009-12-15 | 2014-09-03 | キヤノン株式会社 | メモリ保護方法および情報処理装置 |
US9489534B2 (en) | 2014-10-23 | 2016-11-08 | Northrop Grumman Systems Corporation | Multi-level security system for enabling secure file sharing across multiple security levels and method thereof |
CN112703490A (zh) * | 2018-09-18 | 2021-04-23 | 华为技术有限公司 | 用于存储器保护的装置和方法 |
US10534730B1 (en) * | 2018-12-20 | 2020-01-14 | Ati Technologies Ulc | Storing microcode for a virtual function in a trusted memory region |
US11169717B2 (en) * | 2018-12-28 | 2021-11-09 | Micron Technology, Inc. | Unauthorized access command logging using a key for a protected region of memory |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4621321A (en) | 1984-02-16 | 1986-11-04 | Honeywell Inc. | Secure data processing system architecture |
US4918653A (en) | 1988-01-28 | 1990-04-17 | International Business Machines Corporation | Trusted path mechanism for an operating system |
CN1183841A (zh) | 1995-02-13 | 1998-06-03 | 英特特拉斯特技术公司 | 用于安全交易管理和电子权利保护的系统和方法 |
US6006328A (en) | 1995-07-14 | 1999-12-21 | Christopher N. Drake | Computer software authentication, protection, and security system |
JPH09160831A (ja) | 1995-12-08 | 1997-06-20 | Hitachi Ltd | 情報処理装置 |
JP3638714B2 (ja) | 1996-05-23 | 2005-04-13 | 三菱電機株式会社 | 記憶データ保護装置 |
JPH10228421A (ja) | 1997-02-14 | 1998-08-25 | Nec Ic Microcomput Syst Ltd | メモリアクセス制御回路 |
US6360244B1 (en) * | 1997-04-11 | 2002-03-19 | Fujitsu Limited | System and method for multi-level memory domain protection |
US6385727B1 (en) * | 1998-09-25 | 2002-05-07 | Hughes Electronics Corporation | Apparatus for providing a secure processing environment |
US6330670B1 (en) | 1998-10-26 | 2001-12-11 | Microsoft Corporation | Digital rights management operating system |
US6272533B1 (en) | 1999-02-16 | 2001-08-07 | Hendrik A. Browne | Secure computer system and method of providing secure access to a computer system including a stand alone switch operable to inhibit data corruption on a storage device |
US6449699B2 (en) | 1999-03-29 | 2002-09-10 | International Business Machines Corporation | Apparatus and method for partitioned memory protection in cache coherent symmetric multiprocessor systems |
US6289455B1 (en) | 1999-09-02 | 2001-09-11 | Crypotography Research, Inc. | Method and apparatus for preventing piracy of digital content |
US6594780B1 (en) * | 1999-10-19 | 2003-07-15 | Inasoft, Inc. | Operating system and data protection |
US6986052B1 (en) * | 2000-06-30 | 2006-01-10 | Intel Corporation | Method and apparatus for secure execution using a secure memory partition |
US6820164B2 (en) * | 2001-04-17 | 2004-11-16 | International Business Machines Corporation | Peripheral component interconnect bus detection in logically partitioned computer system involving authorizing guest operating system to conduct configuration input-output operation with functions of pci devices |
US7024555B2 (en) * | 2001-11-01 | 2006-04-04 | Intel Corporation | Apparatus and method for unilaterally loading a secure operating system within a multiprocessor environment |
-
2002
- 2002-09-12 US US10/242,746 patent/US7266658B2/en not_active Expired - Fee Related
-
2003
- 2003-08-21 CN CN03153984.XA patent/CN1297909C/zh not_active Expired - Fee Related
- 2003-08-25 JP JP2003300452A patent/JP2004103009A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011526714A (ja) * | 2008-07-02 | 2011-10-13 | ヒューレット・パッカード・カンパニー | ハイパーバイザ・ローディングのためのメモリ管理 |
US9286080B2 (en) | 2008-07-02 | 2016-03-15 | Hewlett-Packard Development Company, L.P. | Memory management for hypervisor loading |
US8843742B2 (en) | 2008-08-26 | 2014-09-23 | Hewlett-Packard Company | Hypervisor security using SMM |
JP2017522637A (ja) * | 2014-06-27 | 2017-08-10 | マカフィー, インコーポレイテッド | 悪意呼を軽減するシステムおよび方法 |
JP2016031659A (ja) * | 2014-07-29 | 2016-03-07 | 株式会社デンソー | 電子制御装置 |
Also Published As
Publication number | Publication date |
---|---|
US7266658B2 (en) | 2007-09-04 |
CN1487424A (zh) | 2004-04-07 |
US20040064718A1 (en) | 2004-04-01 |
CN1297909C (zh) | 2007-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004103009A (ja) | 保護メモリ領域への無許可アクセスを禁止するためのシステム、方法、およびプログラム | |
US6839892B2 (en) | Operating system debugger extensions for hypervisor debugging | |
US7430630B2 (en) | Routing mechanism in PCI multi-host topologies using destination ID field | |
CN111651778B (zh) | 基于risc-v指令架构的物理内存隔离方法 | |
US9210576B1 (en) | Extended trusted security zone radio modem | |
US8448165B1 (en) | System and method for logging operations of virtual machines | |
US6971002B2 (en) | Method, system, and product for booting a partition using one of multiple, different firmware images without rebooting other partitions | |
JP4676744B2 (ja) | セキュリティ関連プログラミング・インターフェース | |
JP3954088B2 (ja) | 論理分割された(lpar)計算機でシステム・ファームウェア更新を安全に実行する機構 | |
KR100938521B1 (ko) | 보안 위치 인식 플랫폼을 가능하게 해주는 방법, 장치, 및시스템 | |
US6910160B2 (en) | System, method, and computer program product for preserving trace data after partition crash in logically partitioned systems | |
JP4270394B2 (ja) | 論理パーティション・データ処理システムにおける不正なオペレーティング・システムのローディング及び実行を防ぐための方法及びシステム | |
JP3815569B2 (ja) | ロジカル・パーティション・データ処理システムにおいてパーティション・ファームウェアを同時更新及び活動化するための方法及び装置 | |
JP2001521236A (ja) | インターネット装置用の遠隔記憶装置を提供するための方法及びシステム | |
CN101202764A (zh) | 确定虚拟以太网适配器的链路状态的方法和系统 | |
TWI396092B (zh) | 用於架構一遠端資料處理系統之電腦程式產品、資料處理系統、電腦實施方法及一種用於為一客戶架構一客戶端資料處理系統之服務處理方法 | |
JP4366336B2 (ja) | 論理パーティション・データ処理システムにおいてトレース・データを管理するための方法、トレース・データを管理するための論理パーティション・データ処理システム、コンピュータにトレース・データを管理させるためのコンピュータ・プログラム、論理パーティション・データ処理システム | |
US7003771B1 (en) | Logically partitioned processing system having hypervisor for creating a new translation table in response to OS request to directly access the non-assignable resource | |
CN113391881B (zh) | 中断的管理方法、装置、电子设备及计算机存储介质 | |
US8695102B2 (en) | Controlling execution of executables between partitions in a multi-partitioned data processing system | |
US20230353593A1 (en) | Systems and methods for protecting pod deployment | |
US7565424B2 (en) | Data processing system, method, and product for reporting loss of service application | |
US7788725B2 (en) | Method and system for probing FCode in problem state memory | |
US20210019264A1 (en) | Memory tagging for sensitive data redaction in memory dump | |
CN114662103A (zh) | 一种文件处理方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051201 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051213 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20060308 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20060313 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060607 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070206 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20070316 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20070326 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070803 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080304 |