JP2015114841A - 情報処理装置、制御プログラム、及びデータ移動方法 - Google Patents

情報処理装置、制御プログラム、及びデータ移動方法 Download PDF

Info

Publication number
JP2015114841A
JP2015114841A JP2013256428A JP2013256428A JP2015114841A JP 2015114841 A JP2015114841 A JP 2015114841A JP 2013256428 A JP2013256428 A JP 2013256428A JP 2013256428 A JP2013256428 A JP 2013256428A JP 2015114841 A JP2015114841 A JP 2015114841A
Authority
JP
Japan
Prior art keywords
program
recording medium
data
unit
information processing
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.)
Withdrawn
Application number
JP2013256428A
Other languages
English (en)
Inventor
信二 桧山
Shinji Hiyama
信二 桧山
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 JP2013256428A priority Critical patent/JP2015114841A/ja
Priority to US14/541,317 priority patent/US20150161223A1/en
Publication of JP2015114841A publication Critical patent/JP2015114841A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】情報処理装置に搭載のファームウェアが認識できないデータが書き込まれた記録媒体を用いて、そのファームウェアに必要な処理を実行させるための技術を提供する。
【解決手段】ブート制御プログラム25aは、MMB23の立ち上げモード情報23aがメンテナンスモードを表していた場合、組込OS26を起動させる。組込OS26は、CDドライブ装置18に装着されたCDメディア18a上の更新プログラム51、及びデータ52をフラッシュメモリ15にコピーする。フラッシュメモリ15上の更新プログラム51は、EFIコードのシェルモード41時に実行が指示された場合、フラッシュメモリ15上のデータ52を用いて、フラッシュメモリ13上のEFIコードをアップデートする。そのようにして、標準的な方法で更新プログラム51、及びデータ52が書き込まれたCDメディア18を用いたEFIコードのアップデートを可能にさせる。
【選択図】図2

Description

