(57)【要約】【課題】サーバ・システム稼働時にファームウェアの書き込みを行うことを可能とし，且つファームウェアアップデート時のシステム停止時間を最小限に抑えるファームウェアデータのアップデート方法及び，これを適用するサーバ・システムを提供する。【解決手段】計算機サーバ・システムにおけるファームウェアアップデート方法であって，システム稼働状態でサウスブリッジからフラッシュメモリへのアクセスを切断し、端末からの更新されるファームウェアを，ベースボード・マネージメントコントローラを経由して前記フラッシュメモリに書き込み，その後，再起動を行う。【選択図】  図３
2006260058.tif 000002
【特許請求の範囲】
【請求項１】
計算機サーバ・システムにおけるファームウェアアップデート方法であって，
システム稼働状態でサウスブリッジからフラッシュメモリへのアクセスを切断し、
端末からの更新されるファームウェアを，ベースボード・マネージメントコントローラを経由して前記フラッシュメモリに書き込み，
その後，再起動を行う
ことを特徴とするファームウェアアップデート方法。
【請求項２】
請求項１において，
前記サウスブリッジからフラッシュメモリへのアクセスを切断する際に，前記ベースボード・マネージメントコントローラから前記サウスブリッジ経由でＣＰＵに割り込みを行い，前記フラッシュメモリへのアクセスの禁止することを特徴とするファームウェアアップデート方法。
【請求項３】
予備側のベースボード・マネージメントコントローラを経由して対応する予備側のフラッシュメモリに，端末からの更新されるファームウェアデータを書き込み，
再起動の際に，前記予備側のベースボード・マネージメントコントローラと前記対応する予備側のフラッシュメモリを現用側に切り換えて再起動を行うことを特徴とするファームウェアアップデート方法。
【請求項４】
フラッシュメモリに格納されるファームウェアにより起動されるサーバ・システムであって，
ＣＰＵと，
サウスブリッジと，
フラッシュメモリと，
前記サウスブリッジとフラッシュメモリの間の接続を開閉するスイッチと，
前記サウスブリッジとフラッシュメモリに接続されたベースボード・マネージメントコントローラを有し，
前記フラッシュメモリのファームウェアのアップデートを行う際，
前記ベースボード・マネージメントコントローラから前記サウスブリッジを通して，前記ＣＰＵに割り込みを行って，前記フラッシュメモリへのアクセスを禁止し，
さらに，前記ベースボード・マネージメントコントローラを経由して端末からの更新されるファームウェアを，前記フラッシュメモリに書き込み，その後，再起動を行う
ことを特徴とするサーバ・システム。
【請求項５】
請求項４において，
更に前記ベースボード・マネージメントコントローラを制御するマネージメントボードを有し，
前記フラッシュメモリのファームウェアのアップデートを行う際に，前記マネージメントボードにより前記スイッチを制御して前記サウスブリッジとフラッシュメモリとの間の接続を否接続にすることを特徴とするサーバ・システム。
【発明の詳細な説明】
【技術分野】
【０００１】
計算機サーバ・システムには，接続されているディスクやキーボード、グラフィックスなどのデバイスをコントロールするプログラム群であるＢＩＯＳ（Basic Input Output System ）や，システムの構成情報を保持するファームウェアを格納するフラッシュメモリを有している。計算機サーバ・システム（以下，単にサーバ・システムという）の性能変更時に，このファームウェアを更新（アップデート）することが必要となる。
【０００２】
図１及び図２は，従来のサーバ・システム構成と，ファームウェアアップデート時の処理フローを示す図である。
【０００３】
ＣＰＵ１は，チップセットを構成する一方のノースブリッジ２を通してＰＣＩバス３に接続されている。さらに，チップセットを構成する他方のサウスブリッジ４を通してＣＰＵ１は，フラッシュメモリ５に接続される。さらに，レガシーＩ／Ｏインターフェース６がＰＣＩバス３に接続されている。
【０００４】
サウスブリッジ４には，ベースボードマネージメントコントローラ（ＢＭＣ）７が接続されている。ベースボードマネージメントコントローラ（ＢＭＣ）７は，サーバ・システムを単一ユニットとして管理するための中心機能を果たすサーバ管理用チップであり，ハードウエア障害等のためにＯＳ（オペレーティングシステム）がダウンした際にも，障害通信機能等を有している。
【０００５】
サーバ・システムがパーティションされ，複数システムを有する場合は，これに対応して複数のベースボードマネージメントコントローラ（ＢＭＣ）７が供えられる。
【０００６】
さらに，端末９に対する，１＊＊＊Ｂａｓｅ−Ｔ，ＲＳ２３２Ｃ等のインターフェース機能を有し，複数のベースボードマネージメントコントローラ（ＢＭＣ）７を管理するマネージメントボード（ＭＭＢ）８を有する。
【０００７】
かかる構成のサーバ・システムにおいて，フラッシュメモリ５に格納されているファームウェアのアップデートを行う場合，図２の処理フローに従って，次のような処理が行われている。
【０００８】
従来の方法では，サーバ・システムを一旦停止（シャットダウン）する（ステップＳ１）。そして，サウスブリッジ４は、通常システム稼働状態でフラッシュメモリ５内のファームウェアの読み込みを行っているが，アップデート用のファームウェアデータがフレキシブルデスク等の記録媒体１０に格納されている場合，対応するフレキシブルデスクドライブ等の端末９によりアップデート用のファームウェアデータを読み込んでシステムを起動する（ステップＳ２）。
【０００９】
読み込まれたアップデート用ファームウェアは，ＣＰＵ１を経由し，ノースブリッジ２，サウスブリッジ４を経由（図１において，破線矢印で示している）して，フラッシュメモリ５に書き込まれる（ステップＳ３）。その後，再起動され（ステップＳ４），通常運用状態に入る。したがって，従来方法では，再起動までの間，サーバ・システムは停止した状態が継続される。
【００１０】
このように，ファームウェアデータのアップデートの際にサーバ・システムを一旦停止した状態にさせることが必要である。したがって，システム規模が大きくなる程，大きな影響を与えることになる。
【００１１】
かかるファームウェアデータあるいは，制御プログラムのアップデートに関連する技術として，例えば，特許文献１に記載の発明がある。この発明は，フラッシュＲＯＭに格納された制御プログラムを実行中に，更新すべき制御プログラムを別に用意されるＲＡＭに待避格納し，後に再立ち上げの際に，更新された制御プログラムを有効とするものである。
【００１２】
また，特許文献２に記載の発明は，ホストコンピュータからダウンロードされるプログラムの書き込みに関する発明である。ダウンロードが中断された際に，通信コプロセッサが，メインプロセッサを強制リセットして，メインプロセッサを介さずに通信コプロセッサによりフラッシュメモリにダウンロードするものである。
【特許文献１】特開２００３−３３０６５５号公報
【特許文献２】特開２００１−２７９５４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
上記図１，図２に関して説明したサーバ・システムにおけるファームウェアデータのアップデートでは，アップデートの際，システムを一旦停止することが必要である。また，特許文献１に記載の発明では，実行中の制御プログラムは継続実行されるが，待避用のメモリを用意することが必要である。また，特許文献２に記載の発明では，メインプロセッサを強制的にリセットしてプログラムのアップデートを行うものであり，結局システムの中断が必要である。
【００１４】
さらに，特許文献１，２に記載の発明は，サーバ・システムに関係しないものであり，いずれの特許文献もサーバ・システムのファームウェアデータのアップデートを短時間で可能とすることを示唆するものではない。
【００１５】
したがって，本願発明の目的は，サーバ・システム稼働時にファームウェアの書き込みを行うことを可能とし，且つファームウェアアップデート時のシステム停止時間を最小限に抑えるファームウェアデータのアップデート方法及び，これを適用するサーバ・システムを提供することにある。
【課題を解決するための手段】
【００１６】
上記本発明に目的を達成するファームウェアアップデート方法の第１の態様は，システム稼働状態でサウスブリッジからフラッシュメモリへのアクセスを切断し、端末からの更新されるファームウェアを，ベースボード・マネージメントコントローラを経由して前記フラッシュメモリに書き込み，その後，再起動を行うことを特徴とする。
【００１７】
上記本発明に目的を達成するファームウェアアップデート方法の第２の態様は，第１の態様において，前記サウスブリッジからフラッシュメモリへのアクセスを切断する際に，前記ベースボード・マネージメントコントローラから前記サウスブリッジ経由でＣＰＵに割り込みを行い，前記フラッシュメモリへのアクセスの禁止することを特徴とする。
【００１８】
上記本発明に目的を達成するファームウェアアップデート方法の第３の態様は，予備側のベースボード・マネージメントコントローラを経由して対応する予備側のフラッシュメモリに，端末からの更新されるファームウェアデータを書き込み，再起動の際に，前記予備側のベースボード・マネージメントコントローラと前記対応する予備側のフラッシュメモリを現用側に切り換えて再起動を行うことを特徴とする。
【００１９】
上記本発明に目的を達成するサーバ・システムは，第１の態様として，フラッシュメモリに格納されるファームウェアにより起動されるサーバ・システムであって，ＣＰＵと，サウスブリッジと，フラッシュメモリと，前記サウスブリッジとフラッシュメモリの間の接続を開閉するスイッチと，前記サウスブリッジとフラッシュメモリに接続されたベースボード・マネージメントコントローラを有し，前記フラッシュメモリのファームウェアのアップデートを行う際，前記ベースボード・マネージメントコントローラから前記サウスブリッジを通して前記ＣＰＵに割り込みを行って，前記フラッシュメモリへのアクセスを禁止し，さらに，前記ベースボード・マネージメントコントローラを経由して端末からの更新されるファームウェアを，前記フラッシュメモリに書き込み，その後，再起動を行うことを特徴とする。
【００２０】
上記本発明に目的を達成するサーバ・システムは，第２の態様として，その第１の態様において，更に前記ベースボード・マネージメントコントローラを制御するマネージメントボードを有し，前記フラッシュメモリのファームウェアのアップデートを行う際に，前記マネージメントボードにより前記スイッチを制御して前記サウスブリッジとフラッシュメモリとの間の接続を否接続にすることを特徴とする。
【００２１】
上記本発明に目的を達成するサーバ・システムは，第３の態様として，その第１の態様において，前記フラッシュメモリとこれに接続されたベースボード・マネージメントコントローラは，パーティションに区分された複数のシステムの一システムに対応するものであることを特徴とする。
【００２２】
上記本発明に目的を達成するサーバ・システムは，第４の態様として，フラッシュメモリに格納されるファームウェアにより起動されるサーバ・システムであって，ＣＰＵと，サウスブリッジと，現用と予備用のフラッシュメモリと，前記サウスブリッジと前記現用と予備用のフラッシュメモリとの接続を開閉するスイッチと，前記現用と予備用のフラッシュメモリのそれぞれに接続された現用と予備用のベースボード・マネージメントコントローラを有し，前記フラッシュメモリのファームウェアのアップデートを行う際，前記予備用のベースボード・マネージメントコントローラを通して端末からの更新されるファームウェアを前記予備用のフラッシュメモリに書き込み，再起動時に，前記スイッチにより前記サウスブリッジとの接続を前記現用のフラッシュメモリから前記予備用のフラッシュメモリに切り換え，前記更新されたファームウェアによりシステムの再起動を行うことを特徴とする。
【００２３】
上記本発明に目的を達成するサーバ・システムは，第５の態様として，その第４の態様において，前記第１及び第２のフラッシュメモリとこれに接続された第１及び第２のベースボード・マネージメントコントローラは，パーティションに区分された複数のシステムの一システムに対応するものであることを特徴とする。
【００２４】
本発明の特徴は，以下に図面に従い説明される発明の実施の形態例から更に明らかになる。
【発明の効果】
【００２５】
本発明によりシステム稼働時にファームウェアの書き込みを行うことにより、ファームウェアアップデート時のシステム停止時間を最小限に抑えることが可能となる。さらに、ＣＰＵを介さないことによりＣＰＵ及びノースブリッジにて障害発生時にもフラッシュメモリの書き換えが可能となる。
【００２６】
また、予備のベースボードマネージメントコントローラとフラッシュメモリを備えたシステムにでは，システム稼働状態で予備のベースボードマネージメントコントローラとフラッシュメモリを使用してアップデートを行い、その後バススイッチを切り換えてからリブートすることにより、サウスブリッジからファームウェアへのアクセスを禁止しなくても同様のアップデートが可能となる。
【発明を実施するための最良の形態】
【００２７】
以下に図面に従い，本発明の実施の形態例を説明する。なお，実施の形態例は，本発明の理解のためのものあり，本発明の技術的範囲がこれに限定されるものではない。
【００２８】
図３は，本発明を適用するサーバ・システムの第１の実施の形態例ブロック図である。図４は，対応する本発明方法の実施例動作フローである。
【００２９】
また，図３において，複数のパーティションに区分した複数システムを構成することも可能であるが，一システムのみを示している。
【００３０】
本発明の特徴として，図１の構成に対しマネージメントボード（ＭＭＢ）８により制御されるバススイッチ１４を有している。
【００３１】
なお，図３において示されるバス変換回路１３は，ベースボードマネージメントコントローラ（ＢＭＣ）７におけるバスシステムとフラッシュメモリ５のバスシステムが異なる場合に，これを変換する機能を有する回路である。バス変換回路１３の機能をベースボードマネージメントコントローラ（ＢＭＣ）７内に置く場合は，個別のバス変換回路１３を用意する必要はない。
【００３２】
本発明は，ＯＳに一部機能，ベースボードマネージメントコントローラ（ＢＭＣ）７からサウスブリッジ４に割り込み機能を含めておく必要がある。
【００３３】
図４のフローに従って説明すると，フラッシュメモリ５のアップデートの際は，ユーザからのコマンドによりＯＳに含まれる割り込み機能ＩＲにより，ベースボードマネージメントコントローラ（ＢＭＣ）７からサウスブリッジ４に割り込みを行う（ステップＳ１１）。
【００３４】
同時に，マネージメントボード（ＭＭＢ）８により，サウスブリッジ４とフラッシュメモリ５間のバススイッチ１４を否接続（ＯＦＦ）に設定する（ステップＳ１２）
さらに，ベースボードマネージメントコントローラ（ＢＭＣ）７経由で，フラッシュメモリ５への更新ファームウェアの書き込みを行う（ステップＳ１３）。この時，ベースボードマネージメントコントローラ（ＢＭＣ）７のバスシステムとフラッシュメモリ５のバスシステムがバス交換回路１３により整合される。
【００３５】
ついで，更新ファームウェアの書き込みが完了すると，システムを再起動する（ステップＳ１４）。これにより，以降，更新されたファームウェアによりシステムの運用が可能である。
【００３６】
このように本発明においては，ファームウェアのアップデートに先立ってシステムを停止状態にすることが避けられる。したがって，図１，図２に示した従来のアップデートの方法に比べアップデートに要する時間を短縮することができる。
【００３７】
ここで，図３，図４に示す方法は，アップデートに要する時間を短縮することができるが，アップデート期間中は，フラッシュメモリ５にアクセスができない（図４のフロー参照）。したがって，フラッシュメモリ５にアクセスを必要とするシステム運用部分が制限されることになる。
【００３８】
図５は，かかる欠点を解決する本発明に従う第２の実施の形態例ブロック図である。図６は，対応する本発明方法の実施例動作フローである。
【００３９】
図５に示す実施の形態例は，特徴として，ベースボードマネージメントコントローラ（ＢＭＣ）７と対応するフラッシュメモリ５に対し，予備用のベースボードマネージメントコントローラ（ＢＭＣ）７ａと対応する予備用フラッシュメモリ５ａを有している。
【００４０】
なお，図６においても，複数のパーティションに区分した複数システムを構成することも可能であるが，一システムのみを示している。
【００４１】
図６の処理フローに従って第２の実施の形態例におけるファームウェアのアップデートを説明する。
【００４２】
スイッチ１４は，サウスブリッジ４と第１のフラッシュメモリ（現用フラッシュメモリという）を接続するスイッチＳｗ１と，サウスブリッジ４と第２のフラッシュメモリ（予備用フラッシュメモリという）を接続するスイッチＳｗ２を有している。
【００４３】
システムの稼働状態において，スイッチＳｗ１が閉状態，スイッチＳｗ２が開状態である時，第１のフラッシュメモリ５が現用，第２のフラッシュメモリ５a予備用と考える。
【００４４】
この状態で，端末９によりファームウェア媒体１０から読み込んだ更新するファームウェアを第２のベースボードマネージメントコントローラ（ＢＭＣ）７aを介して予備用即ち，第２のフラッシュメモリ５aに書き込む（ステップＳ２１）。
【００４５】
第２のフラッシュメモリ５aにファームウェアの書き込みを終了すると，次いで，再起動する（ステップＳ２２）。この時，マネージメントボードで８によりスイッチ１４を制御して，スイッチＳｗ１を開状態に，スイッチＳｗ２を閉状態に切り換える。
【００４６】
したがって，第２のフラッシュメモリ５aがサウスブリッジ４に接続される。これにより再起動時は，第２のフラッシュメモリ５aにアップデートされたファームウェアにより起動が行われ，システムの運用が行われる。そして，この時，第１のベースボードマネージメントコントローラ（ＢＭＣ）７及び，第１のファームウェア５は，予備用となる。
【００４７】
かかる第２の実施の形態によれば，システムの稼働中に現用のフラッシュメモリに対するアップデートは行わず，予備用のフラッシュメモリに更新されるファームウェアの書き込みが行われる。再起動時は，更新されたファームウェアを格納する予備用のフラッシュメモリが現用として機能する。かかる第２の実施の形態例によれば，稼働中のシステムへの影響を全く与えることはない。
【００４８】
（付記１）
計算機サーバ・システムにおけるファームウェアアップデート方法であって，
システム稼働状態でサウスブリッジからフラッシュメモリへのアクセスを切断し、
端末からの更新されるファームウェアを，ベースボード・マネージメントコントローラを経由して前記フラッシュメモリに書き込み，
その後，再起動を行う
ことを特徴とするファームウェアアップデート方法。
【００４９】
（付記２）
請求項１において，
前記サウスブリッジからフラッシュメモリへのアクセスを切断する際に，前記ベースボード・マネージメントコントローラから前記サウスブリッジ経由でＣＰＵに割り込みを行い，前記フラッシュメモリへのアクセスの禁止することを特徴とするファームウェアアップデート方法。
【００５０】
（付記３）
予備側のベースボード・マネージメントコントローラを経由して対応する予備側のフラッシュメモリに，端末からの更新されるファームウェアデータを書き込み，
再起動の際に，前記予備側のベースボード・マネージメントコントローラと前記対応する予備側のフラッシュメモリを現用側に切り換えて再起動を行うことを特徴とするファームウェアアップデート方法。
【００５１】
（付記４）
フラッシュメモリに格納されるファームウェアにより起動されるサーバ・システムであって，
ＣＰＵと，
サウスブリッジと，
フラッシュメモリと，
前記サウスブリッジとフラッシュメモリの間の接続を開閉するスイッチと，
前記サウスブリッジとフラッシュメモリに接続されたベースボード・マネージメントコントローラを有し，
前記フラッシュメモリのファームウェアのアップデートを行う際，
前記ベースボード・マネージメントコントローラから前記サウスブリッジを通して，前記ＣＰＵに割り込みを行って，前記フラッシュメモリへのアクセスを禁止し，
さらに，前記ベースボード・マネージメントコントローラを経由して端末からの更新されるファームウェアを，前記フラッシュメモリに書き込み，その後，再起動を行う
ことを特徴とするサーバ・システム。
【００５２】
（付記５）
付記４において，
更に前記ベースボード・マネージメントコントローラを制御するマネージメントボードを有し，
前記フラッシュメモリのファームウェアのアップデートを行う際に，前記マネージメントボードにより前記スイッチを制御して前記サウスブリッジとフラッシュメモリとの間の接続を否接続にすることを特徴とするサーバ・システム。
【００５３】
（付記６）
付記４において，
前記フラッシュメモリとこれに接続されたベースボード・マネージメントコントローラは，パーティションに区分された複数のシステムの一システムに対応するものであることを特徴とするサーバ・システム。
【００５４】
（付記７）
フラッシュメモリに格納されるファームウェアにより起動されるサーバ・システムであって，
ＣＰＵと，
サウスブリッジと，
現用と予備用のフラッシュメモリと，
前記サウスブリッジと前記現用と予備用のフラッシュメモリとの接続を開閉するスイッチと，
前記現用と予備用のフラッシュメモリのそれぞれに接続された現用と予備用のベースボード・マネージメントコントローラを有し，
前記フラッシュメモリのファームウェアのアップデートを行う際，
前記予備用のベースボード・マネージメントコントローラを通して端末からの更新されるファームウェアを前記予備用のフラッシュメモリに書き込み，
再起動時に，前記スイッチにより前記サウスブリッジとの接続を前記現用のフラッシュメモリから前記予備用のフラッシュメモリに切り換え，前記更新されたファームウェアによりシステムの再起動を行う
ことを特徴とするサーバ・システム。
【００５５】
（付記８）
請求項７において，
前記第１及び第２のフラッシュメモリとこれに接続された第１及び第２のベースボード・マネージメントコントローラは，パーティションに区分された複数のシステムの一システムに対応するものであることを特徴とするサーバ・システム。
【産業上の利用可能性】
【００５６】
本発明によって，ファームウェアのアップデート時に，システム停止時間を最小限に抑え，あるいは，サウスブリッジからファームウェアへのアクセスを禁止せずにアップデートが可能となる。これによりファームウェアのアップデートによるシステム稼働時の影響が小さくなり，産業上寄与するところ大である。
【図面の簡単な説明】
【００５７】
【図１】従来のサーバ・システム構成を示す図である。
【図２】ファームウェアアップデート時の処理フローを示す図である。
【図３】本発明を適用するサーバ・システムの第１の実施の形態例ブロック図である。
【図４】図３の実施の形態例に対応する本発明方法の実施例動作フローである。
【図５】本発明を適用するサーバ・システムの第２の実施の形態例ブロック図である。
【図６】図５の実施の形態例に対応する本発明方法の実施例動作フローである。
【符号の説明】
【００５８】
１  ＣＰＵ
２  ノースブリッジ
３  ＰＣＩバス
４  サウスブリッジ
５  メモリ
６  レガシーＩ／Ｏ
７，７ａ  ベースボードマネージメントコントローラ（ＢＭＣ）
８  マネージメントボード
９  端末
１０  ファームウェア媒体
１１，１２  書き込み経路
１３，１３a  バス変換回路
１４  スイッチ
【図１】
2006260058.tif 000003
【図２】
2006260058.tif 000004
【図３】
2006260058.tif 000005
【図４】
2006260058.tif 000006
【図５】
2006260058.tif 000007
【図６】
2006260058.tif 000008