(57)【要約】【課題】複数のＢＩＯＳデフォルト設定を管理するシステムと方法を提供する。【解決手段】複数のＢＩＯＳデフォルト設定は、コンピュータシステムのＢＩＯＳ中に保存される。コンピュータシステムの少なくとも一部のサーバ識別子（ＩＤ）、または、利用者コマンドに基づいて、特定のＢＩＯＳデフォルト設定が複数のＢＩＯＳデフォルト設定から選択される。コンピュータシステムは、特定のＢＩＯＳデフォルト設定で初期化される。【選択図】図１
2016058083.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータシステム中の基本入出力システム （ＢＩＯＳ）設定を管理する方法であって、
前記コンピュータシステムの複数のＢＩＯＳデフォルト設定を定義する工程と、
前記コンピュータシステムの少なくとも、一部のサーバ識別子（ＩＤ）、または、利用者コマンドに基づいて、前記複数のＢＩＯＳデフォルト設定から、特定のＢＩＯＳデフォルト設定を選択する工程と、
前記特定のＢＩＯＳデフォルト設定で、前記コンピュータシステムを初期化する工程と、
を含むことを特徴とする方法。
【請求項２】
前記複数のＢＩＯＳデフォルト設定は、複数のコンピュータシステムタイプに対応することを特徴とする請求項１に記載の方法。
【請求項３】
前記複数のＢＩＯＳデフォルト設定は、複数のサーバＩＤに対応することを特徴とする請求項１に記載の方法。
【請求項４】
さらに、前記コンピュータシステムの前記サーバＩＤを得る工程を含み、前記特定のＢＩＯＳデフォルト設定の選択は、前記コンピュータシステムの前記サーバＩＤに対応する前記複数のＢＩＯＳデフォルト設定のひとつを選択する工程を含むことを特徴とする請求項３に記載の方法。
【請求項５】
前記複数のＢＩＯＳデフォルト設定の定義は、ベースボード管理コントローラ （ＢＭＣ）、ハードディスクドライブ （ＨＤＤ）、電気的消去可能ＲＯＭ （ＥＥＰＲＯＭ）、または、不揮発性ランダムアクセスメモリ （ＮＶＲＡＭ）のようなストレージデバイスから、前記複数のＢＩＯＳデフォルト設定を得る工程を含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記複数のＢＩＯＳデフォルト設定の定義は、ユーザーにより指定される少なくともひとつのＢＩＯＳデフォルト設定を受信する工程を含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記サーバＩＤは、Ｓｔｏｃｋ  Ｋｅｅｐｉｎｇ  Ｕｎｉｔ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎｓ（ＳＫＵ ＩＤs）であることを特徴とする請求項１に記載の方法。
【請求項８】
前記コンピュータシステムの前記サーバＩＤは、ユーザーにより指定されることを特徴とする請求項１に記載の方法。
【請求項９】
前記特定のＢＩＯＳデフォルト設定の選択は、ユーザーからベースボード管理コントローラ （ＢＭＣ）を介して特定のＢＩＯＳデフォルト設定を受信する工程を含むことを特徴とする請求項１に記載の方法。
【請求項１０】
前記特定のＢＩＯＳデフォルト設定は、前記複数のＢＩＯＳデフォルト設定のひとつではないことを特徴とする請求項９に記載の方法。
【請求項１１】
さらに、カレントインデックスを保存する工程を含み、前記カレントインデックスの数値は、前記複数のＢＩＯＳデフォルト設定から選択される前記特定のＢＩＯＳデフォルト設定に基づいて決定されることを特徴とする請求項１に記載の方法。
【請求項１２】
コンピュータシステム中の基本入出力システム （ＢＩＯＳ）設定を管理する装置であって、前記装置は、
前記コンピュータシステムの複数のＢＩＯＳデフォルト設定を定義し、前記コンピュータシステムの少なくとも一部のサーバ識別子（ＩＤ）、または、利用者コマンドに基づいて、前記複数のＢＩＯＳデフォルト設定から、特定のＢＩＯＳデフォルト設定を選択し、前記特定のＢＩＯＳデフォルト設定で、前記コンピュータシステムを初期化する少なくともひとつのプロセッサを有することを特徴とする装置。  
【請求項１３】
前記複数のＢＩＯＳデフォルト設定は、複数のコンピュータシステムタイプに対応することを特徴とする請求項１２に記載の装置。
【請求項１４】
前記複数のＢＩＯＳデフォルト設定は、複数のサーバＩＤに対応することを特徴とする請求項１２に記載の装置。
【請求項１５】
前記少なくともひとつのプロセッサは、さらに、前記コンピュータシステムの前記サーバＩＤを得て、前記特定のＢＩＯＳデフォルト設定の選択は、前記コンピュータシステムの前記サーバＩＤに対応する前記複数のＢＩＯＳデフォルト設定のひとつを選択することを特徴とする請求項１４に記載の装置。
【請求項１６】
前記少なくともひとつのプロセッサは、さらに、カレントインデックスを保存し、前記カレントインデックスの数値は、前記複数のＢＩＯＳデフォルト設定から選択される前記特定のＢＩＯＳデフォルト設定に基づいて決定されることを特徴とする請求項１２に記載の装置。
【請求項１７】
実行可能命令を保存し、データ処理装置に以下の方法を実行させる非一時的なコンピュータ可読媒体であって、
前記コンピュータシステムの複数のＢＩＯＳデフォルト設定を定義する工程と、
前記コンピュータシステムの少なくとも一部のサーバ識別子（ＩＤ）、または、利用者コマンドに基づいて、前記複数のＢＩＯＳデフォルト設定から、特定のＢＩＯＳデフォルト設定を選択する工程、および、
前記特定のＢＩＯＳデフォルト設定で、前記コンピュータシステムを初期化する工程、
を含むことを特徴とする非一時的なコンピュータ可読媒体。
【請求項１８】
前記複数のＢＩＯＳデフォルト設定は、複数のコンピュータシステムタイプに対応することを特徴とする請求項１７に記載の非一時的なコンピュータ可読媒体。
【請求項１９】
前記複数のＢＩＯＳデフォルト設定は、複数のサーバＩＤに対応することを特徴とする請求項１７に記載の非一時的なコンピュータ可読媒体。
【請求項２０】
前記コンピュータ可読媒体は、さらに、前記データ処理装置に、前記コンピュータシステムの前記サーバＩＤを獲得させ、前記特定のＢＩＯＳデフォルト設定の選択は、前記コンピュータシステムの前記サーバＩＤに対応する前記複数のＢＩＯＳデフォルト設定のひとつを選択する工程を含むことを特徴とする請求項１９に記載の非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置に関するものであって、特に、サーバ装置の基本入出力システム （ＢＩＯＳ）デフォルト設定を管理する方法に関するものである。
【背景技術】
【０００２】
現在、多くの技術が発展し、遠隔で、コンピュータサーバの操作を管理し、アクセスしやすさ（accessibility）、不変性（consistency）、および、効率を提供する。遠隔管理は、サーバが、入出力インターフェース（たとえば、モニター、キーボード、および、マウス）の除去をできるようにする。たとえば、大量のラックサーバを含む大型データセンターは、一般に、各種遠隔管理ツール、たとえば、単一端子接続、リモートデスクトップアプリケーション、および、ソフトウェアツールを用いて管理され、サーバハードウェア、および、ソフトウェアを設定、監視、および、解決する。
【０００３】
一般のコンピュータシステム （たとえば、データセンター中のラックサーバ） 中、ＢＩＯＳソフトウェアプログラムは、コンピュータシステムのマザーボード上に位置するＢＩＯＳチップに保存される。ＢＩＯＳは、コンピュータシステムが、初めて起動時に実行する必要がある一組の設定のファームウェアを保存する。ＢＩＯＳファームウェア、および、ＢＩＯＳ設定は、非揮発性メモリ、たとえば、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、または、読み取り専用メモリ（ＲＯＭ）中に保存される。ＢＩＯＳは、通常、設定集合に基づいて、コンピュータシステム中に存在するハードウェアを認識、初期化、および、テストする。ＢＩＯＳは、その後、コンピュータシステムの制御を、オペレーティングシステム（ＯＳ）に与える。ＢＩＯＳは、各種の異なるパラメータの設定を許可するインターフェースを提供する。たとえば、ＢＩＯＳが用いられて、クロックとバス速度を指定し、どの周辺機器がコンピュータシステムに取り付けられるかを指定し、健康状態の監視（たとえば、ファン回転速度、および、ＣＰＵ温度制限）を指定し、および、コンピュータシステム全体のパフォーマンス、および、電力利用に影響する各種その他のパラメータを指定する。
【０００４】
ラックサーバは、異なる計算必要性を有する異なるデータセンターにより用いられる。しかし、通常のラックサーバは、顧客の異なる必要性に最適でない単一のＢＩＯＳデフォルト設定が予め搭載されている。このほか、ラックサーバのＢＩＯＳ設定は複雑になりがちで、各ラックサーバ中のハードウェアの組み合わせと緊密に結合する。従来、管理者は、人と機器との通信インターフェース、および、ＯＳアプリケーションで、ラックサーバのＢＩＯＳ設定を選択する必要があるが、これは、ラックサーバの初期構成を制限する。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
以下の段落は、本発明の一以上の実施例中の簡単な要約を提供し、本発明の技術の基本認識を提供する。この要約は、本発明の技術のすべての考慮された実施例の延伸概観ではなく、且つ、すべての例の主要な必須の手段や決定的要素を識別するのではなく、本発明中の任意の、または、すべての方面の範囲を描写するものでもない。その目的は、簡単な形式で、一以上のある概念を示して、本発明の後述の詳細説明部分の前言とすることである。
【０００６】
本発明が開示する一以上の態様によると、コンピュータシステムの基本入出力システム（ＢＩＯＳ）設定を管理するシステムと方法が提供される。
【課題を解決するための手段】
【０００７】
一態様において、コンピュータシステムのＢＩＯＳ設定の管理方法が提供される。本方法は、コンピュータシステムの複数のＢＩＯＳデフォルト設定を定義する工程を含む。本方法は、コンピュータシステムの少なくとも一部のサーバ識別子（ＩＤ）、または、利用者コマンドに基づいて、複数のＢＩＯＳデフォルト設定から、特定のＢＩＯＳデフォルト設定を選択する工程を含む。本方法は、特定のＢＩＯＳデフォルト設定で、コンピュータシステムを初期化する工程を含む。
【０００８】
関連する態様において、本方法は、さらに、コンピュータシステムのサーバＩＤを得る工程を含み、特定のＢＩＯＳデフォルト設定の選択は、コンピュータシステムのサーバＩＤに対応する複数のＢＩＯＳデフォルト設定のひとつを選択する工程を含む。別の関連する態様において、本方法は、さらに、カレントインデックスを保存する工程を含み、カレントインデックスの数値は、複数のＢＩＯＳデフォルト設定から選択される特定のＢＩＯＳデフォルト設定に基づいて決定される。
【０００９】
別の態様において、コンピュータシステムのＢＩＯＳ設定を管理する装置が提供される。装置は、少なくともひとつのプロセッサを有し、コンピュータシステムの複数のＢＩＯＳデフォルト設定を定義して、コンピュータシステムの少なくとも一部のサーバ識別子（ＩＤ）、または、利用者コマンドに基づいて、複数のＢＩＯＳデフォルト設定から、特定のＢＩＯＳデフォルト設定を選択、および、特定のＢＩＯＳデフォルト設定で、コンピュータシステムを初期化する。
【００１０】
さらに別の態様において、非一時的なコンピュータ可読媒体が提供されて、コンピュータシステムのＢＩＯＳ設定を管理する。非一時的なコンピュータ可読媒体は、実行可能命令を保存し、データ処理装置に、コンピュータシステムの複数のＢＩＯＳデフォルト設定を定義させ、コンピュータシステムの少なくとも一部のサーバ識別子（ＩＤ）、または、利用者コマンドに基づいて、複数のＢＩＯＳデフォルト設定から、特定のＢＩＯＳデフォルト設定を選択し、および、特定のＢＩＯＳデフォルト設定で、コンピュータシステムを初期化する。
【発明の効果】
【００１１】
本発明により、ラックサーバの初期構成は制限されないものとなる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施例によるコンピュータシステムのＢＩＯＳ設定を管理する手段を示す図である。
【図２】本発明の実施例による図１の手段により、コンピュータシステムのＢＩＯＳ設定を管理する装置を示す図である。
【図３】本発明の実施例によるコンピュータシステムのブロック図である。
【図４】本発明の実施例によるファームウェア設定を管理する既存の方法を示す図である。
【図５】本発明の実施例によるコンピュータシステムのＢＩＯＳ設定を管理する実施例の方法を示す図である。
【図６】本発明の実施例による異なるハードウェア設定と機能性を有するラックサーバの複数のＢＩＯＳ設定を示す図である。
【図７】本発明の実施例によるコンピュータシステムのＢＩＯＳ設定を管理する実施例の方法のブロック図である。
【図８】本発明の実施例によるコンピュータシステムのＢＩＯＳ設定を管理する実施例の方法のブロック図である。
【図９】本発明の実施例によるコンピュータシステムのＢＩＯＳ設定を管理する実施例の方法のフローチャートである。
【発明を実施するための形態】
【００１３】
本発明は、ＢＩＯＳデフォルト設定を管理する技術を提供する。コンピュータシステム （たとえば、ラックサーバ）のＢＩＯＳは、最初から複数のＢＩＯＳデフォルト設定が組み込まれている。コンピュータシステムは、複数のＢＩＯＳデフォルト設定のひとつを用いて起動する、または、ユーザー（たとえば、管理者）により指定されるカスタムＢＩＯＳデフォルト設定により起動する。別の態様において、コンピュータシステムは、複数のＢＩＯＳデフォルト設定のひとつに対応するサーバ識別子（ＩＤ）が割り当てられる。ＢＩＯＳは、少なくともひとつのコンピュータシステムのサーバＩＤ、または、利用者コマンドに基づいて、自動的に、複数のＢＩＯＳデフォルト設定のひとつを選択することができる。
【００１４】
本発明の技術の各種態様について、図面を参照しながら詳細を説明する。以降の記載においては、説明のため、多くの特定の詳細を示して、一以上の実施例の完全な理解を提供する。しかし、本発明は、これらの特定の詳細を有さない状況下でも実施することができることは明らかである。他の例では、周知の構造、および、装置がこれら態様の記載を手助けするためにブロック図中に示される。
【００１５】
図１は、本発明の実施例によるコンピュータシステムのＢＩＯＳ設定を管理する方法１００を示す図である。方法１００は、ステップ１１０において、コンピュータシステムの複数のＢＩＯＳデフォルト設定を定義する工程を含む。関連する態様において、複数のＢＩＯＳデフォルト設定は、複数のコンピュータシステムタイプに対応する。関連する態様において、複数のＢＩＯＳデフォルト設定は複数のサーバ識別子（ＩＤｓ）に対応する。関連する態様において、複数のＢＩＯＳデフォルト設定は、コンピュータシステムによりアクセス可能な任意のストレージデバイス、たとえば、ＢＭＣ、ハードディスクドライブ（ＨＤＤ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）、または、ＮＶＲＡＭから得られる。関連する態様において、任意の複数のＢＩＯＳデフォルト設定は、ユーザーにより指定される。
【００１６】
方法１００は、ステップ１２０において、コンピュータシステムの少なくとも一部のサーバＩＤ、または、利用者コマンドに基づいて、複数のＢＩＯＳデフォルト設定から、特定のＢＩＯＳデフォルト設定を選択する工程を含む。関連する態様において、特定のＢＩＯＳデフォルト設定の選択は、ユーザーからのＢＭＣにより、特定のＢＩＯＳデフォルト設定を受信する工程を含む。関連する態様において、特定のＢＩＯＳデフォルト設定は、複数のＢＩＯＳデフォルト設定のひとつではない。
【００１７】
方法１００は、ステップ１３０において、特定のＢＩＯＳデフォルト設定で、コンピュータシステムを初期化する工程を含んでいてもよい。
【００１８】
方法１００は、さらに、コンピュータシステムのサーバＩＤを得る工程を含み、特定のＢＩＯＳデフォルト設定の選択は、コンピュータシステムのサーバＩＤに対応する複数のＢＩＯＳデフォルト設定のひとつを選択する工程を含む。方法１００は、さらに、カレントインデックスを保存する工程を含んでいてもよく、カレントインデックスの数値は、複数のＢＩＯＳデフォルト設定から選択される特定のＢＩＯＳデフォルト設定に基づいて決定される。
【００１９】
図２は、本発明の実施例による図１の手段により、コンピュータシステムのＢＩＯＳ設定を管理する装置を示す図である。実施例の装置２００は、コンピュータデバイス、プロセッサ、または、類似の装置／コンポーネントである。一例において、装置２００は、プロセッサ、ソフトウェア、または、それらの組み合わせ （たとえば、ファームウェア）により実行される機能を表すことができる機能ブロックを有する。別の例において、装置２００は、システムオンチップ （ＳｏＣ）、または、類似の集積回路 （ＩＣ）である。
【００２０】
一実施例において、装置２００は、コンピュータシステムの複数のＢＩＯＳデフォルト設定を定義するために、電気部品、または、モジュール２１０を有していてもよい。
【００２１】
装置２００は、コンピュータシステムの少なくとも一部のサーバ識別子（ＩＤ）、または、利用者コマンドに基づいて、複数のＢＩＯＳデフォルト設定から、特定のＢＩＯＳデフォルト設定を選択するコンポーネント２２０を有していてもよい。
【００２２】
装置２００は、任意で、特定のＢＩＯＳデフォルト設定で、コンピュータシステムを初期化するコンポーネント２３０を有していてもよい。
【００２３】
さらに関連する態様において、装置２００は、任意で、プロセッサコンポーネント２０２を有していてもよい。プロセッサ２０２は、バス２０１、または、類似の通信結合により、コンポーネント２１０−２３０と通信することができる。プロセッサ２０２は、電気コンポーネント２１０−２３０により実行されるプロセスや機能の開始やスケジューリングを生じさせることができる。
【００２４】
さらにまた別の関連する態様において、装置２００は、無線送受信機コンポーネント２０３を有する。送受信機２０３の代わりに、またはそれと共に、単体の受信機、および／または、単体の送信機を採用してもよい。装置２００は、さらに、ネットワークインターフェース２０５を有して、一以上の別の通信デバイスなどと通信してもよい。装置２００は、任意で、情報を保存するコンポーネント、たとえば、メモリデバイス／コンポーネント２０４を有してもよい。コンピュータ読み取り可能媒体、または、メモリコンポーネント２０４は、バス２０１などにより、動作可能なように、装置２００の別のコンポーネントに結合される。メモリコンポーネント２０４は、コンポーネント２１０−２３０、および、そのサブコンポーネント、または、プロセッサ２０２、または、開示される本方法のプロセスと動作に影響を与えるためのコンピュータ読み取り可能命令とデータを保存するために採用される。メモリコンポーネント２０４は、コンポーネント２１０−２３０に関連する機能を実行する命令を保持することができる。図中では、メモリ２０４は外部にあるが、コンポーネント２１０−２３０がメモリ２０４中に存在してもよいことが理解できる。さらに注意すべきことは、図２中のコンポーネントは、プロセッサ、電子装置、ハードウェアデバイス、電子サブコンポーネント、論理回路、メモリ、ソフトウェアコード、ファームウェアコード等、または、それらの組み合わせを含み得るということである。
【００２５】
当業者なら、装置２００の各コンポーネントの機能性は、システムの任意の適切なコンポーネント、または、適切な方式の組み合わせで実現されることが理解できる。
【００２６】
図３は、コンピュータシステム３００のブロック図である。コンピュータシステム３００は、プロセッサ３４０、ネットワークインターフェース３５０、ベースボード管理コントローラ （ＢＭＣ）３６０、メモリ３２０、ストレージ３３０、ＢＩＯＳ３１０、および、バス３７０を有する。
【００２７】
コンピュータシステム３００は、たとえば、サーバ （たとえば、データセンター中の多くのラックサーバのひとつ）、または、パソコンである。プロセッサ （たとえば、中央処理装置）３４０は、メモリ３２０ （たとえば、ランダムアクセスメモリ）中に保存されるプログラミング命令を読み出し、および、実行する。プロセッサ３４０は、単一の処理コアを有する単一のＣＰＵ、複数の処理コアを有する単一のＣＰＵ、または、複数のＣＰＵであってもよい。ストレージ３３０は、たとえば、ＨＤＤ、または、フラッシュドライブのような任意の形式の不揮発性のデータストレージを含み得る。バス３７０は、コンピュータ部品、たとえば、プロセッサ３４０、メモリ３２０、ストレージ３３０、および、ネットワーキングインターフェース３５０間の命令とアプリケーションデータを送信することができる。
【００２８】
ＢＩＯＳ３１０は、基本入出力システム、または、その後継機や同等品、たとえば、拡張ファームウェアインターフェース （ＥＦＩ）、または、統合拡張ファームウェアインターフェース （ＵＥＦＩ）を含み得る。ＢＩＯＳ３１０は、ＢＩＯＳソフトウェアプログラムを保存するコンピュータシステム３００のマザーボード上に位置するＢＩＯＳチップを有していてもよい。ＢＩＯＳ３１０は、コンピュータシステムが、初めて起動時に実行する必要がある一組の設定のファームウェアを保存する。ＢＩＯＳファームウェアとＢＩＯＳ設定は、非揮発性メモリ （たとえば、ＮＶＲＡＭ）３１２、または、ＲＯＭ中に保存される。
【００２９】
コンピュータシステム３００が起動される度に、ＢＩＯＳ３１０がロードされると共に、シーケンスプログラムとして実行される。ＢＩＯＳ３１０は、一組の設定に基づいて、コンピュータシステム中のハードウェアを識別、初期化、および、テストする。ＢＩＯＳ３１０は、コンピュータシステム３００上で、パワーオンセルフテスト （ＰＯＳＴ）等のセルフテストを実行することができる。このセルフテストは、各種ハードウェアコンポーネント、たとえば、ハードディスクドライブ、光学読取装置、冷却機、メモリモジュール、拡張カード等の機能性をテストする。ＢＩＯＳは、メモリ３２０中でアドレスと割り当てを実行して、オペレーティングシステム （ＯＳ）を保存する。ＢＩＯＳ３１０は、コンピュータシステムの制御をＯＳに与える。
【００３０】
コンピュータシステム３００のＢＩＯＳ３１０は、どのように、ＢＩＯＳ３１０が、コンピュータシステム３００中の各種ハードウェアコンポーネントを制御するかを定義するＢＩＯＳ設定を有する。ＢＩＯＳ設定は、コンピュータシステム３００中のどの各種ハードウェアコンポーネントを起動させる必要があるのか判断する。ＢＩＯＳ３１０はインターフェースを提供し、各種の異なるパラメータを設定させ、それは、ＢＩＯＳデフォルト設定中のパラメータと異なる。たとえば、ユーザー （たとえば、管理者）は、ＢＩＯＳ３１０を用いて、クロック速度やバス速度を指定し、どの周辺機器がコンピュータシステムに接続されているかを特定し、健康状態の監視（たとえば、ファン回転速度、および、ＣＰＵ温度制限）を特定し、および、コンピュータシステム全体のパフォーマンス、および、電力利用に影響する各種その他のパラメータを特定する。
【００３１】
ＢＭＣ３６０は、コンピュータのマザーボード、たとえば、サーバに埋め込まれた特別なマイクロコントローラである。ＢＭＣ３６０は、システム管理ソフトウェアとプラットフォームハードウェア間のインターフェースを管理することができる。コンピュータシステム中に組み込まれている異なるタイプのセンサーは、ＢＭＣ３６０に、パラメータ、たとえば、温度、冷却ファン回転速度、電源状態、オペレーティングシステム （ＯＳ）状態などを報告することができる。ＢＭＣ３６０は、これらのセンサーを監視すると共に、パラメータがプリセット制限範囲内にない場合、ネットワークインターフェース３５０により、管理者に警告を送信する能力を有し、システムの潜在的欠陥を示す。管理者は、また、遠隔で、ＢＭＣ３６０と通信して、正確な行動を採取、たとえば、システムを再設定、または、電源循環して、機能性を回復させる。
【００３２】
ラックサーバは、異なる計算必要性を有する異なるデータセンターにより用いられる。しかし、通常のラックサーバは、予め、異なる顧客の各種必要性に最適でない単一のＢＩＯＳデフォルト設定が搭載されている。このほか、ラックサーバのＢＩＯＳ設定は複雑になりがちで、各ラックサーバのハードウェアの組み合わせと緊密に結び付いている。従来、管理者は、人と機器との通信インターフェース、および、ＯＳアプリケーションにより、ＢＩＯＳ設定を選択する必要があり、これは、ラックサーバの初期構成を制限する。
【００３３】
実施例の実行において、コンピュータシステム３００は、複数のＢＩＯＳデフォルト設定をＢＩＯＳ３１０に書き込むことができる。関連する態様において、ＢＭＣ３６０は、ＯＳを使用しなくても、複数のＢＩＯＳデフォルト設定を書き込むことができる。別の関連する態様において、ＯＳ上で作動するアプリケーションは、複数のＢＩＯＳデフォルト設定を書き込むことができる。実施例の実行において、コンピュータシステム３００のＢＩＯＳ３１０は、特定のＢＩＯＳデフォルト設定を選択することができる。実施例の実行において、ＢＩＯＳ３１０は、特定のＢＩＯＳデフォルト設定を、ＢＩＯＳ３１０のＮＶＲＡＭ３１２にロードすることができる。
【００３４】
図４は、ファームウェア設定を管理する既存の方法を示す図である。データセンター中のサーバのラックは、通常、大量のラックサーバを保持する。ラックサーバは、異なるハードウェア設定を有するか、または、異なる目的に用いられる。たとえば、あるラックサーバは、さらに多くのＨＤＤ、記憶容量、または、ＣＰＵコアを有する。別の例において、あるラックサーバは、クラウドストレージに用いられ、よって、必要な処理電力が少なく、その他は、オンラインゲームのサーバに用いられ、よって、多くの処理電力を必要とする。よって、ラックサーバは、異なるＢＩＯＳデフォルト設定を必要とし、それは、ラックサーバの異なるハードウェア設定、および、異なる機能性に最適化される。ユーザー、たとえば、情報技術（ＩＴ）開発者は、スクリプトを準備して、異なるラックサーバに、異なるファームウェア設定（たとえば、ＢＩＯＳデフォルト設定を含む）を提供する。一般に、ファームウェア設定は、ＯＳアプリケーションによりインストールされる。これは、ファームウェア設定がインストールされる前、ＯＳが、各ラックサーバにロードされなければならないことを意味する。
【００３５】
図５は、本発明の実施例によるコンピュータシステムのＢＩＯＳ設定を管理する実施例の方法を示す図である。コンピュータシステム （たとえば、ラックサーバ）は、ＮＶＲＡＭ中に保存される複数のＢＩＯＳデフォルト設定が予め搭載されている。サーバは、複数のＢＩＯＳデフォルト設定のひとつをロードすることにより初期化される。実施例の実行において、コンピュータシステムは、複数のＢＩＯＳデフォルト設定のひとつに対応するサーバ識別子（ＩＤ）が割り当てられる。たとえば、第一ＢＩＯＳデフォルト設定は、大量のＨＤＤを有するラックサーバのサーバＩＤに対応する。別の例において、第二ＢＩＯＳデフォルト設定は、４個のデュアルコアＣＰＵを有するラックサーバのサーバＩＤに対応する。さらに別の例において、第三ＢＩＯＳデフォルト設定は、高性能コンピュータ （ＨＰＣ）に用いられるラックサーバのサーバＩＤに対応する。第三ＢＩＯＳデフォルト設定は、オーバークロックされたＣＰＵとクロックレートを指定し、ＣＰＵ電圧を増加させる。さらに別の例において、第四ＢＩＯＳデフォルト設定は、省力化に焦点を合わせるラックサーバのサーバＩＤに対応する。第四ＢＩＯＳデフォルト設定は、アンダークロックＣＰＵとクロックレートを指定し、ＣＰＵ電圧を低下させる。関連する態様において、サーバＩＤは、サーバのハードウェア設定、または、機能性に基づいて、管理者により割り当てられる。ＢＩＯＳは、ロード時、サーバＩＤを識別すると共に、コンピュータシステムの少なくとも一部のサーバＩＤに基づいて、自動的に、複数のＢＩＯＳデフォルト設定のひとつをロードする。
【００３６】
図６は、本発明の実施例による異なるハードウェア設定と機能性を有するラックサーバの複数のＢＩＯＳ設定を示す図である。たとえば、第一群のラックサーバは、在庫管理ユニット （ＳＫＵ）＃１のサーバＩＤが割り当てられて、ネットワークから再起動し、且つ、パフォーマンス指向の電源管理設定を有する。第二群のラックサーバは、ＳＫＵ＃２のサーバＩＤが割り当てられて、ＨＤＤから再起動し、且つ、省力化指向の電源管理設定を有する。第三群のラックサーバは、ＳＫＵ＃３のサーバＩＤが割り当てられて、インターネットスモールコンピュータシステムインターフェース （ｉＳＣＳＩ）から再起動し、且つ、バランスのとれた電源管理設定を有する。本発明は、大幅に効率を向上させると共に、正確なＢＩＯＳデフォルト設定により、ラックサーバを設定するプロセスにおいてエラーの可能性を減少させる。
【００３７】
図７は、コンピュータシステムのＢＩＯＳ設定を管理する実施例の方法のブロック図である。たとえば、複数のＢＩＯＳデフォルト設定を含むＢＩＯＳイメージファイル７１０は、ＲＯＭユーティリティ７２０によりアクセスされると共に、人間が読める形式７３０で表示される。ユーザー （たとえば、管理者）は、ＲＯＭユーティリティ７２０を用いて、ＢＩＯＳデフォルト設定７４０を形成、または、調整する。ＲＯＭユーティリティ７２０は、ＢＩＯＳデフォルト設定のユーザーの形成や調整に基づいて、ＮＶＲＡＭバイナリファイル７５０を出力する。ＮＶＲＡＭバイナリファイル７５０は、帯域外 （たとえば、分離した、または、専用のネットワークチャネル）で、ローカルエリアネットワーク（ＬＡＮ）７６０から、コンピュータシステム （たとえば、ラックサーバ）７８０中のＢＭＣ７７０に達する。ＢＭＣ７７０は、複数のＢＩＯＳデフォルト設定を含むＮＶＲＡＭバイナリファイル７５０を、ラックサーバ７８０中のＢＩＯＳのＮＶＲＡＭ７９０にロードする。
【００３８】
図８は、コンピュータシステムのＢＩＯＳ設定を管理する実施例の方法のブロック図である。ステップ１−２において、コンピュータシステム中のＢＩＯＳは、ＢＩＯＳのＮＶＲＡＭから、 “ＣｕｒＳｅｔＮｕｍ”を読み取る。ＣｕｒＳｅｔＮｕｍは、現在の複数のＢＩＯＳデフォルト設定に対応する指数を保存することができる。ステップ３−４において、ＢＩＯＳは、コンピュータシステム中のデバイス／インターフェースから、“ＳＫＵ ＩＤ”（すなわち、サーバＩＤ）を読み取る。ステップ５において、ＢＩＯＳは、ＳＫＵ ＩＤに対応するＢＩＯＳデフォルト設定をＮＶＲＡＭにロードし、また、ＣｕｒＳｅｔＮｕｍをＳＫＵ ＩＤに更新する。
【００３９】
図９は、コンピュータシステムのＢＩＯＳ設定を管理する実施例の方法のフローチャート９００である。ステップ９１０において、コンピュータシステムのＢＩＯＳは、ＮＶＲＡＭから、ＣｕｒＳｅｔＮｕｍを読み取ることができる。
【００４０】
ステップ９２０において、ＢＩＯＳは、ＣｕｒＳｅｔＮｕｍがカスタム範囲にあるかどうか判断する。たとえば、１−１０のＣｕｒＳｅｔＮｕｍは、現在のＢＩＯＳデフォルト設定が、最初から組み込まれている複数のＢＩＯＳデフォルト設定のひとつであることを示すことができる。そして、ＣｕｒＳｅｔＮｕｍが１０より大きい場合、現在のＢＩＯＳデフォルト設定が、カスタムＢＩＯＳデフォルト設定であることを示すことができる。ＣｕｒＳｅｔＮｕｍがカスタム範囲である場合、本方法は、ステップ９９０を実行し、そうでなければ、ステップ９３０に進む。
【００４１】
ステップ９３０において、ＢＩＯＳは、コンピュータシステム中のデバイス/インターフェースから、ＳＫＵ ＩＤを得る。
【００４２】
ステップ９４０において、ＢＩＯＳは、ＳＫＵ ＩＤが、“ＮＶＲＡＭ  ｓｅｔｔｉｎｇｌｉｓｔ  ｎｕｍ”以下であるか判断することができる。ＮＶＲＡＭ  ｓｅｔｔｉｎｇｌｉｓｔ  ｎｕｍは、複数のＢＩＯＳデフォルト設定中に、いくつの設定 （たとえば、１０で計算）があるかを示す。ＳＫＵ ＩＤが、ＮＶＲＡＭ  ｓｅｔｔｉｎｇｌｉｓｔ  ｎｕｍより大きい場合、ＳＫＵ ＩＤが、対応する最初から組み込まれているＢＩＯＳデフォルト設定を有さないことを示すことができ、本方法は、ステップ９９０を実行し、そうでなければ、ステップ９５０に進む。
【００４３】
ステップ９５０において、ＢＩＯＳは、ＳＫＵ ＩＤがＣｕｒＳｅｔＮｕｍに等しいかどうか判断する。ＳＫＵ ＩＤがＣｕｒＳｅｔＮｕｍに等しい場合、ＳＫＵ ＩＤに対応するＢＩＯＳデフォルト設定がすでにロードされていることを示し、本方法は、ステップ９９０を実行し、そうでなければ、ステップ９６０に進む。
【００４４】
ステップ９６０において、ＢＩＯＳは、デフォルトＢＩＯＳ設定をロードするかどうか判断する。ＢＩＯＳが、デフォルトＢＩＯＳ設定をロードすると判断する場合、本方法はステップ９９０を実行し、そうでなければ、ステップ９７０に進む。たとえば、管理者は、異なるＢＩＯＳデフォルト設定をロードしない状況下で、現在のＢＩＯＳデフォルト設定により、ＢＩＯＳに、コンピュータシステムの起動を命令することができる。
【００４５】
ステップ９７０において、ＢＩＯＳは、ＳＫＵ ＩＤに対応するＢＩＯＳデフォルト設定 “ＳＫＵ ＩＤ  ｓｅｔｔｉｎｇｌｉｓｔ”を、ＮＶＲＡＭに書き込む。つまり、ＳＫＵ ＩＤ  ｓｅｔｔｉｎｇｌｉｓｔは、ＳＫＵ ＩＤに対応するＢＩＯＳデフォルト設定を有する。
【００４６】
ステップ９８０において、ＢＩＯＳは、コールバックを登録して、コンピュータシステムをリセット（すなわち、動力サイクル）する。
【００４７】
ステップ９９０において、ＢＩＯＳは、パワーオンセルフテスト （ＰＯＳＴ）工程を継続して、現在のＢＩＯＳデフォルト設定を用いて、コンピュータシステムを起動する。
【００４８】
本発明で示される論理ブロック、モジュール、および、回路は、汎用プロセッサ、デジタル信号プロセッサ （ＤＳＰ）、特定用途向け集積回路 （ＡＳＩＣ）、フィールドプログラマブルゲートアレイ （ＦＰＧＡ）、または、その他のプログラム可能論理装置、離散ゲート、または、トランジスタ論理、離散ハードウェアコンポーネント、または、それらの組み合わせで実施、または、実行されて、上述の機能を実行する。汎用プロセッサはマイクロプロセッサであるが、プロセッサは、従来のプロセッサ、コントローラ、マイクロコントローラ、または、状態機械でもよい。プロセッサは、コンピュータデバイスの組み合わせ、たとえば、ＤＳＰとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、ＤＳＰコアを併用するひとつ以上のマイクロプロセッサ、または、その他のこのような組み合わせとして実行される。
【００４９】
本発明中の方法や演算方法は、直接、ハードウェア、プロセッサにより実行されるソフトウェアモジュール、または、それらの組み合わせで実現される。ソフトウェアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ-ＲＯＭ、または、従来のその他の形式のストレージ媒体中に存在する。実施例のストレージ媒体はプロセッサに結合されて、プロセッサは、ストレージ媒体から情報を読み取り、情報を書き込む。その他の実施例において、ストレージ媒体はプロセッサに整合できる。プロセッサとストレージ媒体はＡＳＩＣ中に存在する。ＡＳＩＣはユーザー端子に存在する。別の方法では、プロセッサとストレージ媒体は、ユーザー端子の個別部品として存在する。
【００５０】
一以上の実施例の設計において、開示される機能は、ハードウェア、ソフトウェア、ファームウェア、または、それらの組み合わせで実施される。ソフトウェアで実行される場合、この機能は、非一時的なコンピュータ可読媒体で、ひとつ以上の命令、または、コードとして保存、または、送信される。非一時的なコンピュータ可読媒体は、コンピュータストレージ媒体、および、ある場所から別の場所へ、コンピュータプログラムの伝達を促進する任意の媒体を含む通信媒体を有する。ストレージ媒体は、汎用、または、専用コンピュータによりアクセス可能な任意の入手媒体である。例として、これに限定されないが、このようなコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ-ＲＯＭ、または、その他の光ディスクストレージ、磁気ストレージ、または、その他の磁気ストレージデバイス、あるいは、その他の媒体を含み、命令、あるいは、データ構造の形式の所望のプログラムコードを搭載、または、保存し、それは、汎用や専用コンピュータ、または、汎用や専用プロセッサによりアクセスされる。ディスクには、コンパクトディスク （ＣＤ）、レーザーディスク（登録商標）、光ディスク、デジタル多用途ディスク （ＤＶＤ）、フロップディスク、および、ブルーレイディスクが含まれ、ディスクは、一般に、データ磁気を再生し、ディスクは、レーザーを有するデータ光学を再生する。上述の任意の組み合わせは、非一時的なコンピュータ可読媒体中に含まれる。
【００５１】
本発明では好ましい実施例を前述の通り開示したが、これらは決して本発明に限定するものではなく、当該技術を熟知する者なら誰でも、本発明の精神と領域を脱しない範囲内で各種の変更や修正を加えることができ、従って本発明の保護範囲は、特許請求の範囲で指定した内容を基準とする。
【符号の説明】
【００５２】
１１０−１３０  ステップ
２００  管理装置
２１０−２３０  コンポーネント
２０１  バス
２０２  プロセッサ
２０３  送受信機
２０４  メモリコンポーネント
２０５  ネットワークインターフェース
３００  コンピュータシステム
３１０  ＢＩＯＳ
３２０  メモリ
３３０  ストレージ
３４０  プロセッサ
３５０  ネットワークインターフェース
３６０  ベースボード管理コントローラ
３７０  バス
３１２  非揮発性メモリ
４００  ユーザー
７１０  ＢＩＯＳイメージファイル
７２０  ＲＯＭユーティリティ
７３０  人間が読める形式
７４０  ＢＩＯＳデフォルト設定
７５０  ＮＶＲＡＭバイナリファイル
７６０  ローカルエリアネットワーク（ＬＡＮ）
７７０  ＢＭＣ
７８０  コンピュータシステム
７９０  ＢＩＯＳのＮＶＲＡＭ
９００  フローチャート
Ｓ９１０−Ｓ９９０  ステップ
【図１】
2016058083.tif 000003
【図２】
2016058083.tif 000004
【図３】
2016058083.tif 000005
【図４】
2016058083.tif 000006
【図５】
2016058083.tif 000007
【図６】
2016058083.tif 000008
【図７】
2016058083.tif 000009
【図８】
2016058083.tif 000010
【図９】
2016058083.tif 000011