説明

プラットフォーム管理システム、プラットフォーム管理方法およびプログラム

【課題】ホストオペレーティングシステムとは独立した安全な実行環境を提供する。
【解決手段】ホストプロセッサ101が、Extensible Firmware Interface(EFI)対応プラットフォームのファームウェア(BIOS)119、および、ホストオペレーティングシステム(ホストOS)を動作させ、OSセンサドライバが、前記ホストOSがクラッシュしたことを示す情報を含む実行時情報を、前記ホストプロセッサとは別個のプロセッサを有し前記ホストOSとは別個に動作するプラットフォーム管理要素(PM要素)110nに伝達し、前記PM要素が、プラットフォームハードウェアをモニタし、前記実行時情報を処理し、前記ホストOSのクラッシュに対して、前記ハードウェアのドライバをアップデートすることにより前記ハードウェアの問題を修復して前記ホストOSを再起動する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の一実施形態は、概ねコンピュータシステムに関し、より詳しくは、プラットフォーム管理容易性のクロスプラットフォーム仕様を含むアーキテクチャに関する。
【背景技術】
【0002】
外部ソースからプラットフォームを管理するさまざまな機構が存在する。
既存のサーバは、ベースボード管理コントローラ(BMC)プロセッサを利用して情報を遠隔管理システムに伝達することもできる。サーバ、デスクトップ、ラップトップなどの遠隔プラットフォーム管理を実現する他の方法も目下開発中かもしれない。多くの管理容易性機構は、管理されるべきプラットフォームにおいてホストオペレーティングシステム(OS)の使用を要する。
【発明を実施するための最良の形態】
【0003】
本発明の一実施例は、ホストオペレーティングシステムとは独立した安全な実行環境を提供するクロスプラットフォーム管理アーキテクチャの使用に関連するシステムおよび方法である。少なくとも1つの実施形態において、本発明は、自動、ユーティリティ、および、オンデマンドコンピューティングを実現することを目的とする。
【0004】
本願明細書中の「1つの実施形態」または「一実施形態」への言及は、実施形態に関連して述べられる特定の特徴、構造、または、特性が本発明における少なくとも1つの実施形態に含まれていることを意味する。したがって、本願明細書中随所に見られる「1つの実施形態において」という言い回しは、必ずしも同じ実施形態にすべて言及しているとは限らない。本発明の完全なる理解を提供すべく、説明のための特定の構成および詳細が記載されている。
【0005】
しかしながら、本発明の実施形態は、本願明細書中に示される特定の詳細なしでも実施し得ることは、当業者にとり明らかであろう。さらに、本発明をあいまいにしないよう、よく知られた特徴は、省略または簡略化しているかもしれない。本記載の全体を通じてさまざまな例が挙げられる。それらは、本発明の特定の実施形態の単なる説明に過ぎない。本発明の範囲は、挙げられた例に限定されない。
【0006】
図1は、本発明の一実施形態に従う、プラットフォーム管理マイクロコントローラ(PM μコントローラ)を有するプラットフォームの特徴を示すブロック図である。プラットフォーム100は、ホストプロセッサ101を含む。
【0007】
プロセッサ101は、メモリコントローラハブ103を介し、ランダムアクセスメモリ105に接続されてよい。
プロセッサ101は、マイクロプロセッサ、デジタル信号プロセッサ、マイクロコントローラなど、ソフトウェアを実行できるいかなるタイプのプロセッサであってもよい。図1は、唯一のこのようなプロセッサ101を示すが、プラットフォーム100には1つまたはそれ以上のプロセッサがあってもよいし、1つまたはそれ以上のプロセッサが多数のスレッド、多数のコアなどを含んでもよい。プロセッサ101は、さらに、入出力コントローラハブ(ICH)107を介し、I/Oデバイスに接続されてよい。ICHは、ローピンカウント(LPC)バス102を介し、スーパーI/Oコントローラ(SIO)、キーボードコントローラ(KBC)、または、信頼できるプラットフォームモジュール(TPM)などの様々なデバイスに接続されてよい。例えば、SIOは、フロッピードライブまたは工業標準アーキテクチャ(ISA)デバイスへアクセスしてよい。一実施例では、ICHは、シリアルペリフェラルインターフェース(SPI)バス104を介し不揮発性メモリに接続される。不揮発性メモリは、フラッシュメモリ、または、スタティックRAM(SRAM)などであってよい。プラットフォーム管理μコントローラ110nは、プラットフォーム100上にあってよい。PMμコントローラ110nは、一般的にPCIまたはPCI高速バスであるバス112を介しICHに接続されてよい。PMμコントローラは、また、SPIバス104を介し不揮発性メモリ(不揮発性記憶装置)117に接続されてもよい。不揮発性記憶装置117は、フラッシュメモリまたはスタティックRAM(SRAM)などでよい。多くの既存のシステムでは、不揮発性メモリはフラッシュメモリである。
【0008】
複数の実施例においては、PMμコントローラ110nは、「小型」または埋込み型プロセッサにたとえられてよい。全能力プロセッサのように、PMμコントローラは、RAMおよびROMメモリ113同様、キャッシュメモリ115に有効に接続されるプロセッサユニット111を有する。PMμコントローラは、ビルトインネットワークインターフェースおよび電源125への独立した接続を有することにより、ホストプロセッサ101がアクティブでなくとも帯域外通信ができる。
【0009】
複数の実施例では、プロセッサ101は、不揮発性記憶装置117内に基本入出力システム(BIOS)119を有する。他の実施例では、プロセッサ101は、遠隔装置(図示せず)から立ち上がり、ブートベクトル(ポインタ)は、不揮発性記憶装置117のBIOS部分119内に存在する。PMμコントローラは、不揮発性メモリのBIOS部分119および保護された部分121を含む不揮発性記憶装置117のすべての内容にアクセスする。いくつかの実施形態では、メモリの保護された部分121は、インテル(登録商標)アクティブマネジメントテクノロジー(IAMT)により安全を保護されている。PMμコントローラは、IAMTソフトウェアスタックを稼働させる。IAMTに関する更なる情報は、公共のインターネットのURL www−intel−com/technology/manage/iamt/ で見つけることができる。(不用意なハイパーリンクを避けるべく、本願明細書中に含まれるURLのピリオドは、ダッシュに置き替えている)。
【0010】
不揮発性メモリのバイオス部分は、OSまたはOS内で動作するアプリケーションにより変更できるので、悪質な改ざんをされる可能性がある。複数の実施例では、PMμコントローラのみが利用可能なメモリ121の保護された領域は、改ざんされる危険なしにクリティカルブートベクトルおよび他の情報を格納するのに用いられる。不揮発性記憶装置117のPMμコントローラ側への唯一のアクセス方法は、PMμコントローラによるプロキシを介した確認、すなわち、サイン承認などを通してであってもよい。
【0011】
多くの既存のシステムは、Extensible Firmware Interface(EFI)ベースのプラットフォームファームウェアおよびそれに関連するフラッシュメモリを使用する。EFIは、一般的にBIOSとして知られる、複数のオペレーティングシステムとプラットフォームファームウェアとの間のインターフェース用のニューモデルを定義する仕様である。2002年12月1日に公開された仕様バージョン1.10は、インターネットのURL developer−intel−com/technology/efi/main_specification.htmで入手可能である。
【0012】
本発明の複数の実施形態は、プラットフォーム管理容易性のためのクロスプラットフォーム仕様を含むアーキテクチャを利用してよい。図2を参照すると、本アーキテクチャは、能力モジュール(CM)253と呼ばれる第三者管理能力拡張子を実行できるホストオペレーティングシステム210とは独立した実行環境230を実現できる。CM253は、ネットワーク全体に動的にロードされ、PM230の実行時環境へと挿入されることができるバイナリ成分である。CM253は、PMにより提供された管理容易性機能を拡張する。CM253は、異なるインターフェース、例えばセンサデータを収集して措置を講じるSEI231を操作しかつ使用するPM実行時環境230により提供される一組のサービスに依存する。PM実行時環境230は、プラットフォーム管理容易性管理インターフェース(PMAI)239、セミナエフェクタインターフェース(SEI)231、(外部オペレーションインターフェース)EOI237などの多数のインターフェースを示している。これらのインターフェースのそれぞれは、独自の目的を果たす。
【0013】
EOI237は、外部エンティティがPM実行時環境230に遠隔アクセスして制御できるようにする。EOI237は、プラットフォーム能力、センサ、アセット情報、実行診断アプリケーション、システム提供の発見などの機能を提供する。PMAI239は、PM実行時環境230を調整する管理機能を提供する。PMAI239は、ドライバ、OS、CMの問合せ/パッチング、CMのインストール/除去/開始/停止、および、PMの開始/停止などの動作を許容する。SEI231は、一般的に、システム上のデバイス、読み取りセンサデータ、書込みエフェクタデータなどの列挙を可能にする機能を定義する。PMAI239およびEOI237は、IT管理者により遠隔で起動される。アーキテクチャは、ホストオペレーティングシステム(OS)210と協働するいかなるインターフェースまたは機構をも定義しない。デスクトップ、サーバ、または、ハンドヘルドにおいて動作するプラットフォーム管理ソリューションは、OSと協働するときにさらなる柔軟性および制御を提供できる。PMとホストOS210との間のインターフェースは、225として示される。
【0014】
本発明の実施形態は、OS上で動作するローカル管理エンティティ205によるプラットフォーム管理容易性要素230との通信を実現し、プラットフォーム管理容易性要素230のためにExtensible Firmware Interface(EFI)実行時サービス220(207、209、211)を介してOSアクティビティをモニタする機構を含む。複数の実施形態では、アーキテクチャは、プラットフォーム管理容易性インフラがOSの健康をモニタできるOS210の状況において動作する"OSセンサ"203を利用する。EFI実行時ドライバ220がインターフェースをエクスポートすることにより、OSセンサ情報は、プラットフォーム管理容易性インフラ230に提供されることができる。また、EFI実行時ドライバは、インターフェースを提示しているため、OSセンサドライバは、PM実行時環境230において動作するOS特定CMからコマンドを受信してよい。プラットフォーム管理容易性インターフェースをOSに示し、プラットフォーム管理容易性インフラがOSアクティビティをモニタしかつOSの回復動作を制御できるようにすることにより、本発明の複数の実施例は、既存のプラットフォーム管理容易性アーキテクチャを補う多目的マネジメントソリューションを提供する。本発明の複数の実施形態は、図3に関連して述べられるような従来のBMC(ベースボード管理コントローラ)に基づくプラットフォームマネジメントソリューションと旧版互換性があってよい。
【0015】
プラットフォーム管理容易性(PM)実行時230は、OSセンサドライバ203から受信されたクラッシュポイントに至るまでの情報に基づき、ポストクラッシュ(OS)リカバリを実行することもできる。実行時情報は、OSセンサドライバ203により収集されて、処理のためにPM実行時230へと送られてよい。さまざまな通信方法が用いられ得ることは等業者にとり明らかである。例えば、情報は、メールボックス、共有メモリ、または、他の通信方法を介し伝達される。マネジメントアプリケーション201または遠隔局260へと勧告が返送されることにより、システム内に変更をもたらすことができる。既存のシステムは、プラットフォームハードウェア/BIOSとプラットフォームOS/ドライバとの間のバージョン互換性を調べることができる。本発明の複数の実施形態は、よりインテリジェントな分析を実行すべく、クラッシュ・ダンプを分析することもできる。PMは、OSクラッシュに前もって対処するか、または、SEI211を介しセンサドライバ203から受信されたOSパフォーマンスデータをモニタすることにより、低いパフォーマンスを向上させるよう勧告することもできる。
【0016】
EFIアーキテクチャは、プラットフォームファームウェア(一般的にはBIOSとして知られる)とオペレーティングシステム(OS)との間のモジュラーインターフェースを定義する。EFI対応ファームウェアを実行することにより、EFIシステムテーブルと呼ばれるデータ構造をOSおよびOSローダにエクスポートする。OSは、データ(例えばACPIテーブル)およびEFI実行時サービスとして知られるサービスのセット(ファンクションポインタ)を含むEFIシステムテーブルにアクセスすべくEFIを認識している必要がある。これらのサービスは、システム時間/日付の検索/設定、NVRAMの問合せ/設定などの機能をOSに提供する。これらは、一握りの標準的サービスに過ぎないが、EFIサービスは、OSに付加価値機能を提供するまでに拡張できる。本発明の複数の実施形態は、OSに依存しない方法でプラットフォーム管理容易性ハードウェアにインターフェースを提供し、かつ、プラットフォーム管理容易性インフラにOS健康情報を提供するよう、標準EFI実行時サービスを拡張する。EFIサービスは、プラットフォーム管理ハードウェアに基づく従来のBMC(ベースボード管理コントローラ)にも提供されてよい。従来のBMCベースのプラットフォーム管理ソリューションは、サーバプラットフォーム上で共通である。
【0017】
一実施形態では、埋め込み型プラットフォーム管理容易性要素230は、ホストプロセッサと共存する補助プロセッサまたはマイクロコントローラを含み、図1の例示的実施形態において説明したようなチップセット内に、または、PCIデバイスとして集積されてよい。プラットフォーム管理容易性プロセッサは、低価格、低消費電力のプロセッサであってよく、主OS/プロセッサがスリープモード中も常にネットワークに接続される低電力を供給するような価値を提供できるか、または、埋め込み型プラットフォームとして、例えば、遠隔情報テクノロジー(IT)管理インフラを介しファイアウォール機能を遂行するプラットフォーム管理を実行する遠隔第三者管理モジュールのダウンロードを実行できる。
【0018】
図3を参照すると、レガシーサーバシステムにおいて、BMCチップ307は、IPMB(インテリジェントプラットフォーム管理バス)308上で他のデバイスと通信する。BMC307は、IPMI(インテリジェントプラットフォーム管理インターフェース)を標準メッセージパッシングプロトコルとして使用する。BMCは、また、システム管理ソフトウェア要素が通信する、BT(ブロックトランスファ)、KCS(キーボードコントローラスタイル)、SMIC(システムマネジメントインターフェースチップ)306のような異なるインターフェースも示している。図2は、管理スタックを示す。
【0019】
再び図2を参照すると、複数の実施形態では、ホストプロセッサ上で動作する管理アプリケーション201は、オペレーティングシステム(OS)センサドライバ203およびプラットフォーム管理容易性(PM)ドライバ205を介しホストオペレーティングシステム210と通信する。ホストOSは、Extensible Firmware Interface(EFI)実行時環境220と通信する。EFI実行時環境220は、外部オペレーションインターフェース(EOI)ドライバ207、プラットフォーム管理容易性管理インターフェース(PMAI)ドライバ209、および、センサエフェクタインターフェース(SEI)ドライバ211などのPMサポートであるすべてのインターフェースを含んでよい。任意でホストOSに示されるこれらのインターフェースにより、ホストOSは、遠隔管理エンティティなしにPMを制御できるようになる。
【0020】
図3では、OSセンサドライバ325は、EFI実行時サービス340に周期的に呼び掛けることにより、OS性能、OSアクティビティ、ソフトウェアインベントリなどに影響を与えるすべてのシステムパラメータを報告するよう構成されてよい。OSの健康の実行時分析は、PMにおいて動作するCMにより実行されてよい。CMは、EFIインターフェースを介しOSセンサドライバと通信することができる勧告動作であってもよい。OSセンサドライバは、それらの動作をどのように実行するか知っている。その一方、BMC中心の管理は、熱センサおよび他のハードウェアベースの要素のようなものにより問題点を識別することだけできる。
【0021】
図2を再び参照すると、プラットフォームは、プラットフォーム管理容易性ハードウェア環境230に接続される補助プロセッサを有することもある。
この実行時環境230は、ホストOS上で動作するEFI実行時環境におけるドライバ207、209、および、211と対応させるよう、外部オペレーションインターフェース(EOI)237、センサエフェクタインターフェース(SEI)231、および、PMAI239を有してよい。また、PMハードウェアおよび実行時環境230は、能力モジュール(CM)235a−bを有してもよい。SEI231は、OS232用SEIドライバ、ネットワークインターフェースカード(NIC)234、および、中央処理装置(CPU)236などを含んでよい。SEIドライバ221は、記憶デバイス241、メモリデバイス243、NIC245、CPU247または他のハードウェア249のようなプラットフォームハードウェア要素240と通信してよい。いくつかの実施形態では、PMは、NIC245を介し遠隔管理システム260と通信してもよい。このNIC245は、プラットフォーム上のホストOS210には見えない。
【0022】
再び図3を参照すると、従来のBMCベースのプラットフォームでは、管理アプリケーション301は、OS303と通信してよい。プラットフォーム管理ドライバ305は、BT(ブロックトランスファ)、KCS(キーボードコントローラスタイル)またはSMIC(システム管理インターフェースチップ)のような通信プロトコル306を介し、BMC307と通信してよい。BMC307は、IPMB308を介し様々なハードウェアデバイス(センサ)309a−cと通信してよい。
【0023】
既存のシステムでは、BMC307は、主プロセッサの温度、電源の健康、または、プロセッサの速度を検知できる。BMC307は、一般的にIPMIプロトコルを用いて通信する。さらに、BMCは、一般的にサーバシステムにより配備されるだけである。既存のシステムでは、BMC307は、OSの健康について何も知らない。例えば、BMCは、OSのクラッシュには気づかない、BMCは、OSに接続されていない、などである。本願明細書中に開示されるプラットフォーム管理容易性の複数の実施形態において、PMは、OSの問題を回復させ、修復する。 従来のBMC−IPMI管理に反し、PMは、プラットフォーム要素を備える拡張可能なインターフェースによるOSクラッシュの原因を識別する能力を有する。PMドライバ327は、ハードウェアドライバ問題を識別し、ドライバをアップデートした後、OS323を再起動する能力を有してよい。他のアップデート、例えば、オペレーティングシステム(OS)のパッチ、BIOSのアップデートなどが実行されてよい。従来のBMC管理システムは、厳密言えば、プラットフォームハードウェア管理中心である。PMシステムの実施形態は、メモリ消費、システムが非効率に稼働しているか、または、特定のパッチがインストールされているか、すなわちサービスパックかどうかを決定すべくOSに問い合わせてよい。実施形態は、また、プラットフォームのインベントリの管理もしてよい。OSセンサドライバ325は、PM特定EFI実行時ドライバ340を介し、この情報をPMシステムに伝える。
【0024】
システムが遠隔管理者によって管理されている場合、OSセンサドライバ325は、同じ情報を遠隔エンティティ(すなわち図2の260)に提供してもよい。PMハードウェアおよび実行時環境は、遠隔管理エンティティと共にプラットフォームを制御してよい。例えば、遠隔管理エンティティがホストとのネットワーク接続を失った場合、それに代わって対処するPMと接触することもできる。PMが遠隔管理エンティティからいずれの通知を受信するのに失敗した場合、遠隔管理エンティティは、プラットフォーム制御を引き継ぎ、問題を解決することができる。
【0025】
図3の右側に見られるように、いずれかのプラットフォームに埋め込まれたプラットフォーム管理能力は、実行時EFIサービスとしてホストOSに対しトランスペアレントに示されてよい。本発明の実施形態に従うEFIベースのプラットフォーム管理容易性環境において、管理アプリケーション321は、OS323を介し、OSセンサドライバ325およびプラットフォーム管理ドライバ327の両方と通信する。EFI実行時サービス340は、EFI PMドライバ341およびEFI BT/KCS/SMICドライバ343を含んでよい。図に示すように、OSプラットフォーム管理ドライバは、BMCと通信すべくKCS、BT種のインターフェース(306参照)を使用しなくてもよく、EFI実行時サービスを介し示された管理アプリケーションプログラムインターフェース(API)343を用いてプラットフォーム上の任意の管理可能なエンティティを制御または問い合わせることができる。実行時サービスは、例えばPMハードウェア345またはBMC347などの対応するハードウェアと通信する。PMハードウェアおよびBMCハードウェアは、専用PM管理バス348またはIPMB349のいずれかを介し、様々なハードウェアデバイス350a−dと通信してよい。PM管理バスは、いずれのEFIベースの実行時サービスも変更しない。例えば、PMハードウェアは、高速専用PM管理バス348においてプラットフォーム管理容易性コントローラ350aと通信してもよいし、BMCは、IPMB349を介し、CPU350d、ファン350b、または、電源350cにおけるセンサと通信してもよい。
【0026】
APIは、下にあるプラットフォーム管理ハードウェア345またはインターフェースとは関係がなく、管理バス上の他のデバイスと通信するために用いる。EFI実行時サービス340は、プレブートの間にEFIベースのファームウェアによりロードされる実行時EFIドライバ341および343のように実行され、ポストブート後もメモリ内に存続してよい。EFI対応OSは、これらのサービスを容易に使用できる。図3は、PM用の異なるドライバ、および、BMCベースのプラットフォーム管理ソリューションを示す。BMC特定EFIドライバ343は、標準インターフェース(BT、KCSまたはSMIC)の1つを用いてBMCハードウェア347と通信し、管理可能なデバイス、ログ事象を列挙し、センサデータレコード(SDR)などを検索する機能をOSに対して示す。同様に、PM実行時ドライバ341は、OSにトランスペアレントなPMハードウェア345と通信し、EOI(237)、PMAI(239)およびSEI(231)などの異なるPMインターフェースタイプに準拠する実行時機能を示す。
【0027】
再び図2を参照すると、複数の実施形態において、センサエフェクタは、主プロセッサファンの速度を制御し、必要であれば、例えば、ファンの速度を遅くするまたは速くするなど変化させてよい。例えば、CPU236のSEIドライバは、プロセッサファン速度、プロセッサ温度など、プロセッサにおけるセンサを制御/モニタするロジックまたはコードを含むプロセッサ用の実際のSEIドライバであってよい。SEI231は、232、234、236のようなすべてのプラットフォーム要素特定ドライバと協働できるほどに一般化されている独立したドライバとして実行できるインターフェースである。OS上の管理アプリケーション201は、(エフェクタインターフェースを介し)動作を起こす管理アプリケーションである。一方、遠隔管理アプリケーションは、PMハードウェアと直接接続し、同じ措置を講じてもよいし、または、PM実行時環境において動作するCMは、OSセンサ用のエフェクタインターフェースを介し、独立した措置を講じてもよい。センサエフェクタ情報は、対応するSEIドライバ221を介し伝達される。前述のように、能力モジュール(CM1)253aは、EOI237を介し遠隔で制御される。CM253は、自律機能を提供できる構成要素である。例えば、CM253は、センサを読み取り、エフェクタインターフェースを介し、措置を講じてもよい。CMは、個別に問題を修正できるローカルエージェントである。CMがない場合、PMは、修正を遠隔アプリケーションに割り当ててよい。
【0028】
図4を参照すると、EFIアーキテクチャで用いられるべきプラットフォーム管理容易性のためのプロトコルの典型的構造が示されている。EFI PLATMGMTプロトコル構造は、いくつかの機能、または、様々なEFI実行時ドライバ207、209、211のためのEFIサービスを含む。例えば、EOIドライバ207は、プラットフォーム管理能力を問い合わせる機能(EFI_PROTOCOL_PLATMGMT_QUERY_CAPS)、センサ情報を発行して購読する機能(EFI_PROTOCOL_PLATMGMT_SENSOR_INFO)、プラットフォーム上のアセットを問合せかつ管理する機能(EFI_PROTOCOL_PLATMGMT_ASSET_INFO)を実行してよい。PMAIドライバ209は、プラットフォーム管理容易性実行時を開始/停止する機能(EFI_PROTOCOL_PLATMGMT_START)および(EFI_PROTOCOL_PLATMGMT_STOP)、プラットフォーム管理容易性構成を問合せる機能(EFI_PROTOCOL_PLATMGMT_QUERY)、ルールをインストールする機能(EFI_PROTOCOL_PLATMGMT_INSTALLRULE)を含む。SEIドライバ211は、デバイスを列挙する機能(EFI_PROTOCOL_PLATMGMT_ENUMS_DEVS)、メモリにマップされるデバイスレジスタのセットであるレジスタデータレコード(RDR)を登録する機能(EFI_PROTOCOL_PLATMGMT_REG_RDR)、センサ/エフェクタデータを読み取る機能(EFI_PROTOCOL_PLATMGMT_READ_SEDATA)、例えば、デバイス上のセンサを記述するセンサデータ記録(SDR)、フィールド交換可能ユニット(FRU)状態などのデバイス情報のレポジトリを定義する機能(EFI_PROTOCOL_PLATMGMT_INIT_DATA)を含んでよい。
【0029】
OSセンサは、物理的センサではないという意味で擬似センサであるが、OSパフォーマンス、アクティビティ、ソフトウェアインベントリなどに関するデータを読み取る。SEIドライバは、OSセンサドライバを含むすべてのセンサドライバにより実行されるよう要求されるSEIにより定義される機能を呼び出す。センサが物理的センサか擬似センサであるかは問題ではない。要求されるデータがOSに関連する場合、OSセンサドライバは、物理的センサと同じやり方でデータをEFIサービスに返送する。
【0030】
本願明細書中に記載される技術は、いかなる特定のハードウェアまたはソフトウェア構成に限定されず、いずれのコンピュータ、家庭用電化製品、または、処理環境においても適用性を見出せる。本技術は、ハードウェア、ソフトウェア、または、それらの組み合わせにおいて実行することもできる。
【0031】
シミュレーションのために、プログラムコードは、ハードウェア記述言語、または、設計されたハードウェアが動作すると思われる方法のモデルを本質的に提供する他の関数的記述言語を用いてハードウェアを表わしてよい。プログラムコードは、コンパイルおよび/または翻訳され得るアセンブリまたはマシン語、あるいは、データであってよい。さらに、1つの形式またはそれ以外において、措置を講じるかまたは結果を生じるソフトウェアに関する記述は、技術的に共通している。このような表現は、プロセッサに動作を実行させるかまたは結果を生じさせる処理システムによるプログラムコードの実行の記載を簡略化したものにすぎない。
【0032】
それぞれのプログラムは、ハイレベル手続きまたはオブジェクト指向プログラミング言語で実行されることにより、処理システムと通信してよい。しかしながら、プログラムは、必要であれば、アセンブリまたは機械言語でも実行できる。いずれのケースでも、言語は、コンパイルまたは翻訳される。
【0033】
プログラム命令は、命令によりプログラムされる汎用または特殊用途の処理システムに本願明細書中に記載された動作を実行させるよう用いられてよい。または、動作は、動作を実行するためのハードワイヤードロジックを含む特定のハードウェア要素により、あるいは、プログラムされたコンピュータ構成要素とカスタムハードウェア構成要素との任意の組み合わせにより実行されてよい。本願明細書中に記載される方法は、処理システムまたは他の電子デバイスをプログラムすることにより本方法を実行するよう用いられる命令を格納した機械アクセス可能な媒体を含み得るコンピュータプログラム製品として提供されてよい。
【0034】
プログラムコードまたは命令は、例えば、固体メモリ、ハードドライブ、フロッピーディスク、光記憶装置、テープ、フラッシュメモリ、メモリスティック、デジタルビデオディスク、デジタル多用途ディスク(DVD)などを含む記憶装置、および/または、付随する機械読み取りまたは機械アクセス可能な媒体のような揮発性および/または不揮発性メモリに格納されてよく、さらには、機械アクセス可能な生物学的状態を保持する記憶装置など、より新規な媒体に記憶されてもよい。機械読み取り可能な媒体は、機械により読み取り可能な形式で情報を格納する、伝送する、または、受信するためのあらゆる機構を含んでよく、また、アンテナ、光ファイバ、通信インターフェースなど、電気、光、アコースティック、または、他の形式のプログラムコードを符号化する伝搬信号または搬送波が通過する有形媒体を含んでよい。
【0035】
プログラムコードは、パケット、シリアルデータ、パラレルデータ、伝搬信号などの形式で伝送されてよく、圧縮または暗号化フォーマットで用いられることもできる。プログラムコードは、モバイルまたは固定のコンピュータ、パーソナル携帯情報機器、セットトップボックス、携帯電話およびポケットベル(登録商標)、一般電子機器デバイス(DVDプレーヤ、パーソナルビデオレコーダ、パーソナルビデオプレーヤ、衛星受信機、ステレオレシーバ、ケーブルTV受像器を含む)、プロセッサ、該プロセッサにより読み取られる揮発性、および/または、不揮発性メモリ、少なくとも1つの入力デバイス、および/または、1つまたはそれ以上の出力デバイスをそれぞれ含む他の電子デバイスのようなプログラム可能な機械において実行しているプログラムに実装できる。入力デバイスを用いて入力されるデータにプログラムコードを適用することにより、記載された実施形態を実行し、かつ、出力情報を生成することもできる。出力情報は、1つまたはそれ以上の出力デバイスに適用されてよい。開示された内容の実施形態は、マルチプロセッサまたはマルチコアプロセッサシステム、ミニコンピュータ、メインフレームコンピュータ、同様に、仮想的に任意のデバイスに埋め込まれることのできる一般的またはミニチュア・コンピュータ、または、プロセッサを含む様々なコンピュータシステム構成により実施可能であることは、当業者であれば当然理解できるであろう。また、開示された内容の実施形態は、タスクまたはその一部が通信ネットワークを介し接続される遠隔処理デバイスにより実行できる分散型コンピューティング環境においても実施できる。
【0036】
動作は連続プロセスとして説明されているが、実際には、そのいくつかは、並列に、同時に、および/または、分散環境において、シングルまたはマルチプロセッサマシンによるアクセスのために局所的に、および/または、遠隔に格納されるプログラムコードにより実行されてよい。さらに、いくつかの実施形態では、動作の順序は、開示された内容の趣旨に逸脱せずに並べ替えることもできる。プログラムコードは、埋め込み型コントローラによりまたはそれと共に使用されてよい。
【0037】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることができる。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【図面の簡単な説明】
【0038】
本発明の特徴及び利点は、以下の本発明の詳細な説明から明らかになるであろう。
【0039】
【図1】本発明の実施形態が実行されるプラットフォームを示すブロック図である。
【0040】
【図2】本発明の一実施例に従う、プラットフォーム管理容易性(PM)ハードウェアとホストOSとの間のインターフェースを示すブロック図である。
【0041】
【図3】本発明の実施形態に従う、典型的なExtensible Firmware Interface(EFI)実行時サービスに基づく管理スタックと比較したときの従来のベースボード管理コントローラ(BMC)管理スタックを示すブロック図である。
【0042】
【図4】本発明の一実施形態に従う、EFI対応プラットフォームファームウェア(BIOS)により実行され、かつ、EFI対応ホストOSにより用いられるプラットフォーム管理容易性のためのEFIプロトコルの典型的な構造を示す。