本発明は、データを記録させた記録媒体を用いた処理を実行させるための技術に関する。
現在、情報処理装置はサーバとして広く用いられている。サーバは、ネットワークを介して接続されるクライアントである端末装置を使用するユーザに対し、機能、及び/或いは、データ等をサービスとして提供する。端末装置のユーザは、サーバが提供するサービスを任意に利用できるのが普通である。
サーバがサービスの提供を想定する端末装置のユーザは、通常、非常に多い。また、機密性の高いデータをサーバに管理させることも多い。そのようなことから、サーバが設置された施設(データセンター等)では、通常、情報の持ち出し(例えば漏洩)が行えないように、厳しく管理/規制されている。このセキュリティ上の観点から、実際にサーバが設置されている場所(以降「サーバルーム」と表記)へのデータが書込可能な記録媒体(USB(Universal Serial Bus)メモリ、等)の持ち込みは厳禁となっているのが普通である。
サーバのような情報処理装置では、初めに、ハードウェア資源の基本的な制御を行うためのプログラムであるファームウェアが起動され、次に、ファームウェアよりも多機能なプログラムであるOS(Operating System)が起動されるのが普通である。
サーバルームへの記録媒体の持ち込みは、ファームウェアの制御下で処理を実行させるために行われる場合がある。その処理とは、例えばファームウェアのアップデートである。ファームウェアのアップデートは、通常、そのファームウェアの制御下で行わなければならない。
ファームウェアのアップデートには、アップデート用のデータとして、アップデート後のファームウェア(少なくともファームウェアの一部)が必要であり、場合によっては、そのアップデートを行うためのプログラム(以降「更新プログラム」と表記)が加わる。そのようなアップデート用データを書き込む記録媒体としては、追加の書き込みが行えないCD(Compact Disc)等が用いられることが多い。
ファームウェアには、1つ以上のファイルシステムが搭載される。このファイルシステムは、記録媒体に記録されているデータを管理するためのプログラムである。搭載されるファイルシステムによって、ファームウェアが対応可能な記録媒体のフォーマットは制限される。
サーバのような情報処理装置では、これまでファームウェアとしてBIOS(Basic Input/Output System)が多く採用されていた。しかし、近年では、ファームウェアとして、EFI(Extensible Firmware Interface)に対応のファームウェア(以降「EFIコード」と表記)が採用されることが多くなっている。これは、EFIコードは、BIOSが有する制約が多いという不具合を克服するために開発されたファームウェアだからである。
追加の書き込みが行えないCDとして、例えばCD-ROM(Read Only Memory)がある。このCD-ROMは、CDFS(CD-ROM File System)によるフォーマット(以降「CDFSフォーマット」と表記)が行われているCDであり、BIOSは対応している。しかし、EFIコードはCDFSフォーマットには対応しておらず、CD-ROM上のデータは基本的に認識できない。そのため、従来は、EFIコードの制御下で行わせる処理(アップデート等)にCDFSフォーマットのCD(CD-ROM)を用いる場合、処理用のデータをEFIコードが認識可能なデータにして、そのCD上に書き込むようにしている。
EFIコードは、FAT(File Allocation Tables)ファイルシステムによるFATフォーマットに対応している。このことから、CDFSフォーマットのCD上には、FATフォーマットの処理用データを書き込むことが行われている。しかし、FATフォーマットの処理用データは、標準的な方法でCD上に書き込むことはできない。そのため、CD上に書き込むべきFATフォーマットの処理用データは、イメージ(イメージデータ)としている。
FATフォーマットの処理用データのイメージは、例えば処理用データをFATフォーマットの記録媒体(USBメモリ、或いはハードディスク、等)に書き込み、書き込んだ処理用データをイメージとして読み出すことで生成(取得)することができる。そのようなイメージは、FATフォーマットで処理用データの内容を表しているため、EFIコードでも内容を認識することができる。
FATフォーマットの処理用のイメージの生成には、処理用データのFATフォーマットの記録媒体への書き込み、及び書き込んだ処理用データのイメージとしての読み出し、等を行わなければならず、煩雑な作業が必要である。そのため、処理用のCDの準備に長い時間が必要となっている。また、FATファーマットのイメージのCDへの書き込みには、その書き込みのためのツール、及びその書き込みが可能なハードウェア資源が揃っているというシステム環境が必要である。このようなことから、サーバのような情報処理装置に搭載されたファームウェアに必要な処理を効率的に実行させるためには、標準的な方法でファームウェアが認識できないデータが書き込まれた記録媒体を使用可能にすることも重要と思われる。
特開2010−79821号公報 特開2004−272764号公報
1側面では、本発明は、サーバ等の情報処理装置(コンピュータ)に搭載されたファームウェアが認識できないデータが書き込まれた記録媒体を用いて、そのファームウェアに必要な処理を実行させるための技術を提供することを目的とする。
本発明を適用した1システムは、第1のフォーマットの第1の記録媒体と、前記第1の記録媒体に対応可能な第1のプログラムを記憶した第1の記憶部と、前記第1の記録媒体、及び前記第1のプログラムが対応していない第2のフォーマットの第2の記録媒体にそれぞれ対応可能な第2のプログラムを記憶した第2の記憶部と、前記第2の記録媒体が着脱可能であり、装着された前記第2の記録媒体にアクセス可能な駆動部と、前記第1のプログラム、及び前記第2のプログラムを実行可能な演算処理装置と、前記演算処理装置の実行対象として、前記第1のプログラム、及び前記第2のプログラムのうちの一方を設定するための設定部と、前記設定部により前記実行対象として前記第2のプログラムが設定されていた場合に、前記第2のプログラムを前記演算処理装置に実行させ、前記第2のプログラムの制御により、前記駆動部に装着される前記第2の記録媒体上のデータを前記第1の記憶媒体に記憶させる起動制御部と、を有する。
本発明を適用した場合には、サーバ等の情報処理装置に搭載されたファームウェアが認識できないデータが書き込まれた記録媒体を用いて、そのファームウェアに必要な処理を実行させることができる。
本実施形態による情報処理装置の構成例を説明する図である。 EFIコードに搭載されたブート制御プログラムの機能例を説明する図である。 EFIコード、組込OS、及び更新プログラムがそれぞれ実行する処理の流れの例を表すフローチャートである。
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
図1は、本実施形態による情報処理装置の構成例を説明する図である。本実施形態による情報処理装置1は、例えばデータセンタにサーバとして設置される情報処理装置である。このことから、情報処理装置1は以降「サーバ」と表記する。
そのサーバ1は、図1に表すように、CPU(Central Processing Unit)11、メモリ(例えばメモリモジュール)12、3つのフラッシュメモリ13〜15、チップセット16、USB/SATA(Serial ATA(AT Attachment))コントローラ17、CDドライブ装置18、ハードディスク装置19、SAS(Serial Attached SCSI(Small Computer System Interface))コントローラ20、PCIe(Peripheral Components Interconnect Express)スイッチ21、複数のPCIスロット22、及びMMB(Management Board)23を備えている。
3つのフラッシュメモリ13〜15は、それぞれ、EFIコード25の格納用、組込OS26の格納用、及びCDドライブ装置18に装着されたCDメディア18a上のデータのコピー用に設けている。この3つのフラッシュメモリ13〜15は、EFIコード25が対応可能なように、FATフォーマットで初期化されている。
チップセット16は、MMB23、USB/SATAコントローラ17、及びPCIeスイッチ21と、CPU11との間でデータの送受信を管理する。それにより、CPU11は、チップセット16を介して、MMB23、CDドライブ装置18に装着されたCDメディア18aへのアクセス、及びハードディスク装置19へのアクセス等を行う。
モニタ32をサーバ1に接続する場合、そのモニタ32はこのチップセット16に接続される。モニタ32がチップセット16に接続された場合、CPU11は、必要に応じて、モニタ32に出力すべき画面(画像データ)を生成し、生成した画面をチップセット16に出力することにより、その画面をモニタ32上に出力させることができる。そのモニタ32は、サーバ1に搭載させても良い。
MMB23は、サーバ1を管理する管理装置である。MMB23は、サーバ1が備えるハードウェア資源の状態監視、各種情報の表示、電源のオン/オフを含む電源制御等を行う。
MMB23は、サーバ1の管理のために、ネットワーク(例えばLAN(Local Area Network))35と接続され、通常、常時、動作させるようになっている。それにより、各種情報の表示、及び電源制御等は、ネットワーク35に接続させた端末装置により行えるようになっている。本実施形態では、ネットワーク35に接続させた端末装置から、立ち上げモードをMMB23に設定可能にしている。図1中の23aは、設定された立ち上げモードの内容を表す立ち上げモード情報である。この立ち上げモード情報23aは、電源のオン、或いはシステムリセットによるサーバ1の起動時、CPU11によって参照される。
USB/SATAコントローラ17には、チップセット16の他に、フラッシュメモリ15、及びCDドライブ装置18が接続されている。それにより、USB/SATAコントローラ17は、チップセット16を介したCPU11の指示に従い、CDドライブ装置18の制御、つまり装着されたCDメディア18aへのアクセス、及びフラッシュメモリ15へのアクセスを行う。USB/SATAコントローラ17とチップセット16間はUSB、USB/SATAコントローラ17とフラッシュメモリ15、及びCDドライブ装置18の各間はSATAにより接続されている。
サーバ1に入力装置(例えばキーボード)31を接続する場合、その入力装置31はこのUSB/SATAコントローラ17と接続される。入力装置31がUSB/SATAコントローラ17に接続された場合、オペレータは、入力装置31への操作により、サーバ1を制御することが可能となる。その入力装置31は、サーバ1に搭載させても良い。
オペレータは、入力装置31をサーバ1に接続する場合、モニタ32のサーバ1への接続を併せて行う。それにより、オペレータは、モニタ32に表示される画面を見ながら、入力装置31への操作を通して所望の処理をサーバ1に行わせる。
ハードディスク装置19は、OS19aが格納されている記憶装置であり、SAS/SATAコントローラ20と接続されている。このハードディスク装置19には、他に、例えば各種アプリケーション・プログラム、及び各種データが格納されている。
SAS/SATAコントローラ20は、PCIeスイッチ21と接続されている。CPU11からの指示は、チップセット16、及びPCIeスイッチ21を介してSAS/SATAコントローラ20に通知される。それにより、SAS/SATAコントローラ20は、CPU21からの指示に従って、ハードディスク装置19を制御する。SAS/SATAコントローラ20とハードディスク装置19間は、SAS、或いはSATAにより接続され、SAS/SATAコントローラ20とPCIeスイッチ21との間はPCIeにより接続されている。
PCIeスイッチ21に接続されている各スロット22は、拡張カード等をサーバ1に追加するために用いられる。PCIeスイッチ21は、各スロット22(スロット22に接続された拡張カード等)、及びSAS/SATAコントローラ20と、チップセット16との間のデータの転送を制御する。
サーバ1では、バグの修正、或いは機能の追加等のために、EFIコード25をアップデート(更新)する場合がある。EFIコード25のアップデートは、EFIコード25の制御下で行う必要がある。しかし、サーバ1が設置されたサーバルームには、セキュリティ上、追加のデータ書き込みが可能な記録媒体を持ち込むことはできない。それにより、EFIコード25のアップデート用のデータは、追加のデータ書き込みができない記録媒体に記録しなければならない。本実施形態では、追加のデータ書き込みができない記録媒体としてCDメディア18aを想定し、その想定により、サーバ1にCDドライブ装置18を搭載させている。このCDドライブ装置18も、必要に応じてサーバ1に接続させるものであっても良い。
EFIコード25は、CDメディア18aに対応しておらず、CDメディア18a上に標準的な方法で書き込まれたデータは基本的に認識できない。EFIコード25が認識できるようにデータをCDメディア18aに書き込む場合、面倒な作業が必要となるだけでなく、CDメディア18aにデータを書き込ませる装置に要求されるシステム環境上の制約もある。そのため、CDメディア18aの用意に要する時間が長くなって、EFIコード25の迅速なアップデートが非常に困難となる。このことから、本実施形態では、標準的な方法によりデータが書き込まれたCDメディア18aを用いたEFIコード25のアップデートを行えるようにしている。CDメディア18a上に標準的な方法で必要なデータを書き込めば良いため、EFIコード25のアップデートに用いるCDメディア18aは容易、且つ迅速に用意することができる。
上記のように、EFIコード25は、CDメディア18a上に標準的な方法で書き込まれたデータを認識することはできない。このことから、本実施形態では、CDメディア18a上のデータを、EFIコード25が対応している記録媒体上にコピーするようにしている。フラッシュメモリ15は、CDメディア18a上のデータのコピー用に設けている。このCDメディア18aという名称は、追加のデータ書き込みができないCDの総称として用いている。追加のデータ書き込みができない記録媒体は、標準的な方法で書き込んだデータをEFIコード25が認識できない記録媒体であれば良いことから、CDメディア18aに限定されない。
CDメディア18a上のデータのフラッシュメモリ15へのコピーは、フラッシュメモリ14に格納した組込OS26により行わせるようにしている。この組込OS26は、情報処理装置(コンピュータ)向けのOSとは異なり、リアルタイム性、少ないメモリ量で動作するコンパクト性を満たしている。また、組込OS26には、高い信頼性・安定性がある。このことから、組込OS26を採用することにより、より短い時間で確実に、CDメディア18a上のデータをフラッシュメモリ15にコピーすることができる。
組込OS26は、CDメディア18a上のデータをフラッシュメモリ15にコピーさせるためだけに用いている。そのため、本実施形態では、組込OS26に、CDメディア18a上のデータを自動的にフラッシュメモリ15にコピーさせるようにしている。EFIコード25がデータを認識できるように、フラッシュメモリ15、他のフラッシュメモリ13、及び14は共に、FATフォーマットで初期化されている。サーバ1のハードウェア資源の相違に対応できるように、組込0S26は、データのコピー元、データのコピー先等の設定に従って動作させても良い。
本実施形態では、組込OS26の起動は、MMB23が管理する立ち上げモード情報23aにより制御するようにしている。電源のオン、或いはシステムリセット時、CPU11が最初に読み出すプログラムはEFIコード25である。このことから、本実施形態では、EFIコード25に、MMB23の立ち上げモード情報23aを参照し、必要に応じて、組込OS26を起動させるためのサブプログラムであるブート制御プログラム25aを組み込んでいる。なお、ここでは、EFIコード25を読み出すためのプログラムであるローダは無視している。
図2は、EFIコードに搭載されたブート制御プログラムの機能例を説明する図である。ここで図2を参照し、EFIコード25に搭載(追加)されたブート制御プログラム25aの機能例、及びそのブート制御プログラム25aによって直接、或いは間接的に起動される各プログラムの機能例について詳細に説明する。
本実施形態では、EFIコード25のアップデート用データとして、EFIコード25のアップデートを行う更新プログラム51、及びその更新プログラム51がアップデートに用いるデータ52をCDメディア18aに記録させるようにしている。データ52は、例えばEFIコード25上で置き換えるべき部分の新しいプログラムデータである。
電源のオン、或いはシステムリセットにより、CPU11はフラッシュメモリ13からEFIコード25を読み出してメモリ12に書き込み、EFIコード25の実行を開始する。そのようにして起動したEFIコード25は、ブート制御プログラム25aに制御を渡す。
ブート制御プログラム25aは、MMB23から立ち上げモード情報23aを取得する。本実施形態では、立ち上げモード情報23aは、立ち上げモードとして、通常モード、メンテナンスモード、及びシェル(Shell)モードのうちの何れかを表すようになっている。
通常モードは、EFIコード25の起動後、続けてハードディスク装置19に格納されているOS19aの起動を要求するモードである。そのため、ブート制御プログラム25は、OS19aをハードディスク装置19から読み出すブートを行う。制御は、そのブートによって起動されたOS19aに移行する。
メンテナンスモードは、組込OS26の起動を要求するモードである。そのため、ブート制御プログラム25aは、組込OS26を起動させる。組込OS26の起動により、制御は組込OS26に渡さなければならない。このことから、EFIコード25は終了する。
起動した組込OS26は、チップセット16、及びUSB/SATAコントローラ17を介してCDドライブ装置18を制御し、CDメディア18a上の更新プログラム51、及びデータ52をフラッシュメモリ15にコピーする。フラッシュメモリ15にデータをコピーした後、組込OS26は、システムリセットを行う。それにより、再度、EFIコード25が起動し、ブート制御プログラム25aに制御が渡る。組込OS26にシステムリセットを自動的に行わせるのは、オペレータの作業量をより抑えるためである。
シェルモードは、EFIコード25のシェル41の起動を要求するモードである。そのため、ブート制御プログラム25aは、シェル41に制御を渡す。このシェル41は、EFIコード25に搭載されたアプリケーション・プログラムである。以降、混乱を避けるために、EFIコード25は、ブート制御プログラム25a、シェル41、及びそれら以外の部分から構成されているとの想定で説明を行う。ブート制御プログラム25a、及びシェル41以外の部分は「EFIコード本体」と表記する。
シェルは、オペレータの操作による指示を認識して、認識した指示に応じた機能を提供するためのプログラムである。EFIコード25のシェル41は、CLI(Command Line Interface)を提供する。それにより、オペレータは、シェルモードの設定時、つまりシェル41の実行時、サーバ1に接続させたモニタ32の画面を見ながら、入力装置31を用いてコマンドを入力し、入力したコマンドの実行を指示することができる。
フラッシュメモリ15上の更新プログラム51を実行させる場合、オペレータは、入力装置31を操作して、フラッシュメモリ15にアクセスし、そのフラッシュメモリ15上の更新プログラム51の実行を指示する。その指示により、シェル41から制御が渡されるEFIコード本体は、フラッシュメモリ15上の更新プログラム51を起動する。その結果、制御は更新プログラム51に渡る。ハードディスク装置19上のOS19aの起動をオペレータが指示した場合、シェル41から制御が渡されるEFIコード本体は、そのOS19aを起動させる。
起動された更新プログラム51は、フラッシュメモリ15上のデータ52を用いて、フラッシュメモリ13上のEFIコード25のアップデートを行う。そのアップデートを行った後、更新プログラム51は終了し、制御はEFIコード25に戻る。
組込OS26、及びシェル41は、繰り返し実行させる必要は通常はない。このことから、ブート制御プログラム25aは、MMB23が管理する立ち上げモード情報23aがメンテナンスモード、或いはシェルモードを表していた場合、その立ち上げモード情報23aを自動更新させる。その自動更新により、立ち上げモード情報23aの表す立ち上げモードは、メンテナンスモード→シェルモード、或いはシェルモード→通常モード、に変更される。メンテナンスモード→シェルモードへの立ち上げモード情報23aの自動更新は、例えば組込OS26の起動前に行われる。シェルモード→通常モードへの立ち上げモード情報23aの自動更新は、例えばシェル41の起動前に行われる。
立ち上げモードの指定は、機械的な機構(例えばスイッチ、或いは入力装置31、等)を用いて行わせても良い。しかし、機械的な機構による立ち上げモードの指定では、その機械的な機構への操作が煩わしい、その操作をオペレータがし忘れることが有り得る、といった不具合がある。このことから、本実施形態では、立ち上げモード情報23aの自動更新により、オペレータがより容易、且つ迅速にEFIコード25のアップデートを行えるようにさせている。
EFIコード25のアップデートを行うべきサーバ1の台数は、多い場合がある。しかし、MMB23が保持する立ち上げモード情報23aの更新は、ネットワーク35と接続された端末装置を用いて行うことができる。そのため、各サーバ1の立ち上げモード情報23aの更新は、迅速に行うことができる。このことも、立ち上げモードの設定を立ち上げモード情報23aにより行うようにした理由である。
図3は、EFIコード、組込OS、及び更新プログラムがそれぞれ実行する処理の流れの例を表すフローチャートである。最後に、図3を参照し、EFIコード25のブート制御プログラム25aの制御によって、そのEFIコード25自身、組込OS26、及び更新プログラム51がそれぞれ実行する処理について詳細に説明する。
EFIコード25、組込OS26、及び更新プログラム51は、全てCPU11が実行するプログラムである。このことから、図3に表記のEFIコード25から組込OS26への矢印、EFIコード25から更新プログラム51への矢印、及び更新プログラム51からEFIコード25への矢印は全て、制御が渡される関係を表している。
電源のオン、或いはシステムリセットにより、EFIコード25はフラッシュメモリ13からメモリ12に読み出されて起動される。起動したEFIコード25のEFIコード本体は、先ず、CPU11、及びチップセット16等を対象にしたシステムの初期化を行う(SE1)。そのシステムの初期化を行った後、制御はブート制御プログラム25aに渡される。
制御が渡されたブート制御プログラム25aは、MMB23から立ち上げモード情報23aを取得し、取得した立ち上げモード情報23aが表す立ち上げモードの判定を行う(SE2)。
立ち上げモード情報23aが通常モードを表していた場合、SE2で立ち上げモードは通常モードと判定され、ブート制御プログラム25aは、EFIコード本体により、ハードディスク装置19上のOS19aを起動させる。OS19aの起動により、制御はOS19aに渡される。そのため、SE3に続く処理は省略している。
立ち上げモード情報23aがメンテナンスモードを表していた場合、SE2で立ち上げモードはメンテナンスモードと判定され、SE4に移行する。
SE4では、ブート制御プログラム25aは、MMB23に要求して、そのMMB23が保持している立ち上げモード情報23aが表す立ち上げモードをメンテナンスモードからシェルモードに変更させる。次にブート制御プログラム25aは、組込OS26を起動させる(SE5)。その後、EFIコード25は終了する。そのEFIコード25の終了により、起動される組込OS26に制御が渡る。
EFIコード25は、例えばフラッシュメモリ14内の組込OS26のローダを実行させる。そのローダは、組込OS26をフラッシュメモリ14からメモリ12に読み出すブートを行う(SO1)。そのブートにより、組込OS26は起動し、起動した組込OS26は制御を獲得する。
組込OS26は、チップセット16、USB/SATAコントローラ17を介して、CDドライブ装置18を制御し、CDドライブ装置18に装着されたCDメディア18a上の更新プログラム51、及びデータ52をフラッシュメモリ15にコピーする。その後、組込OS26は、システムリセットを実行し、終了する。それにより、EFIコード25が再度、起動される。
EFIコード25のSE2において、立ち上げモード情報23aが立ち上げモードとしてメンテナンスモードを表していると判定された場合、ブート制御プログラム25aは、シェル41を起動させる。ブート制御プログラム25aは、シェル41を起動させる前に、MMB23に要求して、そのMMB23が保持している立ち上げモード情報23aが表す立ち上げモードをシェルモードから通常モードに変更させる。
シェル41の起動により、制御はシェル41に渡される(SE6)。シェル41は、モニタ32上にCLIの画面を表示させ、入力装置31を介してオペレータが行った指示を解釈する。それにより、オペレータが何らかの指示のための操作を入力装置31に行った場合、シェル41は、その指示の解釈を行い、解釈した指示を判定する(SE7)。
オペレータが更新プログラム51の起動を指示した場合、SE7でその旨が判定され、シェル41は、EFIコード本体により、更新プログラム51を起動させる(SE9)。更新プログラム51の起動により、制御は更新プログラム51に渡される。
更新プログラム51は、例えば自身のローダによって、フラッシュメモリ15からメモリ12に読み出すブートを行う(SU1)。そのブートにより、更新プログラム51は起動し、起動した更新プログラム51は、制御を得て、フラッシュメモリ15上のデータ52を用いて、フラッシュメモリ13上のEFIコード25のアップデートを行う(SU2)。更新プログラム51は、そのアップデートを行った後、自動的に終了する。それにより、制御はEFIコード25に戻る。
EFIコード25のSE7において、オペレータがOS19aの起動を指示したと判定した場合、シェル41は、EFIコード本体により、OS19aを起動させる(SE9)。OS19aの起動により、制御はOS19aに渡されることから、SE3と同様に、SE8に続く処理は省略している。
オペレータが更新プログラム51の起動、及びOS19aの起動以外の指示を行った場合、SE7でその旨が判定され、シェル41は、指示に応じた処理を実行する(SE10)。その後は再度、SE6に戻る。それにより、オペレータは、EFIコード25のアップデート以外の処理をEFIコード25に実行させることができる。
なお、本実施形態では、アップデートを行わせるファームウェアはEFIコード25としているが、アップデートを行わせるファームウェアはEFIコード25に限定されない。また、EFIコード25に実行させる処理も、EFIコード25自身のアップデートに限定されない。
例えばPCIeスイッチ21はファームウェアが格納されたメモリ21aを備えている。このことから、PCIeスイッチ21のファームウェアのアップデート用のデータをCDメディア18aに格納させ、そのCDメディア18aを用いたPCIeスイッチ21のファームウェアのアップデートをEFIコード25に行わせても良い。
また、本実施形態では、CDメディア18a上のデータの書き込み先としてフラッシュメモリ15を用意しているが、データの書き込み先はフラッシュメモリ15以外の記録媒体であっても良い。フラッシュメモリ13に余裕があるような場合、そのフラッシュメモリ13をデータの書き込み先として用いても良い。
本実施形態では、アップデート対象となるEFIコード25にブート制御プログラム25aを追加しているが、このブート制御プログラム25aは、EFIコード25とは別のプログラムとして用意しても良い。EFIコード25とは別のプログラムとしてブート制御プログラム25aを用意する場合、電源のオン、或いはシステムリセットにより、そのブート制御プログラム25aをCPU11に実行させれば良い。その場合、CDメディア18aのデータのコピーを組込OS26に行わせた後、コピーされた更新プログラム51を自動的に実行させるようにしても良い。このことから、シェルモードへの移行、つまりシェル41の起動は省くこともできる。自身のアップデートを行う機能を備えたファームウェアでは、アップデートが必要な旨をそのファームウェアに認識させれば良いことから、シェルモードのような状態への移行は不要である。
上記以外にも、様々な変形を行うことができる。
1 サーバ(情報処理装置)
11 CPU
12 メモリ
13〜15 フラッシュメモリ
18 USB/SATAコントローラ
18a CDメディア
19 ハードディスク装置
19a OS
23 MMB
23a 立ち上げモード情報
25 EFIコード
25a ブート制御プログラム
26 組込OS
31 入力装置
32 モニタ
51 更新プログラム
52 データ

