説明

安全システムの再構成

安全システムを再構成するための装置、方法、及びシステムは開示される。1実施例において、装置は、構成の保存場所、ロック、及びロック解除ロジックを含む。構成の保存場所は、装置を構成するための情報を保存するためのものである。ロックは、構成の保存場所への書き込みを予防するためのものである。ロック解除ロジックは、サブオペレーティングモードコードから実行された命令のロック解除を可能にするものである。

【発明の詳細な説明】
【技術分野】
【0001】
本開示は情報処理の分野に関し、特に安全な情報処理システムに関する。
【背景技術】
【0002】
インテル株式会社からのインテルペンティアム(登録商標)プロセッサーファミリーのプロセッサーを含む情報処理システムは、安全なシステム環境で操作を支援できる。安全なシステム環境は、信頼パーティション及び非信頼パーティションを含む。システムの最低限プラットフォームハードウエア及び信頼ソフトウエアを信頼パーティションに含むことができる。システムが含むかも知れない如何なる秘密をも保護するために非信頼パーティションから信頼パーティションの資源への直接アクセスを発見される又は変更される事から防ぐことができる。
【0003】
安全システム入力プロトコルの実行を通じて信頼パーティション内にシステムの最低限プラットフォームハードウエアを含むことができる。例えば、開始プロセッサーは、安全入力命令を実行でき、その命令に対し、システム中の全てのエージェントは、プロトコルを適切に引き継ぐために応答しなければならない。応答エージェントには、安全入力処理中如何なる命令をも発せず、又如何なるトランザクションをも処理しない事が要求されるので、開始プロセッサーは、ファームウエアモジュールを真正及び信頼できるものとして有効にでき、信頼操作を支援するためのシステムを構成するようにファームウエアモジュールを実行でき、安全仮想マシーンモニター(SVMM)の実施を開始できる。非信頼ソフトウエアがシステム資源に直接アクセスを持たないように、非信頼ソフトウエアを走らせるように、SVMMは、1以上の仮想マシーン環境を創造する事ができる。
【0004】
一般に、安全なシステム環境で操作する時にシステムを再構成できない。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の目的は、セキュリティーシステムの再構成を提供する事である。
【課題を解決するための手段】
【0006】
上記目的は、図1―3に示す実施例により達成される。
【0007】
本発明は、実施例によって示され、付随図面に制限されない。
【図面の簡単な説明】
【0008】
【図1】情報処理システムにおける本発明の1実施例を示す。
【図2】本発明の1実施例による配置ユニットを示す。
【図3】安全システムを再構成するための方法における本発明の1実施例を示す。
【発明を実施するための形態】
【0009】
安全システムを再構成するためのシステム、装置、及び方法中の本発明の実施例は記述される。記述中、プロセッサー及びシステム構成のような特定の詳細は本発明のより完全な理解を提供するために説明できる。しかし、そのような特定の詳細無しに本発明を実践できる事は当業者によって評価されるであろう。加えて、幾つかの良く知られた構造、回路等は、本発明の不必要な不明確化を避けるために詳細に示されない。
【0010】
本発明の実施例は、それが安全なシステム環境に入った後、情報処理システムの再構成を提供する。管理容易性、信頼性、利用可能性、及び保守性に関係する目的、又は如何なる他の目的のためにもそのような再構成を望むことができる。例えば、不良動作又は最低限プロセッサーコアを予備のコアと取り替えるように安全システムを再構成できる。
【0011】
図1は情報処理システム100における本発明の1実施例を示す。情報処理システム100は、パーソナルコンピュータ、メインフレームコンピュータ、携帯コンピュータ、携帯端末、設置箱、サーバー、又は如何なる他の計算システムであっても良い。この実施例において、システム100は、1以上のプロセッサーパッケージ120を含む最低限プラットフォームハードウエア110、チップセット130、システムメモリー140、システム管理モード(SMM)メモリー141、及び装置150を含む。
【0012】
プロセッサー120は、一般目的マイクロプロセッサーを含む種々の異なるタイプの如何なるプロセッサーにも各実行コアが基礎を置くことができる、1以上の実行コアを持つ如何なる構成部品であっても良い。一般目的マイクロプロセッサーには、インテルペンティアム(登録商標)プロセッサーファミリー、イタニウムプロセッサーファミリー、又はインテル株式会社からの他のプロセッサーファミリーのプロセッサー、又は他の会社の他のプロセッサー、又はデジタル信号プロセッサー又はマイクロコントローラのようなプロセッサーを含み、又再構成可能コア(例えばフィールドプログラム可能ゲートアレイ)であっても良い。図1は唯1つのそのようなプロセッサー120を示すが、システム100は、如何なる数の実行コアをも持つ如何なる数のマルチコアプロセッサー、及び各如何なる数のスレッドをも持つ如何なる数のマルチスレッドプロセッサーをも含む如何なる数のプロセッサーをも含む。この実施例において、プロセッサー120は、コア121及び122を含む。
【0013】
チップセット130は、メモリー操作、出入力操作、構成、制御、内部又は外部インターフェース、接続、又は通信機能(例えば接着ロジック及びバスブリッジ)、及び/又は
プロセッサー120及び/又はシステム100用の如何なる類似の機能をも支援する如何なるグループの回路及びロジックであっても良い。単一チップ、チップ対、複数のチップ間に散らばった状態に基づいてチップセット130の個々の要素を共にグループ分けでき、及び/又は部分的に、全体的に、重複して、又は分布されたアプローチに従い、プロセッサー120を含む1以上のプロセッサーへの一体化可能である。
【0014】
システムメモリー140は、データ及び/又はプログラムコードのような情報を保存できる如何なる媒体であってもよく、そのような媒体には、静的又は動的ランダムアクセスメモリー、半導体に基礎を置く読み込み専用又はフラッシュメモリー、磁気又は光学ディスクメモリー、又は如何なる他のタイプのプロセッサー120による読み込み可能媒体、又はそのような媒体の如何なる組み合わせをも含む。SMMメモリー141は又、如何なるそのような媒体であっても良い。SMMメモリー141とシステムメモリー140とは、同じ又は異なる媒体であっても良く、単一メモリーとして又は2つの異なるメモリーとして製造され、パッケージされ、又は配置されてもよい。
【0015】
装置150は、キーボード、マウス、トラックボール、ポインティングデバイス、モニター、プリンター、メディアカード、ネットワークインターフェース、情報記憶装置等の如何なる数の如何なる入出力装置、周辺装置、又は他の装置をも代表する事ができる。装置150を分離した構成部品に具体化でき、又は如何なる他の装置をも持つ一体化構成部品に装置150を含むことができる。1実施例において、装置150は、多機能入出力装置、周辺装置、又は他の装置において単一機能を代表する事ができる。
【0016】
プロセッサー120、チップセット130、システムメモリー140、SMMメモリー141及び装置150は、1以上の平行バス、逐次的バス、パイプラインバス、非同期バス、有線バス、無線バス、又は他のバス又は2点間接続を直接的に又は間接的に通るような如何なる既知のアプローチに従い、互いに結合可能であり、又は通信可能である。システム100は又、如何なる数の他の追加の装置、エージェント、構成部品又は接続をも含むことができる。
【0017】
システム100は、如何なる知られたアプローチに従っても安全操作のために構成される。システム100は、信頼パーティション102と非信頼パーティション103とに分割される。信頼パーティション102は、最低限プラットフォームハードウエア110、SVMM160、信頼されたカーネル162、及び信頼されたアプリケーション164を含む。非信頼パーティション103は、オペレーティングシステム170及びアプリケーション171,172,及び173を含む。各パーティションは又、追加のプロセッサー、コア、メモリーの部分、装置、又は如何なる他の上記の又はそうでなければ情報処理技術において知られた物理的資源をも含むことができる。
【0018】
プロセッサー120、チップセット130、及び装置150は、各々配置ユニット125,135及び155を含む。本発明の実施例により与えられたように安全システム環境において操作時に、配置ユニット125,135及び155は、システム100の設定可能性及び再設定可能性を提供する。単一アプローチ又は異なるアプローチに従い、配置ユニット125,135及び155を実施できる。
【0019】
図2は、本発明の1実施例による配置ユニット200を示す。配置ユニット200は、配置保存空間210、ロック220、ロック動作可能ロジック222、ロック解除ロジック224、ベース保存場所230、及びアドレス比較ロジック240を含む。配置保存空間210及びベース保存場所230は、構成情報を記憶するために如何なるレジスター及びレジスターの部分をも含み、又は如何なる他の場所をも含むことができる。ロック220、ロック動作可能ロジック222、ロック解除ロジック224、及びアドレス比較ロジック240を、下記の機能を実施するために如何なる回路、ロジック、又は他の構造と共にでも実施できる。
【0020】
配置保存空間210は、システム100のプロセッサー、チップセット、装置、又は如何なる他の構成部品をも構成するための情報を記憶するためのものである。本明細書の記述を除き、コンテンツを変化できないようにロック220は、配置保存空間210をロックするためのものである。
【0021】
動作可能ロジック222はロック220を動作可能にするので、ロック220は動作可能となり、配置保存空間210は、ロック動作可能表示が設定され、ロック信号が高で、又はロック220が動作可能となるべき幾つかの他の条件が真となる事を決定するロック動作可能ロジック222に応答してロックされる。ロック動作可能制御フィールドを含むことができるロック動作可能ロジック222の構成は、ロック220配置保存空間210に含まれない。そこで、本発明は、下記のように解除されるべきロック220を提供するが、ロック220が動作可能である間ロック動作可能ロジック222を再構成できない。
【0022】
1実施例において、安全システム操作の間ロック220が操作可能であるように安全システム操作の開始の部分としてロック動作可能ロジックは、ロック220を動作可能であるように構成される。
【0023】
たとえロック220が動作可能で、ロック解除ロジック224は解除条件が真であると決定しても、配置保存空間210の内容を変えることができるようにロック解除ロジック224はロック220を解除するものである。
【0024】
1実施例において、ロック220は、2つの入力の論理AND演算を実施できる。第1の入力は、解除条件が真である事を示す信号であっても良い。第2入力は、構成書き込み信号であっても良い。ロック220の出力を配置保存空間210に書き込み可能にするために使うことができる。
【0025】
1実施例において、解除条件は、サブオペレーティングシステムモードコードが実行されている事であっても良い。本アプリケーションの目的のために、そのようなモードを、低水準パッチ、システム管理、電力管理、システム信頼性、システム利用可能性、及びシステム保守性、機能、又は他の類似機能の目的のために、オペレーティングシステム透明又は準透明方法で、又は優先水準独立方法で操作する能力を有する操作モードとして定義できる。1つのそのようなモードは、インテルペンティアム(登録商標)プロセッサーファミリー及び互換性プロセッサーのシステム管理モード(SMM)である。(ペンティアム(登録商標)4プロセッサーソフトウエア開発者用マニュアル、Vol.III,2001版、注文番号245472、カリフォルニア州サンタクララのインテル社から利用可能)他のサブオペレーティングシステムモードは、MIPSテクノロジーズMIPS32又はMIPS64アーキテクチュアプロセッサー、IBMパワーPCアーキテクチュアプロセッサー、SPARCインターナショナルSPARCアーキテクチュアプロセッサー、又は如何なる数の他のプロセッサーにも存在可能である。システムファームウエア又はシステムハードウエアにより時々作られる専用サブオペレーティングシステムモード割り込みによりサブオペレーティングシステムモードを呼び出すことができる。専用サブオペレーティングシステムモード割り込みは、通常モードへの入力を要求した緊急事態に応答するためにマスクできないように設計される。
【0026】
上述のように、サブオペレーティングシステムモードの1例は、SMMで、SMMは、通常実行環境に平行な操作環境であり、システム管理、装置管理、電力管理、熱管理、信頼性機能、利用可能性機能、保守可能性機能等のような特別タスクを実行するために使用可能である。SMMは、典型的にシステム管理割り込みピンを主張する事によりシステムモードに入られ、再開命令を実行する事により出られる。SMMは、独立した操作環境なので、通常実行環境から守られるべきそれ自身の私的メモリー空間を有する。この私的メモリー空間は、通常システムメモリーから独立であるが、それは通常システムメモリーのアドレス領域に割り当てられる。
【0027】
そのモードに入るとき、プロセッサーは、独立のSMMアドレス空間、例えばSMMメモリー141内の割り込まれたプログラム又はタスクの文脈を保存する。モード内の実行の間、通常割り込みはできない。最後に、モード内で実行する間のみ実行可能な再開命令の手段によりモードを出ることができる。
【0028】
解除条件は、サブオペレーティングシステムモードコードが実行されている事である1実施例において、配置ユニット200は、ベース保存場所230とアドレス比較ロジック240とを含むことができる。ベース保存場所230は、ベースアドレスを保存するためのものである。ベースアドレスは、サブオペレーティングシステムモードコードがアクセスされるべき(例えばSMM領域)メモリーアドレス領域を特定するためのものである。ベース保存場所230は、如何なる保存場所の如何なるフィールドであっても良い。1実施例において、ベース保存場所230は、4K整列ベースアドレスを特定するために、64ビットモデル特定レジスター(ベースシステム管理領域レジスター又は「ベースSMRR」のビット31:12であっても良い。
【0029】
アドレス比較ロジック240は、構成書き込みトランザクションに関連したアドレスをベースアドレスに対し比較するためのものである。如何なる知られたアプローチに従ってもその比較を実行でき、その比較の選択されたビットをマスクするためにマスク保存場所からマスク値を使うことができる。解除条件が真か否か決定するためにアドレス比較ロジック240からの結果を使うことができる。1実施例において、アドレス比較ロジック240は、構成書き込みトランザクションを作る命令が保存される(例えば命令ポインターを用い)保存場所に対応するアドレスがSMM領域内に有る事を決定し、解除条件が真である事を示す信号は断定される。
【0030】
図3は、安全システムを再構成するための方法300における本発明の1実施例を示す。方法の実施例はこの点に限られないが、図3の方法の実施例を記述するために図1及び2の記述が参照される。
【0031】
ブロック310において、安全システム環境へのシステムの入力は開始される。ブロック312において、システムは、システム中の1以上の配置空間をプログラムする事により安全システム環境において動作するように構成される。ブロック314において、ロックは、配置空間をロックするために動作可能とされる。ブロック316において、安全システム環境へのシステムの入力は完了し、及び安全操作を始める事ができる。
【0032】
ブロック320において、配置空間内の場所に対する構成書き込みトランザクションが開始される。ブロック322において、SMMベースアドレスは、ベースアドレス保存場所から読み込まれる。ブロック324において、構成書き込みトランザクションを作る命令が保存される保存場所に対応するアドレスがベースアドレスに対し比較される。ブロック326において、SMMモードコードが、例えば比較の結果に基づいて実行されているかどうかが決定される。もし実行されているなら、ブロック330において、構成書き込みトランザクションは許可される。もしそうでないなら、ブロック332において、構成書き込みトランザクションは阻止され又は強制終了される。
【0033】
本発明の範囲で、方法300が、異なる順番で、同時に実行される図示ブロックと共に、図示ブロックを省略して、追加ブロックを追加して、表示され、組み合わされ、省略され、又は追加されたブロックの組み合わせと共に実行される事は可能である。
【0034】
プロセッサー120、又は本発明の実施例に従い設計された如何なる他のプロセッサー
又は構成部品を創造から製作への類似まで種々の段階で設計できる。設計を表すデータは、多くの方法で設計を表すことができる。先ず、シミュレーションにおいて有用であるように、ハードウエアをハードウエア記述言語又はもう1つの機能記述言語を用い表すことができる。追加的に又は代替的に、ロジック及び/又はトランジスターゲートを持つ回路水準モデルを設計プロセスの幾つかの段階で作ることができる。更に、幾つかの段階で大抵の設計は、種々の装置の物理的配置を表すデータでそれらをモデル化できる水準に達する。従来の半導体製造技術が使われる場合において、装置配置モデルを表すデータは、集積回路を作るために使われるマスク用の異なるマスク層上の種々の機能の存在又は非存在を特定するデータであっても良い。
【0035】
設計の如何なる表現においても、機械読み取り可能媒体の如何なる形態でもデータを保存できる。そのような情報を伝送するために変調され又は発生された光波又は電波、メモリー、又はディスクのような磁気的又は光学的保存媒体は、機械読み取り可能媒体であり得る。如何なるこれらの媒体も、設計又は、エラー回復ルーチン中の命令のような本発明の実施例に使われる他の情報を運ぶ又は示す事ができる。情報を示す又は運ぶ搬送電波が伝送されるとき、電気信号の複製、緩和、又は再伝送が実行される程度に、新しい複製が作られる。このように、通信供給者又はネットワーク供給者の活動は、本発明の技術を具体化するもの、例えば搬送波の複製を作ることができる。
【0036】
このように、安全システムを再構成するための装置、方法、及びシステムは開示されてきた。ある実施例が開示され、添付図面に示されるが、本開示を研究する時種々の他の変更例に当業者は気づくことができるので、そのような実施例は単に実例であって、広範囲の発明を制限するものでなく、及び本発明は、示され記述された特定の構造又は配置に限定されない事は理解されるべきである。成長が速く、更なる進歩が容易には予見できないこのような技術分野においては、本開示の原理又は付随する特許請求の範囲から逸脱する事無しに技術的進歩を可能にする事により容易化される配置又は詳細において開示例を容易に変更できる。

【特許請求の範囲】
【請求項1】
装置を構成するための情報を保存するための構成の保存場所
前記構成の保存場所への書き込みを防ぐロック;及び
サブオペレーティングモードコードから実行された命令のロック解除を可能にするロック解除ロジック
を含む装置。
【請求項2】
前記ロックを動作可能にするロック動作可能ロジックを更に含む請求項1の装置。
【請求項3】
前記ロック動作可能ロジックは、安全システム環境に入る装置に関連して前記ロックを動作可能にする請求項2の装置。
【請求項4】
前記ロック解除ロジックは、システム管理モードコードから実行された命令が前記ロックの解除を可能にする請求項1の装置。
【請求項5】
前記サブオペレーティングモードコードがアクセスされるべき第1メモリーアドレス領域を特定するベースアドレスを保存するためのベース保存場所を更に含む請求項1の装置。
【請求項6】
前記システム管理モードコードがアクセスされるべき第1メモリーアドレス領域を特定するベースアドレスを保存するためのベース保存場所を更に含む請求項4の装置。
【請求項7】
前記サブオペレーティングモードコードが実行されているか否かを決定するためのアドレス比較ロジックを更に含む請求項5の装置。
【請求項8】
前記システム管理モードコードが実行されているか否かを決定するためのアドレス比較ロジックを更に含む請求項6の装置。
【請求項9】
前記アドレス比較ロジックは、実行される命令に関連するアドレスをベース保存場所の内容と比較する事により、サブオペレーティングモードコードが実行されているか否かを決定する請求項7の装置。
【請求項10】
前記アドレス比較ロジックは、実行される命令に関連するアドレスをベース保存場所の内容と比較する事により、システム管理モードコードが実行されているか否かを決定する請求項8の装置。
【請求項11】
構成書き込みトランザクションを検出するステップ;及び
前記構成書き込みトランザクションがサブオペレーティングモードコードからであるか否かを決定するステップ
を含む方法。
【請求項12】
前記構成書き込みトランザクションがサブオペレーティングモードコードからである事の決定に対し応答する前記構成書き込みトランザクションを許可するステップ
を更に含む請求項11の方法。
【請求項13】
前記構成書き込みトランザクションがサブオペレーティングモードコードからでない事の決定に対し応答する前記構成書き込みトランザクションを阻止するステップ
を更に含む請求項11の方法。
【請求項14】
前記構成書き込みトランザクションを検出する前に安全システム環境に入るステップを更に含む請求項11の方法。
【請求項15】
前記構成書き込みトランザクションがサブオペレーティングモードコードからであるか否かを決定するため前記構成書き込みトランザクションに関連するアドレスをベースアドレスと比較するステップを更に含む請求項11の方法。
【請求項16】
ベースアドレス保存場所から前記ベースアドレスを読み込むステップを更に含む請求項15の方法。
【請求項17】
前記サブオペレーティングモードは、システム管理モードである請求項11の方法。
【請求項18】
サブオペレーティングモードコードを保存するためのダイナミックランダムアクセスメモリー;並びに
プロセッサーを構成するための情報を保存するための構成の保存場所;
前記構成の保存場所への書き込みを防ぐロック;及び
サブオペレーティングモードコードから実行された命令の前記ロックの解除を可能にするロック解除ロジック
を含む構成要素
を含むシステム。
【請求項19】
前記構成要素はプロセッサーを含む請求項18のシステム。
【請求項20】
前記構成要素はチップセットを含む請求項18のシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公表番号】特表2010−515149(P2010−515149A)
【公表日】平成22年5月6日(2010.5.6)
【国際特許分類】
【出願番号】特願2009−544005(P2009−544005)
【出願日】平成19年11月30日(2007.11.30)
【国際出願番号】PCT/US2007/024639
【国際公開番号】WO2008/082455
【国際公開日】平成20年7月10日(2008.7.10)
【出願人】(593096712)インテル コーポレイション (931)
【Fターム(参考)】