JP5564956B2 - 情報処理装置及び情報処理装置のファームウェア更新方法 - Google Patents

情報処理装置及び情報処理装置のファームウェア更新方法 Download PDF

Info

Publication number
JP5564956B2
JP5564956B2 JP2010006640A JP2010006640A JP5564956B2 JP 5564956 B2 JP5564956 B2 JP 5564956B2 JP 2010006640 A JP2010006640 A JP 2010006640A JP 2010006640 A JP2010006640 A JP 2010006640A JP 5564956 B2 JP5564956 B2 JP 5564956B2
Authority
JP
Japan
Prior art keywords
firmware
update
system control
firmware program
control device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010006640A
Other languages
English (en)
Other versions
JP2011145910A (ja
Inventor
朗 峯岸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2010006640A priority Critical patent/JP5564956B2/ja
Priority to US12/987,525 priority patent/US8607219B2/en
Priority to EP11150652.3A priority patent/EP2345959B1/en
Publication of JP2011145910A publication Critical patent/JP2011145910A/ja
Application granted granted Critical
Publication of JP5564956B2 publication Critical patent/JP5564956B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Description

本発明は、情報処理装置及び情報処理装置のファームウェア更新方法に関する。
情報処理装置、例えば、サーバ・システムでは、演算処理装置としてのCPU(Central Processing Unit)や主記憶装置としてのメモリ等のハードウェア資源を、物理的又は論理的に、複数のパーティションに分割して、運用することが知られている。個々のパーティションは、CPUによるOS(Operating System:オペレーティングシステム)の動作が可能であり、このOSの動作を介して、CPUによるアプリケーション業務(プログラム)の実行ができる。即ち、サーバ・システムは、OSの動作可能な複数のパーティションを有し、複数の異なる又は同一のOSを動作する。
このサーバ・システムにおいて、個々のパーティションにおいて、システムの動作、運用、管理を行うファームウェアプログラムを使用する。このファームウェアプログラムは、必要に応じて、更新(アップデート)する必要がある。
このような、複数のパーティションが運用可能なサーバ・システムにおいて、パーティション内のファームウェアプログラム(以下、ファームウェア(FW:FirmWare)という)のアップデートの方法は、それぞれのパーティションごと,それぞれのファームウェアごとに、個別に指示する方法であった。
又、オンラインで、パーティションの管理を行うサービスプロセッサのファームウェアのアップデートを行うことにより、システムのパーティション運用中に、ファームウェアを更新する方法も知られている。
特開2006−079155号公報 特表2005−502971号公報 特開2006−146709号公報
複数のパーティションを運用しているサーバ・システムでは、パーティション内のファームウェアを更新する際に、ファームウェアのアップデートを実施するたびに,アップデート作業実施前に、パーティション(業務)の運用停止が、必要であった。また、ハードウェアを交換した場合には、ファームウェアの版数を確認するため、パーティションを起動し、版数を確認することも必要であった。
従って、ファームウェアの版数の確認などの作業量・作業時間が多大になっていた。また、実際の適用時には、ファームウェアのアップデート作業前から業務を停止する必要があり、業務停止時間(down time)が長時間となっていた。
更に、従来のパーティション運用中のファームウェアのアップデート方法では、サービスプロセッサのファームウェアを、パーティション運用中に更新できるが、パーティション内のファームウェアを更新するには、同様にアップデート作業実施前に、パーティション(業務)の運用停止が必要であった。
しかも、ファームウェア間に非互換性が存在する時には,オンラインではなく、パーティション停止によるアップデートを実施する必要があり、結果として、業務停止時間がより長くなる。
本発明の目的は、パーティションの運用を停止せずに、パーティション内のファームウェアを更新する情報処理装置及び情報処理装置のファームウェア更新方法を提供することにある。
この目的の達成のため、情報処理装置は、少なくとも演算処理装置と記憶装置とを含むハードウェア資源を有し、OSを動作する複数の処理装置と、前記複数の処理装置を制御するシステム制御装置とを有し、前記処理装置の各々は、前記ハードウェア資源を制御するファームウェアプログラムを格納する一対のメモリ領域を有し、前記システム制御装置は、外部装置から受信した前記処理装置を制御する更新用ファームウェアプログラムを、前記処理装置の各々に送信し、前記処理装置の各々は、前記一対のメモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込むとともに、前記処理装置の前記一のメモリ領域に、前記更新用ファームウェアプログラムを書き込む前に、前記処理装置の各々の前記一対のメモリ領域の運用に使用されているファームウェアプログラムの版数を検出し、前記更新用ファームウェアプログラムとの互換性の有無を判定し、前記互換性が無いと判断した場合に、前記書き込み後、前記処理装置に起動又は再起動を指示し、前記起動又は再起動を指示された前記処理装置は、前記一のメモリ領域を運用側に切り換え、前記一のメモリ領域に書き込まれた前記更新用ファームウェアプログラムで起動又は再起動し、前記互換性が有ると判断した場合に、前記書き込み後の前記処理装置の次回の起動又は再起動により、前記一のメモリ領域を運用側に切り換え、前記一のメモリ領域に書き込まれた前記更新用ファームウェアプログラムで起動又は再起動する。又、情報処理装置は、少なくとも演算処理装置と記憶装置とを含むハードウェア資源を有し、OSを動作する複数の処理装置と、前記複数の処理装置を制御する一対のシステム制御装置とを有し、前記処理装置の各々は、前記ハードウェア資源を制御するファームウェアプログラムを格納するメモリ領域を一対有し、前記システム制御装置は、前記システム制御装置のハードウェア資源を制御する第2のファームウェアプログラムを格納するメモリ領域を一対有し、前記システム制御装置は、外部装置から前記処理装置の更新用ファームウェアプログラムと更新用の前記第2のファームウェアプログラムとを一括して受信し、前記一対のシステム制御装置の内、アクティブ側に設定された一方のシステム制御装置が、前記受信した前記更新用の第2のファームウェアプログラムをスタンバイ側に設定された他方のシステム制御装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込んだ後、前記アクティブ側の一方のシステム制御装置をスタンバイ側に、前記スタンバイ側の他方のシステム制御装置をアクティブ側に切り替え、前記アクティブ側に切り替えられた他方のシステム制御装置が、前記スタンバイ側に切り替えられた一方のシステム制御装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記更新用の第2のファームウェアプログラムを書き込んだ後、前記処理装置の各々に、前記処理装置の更新用ファームウェアプログラムを送信し、前記処理装置の各々は、前記処理装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込む。
又、この目的の達成のため、情報処理装置のファームウェア更新方法は、少なくとも演算処理装置と記憶装置とを含むハードウェア資源を有し、OSを動作する複数の処理装置と、前記複数の処理装置を制御するシステム制御装置とを有する情報処理装置のファームウェア更新方法において、前記システム制御装置が、外部装置から前記処理装置を制御する更新用ファームウェアプログラムを受信するステップと、前記システム制御装置が、前記処理装置の各々に前記更新用ファームウェアプログラムを送信する前に、前記処理装置の各々の一対のメモリ領域の運用に使用されているファームウェアプログラムの版数を検出し、前記更新用ファームウェアプログラムとの互換性の有無を判定するステップと、前記システム制御装置が、前記受信した更新用ファームウェアプログラムを、前記処理装置の各々に送信するステップと、前記処理装置の各々が、前記ハードウェア資源を制御するファームウェアプログラムを格納する前記一対のメモリ領域の内、運用に使用されていない一のメモリ領域に、前記送信されたフームウェアプログラムを書き込むステップと、前記システム制御装置は、前記互換性が無いと判断した場合に、前記書き込み後、前記処理装置に起動又は再起動を指示し、前記起動又は再起動を指示された前記処理装置は、前記一のメモリ領域を運用側に切り換え、前記一のメモリ領域に書き込まれた前記更新用ファームウェアプログラムで起動又は再起動するステップと、前記互換性が有ると判断した場合に、前記書き込み後の前記処理装置の次回の起動又は再起動により、前記一の前記メモリ領域を運用側に切り換え、前記一のメモリ領域に書き込まれた前記更新用ファームウェアプログラムで起動又は再起動するステップとを有する。又、情報処理装置のファームウェア更新方法は、少なくとも演算処理装置と記憶装置とを含むハードウェア資源を有し、OSを動作する複数の処理装置と、前記複数の処理装置を制御するシステム制御装置とを有する情報処理装置のファームウェア更新方法において、前記システム制御装置は、外部装置から前記処理装置の更新用ファームウェアプログラムと前記システム制御装置のハードウェア資源を制御する更新用第2のファームウェアプログラムとを一括して受信するステップと、前記受信した前記更新用第2のファームウェアプログラムを、前記システム制御装置の一対のメモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込むステップと、前記システム制御装置が、前記更新用第2のファームウェアプログラムを書き込んだ後、前記処理装置の各々に、前記処理装置の更新用ファームウェアプログラムを送信するステップと、前記処理装置の各々が、前記処理装置の一対のメモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記処理装置の更新用ファームウェアプログラムを書き込むステップとを有し、前記更新用第2のファームウェアプログラムを書き込むステップは、アクティブ側に設定された一方のシステム制御装置が、スタンバイ側に設定された他方のシステム制御装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記更新用第2のファームウェアプログラムを書き込むステップと、前記更新用第2のファームウェアプログラムを書き込んだ後、前記アクティブ側の一方のシステム制御装置をスタンバイ側に、前記スタンバイ側の他方のシステム制御装置をアクティブ側に切り替えるステップと、前記アクティブ側に切り替えられた他方のシステム制御装置が、前記スタンバイ側に切り替えられた一方のシステム制御装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記更新用第2のファームウェアプログラムを書き込むステップとを有する。
運用中の処理装置を監視するシステム制御装置が、ファームウェアを受信し、各処理装置の一対のメモリ領域の内、運用に使用されていない一のメモリ領域に書き込むため、各処理装置の運用を停止することなく、処理装置内のファームウェアの更新が可能となる。又、更新用ファームウェアの互換性の有無を判定し、通常オンライン・ファーム・アップデートが可能かを判断し、互換性がない場合に処理装置を起動又は再起動するため、互換性がある場合は運用を停止することなく、互換性のないファームウェアに更新しても、運用している処理装置の停止時間を短縮できる。更に、システム制御装置と処理装置との各々の更新用ファームウェアを一括して受信し、更新するため、システム制御装置及び処理装置のファームウェアの更新を一元的に且つ短時間で実行でき、且つシステム制御装置更新成功後、処理装置に更新用ファームウェアを送信し、更新するため、システムの管理側であるシステム制御装置がいち早く適応でき、システム管理の運用性を確実にできる。
本発明の一実施の形態の情報処理装置の構成図である。 図1の情報処理装置におけるファームウェア更新処理の実施の形態の説明図である。 図2のファームウェア更新処理のフロー図である。 図3の更新処理のための互換性確認表の説明図である。 図3のファームウェア更新の動作説明図である。 図3で説明したMMBファームウェア更新処理のフロー図である。 図6のスタンバイ側不揮発性メモリの更新動作説明図である。 図6のアクティブ側不揮発性メモリの更新動作説明図である。 図3のBMCファームウェア及びBIOSファームウェアの更新処理のフロー図である。 図3で説明した非互換時のMMBファームウェア更新処理のフロー図である。 図10の動作説明図である。 図3で説明したBMCファームウェア及びBIOSファームウェアの更新処理のフロー図である。 図13は、図3のステップS28、S30,S32の詳細処理フロー図である。
以下、実施の形態の例を、情報処理装置、ファームウェア更新方法、互換性のある場合のファームウェア更新処理、非互換性の場合のファームウェア更新処理、他の実施の形態の順で説明するが、開示の情報処理装置は、この実施の形態に限られない。
尚、以下の例では、ファームウェアプログラムは、システム全体のハードウェアの動作、運用、管理のための制御プログラムであり、例えば、BIOS(Basic Input Output System:ベーシック入出力システム)などである。
(情報処理装置)
図1は、本発明の一実施の形態の情報処理装置の構成図である。図1の情報処理装置は、サーバ・システムを示す。サーバ・システム1は、複数の処理装置としてのシステムボード(SB:System Board)3A〜3Dと、いわゆるシステム制御装置(SVP:SerVice Processor)としての管理ボード(MMB:ManageMent Board)2A,2Bとを有する。管理ボード2A、2Bは、冗長系を構成し、一方が、アクティブ、他方がスタンバイ状態である。
各システムボード3A〜3Dは、回路基板に、演算処理装置としてのCPU34と、メモリ35等を搭載して、構成され、CPU34が、OSを動作し、且つOSの動作の元に、必要なアプリケーションプログラムを実行し、業務処理する。
各システムボード3A〜3Dは、LAN(Local Area Network)等の通信パス4を介し、管理ボード2A、2Bに接続する。管理ボード2A,2Bは、通信パス4を介し、各システムボード3A〜3Dの状態監視、起動、停止制御等を行う。又、各システムボード3A〜3Dは、図示しない他の通信パスを介し、コマンド、データの通信を行うことができる。
各管理ボード2A,2Bは、回路基板に、外部通信部20と、ネットワークインタフェースカード(NIC:Network Interface Card)24と、CPU及びメモリ22と、不揮発性メモリ26A,26Bとを搭載して、構成される。外部通信部20は、サーバ・システム1外の装置(例えば、PC(Personal Computer))9と接続し、接続された装置と通信を行う。
CPU及びメモリ22は、外部通信部20と、NIC24と、不揮発性メモリ26A,26Bに接続する。CPU及びメモリ22は、後述するように、ファームウェアプログラムの更新処理を実行する。不揮発性メモリ26A,26Bは、書き換え可能である不揮発性メモリで構成され、例えば、フラッシュメモリ(Flash Memory)が好適である。
不揮発性メモリ26A,26Bは、冗長構成のため、一対設けられ、バックアップ用ファームウェアプログラム(BIOS(Basic Input/Output System),BMCファームウェア)の格納領域40と、ファームウェアの互換性を確認するための情報(図9で後述する)の格納領域42と、MMB2A.2Bのファームウェアプログラムの格納領域44とを有する。NIC24は、各システムボード3A〜3Dと、通信パス4を介し通信するために設けられる。
又、各システムボード3A〜3Dは、前述のCPU34と、メモリ35と、ボード制御コントローラ(BMC:Base Management Controller)30と、BIOSを格納する一対の不揮発性メモリ(BIOSメモリという)36A,36Bと、BMC30のファームウェアを格納する一対の不揮発性メモリ(BMCメモリという)37A,37Bと、これらを接続する通信バス38とを有する。
BMC30は、通信パス4を介し通信するためのネットワークインタフェースカード(NIC:Network Interface Card)31と、ファームウェア更新処理等を行うCPU32とを有する。BMC30は、システムボード3A〜3D内の動作監視、状態制御等を行う。
一対のBIOSメモリ36A,36Bは、冗長系を構成し、一方が、アクティブ状態、他方が、スタンバイ状態である。又、一対のBMCメモリ37A,37Bも、冗長系を構成し、一方が、アクティブ状態、他方が、スタンバイ状態である。これらのメモリ36A,36B,37A,37Bは、書き換え可能である不揮発性メモリで構成され、例えば、フラッシュメモリ(Flash Memory)が好適である。
一方、外部装置(例えば、PC)9は、遠隔地からインターネットを介し、サーバ・システム1にアクセスする。外部装置9は、ブラウザのWeb画面を操作して、ファームウェアプログラムを、サーバ・システム1にアップロードする。
このサーバ・システムでは、システムボード3A〜3Dの各々が、個々のOSが動作する区画であるパーティション(Partition)を構成する。ここでいうパーティションは、所謂、物理パーティションである。このような情報処理装置では、機能改善や障害修正などのため、ファームウェアプログラムを、新たなファームウェアプログラムに更新する。
又、サーバ・システムは、各パーティション内で、独立にOSに基づいて、情報処理が実行されるため、ファームウェアプログラムを更新する際に、パーティション内の動作を停止しないことが望ましい。
(ファームウェア更新方法)
図2は、図1の情報処理装置におけるファームウェア更新処理の実施の形態の説明図、図3は、図2のファームウェア更新処理のフロー図であり、図4は、図3の処理のための互換性確認表の説明図、図5は、図3のファームウェア更新の動作説明図である。
図2に示すように、リモートPC(外部装置)9は、各版(v.01版、v.02版、v.03版)のファームウェアプログラム100−1〜100−3を、記憶している。サーバ・システム1は、機能改善や障害修正などのために、ファームウェアのアップデートが必要となる場合に、外部装置1から、更新のためのファームウェアプログラム一式を、受信する。
この例では、サーバ・システム1のMMB2Aは、v.02版のファームウェア100−2を既に、受信し、運用しているので、それより改善されたv.03版のファームウェア100−3を、受信する。ここで、ファームウェアプログラム一式とは、MMBファームウェア(MMB FW)と、BIOSファームウェア(BIOS FW)と、BMCファームウェア(BMC FW)とである。
MMB2Aは、ファームウェア一式を格納し,ファームウェア・アップデートを実施する。即ち、MMB2Aは、ファームウェア一式のMMBファームウェアを、一対の不揮発性メモリ26A,26Bの内、待機中の不揮発性メモリ26Aに書き込む。
又、MMB2Aは、ファームウェア一式のBIOSファームウェアを、BMCファームウェアを、各システムボード3A〜3DのBMC30に送信する。BMC30は、BIOSファームウェアを、一対のBIOS不揮発性メモリ36A,36Bの内、待機中の不揮発性メモリ36Aに書き込む。BMC30は、BMCファームウェアを、一対のBMC不揮発性メモリ37A,37Bの内、待機中の不揮発性メモリ37Aに書き込む。
以下、図4を用いて、図3により、詳細に説明する。
(S10)リモートPC9が、サーバ・システム1に、ネットワークを介してアクセスする。このアクセスする。このリモートPC9によるアクセスにより、リモートPC9に、アクティブ側の管理ボード(MMB)2AのWeb画面が表示される。リモートPC9の操作員は、このWeb画面で、ファームウェア・アップデートの項目を選び、クリックして、ファームウェアのアップデート作業を開始する。リモートPC9において、サーバ・システム1で使用される各種ファームウェアは、個別の版数で管理され、一式として扱われて、一つの総合版数により管理される。
このファームウェア一式には、他の世代のファーム間での互換性確認表(図4で後述する)が含まれる。ファームウェア一式は、事前に、リモートPC9などの作業端末に用意しておく。リモートPC9からアクセスするWeb画面からアップデートが実行されると,リモートPC9から、アクティブ側MMB2Aへ、ファームウェア一式のアップロードが開始される。
(S12)アクティブ側MMB2Aは、転送後、アップデートを開始する。ファームウェアのアップデートの実行に先立ち、MMB2Aは、不揮発性メモリ26Aに格納されているMMBファームウェアの版数を検出する。又、パーティション(システムボード)3A〜3Dの不揮発性メモリ36A,36B,37A,37Bに格納されているファームウェアについて、パーティション3A〜3Dが起動されていなくても、不揮発性メモリ36A、36B、37A、37B自体は、常時通電されている。このため、ファームウェアのアップデートの管理元であるMMB2Aは、各パーティション3A〜3Dに問い合わせて、BIOS,BMCの版数情報を、アップデート実行前に検出する。
MMB2Aは、受信したファームウェア一式に同梱されるファーム間の互換表42により、ファームウェア間の互換性を確認する。図4に示すように、MMB2Aは、アップデートするファームウェア間版数の互換性を、システム管理の要となるMMBファームウェアを基点にし、最新版MMBファームウェアと運用中のシステムボード側のファームウェア間の情報として、互換表42に記述する。
図4は、総合版数(V01〜V05)と、各総合版数のMMB版数と、BMC版数、BIOS版数とを記述する。ここでは、第5版のファームウェアに更新する場合の受信した互換表を例示する。この互換表では、ファームウェアの第1版から第5版までの総合版数(V01〜V05)と、各総合版数のMMB版数と、BMC版数、BIOS版数と、最新版の第5版のファームウェアに対する旧版の第1〜第4版のファームウェアの後方互換性(Backward Compatibility)の有無とを、記述する。図4の例では、「×」印で示すように、第5版のファームウェアに対し、第1版のファームウェアのみが、後方互換性なし(非互換)であることを示す。
そして、MMB2Aは、検出したMMB,BMC、BIOSの版数で、図4の互換表を参照し、受信したファームウェアと、各パーティションの現在のファームウェアとの互換性を確認する。そして、MMB2Aは、確認結果により,対象とする全システムボードが、通常のオンライン・ファーム・アップデートが可能かどうかを判断する。
(S14)MMB2Aは、通常のオンライン・ファーム・アップデートが可能と判断すると、S16のファーム間に非互換性なしの更新処理を選択し、通常のオンライン・ファーム・アップデートが可能でないと判断すると、ステップS24のファーム間に非互換性ありの更新処理を選択する。
(S16)MMB2Aは、通常オンライン可能である場合(ファーム間に非互換性がない場合)には、MMBのファームウェアの更新を実行する。即ち、MMB2Aは、MMBファームウェアを、不揮発性メモリ26AのMMBファームウェア領域44に書込む。この書き込まれたMMBファームウェアは、再起動後に反映される。図1のように、MMB2A,2Bが、冗長系で運用する場合は、一方のMMB(ここでは、2B)を、スタンバイ側とし、他方のMMB2Aを、アクティブ側とする。
そして,アクティブ側MMB2Aが、スタンバイ側のMMB2Bからアクティブ側のMMB2Aの順で、アップデートする。これにより、MMB2A,2Bが実施しているシステム管理・制御の空白時間を防止できる。このステップは,パーティション3A〜3Dが運用中でも停止中でも、実施できる。MMB2A,2Bは、一元的にシステム管理を行うコンポーネントであるため、そのため、障害修正などが施された最新版のファームウェアに、いち早く適応しておく必要があるため、一番先にMMB2A,2Bのファームウェア更新を実行する。
(S18)アクティブ側MMB2Aは、アクティブ側とスタンバイ側の不揮発性メモリ26AへのMMBのファームアップが完了した後に、パーティションを構成するシステムボード側のファームウェアの更新を実行する。この工程は、複数のパーティションが存在した場合には、各パーティションのシステムボード毎に、並行して実施する。また、この工程は、パーティションが運用中でも、停止中でも実施できる。即ち、MMB2Aは、各システムボード3A〜3Dに存在するBMC30に、I2C(Inter-Integrated Circuit)インタフェース等の通信パス4により通信して,ファームウェアの更新を指示する。MMB2Aは、各システムボード3A〜3DのBMC30に、通信パス4を介し、ファームウェア更新用のデータ(BIOSファームウェア、BMCファームウェア)を転送する。
BMC30のCPU32は、ファームウェアの更新処理を実行する。即ち、BMC30のCPU32は、スタンバイ側のBIOS不揮発性メモリ36Aに、BIOSファームウェアを、スタンバイ側のBMC不揮発性メモリ37Aに、BMCファームウェアを、書き込み、更新する。
このようにして、MMB2Aは、各パーティションの運用を停止することなく、全てのシステムボード3A〜3Dのファームウェアの書込みを完了する。
(S20)そして、MMB2Aは、次回のパーティションの起動・再起動がなされた直後に、MMB2Aは、パーティションの異常による再起動でないか否かを検出する。そして、MMB2Aは、パーティションの異常による再起動でないことを確認した場合に、不揮発性メモリ26Aをアクティブ側に、不揮発性メモリ26Bをスタンバイ側に切り換える。又、MMB2Aは、各システムボード3A〜3DのBIOS不揮発性メモリ36Aをアクティブに、BIOS不揮発性メモリ36Bをスタンバイに、切り替え、BMC不揮発性メモリ37Aをアクティブに、BMC不揮発性メモリ37Bをスタンバイに切り替える。MMB2Aは、アップデートが完了していない前に、パーティションにおいて、異常が発生し、リセットが起きた場合には、前述の切り替えを実行せずに、元のファームウェア(BIOS不揮発性メモリ36B、BMC不揮発性メモリ37Bの書き換えられていないファームウェア)で、起動する。
(S22)MMB2Aは、パーティションが正常に起動でき、最新ファームウェアが反映された場合は,MMB2AのWeb画面が、更新されたファーム版数を表示する。リモートPC9は、このWeb画面を表示するため、PCの操作員は、このWeb画面で、更新されたファーム版数を確認し、アップデートを完了する。
(S24)一方、ステップS14で、ファームウェア間の非互換が存在すると判定された場合には、MMBのファームウェアの更新を実行する。ここでは、MMB2Aは、MMBファームウェアを、バックアップ側の不揮発性メモリ26BのMMBファームウェア領域44に書込む。即ち、バックアップ側のみ更新する。この時点でのMMBの再起動による、適用ファームの反映は行わない。
(S26)MMB2Aは、バックアップ側の不揮発性メモリ26BへのMMBのファームアップが完了した後に、パーティションであるシステムボード側のファームウェアの更新を実行する。この工程は、複数のパーティションが存在した場合には、各パーティションのシステムボード毎に、並行して実施する。また、この工程は、パーティションが運用中でも、停止中でも実施できる。即ち、MMB2Aは、各システムボード3A〜3Dに存在するBMC30に、I2Cインタフェース等の通信パス4により通信して,ファームウェアの更新を指示する。MMB2Aは、各システムボード3A〜3DのBMC30に、通信パス4を介し、ファームウェア更新用のデータ(BIOSファームウェア、BMCファームウェア)を転送する。
BMC30のCPU32は、ファームウェアの更新処理を実行する。即ち、BMC30のCPU32は、スタンバイ側のBIOS不揮発性メモリ36Aに、BIOSファームウェアを、スタンバイ側のBMC不揮発性メモリ37Aに、BMCファームウェアを、書き込み更新する。
このようにして、MMB2Aは、各パーティションの運用を停止することなく、全てのシステムボード3A〜3Dのファームウェアの書込みを完了する。
(S28)この後、リモートPCから、MMB2Aに、全ての運用中のパーティションの再起動を指示する。MMB2Aは、全ての運用中のパーティションを再起動開始(start)指示した後、MMBの起動待ち合わせのため、再起動開始指示したパーティションの起動を抑止(停止)する。
(S30)MMB2Aは、パーティションの再起動の停止を確認すると、MMBファームウェアの起動パスを切り替える。即ち、MMB2Aは、MMBファームウェアが更新されたバックアップ側の不揮発性メモリ26Bを、アクティブ側とし、その不揮発性メモリ26BのMMBファームアップを読み出し、MMB2Aの再起動を実行する。
(S32)MMB2Aの正常起動を確認した後に、MMB2Aは、抑止されていたパーティションを再起動する。MMB2Aは、パーティションが、正常に起動したか否かを確認する。尚、ステップS26で、BMC30がファームウェアを更新した事を認識しているため、パーティションの再起動では、スタンバイ側のBIOS不揮発性メモリ36Aをアクティブ側に切り替えるとともに、スタンバイ側のBMC不揮発性メモリ37Aを、アクティブ側に切り替える。そして、更新されたBMCファームウェアと、BIOSファームウェアを読み出してから、再起動する。
(S34)MMB2Aは、最新ファームウェアが反映され、パーティションが正常に起動できた場合は,MMB2AのWeb画面が、更新されたファーム版数を表示する。リモートPC9は、このWeb画面を表示するため、PCの操作員は、このWeb画面で、更新されたファーム版数を確認し、アップデートを完了する。
図5は、本実施の形態でのファームウェア更新のタイムチャートasと、従来の方法でのファームウェア更新のタイムチャートbsとの比較図である。ここでは、2種類のファームウェアA、Bを更新する例で説明する。
従来例bsでは、パーティションを停止し、ファームウェアAを更新し、更新後、パーティションを起動し、版数を確認する。次に、再度、パーティションを停止し、ファームウェアBを更新し、更新後、パーティションを起動し、版数を確認する。パーティションを停止し、オフライン更新するため、ダウンタイム(down time)は、長い。
一方、本実施の形態asでは、パーティションを停止せずに、一括して、ファームウェアA、Bを更新し、パーティションを再起動し、版数を確認する。このため、パーティションを停止せずに、一括して、ファームウェアA、Bを更新するため、ダウンタイムは、従来例bsよりも短くてすむ。例えば、従来例では、2〜3時間のダウンタイムであったものを、本実施の形態では、数十分のダウンタイムで済む。
このように、大型サーバなどの複数OSが動作可能な複数のパーティションを運用することができるサーバ・システムにおいて、ハードウェアを管理・監視・調整する全ファームウェア種について、ユーザ・インタフェースを介して、パーティションの運用中に、一度にまとめてアップデートできる。
又、ファームウェア・アップデートを、パーティション起動中に、OSの動作を止めることなく,更新するファームウェアをメモリに書き込み,パーティションの再起動だけの運用停止を行うだけで,ファームウェア・アップデートを実現できる。
ここでは、2種類のファームウェアA,B更に、複数あるファームウェア間での不整合がある場合であっても、不整合があることをアップデート前に検出し、運用しているパーティションの停止をせずに、オンラインでアップデートが実行でき、パーティションの再起動だけの業務運用停止だけで、ファームウェアのアップデートが実施できる。
ファームウェアを格納する不揮発メモリ保存領域を、アクティブ側とバックアップ側の冗長系で構成しており、バックアップ側のみを更新するため、運用中のパーティションの阻害にならず、且つファームウェアのアップデートを実施する前に、各ファームウェアの版数を知ることができる。又、停止中のパーティションを、ファームウェア版数を知るためだけのために、起動する必要がない。
しかも、各種のファームウェアを一式として取り扱い、また最新版ファームウェアの旧版ファーム世代に対する後方互換性の情報を同時に格納するため、一括ファームウェアのアップデートの実行が、一元的管理にて実施できる。
(互換性のある場合のファームウェア更新処理)
次に、図3で説明した互換性のあるファームウェア更新処理(S16,S18)を、詳細に説明する。図6は、図3で説明したMMBファームウェア更新処理のフロー図であり、図7、図8は、図6の動作説明図である。以下、図7、図8を参照して、図6の処理フローを説明する。
(S40)アクティブ側MMB2Aは、通常オンライン可能である場合(ファーム間に非互換性がない場合)には、MMBのファームウェアの更新を実行する。即ち、図7に示すように、アクティブ側MMB2Aは、MMBファームウェアを、スタンバイ側MMB2Bのバックアップ側不揮発性メモリ26B(NAND flash Bと記す)のMMBファームウェア領域44に書込む。MMB2Aは、ファームウェアの更新について書き込み不成功であれば、エラー処理する。
(S42)MMB2Aは、ファームウェアの更新について書き込み成功と判断すると、MMB2Aは、スタンバイ側MMB2Bの不揮発性メモリ26Bを、アクティブ側に、不揮発性メモリ26Aをスタンバイ側に切り替える(即ち、ファームウェアの起動パスを切り替える)。そして、MMB2Aは、スタンバイ側MMB2Bを、再起動(リセット)する。
(S44)図8に示すように、アクティブ側MMB2Aは、MMBファームウェアを、スタンバイ側MMB2Bのスタンバイに切り替えられた不揮発性メモリ26A(NAND flash Aと記す)のMMBファームウェア領域44に書込む。MMB2Aは、ファームウェアの更新について書き込み不成功であれば、エラー処理する。
(S46) MMB2Aは、ファームウェアの更新について書き込み成功と判断すると、スタンバイ側MMB2Bの起動完了かを判定する。即ち、MMB2Aは、スタンバイ側MMB2Bの不揮発性メモリ26B、26Aをリードし、ファームウェアのチエックサムと版数を確認して、起動が完了したかを判定する。MMB2Aは、スタンバイ側MMB2Bの起動が不成功と判断すると、エラー処理を行う。
(S48)MMB2Aは、スタンバイ側MMB2Bの起動が成功と判断すると、スタンバイ側MMB2Bをアクティブ側に、MMB2Aをスタンバイ側に切り替える。
(S50)アクティブ側に切り替えられたMMB2Bは、スタンバイ側に切り替えられたMMB2Aに対し、ステップS40〜S46の処理を行う。
(S52)MMB2Bは、スタンバイ側のMMB2Aの起動完了成功と判断すると、スタンバイ側のMMB2Aをアクティブ側に、アクティブ側のMMB2Bである自分自身をスタンバイ側に切り替え、元の状態に戻す。これにより、MMBファームウェアの更新を完了する。
このようにして、MMB2A,2BのMMBファームウェアを更新するとともに、MMB2A,2Bが実行しているシステム管理・制御の空白時間を防止できる。これらのステップは,パーティション3A〜3Dが運用中でも停止中でも、実施できる。
次に、BMCファームウェア及びBIOSファームウェアの更新処理を、図9のBMCファームウェア及びBIOSファームウェアの更新処理のフロー図により、説明する。
(S60)アクティブ側MMB2Aは、各システムボード3A〜3Dに存在するBMC30に、I2Cインタフェース等の通信パス4により通信して,ファームウェアの更新を指示する。MMB2Aは、各システムボード3A〜3DのBMC30に、通信パス4を介し、BMCファームウェアを転送する。
(S62)BMC30のCPU32は、ファームウェアの更新処理を実行する。即ち、BMC30のCPU32は、スタンバイ側のBMC不揮発性メモリ37Aに、BMCファームウェアを、書き込み更新する。BMC30のCPU32は、BMCファームウェアの書き込みが不成功であれば、エラー処理を行う。
(S64) BMC30のCPU32は、BMCファームウェアの書き込みが成功と判断すると、MMB2Aにその旨を通知する。MMB2Aは、各システムボード3A〜3DのBMC30に、I2C等の通信パス4を介し、BIOSファームウェアを転送する。BMC30のCPU32は、スタンバイ側のBIOS不揮発性メモリ36Aに、BIOSファームウェアを、書き込み、更新する。BMC30のCPU32は、BIOSファームウェアの書き込みが不成功であれば、エラー処理を行う。BMC30のCPU32は、BIOSファームウェアの書込みが成功と判断すると、MMB2Aにその旨を通知する。これにより、システムボードのファームウェアの書込みを完了する。
このようにして、MMB2Aは、システムボードの運用に使用していないスタンバイ側の不揮発性メモリのみに、BMCファームウェアとBIOSファームウェアの各ファームウェアを書き込み更新するため、各パーティションの運用を停止することなく、全てのシステムボード3A〜3Dのファームウェアの書込みを完了できる。
(非互換性の場合のファームウェア更新処理)
次に、図3で説明した非互換性の場合のファームウェア更新処理(S24,S26、S28,S30、S32)を、詳細に説明する。図10は、図3で説明した非互換時のMMBファームウェア更新処理のフロー図であり、図11は、図10の動作説明図である。以下、図11を参照して、図10の処理フローを説明する。
(S70)アクティブ側MMB2Aは、通常オンライン可能である場合(ファーム間に非互換性がある場合)には、MMBのファームウェアの更新を実行する。即ち、図11に示すように、アクティブ側MMB2Aは、MMBファームウェアを、スタンバイ側MMB2Bのバックアップ側不揮発性メモリ26B(NAND flash Bと記す)のMMBファームウェア領域44に書込む。MMB2Aは、MMBファームウェアの書き込みが不成功であれば、エラー処理を行う。
(S72)MMB2Aは、MMBファームウェアの書き込みが成功であると判断すると、スタンバイ側MMB2Bをアクティブ側に、MMB2Aをスタンバイ側に切り替える。
(S74)アクティブ側に切り替えられたMMB2Bは、スタンバイ側に切り替えられたMMB2Aに対し、ステップS70の処理を行う。
(S76)MMB2Bは、スタンバイ側のMMB2Aの起動完了成功と判断すると、スタンバイ側MMB2Aをアクティブに、アクティブ側のMMB2Bである自分自身をスタンバイに切り替え、元の状態に戻す。これにより、MMBファームの更新を完了する。
このようにして、ファームウェアが非互換性である場合には、MMB2A,2Bのスタンバイ側の不揮発性メモリ26Bのみ、MMBファームウェアを更新する。このため、MMB2Aが実施しているシステム管理・制御に影響なく、非互換のファームウェアに更新できる。
次に、非互換のBMCファームウェア及びBIOSファームウェアの更新処理を、図12のBMCファームウェア及びBIOSファームウェアの更新処理のフロー図により説明する。
(S80)アクティブ側MMB2Aは、各システムボード3A〜3Dに存在するBMC30に、I2Cインタフェース等の通信パス4により通信して,ファームウェアの更新を指示する。MMB2Aは、各システムボード3A〜3DのBMC30に、I2Cインタフェース等の通信パス4を介し、BMCファームウェアを転送する。
(S82)BMC30のCPU32は、BMCファームウェアの更新処理を実行する。即ち、BMC30のCPU32は、スタンバイ側のBMC不揮発性メモリ37Aに、BMCファームウェアを、書き込み、更新する。BMC30のCPU32は、BMCファームウェアの書き込みが不成功であれば、エラー処理を行う。
(S84) BMC30のCPU32は、BMCファームウェアの書き込みが成功であると判断すると、MMB2Aにその旨を通知する。MMB2Aは、各システムボード3A〜3DのBMC30に、I2C等の通信パス4を介し、BIOSファームウェアを転送する。BMC30のCPU32は、スタンバイ側のBIOS不揮発性メモリ36Aに、BIOSファームウェアを、書き込み更新する。BMC30のCPU32は、BMCファームウェアの書き込みが不成功であれば、エラー処理を行う。BMC30のCPU32は、BMCファームウェアの書込みが成功と判断すると、MMB2Aにその旨を通知する。これにより、システムボードのファームウェアの書込みを完了する。
このようにして、MMB2Aは、システムボードの運用に使用していないスタンバイ側の不揮発性メモリのみに、ファームウェアを書き込み更新するため、各パーティションの運用を停止することなく、全てのシステムボード3A〜3Dのファームウェアの書込みを完了できる。
次に、図13は、図3のステップS28、S30,S32の詳細処理フロー図である。
(S90)リモートPCから、MMB2Aに、全ての運用中のパーティションの再起動を指示する。MMB2Aは、全ての運用中のパーティションを再起動開始(start)指示し、運用中のパーティションの全てが、停止しているか、再起動(start)したかを確認する。MMB2Aは、運用中のパーティションの全てが、停止しているか、再起動(start)しなかった場合には、エラー処理を行う。
(S92)MMB2Aは、MMBの起動待ち合わせのため、再起動開始指示したパーティションの起動を抑止(停止)する。
(S94)MMB2Aは、パーティションの再起動の停止を確認すると、MMBファームウェアの起動パスを切り替える。即ち、MMB2Aは、MMBファームウェアが更新されたバックアップ側の不揮発性メモリ26Bを、アクティブ側とし、その不揮発性メモリ26BのMMBファームアップを読み出し、MMB2Aの再起動を実行する。
(S96)MMB2Aは、正常に起動したかを確認する。MMB2Aは、正常起動しなかった場合には、エラー処理を行う。
(S98)MMB2Aは、正常に起動したと判定すると、MMB2Aは、抑止されていたパーティションを再起動する。
(S100)MMB2Aは、パーティションが正常に起動したか否かを確認する。尚、パーティションの再起動では、ステップS26で、ファームウェアを更新した事をBMC30が認識しているため、スタンバイ側のBIOS不揮発性メモリ36Aをアクティブ側とし、スタンバイ側のBMC不揮発性メモリ37Aをアクティブ側に切り替え、更新されたBMCファームウェアとBIOSファームウェアを読み出して再起動する。MMB2Aは、パーティションが、正常に起動していない場合には、エラー処理を行う。一方、MMB2Aは、パーティションが正常に起動した場合には、パーティションのファームウェアの更新が完了したと判断する。
このように、ファームウェアが非互換の場合には、ファームウェアの更新後、各パーティションを停止し、再起動し、正常起動の有無を判定する。このため、非互換のファームウェアに更新しても、運用しているパーティションの停止時間を短縮できる。
(他の実施の形態)
前述の実施の形態では、ファームウェア間の非互換が存在するか否かを検出し、互換性がある場合と、互換性がない場合で、更新処理を選択する方法で説明したが、ファームウェア間で互換性がある場合にも、ファーム間に非互換が存在する場合の更新処理を選択しても良い。この場合、互換性検出は、必ずしも必要がない。
又、複数あるパーティションの再起動については、例えば、パーティション停止・起動のスケジュール運転を利用し、連動することも可能である。更新するファームウェアも、MMB、BMC,BIOSの3つに限らず、その内1つ又は2つや、他の必要なファームウェアを付加しても良い。
以上、本発明を実施の形態により説明したが、本発明の趣旨の範囲内において、本発明は、種々の変形が可能であり、本発明の範囲からこれらを排除するものではない。
(付記1)
少なくとも演算処理装置と記憶装置とを含むハードウェア資源を有し、OSを動作する複数の処理装置と、前記複数の処理装置を制御するシステム制御装置とを有し、前記処理装置の各々は、前記ハードウェア資源を管理するファームウェアプログラムを格納するメモリ領域を一対有し、前記システム制御装置は、外部装置から受信した更新用ファームウェアプログラムを、前記処理装置の各々に送信し、前記処理装置の各々は、一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込むことを特徴とする情報処理装置。
(付記2)
前記システム制御装置は、前記更新用ファームウェアプログラムの書き込み前に、前記処理装置の各々の前記一対のメモリ領域の運用に使用されているファームウェアプログラムの版数を検出し、前記更新用ファームウェアプログラムとの互換性の有無を判定することを特徴とする付記1の情報処理装置。
(付記3)
前記システム制御装置は、前記システム制御装置のハードウェア資源を制御する第2のファームウェアプログラムを格納するメモリ領域を一対有し、前記システム制御装置は、前記処理装置の更新用ファームウェアプログラムと前記第2のファームウェアプログラムを備える前記受信した更新用ファームウェアプログラムの前記第2のファームウェアプログラムを、一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込んだ後、前記処理装置の各々に、前記処理装置のファームウェアプログラムを送信することを特徴とする付記1の情報処理装置。
(付記4)
前記処理装置は、前記処理装置内の前記ハードウェア資源を管理する管理部と、前記管理部のための第3のファームウェアプログラムを格納する一対の第3のメモリ領域とを有し、前記管理部は、更新すべき前記処理装置のファームウェアプログラムと前記第3のファームウェアプログラムを備える前記更新用ファームウェアプログラムを、前記システム制御装置から受信した後、前記第3のファームウェアプログラムを、一対の前記第3のメモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込み、且つ前記処理装置のファームウェアプログラムを、前記一対のメモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込むことを特徴とする付記1の情報処理装置。
(付記5)
前記システム制御装置は、前記書き込み後、前記処理装置を起動又は再起動することを特徴とする付記1の情報処理装置。
(付記6)
前記システム制御装置は、前記互換性の有無を判定するためのファームウェアプログラム間の互換表を含んだ前記更新用ファームウェアプログラムを受信することを特徴とする付記2の情報処理装置。
(付記7)
前記システム制御装置は、前記第2のファームウェアプログラムを、一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込んだ後、他の前記メモリ領域に書き込むことを特徴とする付記3の情報処理装置。
(付記8)
前記システム制御装置は、前記更新用ファームウェアプログラムの書き込み前に、前記処理装置の各々の運用に使用されているファームウェアプログラムの版数を検出し、前記更新用ファームウェアプログラムとの互換性の有無を判定し、互換性がないことを検出した場合には、前記第2のファームウェアプログラムを、一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域のみに書き込むことを特徴とする付記3の情報処理装置。
(付記9)
前記システム制御装置は、一対の前記システム制御装置により構成され、一方のアクティブ側システム制御装置が、他方のスタンバイ側システム制御装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記第2のファームウェアプログラムを書き込み、前記一対のシステム制御装置をアクティブ側、スタンバイ側を切り替え、前記アクティブ側に切り替えられた他方のシステム制御装置が、前記スタンバイ側に切り替えられた一方のシステム制御装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記第2のファームウェアプログラムを書き込むことを特徴とする付記3の情報処理装置。
(付記10)
少なくとも演算処理装置と記憶装置とを含むハードウェア資源を有し、OSを動作する複数の処理装置と、前記複数の処理装置を制御するシステム制御装置とを有する情報処理装置のファームウェア更新方法において、前記システム制御装置が、外部装置から更新用ファームウェアプログラムを受信するステップと、前記システム制御装置が、前記受信したファームウェアプログラムを、前記処理装置の各々に送信するステップと、前記処理装置の各々が、前記ハードウェア資源を管理するファームウェアプログラムを格納する一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記送信されたフィームウェアプログラムを書き込むステップとを有することを特徴とする情報処理装置のファームウェア更新方法。
(付記11)
前記システム制御装置が、前記更新用ファームウェアプログラムの書き込み前に、前記処理装置の各々の前記一対のメモリ領域の運用に使用されているファームウェアプログラムの版数を検出し、前記更新用ファームウェアプログラムとの互換性の有無を判定するステップを更に有することを特徴とする付記10の情報処理装置のファームウェア更新方法。
(付記12)
前記受信ステップは、前記システム制御装置が、前記システム制御装置のハードウェア資源を管理する第2のファームウェアプログラムと前記処理装置のファームウェアプログラムとを受信するステップを有し、前記システム制御装置が、前記処理装置の各々に、前記処理装置のファームウェアプログラムを送信する前に、前記第2のファームウェアプログラムを、前記システム制御装置に設けられた一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込むステップを更に有することを特徴とする付記10の情報処理装置のファームウェア更新方法。
(付記13)
前記送信ステップは、前記システム制御装置が、前記処理装置内の前記ハードウェア資源を管理する管理部と、前記管理部のための第3のファームウェアプログラムを格納する一対の第3のメモリ領域とを有する前記処理装置に、前記処理装置のファームウェアプログラムと前記第3のファームウェアプログラムを備える前記更新用ファームウェアプログラムを送信するステップを有し、前記書込みステップは、前記管理部が、前記受信した前記第3のファームウェアプログラムを、一対の前記第3のメモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込むステップと、前記管理部が、前記処理装置のファームウェアプログラムを、前記一対のメモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込むステップとを有することを特徴とする付記10の情報処理装置のファームウェア更新方法。
(付記14)
前記システム制御装置が、前記書き込み後、前記処理装置を起動又は再起動するステップを更に有することを特徴とする付記10の情報処理装置のファームウェア更新方法。
(付記15)
前記受信ステップは、前記システム制御装置は、前記互換性の有無を判定するためのファームウェアプログラム間の互換表を含んだ前記更新用ファームウェアプログラムを受信するステップを有することを特徴とする付記11の情報処理装置のファームウェア更新方法。
(付記16)
前記システム制御装置が、前記第2のファームウェアプログラムを、一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込んだ後、他の前記メモリ領域に書き込むステップを更に有することを特徴とする付記12の情報処理装置のファームウェア更新方法。
(付記17)
前記システム制御装置が、前記更新用ファームウェアプログラムの書き込み前に、前記処理装置の各々の運用に使用されているファームウェアプログラムの版数を検出し、前記更新用ファームウェアプログラムとの互換性の有無を判定するステップと、互換性がないことを検出した場合には、前記第2のファームウェアプログラムを、一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域のみに書き込むステップを更に有することを特徴とする付記12の情報処理装置のファームウェア更新方法。
(付記18)
前記書込みステップは、一対のシステム制御装置により構成された前記システム制御装置の一方のアクティブ側システム制御装置が、他方のスタンバイ側システム制御装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記第2のファームウェアプログラムを書き込みステップと、前記一対のシステム制御装置をアクティブ側、スタンバイ側を切り替えるステップと、前記アクティブ側に切り替えられた他方のシステム制御装置が、前記スタンバイ側に切り替えられた一方のシステム制御装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記第2のファームウェアプログラムを書き込むステップとを有することを特徴とする付記12の情報処理装置のファームウェア更新方法。
運用中の処理装置を監視するシステム制御装置が、ファームウェアを受信し、各処理装置の一対のメモリ領域の内、運用に使用されていない一のメモリ領域に書き込むため、各処理装置の運用を停止することなく、処理装置内のファームウェアの更新が可能となる。又、更新用ファームウェアの互換性の有無を判定し、通常オンライン・ファーム・アップデートが可能かを判断し、互換性がない場合に処理装置を起動又は再起動するため、互換性がある場合は運用を停止することなく、互換性のないファームウェアに更新しても、運用している処理装置の停止時間を短縮できる。更に、システム制御装置と処理装置との各々の更新用ファームウェアを一括して受信し、更新するため、システム制御装置及び処理装置のファームウェアの更新を一元的に且つ短時間で実行でき、且つシステム制御装置更新成功後、処理装置に更新用ファームウェアを送信し、更新するため、システムの管理側であるシステム制御装置がいち早く適応でき、システム管理の運用性を確実にできる。
1 サーバ・システム(情報処理装置)
2A、2B 管理ユニット
3A〜3D システムボード(パーティションユニット)
4 通信パス
9 リモートPC
26A,26B MMB不揮発性メモリ
30 ボード管理部
34 CPU
35 メモリ
36A,36B BIOS不揮発性メモリ
37A,37B BMC不揮発性メモリ
100−1〜100−3 ファームウェア一式

Claims (4)

  1. 少なくとも演算処理装置と記憶装置とを含むハードウェア資源を有し、OSを動作する複数の処理装置と、
    前記複数の処理装置を制御するシステム制御装置とを有し、
    前記処理装置の各々は、前記ハードウェア資源を制御するファームウェアプログラムを格納する一対のメモリ領域を有し、
    前記システム制御装置は、外部装置から受信した前記処理装置を制御する更新用ファームウェアプログラムを、前記処理装置の各々に送信し、前記処理装置の各々は、前記一対のメモリ領域の内、運用に使用されていない一のメモリ領域に書き込むとともに、
    前記処理装置の前記一のメモリ領域に、前記更新用ファームウェアプログラムを書き込む前に、前記処理装置の各々の前記一対のメモリ領域の運用に使用されているファームウェアプログラムの版数を検出し、前記更新用ファームウェアプログラムとの互換性の有無を判定し、
    前記互換性が無いと判断した場合に、前記書き込み後、前記処理装置に起動又は再起動を指示し、前記起動又は再起動を指示された前記処理装置は、前記一のメモリ領域を運用側に切り換え、前記一のメモリ領域に書き込まれた前記更新用ファームウェアプログラムで起動又は再起動し、
    前記互換性が有ると判断した場合に、前記書き込み後の前記処理装置の次回の起動又は再起動により、前記一のメモリ領域を運用側に切り換え、前記一のメモリ領域に書き込まれた前記更新用ファームウェアプログラムで起動又は再起動する
    ことを特徴とする情報処理装置。
  2. 少なくとも演算処理装置と記憶装置とを含むハードウェア資源を有し、OSを動作する複数の処理装置と、
    前記複数の処理装置を制御する一対のシステム制御装置とを有し、
    前記処理装置の各々は、前記ハードウェア資源を制御するファームウェアプログラムを格納するメモリ領域を一対有し、
    前記システム制御装置は、前記システム制御装置のハードウェア資源を制御する第2のファームウェアプログラムを格納するメモリ領域を一対有し、
    前記システム制御装置は、外部装置から前記処理装置の更新用ファームウェアプログラムと更新用の前記第2のファームウェアプログラムとを一括して受信し、前記一対のシステム制御装置の内、アクティブ側に設定された一方のシステム制御装置が、前記受信した前記更新用の第2のファームウェアプログラムをスタンバイ側に設定された他方のシステム制御装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込んだ後、前記アクティブ側の一方のシステム制御装置をスタンバイ側に、前記スタンバイ側の他方のシステム制御装置をアクティブ側に切り替え、前記アクティブ側に切り替えられた他方のシステム制御装置が、前記スタンバイ側に切り替えられた一方のシステム制御装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記更新用の第2のファームウェアプログラムを書き込んだ後、前記処理装置の各々に、前記処理装置の更新用ファームウェアプログラムを送信し、前記処理装置の各々は、前記処理装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込む
    ことを特徴とする情報処理装置。
  3. 少なくとも演算処理装置と記憶装置とを含むハードウェア資源を有し、OSを動作する複数の処理装置と、前記複数の処理装置を制御するシステム制御装置とを有する情報処理装置のファームウェア更新方法において、
    前記システム制御装置が、外部装置から前記処理装置を制御する更新用ファームウェアプログラムを受信するステップと、
    前記システム制御装置が、前記処理装置の各々に前記更新用ファームウェアプログラムを送信する前に、前記処理装置の各々の一対のメモリ領域の運用に使用されているファームウェアプログラムの版数を検出し、前記更新用ファームウェアプログラムとの互換性の有無を判定するステップと、
    前記システム制御装置が、前記受信した更新用ファームウェアプログラムを、前記処理装置の各々に送信するステップと、
    前記処理装置の各々が、前記ハードウェア資源を制御するファームウェアプログラムを格納する前記一対のメモリ領域の内、運用に使用されていない一のメモリ領域に、前記送信されたフームウェアプログラムを書き込むステップと、
    前記システム制御装置は、前記互換性が無いと判断した場合に、前記書き込み後、前記処理装置に起動又は再起動を指示し、前記起動又は再起動を指示された前記処理装置は、前記一のメモリ領域を運用側に切り換え、前記一のメモリ領域に書き込まれた前記更新用ファームウェアプログラムで起動又は再起動するステップと、
    前記互換性が有ると判断した場合に、前記書き込み後の前記処理装置の次回の起動又は再起動により、前記一のメモリ領域を運用側に切り換え、前記一のメモリ領域に書き込まれた前記更新用ファームウェアプログラムで起動又は再起動するステップとを有する
    ことを特徴とする情報処理装置のファームウェア更新方法。
  4. 少なくとも演算処理装置と記憶装置とを含むハードウェア資源を有し、OSを動作する複数の処理装置と、前記複数の処理装置を制御する一対のシステム制御装置とを有する情報処理装置のファームウェア更新方法において、
    前記システム制御装置は、外部装置から前記処理装置の更新用ファームウェアプログラムと前記システム制御装置のハードウェア資源を制御する更新用第2のファームウェアプログラムとを一括して受信するステップと、
    前記受信した前記更新用第2のファームウェアプログラムを、前記システム制御装置の一対のメモリ領域の内、運用に使用されていない一の前記メモリ領域に書き込むステップと、
    前記システム制御装置が、前記更新用第2のファームウェアプログラムを書き込んだ後、前記処理装置の各々に、前記処理装置の更新用ファームウェアプログラムを送信するステップと、
    前記処理装置の各々が、前記処理装置の一対のメモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記処理装置の更新用ファームウェアプログラムを書き込むステップとを有し、
    前記更新用第2のファームウェアプログラムを書き込むステップは、
    アクティブ側に設定された一方のシステム制御装置が、スタンバイ側に設定された他方のシステム制御装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記更新用第2のファームウェアプログラムを書き込むステップと、
    前記更新用第2のファームウェアプログラムを書き込んだ後、前記アクティブ側の一方のシステム制御装置をスタンバイ側に、前記スタンバイ側の他方のシステム制御装置をアクティブ側に切り替えるステップと、
    前記アクティブ側に切り替えられた他方のシステム制御装置が、前記スタンバイ側に切り替えられた一方のシステム制御装置の一対の前記メモリ領域の内、運用に使用されていない一の前記メモリ領域に、前記更新用第2のファームウェアプログラムを書き込むステップとを有する
    ことを特徴とする情報処理装置のファームウェア更新方法。
JP2010006640A 2010-01-15 2010-01-15 情報処理装置及び情報処理装置のファームウェア更新方法 Active JP5564956B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010006640A JP5564956B2 (ja) 2010-01-15 2010-01-15 情報処理装置及び情報処理装置のファームウェア更新方法
US12/987,525 US8607219B2 (en) 2010-01-15 2011-01-10 Information processing device and a firmware updating method of the information processing device
EP11150652.3A EP2345959B1 (en) 2010-01-15 2011-01-11 An information processing device and a firmware updating method of the information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010006640A JP5564956B2 (ja) 2010-01-15 2010-01-15 情報処理装置及び情報処理装置のファームウェア更新方法

Publications (2)

Publication Number Publication Date
JP2011145910A JP2011145910A (ja) 2011-07-28
JP5564956B2 true JP5564956B2 (ja) 2014-08-06

Family

ID=43655328

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010006640A Active JP5564956B2 (ja) 2010-01-15 2010-01-15 情報処理装置及び情報処理装置のファームウェア更新方法

Country Status (3)

Country Link
US (1) US8607219B2 (ja)
EP (1) EP2345959B1 (ja)
JP (1) JP5564956B2 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8640118B2 (en) * 2011-05-24 2014-01-28 International Business Machines Corporation Managing firmware on a system board
TW201401098A (zh) * 2012-06-18 2014-01-01 Hon Hai Prec Ind Co Ltd 固件驗證方法及系統
WO2014147817A1 (ja) * 2013-03-22 2014-09-25 富士通株式会社 情報処理装置、プログラム更新方法、及びプログラム
US9116775B2 (en) * 2013-05-15 2015-08-25 Dell Products L.P. Relationship-based dynamic firmware management system
TWI497319B (zh) * 2013-08-13 2015-08-21 Inventec Corp 基板管理控制器的更新方法
US9250889B2 (en) * 2013-10-18 2016-02-02 International Business Machines Corporation Assigning severity to a software update
KR20150099269A (ko) * 2014-02-21 2015-08-31 삼성전자주식회사 펌웨어를 갱신하기 위한 전자 장치 및 방법
WO2015136966A1 (ja) * 2014-03-14 2015-09-17 オムロン株式会社 制御機器、制御システム、支援装置、および、制御機器のメンテナンスの管理方法
EP3164796B1 (en) 2014-07-02 2022-02-09 Hewlett-Packard Development Company, L.P. Firmware update
US9886264B2 (en) * 2014-12-09 2018-02-06 Xiaomi Inc. Method and device for upgrading firmware
US9846576B2 (en) * 2014-12-27 2017-12-19 Intel Corporation Technologies for reprogramming network interface cards over a network
JP6451522B2 (ja) * 2015-06-15 2019-01-16 富士通株式会社 情報システム、コンピュータ、方法、およびプログラム
JP2017027113A (ja) * 2015-07-15 2017-02-02 富士通株式会社 管理装置、管理方法及び管理プログラム
CN105094935B (zh) * 2015-09-24 2018-06-22 广东欧珀移动通信有限公司 一种在电子设备中写固件的方法及电子设备
US9946533B2 (en) 2015-09-30 2018-04-17 Apple Inc. Software updating
US10089105B2 (en) * 2015-11-23 2018-10-02 Dell Products L.P. Systems and methods for bios update optimization
ES2827790T3 (es) 2017-08-21 2021-05-24 Carrier Corp Sistema antiincendios y de seguridad que incluye bucle accesible por dirección y mejora automática de firmware
TWI655582B (zh) * 2017-09-12 2019-04-01 神雲科技股份有限公司 具有雙韌體儲存空間之伺服器及其韌體更新方法
US11099831B2 (en) * 2018-02-08 2021-08-24 Micron Technology, Inc. Firmware update in a storage backed memory system
IT201800007180A1 (it) * 2018-07-13 2020-01-13 Dispositivo di controllo elettronico
JP2020017059A (ja) * 2018-07-25 2020-01-30 日本電気株式会社 情報処理装置、情報処理システム、情報処理方法及びプログラム
US11151255B2 (en) * 2018-10-26 2021-10-19 Dell Products L.P. Method to securely allow a customer to install and boot their own firmware, without compromising secure boot
US11243757B2 (en) * 2018-12-03 2022-02-08 Dell Products L.P. Systems and methods for efficient firmware update of memory devices in BIOS/UEFI environment
JP7225936B2 (ja) * 2019-03-07 2023-02-21 株式会社ノーリツ マルチ給湯システム
US11100230B1 (en) 2019-12-31 2021-08-24 Management Services Group, Inc. Modular embedded chassis with firmware for removably coupled compute devices, and methods and systems for the same
CN113190256B (zh) * 2021-05-27 2023-03-28 新华三技术有限公司 一种升级方法、装置及设备

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0790554A1 (de) 1996-02-16 1997-08-20 Siemens Aktiengesellschaft Verfahren und Schaltungsanordnung zur Steuerung eines Firmwareladeprozesses
JP2000105750A (ja) * 1998-09-28 2000-04-11 Toshiba Corp プログラム管理システム
JP2001222431A (ja) * 2000-02-14 2001-08-17 Fujitsu Ltd 資源管理装置及びプログラム記録媒体
US6832373B2 (en) * 2000-11-17 2004-12-14 Bitfone Corporation System and method for updating and distributing information
JP2002288064A (ja) * 2001-03-28 2002-10-04 Minolta Co Ltd データ通信プログラム、データ通信プログラムを記録したコンピュータ読み取り可能な記録媒体、データ通信装置およびデータ通信方法
CA2357382A1 (en) 2001-09-17 2003-03-17 Soma Networks, Inc. Software update method, apparatus and system
US20030074657A1 (en) * 2001-10-12 2003-04-17 Bramley Richard A. Limited time evaluation system for firmware
JP4189570B2 (ja) * 2001-12-28 2008-12-03 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置、ファームウェアの送信方法、及び画像処理装置の管理システム
JP2003308215A (ja) * 2002-02-14 2003-10-31 Canon Inc 情報処理装置、制御方法、制御プログラム
US7243347B2 (en) * 2002-06-21 2007-07-10 International Business Machines Corporation Method and system for maintaining firmware versions in a data processing system
TWI227441B (en) * 2002-10-11 2005-02-01 Ambit Microsystems Corp Firmware upgrade method for digital subscriber line device
US20040093592A1 (en) * 2002-11-13 2004-05-13 Rao Bindu Rama Firmware update in electronic devices employing SIM card for saving metadata information
JP2004199277A (ja) 2002-12-17 2004-07-15 Fujitsu Ltd Biosの冗長管理方法、データ処理装置及びストレージシステム
US7530071B2 (en) * 2004-04-22 2009-05-05 International Business Machines Corporation Facilitating access to input/output resources via an I/O partition shared by multiple consumer partitions
JP2006079155A (ja) 2004-09-07 2006-03-23 Hitachi Ltd 情報処理装置
US20060095708A1 (en) * 2004-11-04 2006-05-04 International Business Machines Corporation Apparatus and method for parallel installation of logical partitions
JP5279981B2 (ja) 2004-11-22 2013-09-04 富士通株式会社 更新制御プログラム、更新制御方法および更新制御装置
US7774596B2 (en) * 2005-02-02 2010-08-10 Insyde Software Corporation System and method for updating firmware in a secure manner
JP4791061B2 (ja) * 2005-03-18 2011-10-12 富士通株式会社 計算機システムのファームウェアのバージョン管理方法及び情報処理装置
WO2007088612A1 (ja) * 2006-02-01 2007-08-09 Fujitsu Limited ファームウェアアップデート作業の予告情報通知方法
EP1830256B1 (en) * 2006-03-01 2014-08-13 Axis AB Method and system for upgrading a plurality of devices
FR2903791B1 (fr) 2006-07-13 2008-10-17 Airbus France Sas Procede de telechargement d'un module logiciel.
JP2008282090A (ja) * 2007-05-08 2008-11-20 Seiko Epson Corp 電子機器及び電子機器におけるファームウェア更新方法
US8185886B2 (en) * 2007-06-26 2012-05-22 Intel Corporation Method and apparatus to enable dynamically activated firmware updates
JP4430093B2 (ja) * 2007-08-29 2010-03-10 富士通株式会社 記憶制御装置およびファームウェア更新方法
TWI363298B (en) * 2008-02-29 2012-05-01 Hon Hai Prec Ind Co Ltd Communication device and firmware update method thereof
US9354857B2 (en) * 2008-03-19 2016-05-31 Lenovo (Singapore) Pte. Ltd. System and method to update firmware on a hybrid drive
TWI386847B (zh) * 2009-02-04 2013-02-21 Novatek Microelectronics Corp 可安全復原的韌體更新方法及可安全復原之韌體更新的嵌入式電子裝置
US20100241838A1 (en) * 2009-03-20 2010-09-23 Jason Cohen Method and system for firmware updates
US8429640B2 (en) * 2009-06-05 2013-04-23 Dell Products L.P. System and method for modifying firmware
TW201118731A (en) * 2009-11-18 2011-06-01 Inventec Corp Method for upadating firmware of embedded system

Also Published As

Publication number Publication date
JP2011145910A (ja) 2011-07-28
EP2345959B1 (en) 2016-10-19
EP2345959A1 (en) 2011-07-20
US8607219B2 (en) 2013-12-10
US20110179407A1 (en) 2011-07-21

Similar Documents

Publication Publication Date Title
JP5564956B2 (ja) 情報処理装置及び情報処理装置のファームウェア更新方法
JP5623593B2 (ja) ベーシック・インプット/アウトプット・システムを同時に更新するためのラックおよびその方法
US8856776B2 (en) Updating firmware without disrupting service
US7809836B2 (en) System and method for automating bios firmware image recovery using a non-host processor and platform policy to select a donor system
TWI655582B (zh) 具有雙韌體儲存空間之伺服器及其韌體更新方法
RU2602378C9 (ru) Стойка с множеством модулей управления стойкой и способ обновления встроенного программного обеспечения, используемого для стойки
JP2008186296A (ja) ストレージシステム、ストレージ装置、ファームウェアの活性交換方法、ファームウェアの活性交換プログラム
US8117434B2 (en) Component configuration mechanism for rebooting
JP7002358B2 (ja) 情報処理システム、情報処理装置、情報処理装置のbios更新方法、及び情報処理装置のbios更新プログラム
KR20090120541A (ko) 운영체제(os) 자동복구기능을 갖는 임베디드 시스템 및운영체제 자동복구 방법
JP6028851B2 (ja) 情報処理装置、プログラム更新方法、及びプログラム
JP5186551B2 (ja) ピア・プログラマブル・ハードウェア・デバイスの自動ファームウェア復元方法及びプログラム
JP5285045B2 (ja) 仮想環境における故障復旧方法及びサーバ及びプログラム
JP5387767B2 (ja) 実行中のプログラムの更新技術
JP2012203442A (ja) エンクロージャマネージャ、ファームウェア管理システム、ファームウェア管理方法およびプログラム
TWI547873B (zh) 端點伺服器的控制模組及其韌體更新方法
CN109684153B (zh) 具有双韧体储存空间的服务器及其韧体更新方法
JP2007200103A (ja) クライアントサーバシステムおよびリソース制御方法
JP2006146709A (ja) 更新制御プログラム、更新制御方法および更新制御装置
JP2019016218A (ja) 情報処理装置、制御装置および情報処理装置の制御方法
TW201926035A (zh) 韌體更新方法及可更新韌體的基板管理控制器
JP4571056B2 (ja) 情報処理装置に新たに装置を組み込むための方法、情報処理装置及びプログラム
JP2021184222A (ja) 並列処理装置及びファームウェア更新プログラム
CN113688143A (zh) 具系统设定数据同步功能的服务器
CN114327535A (zh) 一种bmc固件更新保护方法及相关组件

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120910

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130430

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130701

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130827

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131007

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140224

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20140313

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140401

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140425

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140520

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140602

R150 Certificate of patent or registration of utility model

Ref document number: 5564956

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150