Claims (7)

  1. 第1のフォーマットの第1の記録媒体と、
    前記第1の記録媒体に対応可能な第1のプログラムを記憶した第1の記憶部と、
    前記第1の記録媒体、及び前記第1のプログラムが対応していない第2のフォーマットの第2の記録媒体にそれぞれ対応可能な第2のプログラムを記憶した第2の記憶部と、
    前記第2の記録媒体が着脱可能であり、装着された前記第2の記録媒体にアクセス可能な駆動部と、
    前記第1のプログラム、及び前記第2のプログラムを実行可能な演算処理装置と、
    前記演算処理装置の実行対象として、前記第1のプログラム、及び前記第2のプログラムのうちの一方を設定するための設定部と、
    前記設定部により前記実行対象として前記第2のプログラムが設定されていた場合に、前記第2のプログラムを前記演算処理装置に実行させ、前記第2のプログラムの制御により、前記駆動部に装着される前記第2の記録媒体上のデータを前記第1の記憶媒体に記憶させる起動制御部と、
    を有することを特徴とする情報処理装置。
  2. 前記設定部は、前記実行対象を表す対象情報を所定の記憶装置に記憶させ、
    前記起動制御部は、前記演算処理装置に前記第2のプログラムを実行させる場合、前記記憶装置に記憶されている対象情報を更新する、
    ことを特徴とする請求項1記載の情報処理装置。
  3. 前記第2のプログラムは、前記第2の記録媒体上のデータを前記第1の記録媒体に記録させた後、自動的に終了する、
    ことを特徴とする請求項2記載の情報処理装置。
  4. 前記第1の記録媒体、及び前記第2の記録媒体にそれぞれ対応可能な第3のプログラムを記憶した第3の記憶部、を備え、
    前記起動制御部は、前記記憶装置に記憶された前記対象情報が表す実行対象に前記第3のプログラムが含まれる場合、前記第1のプログラムの起動後、前記第3のプログラムを起動させる、
    ことを特徴とする請求項1、2、または3記載の情報処理装置。
  5. 前記起動制御部は、前記演算処理装置に第4のプログラムを実行させることにより実現される、
    ことを特徴とする請求項1〜4の何れか1項に記載の情報処理装置。
  6. 情報処理装置に、
    第1の記憶部に記憶されている、第1のフォーマットの第1の記録媒体に対応可能な第1のプログラム、並びに第2の記憶部に記憶されている、前記第1の記録媒体、及び前記第1のプログラムが対応していない第2のフォーマットの第2の記録媒体にそれぞれ対応可能な第2のプログラムのなかから、設定に従って演算処理装置に実行させる実行対象を選択し、
    前記実行対象として前記第2のプログラムを選択した場合に、前記第2のプログラムを前記演算処理装置に実行させ、前記第2のプログラムの制御により、駆動部に装着される前記第2の記録媒体上のデータを、搭載されている前記第1の記憶媒体に記憶させる、
    処理を実行させる制御プログラム。
  7. 情報処理装置に、
    第1のフォーマットの第1の記録媒体と、
    前記第1の記録媒体に対応可能な第1のプログラムを記憶した第1の記憶部と、
    前記第1の記録媒体、及び前記第1のプログラムが対応していない第2のフォーマットの第2の記録媒体にそれぞれ対応可能な第2のプログラムを記憶した第2の記憶部と、
    前記第2の記録媒体が着脱可能であり、装着された前記第2の記録媒体にアクセス可能な駆動部と、
    演算処理装置の実行対象として、前記第1のプログラム、及び前記第2のプログラムのうちの一方を設定するための設定部と、を設け、
    前記設定部により前記実行対象として前記第2のプログラムが設定されていた場合に、前記第2のプログラムを前記演算処理装置に実行させ、前記第2のプログラムの制御により、前記駆動部に装着される前記第2の記録媒体上のデータを前記第1の記憶媒体に記憶させる、
    ことを特徴とするデータ移動方法。
