(57)【要約】  コンピュータシステムの複数のシステム構成設定を更新する方法および装置。複数の実施形態は、ユーザが、サーバマシンから、ネットワークまたは同様の通信システム上で、対象のマシンのシステム構成を更新することを可能にする、リモートシステム構成システムを含む。他の実施形態は、システム構成データを対象のコンピュータシステムに書き込むために、バスマスタデバイスを用いたシステム構成方法を含む。【特許請求の範囲】
【請求項１】
基本入力出力システム（ＢＩＯＳ）構成データを、ネットワーク上で、リモートソースから受信する段階、
受信されたＢＩＯＳ構成データを記憶する段階、および
システム構成を更新する段階
を備える方法。
【請求項２】
前記受信されたシステム構成データは、所定のメモリスペースに記憶される請求項１に記載の方法。
【請求項３】
前記所定のメモリスペースの中の記憶された構成データの中の前記システム構成への複数の変更をチェックする段階をさらに備える請求項２に記載の方法。
【請求項４】
前記システム構成を更新する段階は、リブートシーケンスの間に生じる請求項１に記載の方法。
【請求項５】
前記システムの動作の間に、受信されたＢＩＯＳ構成データに基づいて、複数のシステム変更をもたらす段階をさらに備える請求項１に記載の方法。
【請求項６】
システム管理モジュールに複数のシステム構成変更を通知する段階をさらに備える請求項１に記載の方法。
【請求項７】
基本入力出力システム（ＢＩＯＳ）構成データを、ネットワーク上で、リモートモジュールから受信するクライアントモジュール、
受信されたＢＩＯＳ構成データを記憶する前記クライアントモジュールに結合されたメモリデバイス、および
受信されたＢＩＯＳ構成データに基づいて、複数のシステム設定を調整する前記メモリデバイスに結合されたシステム構成モジュール、
を備える装置。
【請求項８】
前記クライアントモジュールを実行するためのプロセッサをさらに備える請求項７に記載の装置。
【請求項９】
リモートマシンとの通信を可能にするための前記クライアントモジュールに結合されたネットワークデバイスをさらに備える請求項７に記載の装置。
【請求項１０】
前記システム構成モジュールおよびＢＩＯＳ構成データを記憶するための不揮発性メモリデバイスをさらに備える請求項７に記載の装置。
【請求項１１】
通信媒体と、
第一のマシンの基本入力出力システム（ＢＩＯＳ）構成データを修正するための第一のクライアントモジュールを有する前記通信媒体に結合された前記第一のマシンと、
前記第一のマシンを再構成するためにＢＩＯＳ構成データを前記通信媒体を介して前記クライアントモジュールに送信するサーバモジュールを有する前記通信媒体に結合された第二のマシンと
を備えるシステム。
【請求項１２】
前記サーバモジュールからＢＩＯＳ構成データを受信するための第二のクライアントモジュールを有する前記通信媒体に結合された第三のマシンをさらに備える請求項１１に記載のシステム。
【請求項１３】
前記第一のマシンは、
受信されたＢＩＯＳ構成データを所定のメモリスペースに記憶するために前記クライアントモジュールに結合されたメモリデバイスをさらに備える請求項１１に記載のシステム。
【請求項１４】
前記第一のローカルマシンは、
リブートの間に前記所定のメモリスペースの中に記憶されたＢＩＯＳ構成の中の複数の変更をチェックするためのシステム管理モジュールをさらに備える請求項１１に記載のシステム。
【請求項１５】
リモートソースから基本入力出力システム（ＢＩＯＳ）構成データを受信する手段、
受信された（ＢＩＯＳ）構成データを記憶する手段、および
システム構成を更新する手段、
を備える装置。
【請求項１６】
受信された複数のＢＩＯＳ構成変更に基づいて、複数のシステム変更をもたらす手段をさらに備える請求項１５に記載の装置。
【請求項１７】
複数のＢＩＯＳ構成変更をシステム構成モジュールに通知する手段をさらに備える請求項１５に記載の装置。
【請求項１８】
記憶された複数の命令を備えるマシン可読媒体であって、前記複数の命令が実行された場合、マシンに、
プロセッサ構成データ、メモリ構成データ、および周辺デバイス構成データの１つを有する構成データをネットワークの上で、リモートソースから受信すること、
システム構成データを記憶すること、および
システム構成を更新すること
を備える複数の動作の一式を実行させるマシン可読媒体。
【請求項１９】
前記受信されたシステム構成データは、所定のメモリスペースに記憶される請求項１８に記載のマシン可読媒体。
【請求項２０】
記憶されたさらなる命令を備え、前記命令が実行された場合、マシンに、
所定のメモリスペースの中の前記記憶されたシステム構成の中のシステム構成への複数の変更をチェックすることをさらに備える複数の動作の一式を実行させる請求項１８に記載のマシン可読媒体。
【請求項２１】
前記第一のソースは、リモートサーバである請求項１に記載の方法。
【請求項２２】
前記第一のソースは、前記所定のメモリスペースに書き込むことができるデバイスである請求項２に記載の方法。
【請求項２３】
メモリデバイス、
前記メモリデバイスの中の所定のメモリスペースにシステム構成データを書き込むための装置に遠隔的に結合されたバスマスタデバイス、および
前記所定のメモリスペースの中に記憶された基本入力出力システム（ＢＩＯＳ）構成データに基づいて、複数のシステム構成を調整するために前記メモリに結合されたシステム構成マネージャ、
を備える装置。
【請求項２４】
前記デバイスは、取り外し可能で前記メモリデバイスに結合された請求項２３に記載の装置。
【請求項２５】
前記デバイスは、ユニバーサルシリアルバス（ＵＳＢ）、シリアルポート、パラレルポートおよび１３９４ポートの１つで通信する請求項２３に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の複数の実施形態は、複数のコンピュータシステム構成に関する。具体的には、複数の実施形態は、遠隔的にシステム構成を変更することおよびバスマスタデバイスを使用してシステム構成を更新することに関する。
【背景技術】
【０００２】
コンピュータシステムは、その機能に必要な複数のデバイスを備える。システムが起動されまたは再起動される場合、これら複数のデバイスは、それぞれ、開始されまたは初期化されなければならない。ほとんどの複数のコンピュータシステムは、コンピュータシステムの基本起動および初期化を処理するシステム構成マネージャプログラムを備える。
【０００３】
幾つかのコンピュータシステムにおいて、基本起動および初期化プログラムまたはシステム構成マネージャは、基本入力−出力システム（ＢＩＯＳ）と称される。起動または再起動の後、コンピュータシステムは、ＢＩＯＳの第一の命令を実行することから始める。ＢＩＯＳは、チップセットを初期化し、システムメモリをテストおよび初期化し、ならびに周辺デバイス機能をテストおよび初期化する。このプロセスは、集合的に、パワーオンセルフテスト（ＰＯＳＴ）として知られる。複数のシステムデバイスが適切に初期化された後、ＢＩＯＳは、ブートローダプログラムを読み込む。ブートローダプログラムは、固定ディスクなどのストレージデバイスの指定されるブートセクタに記憶される。ブートローダは、オペレーティングシステムを起動する。オペレーティングシステムは、その後、コンピュータシステムを制御する。
【０００４】
ＢＩＯＳコードは、フラッシュメモリデバイスに記憶されるファームウェアである。ＢＩＯＳコードは、システムＰＯＳＴの間に、複数のユーザ構成可能設定をプログラムするために、構成データを使用する。ＢＩＯＳ構成データは、相補型金属酸化膜半導体（ＣＭＯＳ）から成る不揮発性メモリに記憶される。ＣＭＯＳは、コンピュータシステムがその主電源から切断された場合に、それがバックアップバッテリによりサポートされることを可能にする省エネ技術である。ＰＯＳＴの間に使用される不揮発性データは、実時間クロック（ＲＴＣ）データおよび時間データ、複数のドライブ構成、複数のシステムメモリ設定、複数のオペレーティングシステム設定、複数のシリアルおよびパラレルポート設定ならびに複数の他のシステム設定を含む。
【図面の簡単な説明】
【０００５】
本発明の複数の実施形態は、同様の複数の参照番号が同様の複数の要素を示す、添付の複数の図面の複数の図において、制限としてではなく、例として説明される。"一"または"１つの"実施形態への本開示における異なる複数の参照は、必ずしも同じ実施形態へのものでなくてよく、そのような複数の参照は、少なくとも１つを意味する。
【０００６】
【図１】コンピュータシステムの１つの実施形態の図である。
【０００７】
【図２】コンピュータシステムを備えるネットワークの１つの実施形態の図である。
【０００８】
【図３】システムを遠隔的に更新するためのプロセスの１つの実施形態のフローチャートである。
【０００９】
【図４】起動または再起動の間にコンピュータシステム初期化を実行するためのプロセスの１つの実施形態のフローチャートである。
【００１０】
【図５】バスマスタ更新を実行するためのプロセスの１つの実施形態のフローチャートである。
【発明の詳細な説明】
【００１１】
図１は、コンピュータシステムの１つの実施形態の図である。１つの実施形態において、コンピュータシステム１０１は、複数の命令を実行するために中央処理装置（ＣＰＵ）１０３を備える。他の実施形態においては、コンピュータシステム１０１は、複数のプロセッサを備える。ＣＰＵ１０３は、メインボード上に配置される。複数のプロセッサを伴う一実施形態において、それぞれのプロセッサは、同じメインボードまたは別々のメインボードに配置されまたは取り付けられる。ＣＰＵ１０３は、メモリハブ１０５または同様のデバイスと通信する。
【００１２】
１つの実施形態において、メモリハブ１０５は、ＣＰＵ１０３とシステムメモリ１０９、入力−出力（Ｉ／Ｏ）ハブ１１１およびグラフィクスプロセッサ１０７などの同様の複数のデバイスとの間の通信リンクを提供する。１つの実施形態において、メモリハブ１０５は、'ノースブリッジ'チップセットまたは同様のデバイスである。
【００１３】
１つの実施形態において、システムメモリ１０９は、ランダムアクセスメモリ（ＲＡＭ）モジュールまたは複数のモジュールの一式である。１つの実施形態において、システムメモリ１０９は、同期型ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）、ダブルデータレート（ＤＤＲ）ＲＡＭまたは同様の複数のメモリストレージデバイスを備える。システムメモリ１０９は、アプリケーションデータ、構成データおよび同様のデータを記憶するために、コンピュータシステム１０１により使用される。システムメモリ１０９は、コンピュータシステム１０１の電源が切れる場合、データが失われる揮発性メモリである。
【００１４】
１つの実施形態において、他の複数のデバイスは、グラフィクスプロセッサ１０７のように、メモリハブ１０５に接続される。グラフィクスプロセッサ１０７は、メインボードの上に直接配置される。他の実施形態において、グラフィクスプロセッサ１０７は、相互接続またはポートを経由してメインボードに取り付けられる別々のボード上に配置される。例えば、グラフィクスプロセッサ１０７は、アクセラレーテッドグラフィクスポート（ＡＧＰ）スロットまたは同様の接続を経由してメインボードに取り付けられる周辺カード上に配置される。グラフィクスカードまたはグラフィクスプロセッサ１０７は、ディスプレイデバイス１２３に接続される。１つの実施形態において、ディスプレイデバイス１２３は、陰極線管（ＣＲＴ）デバイス、液晶ディスプレイ（ＬＣＤ）、プラズマデバイスまたは同様のディスプレイデバイスである。
【００１５】
１つの実施形態において、メモリハブ１０５は、Ｉ／Ｏハブ１１１と通信する。Ｉ／Ｏハブ１１１は、複数のＩ／Ｏデバイスならびにストレージデバイス１２５、相補型金属酸化膜半導体（ＣＭＯＳ）デバイス１１３または同様のメモリデバイス、基本入力−出力システム（ＢＩＯＳ）１１５、ユニバーサルシリアルバス（ＵＳＢ）コントローラ１１７、ネットワークデバイス１１９および同様の複数のデバイスなどの同様の複数のデバイスの一式と通信する。１つの実施形態において、Ｉ／Ｏハブ１１１は、'サウスブリッジ'チップセットまたは同様のデバイスである。他の実施形態においては、メモリハブ１０５およびＩ／Ｏハブ１１１は１つのデバイスである。
【００１６】
１つの実施形態において、ストレージデバイス１２５は、固定ディスク、物理ドライブ、光学ドライブ、磁気ドライブまたは同様のデバイスなどの不揮発性ストレージデバイスである。ストレージデバイス１２５は、アプリケーションデータ、オペレーティングシステムデータおよび同様のシステムデータを記憶するために使用される。１つの実施形態において、コンピュータシステム１０１は、リムーバブルメディアドライブ１２９を備える。リムーバブルメディアドライブは、ディスクドライブ、ＣＤＲＯＭドライブ、ＤＶＤドライブまたは同様のデバイスである。１つの実施形態において、ＣＭＯＳ１１３は、システム構成情報、実時間クロックデータ（ＲＴＣ）、ＢＩＯＳデータおよび同様の情報を記憶する。ＣＭＯＳ１１３は、バッテリバックアップメモリデバイスまたは同様の不揮発性ストレージシステムである。ＢＩＯＳ１１５は、システム構成および初期化を管理する。ＢＩＯＳ１１５デフォルトデータは、ＣＭＯＳ１１３に記憶される。１つの実施形態において、ＣＭＯＳ１１３およびＢＩＯＳ１１５は、同じデバイスの一部である。
【００１７】
１つの実施形態において、ＵＳＢコントローラ１１７は、Ｉ／Ｏハブ１１１に接続される。ＵＳＢコントローラ１１７は、ＵＳＢを管理するある種のマイクロコントローラである。１つの実施形態において、ＵＳＢコントローラ１１７は、コンピュータシステム１０１とＵＳＢ入力デバイス１２１との間のインターフェースとして働く入力デバイスコントローラとして機能する。一例の実施形態において、ＵＳＢコントローラ１１７は、マウス、プリンタ、ウェブカメラおよび同様の複数のデバイスを含む複数の入力デバイスの一式を管理する。
【００１８】
１つの実施形態において、ネットワークデバイス１１９などの他の複数のデバイスは、Ｉ／Ｏハブ１１１と通信する。ネットワークデバイス１１９は、モデム、ネットワークカード、ワイヤレスデバイスまたは同様のデバイスである。１つの実施形態において、ネットワークカード１１９は、メインボードに集積される。他の実施形態において、ネットワークデバイス１１９は、周辺装置相互接続（ＰＣＩ）、ＰＣＩ  Ｅｘｐｒｅｓｓスロットまたは同様の相互接続を経由してメインボードに接続される周辺カードである。
【００１９】
図２は、リモートシステム構成更新メカニズムを備えるシステムの１つの実施形態の図である。１つの実施形態において、コンピュータシステム１０１は、ネットワーク２１３に接続されるローカルマシンである。ここで用いられるように、用語'ローカルマシン'は、コンピュータシステムの構成を更新するためのシステム構成マネージャを伴うコンピュータシステムである。'リモート'マシンまたはアプリケーションは、ネットワークまたは同様のメカニズムを経由して、ローカルマシンに接続される。コンピュータシステム１０１は、ワークステーション、ラップトップ、デスクトップまたは同様のコンピュータシステムである。コンピュータシステム１０１は、ネットワークデバイス１１９を経由して、ネットワーク２１３に接続される。ネットワーク２１３は、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、インターネットまたは同様のネットワークである。ここで用いられるように、用語'システム構成データ'は、複数のユーザ構成可能設定、およびＢＩＯＳ１１５などのシステム構成マネージャにより設定されるコンピュータシステムの複数のハードウェア設定を指す。複数のユーザ構成可能設定は、一般的にオペレーティングシステム（ＯＳ）、電源管理および他の一般的な複数の設定を含む。複数のハードウェア設定は、プロセッサ、メモリ、バス、グラフィクスプロセッサおよび同様の複数のスピードおよびレイテンシ設定を含む。複数のハードウェア設定は、複数のコンポーネント能力および同様の構成データを含む。
【００２０】
１つの実施形態において、コンピュータシステム１０１は、ローカルクライアントモジュール２０３を備える。ローカルクライアントモジュール２０３は、サーバモジュール２１１と通信するソフトウェアアプリケーションまたはハードウェアデバイスである。ローカルクライアントモジュール２０３の動作は、下記において詳細に説明される。ローカルクライアントモジュール２０３は、ストレージデバイス１２５、ＣＭＯＳ１１３、リムーバブルメディアドライブ１２９または同様のストレージロケーションに記憶される。
【００２１】
１つの実施形態において、ネットワーク２１３は、複数のコンピュータシステムを一緒に接続するために使用される。ローカルマシン２０５などの付加的な複数のコンピュータシステムは、同様に、サーバモジュール２１１と通信するために、ローカルクライアントモジュール２０７を実行する。サーバ２０９は、ネットワークカード、モデム、ワイヤレスデバイスまたは同様のデバイスなどのネットワークデバイスを用いて、ネットワーク２１３に接続される。サーバ２０９は、サーバモジュール２１１を実行する。サーバモジュール２１１は、ネットワーク２１３に接続されるさまざまなローカルマシン１０１、２０５のためのシステム構成データを生成およびモニタするために活用されるアプリケーションである。１つの実施形態において、サーバ２０９は、ネットワーク２１３に接続された複数のコンピュータシステムのために、管理ツールを提供するための専用システム、デスクトップシステム、ラップトップシステム、ハンドヘルドシステムまたは同様のシステムである。他の実施形態においては、サーバ２０９は、他の複数のアプリケーションを実行している共有システムである。
【００２２】
１つの実施形態において、サーバモジュール２１１は、ユーザがサーバ２０９と情報交換する複数のコンピュータの複数のシステム構成をモニタおよび修正することを可能にするために、グラフィカルユーザインターフェース（ＧＵＩ）を提供する。他の実施形態において、サーバモジュール２１１により提供されるインターフェースは、グラフィカルベースではなく、むしろテキストベースであり、または他のインターフェースが提供される。サーバモジュール２１１は、それぞれのマシンのための構成データを得るためにおよび新しいまたは更新された構成情報を複数のクライアントモジュール２０３、２０７に送るために、ネットワーク２１３上で複数のクライアントモジュール２０３、２０７と通信する。複数のメッセージは、任意の適した通信プロトコルを用いて、システム構成データを通信することにふさわしい形でフォーマットされる。１つの実施形態において、サーバモジュール２１１は、同様に、複数のクライアントモジュール２０３、２０７と通信し、また複数のクライアントモジュール２０３、２０７からデータを受信する。サーバモジュール２１１は、それぞれのクライアントモジュール２０３、２０７に別々の構成メッセージを送りまたは複数のクライアントモジュール２０３、２０７に構成データをブロードキャストする。
【００２３】
図３は、遠隔的にシステムを更新するためのプロセスの１つの実施形態のフローチャートである。１つの実施形態において、それぞれのコンピュータシステムは、コンピュータの初期化の間に使用されるデフォルトのまたはローカルなシステム構成データを備える。このデフォルトの構成は、マシンにおいて、ＢＩＯＳ１１５などのシステム構成マネージャまたは同様のアプリケーションの使用により更新される。ここで用いられるように、用語'システム構成マネージャ'は、コンピュータシステムのシステム構成を局所的に管理するプログラムまたはモジュールを指す。ＢＩＯＳは、そのようなシステム構成マネージャの一例である。システム構成マネージャは、コンピュータシステムのキーボード上のキーシーケンスの手動入力により、コンピュータシステムの初期化の間にアクセスされる。システム構成マネージャにより管理される複数のシステム設定は、複数のデバイスストレージサイズ、複数のデバイススピード、ＣＰＵスピード、複数のシステムバススピード、複数のグラフィクス設定、複数のブート設定および同様の複数のシステム設定を含む。
【００２４】
１つの実施形態において、ユーザは、再構成されるマシンにおいて手動で入力することなしに、遠隔的に複数のシステム設定にアクセスしおよびを変更する。ユーザは、現在の複数のシステム設定を見るためまたは対象のコンピュータシステムのための新しい構成を生成するために、サーバモジュール２１１を使用する。サーバ２０９上で実行しているサーバモジュール２１１は、構成情報を、ネットワーク２１３を介して、ローカルマシン１０１へ送る（ブロック３１３）。例えば、システム管理者は、ローカルマシン１０１のオペレーティングシステムソフトウェアを局所的にまたは遠隔的に更新する。オペレーティングソフトウェアの更新は、更新の前にオペレーティングシステムによりサポートされていたものよりも大きな複数の固定ディスクストレージサイズの使用を可能とする。ローカルマシン１０１は、更新の前にオペレーティングシステムによりサポートされていたものよりも大きな固定ディスク１２５を備える。システム管理者は、固定ディスク１２５をより良く使用するために、固定ディスク１２５のための増やされたサイズを含むローカルマシン１０１のための新しいシステム構成を作成する。この新しい構成は、その後、ローカルマシン１０１へ送られる。
【００２５】
１つの実施形態において、ローカルマシン１０１上で実行しているクライアントモジュール２０３は、入ってくる構成データをネットワークデバイス１１９からまたは同様の方法で受信する（ブロック３１５）。他の実施形態において、構成データは、複数のマシンに適用でき、ネットワーク２１３上の複数のマシンの一式にブロードキャストされる。例えば、クライアントモジュール２０３は、固定ディスク１２５上のより大きなスペースの使用を可能にするためにシステム管理者によりサーバモジュール２１１経由で送られる新しい構成を受信する。
【００２６】
１つの実施形態において、クライアントモジュール２０３は、受信した構成データを所定のメモリスペースに書き込む（ブロック３１７）。所定のメモリスペースは、システムメモリ１０９、固定ストレージデバイス１２５、リムーバブルメディアドライブ１２９、ＣＭＯＳまたは同様のストレージデバイスに位置する。他の実施形態において、受信されたシステム構成データを記憶するために、専用のメモリデバイスが使用される。さらなる実施形態において、システムメモリ１０９または同様のストレージデバイスは、コンピュータシステム１０１のパワーダウンまたはリブートの間にシステム構成データを維持するために修正されまたはバッテリバックアップなどの永続的な電源供給と共に提供される。例えば、システム管理者により作成される新しいシステム構成は、システムメモリ１０９またはストレージデバイス１２５に書き込まれる。ここで用いられるように、用語'リブート'は、コンピュータシステムの再起動を指す。この再起動は、揮発性メモリへの電源の損失およびデータの損失をもたらすかもしれない。ここで用いられるように、'所定のメモリエリア'は、任意の適したメモリデバイスもしくはストレージデバイスまたは複数のデバイスの組み合わせ内のストレージエリアを指し、ここに、新しいまたは更新さらたシステム構成データが、デフォルトの構成データを更新するために使用される前に記憶される。
【００２７】
１つの実施形態において、受信されたシステム構成データは、所定のメモリエリアに書き込まれ、任意の適したフォーマットに記憶される。１つの実施形態において、記憶されたシステム構成データのフォーマットは、コンピュータシステム１０１内のＣＭＯＳ１１３または他のロケーションに記憶されたデフォルトのシステム構成データのフォーマットと適合する。ここで用いられるように、'デフォルトのシステム構成データ'は、ＣＭＯＳ１１３などの不揮発性ストレージデバイスに記憶され、新しいまたは更新されたシステム構成データがそれを更新するまで、コンピュータシステムを初期化するために使用されるシステム構成データを指す。このデフォルトのシステム構成データは、前もって更新または変更されている。さらなる実施形態において、現在のシステム構成への複数の変更のみ、サーバモジュール２１１により送信され、クライアントモジュール２０３によりセーブされる。
【００２８】
１つの実施形態において、受動的な更新スキーム３３７が、受信されたシステム構成データでシステム構成を更新するために使用される。１つの実施形態において、コンピュータシステム１０１がリブートされまたはコンピュータシステム１０１が起動する場合、システム構成マネージャは、システム構成への複数の変更が存在するかどうかを判断するためにチェックする（ブロック３１９）。複数の変更が存在する場合、複数の変更または新しい構成は、ＣＭＯＳ１１３または他の適切なストレージデバイスにより記憶されるデフォルトのシステム構成データを修正または置き換えるために使用される（ブロック３２１）。例えば、新しいまたは更新された構成が、システム管理者から受信され、所定のメモリエリアに記憶された後、システムがリブートされるかまたは起動されるかのどちらか次の時に、システム構成マネージャは、所定のメモリスペースを、それが新しいまたは変更された構成データを有するかどうかを判断するために調べる。新しいまたは更新されたデータが見つかった場合、それは、デフォルトのシステム構成データを置き換えるまたは修正するために、ＣＭＯＳ１１３にコピーされる。１つの実施形態において、更新されたまたは新しいデータの検出は、デフォルトの構成データと受信されたシステム構成データとの比較を伴う。他の実施形態において、受信されたシステム構成データが、クライアントモジュール２０３により記憶される場合、フラグまたは同様の標識がセットされる。この標識は、新しいまたは更新されたデータが受信されたかどうかを判断するためにリブートまたは起動時にチェックされる。
【００２９】
１つの実施形態において、システム構成データのためのＣＭＯＳ１１３または同様のストレージデバイスが更新されまたは置き換えられた後、新しいデフォルトのシステム構成データは、コンピュータシステム１０１を初期化または起動するために使用される（ブロック３２３）。幾つかの状況において、これは、システム構成の複数の変更が実装される前に、他のリブートを要求する。現在使用されるまたはシステム構成設定の更新の時にシステム構成マネージャにより既に初期化された複数のシステム構成設定への複数の変更は、コンピュータシステム１０１が実行している間、設定可能ではない。例えば、システム管理者により送られた新しい複数の構成設定をＣＭＯＳ１１３にコピーした後、ＢＩＯＳ１１５は、コンピュータをリブートする。次のリブートの間、新しい複数のシステム構成設定およびデータが使用される。
【００３０】
他の実施形態において、能動的なシステム３２５が、複数のシステム構成設定を更新するために使用される。１つの実施形態において、クライアントモジュール２０３が、サーバモジュール２１１から、システム構成データを受信しおよび記憶した後、それは、ＢＩＯＳ１１５などのシステム構成マネージャに、更新されたまたは新しい構成データの受信を通知する（ブロック３２７）。１つの実施形態において、システム構成マネージャは、コンピュータシステム１０１が実行している間に、複数の構成設定の変更ができるかどうかを判断するために、更新されたまたは新しい構成データを調べる。他の実施形態において、サーバモジュール２１１は、コンピュータシステム１０１が実行している間に複数の変更が実施できるかどうかの標識を送る。この場合、システム構成マネージャは、この標識をチェックする。例えば、コンピュータシステム１０１により受信されたシステム構成更新は、その認識される容量を増やすために、固定ディスク１２５のサイズを調整すべきである。サーバモジュール２１１は、ＢＩＯＳ１１５およびオペレーティングシステムが、固定ディスクドライブ１２５の容量の動的な変更を処理でき、コンピュータシステム１０１のリブートを要求しないことを判断する。
【００３１】
１つの実施形態において、システム構成マネージャが新しいまたは更新された構成データに関する通知を受けた後、それは、複数の変更または新しい複数の設定を、ＣＭＯＳ１１３などのデフォルトの複数の構成設定のためのストレージエリアにコピーする（ブロック３２９）。複数の設定の複数の変更がコンピュータシステム１０１のリブートを要求するかどうかを判断するために、チェックされる（ブロック３３１）。これは、サーバモジュール２１１からの直接の標識をチェックすることによりまたは実行される複数の設定への複数の変更のタイプを解析することにより、遂行される。例えば、ＢＩＯＳ１１５は、固定ディスク１２５の認識される容量の増加を実装する。それは、この構成変更が、複数のエラーを生じずに変更を完全に実装するために、コンピュータシステム１０１のリブートを要求するかどうかの決定をする。
【００３２】
１つの実施形態において、システム構成への複数の変更がリブートを要求しない場合、複数の変更は実装され、コンピュータシステム１０１は、新しい複数のシステム構成設定により示される複数の変更を伴い、機能を継続する（ブロック３３３）。システム構成への複数の変更が、システムがリブートされることを要求する場合、クライアントモジュール２０３、システム構成マネージャ、またはオペレーティングシステムは、複数のシステム構成設定内の変更を完了するために、コンピュータシステム１０１のリブートを開始する。
【００３３】
図４は、システム初期化を実行するためのプロセスの１つの実施形態のフローチャートである。１つの実施形態において、システム初期化は、コンピュータシステム１０１が起動されまたはリセットされる場合に生じる（ブロック４０１）。コンピュータシステム１０１は、複数の基本システムコンポーネントの初期化を開始するシステム構成マネージャの実行を開始する（ブロック４０３）。複数の基本システムコンポーネントは、チップセット、ＲＴＣおよび同様の複数のコンポーネントを含む。初期化は、複数のモデム、複数のグラフィクスカード、複数のネットワークカード、ならびに同様の複数の周辺カードおよびデバイスなどの全てのプラグアンドプレイデバイスを構成することにより、継続する（ブロック４０５）。
【００３４】
１つの実施形態において、同様のシステム構成マネージャは、デフォルトのシステム構成が更新されることを必要とするかどうかを判断するために、所定のメモリエリアをチェックする（ブロック４０７）。これは、デフォルトのシステム構成データと新しいまたは更新されたシステム構成データとの間の比較を通してまたは更新標識を検出することにより判断される。システム構成マネージャは、ＣＭＯＳ１１３または同様の不揮発性ストレージにセーブされたデフォルトの複数のシステム構成設定の上にコピーするまたはを更新するプロセスを開始する。システム構成マネージャは、更新されたまたは新しい構成データに示される複数の変更に従って、複数のシステム設定を変更することを開始する。
【００３５】
１つの実施形態において、システム構成マネージャは、コンピュータシステム１０１をリブートすることが必要かどうかを判断する（ブロック４１１）。これは、記憶されたリブートを要求する標識を検出することによりまたは新しいシステム構成内の複数のシステム設定への複数の変更の解析により判断される。リブートが必要な場合、リブートプロセスは、デフォルトの構成スペースに記憶された新しい構成データと共に再開される。リブートが必要ではない場合、システム構成マネージャは、コンピュータシステム１０１の複数のコンポーネントの初期化を継続し、完了する（ブロック４１３）。初期化が完了した場合、システム構成マネージャは、コンピュータシステム１０１のための適切なオペレーティングシステムを起動するために、ブートロードプログラムを呼び出す（ブロック４１５）。オペレーティングシステムは、その後、コンピュータシステム１０１を主として制御する。
【００３６】
１つの実施形態において、サーバモジュール２１１は、クライアントモジュール２０３に、付加的な複数のコマンドおよび情報を送る。サーバモジュール２１１は、構成情報の処理が能動的な方法３２５か、それとも受動的な方法３３７を用いて処理されるべきかどうかを示す。サーバモジュール２１１は、対象のコンピュータシステムが、システム再構成プロセスの間に、何時またはリブートすべきかどうかを判断する。
【００３７】
図５は、バスマスタデバイスを使用したシステム構成更新を実行することのプロセスの１つの実施形態のフローチャートである。ここで用いられるように、'バスマスタデバイス'は、コンピュータシステム１０１の内部バスを駆動できる任意のデバイスである。これは、デバイスが、コンピュータシステム１０１のメモリスペースを読み出しおよび書き込むことを可能にする。バスマスタデバイスは、コンピュータシステム１０１に、コンピュータシステム１０１のＵＳＢポート、シリアルポート、パラレルポート、１３９４ポート（ファイヤーワイヤー）もしくは同様のポートまたは接続デバイスに結合されたＵＳＢデバイス１２１、シリアルデバイス、ワイヤレスデバイス、赤外線デバイスまたは同様のデバイスとして取り付けられる。
【００３８】
１つの実施形態において、バスマスタデバイスは、サーバモジュール２１１と同様のシステム管理アプリケーションと連動することができる。このシステム管理アプリケーションは、対象のコンピュータシステム１０１のシステム構成をモニタできる。
【００３９】
１つの実施形態において、システム管理アプリケーションは、システム構成を生成し、この構成をバスマスタデバイス１２１に伝える（ブロック５０１）。１つの実施形態において、バスマスタデバイス１２１は、構成を記憶できる。他の実施形態において、バスマスタデバイス１２１は、システム構成データを、それを所定のメモリスペースに書き込むことで再送する（ブロック５０３）。例えば、メモリモジュールを伴うＵＳＢデバイスは、ＵＳＢデバイスのメモリモジュールにシステム構成をロードするシステム構成管理アプリケーションに接続される。ＵＳＢデバイスは、その後、ローカルマシン１０１に接続され、ＵＳＢデバイスは、その内部のメモリモジュールからローカルマシン１０１の所定のメモリスペースに、システム構成データをロードする。
【００４０】
１つの実施形態において、バスマスタデバイス１２１は、対象マシンのシステム構成を更新することの受動的な方法５０５および能動的な方法５０７の両方をサポートする。システム構成を更新することの受動的な方法において、更新は、コンピュータシステム１０１の次のリブートまたは起動の間に生じる。リブートプロセスの間に、システム構成マネージャは、システム構成への複数の更新をチェックする（ブロック５０９）。１つの実施形態において、システム構成マネージャは、ＣＭＯＳ１１３または同様の不揮発性ストレージに記憶されたデフォルトのシステム構成と所定のメモリスペースに記憶された新しいシステム構成データとの間の比較をする。他の実施形態において、システム構成マネージャは、複数の変更または新しい構成が実装されることを示す標識を検出する。
【００４１】
１つの実施形態において、システム構成マネージャは、ＣＭＯＳまたは同様の不揮発性ストレージ内のデフォルトのシステム構成データを、新しいシステム構成データで、起動またはリブートの間に更新する（ブロック５１１）。システム構成マネージャは、その後、コンピュータシステム１０１内の新しい構成を実装する（ブロック５１３）。他の実施形態において、システム構成マネージャは、更新された複数のシステム構成設定の実装を完了するために、コンピュータシステム１０１をリブートする。
【００４２】
１つの実施形態において、能動的な更新システム５０７が使用される。バスマスタが、新しいまたは更新されたシステム構成データを、所定のメモリスペースに記憶した後、バスマスタは、システム構成マネージャに、複数のシステム構成設定が変更されることを通知しまたは標識を提供する（ブロック５１５）。システム構成マネージャは、その後、新しいまたは更新された構成データを、所定のメモリスペースから、ＣＭＯＳ１１３または同様の不揮発性メモリデバイスなどのデフォルトのストレージエリアにコピーし、または同様に、デフォルトのシステム構成データを更新する（ブロック５１７）。
【００４３】
１つの実施形態において、システム構成マネージャは、複数のシステム設定の実装を完了するためにリブートすることが必要かどうかの判断をする（ブロック５１９）。システム構成マネージャは、なされるべきシステム構成の複数の変更の複数のタイプを解析することにより、リブートが必要かどうかを判断する。他の実施形態において、システム構成マネージャは、バスマスタから受信されまたはバスマスタにより所定のロケーションに記憶された標識をチェックする。
【００４４】
１つの実施形態において、更新されたまたは新しい複数のシステム構成設定の実装を完了するために、リブートが必要である。システム構成マネージャまたはオペレーティングシステムは、システムのリブートを開始し、起動シーケンスの間に、新しいデフォルトの複数のシステム設定の実装を完了する。他の実施形態において、複数のシステム設定に複数の変更をもたらすために、リブートは、必要ではない。システム構成マネージャは、デフォルトのメモリストレージエリアに記憶された更新されたまたは新しい構成データを実装し、コンピュータシステムの動作は、継続する。
【００４５】
１つの実施形態において、システム構成データは、同様に、電力制御インターフェース（ＡＣＰＩ）または同様のインターフェースにより使用される。ＡＣＰＩは、コンピュータシステム内の複数のハードウェアデバイスを構成するために使用される複数の定義ブロックのロードすることおよびアンロードすることを容易にするロードおよびアンロード方法などの複数の方法を提供する。複数のシステム構成変更を実装するためにシステムのリブートが必要とされない１つの実施形態において、複数のシステム変更に関連する複数のＡＣＰＩ定義ブロックは、システム構成への複数の修正を実装するために、ロードまたはアンロードされる。これは、定義ブロックに新しい複数の方法を追加することを含む。これら複数の方法は、ＡＣＰＩソース言語（ＡＳＬ）に記述される。
【００４６】
１つの実施形態において、改良されたシステム構成更新システムは、ソフトウェアとして実装され、マシン可読媒体上に記憶される。ここで用いられる、マシン可読媒体は、固定ディスク、物理ドライブ、ＣＤＲＯＭ、ＤＶＤ、光学ディスク、ワイヤレス送信、光学送信、赤外線送信、ならびに同様の複数のストレージデバイスおよび複数の送信システムなどの、データおよび同様の情報を記憶または転送できる媒体である。
【００４７】
前述の明細書において、本発明は、その特定の複数の実施形態を参照して説明された。しかしながら、さまざまな修正および変更が、添付の複数の請求項に記載の本発明の複数の実施形態の上位精神および範囲に反することなく、それになされ得ることは、明白である。本明細書および複数の図面は、したがって、制約的な意義ではなく説明のためと見なされるべきである。
【図１】
2007516535.tif 000002
【図２】
2007516535.tif 000003
【図３】
2007516535.tif 000004
【図４】
2007516535.tif 000005
【図５】
2007516535.tif 000006
【国際調査報告】
2007516535.tif 000007
2007516535.tif 000008
2007516535.tif 000009