【特許請求の範囲】
【請求項1】
プラットフォーム管理システムであって、
Extensible Firmware Interface(EFI)対応プラットフォームのファームウェア(BIOS)、および、ホストオペレーティングシステム(ホストOS)を動作させるホストプロセッサと、
前記ホストプロセッサとは別個のプロセッサを有し、前記ホストOSとは別個に動作するプラットフォーム管理要素(PM要素)と、
前記ホストOSがクラッシュしたことを示す情報を含む実行時情報を、前記PM要素に伝達するOSセンサドライバと
を備え、
前記PM要素は、プラットフォームハードウェアをモニタするSEIドライバと、前記実行時情報を処理するモジュール(CM)とを有し、前記ホストOSのクラッシュに対して、前記ハードウェアのドライバをアップデートすることにより前記ハードウェアの問題を修復して前記ホストOSを再起動する
プラットフォーム管理システム。
【請求項2】
前記OSセンサドライバは、EFI実行時サービスを介して前記PM要素と通信する
請求項1に記載のシステム。
【請求項3】
前記EFI実行時サービスは、前記PM要素の実行時環境へ外部から遠隔アクセスするための外部オペレーションインターフェース(EOI)ドライバ、前記PM要素の実行時環境を調整する管理機能を提供するプラットフォーム管理インターフェース(PMAI)ドライバ、および、前記OSセンサドライバを読み取るSEIドライバを含む
請求項2に記載のシステム。
【請求項4】
遠隔局と通信するよう、前記PM要素と接続するネットワークインターフェースカード(NIC)をさらに含む、
請求項1から3のいずれか一項に記載のシステム。
【請求項5】
前記ホストOSからは前記PM要素に接続される前記NICが見えない、
請求項4に記載のシステム。
【請求項6】
プラットフォーム管理方法であって、
ホストプロセッサが、Extensible Firmware Interface(EFI)対応プラットフォームのファームウェア(BIOS)、および、ホストオペレーティングシステム(ホストOS)を動作させ、
OSセンサドライバが、前記ホストOSがクラッシュしたことを示す情報を含む実行時情報を、前記ホストプロセッサとは別個のプロセッサを有し前記ホストOSとは別個に動作するプラットフォーム管理要素(PM要素)に伝達し、
前記PM要素が、プラットフォームハードウェアをモニタし、前記実行時情報を処理し、前記ホストOSのクラッシュに対して、前記ハードウェアのドライバをアップデートすることにより前記ハードウェアの問題を修復して前記ホストOSを再起動する
プラットフォーム管理方法。
【請求項7】
前記OSセンサドライバは、EFI実行時サービスを介して前記PM要素と通信する
請求項6に記載の方法。
【請求項8】
前記EFI実行時サービスは、前記PM要素の実行時環境へ外部から遠隔アクセスするための外部オペレーションインターフェース(EOI)ドライバ、前記PM要素の実行時環境を調整する管理機能を提供するプラットフォーム管理インターフェース(PMAI)ドライバ、および、前記OSセンサドライバを読み取るSEIドライバを含む
請求項7に記載の方法。
【請求項9】
コンピュータを、請求項1から5のいずれか一項に記載のシステムとして機能させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2012−119000(P2012−119000A)
【公開日】平成24年6月21日(2012.6.21)
【国際特許分類】
【出願番号】特願2012−4372(P2012−4372)
【出願日】平成24年1月12日(2012.1.12)
【分割の表示】特願2007−211775(P2007−211775)の分割
【原出願日】平成19年8月15日(2007.8.15)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.フロッピー
【出願人】(591003943)インテル・コーポレーション (1,101)
【Fターム(参考)】