JP2013256428A 2013-12-11 2013-12-11 情報処理装置、制御プログラム、及びデータ移動方法 Withdrawn JP2015114841A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013256428A JP2015114841A (ja) 2013-12-11 2013-12-11 情報処理装置、制御プログラム、及びデータ移動方法
US14/541,317 US20150161223A1 (en) 2013-12-11 2014-11-14 Information processing device and method for moving data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013256428A JP2015114841A (ja) 2013-12-11 2013-12-11 情報処理装置、制御プログラム、及びデータ移動方法

Publications (1)

Publication Number Publication Date
JP2015114841A true JP2015114841A (ja) 2015-06-22

Family

ID=53271398

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013256428A Withdrawn JP2015114841A (ja) 2013-12-11 2013-12-11 情報処理装置、制御プログラム、及びデータ移動方法

Country Status (2)

Country Link
US (1) US20150161223A1 (ja)
JP (1) JP2015114841A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105068845A (zh) * 2015-08-26 2015-11-18 浪潮电子信息产业股份有限公司 一种快速固件更新并引导进入操作系统的方法
CN110297674B (zh) * 2019-06-28 2021-01-15 联想(北京)有限公司 一种信息处理方法及电子设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6088747A (en) * 1998-02-20 2000-07-11 Unisys Corp System for reformatting and burning of data files having a first format onto a compact disk to be utilized in a network using different format
US8428929B2 (en) * 2010-09-30 2013-04-23 Intel Corporation Demand based USB proxy for data stores in service processor complex

