(57)【要約】【課題】  情報処理装置に設定された情報を失うことなく、情報処理装置内の電子部品の設定情報を保持する保持部のサイズを変更する。【解決手段】  演算処理装置を含む複数の電子部品と、複数の電子部品の動作を制御する制御装置と、記憶装置とを含む情報処理装置において、制御装置は、複数の電子部品の設定情報を保持し、かつ記憶装置に割り当てられる第１領域のサイズが、情報処理装置の機能の変更により新たに指定される設定情報用の領域のサイズと異なることを検出する検出部と、検出部による検出に基づいて、第１領域の代わりに設定情報を保持する第２領域を記憶装置に割り当てる割り当て部と、第１領域から抽出された有効な設定情報を第２領域に格納する格納部と、有効な設定情報が第２領域に格納された後、第１領域を記憶装置から削除する削除部とを備える。【選択図】    図１
2018060316.tif 000002
【特許請求の範囲】
【請求項１】
演算処理装置を含む複数の電子部品と、前記複数の電子部品の動作を制御する制御装置と、記憶装置とを含む情報処理装置において、
前記制御装置は、
前記複数の電子部品の設定情報を保持し、かつ前記記憶装置に割り当てられる第１領域のサイズが、前記情報処理装置の機能の変更により新たに指定される設定情報用の領域のサイズと異なることを検出する検出部と、
前記検出部による検出に基づいて、前記第１領域の代わりに設定情報を保持する第２領域を前記記憶装置に割り当てる割り当て部と、
前記第１領域から抽出された有効な設定情報を前記第２領域に格納する格納部と、
有効な設定情報が前記第２領域に格納された後、前記第１領域を前記記憶装置から削除する削除部と
を備えることを特徴とする情報処理装置。
【請求項２】
前記割り当て部は、前記検出部による検出に基づいて、前記第１領域のサイズを示す第１サイズ情報を保持するサイズ情報保持部に、前記第２領域のサイズを示す第２サイズ情報を追加し、
前記削除部は、前記有効な設定情報が前記第２領域に格納された後、前記サイズ情報保持部に保持された前記第１サイズ情報を削除することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記演算処理装置は、前記検出部による検出に基づいて、前記第１領域から前記有効な設定情報を抽出し、抽出した前記有効な設定情報で前記第１領域を書き替えた後、書き替えた前記有効な設定情報を前記第２領域に格納する処理を前記格納部に実行させることを特徴とする請求項１または請求項２記載の情報処理装置。
【請求項４】
前記制御装置は、前記有効な設定情報を保持する領域を前記第１領域から前記第２領域に切り替え中であることを示す切り替え状態を保持する第１状態保持部を備え、
前記演算処理装置は、前記切り替え状態が前記第１状態保持部に保持されたことに基づいて、前記第１領域から前記有効な設定情報を抽出する抽出処理を開始することを特徴とする請求項３記載の情報処理装置。
【請求項５】
前記制御装置は、前記演算処理装置により前記有効な設定情報が抽出中であることを示す抽出状態、前記演算処理装置により前記第１領域に置き換えた前記有効な設定情報を前記第２領域に複写中であることを示す複写状態、または前記抽出状態および前記複写状態のいずれでもないアイドル状態を保持する第２状態保持部を備え、
前記削除部は、前記第２状態保持部が前記複写状態から前記アイドル状態に変化したことに基づいて、前記第１領域を削除することを特徴とする請求項１ないし請求項４のいずれか１項記載の情報処理装置。
【請求項６】
前記記憶装置は、書き込み動作により第１論理値から第２論理値に書き替わる複数の記憶素子を有し、
前記演算処理装置は、前記第１領域または前記第２領域に保持された設定情報を変更する場合、設定情報が書き込まれていない領域に変更後の設定情報を書き込み、変更前の設定情報を保持する領域を無効状態に設定することを特徴とする請求項１ないし請求項５のいずれか１項記載の情報処理装置。
【請求項７】
演算処理装置を含む複数の電子部品と、前記複数の電子部品の動作を制御する制御装置と、記憶装置とを含む複数の情報処理装置と、前記複数の情報処理装置の動作を管理する管理装置とを備える情報処理システムにおいて、
前記複数の情報処理装置の各々の前記制御装置は、
前記複数の電子部品の設定情報を保持し、かつ前記記憶装置に割り当てられる第１領域のサイズが、前記情報処理装置の機能の変更により新たに指定される設定情報用の領域のサイズと異なることを検出する検出部と、
前記検出部による検出に基づいて、前記第１領域の代わりに設定情報を保持する第２領域を前記記憶装置に割り当てる割り当て部と、
前記第１領域から抽出された有効な設定情報を前記第２領域に格納する格納部と、
有効な設定情報が前記第２領域に格納された後、前記第１領域を前記記憶装置から削除する削除部と
を備えることを特徴とする情報処理システム。
【請求項８】
前記管理装置は、
情報処理の実行単位であるパーティションに割り当てる前記情報処理装置を示す構成情報を保持する構成情報保持部と、
前記パーティションに対応して設けられ、前記パーティション内の前記第１領域が保持する設定情報の写しを保持する写し保持部と
を備え、
前記管理装置は、
前記パーティション内に前記第２領域が追加された場合、前記写し保持部に前記第２領域に対応する対応領域を割り当て、
前記第２領域に格納された前記有効な設定情報を前記対応領域に格納することを特徴とする請求項７記載の情報処理システム。
【請求項９】
前記管理装置は、
情報処理の実行単位であるパーティションに割り当てる前記情報処理装置を示す構成情報を保持する構成情報保持部と、
前記パーティションに対応して設けられ、前記パーティション内の前記第１領域が保持する設定情報の写しを保持する写し保持部と
を備え、
前記管理装置は、
前記パーティション内に前記第２領域が追加された場合、前記構成情報保持部に保持された構成情報を退避し、前記複数の情報処理装置の各々を互いに異なる前記パーティションに割り当てる構成情報を前記構成情報保持部に格納し、
前記複数の情報処理装置の各々を割り当てた前記パーティションに対応する前記写し保持部が保持する設定情報の写しで、前記複数の情報処理装置の各々の前記第１領域を書き替え、
前記写し保持部に前記第２領域に対応する対応領域を割り当て、
前記第２領域に格納された前記有効な設定情報を前記対応領域に格納し、
前記有効な設定情報を前記対応領域に格納した後、退避した構成情報を前記構成情報保持部に戻し、
前記対応領域が保持する前記有効な設定情報を、対応する前記パーティションの前記第２領域に格納することを特徴とする請求項７記載の情報処理システム。
【請求項１０】
演算処理装置を含む複数の電子部品と、前記複数の電子部品の動作を制御する制御装置と、記憶装置とを含む情報処理装置の制御方法において、
前記制御装置が、
前記複数の電子部品の設定情報を保持し、かつ前記記憶装置に割り当てられる第１領域のサイズが、前記情報処理装置の機能の変更により新たに指定される設定情報用の領域のサイズと異なることを検出し、
検出に基づいて、前記第１領域の代わりに設定情報を保持する第２領域を前記記憶装置に割り当て、
前記第１領域から抽出された有効な設定情報を前記第２領域に格納し、
有効な設定情報が前記第２領域に格納された後、前記第１領域を前記記憶装置から削除すること
を特徴とする情報処理装置の制御方法。
【請求項１１】
演算処理装置を含む複数の電子部品と、前記複数の電子部品の動作を制御する制御装置と、記憶装置とを含む情報処理装置の制御プログラムにおいて、
前記制御装置に、
前記複数の電子部品の設定情報を保持し、かつ前記記憶装置に割り当てられる第１領域のサイズが、前記情報処理装置の機能の変更により新たに指定される設定情報用の領域のサイズと異なることを検出させ、
検出に基づいて、前記第１領域の代わりに設定情報を保持する第２領域を前記記憶装置に割り当てさせ、
前記第１領域から抽出された有効な設定情報を前記第２領域に格納させ、
有効な設定情報が前記第２領域に格納された後、前記第１領域を前記記憶装置から削除させること
を特徴とする情報処理装置の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理装置の制御方法および情報処理装置の制御プログラムに関する。
【背景技術】
【０００２】
ストレージシステムＡ、Ｂを含む計算機システムにおいて、ストレージシステムＡで作成されたプールとプールを利用する仮想ボリュームとをストレージシステムＢで管理、運用する場合、仮想ボリュームのコピー用の記憶領域を削減可能な手法が提案されている。この種の手法では、ストレージシステムＢは、ストレージシステムＡのプールおよび仮想ボリュームの構成情報を取得し、取得した構成情報に基づいて、プールに含まれる論理ボリュームをストレージシステムＢに取り込む。さらに、ストレージシステムＢは、取得した構成情報をストレージシステムＢで利用するために変換し、変換された構成情報に基づいて、取り込んだ論理ボリュームからプールおよび仮想ボリュームを作成する（例えば、特許文献１参照）。
【０００３】
情報処理装置の起動時に、ＢＩＯＳ（Basic Input Output System）の設定情報を予備領域に保持された設定情報と比較し、相違する項目を表示し、ユーザにより設定値を変更可能にする手法が提案されている（例えば、特許文献２参照）。
【０００４】
実計算機の動作モードの変更による拡張ＲＯＭ（Read Only Memory）領域のアドレスの変更に合わせて、複数の仮想計算機の拡張ＲＯＭ領域のアドレスをマッピングし直す仮想計算機システムが提案されている（例えば、特許文献３参照）。
【０００５】
論理サーバを予め予備サーバ内に設け、ＯＳ（Operating System）を読み込む直前で論理サーバを待機させることで、サーバの故障時に論理サーバの構築を開始する場合に比べて、サーバの切り替え時間を短縮する手法が提案されている（例えば、特許文献４参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−７９６２４号公報
【特許文献２】特開２０１３−１４０５３６号公報
【特許文献３】特開平６−２２２９９８号公報
【特許文献４】特開２００８−２９３２４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、情報処理装置に搭載されるＢＭＣ（Baseboard Management Controller）等の制御装置は、情報処理装置に初めて電源が投入されたことに基づいて、ＢＩＯＳの設定情報を保持する保持部を不揮発性メモリ等に割り当てる。例えば、情報処理装置の電源は、情報処理装置を製造するメーカの組立工程で初めて投入される。
【０００８】
このため、情報処理装置の出荷後に保持部のサイズを変更する場合、情報処理装置の状態を電源が一度も投入されていない出荷前の状態（factory default）に戻した後、電源が再投入される。この場合、ＢＭＣ等の制御装置は、初回の電源の投入であると判定し、ファームウェア等で規定される新たなサイズの保持部をメモリに割り当てる。しかしながら、稼働中の情報処理装置を出荷前の状態に戻す場合、情報処理装置に設定された情報は全て消失してしまい、消失した情報を復元する手間が掛かる。
【０００９】
１つの側面では、本件開示の情報処理装置、情報処理システム、情報処理装置の制御方法および情報処理装置の制御プログラムは、情報処理装置に設定された情報を失うことなく、情報処理装置内の電子部品の設定情報を保持する保持部のサイズを変更することを目的とする。
【課題を解決するための手段】
【００１０】
一つの観点によれば、演算処理装置を含む複数の電子部品と、複数の電子部品の動作を制御する制御装置と、記憶装置とを含む情報処理装置において、制御装置は、複数の電子部品の設定情報を保持し、かつ記憶装置に割り当てられる第１領域のサイズが、情報処理装置の機能の変更により新たに指定される設定情報用の領域のサイズと異なることを検出する検出部と、検出部による検出に基づいて、第１領域の代わりに設定情報を保持する第２領域を記憶装置に割り当てる割り当て部と、第１領域から抽出された有効な設定情報を第２領域に格納する格納部と、有効な設定情報が第２領域に格納された後、第１領域を記憶装置から削除する削除部とを備える。
【００１１】
別の観点によれば、演算処理装置を含む複数の電子部品と、複数の電子部品の動作を制御する制御装置と、記憶装置とを含む複数の情報処理装置と、複数の情報処理装置の動作を管理する管理装置とを備える情報処理システムにおいて、複数の情報処理装置の各々の制御装置は、複数の電子部品の設定情報を保持し、かつ記憶装置に割り当てられる第１領域のサイズが、情報処理装置の機能の変更により新たに指定される設定情報用の領域のサイズと異なることを検出する検出部と、検出部による検出に基づいて、第１領域の代わりに設定情報を保持する第２領域を記憶装置に割り当てる割り当て部と、第１領域から抽出された有効な設定情報を第２領域に格納する格納部と、有効な設定情報が第２領域に格納された後、第１領域を記憶装置から削除する削除部とを備える。
【００１２】
別の観点によれば、演算処理装置を含む複数の電子部品と、複数の電子部品の動作を制御する制御装置と、記憶装置とを含む情報処理装置の制御方法において、制御装置が、複数の電子部品の設定情報を保持し、かつ記憶装置に割り当てられる第１領域のサイズが、情報処理装置の機能の変更により新たに指定される設定情報用の領域のサイズと異なることを検出し、検出に基づいて、第１領域の代わりに設定情報を保持する第２領域を記憶装置に割り当て、第１領域から抽出された有効な設定情報を第２領域に格納し、有効な設定情報が第２領域に格納された後、第１領域を記憶装置から削除する。
【００１３】
さらなる別の観点によれば、演算処理装置を含む複数の電子部品と、複数の電子部品の動作を制御する制御装置と、記憶装置とを含む情報処理装置の制御プログラムにおいて、制御装置に、複数の電子部品の設定情報を保持し、かつ記憶装置に割り当てられる第１領域のサイズが、情報処理装置の機能の変更により新たに指定される設定情報用の領域のサイズと異なることを検出させ、検出に基づいて、第１領域の代わりに設定情報を保持する第２領域を記憶装置に割り当てさせ、第１領域から抽出された有効な設定情報を第２領域に格納させ、有効な設定情報が第２領域に格納された後、第１領域を記憶装置から削除させる。
【発明の効果】
【００１４】
本件開示の情報処理装置、情報処理システム、情報処理装置の制御方法および情報処理装置の制御プログラムは、情報処理装置に設定された情報を失うことなく、情報処理装置内の電子部品の設定情報を保持する保持部のサイズを変更することができる。
【図面の簡単な説明】
【００１５】
【図１】情報処理装置、情報処理システム、情報処理装置の制御方法および情報処理装置の制御プログラムの一実施形態を示す図である。
【図２】図１に示す情報処理システムの動作の一例を示す図である。
【図３】情報処理装置、情報処理システム、情報処理装置の制御方法および情報処理装置の制御プログラムの別の実施形態を示す図である。
【図４】図３に示す不揮発性メモリＮＶＭＳに保持されるＢＩＯＳＩＮＦ情報、ＢＭＣＩＮＦ情報、領域管理テーブルおよびアドレス管理テーブルの一例を示す図である。
【図５】図３に示す不揮発性メモリＮＶＭＭに保持されるハードウェア構成テーブルの一例を示す図である。
【図６】図３に示す不揮発性メモリＮＶＭＭに保持されるパーティション情報の一例を示す図である。
【図７】図３に示すファームウェアＭＭＢＦＷ、ＢＭＣＦＷおよびＢＩＯＳの機能の一例を示す図である。
【図８】図３に示す情報処理システムにおいて、統合ファームアップによりＢＩＯＳＩＮＦ情報が保持されるバンクの数が増加される場合の変更処理の一例を示す図である。
【図９】図８に示す処理の続きを示す図である。
【図１０】図９に示す処理の続きを示す図である。
【図１１】図３に示す情報処理システムにおいて、統合ファームアップ前の不揮発性メモリＮＶＭＭの状態の一例を示す図である。
【図１２】図３に示す情報処理システムにおいて、統合ファームアップ前の不揮発性メモリＮＶＭＳの状態の一例を示す図である。
【図１３】図３に示す情報処理システムにおいて、新規にバンクＢＫ３−ＢＫ６が割り当てられた不揮発性メモリＮＶＭＳの状態の一例を示す図である。
【図１４】図３に示す情報処理システムにおいて、ハードウェア構成テーブルを基本構成に設定した不揮発性メモリＮＶＭＭの状態の一例を示す図である。
【図１５】図３に示す情報処理システムにおいて、管理ボードからのＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報が不揮発性メモリＮＶＭＳに格納された状態の一例を示す図である。
【図１６】図３に示す情報処理システムにおいて、バンクＢＫ０、ＢＫ１が削除され、バンクＢＫ３−ＢＫ６が割り当てられた不揮発性メモリＮＶＭＭの状態の一例を示す図である。
【図１７】図３に示す情報処理システムにおいて、Variable Reclaimが完了した不揮発性メモリＮＶＭＳの状態の一例を示す図である。
【図１８】図３に示す情報処理システムにおいて、バンクＢＫ０からバンクＢＫ３へのＢＩＯＳ設定情報の複写が完了した不揮発性メモリＮＶＭＳの状態の一例を示す図である。
【図１９】図３に示す情報処理システムにおいて、ＢＭＣから転送されるＢＩＯＳ設定情報がバンクＢＫ３に格納された不揮発性メモリＮＶＭＭの状態の一例を示す図である。
【図２０】図３に示す情報処理システムにおいて、削除したバンクに合わせて領域管理テーブルが更新された不揮発性メモリＮＶＭＳの状態の一例を示す図である。
【図２１】図３に示す情報処理システムにおいて、退避したハードウェア構成テーブルが元に戻された不揮発性メモリＮＶＭＭの状態の一例を示す図である。
【図２２】図３に示す情報処理システムにおいて、ＢＩＯＳＩＮＦ領域の拡張処理の完了後の不揮発性メモリＮＶＭＳの状態の一例を示す図である。
【図２３】図３に示す情報処理システムにおいてＢＭＣが実行する処理の一例を示す図である。
【図２４】図２３に示す処理の続きを示す図である。
【図２５】図３に示す情報処理システムにおいて管理ボードが実行する処理の一例を示す図である。
【図２６】図２５に示す処理の続きを示す図である。
【図２７】図３に示す情報処理システムにおいてＢＩＯＳが実行する処理の一例を示す図である。
【図２８】図２７に示すVariable Reclaim処理の一例を示す図である。
【図２９】図３に示す情報処理システムの初回の動作の一例を示す図である。
【図３０】図３に示す情報処理システムにおいて、パーティションの電源が投入された場合の動作の一例を示す図である。
【図３１】図３に示す情報処理システムにおいて、システムボードが交換される場合の動作の一例を示す図である。
【発明を実施するための形態】
【００１６】
以下、図面を用いて実施形態を説明する。
【００１７】
図１は、情報処理装置、情報処理システム、情報処理装置の制御方法および情報処理装置の制御プログラムの一実施形態を示す。図１に示す情報処理システムＳＹＳ１は、管理ボードＭＭＢおよび複数のシステムボードＳＢ（ＳＢ０、ＳＢ１、ＳＢ２、ＳＢ３）を有する。情報処理システムＳＹＳ１に搭載されるシステムボードＳＢの数は、４つに限定されない。
【００１８】
管理ボードＭＭＢは、情報処理システムＳＹＳ１の全体を管理し、情報処理システムＳＹＳ１に所定の機能を実現させる。また、管理ボードＭＭＢは、システムボードＳＢを制御し、所定数のシステムボードＳＢによりパーティションＰＴ（ＰＴ０、ＰＴ１）を構築する。各パーティションＰＴは、独立に動作する情報処理装置として機能し、情報処理の実行単位である。図１に示す例では、システムボードＳＢ０、ＳＢ１によりパーティションＰＴ０が構築され、システムボードＳＢ２によりパーティションＰＴ１が構築される。
【００１９】
管理ボードＭＭＢは、ＣＰＵ（Central Processing Unit）、電気的に書き替え可能な不揮発性メモリＮＶＭＭ、および図示しないメインメモリおよびＨＤＤ（Hard Disk Drive）等を有し、システムボードＳＢを管理する管理サーバとして機能する。管理ボードＭＭＢは、複数のパーティションＰＴおよびシステムボードＳＢを管理する管理装置の一例である。ＣＰＵは、演算処理を実行する演算処理装置の一例である。不揮発性メモリＮＶＭＭは、ファームウェアＭＭＢＦＷと、ハードウェア構成テーブルＨＷＴＢＬと、パーティション情報ＰＴＩＮＦ（ＰＴＩＮＦ０、ＰＴＩＮＦ１、ＰＴＩＮＦ２、ＰＴＩＮＦ３）とを格納する記憶領域を有する。ファームウェアＭＭＢＦＷは、管理ボードＭＭＢのＣＰＵにより実行される。
【００２０】
以下の説明では、パーティション情報ＰＴＩＮＦを格納する記憶領域は、ＰＴＩＮＦ領域とも称される。不揮発性メモリＮＶＭＭに割り当てられるＰＴＩＮＦ領域の数は、情報処理システムＳＹＳ１に構築可能なパーティションＰＴの最大数に等しく、パーティションＰＴの最大数は、システムボードＳＢの数に等しい。
【００２１】
ファームウェアＭＭＢＦＷは、各パーティションＰＴで実行されるＢＩＯＳおよびファームウェアＢＭＣＦＷと連携し、情報処理システムＳＹＳ１の全体の動作を制御する。例えば、ファームウェアＭＭＢＦＷは、各パーティションＰＴを監視し、各パーティションＰＴにおける電源の管理、ユーザ権限の管理、温度の管理、システムボードＳＢの故障時の切り替えの管理等を実行する。ファームウェアＭＭＢＦＷは、各パーティションＰＴの動作を制御する管理ボードＭＭＢが実行する制御プログラムの一例である。不揮発性メモリＮＶＭＭは、ファームウェアＭＭＢＦＷを記録した記録媒体の一例である。
【００２２】
ハードウェア構成テーブルＨＷＴＢＬは、各パーティションＰＴへのシステムボードＳＢの割り当てを示す構成情報を保持する。ハードウェア構成テーブルＨＷＴＢＬは、構成情報保持部の一例である。各ＰＴＩＮＦ領域には、各パーティションＰＴに割り当てられるシステムボードＳＢのいずれかの不揮発性メモリＮＶＭＳに保持されるＢＩＯＳ情報ＢＩＯＳＩＮＦと同じ情報が、バックアップとして格納される。各ＰＴＩＮＦ領域は、パーティションＰＴ内で使用されるＢＩＯＳ情報ＢＩＯＳＩＮＦの写しを保持する写し保持部の一例である。
【００２３】
各システムボードＳＢは、ＣＰＵ、メインメモリＭＭ、ＢＭＣ、電子部品ＥＰ、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）および電気的に書き替え可能な不揮発性メモリＮＶＭＳを有する。例えば、不揮発性メモリＮＶＭＳは、データを独立に消去可能な複数のブロックを有するフラッシュメモリである。フラッシュメモリは、書き込み動作により記憶状態が論理１から論理０に書き替わる複数の記憶素子を有し、所定数の記憶素子を含むブロック単位での消去動作により、記憶状態が論理０（書き込み状態）から論理１（消去状態）に変更される。論理１は、第１論理値の一例であり、論理０は、第２論理値の一例である。
【００２４】
システムボードＳＢ０−ＳＢ３は、互いに同じ構成のため、図１では、システムボードＳＢ０のみの構成が示される。以下の説明では、システムボードＳＢに搭載されるＣＰＵは、ＣＰＵ（ＳＢ）とも称され、管理ボードＭＭＢに搭載されるＣＰＵは、ＣＰＵ（ＭＭＢ）とも称される。
【００２５】
メインメモリＭＭは、ＣＰＵ（ＳＢ）が実行するＯＳを格納する記憶領域を有する。ＥＥＰＲＯＭは、ＣＰＵ（ＳＢ）が実行するＢＩＯＳを格納する記憶領域を有する。不揮発性メモリＮＶＭＳは、ＢＭＣが実行するファームウェアＢＭＣＦＷおよびＢＩＯＳ情報ＢＩＯＳＩＮＦを格納する記憶領域を有する。ＢＩＯＳＩＮＦ情報は、システムボードＳＢに搭載または接続されるＣＰＵ（ＳＢ）を含む複数の電子部品ＥＰの動作仕様を切り替える設定情報を含む。以下の説明では、ＢＩＯＳ情報ＢＩＯＳＩＮＦは、ＢＩＯＳＩＮＦ情報とも称され、ＢＩＯＳ情報ＢＩＯＳＩＮＦが格納される領域は、ＢＩＯＳＩＮＦ領域とも称される。また、ＢＩＯＳＩＮＦ情報に含まれる設定情報は、ＢＩＯＳ設定情報とも称される。例えば、ＢＩＯＳ設定情報は、ＣＰＵの処理性能および消費電力を調整するための情報を含み、ＢＩＯＳの起動時に表示装置に表示されるセットアップメニューにより設定される。
【００２６】
各パーティションＰＴにおいて、電源の投入時に動作するＢＩＯＳは、ユーザ等による変更情報の入力に基づいて、電子部品ＥＰのＢＩＯＳ設定情報を書き替える。ＢＩＯＳは、新たなＢＩＯＳ設定情報をＢＩＯＳＩＮＦ領域に追記することで、ＢＩＯＳ設定情報を書き替える。すなわち、ＢＩＯＳは、ＢＩＯＳ設定情報が書き込まれていない消去状態の領域に新たなＢＩＯＳ設定情報を書き込み、変更前のＢＩＯＳ設定情報を保持する領域を無効状態に設定することで、ＢＩＯＳ設定情報の書き替えを実行する。
【００２７】
ＣＰＵ（ＳＢ）は、ＥＥＰＲＯＭに格納されたＢＩＯＳおよびメインメモリＭＭに格納されたＯＳを実行することで、システムボードＳＢおよびパーティションＰＴの全体の動作を制御する。また、ＣＰＵ（ＳＢ）は、メインメモリＭＭに展開されるアプリケーションプログラムを実行することで、データ処理等を実行する所望の機能を実現する。なお、各システムボードＳＢには、図示しないＨＤＤ等の記憶装置が接続される。
【００２８】
ＢＭＣは、ＣＰＵ（ＳＢ）に供給される電源電圧およびＣＰＵ（ＳＢ）に供給されるクロックの周波数を制御し、または電子部品ＥＰの動作を制御し、不揮発性メモリＮＶＭＳのアクセスを制御する。ＢＭＣは、ＣＰＵ（ＳＢ）を含む複数の電子部品ＥＰの動作を制御する制御装置の一例である。ＢＭＣによる各種制御は、ＢＭＣがファームウェアＢＭＣＦＷを実行することにより実行される。ファームウェアＢＭＣＦＷは、パーティションＰＴ内のシステムボードＳＢの動作を制御するＢＭＣが実行する制御プログラムの一例である。なお、不揮発性メモリＮＶＭＳは、ファームウェアＢＭＣＦＷを記録した記録媒体の一例である。ＢＭＣは、ファームウェアＢＭＣＦＷを実行することにより、検出部ＤＥＴ、割り当て部ＡＬＣ、格納部ＳＴＲおよび削除部ＤＥＬとして機能する。なお、検出部ＤＥＴ、割り当て部ＡＬＣ、格納部ＳＴＲおよび削除部ＤＥＬは、ＢＭＣのハードウェアにより実現されてもよい。また、ＢＭＣと不揮発性メモリＮＶＭＳとは、１つの半導体チップ内に搭載されてもよい。
【００２９】
検出部ＤＥＴは、ＣＰＵ（ＳＢ）および電子部品ＥＰの設定情報を保持するＢＩＯＳＩＮＦ領域のサイズが、パーティションＰＴの機能の変更により新たに指定される設定情報用の領域のサイズと異なることを検出する。例えば、パーティションＰＴの機能の変更は、動作モードの変更、追加または削減等であり、ファームウェアＭＭＢＦＷ、ＢＭＣＦＷおよびＢＩＯＳをアップデートする統合ファームアップにより実施される。
【００３０】
割り当て部ＡＬＣは、検出部ＤＥＴによるサイズの相違の検出に基づいて、既存のＢＩＯＳＩＮＦ領域の代わりに、パーティションＰＴの機能の変更後に設定情報を保持するＢＩＯＳＩＮＦ領域を新たに割り当てる。既存のＢＩＯＳＩＮＦ領域は、不揮発性メモリＮＶＭＳに割り当てられる第１領域の一例であり、新たなＢＩＯＳＩＮＦ領域は、不揮発性メモリＮＶＭＳに割り当てられる第２領域の一例である。
【００３１】
格納部ＳＴＲは、既存のＢＩＯＳＩＮＦ領域から抽出された有効な設定情報を新たに追加されたＢＩＯＳＩＮＦ領域に格納する。なお、既存のＢＩＯＳＩＮＦ領域からの有効な設定情報の抽出は、ＢＩＯＳＩＮＦ領域に格納する設定情報を管理するＢＩＯＳにより実行される。削除部ＤＥＬは、有効な設定情報が新たなＢＩＯＳＩＮＦ領域に格納された後、既存のＢＩＯＳＩＮＦ領域を削除する。
【００３２】
ＢＩＯＳは、ＵＥＦＩ（Unified Extensible Firmware Interface）に対応しており、システムボードＳＢに搭載または接続されるハードウェアの動作仕様を、外部からの設定情報の入力に基づいて切り替える機能を有する。ＢＩＯＳは、パーティションＰＴに電源が投入されたことに基づいて起動され、システムボードＳＢに搭載または接続されるハードウェアを初期化し、システムボードＳＢの状態を、ＯＳをブート可能な状態に設定する。また、上述したように、ＢＩＯＳは、ＢＩＯＳＩＮＦ領域に格納する設定情報を管理し、既存のＢＩＯＳＩＮＦ領域に保持された設定情報から有効な設定情報を抽出する機能を有する。
【００３３】
ファームウェアＢＭＣＦＷは、統合ファームアップの実行後に、管理ボードＭＭＢと各パーティションＰＴとの間で情報を共有する処理を実行する。統合ファームアップは、ファームウェアＭＭＢＦＷ、ＢＩＯＳおよびファームウェアＢＭＣＦＷを同時に更新する処理である。
【００３４】
図２は、図１に示す情報処理システムＳＹＳ１の動作の一例を示す。図２に示す動作のうち、ＢＭＣの動作は、ＢＭＣがファームウェアＢＭＣＦＷを実行することにより実現される。すなわち、図２は、情報処理装置の制御方法および情報処理装置の制御プログラムの一例を示す。図２において、太枠で示す領域は、１つ前の状態に対して保持する情報が変更された領域を示す。
【００３５】
状態（１）は、統合ファームアップを実行する前の情報処理システムＳＹＳ１の状態を示す。状態（１）では、情報処理システムＳＹＳ１は、図１に示すように、システムボードＳＢ０、ＳＢ１を割り当てたパーティションＰＴ０と、システムボードＳＢ２を割り当てたパーティションＰＴ１とを有する（図２（ａ））。システムボードＳＢ３は、パーティションＰＴに割り当てられていない（図２（ｂ））。
【００３６】
パーティションＰＴ０のＢＩＯＳ設定情報Ａは、パーティションＰＴ０に割り当てられたシステムボードＳＢ０、ＳＢ１のうち、システムボードＳＢ０（ホームシステムボード）のＢＩＯＳＩＮＦ領域に保持される。パーティションＰＴ１のＢＩＯＳ設定情報Ｂは、パーティションＰＴ１に割り当てられたシステムボードＳＢ２（ホームシステムボード）のＢＩＯＳＩＮＦ領域に保持される。また、管理ボードＭＭＢにおいて、パーティションＰＴ０に対応するＰＴＩＮＦ０領域は、パーティションＰＴ０のＢＩＯＳ設定情報Ａの写しを保持する（図２（ｃ））。パーティションＰＴ１に対応するＰＴＩＮＦ１領域は、パーティションＰＴ１のＢＩＯＳ設定情報Ｂの写しを保持する。
【００３７】
パーティションＰＴ（システムボードＳＢ）の機能を変更する統合ファームアップにより、各システムボードＳＢ内のＢＩＯＳおよびファームウェアＢＭＣＦＷがアップデートされる（図２（ｄ））。これにより、新たなＢＩＯＳＩＮＦ領域のサイズが既存のＢＩＯＳＩＮＦ領域のサイズより大きくされるとする。新たなＢＩＯＳＩＮＦ領域のサイズは、アップデートされたファームウェアＢＭＣＦＷ内に記述されることで指定される。
【００３８】
状態（２）において、各システムボードＳＢ内のファームウェアＢＭＣＦＷの検出部ＤＥＴは、ファームウェアＢＭＣＦＷ内に記述された新たなＢＩＯＳＩＮＦ領域のサイズと既存のＢＩＯＳＩＮＦ領域のサイズとを比較する。そして、検出部ＤＥＴは、新たなＢＩＯＳＩＮＦ領域のサイズが既存のＢＩＯＳＩＮＦ領域のサイズと相違することを検出する。ファームウェアＢＭＣＦＷの割り当て部ＡＬＣは、検出部ＤＥＴによるサイズの相違の検出に基づいて、不揮発性メモリＮＶＭＳ内に新たなＢＩＯＳＩＮＦ領域を割り当てる（図２（ｅ））。不揮発性メモリＮＶＭＳ内に新たに追加されるＢＩＯＳＩＮＦ領域は、不揮発性メモリＮＶＭＳ内に追加された新たなＢＩＯＳＩＮＦ領域に対応する対応領域の一例である。
【００３９】
管理ボードＭＭＢのファームウェアＭＭＢＦＷは、不揮発性メモリＮＶＭＳ内に新たなＢＩＯＳＩＮＦ領域が追加されたことに基づいて、各システムボードＳＢのＢＭＣから既存のＢＩＯＳＩＮＦ領域と新たなＢＩＯＳＩＮＦ領域のサイズを取得する。そして、管理ボードＭＭＢのファームウェアＭＭＢＦＷは、既存のＢＩＯＳＩＮＦ領域に対応する領域を削除し、新たなＢＩＯＳＩＮＦ領域のサイズに対応する領域を、各ＰＴＩＮＦ領域に割り当てる（図２（ｆ））。
【００４０】
次に、状態（３）において、ファームウェアＭＭＢＦＷは、ＢＭＣにパーティションＰＴの電源の投入を指示する。パーティションＰＴ０、ＰＴ１のホームシステムボードＳＢ内のＢＭＣ（ファームウェアＢＭＣＦＷ）は、パーティションＰＴ０、ＰＴ１の電源を投入し、パーティションＰＴ０、ＰＴ１のＢＩＯＳが起動される。パーティションＰＴ０のＢＩＯＳは、既存のＢＩＯＳＩＮＦ領域から有効なＢＩＯＳ設定情報Ａ’を抽出し、抽出した有効なＢＩＯＳ設定情報Ａ’で既存のＢＩＯＳＩＮＦ領域を書き替える（図２（ｇ））。パーティションＰＴ１のＢＩＯＳは、既存のＢＩＯＳＩＮＦ領域から有効なＢＩＯＳ設定情報Ｂ’を抽出し、抽出した有効なＢＩＯＳ設定情報Ｂ’で既存のＢＩＯＳＩＮＦ領域を書き替える（図２（ｈ））。
【００４１】
既存のＢＩＯＳＩＮＦ領域から有効なＢＩＯＳ設定情報を抽出し、抽出した有効なＢＩＯＳ設定情報で既存のＢＩＯＳＩＮＦ領域を書き替える処理は、既存のＢＩＯＳの機能を利用して実行することができる。この後、パーティションＰＴ０、ＰＴ１のＢＩＯＳは、既存のＢＩＯＳＩＮＦ領域内の有効なＢＩＯＳ設定情報（Ａ’またはＢ’）を新規のＢＩＯＳＩＮＦ領域に複写する指示を、対応するＢＭＣに発行する。
【００４２】
次に、状態（４）において、パーティションＰＴ０のホームシステムボードＳＢ内のＢＭＣは、ＢＩＯＳからの指示に基づいて、既存のＢＩＯＳＩＮＦ領域内の有効なＢＩＯＳ設定情報Ａ’を新規のＢＩＯＳＩＮＦ領域に格納する（図２（ｉ））。新規のＢＩＯＳＩＮＦ領域への設定情報Ａ’の格納は、ファームウェアＢＭＣＦＷの格納部ＳＴＲにより実行される。また、パーティションＰＴ０のホームシステムボードＳＢ内のＢＭＣは、新規のＢＩＯＳＩＮＦ領域に格納したＢＩＯＳ設定情報Ａ’をＰＴＩＮＦ０領域に格納する指示を管理ボードＭＭＢに発行する。管理ボードＭＭＢは、ＢＭＣからの指示に基づいて、ＢＩＯＳ設定情報Ａ’をＰＴＩＮＦ０領域に格納する（図２（ｊ））。
【００４３】
同様に、パーティションＰＴ１のホームシステムボードＳＢ内のＢＭＣは、ＢＩＯＳからの指示に基づいて、既存のＢＩＯＳＩＮＦ領域内の有効なＢＩＯＳ設定情報Ｂ’を新規のＢＩＯＳＩＮＦ領域に格納する（図２（ｋ））。新規のＢＩＯＳＩＮＦ領域へのＢＩＯＳ設定情報Ｂ’の格納は、ファームウェアＢＭＣＦＷの格納部ＳＴＲにより実行される。また、パーティションＰＴ１のホームシステムボードＳＢ内のＢＭＣは、新規のＢＩＯＳＩＮＦ領域に格納したＢＩＯＳ設定情報Ｂ’をＰＴＩＮＦ１領域に格納する指示を管理ボードＭＭＢに発行する。管理ボードＭＭＢは、ＢＭＣからの指示に基づいて、ＢＩＯＳ設定情報Ｂ’をＰＴＩＮＦ１領域に格納する（図２（ｌ））。
【００４４】
次に、状態（５）において、各システムボードＳＢ０−ＳＢ３のファームウェアＢＭＣＦＷの削除部ＤＥＬは、既存のＢＩＯＳＩＮＦ領域を削除する。これ以降、パーティションＰＴ０、ＰＴ１は、有効なＢＩＯＳ設定情報Ａ’、Ｂ’が複写された新たなＢＩＯＳＩＮＦ領域を既存のＢＩＯＳＩＮＦ領域として使用する。以上の動作により、統合ファームアップ前の既存のＢＩＯＳＩＮＦ領域を新たなサイズのＢＩＯＳＩＮＦ領域に切り替えることができる。また、ＢＩＯＳＩＮＦ領域のサイズの変更に合わせて、新たなＢＩＯＳＩＮＦ領域のサイズに対応する領域を、管理ボードＭＭＢ内の各ＰＴＩＮＦ領域に割り当てることができる。
【００４５】
なお、図２では、新たなＢＩＯＳＩＮＦ領域のサイズを既存のＢＩＯＳＩＮＦ領域のサイズより大きくする例が説明された。しかしながら、図２は、新たなＢＩＯＳＩＮＦ領域のサイズを既存のＢＩＯＳＩＮＦ領域のサイズより小さくする場合にも適用することができる。但し、この場合、状態（３）において、ＢＩＯＳは、まず、サイズを縮小後のＢＩＯＳＩＮＦ領域に保持するＢＩＯＳ設定情報を選択し、選択したＢＩＯＳ設定情報から有効な設定情報を抽出する。
【００４６】
さらに、図２の状態（３）において、ＢＩＯＳは、既存のＢＩＯＳＩＮＦ領域から抽出した有効なＢＩＯＳ設定情報を、既存のＢＩＯＳＩＮＦ領域ではなく、新規のＢＩＯＳＩＮＦ領域に直接格納してもよい。この場合、状態（４）における既存のＢＩＯＳＩＮＦ領域から新規のＢＩＯＳＩＮＦ領域への有効なＢＩＯＳ設定情報の複写処理を省略することができる。但し、ＢＩＯＳが、既存のＢＩＯＳＩＮＦ領域から抽出した有効なＢＩＯＳ設定情報を新規のＢＩＯＳＩＮＦ領域に格納する機能を持たない場合、統合ファームアップ時にＢＩＯＳの格納処理の新たな機能が追加される。
【００４７】
以上、図１および図２に示す実施形態では、ＢＩＯＳＩＮＦ領域のサイズが変更される場合、新たなＢＩＯＳＩＮＦ領域を割り当て、既存のＢＩＯＳＩＮＦ領域から有効な設定情報を抽出して、新たなＢＩＯＳＩＮＦ領域に格納する。これにより、情報処理システムＳＹＳ１を出荷前の状態（factory default）に戻すことなく、全てのシステムボードＳＢのＢＩＯＳＩＮＦ領域のサイズを変更することができる。すなわち、パーティションＰＴ（システムボードＳＢ）に設定された情報を失うことなく、システムボードＳＢ内の電子部品ＥＰの設定情報を保持するＢＩＯＳＩＮＦ領域のサイズを変更することができる。人手を介することなくＢＩＯＳＩＮＦ領域のサイズを変更できるため、消失した情報を復元する手間がなくなり、人為的な設定ミスを抑止することができる。
【００４８】
管理ボードＭＭＢは、各システムボードＳＢのＢＭＣから既存のＢＩＯＳＩＮＦ領域と新たなＢＩＯＳＩＮＦ領域のサイズを取得し、既存のＢＩＯＳＩＮＦ領域に対応する領域を削除し、新たなＢＩＯＳＩＮＦ領域に対応する領域を、ＰＴＩＮＦ領域に割り当てる。そして、管理ボードＭＭＢは、ＢＩＯＳから転送される有効な設定情報を、ＰＴＩＮＦ領域内の新規に割り当てた領域に格納する。サイズが変更されたＢＩＯＳＩＮＦ領域を、管理ボードＭＭＢの不揮発性メモリＮＶＭＭ内のＰＴＩＮＦ領域に反映することで、その後にＢＩＯＳにより変更されるＢＩＯＳ設定情報をＰＴＩＮＦ領域にバックアップすることができる。
【００４９】
図３は、情報処理装置、情報処理システム、情報処理装置の制御方法および情報処理装置の制御プログラムの別の実施形態を示す。図１に示す実施形態で説明した要素と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。
【００５０】
図３に示す情報処理システムＳＹＳ２は、管理ボードＭＭＢ、複数のシステムボードＳＢ（ＳＢ０、ＳＢ１、ＳＢ２、ＳＢ３）、入出力スイッチＩＯＳＷ、および複数の入出力ユニットＩＯＵ（ＩＯＵ０、ＩＯＵ１、ＩＯＵ２、ＩＯＵ３）を有する。情報処理システムＳＹＳ２に搭載されるシステムボードＳＢの数および入出力ユニットＩＯＵの数は、４つに限定されない。
【００５１】
管理ボードＭＭＢは、システムボードＳＢと入出力スイッチＩＯＳＷとを制御し、入出力スイッチＩＯＳＷを介して所定数のシステムボードＳＢを所定数の入出力ユニットＩＯＵに接続することで、パーティションＰＴ（ＰＴ０、ＰＴ１）を構築する。各パーティションＰＴは、互いに独立に動作する情報処理装置として機能する。図３に示す例では、システムボードＳＢ０、ＳＢ１と入出力ユニットＩＯＵ０、ＩＯＵ１とによりパーティションＰＴ０が構築され、システムボードＳＢ２と入出力ユニットＩＯＵ３とによりパーティションＰＴ１が構築される。入出力ユニットＩＯＵの数がシステムボードＳＢの数以上である場合、情報処理システムＳＹＳ２に構築可能なパーティションＰＴの最大数は、システムボードＳＢの数に等しい。すなわち、図３に示す情報処理システムＳＹＳ２に構築可能なパーティションＰＴの最大数は、”４”である。
【００５２】
管理ボードＭＭＢは、ＣＰＵ（ＭＭＢ）および不揮発性メモリＮＶＭＭと、図示しないメインメモリおよびＨＤＤ（Hard Disk Drive）等を有し、システムボードＳＢおよび入出力スイッチＩＯＳＷを管理する管理サーバとして機能する。不揮発性メモリＮＶＭＭは、ファームウェアＭＭＢＦＷと、ハードウェア構成テーブルＨＷＴＢＬと、パーティション情報ＰＴＩＮＦ（ＰＴＩＮＦ０、ＰＴＩＮＦ１、ＰＴＩＮＦ２、ＰＴＩＮＦ３）とを格納する記憶領域を有する。不揮発性メモリＮＶＭＭに割り当てられるＰＴＩＮＦ領域の数は、情報処理システムＳＹＳ２に構築可能なパーティションＰＴの最大数に等しい。例えば、不揮発性メモリＮＶＭＭは、データを独立に消去可能な複数のブロックを有するフラッシュメモリである。
【００５３】
ハードウェア構成テーブルＨＷＴＢＬの例は、図５に示される。各ＰＴＩＮＦ領域には、各パーティションＰＴに割り当てられるシステムボードＳＢ（後述するホームシステムボードＳＢ）の不揮発性メモリＮＶＭＳに保持されるＢＩＯＳ情報ＢＩＯＳＩＮＦおよびＢＭＣ情報ＢＭＣＩＮＦと同じ情報が格納される。パーティション情報ＰＴＩＮＦの例は、図６に示される。
【００５４】
各システムボードＳＢは、ＣＰＵ（ＳＢ）、電子部品ＥＰ、メインメモリＭＭ、チップセットＣＳＥＴ、ＢＭＣおよびＥＥＰＲＯＭ、不揮発性メモリＮＶＭＳおよび温度センサＴＳＮＳを有する。例えば、電子部品ＥＰは、ＳＡＳ（Serial Attached SCSI（Small Computer System Interface））／ＳＡＴＡ（Serial Advanced Technology Attachment）コントローラまたはＮＩＣ（Network Interface Card）等である。例えば、不揮発性メモリＮＶＭＳは、データを独立に消去可能な複数のブロックを有するフラッシュメモリである。システムボードＳＢ０−ＳＢ３は、互いに同じ構成のため、図３では、システムボードＳＢ０のみの構成が示される。
【００５５】
不揮発性メモリＮＶＭＳは、ＢＭＣが実行するファームウェアＢＭＣＦＷ、ＢＩＯＳ情報ＢＩＯＳＩＮＦ、ＢＭＣ情報ＢＭＣＩＮＦ、領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬを格納する記憶領域を有する。以下の説明では、ＢＭＣ情報ＢＭＣＩＮＦは、ＢＭＣＩＮＦ情報とも称され、ＢＭＣ情報ＢＭＣＩＮＦが格納される領域は、ＢＭＣＩＮＦ領域とも称される。
【００５６】
ＣＰＵ（ＳＢ）は、入出力ユニットＩＯＵとの間でのデータの転送を制御する入出力インタフェースの機能を内蔵しており、入出力スイッチＩＯＳＷを介して入出力ユニットＩＯＵに接続される。なお、パーティションＰＴが複数のシステムボードＳＢを含む場合、システムボードＳＢのいずれかは、ホームシステムボードＳＢとして動作し、パーティションＰＴの全体の動作を制御する。ホームシステムボードＳＢ以外のシステムボードＳＢは、アプリケーションプログラムによるデータ処理等を専用に実行する。ＢＩＯＳＩＮＦ領域、ＢＭＣＩＮＦ領域、領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬは、全てのシステムボードＳＢの不揮発性メモリＮＶＭＳに割り当てられる。
【００５７】
チップセットＣＳＥＴは、ＣＰＵ（ＳＢ）、ＥＥＰＲＯＭおよびＢＭＣに接続され、ＣＰＵ（ＳＢ）、ＥＥＰＲＯＭおよびＢＭＣ間での情報の入出力を制御する。ＢＭＣは、ＣＰＵ（ＳＢ）に供給される電源電圧およびＣＰＵ（ＳＢ）に供給されるクロックの周波数を制御し、温度センサＴＳＮＳが計測する温度に基づいて図示しないファンの回転数を制御する。ＢＭＣによる各種制御は、ＢＭＣがファームウェアＢＭＣＦＷを実行することにより実行される。ＢＭＣは、ファームウェアＢＭＣＦＷを実行することにより、検出部ＤＥＴ、割り当て部ＡＬＣ、格納部ＳＴＲおよび削除部ＤＥＬとして機能する。なお、ＢＭＣと不揮発性メモリＮＶＭＳとは、１つの半導体チップ内に搭載されてもよい。
【００５８】
ファームウェアＢＭＣＦＷは、統合ファームアップの実行後に、管理ボードＭＭＢと各パーティションＰＴとの間で情報を共有する処理を実行する。ファームウェアＭＭＢＦＷが実行する処理の例は、図８から図１０、図２３および図２４に示される。
【００５９】
ＢＩＯＳＩＮＦ情報は、システムボードＳＢに搭載または接続されるＣＰＵ（ＳＢ）を含む複数の電子部品ＥＰの動作仕様を切り替えるＢＩＯＳ設定情報を含む。ＢＭＣＩＮＦ情報は、ＯＳが動作していることを監視するウォッチドッグ設定などの設定情報を含む。以下の説明では、ＢＭＣＩＮＦ情報に含まれる設定情報は、ＢＭＣ設定情報とも称される。
【００６０】
領域管理テーブルＮＶＴＢＬには、ＢＩＯＳＩＮＦ領域、ＢＭＣＩＮＦ領域のサイズに関する情報が格納される。アドレス管理テーブルＡＤＴＢＬには、ＢＩＯＳＩＮＦ領域、ＢＭＣＩＮＦ領域にアクセスするためのアドレス情報が格納される。領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬの例は、図４に示される。
【００６１】
入出力スイッチＩＯＳＷは、管理ボードＭＭＢによる制御に基づいて、パーティションＰＴ内のシステムボードＳＢを所定数の入出力ユニットＩＯＵに接続する。各入出力ユニットＩＯＵは、複数のＨＤＤを有する。なお、各入出力ユニットＩＯＵは、複数のＳＳＤ（Solid State Drive）を有してもよい。また、情報処理システムＳＹＳ２は、ＨＤＤを含む入出力ユニットＩＯＵと、ＳＳＤを含む入出力ユニットＩＯＵとを有してもよい。
【００６２】
図４は、図３に示す不揮発性メモリＮＶＭＳに保持されるＢＩＯＳＩＮＦ情報、ＢＭＣＩＮＦ情報、領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬの一例を示す。図４では、電子部品ＥＰのＢＩＯＳ設定情報を保持するＢＩＯＳＩＮＦ領域は、２つのバンクＢＫ０、ＢＫ１に割り当てられ、ＢＭＣ用の設定情報を保持するＢＭＣＩＮＦ領域は、１つのバンクＢＫ２に割り当てられる。
【００６３】
例えば、ＢＩＯＳ設定情報は、ＢＩＯＳＩＮＦ領域におけるバンクＢＫ０に格納される。パーティションＰＴの起動時に動作するＢＩＯＳにより、ＢＩＯＳ設定情報が更新（変更）される場合、更新後のＢＩＯＳ設定情報は、バンクＢＫ０の新たな領域に格納（追記）される。これは、不揮発性メモリＮＶＭＳ（フラッシュメモリ）の記憶素子は、書き込み動作により、消去状態（論理１）から書き込み状態（論理０）のみに変化し、消去動作により、ブロック単位で書き込み状態から消去状態に変化するためである。例えば、不揮発性メモリＮＶＭＳでは、２進数の”１１１０”を”１０１０”に書き替えることは可能であるが、２進数の”１０１０”を”１１１０”に書き替えることはできない。”１０１０”から”１１１０”への書き替えは、消去動作により”１１１１”に設定した後に実行される。
【００６４】
このようなフラッシュメモリの書き込み特性のために、ＢＩＯＳ設定情報を更新する毎に、更新されたＢＩＯＳ設定情報は、バンクＢＫ０内の消去状態の領域に書き込まれる。このため、ＢＩＯＳ設定情報が更新される毎に、無効なＢＩＯＳ設定情報がバンクＢＫ０内に貯まっていき、バンクＢＫ０の空き領域は徐々に減少する。ＢＩＯＳＩＮＦ領域に格納されたＢＩＯＳ設定情報が有効か無効かは、例えば、バリッドフラグにより判断される。
【００６５】
ＢＩＯＳは、バンクＢＫ０の空き領域が所定の容量以下になったことを検出した場合、バンクＢＫ０から有効なＢＩＯＳ設定情報（更新された最新のＢＩＯＳ設定情報）を抽出し、抽出したＢＩＯＳ設定情報をバンクＢＫ１に格納する。そして、ＢＩＯＳは、バンクＢＫ０に対する消去動作を実行した後、バンクＢＫ１に保持された有効なＢＩＯＳ設定情報をバンクＢＫ０に書き戻す。これにより、バンクＢＫ０から無効なＢＩＯＳ設定情報が消去される。バンクＢＫ１は、有効なＢＩＯＳ設定情報をバンクＢＫ０に書き戻した後に、消去動作が実行され、データが０ｘＦＦ（オール１）に消去される。
【００６６】
ＢＩＯＳＩＮＦ情報に含まれる有効なＢＩＯＳ設定情報を残し、無効なＢＩＯＳ設定情報を消去する処理は、”Variable Reclaim”と称される。Variable Reclaimは、ＢＩＯＳの起動時にＢＩＯＳにより実行されるＰＯＳＴ（Power On Self Test）の期間に実行される。例えば、各バンクＢＫ（ＢＫ０、ＢＫ１、ＢＫ２）のサイズは、データの消去単位であるブロックのサイズに等しく、データの消去は、バンクＢＫ毎に実行可能である。なお、各バンクＢＫは、複数のブロックを有してもよい。
【００６７】
領域管理テーブルＮＶＴＢＬは、状態ＢＭＣ−ＳＴ、ＭＭＢ−ＳＴ、ＢＩＯＳ−ＳＴ、バンク数ＢＩＯＳＢＫＮ、バンクサイズＢＫ０ＳＺ、ＢＫ１ＳＺ、バンク数ＢＭＣＢＫＮおよびバンクサイズＢＫ２ＳＺを保持する領域を有する。状態ＢＭＣ−ＳＴは、ＢＭＣの状態を示し、状態ＭＭＢ−ＳＴは、管理ボードＭＭＢの状態を示し、状態ＢＩＯＳ−ＳＴは、ＢＩＯＳの状態を示す。状態ＢＭＣ−ＳＴ、ＭＭＢ−ＳＴ、ＢＩＯＳ−ＳＴは、統合ファームアップにより、ＢＩＯＳＩＮＦ情報を保持するバンクＢＫの数が変更される場合、変更処理を管理ボードＭＭＢ、ＢＭＣ、ＢＩＯＳ間で連携して実行するために使用される。なお、状態ＢＭＣ−ＳＴ、ＭＭＢ−ＳＴ、ＢＩＯＳ−ＳＴは、ＢＭＣ内に保持されてもよい。
【００６８】
状態ＢＭＣ−ＳＴは、ＢＩＯＳＩＮＦ領域のサイズの変更による切り替え処理の実行中に”１”（切り替え状態）に設定される。状態ＢＭＣ−ＳＴを保持する領域は、既存のバンクＢＫから新たなバンクＢＫに切り替え中であることを示す切り替え状態を保持する第１状態保持部の一例である。
【００６９】
状態ＭＭＢ−ＳＴは、バンクＢＫのサイズの変更による切り替え処理の実行中に”１”に設定される。例えば、状態ＭＭＢ−ＳＴは、図１４で説明する基本構成に設定したハードウェア構成テーブルＨＷＴＢＬに基づいて、全てのシステムボードＳＢがホームシステムボードＳＢとしてパーティションＰＴに割り当てられている期間に”１”に設定される。
【００７０】
状態ＢＩＯＳ−ＳＴは、ＢＩＯＳにより有効なＢＩＯＳ設定情報が抽出中である場合、”１”（抽出状態）に設定される。また、状態ＢＩＯＳ−ＳＴは、ＢＩＯＳによりバンクＢＫ０、ＢＫ１内の有効なＢＩＯＳ設定情報をバンクＢＫ３−ＢＫ６に複写中である場合、”２”（複写状態）に設定される。また、状態ＢＩＯＳ−ＳＴは、抽出状態および複写状態のいずれでもない場合に”０”（アイドル状態）を設定する。状態ＢＩＯＳ−ＳＴを保持する領域は、ＢＩＯＳの動作状態を示す第２状態保持部の一例である。
【００７１】
バンク数ＢＩＯＳＢＫＮは、ＢＩＯＳＩＮＦ領域に割り当てられるバンクＢＫの数を示し、バンクサイズＢＫ０ＳＺは、バンクＢＫ０のサイズを示し、バンクサイズＢＫ１ＳＺは、ＢＫ１のサイズを示す。バンク数ＢＭＣＢＫＮは、ＢＭＣＩＮＦ領域に割り当てられるバンクＢＫの数を示し、バンクサイズＢＫ２ＳＺは、バンクＢＫ２のサイズを示す。例えば、各バンクＢＫのサイズは、６４キロバイトである。バンクサイズＢＫ０ＳＺ、ＢＫ１ＳＺは、ＢＩＯＳＩＮＦ領域に割り当てられるバンクＢＫ０、ＢＫ１のそれぞれのサイズを示す第１サイズ情報の一例である。領域管理テーブルＮＶＴＢＬは、バンクサイズＢＫ０ＳＺ、ＢＫ１ＳＺおよび図１３に示すバンクサイズＢＫ３ＳＺ−ＢＫ６ＳＺを保持するサイズ情報保持部の一例である。なお、領域管理テーブルＮＶＴＢＬの大きさは、ＢＩＯＳＩＮＦ領域に割り当てられるバンクＢＫの数およびＢＭＣＩＮＦ領域に割り当てられるバンクＢＫの数に応じて変化する。
【００７２】
アドレス管理テーブルＡＤＴＢＬは、各バンクＢＫ０−ＢＫ２の開始アドレスのオフセット値ｏｆｆｓｅｔｍｉｎと、終了アドレスのオフセット値ｏｆｆｓｅｔｍａｘとを、バンクＢＫ０−ＢＫ２毎に保持する領域を有する。図４では、各オフセット値ｏｆｆｓｅｔｍｉｎ、ｏｆｆｓｅｔｍａｘは、３２ビットで表される。オフセット値ｏｆｆｓｅｔｍｉｎ、ｏｆｆｓｅｔｍａｘの差により示される各バンクＢＫ０−ＢＫ２のサイズは、領域管理テーブルＮＶＴＢＬのバンクサイズＢＫ０ＳＺ、ＢＫ１ＳＺ、ＢＫ２ＳＺにより示されるサイズに等しい。例えば、領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬは、バンクＢＫ０−ＢＫ２が割り当てられるブロックとは別のブロックに割り当てられる。アドレス管理テーブルＡＤＴＢＬは、バンクＢＫ０、ＢＫ１に割り当てられるアドレスを示すオフセット値ｏｆｆｓｅｔｍｉｎ、ｏｆｆｓｅｔｍａｘを保持するアドレス情報保持部の一例である。バンクＢＫ０、ＢＫ１のオフセット値ｏｆｆｓｅｔｍｉｎ、ｏｆｆｓｅｔｍａｘは、第１アドレス情報の一例である。
【００７３】
図５は、図３に示す不揮発性メモリＮＶＭＭに保持されるハードウェア構成テーブルＨＷＴＢＬの一例を示す。ハードウェア構成テーブルＨＷＴＢＬは、システムボードＳＢ毎に、パーティションＰＴ０−ＰＴ３、リザーブＲＳＶおよびフリーＦＲＥＥのそれぞれに対応する領域を有する。また、ハードウェア構成テーブルＨＷＴＢＬは、入出力ユニットＩＯＵ毎に、パーティションＰＴ０−ＰＴ３、リザーブＲＳＶおよびフリーＦＲＥＥのそれぞれに対応する領域を有する。
【００７４】
図５において、システムボードＳＢとパーティションＰＴとにより示される領域に含まれる丸印は、システムボードＳＢがパーティションＰＴに割り当てられることを示す。”Ｈ”を含む丸印は、システムボードＳＢがホームシステムボードＳＢとしてパーティションＰＴに割り当てることを示す。
【００７５】
リザーブＲＳＶの領域に含まれる丸印は、システムボードＳＢまたは入出力ユニットＩＯＵが交換用に確保されていることを示す。フリーＦＲＥＥの領域には、未使用のシステムボードＳＢまたは入出力ユニットＩＯＵがある場合、丸印が付けられる。なお、実際のハードウェア構成テーブルＨＷＴＢＬでは、例えば、丸印の代わりに”１”が格納され、”Ｈ”を含む丸印の代わりに”２”が格納され、空白の代わりに”０”が格納される。
【００７６】
図５では、パーティションＰＴ０、ＰＴ１、ＰＴ３が構築された状態が示される。パーティションＰＴ０には、システムボードＳＢ０、ＳＢ１が割り当てられ、システムボードＳＢ０がホームシステムボードＳＢである。パーティションＰＴ１には、システムボードＳＢ２がホームシステムボードＳＢとして割り当てられ、システムボードＳＢ３が交換用として確保される。パーティションＰＴ２には、システムボードＳＢが割り当てられていない。パーティションＰＴ３には、システムボードＳＢ３がホームシステムボードＳＢとして割り当てられる。
【００７７】
パーティションＰＴ１において、システムボードＳＢ２が故障した場合、パーティションＰＴ１の電源は遮断され、リザーブされたシステムボードＳＢ３がパーティションＰＴ１のホームシステムボードＳＢとして割り当てられ、電源が再投入される。システムボードＳＢ２の故障時にパーティションＰＴ３に電源が投入されている場合、パーティションＰＴ３の電源が遮断され、システムボードＳＢ３は、パーティションＰＴ３への割り当てが解除された後、パーティションＰＴ１に割り当てられる。このように、リザーブＲＳＶの領域をハードウェア構成テーブルＨＷＴＢＬに含めることで、システムボードＳＢ２の故障時に、システムボードＳＢ３を自動的にパーティションＰＴ１に割り当てることができる。これに対して、ハードウェア構成テーブルＨＷＴＢＬがリザーブＲＳＶの領域を持たない場合、交換するシステムボードＳＢは、情報処理システムＳＹＳ２の外部から指定され、ハードウェア構成テーブルＨＷＴＢＬは外部からの指定に基づいて書き替えられる。
【００７８】
図５の下側のかぎ括弧内に示すハードウェア構成テーブルＨＷＴＢＬは、情報処理システムＳＹＳ２の出荷時の状態を示す。ハードウェア構成テーブルＨＷＴＢＬは、情報処理システムＳＹＳ２の出荷時に、全てのシステムボードＳＢと全ての入出力ユニットＩＯＵとが未使用（ＦＲＥＥ）の状態に設定される。
【００７９】
図６は、図３に示す不揮発性メモリＮＶＭＭに保持されるパーティション情報ＰＴＩＮＦの一例を示す。図６は、図３に示すパーティションＰＴ０、ＰＴ１が構築された情報処理システムＳＹＳ２のパーティション情報ＰＴＩＮＦの状態を示す。
【００８０】
パーティションＰＴ０に対応するＰＴＩＮＦ０領域には、パーティションＰＴ０のホームシステムボードＳＢ０の不揮発性メモリＮＶＭＳ（図４）と同様に、バンクＢＫ０、ＢＫ１、ＢＫ２と同じサイズの領域が割り当てられる。ファームウェアＭＭＢＦＷは、パーティションＰＴ０の領域管理テーブルＮＶＴＢＬを参照することでＰＴＩＮＦ０領域にバンクＢＫ０−ＢＫ２に対応する領域を割り当てる。そして、ＰＴＩＮＦ０領域には、パーティションＰＴ０のホームシステムボードＳＢの不揮発性メモリＮＶＭＳに保持されたＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報と同じ情報がバックアップとして保持される。なお、図４で説明したように、バンクＢＫ１は、”Variable Reclaim”時に抽出した有効なＢＩＯＳ設定情報を一時的に保持するために使用され、”Variable Reclaim”時を除き、消去状態（０ｘＦＦ）である。
【００８１】
同様に、パーティションＰＴ１に対応するＰＴＩＮＦ１領域には、パーティションＰＴ１のホームシステムボードＳＢ２の不揮発性メモリＮＶＭＳに保持されたＢＩＯＳ設定情報およびＢＭＣ設定情報と同じ情報がバックアップとして保持される。パーティションＰＴ２、ＰＴ３は、情報処理システムＳＹＳ２に構築されていない。このため、パーティションＰＴ２、ＰＴ３に対応するＰＴＩＮＦ２領域、ＰＴＩＮＦ３領域には、”０ｘＦＦ”に初期化されたバンクＢＫ０、ＢＫ１、ＢＫ２と同じ情報がバックアップとして保持される。
【００８２】
図７は、図３に示すファームウェアＭＭＢＦＷ、ＢＭＣＦＷおよびＢＩＯＳの機能の一例を示す。ファームウェアＭＭＢＦＷは、ファームウェアＢＭＣＦＷとの通信を制御する通信部を有し、ファームウェアＢＭＣＦＷは、ファームウェアＭＭＢＦＷおよびＢＩＯＳとの通信を制御する通信部を有する。ＢＩＯＳは、ファームウェアＢＭＣＦＷとの通信を制御する通信部を有する。各通信部は、ＩＰＭＩ（Intelligent Platform Management Interface）の規格にしたがって情報を通信する。
【００８３】
ファームウェアＭＭＢＦＷは、不揮発性メモリＮＶＭＭのアクセスを制御するＮＶＭＭアクセス制御部と、不揮発性メモリＮＶＭＳのアクセスをシステムボードＳＢに指示するＮＶＭＳアクセス指示部とを有する。また、ファームウェアＭＭＢＦＷは、後述するＢＩＯＳＩＮＦ領域の切り替え処理を制御する切り替え制御部と統合ファームアップの処理を管理する統合ファームアップ管理部と、各パーティションＰＴの電源を制御する電源制御部とを有する。
【００８４】
ファームウェアＢＭＣＦＷは、システムボードＳＢ内の不揮発性メモリＮＶＭＳのアクセスを制御するＮＶＭＳアクセス制御部と、後述するＢＩＯＳＩＮＦ領域の切り替え処理を制御する切り替え制御部とを有する。ＢＩＯＳは、システムボードＳＢに、不揮発性メモリＮＶＭＳのアクセスをシステムボードＳＢに指示するＮＶＭＳアクセス指示部と、Variable Reclaimを実行するVariable Reclaim処理部とを有する。
【００８５】
図８から図１０は、図３に示す情報処理システムＳＹＳ２において、統合ファームアップによりＢＩＯＳＩＮＦ情報が保持されるバンクＢＫの数が増加される場合の変更処理の一例を示す。すなわち、図８、図９および図１０は、ＢＩＯＳＩＮＦ領域の切り替え処理の一例を示す。図９は、図８に示す処理の続きを示し、図１０は、図９に示す処理の続きを示す。図１１から図２２は、不揮発性メモリＮＶＭＭ、ＮＶＭＳに保持される情報の変化の一例を示す。図１１から図２２において、太枠で示す領域は、１つ前の状態に対して保持する情報が変更された領域を示す。図８から図１０において、ファームウェアＭＭＢＦＷの動作は、管理ボードＭＭＢの動作を示し、ファームウェアＢＭＣＦＷの動作は、ＢＭＣの動作を示し、ファームウェアＢＭＣＦＷが実行する処理は、情報処理装置の制御方法の一例を示す。
【００８６】
統合ファームアップ前の情報処理システムＳＹＳ２の状態は、図３と同様であり、パーティションＰＴ０にシステムボードＳＢ０、ＳＢ１が割り当てられ、パーティションＰＴ１にシステムボードＳＢ２が割り当てられている。統合ファームアップ前の管理ボードＭＭＢの不揮発性メモリＮＶＭＭの状態は、図１１に示され、統合ファームアップ前の各システムボードＳＢの不揮発性メモリＮＶＭＳの状態は、図１２に示される。図１１および図１２において、データＤＴ００は、パーティションＰＴ０のＢＩＯＳ設定情報を示し、データＤＴ０１は、パーティションＰＴ０のＢＭＣ設定情報を示す。データＤＴ１０は、パーティションＰＴ１のＢＩＯＳ設定情報を示し、データＤＴ１１は、パーティションＰＴ１のＢＭＣ設定情報を示す。データＤＴ３０は、システムボードＳＢ３が過去にパーティションＰＴのいずれかに割り当てられたときのＢＩＯＳ設定情報を示し、データＤＴ３１は、システムボードＳＢ３が過去にパーティションＰＴのいずれかに割り当てられたときのＢＭＣ設定情報を示す。データＤＴ３０、ＤＴ３１は、無効な情報である。
【００８７】
図１１において、使用されないパーティションＰＴ２、ＰＴ３に対応するＰＴＩＮＦ２領域、ＰＴＩＮＦ３領域は、オール１（０ｘＦＦ）に初期化され、初期化状態を保持する。図１２において、パーティションＰＴ０に割り当てられるシステムボードＳＢ１は、ホームシステムボードＳＢでないため、ＢＩＯＳＩＮＦ領域（ＢＫ０、ＢＫ１）およびＢＭＣＩＮＦ領域（ＢＫ２）は、オール１（０ｘＦＦ）に初期化され、初期化状態を保持する。各システムボードＳＢの領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬには、情報処理システムＳＹＳ２に共通の情報が格納される。すなわち、ＢＩＯＳＩＮＦ情報を格納するバンクＢＫの数およびＢＭＣＩＮＦ情報を格納するバンクＢＫの数は、情報処理システムＳＹＳ２の機能に基づいて設定される。さらに、ＢＩＯＳＩＮＦ情報を格納するバンクＢＫの数は、統合ファームアップによる情報処理システムＳＹＳ２の機能の変更に基づいて変更される。
【００８８】
図８に戻って、統合ファームアップ後、ファームウェアＭＭＢＦＷは、管理ボードＭＭＢを再起動した後、各システムボードＳＢのＢＭＣに再起動を指示し、各システムボードＳＢとの通信を開始する（図８（ａ）、（ｂ））。各システムボードＳＢのファームウェアＢＭＣＦＷは、ＢＭＣを再起動した後、領域管理テーブルＮＶＴＢＬに保持されたバンク数ＢＩＯＳＢＫＮを参照する（図８（ｃ））。バンク数ＢＩＯＳＢＫＮは、既存のＢＩＯＳＩＮＦ情報を保持するために割り当てられたバンクＢＫの数である。そして、ファームウェアＢＭＣＦＷの検出部ＤＥＴは、ＢＩＯＳＩＮＦ情報を保持するためにファームウェアＢＭＣＦＷが指定する新たなバンクＢＫの数が、バンク数ＢＩＯＳＢＫＮと異なることを検出する。すなわち、ファームウェアＢＭＣＦＷの検出部ＤＥＴは、新たにＢＩＯＳ設定情報を保持するＢＩＯＳＩＮＦ領域のサイズが、領域管理テーブルＮＶＴＢＬに保持された既存のＢＩＯＳＩＮＦ領域のサイズと異なることを検出する。新たなＢＩＯＳＩＮＦ領域のサイズは、既存のＢＩＯＳＩＮＦ領域のサイズより大きくてもよく、小さくてもよい。例えば、ファームウェアＢＭＣＦＷが指定する新たなバンクＢＫの数は、ファームウェアＢＭＣＦＷ内に記述される。
【００８９】
各システムボードＳＢのファームウェアＢＭＣＦＷは、新規に割り当てるＢＩＯＳＩＮＦ領域を示す情報を、領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬに追加する（図８（ｄ））。例えば、図１３に示すように、ファームウェアＢＭＣＦＷの割り当て部ＡＬＣは、新規に割り当てるバンクＢＫ３−ＢＫ６の数である”４”を示すバンク数ＢＩＯＳＢＫＮを領域管理テーブルＮＶＴＢＬに割り当てる。また、割り当て部ＡＬＣは、バンクＢＫ３−ＢＫ６のそれぞれのサイズを示すバンクサイズＢＫ３ＳＺ−ＢＫ６ＳＺを領域管理テーブルＮＶＴＢＬに割り当てる。さらに、割り当て部ＡＬＣは、新規に割り当てるバンクＢＫ３−ＢＫ６のオフセット値ｏｆｆｓｅｔｍｉｎ、ｏｆｆｓｅｔｍａｘをアドレス管理テーブルＡＤＴＢＬに割り当てる。
【００９０】
ファームウェアＢＭＣＦＷは、既存のＢＩＯＳＩＮＦ領域を新規に割り当てたＢＩＯＳＩＮＦ領域に切り替える処理をＢＭＣが実行中であることを示すために、状態ＢＭＣ−ＳＴを”０”から”１”に変更する（図８（ｅ））。そして、ファームウェアＢＭＣＦＷは、ファームウェアＢＭＣＦＷが指定する新たなＢＩＯＳＩＮＦ領域に対応するバンクＢＫ（例えば、ＢＫ３−ＢＫ６）を不揮発性メモリＮＶＭＳに新規に割り当てる（図８（ｆ））。すなわち、割り当て部ＡＬＣは、ＢＩＯＳＩＮＦ情報を保持するためのバンクＢＫの数を変更する場合、変更後のバンクＢＫを不揮発性メモリＮＶＭＳに追加する。ファームウェアＢＭＣＦＷは、新規に割り当てたバンクＢＫ内のデータを消去する。既存のＢＩＯＳＩＮＦ領域（すなわち、ＢＫ０、ＢＫ１）は、削除されることなく維持される。
【００９１】
例えば、ファームウェアＢＭＣＦＷが指定する新たにＢＩＯＳＩＮＦ情報を保持するためのバンクＢＫの数が、バンク数ＢＩＯＳＢＫＮより少ないことが検出された場合にも、要求されたＢＩＯＳＩＮＦ領域が不揮発性メモリＮＶＭＳに新規に割り当てられる。なお、ファームウェアＢＭＣＦＷが指定するＢＩＯＳＩＮＦ情報を保持するためのバンクＢＫの数が、既存のバンク数ＢＩＯＳＢＫＮと同じ場合、既存のＢＩＯＳＩＮＦ領域から新規のＢＩＯＳＩＮＦ領域への切り替え処理は実行されない。
【００９２】
各システムボードＳＢの不揮発性メモリＮＶＭＳにおいて、新規にバンクＢＫ３−ＢＫ６が割り当てられ、バンクＢＫ３−ＢＫ６の割り当てが領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬが反映された状態は、図１３に示される。図１３に示す状態では、図１２に示す状態に対して、領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬに、バンクＢＫ３−ＢＫ６の情報が追加され、状態ＢＭＣ−ＳＴが”１”に設定されている。
【００９３】
バンクサイズＢＫ３ＳＺ、ＢＫ４ＳＺは、ＢＫ５ＳＺ、ＢＫ６ＳＺは、ＢＭＣＩＮＦ領域に割り当てられるバンクＢＫ３、ＢＫ４、ＢＫ５、ＢＫ６のそれぞれのサイズを示す第２サイズ情報の一例である。図１３において、アドレス管理テーブルＡＤＴＢＬは、バンクＢＫ３−ＢＫ６に割り当てられるアドレスを示すオフセット値ｏｆｆｓｅｔｍｉｎ、ｏｆｆｓｅｔｍａｘを保持するアドレス情報保持部の一例である。バンクＢＫ３−ＢＫ６のオフセット値ｏｆｆｓｅｔｍｉｎ、ｏｆｆｓｅｔｍａｘは、第２アドレス情報の一例である。
【００９４】
領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬにバンクＢＫ３−ＢＫ６の情報を追加することで、ＢＩＯＳは、既存のＢＩＯＳＩＮＦ領域（旧）と、新規のＢＩＯＳＩＮＦ領域（新）との両方にアクセスすることができる。すなわち、ＢＩＯＳは、既存のＢＩＯＳＩＮＦ情報を用いてVariable Reclaimを実行することで、有効なＢＩＯＳ設定情報を抽出することができ、抽出したＢＩＯＳ設定情報を新規に割り当てたＢＩＯＳＩＮＦ領域に格納することができる。
【００９５】
図８に戻って、ファームウェアＭＭＢＦＷは、領域管理テーブルＮＶＴＢＬを取得し、状態ＢＭＣ−ＳＴの”１”に基づいて、ファームウェアＢＭＣＦＷがＢＩＯＳＩＮＦ領域の切り替え処理を実行中であること検出する（図８（ｇ））。このように、領域管理テーブルＮＶＴＢＬに状態ＢＭＣ−ＳＴを保持する領域を設けることで、ファームウェアＭＭＢＦＷは、ファームウェアＢＭＣＦＷによるＢＩＯＳＩＮＦ領域の切り替え処理の実行を検出することができる。このため、ファームウェアＭＭＢＦＷは、ファームウェアＢＭＣＦＷと連携して、ＢＩＯＳＩＮＦ領域の切り替え処理を実行することができる。なお、ファームウェアＭＭＢＦＷは、管理ボードＭＭＢを再起動後、所定の周期で領域管理テーブルＮＶＴＢＬを取得する。
【００９６】
ファームウェアＭＭＢＦＷは、状態ＢＭＣ−ＳＴの”１”の検出に基づいて、ハードウェア構成テーブルＨＷＴＢＬを退避し、ハードウェア構成テーブルＨＷＴＢＬを基本構成に設定する（図８（ｈ）、（ｉ））。ここで、基本構成は、各パーティションＰＴにシステムボードＳＢを１つずつ割り当て、全てのシステムボードＳＢがホームシステムボードＳＢに設定される構成である。ハードウェア構成テーブルＨＷＴＢＬの変更により、全てのシステムボードＳＢが、ホームシステムボードＳＢとして各パーティションＰＴに割り当てられる。既存のハードウェア構成テーブルＨＷＴＢＬを退避し、ハードウェア構成テーブルＨＷＴＢＬを基本構成に設定した不揮発性メモリＮＶＭＭの状態は、図１４に示される。
【００９７】
図８に戻って、ファームウェアＭＭＢＦＷは、基本構成に設定したハードウェア構成テーブルＨＷＴＢＬに基づいて、不揮発性メモリＮＶＭＭに保持しているＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報の格納をファームウェアＢＭＣＦＷに指示する（図８（ｊ））。ＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報の格納を指示されるファームウェアＢＭＣＦＷは、各パーティションＰＴに新たに割り当てられた（すなわち、構成変更のある）ホームシステムボードＳＢのファームウェアＢＭＣＦＷである。
【００９８】
図１４に示す例では、ホームシステムボードＳＢ０は、パーティションＰＴ０への割り当てが維持されるため、ホームシステムボードＳＢ０のファームウェアＢＭＣＦＷは、ＢＩＯＳＩＮＦ情報、ＢＭＣＩＮＦ情報の格納の指示が省略されてもよい。他のホームシステムボードＳＢ１−ＳＢ３のそれぞれは、パーティションＰＴ１−ＰＴ３に新たに割り当てられるため、他のホームシステムボードＳＢ１−ＳＢ３のファームウェアＢＭＣＦＷは、ＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報の格納を指示される。
【００９９】
指示を受けたファームウェアＢＭＣＦＷは、不揮発性メモリＮＶＭＳに保持された既存のＢＩＯＳＩＮＦ領域およびＢＭＣＩＮＦ領域内のデータを消去する。そして、ファームウェアＢＭＣＦＷは、ファームウェアＭＭＢＦＷから転送されるＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報を、データを消去した既存のＢＩＯＳＩＮＦ領域およびＢＭＣＩＮＦ領域にそれぞれ格納する（図８（ｋ））。なお、ファームウェアＭＭＢＦＷから転送されるＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報は、元のシステムボードＳＢと異なるシステムボードＳＢに格納される場合がある。しかしながら、情報処理システムＳＹＳ２の全体では、統合ファームアップ前の既存のＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報は、システムボードＳＢ０−ＳＢ３のいずれかに含まれるため、失われることを抑止することができる。
【０１００】
ファームウェアＭＭＢＦＷは、ファームウェアＢＭＣＦＷに状態ＭＭＢ−ＳＴの”０”から”１”への変更を指示する（図８（ｌ））。状態ＭＭＢ−ＳＴの”１”は、ハードウェア構成テーブルＨＷＴＢＬが基本構成に設定され、既存のＢＩＯＳＩＮＦ領域を新規に割り当てたＢＩＯＳＩＮＦ領域に切り替える処理をＭＭＢが実行中であることを示す。ファームウェアＢＭＣＦＷは、ファームウェアＭＭＢＦＷからの指示に基づいて、領域管理テーブルＮＶＴＢＬの状態ＭＭＢ−ＳＴを”０”から”１”に変更する（図８（ｍ））。
【０１０１】
ファームウェアＭＭＢＦＷからのＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報を不揮発性メモリＮＶＭＳに格納した状態は、図１５に示される。図１５に示す状態では、図１３に示す状態に対して、システムボードＳＢ１、ＳＢ２のＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報が互いに入れ替わり、システムボードＳＢ３のＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報が消去されている。また、状態ＭＭＢ−ＳＴが”１”に設定されている。
【０１０２】
図１４に示す基本構成のハードウェア構成テーブルＨＷＴＢＬにより各パーティションＰＴに１つのシステムボードＳＢを割り当てることで、全てのシステムボードＳＢ０−ＳＢ３に、ＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報を設定することができる。これにより、システムボードＳＢ３のＢＩＯＳＩＮＦ領域およびＢＭＣＩＮＦ領域に過去に保持された無効なデータＤＴ３０、ＤＴ３１（図１３）を削除することができる。
【０１０３】
図８に戻って、この後、ファームウェアＭＭＢＦＷは、不揮発性メモリＮＶＭＭに保持された各パーティションＰＴ０−ＰＴ３に対応するＰＴＩＮＦ０領域−ＰＴＩＮＦ３領域に含まれる既存のＢＩＯＳＩＮＦ情報（ＢＫ０、ＢＫ１）を削除する（図８（ｎ））。ファームウェアＭＭＢＦＷは、取得した領域管理テーブルＮＶＴＢＬに基づいて、各システムボードＳＢに割り当てられたバンクＢＫ３−ＢＫ６と同じサイズのバンクＢＫ３−ＢＫ６を、各ＰＴＩＮＦ０領域−ＰＴＩＮＦ３領域内のＢＩＯＳＩＮＦ領域に割り当てる。そして、ファームウェアＭＭＢＦＷは、割り当てたバンクＢＫ３−ＢＫ６のデータを”０ｘＦＦ”に初期化する（図８（ｏ））。不揮発性メモリＮＶＭＭにおいて、バンクＢＫ０、ＢＫ１が削除され、バンクＢＫ３−ＢＫ６が割り当てられた状態は、図１６に示される。
【０１０４】
次に、図９において、ファームウェアＭＭＢＦＷは、管理ボードＭＭＢを再起動し、全てのパーティションＰＴ０−ＰＴ３のファームウェアＢＭＣＦＷに電源の投入を指示する（図９（ａ））。各ファームウェアＢＭＣＦＷは、電源の投入の指示に基づいて、各パーティションＰＴの電源を投入する（図９（ｂ））。なお、各システムボードＳＢにおいて、電源は、ＢＭＣおよび不揮発性メモリＮＶＭＳに常に供給されている。パーティションＰＴの電源の投入により、ＣＰＵが動作を開始し、ＢＩＯＳが起動され、ＢＩＯＳは、ＰＯＳＴを開始する（図９（ｃ））。ＢＩＯＳは、ＢＭＣを介して領域管理テーブルＮＶＴＢＬを取得し、状態ＭＭＢ−ＳＴ、ＢＭＣ−ＳＴが”１”であることに基づいて、管理ボードＭＭＢとＢＭＣとがＢＩＯＳＩＮＦ領域の切り替え処理を実行中であることを検出する（図９（ｄ））。領域管理テーブルＮＶＴＢＬに状態ＭＭＢ−ＳＴ、ＢＭＣ−ＳＴを保持する領域を設けることで、ＢＩＯＳは、ファームウェアＭＭＢＦＷ、ＢＭＣＦＷによるＢＩＯＳＩＮＦ領域の切り替え処理の実行を検出することができる。このため、ＢＩＯＳは、ＢＩＯＳＩＮＦ領域の切り替え処理に伴って実行するVariable Reclaimの開始タイミングを検出することができる。すなわち、ＢＩＯＳは、状態ＭＭＢ−ＳＴ、ＢＭＣ−ＳＴに保持された”１”に基づいて、既存のバンクＢＫ０、ＢＫ１から有効なＢＩＯＳ設定情報を抽出する抽出処理（Variable Reclaim処理）を開始する。
【０１０５】
管理ボードＭＭＢとＢＭＣとがＢＩＯＳＩＮＦ領域の切り替え処理を実行中であることを検出したため、ＢＩＯＳは、ＰＯＳＴを中断する（図９（ｅ））。そして、ＢＩＯＳは、Variable Reclaimを実行するために、ファームウェアＢＭＣＦＷに状態ＢＩＯＳ−ＳＴの”０”から”１”への変更を指示する（図９（ｆ））。ファームウェアＢＭＣＦＷは、ＢＩＯＳからの指示に基づいて、領域管理テーブルＮＶＴＢＬの状態ＢＩＯＳ−ＳＴを”０”から”１”に変更する（図９（ｇ））。領域管理テーブルＮＶＴＢＬに状態ＢＩＯＳ−ＳＴを保持する領域を設けることで、ファームウェアＢＭＣＦＷは、Variable Reclaimが実行であることを検出することができる。
【０１０６】
ＢＩＯＳは、Variable Reclaimを実行することで、不揮発性メモリＮＶＭＳのＢＩＯＳＩＮＦ領域に保持された有効なＢＩＯＳ設定情報を残し、無効なＢＩＯＳ設定情報を削除する（図９（ｈ））。すなわち、ＢＩＯＳは、既存のＢＩＯＳ設定情報が格納されているバンクＢＫ０から有効なＢＩＯＳ設定情報を抽出する動作と、抽出したＢＩＯＳ設定情報をバンクＢＫ１に格納する指示とを繰り返す。例えば、ＢＩＯＳは、既存のVariable Reclaimの機能を利用して実行される。なお、ＢＩＯＳは、既存のVariable Reclaimの機能とは異なる機能を用いて、バンクＢＫ０から抽出した有効なＢＩＯＳ設定情報を、バンクＢＫ３に直接格納する処理を実行してもよい。この場合、後述する有効なＢＩＯＳ設定情報を既存のバンクＢＫ０から新規のバンクＢＫ３に複写する処理は省略される。
【０１０７】
例えば、ＢＩＯＳは、不揮発性メモリＮＶＭＳからＢＩＯＳ設定情報を読み出す場合、ＩＰＭＩコマンドのパラメータとして、アクセスするバンクＢＫ、アドレスのオフセット値および読み出しサイズを指定する。また、ＢＩＯＳは、不揮発性メモリＮＶＭＳにＢＩＯＳ設定情報を書き込む場合、ＩＰＭＩコマンドのパラメータとして、アクセスするバンクＢＫ、アドレスのオフセット値、書き込みサイズおよび書き込みデータ（ＢＩＯＳ設定情報）を指定する。
【０１０８】
ＢＩＯＳは、全ての有効なＢＩＯＳ設定情報を抽出した後、ファームウェアＢＭＣＦＷにバンクＢＫ０内のデータを消去する指示を発行し、バンクＢＫ０のデータが消去された後、バンクＢＫ１に保持された有効なＢＩＯＳ設定情報をバンクＢＫ０に書き戻す。なお、不揮発性メモリＮＶＭＳのＢＩＯＳＩＮＦ領域のアクセスは、ＢＩＯＳからの指示に基づいてファームウェアＢＭＣＦＷにより制御される。Variable Reclaimが完了した不揮発性メモリＮＶＭＳの状態は、図１７に示される。
【０１０９】
次に、ＢＩＯＳは、ファームウェアＢＭＣＦＷに状態ＢＩＯＳ−ＳＴの”１”から”２”への変更を指示する（図９（ｉ））。ファームウェアＢＭＣＦＷは、ＢＩＯＳからの指示に基づいて、領域管理テーブルＮＶＴＢＬの状態ＢＩＯＳ−ＳＴを”１”から”２”に変更する（図９（ｊ））。状態ＢＩＯＳ−ＳＴの”２”は、Variable Reclaimの実行により抽出された有効なＢＩＯＳ設定情報を、既存のＢＩＯＳＩＮＦ領域（バンクＢＫ０）から新規に割り当てたＢＩＯＳＩＮＦ領域（バンクＢＫ３）に複写中であることを示す。
【０１１０】
ＢＩＯＳは、有効なＢＩＯＳ設定情報を既存のバンクＢＫ０から新規に割り当てたバンクＢＫ３に複写する指示をファームウェアＢＭＣＦＷに繰り返し発行する（図９（ｋ））。有効なＢＩＯＳ設定情報を既存のバンクＢＫ０から新規に割り当てたバンクＢＫ３に複写する指示は、バンクＢＫ０に対する読み出しコマンドと、バンクＢＫ３に対する書き込みコマンドとの交互の発行である。ファームウェアＢＭＣＦＷは、読み出しコマンドに基づいて複写対象のＢＩＯＳ設定情報をバンクＢＫ０から読み出し、書き込みコマンドに基づいて書き込みコマンドに含まれる有効なＢＩＯＳ設定情報をバンクＢＫ３に格納する。書き込みコマンドに基づく有効なＢＩＯＳ設定情報のバンクＢＫ３への格納は、ファームウェアＢＭＣＦＷの格納部ＳＴＲにより実行される。すなわち、ＢＩＯＳからの指示に基づいて、複写対象のＢＩＯＳ設定情報をバンクＢＫ０からバンクＢＫ３に複写する複写処理が実行される。バンクＢＫ０からバンクＢＫ３へのＢＩＯＳ設定情報の格納が完了した不揮発性メモリＮＶＭＳの状態は、図１８に示される。
【０１１１】
また、ファームウェアＢＭＣＦＷは、複写したＢＩＯＳ設定情報を不揮発性メモリＮＶＭＭのＰＴＩＮＦ領域に割り当てたバンクＢＫ３に格納する指示をファームウェアＭＭＢＦＷに発行する（図９（ｌ））。領域管理テーブルＮＶＴＢＬの状態ＢＩＯＳ−ＳＴに”２”を格納することで、ファームウェアＢＭＣＦＷは、書き込みコマンドとともにＢＩＯＳから転送されたＢＩＯＳ設定情報をファームウェアＭＭＢＦＷに転送する判断をすることができる。ファームウェアＭＭＢＦＷは、各ファームウェアＭＭＢＦＷからＢＩＯＳ設定情報が転送される毎に、対応するＰＴＩＮＦ領域に割り当てたバンクＢＫ３にＢＩＯＳ設定情報を格納する（図９（ｍ））。有効なＢＩＯＳ設定情報がＰＴＩＮＦ領域の新規のバンクＢＫ３に格納された不揮発性メモリＮＶＭＭの状態は、図１９に示される。
【０１１２】
全てのＢＩＯＳ設定情報の複写が完了した後、ＢＩＯＳは、ファームウェアＢＭＣＦＷに状態ＢＩＯＳ−ＳＴの”２”から”０”への変更を指示する（図９（ｎ））。ファームウェアＢＭＣＦＷは、ＢＩＯＳからの指示に基づいて、領域管理テーブルＮＶＴＢＬの状態ＢＩＯＳ−ＳＴを”２”から”０”に変更し、ＢＩＯＳによるＢＩＯＳ設定情報の複写の完了を検出する（図９（ｏ））。
【０１１３】
ファームウェアＢＭＣＦＷは、状態ＢＩＯＳ−ＳＴが”０”に設定されたことに基づいて、Variable Reclaimに使用した既存のＢＩＯＳＩＮＦ領域（バンクＢＫ０、ＢＫ１）を削除する（図９（ｐ））。すなわち、ファームウェアＢＭＣＦＷの削除部ＤＥＬは、有効なＢＩＯＳ設定情報がバンクＢＫ３に格納された後、バンクＢＫ０を削除する。また、ファームウェアＢＭＣＦＷの削除部ＤＥＬは、バンクＢＫ０、ＢＫ１の削除を、領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬに反映する（図９（ｑ））。すなわち、ファームウェアＢＭＣＦＷの削除部ＤＥＬは、有効なＢＩＯＳ設定情報をバンクＢＫ３に格納した後、既存のバンクＢＫ０、ＢＫ１のサイズを示すバンクサイズＢＫ０ＳＺ、ＢＫ１ＳＺを領域管理テーブルＮＶＴＢＬから削除する。また、ファームウェアＢＭＣＦＷの削除部ＤＥＬは、既存のバンクＢＫ０、ＢＫ１のオフセット値ｏｆｆｓｅｔｍｉｎ、ｏｆｆｓｅｔｍａｘをアドレス管理テーブルＡＤＴＢＬから削除する。これにより、ＢＩＯＳＩＮＦ領域を切り替える処理が完了したため、ファームウェアＭＭＢＦＷは、状態ＢＭＣ−ＳＴを”１”から”０”に変更する（図９（ｒ））。ＢＩＯＳ設定情報のバンクＢＫ３への格納後に、削除したバンクＢＫ０、ＢＫ１に合わせて領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬが更新された不揮発性メモリＮＶＭＳの状態は、図２０に示される。
【０１１４】
次に、図１０において、ファームウェアＭＭＢＦＷは、ＢＭＣから領域管理テーブルＮＶＴＢＬを取得し、状態ＢＭＣ−ＳＴが”０”であることに基づいて、ＢＩＯＳＩＮＦ領域を切り替え処理の完了を検出する（図１０（ａ）、（ｂ））。そして、ファームウェアＭＭＢＦＷは、全てのパーティションＰＴ０−ＰＴ３（ＳＢ０−ＳＢ３）の電源の遮断をファームウェアＢＭＣＦＷに指示する（図１０（ｃ））。ファームウェアＢＭＣＦＷは、各パーティションＰＴ（すなわち、各システムボードＳＢ）への電源の供給を停止し、ＢＩＯＳを終了させる（図１０（ｄ））。なお、各システムボードＳＢにおいて、ＢＭＣおよび不揮発性メモリＮＶＭＳへの電源の供給は継続される。
【０１１５】
次に、ファームウェアＭＭＢＦＷは、基本構成に設定したハードウェア構成テーブルＨＷＴＢＬに基づくＢＩＯＳＩＮＦ領域の切り替え処理が完了したため、ファームウェアＢＭＣＦＷに状態ＭＭＢ−ＳＴの”１”から”０”への変更を指示する（図１０（ｅ））。ファームウェアＢＭＣＦＷは、ファームウェアＭＭＢＦＷからの指示に基づいて、領域管理テーブルＮＶＴＢＬの状態ＭＭＢ−ＳＴを”１”から”０”に変更する（図１０（ｆ））。
【０１１６】
次に、ファームウェアＭＭＢＦＷは、退避したハードウェア構成テーブルＨＷＴＢＬを元に戻す（図１０（ｇ））。ハードウェア構成テーブルＨＷＴＢＬの変更により、情報処理システムＳＹＳ２のパーティションＰＴの構成は、統合ファームアップ前の元の構成に戻る。退避したハードウェア構成テーブルＨＷＴＢＬが元に戻された不揮発性メモリＮＶＭＭの状態は、図２１に示される。換言すれば、図２１は、ＢＩＯＳＩＮＦ領域の拡張処理の完了後の管理ボードＭＭＢの不揮発性メモリＮＶＭＭの状態を示す。
【０１１７】
ファームウェアＭＭＢＦＷは、各パーティションＰＴのホームシステムボードＳＢのファームウェアＢＭＣＦＷに対して、不揮発性メモリＮＶＭＭに保持しているＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報の格納を指示する（図１０（ｈ））。指示を受けたホームシステムボードＳＢのファームウェアＢＭＣＦＷは、ファームウェアＭＭＢＦＷから転送されるＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報を、ＢＩＯＳＩＮＦ領域およびＢＭＣＩＮＦ領域のそれぞれに格納する（図１０（ｉ））。
【０１１８】
そして、全てのシステムボードＳＢのＢＩＯＳＩＮＦ領域の拡張処理が完了する。拡張処理の完了後の各システムボードＳＢの不揮発性メモリＮＶＭＳの状態は、図２２に示される。図２２では、拡張処理の開始前の図１２に比べて、バンクＢＫの数が増加され、パーティションＰＴ０、ＰＴ１に割り当てられたホームシステムボードＳＢ０、ＳＢ２は、有効なＢＩＯＳ設定情報ＤＴ００’、ＤＴ１０’をそれぞれ保持する。これ以降、パーティションＰＴ０、ＰＴ１は、有効なＢＩＯＳ設定情報ＤＴ００’、ＤＴ１０’を複写した新たなＢＩＯＳＩＮＦ領域を既存のＢＩＯＳＩＮＦ領域として使用する。
【０１１９】
図２３および図２４は、図３に示す情報処理システムＳＹＳ２においてＢＭＣが実行する処理の一例を示す。図２４は、図２３に示す処理の続きを示す。図２３および図２４に示す処理は、管理ボードＭＭＢからのＢＭＣの起動の指示に基づいて、ＢＭＣのファームウェアＢＭＣＦＷがＢＭＣを起動することで開始される。すなわち、図２３および図２４は、情報処理システムＳＹＳ２の制御方法および制御プログラムの一例を示す。図８から図１０に示す処理と同様の処理については、詳細な説明は省略する。
【０１２０】
まず、ステップＳ１００において、ＢＭＣは、領域管理テーブルＮＶＴＢＬに保持された既存のＢＩＯＳＩＮＦ領域のバンク数ＢＩＯＳＢＫＮを取得する。次に、ステップＳ１０２において、ＢＭＣは、ファームウェアＢＭＣＦＷ内に記述された新規のＢＩＯＳＩＮＦ領域のバンク数を取得する。次に、ステップＳ１０４において、ＢＭＣは、ステップＳ１００、Ｓ１０２で取得したバンク数が互いに一致するか否かを判定する。バンク数が互いに一致する場合、既存のＢＩＯＳＩＮＦ領域がそのまま使用されるため処理は終了し、バンク数が互いに異なる場合、既存のＢＩＯＳＩＮＦ領域を、新規のＢＩＯＳＩＮＦ領域に切り替えるために処理はステップＳ１０６に移行される。
【０１２１】
ステップＳ１０６において、ＢＭＣは、状態ＢＭＣ−ＳＴを”０”から”１”に変更する。次に、ステップＳ１０８において、ＢＭＣは、新規に割り当てるＢＩＯＳＩＮＦ領域を示す情報を、領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬに追加する。次に、ステップＳ１１０において、ＢＭＣは、新たなＢＩＯＳＩＮＦ領域に対応する数のバンクＢＫを不揮発性メモリＮＶＭＳに新規に割り当てる。
【０１２２】
次に、ステップＳ１１２において、ＢＭＣは、管理ボードＭＭＢとの間の通信を確立する。次に、ステップＳ１１４において、ＢＭＣは、管理ボードＭＭＢからの指示に基づいて、領域管理テーブルＮＶＴＢＬの状態ＭＭＢ−ＳＴを”０”から”１”に変更する。次に、ステップＳ１１６において、ＢＭＣは、管理ボードＭＭＢからＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報を受信した場合、受信したＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報を既存のＢＩＯＳＩＮＦ領域およびＢＭＣＩＮＦ領域に格納する。すなわち、既存のＢＩＯＳＩＮＦ領域およびＢＭＣＩＮＦ領域に保持されたＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報は、管理ボードＭＭＢから受信したＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報に置き換えられる。
【０１２３】
次に、ステップＳ１１８において、ＢＭＣは、管理ボードＭＭＢからの指示に基づいて、パーティションＰＴの電源を投入する。パーティションＰＴの電源の投入により、ＢＩＯＳが起動される。次に、ステップＳ１２０において、ＢＭＣは、ＢＩＯＳからの指示に基づいて、領域管理テーブルＮＶＴＢＬの状態ＢＩＯＳ−ＳＴを、Variable Reclaimの実行中を示す”１”に設定する。次に、ステップＳ１２２において、ＢＭＣは、ＢＩＯＳによるVariable Reclaimの実行により抽出された有効なＢＩＯＳ設定情報を、データを消去済みの既存のＢＩＯＳＩＮＦ領域に格納する。次に、ステップＳ１２４において、ＢＭＣは、領域管理テーブルＮＶＴＢＬの状態ＢＩＯＳ−ＳＴを”２”に設定する指示を受けたか否かを判定する。状態ＢＩＯＳ−ＳＴを”２”に設定する指示を受けた場合、Variable Reclaimの実行が終了したと判定され、処理はステップＳ１２６に移行される。状態ＢＩＯＳ−ＳＴを”２”に設定する指示を受けていない場合、Variable Reclaimが実行中であると判定され、処理はステップＳ１２２に戻される。ステップＳ１２６において、ＢＭＣは、領域管理テーブルＮＶＴＢＬの状態ＢＩＯＳ−ＳＴを、有効なＢＩＯＳ設定情報の新規のＢＩＯＳＩＮＦ領域への複写中を示す”２”に設定する。
【０１２４】
次に、図２４に示すステップＳ１２８において、ＢＭＣは、ＢＩＯＳからの指示に基づいて、有効なＢＩＯＳ設定情報を既存のＢＩＯＳＩＮＦ領域から新規のＢＩＯＳＩＮＦ領域に複写する。次に、ステップＳ１３０において、ＢＭＣは、複写したＢＩＯＳ設定情報を不揮発性メモリＮＶＭＭに格納する指示を管理ボードＭＭＢに発行する。次に、ステップＳ１３２において、ＢＭＣは、領域管理テーブルＮＶＴＢＬの状態ＢＩＯＳ−ＳＴを”０”に設定する指示を受けたか否かを判定する。状態ＢＩＯＳ−ＳＴを”０”に設定する指示を受けた場合、有効なＢＩＯＳ設定情報の複写が終了したと判定され、処理はステップＳ１３４に移行される。状態ＢＩＯＳ−ＳＴを”０”に設定する指示を受けていない場合、有効なＢＩＯＳ設定情報の複写が終了していないと判定され、処理はステップＳ１２８に戻される。
【０１２５】
次に、ステップＳ１３４において、ＢＭＣは、領域管理テーブルＮＶＴＢＬの状態ＢＩＯＳ−ＳＴを、”０”に設定する。次に、ステップＳ１３６において、ＢＭＣは、Variable Reclaimに使用した既存のＢＩＯＳＩＮＦ領域を削除する。次に、ステップＳ１３８において、ＢＭＣは、既存のＢＩＯＳＩＮＦ領域の削除を領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬに反映させる。次に、ステップＳ１４０において、ＢＭＣは、状態ＢＭＣ−ＳＴを”１”から”０”に変更する。
【０１２６】
次に、ステップＳ１４２において、ＢＭＣは、管理ボードＭＭＢからの電源の遮断の指示に基づいて、全てのパーティションＰＴ０−ＰＴ３の電源を遮断する。次に、ステップＳ１４４において、ＢＭＣは、管理ボードＭＭＢからの指示に基づいて、領域管理テーブルＮＶＴＢＬの状態ＭＭＢ−ＳＴを”１”から”０”に変更する。次に、ステップＳ１４６において、ＢＭＣは、管理ボードＭＭＢから受信したＢＩＯＳＩＮＦ情報を新規のＢＩＯＳＩＮＦ領域に格納し、ＢＩＯＳＩＮＦ領域の切り替え処理を終了する。この後、ＢＭＣは、システムボードＳＢに搭載されるＣＰＵ等の動作を管理する処理を実行する。
【０１２７】
図２５および図２６は、図３に示す情報処理システムＳＹＳ２において管理ボードＭＭＢが実行する処理の一例を示す。図２６は、図２５に示す処理の続きを示す。図２５に示す処理は、管理ボードＭＭＢが起動されることにより開始される。図２５および図２６は、情報処理システムＳＹＳ２の制御方法および制御プログラムの一例を示す。図８から図１０に示す処理と同様の処理については、詳細な説明は省略する。
【０１２８】
まず、ステップＳ２００において、管理ボードＭＭＢは、各システムボードＳＢのＢＭＣに再起動を指示する。次に、ステップＳ２０２において、管理ボードＭＭＢは、各システムボードＳＢとの間の通信を確立する。次に、ステップＳ２０４において、管理ボードＭＭＢは、各パーティションＰＴのＢＭＣから領域管理テーブルＮＶＴＢＬを取得する。
【０１２９】
ステップＳ２０６において、管理ボードＭＭＢは、各パーティションＰＴのＢＭＣから取得した領域管理テーブルＮＶＴＢＬの状態ＢＭＣ−ＳＴが”１”か否かを判定する。状態ＢＭＣ−ＳＴが”１”の場合、ＢＩＯＳＩＮＦ領域の切り替え処理を実行するために、処理はステップＳ２０８に移行され、状態ＢＭＣ−ＳＴが”１”でない場合、ＢＩＯＳＩＮＦ領域の切り替え処理を実施しないため、処理は終了される。ステップＳ２０８において、管理ボードＭＭＢは、全てのシステムボードＳＢの状態ＢＭＣ−ＳＴが”１”になった場合、ハードウェア構成テーブルＨＷＴＢＬを退避する。次に、ステップＳ２１０において、管理ボードＭＭＢは、ハードウェア構成テーブルＨＷＴＢＬを図１４に太枠で示すように基本構成に設定する。
【０１３０】
次に、ステップＳ２１２において、管理ボードＭＭＢは、構成変更のあるホームシステムボードＳＢに対して、不揮発性メモリＮＶＭＭに保持しているＢＩＯＳＩＮＦ情報、ＢＭＣＩＮＦ情報に転送し、ＢＩＯＳＩＮＦ情報、ＢＭＣＩＮＦ情報の置き換えを指示する。ステップＳ２１２以降の処理は、パーティションＰＴ毎に実行される。次に、ステップＳ２１４において、管理ボードＭＭＢは、ＢＭＣに領域管理テーブルＮＶＴＢＬの状態ＭＭＢ−ＳＴを”０”から”１”に変更する指示を発行する。次に、ステップＳ２１６において、管理ボードＭＭＢは、不揮発性メモリＮＶＭＭに保持された各パーティションＰＴ０−ＰＴ３に対応するＰＴＩＮＦ０領域−ＰＴＩＮＦ３領域に含まれる既存のＢＩＯＳＩＮＦ情報を削除する。
【０１３１】
次に、ステップＳ２１８において、管理ボードＭＭＢは、ステップＳ２０４で取得した領域管理テーブルＮＶＴＢＬに基づいて、ＰＴＩＮＦ０領域−ＰＴＩＮＦ３領域の各々に新規のＢＩＯＳＩＮＦ領域を作成する。そして、管理ボードＭＭＢは、作成した新規のＢＩＯＳＩＮＦ領域のデータを”０ｘＦＦ”に初期化する。次に、ステップＳ２２０において、管理ボードＭＭＢは、パーティションＰＴのＢＭＣに電源の投入を指示する。
【０１３２】
次に、図２６に示すステップＳ２２２において、管理ボードＭＭＢは、Variable Reclaimにより抽出された有効なＢＩＯＳ設定情報をＢＭＣから受信したか否かを判定する。有効なＢＩＯＳ設定情報を受信した場合、処理はステップＳ２２４に移行され、有効なＢＩＯＳ設定情報を受信しない場合、処理はステップＳ２２６に移行される。ステップＳ２２４において、管理ボードＭＭＢは、ＢＭＣから受信した有効なＢＩＯＳ設定情報を、ＢＭＣが属するパーティションＰＴに対応するＰＴＩＮＦ領域の新規のＢＩＯＳＩＮＦ領域に格納する。すなわち、各システムボードＳＢの不揮発性メモリＮＶＭＳに格納された有効なＢＩＯＳ設定情報が、管理ボードＭＭＢの不揮発性メモリＮＶＭＭにバックアップされる。
【０１３３】
ステップＳ２２６において、管理ボードＭＭＢは、ＢＭＣから領域管理テーブルＮＶＴＢＬを取得する。次に、ステップＳ２２８において、管理ボードＭＭＢは、ＢＭＣから取得した領域管理テーブルＮＶＴＢＬの状態ＢＭＣ−ＳＴが”０”か否かを判定する。状態ＢＭＣ−ＳＴが”０”の場合、ＢＭＣによるＢＩＯＳＩＮＦ領域の切り替え処理が完了したと判断され、処理はステップＳ２３０に移行される。状態ＢＭＣ−ＳＴが”０”でない場合、ＢＭＣによるＢＩＯＳＩＮＦ領域の切り替え処理が実行中であると判断され、処理はステップＳ２２２に戻される。
【０１３４】
ステップＳ２３０において、管理ボードＭＭＢは、パーティションＰＴの電源の遮断をＢＭＣに指示する。次に、ステップＳ２３２において、管理ボードＭＭＢは、状態ＭＭＢ−ＳＴの”１”から”０”への変更をＢＭＣに指示する。次に、ステップＳ２３４において、管理ボードＭＭＢは、全てのパーティションＰＴ（すなわち、全てのシステムボードＳＢ）の電源が遮断されたか否かを判定する。全てのパーティションＰＴの電源が遮断された場合、処理はステップＳ２３６に移行され、電源が遮断されていないパーティションＰＴが存在する場合、ステップＳ２３４の判定を繰り返す。
【０１３５】
ステップＳ２３６において、管理ボードＭＭＢは、ハードウェア構成テーブルＨＷＴＢＬを待避した構成に戻す。次に、ステップＳ２３８において、管理ボードＭＭＢは、不揮発性メモリＮＶＭＭに保持しているＢＩＯＳＩＮＦ情報を新規のＢＩＯＳＩＮＦ領域に格納する指示を、パーティションＰＴのホームシステムボードＳＢのＢＭＣに発行する。また管理ボードＭＭＢは、パーティションＰＴのホームシステムボードＳＢのＢＭＣに対して、不揮発性メモリＮＶＭＭに保持しているＢＭＣＩＮＦ情報を、ＢＭＣＩＮＦ領域に格納する指示を発行する。そして、管理ボードＭＭＢは、全てのパーティションＰＴに対してステップＳ２３８までの処理が完了した場合、ＢＩＯＳＩＮＦ領域の切り替え処理を終了する。この後、管理ボードＭＭＢは、情報処理システムＳＹＳ２の全体を管理する処理を実行する。
【０１３６】
図２７は、図３に示す情報処理システムＳＹＳ２においてＢＩＯＳが実行する処理の一例を示す。図２７に示す処理は、ＢＭＣのファームウェアＢＭＣＦＷがパーティションＰＴの電源を投入したことに基づいて開始される。図８から図１０に示す処理と同様の処理については、詳細な説明は省略する。
【０１３７】
まず、ステップＳ３００において、ＢＩＯＳは、ＰＯＳＴを開始する。次に、ステップＳ３０２において、ＢＩＯＳは、ＢＭＣから領域管理テーブルＮＶＴＢＬを取得する。次に、ステップＳ３０４において、ＢＩＯＳは、各パーティションＰＴのＢＭＣから取得した領域管理テーブルＮＶＴＢＬの状態ＭＭＢ−ＳＴ、ＢＭＣ−ＳＴがともに”１”か否かを判定する。状態ＭＭＢ−ＳＴ、ＢＭＣ−ＳＴがともに”１”の場合、処理はステップＳ３０６に移行され、状態ＭＭＢ−ＳＴ、ＢＭＣ−ＳＴがともに”０”の場合、処理はステップＳ３１６に移行される。
【０１３８】
なお、正常な動作状態では、状態ＭＭＢ−ＳＴ、ＢＭＣ−ＳＴの論理値が互いに異なることはない。このため、ＢＩＯＳは、状態ＭＭＢ−ＳＴ、ＢＭＣ−ＳＴの論理値が互いに異なることを検出した場合、エラー通知をＢＭＣに発行する。エラー通知を受けたＢＭＣは、その後のＢＩＯＳＩＮＦ領域の切り替え処理を停止し、管理ボードＭＭＢに切り替え処理の停止を通知する。例えば、切り替え処理の停止の通知を受けた管理ボードＭＭＢは、パーティションＰＴの電源の遮断をＢＭＣに指示した後、図９の最初に示す処理を再度開始する。なお、上述したように、正常な動作状態では、状態ＭＭＢ−ＳＴ、ＢＭＣ−ＳＴの論理値が互いに異なることはない。このため、ＢＩＯＳは、状態ＢＭＣ−ＳＴのみを検出し、状態ＢＭＣ−ＳＴが”１”の場合に処理をステップＳ３０６に移行し、状態ＢＭＣ−ＳＴが”０”の場合に処理をステップＳ３１６に移行してもよい。
【０１３９】
ステップＳ３０６において、ＢＩＯＳは、ＢＩＯＳＩＮＦ領域の切り替え処理に伴うVariable Reclaimを実行するため、ＰＯＳＴを中断し、領域管理テーブルＮＶＴＢＬの状態ＢＩＯＳ−ＳＴを”０”から”１”に変更する指示をＢＭＣに発行する。次に、ステップＳ３０８において、ＢＩＯＳは、Variable Reclaimを実行する。Variable Reclaimの処理の例は、図２８に示される。
【０１４０】
次に、ステップＳ３１０において、ＢＩＯＳは、既存のＢＩＯＳＩＮＦ領域から新規のＢＩＯＳＩＮＦ領域にＢＩＯＳ設定情報を複写するため、領域管理テーブルＮＶＴＢＬの状態ＢＩＯＳ−ＳＴを”１”から”２”に変更する指示をＢＭＣに発行する。次に、ステップＳ３１２において、ＢＩＯＳは、既存のＢＩＯＳＩＮＦ領域から新規のＢＩＯＳＩＮＦ領域にＢＩＯＳ設定情報を複写する指示をＢＭＣに発行する。次に、ステップＳ３１４において、ＢＩＯＳは、ＢＩＯＳ設定情報の複写の完了後、領域管理テーブルＮＶＴＢＬの状態ＢＩＯＳ−ＳＴを”２”から”０”に変更する指示をＢＭＣに発行する。この後、ＢＩＯＳは、図２４のステップＳ１４２によるパーティションＰＴの電源の遮断に伴い停止される。
【０１４１】
一方、ＢＩＯＳＩＮＦ領域の切り替え処理を実行しない場合、ステップＳ３１６において、ＢＩＯＳは、ＢＩＯＳＩＮＦ領域の空き容量が所定量以下か否かを判定する。ＢＩＯＳＩＮＦ領域の空き容量が所定量以下の場合、処理はステップＳ３１８に移行され、ＢＩＯＳＩＮＦ領域の空き容量が所定量より大きい場合、処理は終了する。ステップＳ３１８において、ＢＩＯＳは、Variable Reclaimを実行し、処理を終了する。この後、ＢＩＯＳは、ＢＩＯＳ起動時の他の処理を実行する。
【０１４２】
図２８は、図２７に示すVariable Reclaim処理の一例を示す。図２８に示す処理は、ＢＩＯＳにより実行される。
【０１４３】
まず、ステップＳ４００において、ＢＩＯＳは、不揮発性メモリＮＶＭＳ内のＢＩＯＳＩＮＦ領域のＢＩＯＳ設定情報の保存用のバンクＢＫから有効なＢＩＯＳ設定情報を抽出する。例えば、保存用のバンクＢＫは、図４に示すＢＫ０である。次に、ステップＳ４０２において、ＢＩＯＳは、抽出した有効なＢＩＯＳ設定情報を整理用のバンクＢＫに格納する。例えば、整理用のバンクＢＫは、図４に示すＢＫ１である。次に、ステップＳ４０４において、ＢＩＯＳは、有効なＢＩＯＳ設定情報の抽出が完了したか否かを判定する。有効なＢＩＯＳ設定情報の抽出が完了した場合、処理はステップＳ４０６に移行され、有効なＢＩＯＳ設定情報の抽出が完了していない場合、処理はステップＳ４００に戻される。
【０１４４】
ステップＳ４０６において、ＢＩＯＳは、保存用のバンクＢＫのデータを消去する。次に、ステップＳ４０８において、ＢＩＯＳは、整理用のバンクＢＫに格納された有効なＢＩＯＳ設定情報を保存用のバンクＢＫに格納する。次に、ステップＳ４１０において、ＢＩＯＳは、有効なＢＩＯＳ設定情報の保存用のバンクＢＫへの格納が完了したか否かを判定する。有効なＢＩＯＳ設定情報の保存用のバンクＢＫへの格納が完了した場合、処理は終了し、有効なＢＩＯＳ設定情報の保存用のバンクＢＫへの格納が完了していない場合、処理はステップＳ４０８に戻される。
【０１４５】
図２９は、図３に示す情報処理システムＳＹＳ２の初回の動作の一例を示す。初回の動作は、情報処理システムＳＹＳ２を製造するメーカの組立工程で実行され、あるいは、情報処理システムＳＹＳ２を出荷前の状態に戻すfactory default処理後に実行される。
【０１４６】
まず、ファームウェアＭＭＢＦＷは、情報処理システムＳＹＳ２への電源の投入に基づいて、各システムボードＳＢのＢＭＣが実行するファームウェアＢＭＣＦＷに再起動を指示する（図２９（ａ））。ファームウェアＢＭＣＦＷは、起動指示に基づいて、領域管理テーブルＮＶＴＢＬを参照し、既存のバンク数ＢＩＯＳＢＫＮと、ファームウェアＢＭＣＦＷが要求するＢＩＯＳＩＮＦ情報を保持するための新たなバンクＢＫの数とを比較する。しかしながら、初回の動作では領域管理テーブルＮＶＴＢＬが存在しないため、ファームウェアＢＭＣＦＷは、ファームウェアＢＭＣＦＷに記述されたバンクＢＫの仕様に基づいて、領域管理テーブルＮＶＴＢＬとアドレス管理テーブルＡＤＴＢＬとを作成する（図２９（ｂ））。次に、ファームウェアＢＭＣＦＷは、領域管理テーブルＮＶＴＢＬに基づいて、ＢＩＯＳＩＮＦ領域とＢＭＣＩＮＦ領域とを作成し、ＢＩＯＳＩＮＦ領域とＢＭＣＩＮＦ領域とを”０ｘＦＦ”で初期化する（図２９（ｃ））。
【０１４７】
一方、管理ボードＭＭＢの不揮発性メモリＮＶＭＭに保持されたハードウェア構成テーブルＨＷＴＢＬは、図５に示す出荷時の状態である（図２９（ｄ））。ファームウェアＭＭＢＦＷは、外部からのパーティションＰＴの生成要求に基づいて、ハードウェア構成テーブルＨＷＴＢＬに情報を設定する（図２９（ｅ））。例えば、ファームウェアＭＭＢＦＷは、パーティションＰＴ０にシステムボードＳＢ０を割り当てる。
【０１４８】
ファームウェアＭＭＢＦＷは、パーティションＰＴ０のホームシステムボードＳＢ０から領域管理テーブルＮＶＴＢＬとアドレス管理テーブルＡＤＴＢＬとを取得する（図２９（ｆ））。ファームウェアＭＭＢＦＷは、パーティションＰＴ０から取得した情報に基づいて、不揮発性メモリＮＶＭＭ内のＰＴＩＮＦ０領域にＢＩＯＳＩＮＦ領域とＢＭＣＩＮＦ領域とを作成し、”０ｘＦＦ”で初期化する（図２９（ｇ））。この後、情報処理システムＳＹＳ２の電源が遮断され、情報処理システムＳＹＳ２の初回の動作が完了する。
【０１４９】
図３０は、図３に示す情報処理システムＳＹＳ２において、パーティションＰＴの電源が投入された場合の動作の一例を示す。まず、ファームウェアＭＭＢＦＷは、所定のパーティションＰＴに電源の投入を指示する（図３０（ａ））。電源の投入が指示されたパーティションＰＴのファームウェアＢＭＣＦＷは、パーティションＰＴの電源を投入し、ＢＩＯＳが起動される（図３０（ｂ））。
【０１５０】
ＢＩＯＳは、ファームウェアＢＭＣＦＷを介して不揮発性メモリＮＶＭＳから領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬを取得する（図３０（ｃ））。そして、ＢＩＯＳは、領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬに基づいて、不揮発性メモリＮＶＭＳのＢＩＯＳＩＮＦ領域にアクセスし、ＢＩＯＳＩＮＦ情報を取得する（図３０（ｄ））。
【０１５１】
図３０に示す例では、ＢＩＯＳの起動中に、外部からＢＩＯＳ設定情報の変更が指示され、ＢＩＯＳは、ＢＩＯＳ設定情報の変更をファームウェアＢＭＣＦＷに指示する（図３０（ｅ）、（ｆ））。ファームウェアＢＭＣＦＷは、ＢＩＯＳからの指示に基づいてＢＩＯＳＩＮＦ領域を更新する（図３０（ｇ））。さらに、ファームウェアＢＭＣＦＷは、管理ボードＭＭＢの不揮発性メモリＮＶＭＭ内のＢＩＯＳＩＮＦ領域を更新する指示をファームウェアＭＭＢＦＷに発行する（図３０（ｈ））。ファームウェアＭＭＢＦＷは、ファームウェアＢＭＣＦＷからの指示に基づいて、不揮発性メモリＮＶＭＭ内のＢＩＯＳＩＮＦ領域を更新する（図３０（ｉ））。これにより、システムボードＳＢ内のＢＩＯＳＩＮＦ情報と管理ボードＭＭＢ内のＢＩＯＳＩＮＦ情報とが互いに一致する。
【０１５２】
図３１は、図３に示す情報処理システムＳＹＳ２において、システムボードＳＢが交換される場合の動作の一例を示す。以下では、図５のハードウェア構成テーブルＨＷＴＢＬに示すパーティションＰＴの構成において、パーティションＰＴ１のシステムボードＳＢ２が故障した場合に、システムボードＳＢ３に交換される例について説明する。
【０１５３】
まず、ファームウェアＭＭＢＦＷは、外部からのシステムボードＳＢの交換の指示に基づいて、ハードウェア構成テーブルＨＷＴＢＬを更新し、ホームシステムボードＳＢをシステムボードＳＢ２からシステムボードＳＢ３に変更する（図３１（ａ）、（ｂ））。次に、ファームウェアＭＭＢＦＷは、不揮発性メモリＮＶＭＭにおいて、パーティションＰＴ１に対応するＰＴＩＮＦ１領域に保持されたＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報をシステムボードＳＢ３のファームウェアＢＭＣＦＷに転送する（図３１（ｃ））。
【０１５４】
システムボードＳＢ３のファームウェアＢＭＣＦＷは、転送されたＢＩＯＳＩＮＦ情報で不揮発性メモリＮＶＭＳ内のＢＩＯＳＩＮＦ領域を書き替え、転送されたＢＭＣＩＮＦ情報で不揮発性メモリＮＶＭＳ内のＢＭＣＩＮＦ領域を書き替える（図３１（ｄ））。
【０１５５】
不揮発性メモリＮＶＭＳが書き替えられた後、ファームウェアＭＭＢＦＷは、パーティションＰＴ１のシステムボードＳＢ３のファームウェアＢＭＣＦＷに電源の投入を指示する（図３１（ｅ））。システムボードＳＢ３のファームウェアＢＭＣＦＷは、電源の投入の指示に基づいて、パーティションＰＴ１の電源を投入し、ＢＩＯＳが起動される（図３１（ｆ））。
【０１５６】
ＢＩＯＳは、ファームウェアＢＭＣＦＷを介して不揮発性メモリＮＶＭＳから領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬを取得する（図３１（ｇ））。そして、ＢＩＯＳは、領域管理テーブルＮＶＴＢＬおよびアドレス管理テーブルＡＤＴＢＬに基づいてＢＩＯＳＩＮＦ領域にアクセスし、ＢＩＯＳＩＮＦ情報を取得する（図３１（ｈ））。これにより、故障前にシステムボードＳＢ２で使用されていたＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報が、システムボードＳＢ３に引き継がれる。
【０１５７】
以上、図３から図３１に示す実施形態においても、図１および図２に示す実施形態と同様の効果を得ることができる。例えば、情報処理システムＳＹＳ２を出荷前の状態（factory default）に戻すことなく、全てのシステムボードＳＢのＢＩＯＳＩＮＦ領域のサイズを変更することができる。すなわち、パーティションＰＴに設定された情報を失うことなく、システムボードＳＢ内の電子部品ＥＰのＢＩＯＳ設定情報を保持するＢＩＯＳＩＮＦ領域のサイズを変更することができる。人手を介することなくＢＩＯＳＩＮＦ領域のサイズを変更できるため、消失した情報を復元する手間がなくなり、人為的な設定ミスを抑止することができる。サイズが変更されたＢＩＯＳＩＮＦ領域を、管理ボードＭＭＢの不揮発性メモリＮＶＭＭ内のＰＴＩＮＦ領域に反映することで、その後にＢＩＯＳにより変更されたＢＩＯＳ設定情報をＰＴＩＮＦ領域にバックアップすることができる。
【０１５８】
さらに、図３から図３１に示す実施形態では、以下の効果を得ることができる。すなわち、ＢＩＯＳＩＮＦ領域のサイズの切り替え時に、ＢＩＯＳは、既存のＢＩＯＳＩＮＦ領域と、新規のＢＩＯＳＩＮＦ領域との両方にアクセスすることができる。したがって、ＢＩＯＳは、既存のＢＩＯＳＩＮＦ情報を用いてVariable Reclaimを実行し、有効なＢＩＯＳ設定情報を抽出することができ、抽出したＢＩＯＳ設定情報を新規に割り当てたＢＩＯＳＩＮＦ領域に格納することができる。
【０１５９】
領域管理テーブルＮＶＴＢＬに状態ＢＭＣ−ＳＴを保持する領域を設けることで、ファームウェアＭＭＢＦＷは、ファームウェアＢＭＣＦＷによるＢＩＯＳＩＮＦ領域の切り替え処理の実行を検出することができる。このため、ファームウェアＢＭＣＦＷと連携して、ＢＩＯＳＩＮＦ領域の切り替え処理を実行することができる。また、領域管理テーブルＮＶＴＢＬに状態ＢＭＣ−ＳＴを保持する領域を設けることで、ＢＩＯＳは、ファームウェアＢＭＣＦＷによるＢＩＯＳＩＮＦ領域の切り替え処理の実行を検出することができる。このため、ＢＩＯＳは、ＢＩＯＳＩＮＦ領域の切り替え処理に伴って実行するVariable Reclaimの開始タイミングを検出することができる。
【０１６０】
Variable Reclaimの実行中に”１”を示す状態ＢＩＯＳ−ＳＴを領域管理テーブルＮＶＴＢＬに保持することで、ファームウェアＢＭＣＦＷは、ＢＩＯＳによるVariable Reclaimの実行を検出することができる。また、ＢＩＯＳ設定情報の複写中に”２”を示す状態ＢＩＯＳ−ＳＴを領域管理テーブルＮＶＴＢＬに保持することで、ファームウェアＢＭＣＦＷは、複写用にＢＩＯＳから転送されたＢＩＯＳ設定情報をファームウェアＭＭＢＦＷに転送することができる。
【０１６１】
基本構成のハードウェア構成テーブルＨＷＴＢＬにより各パーティションＰＴにシステムボードＳＢを１つずつ割り当てることで、全てのシステムボードＳＢに、ＢＩＯＳＩＮＦ情報およびＢＭＣＩＮＦ情報を設定することができる。これにより、例えば、システムボードＳＢ３のＢＩＯＳＩＮＦ領域およびＢＭＣＩＮＦ領域に過去に保持された無効なデータＤＴ３０、ＤＴ３１（図１３）を削除することができる。
【０１６２】
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
【符号の説明】
【０１６３】
ＡＤＴＢＬ…アドレス管理テーブル；ＡＬＣ…割り当て部；ＢＩＯＳＢＫＮ…バンク数；ＢＩＯＳＩＮＦ…ＢＩＯＳ情報；ＢＩＯＳ−ＳＴ…状態；ＢＫ…バンク；ＢＫ０ＳＺ−ＢＫ６ＳＺ…バンクサイズ；ＢＭＣＢＫＮ…バンク数；ＢＭＣＦＷ…ファームウェア；ＢＭＣＩＮＦ…ＢＭＣ情報；ＢＭＣ−ＳＴ…状態；ＳＴＲ…格納部；ＤＥＬ…削除部；ＥＰ…電子部品；ＨＷＴＢＬ…ハードウェア構成テーブル；ＩＯＳＷ…入出力スイッチ；ＩＯＵ…入出力ユニット；ＭＭ…メインメモリ；ＭＭＢ…管理ボード；ＭＭＢＦＷ…ファームウェア；ＭＭＢ−ＳＴ…状態；ＮＶＭＭ、ＮＶＭＳ…不揮発性メモリ；ＮＶＴＢＬ…領域管理テーブル；ＰＴ…パーティション；ＰＴＩＮＦ…パーティション情報；ＳＢ…システムボード；ＳＹＳ１、ＳＹＳ２…情報処理システム；ＴＳＮＳ…温度センサ
【図１】
2018060316.tif 000003
【図２】
2018060316.tif 000004
【図３】
2018060316.tif 000005
【図４】
2018060316.tif 000006
【図５】
2018060316.tif 000007
【図６】
2018060316.tif 000008
【図７】
2018060316.tif 000009
【図８】
2018060316.tif 000010
【図９】
2018060316.tif 000011
【図１０】
2018060316.tif 000012
【図１１】
2018060316.tif 000013
【図１２】
2018060316.tif 000014
【図１３】
2018060316.tif 000015
【図１４】
2018060316.tif 000016
【図１５】
2018060316.tif 000017
【図１６】
2018060316.tif 000018
【図１７】
2018060316.tif 000019
【図１８】
2018060316.tif 000020
【図１９】
2018060316.tif 000021
【図２０】
2018060316.tif 000022
【図２１】
2018060316.tif 000023
【図２２】
2018060316.tif 000024
【図２３】
2018060316.tif 000025
【図２４】
2018060316.tif 000026
【図２５】
2018060316.tif 000027
【図２６】
2018060316.tif 000028
【図２７】
2018060316.tif 000029
【図２８】
2018060316.tif 000030
【図２９】
2018060316.tif 000031
【図３０】
2018060316.tif 000032
【図３１】
2018060316.tif 000033