Also Published As

Publication number Publication date
US20150161223A1 (en) 2015-06-11

Similar Documents

Publication Publication Date Title
TWI578233B (zh) 統一韌體管理系統、非揮發電腦可讀取媒體以及統一韌體管理方法
JP4592814B2 (ja) 情報処理装置
US10055218B2 (en) System and method for adding and storing groups of firmware default settings
CN101650660B (zh) 从中央存储装置引导计算机系统
JP5255703B2 (ja) カスタマイズされたイメージを伴うファームウェアストレージ媒体
JP6516730B2 (ja) アプリケーションをバックアップ及び復元するための方法及び装置
US20100275205A1 (en) Computer machine and access control method
US9804855B1 (en) Modification of temporary file system for booting on target hardware
CN114222975A (zh) 使用存储器孔径冲刷顺序的数据保存
US10282190B2 (en) System and method for updating a UEFI image in an information handling system
US20150278048A1 (en) Systems and methods for restoring data in a degraded computer system
JP2009193453A (ja) ブレードシステム、エンクロージャマネージャ、ブレード、bios管理方法及びbios管理プログラム
CN101996109A (zh) 计算机系统及其控制方法和存储计算机程序的记录介质
US20130097412A1 (en) Performing A Boot Sequence In A Multi-Processor System
JP2015114841A (ja) 情報処理装置、制御プログラム、及びデータ移動方法
CN103218228B (zh) 一种安卓设备内置硬盘实现ntfs文件系统的方法及装置
CN116701285A (zh) 远程访问控制装置、方法、设备及计算机可读介质
JP7073654B2 (ja) 情報処理システム、情報処理装置およびプログラム
US20140136777A1 (en) Method and system for configuring a storage array
TWI778295B (zh) 資訊處理系統、其之電源作業控制器以及於叢集作業期間處理電源請求的方法
JP2013214122A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
CN102681859A (zh) 一种从USB大容量存储设备中启动Windows操作系统的方法
US8423584B2 (en) Conditional inclusion of resources in a computer system configuration
Schroder Linux Cookbook
JP4858720B2 (ja) エミュレータ、エミュレーション方法、プログラム、及び、記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160905

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20170426