JP4349837B2 - Information processing system - Google Patents

Information processing system Download PDF

Info

Publication number
JP4349837B2
JP4349837B2 JP2003119808A JP2003119808A JP4349837B2 JP 4349837 B2 JP4349837 B2 JP 4349837B2 JP 2003119808 A JP2003119808 A JP 2003119808A JP 2003119808 A JP2003119808 A JP 2003119808A JP 4349837 B2 JP4349837 B2 JP 4349837B2
Authority
JP
Japan
Prior art keywords
information
boot
disk device
variable
processing system
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.)
Expired - Fee Related
Application number
JP2003119808A
Other languages
Japanese (ja)
Other versions
JP2004326409A (en
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 JP2003119808A priority Critical patent/JP4349837B2/en
Priority to US10/786,054 priority patent/US7434042B2/en
Publication of JP2004326409A publication Critical patent/JP2004326409A/en
Application granted granted Critical
Publication of JP4349837B2 publication Critical patent/JP4349837B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • G06F9/4408Boot device selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2284Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by power-on test, e.g. power-on self test [POST]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring

Description

【0001】
【発明の属する技術分野】
本発明は、オペレーティングシステムを格納したブート対象装置を多重化して備えた情報処理システムに関し、特に、ブート対象装置の多重化のためのシステムソフトウエアと連携することにより、主系のブート対象装置で起動できなかった場合に、強制的に従系のブート対象装置に切り換えて、次回のブート処理で従系のブート対象装置から起動できる情報処理システムに関する。
【0002】
【従来の技術】
一般に、コンピュータなどの情報処理システムにおいては、起動信号の発生に応答してハードディスクなどのブート対象装置からオペレーティングシステムを起動するように構成されている。このような構成の場合、ブート対象デバイスが壊れたときには、オペレーティングシステムを起動できなくなる。特に、このような障害が、コンピュータで発生すると、特に、このコンピュータがネットワーク上で他のコンピュータに接続されているような場合には、他のコンピュータに対する全てのサービスが停止されてしまうという問題が発生する。
【0003】
一方、最近では、情報処理システムの耐障害性を高める一つの技術として、複数のハードディスクを、RAID(Redundant Arrays of Inexpensive Disks)構成にして冗長化することが行われている。しかし、このRAID構成は、ミラーリングやストライピングによって、読み出しデータの信頼性を高める技術であり、システム起動に関わる動作の信頼性を高めるものではない。
【0004】
そこで、ブート対象の装置であるディスク装置を多重化、例えば、2重化した情報処理システムにおいて、いずれかのディスク装置が破壊されたことを検出したとき、スイッチ操作によって、システムに備えられた複数のディスク装置の中から、ブート対象ディスク装置を切り換えるようにして、コンピュータのシステム起動が行われる情報処理システムが開発されている。しかし、この情報処理システムでは、その切り換えのためのスイッチ操作は、管理者などによる手動操作で行われるものであり、しかも、システム起動が、正常に行われたか、失敗したかの判断についても人手によって行われていた。
【0005】
このような情報処理システムでは、ディスク装置が破壊された場合に、再度システムを立ち上げるのに、時間を費やし、システム運用に支障をきたすことになるので、2重化されてディスクの一方が破壊されても、他方のディスクに自動的に切り換えることが行われている。そこで、システム起動に関わる動作の信頼性を十分に高めた情報処理システムが提案されている。
【0006】
この情報処理システムにおいては、図6の構成概念図に示されるように、制御装置1に、OSを格納したディスク装置D1及びD2が2重化して備えられ、制御装置1は、CPUを有する制御部2、不揮発性メモリ3、メインメモリ4を含んでいる。さらに、制御部2には、キーボード、モニタ装置などの周辺装置5が接続される。
【0007】
このような情報処理システムにおける2重化されたディスク装置に対する切り換えの仕方の一例として、情報処理システムのOSを備えた制御部が、ディスク装置のいずれかが破壊されたことを検出したとき、システムに備えられた不揮発性メモリに、イニシャル・マイクロプログラム・ロード(IMPL)ディスク情報と、イニシャル・プログラム・ロード(IPL)ディスク装置情報とを自動的に格納するようにしたものがある(例えば、特許文献1を参照)。この例では、不揮発性メモリにIMPLディスク情報とIPLディスク装置情報が自動的に格納されるので、制御部は、次に格納すべきディスク装置情報を知ることができ、自動的に他の正常なディスク装置に切り換えることができる。
【0008】
また、他の例として、個々にOSを格納し2重化されたディスク装置において、該ディスク装置に障害が発生したときに、ディスク装置の障害発生から復旧までの時間を短くしようとした情報処理システムがある(例えば、特許文献2を参照)。この例による情報処理システムでは、一方のディスク装置が破壊された場合、システムを一旦終了させ、再立ち上げ前に、他方の破壊されていないディスク装置がマスタとなり、破壊された方のディスク装置がスレーブとなるように、切り換え制御がされ、システム登録がなされる。これにより、システムが再立ち上げされたとき、マスタである破壊されていない方のディスク装置のIPLにより、OSが起動され、そして、システムが立ち上がるというものである。
【0009】
さらに、別の例として、OSを個々に格納し2重化されたディスク装置を有し、OSを起動する手段と、該OSの起動完了を検出する手段とを有し、該OSを起動するための起動信号が発生されてからの経過時間を計時し、該起動信号が発生されてから所定の経過時間内に、該OSの起動完了が検出されたか否かに基づいて、OSの起動対象となるブート対象ディスク装置の切り換えを制御するようにした情報処理システムがある(例えば、特許文献3を参照)
この情報処理システムにおいては、OSの起動完了を自動検出でき、起動信号が発生されてからの所定の経過時間内にOSの起動完了が検出されたか否かに基づいて、OSの起動対象となるブート対象ディスク装置の切り換えが自動的に制御されるため、人手を介在せずとも、OSを正常に起動できたか否かの判断、および別のブートディスク装置からのOSの再起動を全て自動的に行うことが可能となる。
【0010】
一方、これらのような情報処理システムにおける2重化されたブート対象のディスク装置の夫々には、ディスク装置を起動するための種々のプログラムが格納されている。個々のディスク装置において、例えば、ディスクの先頭から、ブート・ブロック・プログラム、OSローダ、OS、システムソフトウエアが、格納され、それ以後に、データが格納されている。
【0011】
情報処理システムの立ち上げ時においては、システム内の不揮発性メモリに格納されていたブートファームウエアがメインメモリに展開され、このブートファームウエアの動作により、ブート対象のディスク装置が選択され、当該ディスク装置に格納されているブート・ブロック・プログラムを読み出し、メインメモリに展開する。このブート・ブロック・プログラムが、ブート対象ディスク装置に格納されたOSローダをメインメモリに展開する。次いで、OSローダがOSをメインメモリに読み出すと、OSが、ブート対象ディスク装置に格納されているシステムソフトウエアをメインメモリに展開させる。このシステムソフトウエアが2重化されたディスク装置の主系と従系のどちらで立ち上がっているかをチェックし、2重化の制御を実行する。このシステムソフトウエアの起動により、OSの通常運用時において、2重化されたディスク装置に対する以降の切り換え処理が実施される。
【0012】
【特許文献1】
特開平3−229331号公報
【特許文献2】
特開2000−81978号公報
【特許文献3】
特開2002−259130号公報
【0013】
【発明が解決しようとする課題】
従来の情報処理システムにおいては、システム構成装置を2重化することにより、運用時にシステム構成装置にアクセスするときに発生するハードエラーに対して冗長性をもたせて、信頼性を高めている。システム構成装置であるブート対象ディスク装置に格納されたシステムソフトウエアの処理によって冗長性を実現している。そのため、システムの立ち上げ処理において、一度、システムソフトウエアの起動まで処理が進んだ後は、以降の処理では、2重化しているシステムディスク装置へのアクセスにおいてエラーが発生しても、エラーの発生していない方のデータを用いて継続運用が可能となっている。
【0014】
また、2重化されたうちの主系のシステムディスク装置でエラーが多発した場合には、主系のディスク装置を切り離し、その後は、従系のシステムディスク装置からシステムをブートすることも可能である。しかし、システムの立ち上げ処理においては、ブート可能なディスク装置を2重化しても、その切り換えは、主系のディスク装置の異常を検出した場合をトリガにしている。そのため、主系のディスク装置に格納されたシステムソフトウエアの起動が進む前に、主系のシステムディスク装置で異常が発生した場合には、2重化の制御を行うシステムソフトウエアを動作させることができない。従って、システムディスク装置が二重化されていても、主系のシステムディスク装置に異常が発生すると、従系のシステムディスク装置に切り換えることができないため、システムを立ち上げることができないという問題が発生していた。
【0015】
そこで、本発明は、システムソフトウエアが起動後の装置異常の検出によるブート対象装置の切り換え処理という従来の機能に加えて、システムソフトウエアの起動前に装置異常が発生した場合にも、ブート対象装置を切り換えることができる機能を持たせた情報処理システムを提供し、更に、装置の異常検出とは、無関係に、ブート処理ごとに、強制的にブート対象装置を切り換える機能と、システムソフトウエアが起動時に強制的に切り換えられたブート対象装置を元に戻す処理を行う機能を有する情報処理システムを提供することを目的とする。
【0016】
【課題を解決するための手段】
伊所の課題を解決するため、本発明では、オペレーションシステムを格納する多重化された複数のディスク装置と、前記複数のディスク装置のいずれかから選択したブート対象ディスク装置から読み出したオペレーションシステムを起動してシステムを立ち上げる制御手段とを備えた情報処理システムにおいて、前記制御手段は、前記複数のディスク装置からブート対象ディスク装置を設定する環境情報として、ブート対象ディスク装置の候補となるディスク装置を示す装置設定情報が設定された第1変数情報と、前記第1変数情報に設定された装置設定情報のいずれかを示すインデックス情報が設定された第2変数情報とを格納する第1の格納手段を備え前記制御手段が、前記インデックス情報が示す装置設定情報に対応するディスク装置を、ブート対象ディスク装置として選択して、選択したブート対象ディスク装置をアクセスし、前記第2変数情報に、選択したブート対象ディスク装置以外のディスク装置に対応する装置設定情報を示すインデックス情報を設定して更新し、前記選択したブート対象ディスク装置が正常に動作しない場合、更新したインデックス情報が示す装置設定情報に対応するディスク装置を選択して、新たなブート対象ディスク装置としてブート対象ディスク装置を切り換え、切り換えられた新たなブート対象ディスク装置をアクセスすることとした。
【0017】
そして、前記第1変数情報には、複数のディスク装置に対応した複数の装置設定情報が設定され、前記インデックス情報には、前記第1変数情報内の装置設定情報の順番を示す値が設定され、前記制御手段は、ブート対象ディスク装置の選択時、前記インデックス情報が示す順番に対応する装置設定情報が示すディスク装置をブート対象ディスク装置として選択することとした。
【0018】
さらに、前記制御手段は、前記インデックス情報を更新する場合、前記第2変数情報に設定された値をインクリメントすることとし、ブート処理が正常に行われた場合、前記インデックス情報を初期値に更新することとした。
【0019】
さらに、前記制御手段は、ブート処理が正常に行われた場合、前記インデックス情報を、最後にブートが成功したディスク装置に対応する装置設定情報を示す値に設定することとした。
【0020】
また、前記制御手段はさらに、アクセスした前記ブート対象ディスク装置からオペレーションシステムを読み出し、読み出したオペレーションシステムを第2の格納手段に格納し、前記第2の格納手段に格納したオペレーションシステムを起動することとした。
【0021】
さらに、前記第1の格納手段は、ブート対象ディスク装置の切り換えが有効又は無効かを示す第3変数情報をさらに格納し、前記第1変数情報には、複数のディスク装置に対応する装置設定情報が順番に設定されており、前記制御手段は、前記第3変数情報に切り換えの有効が設定されている場合、前記第2変数情報に設定されたインデックス情報が指定するディスク装置にアクセスし、前記第3変数情報に切り換えの無効が設定されている場合、前記第1変数情報において最初に設定された装置設定情報に対応するディスク装置にアクセスすることとした。
【0022】
前記制御手段は、システムの電源投入時に前記インデックス情報をクリアし、前記第1変数情報における設定順番が最初の装置設定情報にインデックス情報を該第2変数情報に設定することとし、さらには、前記第3変数情報に切り換えの有効が設定されており、且つ前記第2変数情報に設定されたインデックス情報が、前記第1変数情報における設定順番が最初の装置設定情報を示していない場合に、前記第1変数情報における設定順番が最初の装置設定情報に対応するディスク装置に異常が発生していることを示すメッセージを出力することとした。
【0023】
【発明の実施の形態】
以下において、本発明による情報処理システムの実施形態について、図を参照しながら説明する。しかし、本実施形態の情報処理システムを説明する前に、本実施形態における特徴と効果を明確なものとするために、本実施形態の情報処理システムの基礎となる従来技術による情報処理システムについて説明する。
【0024】
図7に、ブート・ブロック・プログラムとシステムソフトウエアとが独立にブート対象ディスク装置を切り換える従来技術による情報処理システムを示した。なお、同図は、情報処理システムの立ち上げに関連する部分を中心にして、その概略を示している。同図中において、図6に示した情報処理システムと同じ部分には、同じ符号が付されている。
【0025】
図7の情報処理システムでは、制御装置1に2重化されたディスク装置D1とD2が接続されている。このディスク装置D1とD2の夫々には、ディスクの先頭から、順に、ブート・ブロック・プログラム、OSローダ、OS、システムソフトウエアが格納されている。各ディスク装置には、図示していないが、これらに続いて、データが格納されている。
【0026】
制御装置1には、不揮発性メモリNMとメインメモリMとが備えられているが、図では、システム立ち上げ時に関連する部分が代表的に示されている。不揮発性メモリNMには、自己診断ファームウエアNM1、ブートファームウエア環境変数NM2が格納されている。図示していないが、この他にも、ブートファームウエアのバイナリデータが格納されている。ブートファームウエア環境変数NM2には、ブートファームウエアの環境情報が格納されており、図では、ディスク装置D1とD2とで2重化されているので、その環境変数として、「boot-device=disk0, disk1」が格納されている。この環境変数において、「disk0」は、ディスク装置D1に、そして、「disk1」は、ディスク装置D2に対応付けられ、ブート対象が、ディスク装置D1とD2であり、立ち上げ時には、ディスク装置D1から起動処理が行われることを表している。
【0027】
また、メインメモリMには、システム立ち上げ前においては、何も格納されていないが、図においては、システム立ち上げ時にブート対象ディスク装置から読み込まれたソフトウエアの展開状況が示されている。ブートファームウエアM1は、不揮発性メモリNMに格納されていたブートファームウエアのデータを読み込んだものであり、ブート・ブロック・プログラム、OSローダM3、OSM4、システムソフトウエアM5は、ブート対象ディスク装置に格納されていたものが、システム立ち上げ時にメインメモリM内に読み込まれたものである。
【0028】
そこで、図7に示された情報処理システムにおいて、ブートファームウエアM1とシステムソフトウエアM5とが独立にブート対象ディスク装置を切り換える動作の概要を、次に示す。
【0029】
先ず、電源投入されて、システムの立ち上げ処理が開始されると、自己診断ファームウエアNM1が起動され、システムチェックが実行される。そして、不揮発性メモリNMに格納されているブートファームウエアのデータをメインメモリMに読み込み、ブートファームウエアM1とする。ブートファームウエア環境変数NM2に用意されているブート制御用の環境変数は、「boot-device=disk0, disk1」であるので、ブートファームウエアM1は、この環境変数に設定されたディスク装置を順番にアクセスし、最初に正常にアクセスできた装置をブート対象装置に決定する。ここで、ブート対象装置を決定すると、以降は、ブートファームウエアM1は、積極的にブート対象ディスク装置を変更することはしない。
【0030】
次いで、ブートファームウエアM1は、上で選択したブート対象ディスク装置にアクセスし、その先頭のブロックに書き込まれているブート・ブロック・プログラムをメインメモリに読み込み、ブート・ブロック・プログラムM2を展開する。ブートファームウエアM1は、読み込んだブート・ブロック・プログラムM2に制御を移す。
【0031】
ブート・ブロック・プログラムM2が起動すると、ブート・ブロック・プログラムM2は、自身が格納されていたディスク装置、図示の例では、ディスク装置D1内に格納されているOSローダをメインメモリに読み込み、OSローダM3に制御を移す。
【0032】
そこで、OSローダM3が起動すると、OSローダM3は、自身が格納されていたディスク装置D1に格納されているOSをメインメモリに読み込み、OSM4に制御を渡す。
【0033】
さらに、OSM4が起動すると、OSM4は、自身が格納されていたディスク装置D1に格納されているシステムソフトウエアをメインメモリM内に読み込み、システムソフトウエアM5を展開し、システムソフトウエアM5を起動する。ここで、システムソフトウエアM5が正常に起動した場合には、そのまま運用動作に移る。
【0034】
以上のように、図7に示された情報処理システムでは、ブートファームウエアM1とシステムソフトウエアM5とが独立にブート対象ディスク装置を切り換える動作を行っている。
【0035】
システムソフトウエアM5が正常に運用動作に移行できた場合には、システムソフトウエアM5が切り換え制御を実行できるため、ブート対象ディスク装置D1の異常を検出すると、ディスク装置D1を切り離すことができる。その場合には、次のリブートで、ブート対象ディスク装置D1を切り換えるため、システムソフトウエアM5が不揮発性メモリNMにあるブートファームウエア環境変数NM2の環境情報を書き換える。
【0036】
しかしながら、この様にブートファームウエアM1とシステムソフトウエアM5が独立して処理を進めているため、ブートファームウエアM1が、ブートファームウエアの環境情報に従って、ブート対象ディスク装置を選択した以後であって、システムソフトウエアM5に制御が移行する前の処理中に、何らかの異常が発生して、処理を継続できなかった場合には、システムソフトウエアM5が未だ起動していないので、ブートファームウエア環境変数NM2の環境情報を書き換えることができない。そのため、次のリブートでも、ブート対象ディスク装置を異常のない他のディスク装置に変更できないことになり、その結果、システムを立ち上げることができない。
【0037】
この様に、従来技術による情報処理システムでは、システムソフトウエアM5の起動による制御が行われる以前の処理中に何らかの異常が発生したとき、ブート対象ディスク装置を冗長化しているにも関わらず、システムが立ち上がらないという問題があった。
【0038】
更に、従来技術の情報処理システムでは、ディスク装置の異常を検出したモジュールが、個々にブートファームウエア環境変数の環境情報「boot-device」を書き換える処理によって、ブート対象のディスク装置を切り換えようとすると、ブート・ブロック・プログラム、OSローダ、OSの初期化処理のすべてにわたって、ブート対象のディスク装置の冗長構成を意識した変更が必要になるが、一般的に、ブート・ブロック・プログラム、OSローダ、OSの初期化部は、特定の冗長構成システムを意識した変更を適用することが困難であるという問題があった。
【0039】
そこで、本実施形態の情報処理システムでは、従来の情報処理システムに備えられた切り換え機構による以下の2つの要件をそのまま継承できるようにする。つまり、一つの要件は、ブートファームウエアは、環境情報「boot-device」に設定されたディスク装置を順番にアクセスし、最初に正常にアクセスできたディスク装置をブート対象ディスク装置に決定することであり、二つ目の要件は、システムソフトウエアが正常に運用動作に移行できた場合には、該システムソフトウエアが切り換え制御でき、ディスク装置の異常を検出すると、ブート対象ディスク装置を切り離すことができることである。
【0040】
以上の様な要求を満たす情報処理システムとするため、本実施形態では、不揮発性メモリ内にあるブートファームウエア環境変数に格納される環境情報として、ブート対象となるデバイス情報を設定できる第1変数「「boot-device」、ブート対象の順番情報を示す第2変数「boot-device-index」、そして、ディスク装置を順番にアクセスして、最初に正常にアクセスできたディスク装置をブート対象とする決定機能が有効であるかどうかを示す第3変数「boot-device-index-available」を用意した。
【0041】
第1変数「「boot-device」は、冗長化されたディスク装置が、例えば、3つある場合には、「boot-device=disk0, disk1, disk5」のように設定される。また、第2変数「boot-device-index」については、例えば、第1変数が上記のようであれば、「disk0」のインデックス番号は、初期値0であり、「disk1」のインデックス番号は、1であり、「disk5」のインデックス番号は、2となり、次回のブートで、ブート対象とするディスク装置を指定する。第3変数「boot-device-index-available」は、「true」と「false」の値を有しており、この値が選択されて、上述の2重化による切換機能が有効のときには、「true」が設定され、否のときには、「false」が設定される。
【0042】
以上のような3つの環境情報からなるブートファームウエア環境変数が不揮発性メモリに用意された本実施形態の情報処理システムの構成を図1に示した。図1では、図7に示した従来技術による情報処理システムの構成と同様の部分には、同じ符号が付されている。なお、図1においても、図7と同様に、情報処理システムの構成の中で、システム立ち上げに関連する構成を中心に示してある。
【0043】
図1の情報処理システムが、図7の情報処理システムと大きく異なることは、不揮発性メモリNMに格納されているブートファームウエア環境変数に用意されている内容である。図7の従来技術による情報処理システムに用意されているブートファームウエア環境変数NM2は、環境情報として、「boot-device」だけであったが、図1の本実施形態の情報処理システムでは、ブートファームウエア環境変数NM21に、環境情報として、第1変数「「boot-device」、第2変数「boot-device-index」、そして、第3変数「boot-device-index-available」が用意されていることである。
【0044】
そこで、図1に示された本実施形態の情報処理システムは、ブートファームウエアとシステムソフトウエアによりブート対象ディスク装置を切り換える場合の概略構成を示し、2重化されたデバイスであるディスク装置を切り換える場合を例にしている。図2の処理手順のフロー図を参照しながら、その切り換え処理を以下に説明する。
【0045】
先ず、システムが、電源投入され、或いは、リブートリセットされたとき(ステップS101)、システムは、不揮発性メモリNM、例えば、フラッシュメモリ内に格納された、自身のハードウエア診断を実行するための自己診断ファームウエア(POST)NM1を起動させ、電源投入直後やリブートリセット直後にシステムが正常に立ち上がることを保証するために、ハードウエアの自己診断を実施する(ステップS102)。
【0046】
自己診断ファームウエアNM1は、メインメモリMを含めたシステムの診断を実行するため、通常は、フラッシュメモリ上のコードでそのまま動作する。ただし、メインメモリMの診断後は、メインメモリMにコードを展開して、メインメモリ上で動作する場合もある。また、CPUのキャッシュメモリの診断後に、キャッシュメモリに実行コードを展開して動作する場合もある。自己診断ファームウエアNM1は、ハードウエアを診断した結果として、ハードウエアの構成情報を作成し、その情報を、後述のブートファームウエアM1に引き渡す。
【0047】
自己診断ファームウエアNM1による診断が終了するとブートファームウエアM1に制御を移す(ステップS103)。ブートファームウエアM1のコードは、通常、不揮発性メモリNM、例えば、フラッシュメモリなどに格納され、メインメモリMに実行コードが展開され、メインメモリM上で動作する。また、そのコードが、フラッシュメモリに格納されてなく、自己診断ファームウエアNM1により、外部からメインメモリMにダウンロードされる場合もある。
【0048】
ブートファームウエアM1は、自己診断ファームウエアNM1により作成されたハードウエア構成情報に基づいて、ブート対象プログラムであるブート・ブロック・プログラム、OSローダ、OSがブート処理を行えるように、ディスクドライバ、コンソールドライバなどブートドライバを初期化する(ステップS103)。また、ブートファームウエアM1は、ブート対象プログラムが動作されるように、メモリ環境などの環境を構築する。
【0049】
次いで、ブートファームウエアM1は、初期化処理の一環で、リセット要因をチェックし、リセット要因が、電源投入であった場合には、不揮発性メモリNMのブートファームウエア環境変数NM21に保存されている第2変数「boot-device-index」を0クリアする。リセット要因が、電源投入でないリブートである場合には、第2変数の値は、変更されない。
【0050】
ブート処理に進めるまで処理が進むと、ブートファームウエアM1は、ブートファームウエア環境変数NM21に保存されている3つの変数、第1変数「boot-device」、第2変数「boot-device-index」、第3変数「boot-device-index-available 」の値に応じて、ブート対象ディスク装置を選択する(ステップS104)。
【0051】
ブートファームウエアM1は、選択したブート対象ディスク装置にアクセスして、ディスクの構成情報を読み込み、正常にディスクが動作することを確認する。選択したディスクが正常に動作できない場合には、ブート対象ディスク装置を次の候補のものに変更する。その際、第2変数「boot-device-index」の値を更新する。また、選択したブート対象ディスク装置が、正常に動作できた場合も、システムソフトウエアM5が正常に起動できずに、再度のブート処理されるときに備えるものとして、強制的に次の候補に切り換えるために、第2変数「boot-device-index」の値を更新する。
【0052】
なお、ブートファームウエア環境変数NM21に保存されている3つの変数「boot-device」、「boot-device-index」、「boot-device-index-available」の値から対象ディスクを選択する際に、選択できる対象ディスク装置がなかった場合、或いは、対象ディスク装置を次の候補のものに変更しようとしたときに、選択できる対象ディスク装置がなかった場合には、エラーメッセージを通知して、処理を停止する。
【0053】
ブートファームウエアM1は、ブート対象として選択されたのがディスク装置D1である場合には、該ディスク装置D1における先頭のブロックに書き込まれているブート・ブロック・プログラムをメインメモリMに読み込み、読み込んだブート・ブロック・プログラムM2に制御を移す(ステップS105)。
【0054】
ブート・ブロック・プログラムM2が起動すると、ブート・ブロック・プログラムM2は、自身が格納されていたディスク装置D1内に格納されているOSローダをメインメモリMに読み込み、OSローダM3に制御を移す(ステップS106)。
【0055】
OSローダM3が起動すると、OSローダM3は、自身が格納されていたディスク装置D1に格納されているOSをメインメモリMに読み込み、OSM4に制御が渡される(ステップS107)。
【0056】
そこで、OSM4の初期化処理が実施され、OSM4が起動すると(ステップS108)、OSM4は、自身が格納されていたディスク装置D1に格納されているシステムソフトウエアをメインメモリMに読み込み、システムソフトウエアM5を起動する(ステップS109)。
【0057】
そして、システムソフトウエアM5が正常に起動した場合には、システムソフトウエアM5が、ブートファームウエア環境変数NM21に記録された第2変数「boot-disk-unit-index」を0クリアする。この処理により、次回のリブート処理でも、再度同じディスク装置D1から上述のブート処理が実行される。主系又は従系のどちらのディスク装置で立ち上がったかをチェックし、従系のディスク装置で立ち上がったと認識した場合には、エラーメッセージを通知するようにする(ステップS110)。以降のディスク装置の切り換え処理は、システムソフトウエアM5によって実施される(ステップS111)。
【0058】
ここで、システムソフトウエアM5が正常に起動できなかった場合には、ブートファームウエア環境変数NM21に記録された第2変数「boot-device-index」は、上述のステップS104における処理により、更新されたままの状態であるため、次回のリブート時には、強制的に、次の候補のディスク装置がブート対象装置となる。また、ステップS104における処理で選択されたディスク装置に異常が検出され、その分余分に第2変数「boot-device-index」を更新済みであるため、次回のリブート時には、強制的に、次の候補のディスク装置がブート対象となる。
【0059】
なお、ステップS4において、ブート対象ディスク装置のオープン処理で、該ディスク装置の異常を検出した場合には、上述したように、従来技術の情報処理システムと同様に、異常が検出された当該ディスク装置を切り離し処理が行われる。
【0060】
そして、システムソフトウエアM5の初期化処理に到達する以前のステップS105乃至S109の処理期間中に、ディスク装置に異常などが発生し、パニック状態にあるとき、従来技術の情報処理システムでは、システムソフトウエアM5が起動することがないため、ディスク装置の切り換え処理が実行されなかった。しかし、本実施形態の情報処理システムでは、システムソフトウエアM5が正常に起動できていないことを認識でき、強制的にディスク装置を切り換えることができる。2重化されたうちの主系のシステムディスク装置で異常が発生した場合、2重化の制御を行うシステムソフトウエアが動作していないため、従系のシステムディスク装置に切り替えることができずにシステムを立ち上げることができないという問題を回避できる。
【0061】
このように、図1に示された情報処理システムにおいて、2重化されたディスク装置に対して、ブートファームウエアとシステムソフトウエアによりブート対象ディスク装置を切り換える処理手順が説明された。次いで、図3及び図4を参照して、図1の本実施形態の情報処理システムにおけるブートファームウエアM5の詳細構成と、ブートファームウエアM5によるブート対象ディスク装置の切り換え処理の手順を、以下に説明する。
【0062】
図3は、図1に示された本実施形態の情報処理システムの制御装置1内に備えられた不揮発性メモリNMの格納状況と、メインメモリM内に読み込まれたブートファームウエアM1の構成の具体例を示している。図3において、図1と同様の部分には、同じ符号が付されている。
【0063】
制御装置1内に備えられた不揮発性メモリNMには、自己診断ファームウエア(POST)NM1、ブートファーストウエアの圧縮データNM3、ハードウエア構成情報NM4が格納されているが、これらは、従来技術の情報処理システムの不揮発性メモリNMにおいても、用意されているものである。従来のものにおける不揮発性メモリNMに格納されていたブートファームウエア環境変数NM2の変わりに、図3のブートファームウエア環境変数NM21には、環境情報として、第1変数「boot-device」、第2変数「boot-device-index」、第3変数「boot-device-index-available 」が用意されている。
【0064】
一方、ブートファームウエアM1は、従来技術によるブートファームウエアM1の構成と同様であり、初期化処理部M11、トラップ処理部M12、メモリ処理部M13、モニタ処理部M14、各種ライブラリ部M15、クライアントサービス処理部M16、ブート処理部M17、そしてドライバ処理部M18のモジュールから構成される。これらのモジュール構成を有するブートファームウエアM1は、システムの自己診断完了後において、ブートファームウエアのデータNM3からメインメモリM内に読み込まれ、圧縮されて保存されていたものを伸張されて展開される。ブートファームウエアM1は、メインメモリM上で動作する。これらの各部は、次のようである。
【0065】
初期化処理部M11は、ブートファームウエアM1の各モジュールの初期化を行う。不揮発性メモリNMのブートファームウエア環境変数NM21に格納された環境情報において、初期化の必要なものは、ここで初期化される。
【0066】
トラップ処理部M12は、ブートファームウエアM1の動作環境で発生するトラップの処理を実行する。トラップ処理のなかには、ハードウエアの障害が原因で発生するものもあれば、メモリ管理ユニット(MMU)におけるミス処理のように、通常処理の一部として発生するものもある。また、OSのブート処理の過程で、メインメモリM上に展開されて動作するブート・ブロック・プログラムM2、OSローダM3は、トラップベクタがブートファームウエアM1の環境で動作するため、それらの動作時に発生するトラップの処理も、トラップ処理部M12が行う。また、メインメモリMに展開されたOSM4についても、初期のトラップベクタ変更前までのトラップ処理は、トラップ処理部M12によって行われる。
【0067】
メモリ管理部M13は、不揮発性メモリNMのハードウエア構成情報NM4で通知された物理メモリの構成から論理アドレスの割り当てを行う。また、MMUのミス処理に伴う動的なメモリの割り当てを行う。また、物理メモリ、論理メモリの動的な獲得/解放処理を行う。
【0068】
モニタ処理部M14は、ブートファームウエアM1のマン・マシン・インタフェースであるコマンド入力画面をサポートし、各種ライブラリ部M15は、いろいろなサポートモジュールである。
【0069】
クライアントサービス処理部M16は、メインメモリM上に展開されたブート・ブロック・プログラムM2や、OSローダM3や、OSM4などのクライアント・プログラムに対する動的なメモリ空間の割り当てや、ディスク装置へのアクセスなどのサービスを提供するインタフェースの役割を有している。各クライアント・プログラムは、クライアントサービス処理部M16を通して、ブートファームウエアM1の有する機能を利用することができる。この機能を利用して、ブート対象ディスク装置に格納されているブート・ブロック・プログラム、OSローダ、OSを読み出し、ブート処理が可能になる。
【0070】
ブート処理部M17は、ブート処理をサポートするモジュールである。不揮発性メモリNMのブートファームウエア環境変数NM21に格納された環境情報の値に応じて、ブート対象ディスク装置を決定し、ブート対象ディスク装置の先頭ブロックに格納されているブート・ブロック・プログラムをメインメモリMに展開し、制御を渡す機能を持つ。本実施形態の特徴であるステップS104の処理を行うモジュールである。
【0071】
ドライバ処理部M18は、ブートファームウエアM1がサポートするI/Oを制御するものである。これには、ディスクドライバやSCSIドライバ、コンソールドライバなどが含まれる。
【0072】
以上のような各種モジュールからなるブートファームウエアM1がメインメモリM上での動作について、図4の処理フローを参照して説明する。
【0073】
先ず、システムは、電源投入直後又はリブートリセット直後は(ステップS201)、不揮発性メモリであるフラッシュメモリに書き込まれた自己診断ファームウエア(POST)を起動する(ステップS202)。
【0074】
自己診断ファームウエアNM1は、システムが正常に立ち上がることを保証するためのハードウエア診断を実行する。そして、診断の結果として、ハードウエアの構成情報を作成し(ステップS203)、不揮発性メモリNMのハードウエア構成情報NM4に記録する(ステップS204)。この構成情報は、その後のブートファームウエアM1でのハードウエア構成認識に使用される。
【0075】
ブートファームウエアM1は、自己診断ファームウエアNM1によるハードウエア診断の後で、メインメモリMを診断した後で起動するプログラムであるため、メインメモリM上で動作することができる。ブートファームウエアM1のバイナリデータは、通常は、システム内のフラッシュメモリに圧縮された形式で格納されており、POSTの診断後に、POSTによりメインメモリM上に伸張して展開される(ステップS205)。或いは、ブートファームウエアM1のデータについては、システム内のフラッシュメモリに格納せず、外部からPOSTにより圧縮されたデータをメインメモリM上に伸張してダウンロードするようにしてもよい。
【0076】
そして、図2に示されたステップS103の処理と同様に、ブートファームウエアM1の各モジュールM11乃至M18の初期化を実行し、さらに、初期化処理部M11が、ハードウエア構成情報NM4に従って、ブートファームウエア環境変数NM21に従う初期化を実行する(ステップS206)。
【0077】
ブート処理部M17が、ブートファームウエア環境変数NM21の環境情報に従って、ブート対象ディスク装置を決定する(ステップS207)。そこで、ブート処理部M17は、決定したブート対象のディスク装置にアクセスし、当該ディスク装置の先頭ブロックに格納されているブート・ブロック・プログラムを読み出し、メインメモリM上に展開する(ステップS208)。ブート・ブロック・プログラムM2は、OSローダをメインメモリに展開して制御を渡す機能を持つ。
【0078】
次いで、メインメモリM上に読み込まれたブート・ブロック・プログラムM2は、クライアントサービス処理部M16の機能を利用して、ブート対象ディスク装置の先頭にあるブート・ブロック・プログラムの次に格納されているOSローダを読み出し、メインメモリM上に展開する(ステップS209)。OSローダM3は、OSのファイルシステムを解釈できる機能を持ち、ブート対象ディスク装置に格納されたOSプログラムをメインメモリに展開して制御を渡す機能を持つ。
【0079】
さらに、メインメモリM上に読み込まれたOSローダM3は、クライアントサービス処理部M16の機能を利用して、ブート対象ディスク装置に格納されたOSローダの次のOS読み出し、メインメモリM上に展開する(ステップS210)。この処理は、図2に示した処理フローのステップS108と同様であり、ステップS210以降の処理は、ステップS109以降の処理に同じである。
【0080】
以上では、本実施形態の情報処理システムにおけるブートファームウエアM5の詳細構成と、ブートファームウエアM5によるブート対象ディスク装置の切り換え処理の手順について説明したが、次に、図5のフローチャートを参照して、本実施形態の情報処理システムにおける制御装置1内のメインメモリMに、ブート対象のディスク装置に格納されているシステムソフトウエアが読み出されて展開された以降におけるディスク装置の切り換え処理について、説明する。
【0081】
先ず、メインメモリM上に読み込まれたシステムソフトウエアM5が、ステップS110で説明されたように、初期化処理されて起動される(ステップS301)。
【0082】
次いで、システムソフトウエアM5は、不揮発性メモリNMのブートファームウエア環境変数NM21を調べ、第3変数「boot-device-index-available」が存在するかチェックする(ステップS302)。
【0083】
ここで、本実施形態を実施する以前の、従来技術の情報処理システムの構成によるブートファームウエアM5でブート処理を実行した場合には、図7で示したように、ブートファームウエア環境変数NM2には、第3変数「boot-device-index-available」は、存在していないので(ステップS302のN)、図7で示した従来技術のシステム構成の範囲内で動作するため、直ちに、OSの通常運用処理に移行する(ステップS305)。
【0084】
本実施形態を実施している場合には、ステップS302の処理において、第3変数「boot-device-index-available」が存在し(Y)、現在ブート対象ディスク装置の冗長運用機能が設定されているかどうか確認する(ステップS303)。システムソフトウエアM5は、ブート対象ディスク装置を冗長運用することにより信頼性を高めるソフトウエアであるが、設定によりこの機能を無効にする場合が有り得るので、現在の設定を、ここで確認する。
【0085】
ステップS303における冗長運用機能に係る設定の確認により、システムソフトウエアM5がブート対象ディスク装置を冗長運用するように設定されていた場合には(Y)、ブートファームウエア環境変数NM21の第3変数「boot-device-index-available」に値「true」を設定する(ステップS306)。この第3変数「boot-device-index-available」 は、最初のディフォルトの状態では、値「false」に設定されている。この場合には、ブートファームウエアM1での強制ディスク切り換え機能は働かない。
【0086】
しかし、一度、値が「true」に設定されると、この第3変数は不揮発性メモリNMのブートファームウエア環境変数NM21に記録されているため、誰かが意図的に変更しなければ、その値は変わらない。もし、システムソフトウエアM5がインストールされていないときに、第3変数に「true」が設定されてしまうと、ブートファームウエアM1によるブート時に、強制的にブート対象ディスク装置を切り換えても、もとに戻すものがなくなってしまう。そのため、リブート処理に失敗することとなる。それを避けるため、第3変数の値を「true」にする設定は、システムソフトウエアM5で行うようになっている。
【0087】
システムソフトウエアM5がインストールされ、運用されているときには、一度、第3変数の値が「true」に設定されると、第3変数の値は、不揮発性メモリNMのブートファームウエア環境変数NM21に保持されるため、冗長運用の機能が有効となる。なお、この処理フローでは、システムソフトウエアM5の起動処理で、ブート対象ディスク装置の冗長運用状態をチェックして、必ず、第3変数を変更するとしているが、ここでは、変更を行わずに、システムソフトウエアM5のインストール時に設定するようにし、或いは、通常動作状態に入ってから、システムソフトウエアM5のメニューから、冗長運用状態をチェックし、設定してもいい。システムソフトウエアM5が、唯一、第3変数の値を「true」に設定するということが重要である。
【0088】
ステップS303における確認処理により、システムソフトウエアM5は、ブート対象ディスク装置が冗長運用するように設定されていなかった場合には(N)、ブートファームウエア環境変数NM21の第3変数「boot-device-index-available」 に値「false」 を設定する(ステップS304)。
【0089】
次に、ブートファームウエア環境変数NM21の第2変数「boot-device-index」が0かどうかを調べる(ステップS307)。図面2でのフローで示したように、第2変数の値が0というのは、ブートファームウエアM1の動作時に、第3変数「boot-device-index-available」の値が「false」であった場合だけである。ブートファームウエアM1の動作時に、第3変数「boot-disk-unit-index-available」の値が「true」であった場合には、ブート処理の実行で、必ず、第2変数「boot-device-index」の値は更新(インクリメント)されている。従って、第2変数の値が0の場合には(ステップS307のY)、本実施形態による切り換え機能は有効となっていないので、直ちに、通常運用に移行する(ステップS305)。
【0090】
一方、第2変数「boot-device-index」の値が0でない場合は(ステップS307のN)、ブートファームウエアM1の動作時に、第3変数「boot-device-index-available」の値が「true」であったことを示している。この場合に、第1変数「boot-device」の設定をチェックし(ステップS308)、実際にブート処理が実施されたディスク装置が、主系のものであるか従系のものであるかをチェックする(ステップS309)。
【0091】
一般には、第2変数「boot-device-index」の値が1の場合には、主系で立ち上がっており、2以上の場合には、従系で立ち上がっていることを示している。システムの設定によっては、第1変数「boot-device」への設定で、同一のディスク装置を別名で複数設定する場合もある。その場合は、第2変数「boot-device-index」の値が2でも、主系の装置を示している場合もある。ここでは、そのような状態も考慮して確認する。
【0092】
ステップS309の処理における確認の結果、ブートしたディスク装置が主系でないと認識できた場合には(N)、主系のディスク装置の起動で、何らかの異常が発生しているため、それを通知する警告メッセージを表示する(ステップS310)。
【0093】
ブート起動した装置が主系であろうと従系であろうと、システムソフトウエアM5が正常に起動したことを示し、次回のリブート処理では、再度、正常にブート処理が実行できるように、第2変数「boot-device-index」の値を0クリアして(ステップS311)、通常運用に移行する(ステップS305)。なお、ここでは、0クリアとしているが、デクリメントして、最後にブートが成功した装置を示すようにしてもよい。
【0094】
ステップS305において、通常運用に移行するが、通常運用の処理中に、ディスク装置の異常が検出された場合には、システムソフトウエアM5により、ブート対象ディスク装置が切り離され、次回のブートでも、ブート対象ディスク装置を切り換えるために、システムソフトウエアM5が、環境情報の第2変数「boot-device-index」の値を、直接書き換える。この処理は、従来技術の場合と同様である。なお、このときに、ステップS311において、第2変数「boot-device-index」の値を0クリアせずに、デクリメントしていた場合には、第1変数「boot-device」の変更に合わせて、第2変数「boot-device-index」の値も書き換えるか、或いは、0クリアすることになる。
【0095】
以上のように、本実施形態による情報処理システムによれば、オペレーティングシステムを格納したシステムディスク装置であるブート対象とできるデバイス装置を2重化し、運用時のシステムディスク装置のアクセスで発生するハードエラーに対して冗長性を持たせて信頼性を向上できたコンピュータシステムとすることができ、ブートファームウエアと、ディスク装置の2重化処理のためのシステムソフトウエアとを連携させることにより、主系のブート対象デバイス装置に格納されたシステムソフトウエアが起動できなかった場合に、次回のブートファームウエアによるブート処理において、ブート対象デバイス装置を強制的に従系のブートデバイス装置に切り換えることにより、従系のブートデバイス装置からのシステムソフトウエアの起動を可能とすることができた。
【0096】
以下に、本発明による情報処理システムに関する実施態様を示す。
(付記1)
多重化された複数の装置から選択して読み出されたオペレーションシステムが起動されてシステムが立ち上げられる情報処理システムにおいて、
前記複数の装置からブート対象を設定する環境情報を格納する格納手段と、
前記環境情報の設定に基づいてブート対象装置を決定し、該ブート対象装置に格納された前記オペレーションシステムを起動させるブート制御手段と、
前記複数の装置の多重化制御を実施する制御手段と、を有し、
前記制御手段は、前記ブート対象装置に異常が検出されたとき、前記環境情報の設定を変更して、他の前記装置に切り換え制御することを特徴とする情報処理システム。
(付記2)
前記環境情報は、
前記複数の装置についてブート対象候補とする装置設定情報を含む第1変数情報と、
前記装置設定情報に基づいてブート対象装置を指定するインデックス情報を含む第2変数情報と、
前記多重化が有効か否かの2値が設定される第3変数情報と、
を含むことを特徴とする付記1に記載の情報処理システム。
(付記3)
前記ブート制御手段は、システムの電源投入時において、前記インデックス情報を初期値にクリアし、前記装置設定情報に最初に設定された前記装置をブート対象として選択することを特徴とする付記2に記載の情報処理システム。
(付記4)
前記ブート制御手段は、第3変数情報に有効が設定されている場合に、前記インデックス情報により指定されたブート対象装置を選択し、否が設定されている場合には、前記装置設定情報において最初に設定された装置をブート対象として選定することを特徴とする付記2に記載の情報処理システム。
(付記5)
前記ブート制御手段は、第3変数情報に有効が設定されている場合に、前記インデックス情報におけるインデックスを更新することを特徴とする付記4に記載の情報処理システム。
(付記6)
前記ブート制御手段は、前記環境情報に設定されたブート対象装置を選定し、該ブート対象装置に格納されている前記オペレーションシステムを読み込み、起動させることを特徴とする付記2乃至5のいずれか一項に記載の情報処理システム。
(付記7)
前記制御手段は、第3変数情報に有効が設定され、前記インデックス情報が初期値ではない場合には、第1変数情報における設定を参照して、従系のブート対象装置で立ち上がっていることを認識することを特徴とする付記2に記載の情報処理システム。
(付記8)
前記制御手段は、従系のブート対象装置で立ち上がっていることを認識した場合には、主系の前記装置に異常が発生していることを示す警告メッセージを通知することを特徴とする付記7に記載の情報処理システム。
(付記9)
前記制御手段は、第3変数情報が存在し、第2変数情報が0でない場合には、第2変数情報を初期値にクリアすることを特徴とする付記7又は8に記載の情報処理システム。
(付記10)
前記制御手段は、第3変数情報が前記格納手段内に存在する場合であって、前記複数の装置に関して冗長運用の設定がないときには、第3変数情報を否に設定することを特徴とする付記2に記載の情報処理システム。
(付記11)
前記制御手段は、第3変数情報が前記格納手段内に存在するかどうかに関係なく、前記ブート対象装置に異常の発生を検出したとき、当該ブート対象装置を切り離し、第1変数情報の前記ブート対象候補とする装置の設定情報を書き換えることを特徴とする付記2に記載の情報処理システム。
(付記12)
前記格納手段は、不揮発性メモリであり、前記ブート制御手段及び前記制御手段によって、該格納手段に格納された第2変数情報及び第3変数情報における設定が書き換えられることを特徴とする付記2に記載の情報処理システム。
(付記13)
前記ブート制御手段は、前記格納手段に格納されたブートファームウエアによってブート処理を実行することを特徴とする付記1又は2に記載の情報処理システム。
(付記14)
前記制御手段は、前記ブート対象装置に格納されたシステムソフトウエアが読み込まれ、多重化制御を実行することを特徴とする付記1又は2に記載の情報処理システム。
【0097】
【発明の効果】
以上のように、本発明の情報処理システムでは、ブート対象装置であるシステムディスク装置を多重にして備え冗長化を向上させるシステムにおいて、多重化を制御するシステムソフトウエアが起動する前に、ブートファームウエアによって選択された主系のシステムディスク装置で異常が発生した場合でも、ブート対象装置を従系のシステムディスク装置に切り換えて運用することが可能となる。
【0098】
また、ブート対象装置の多重化制御をするシステムソフトウエアは、ブート対象装置内に格納されたOSが起動した後に、OS配下で動作するソフトウエアであり、OS自体は、ブートローダにより起動される。本発明の情報処理システムでは、システムの不揮発性メモリに格納されるブートファームウエア環境情報の設定の仕方を工夫することによって、多重化を制御するシステムソフトウエアが起動する前に、主系のシステムディスク装置で異常が発生した場合でも、ブート対象装置を従系のシステムディスク装置に切り換えられるようにした。そのため、特に、OSやブートローダの変更が許されない場合でも、このOSとブートローダには、一切変更を加えないで、ブート対象装置の切り換えが実現できた。
【図面の簡単な説明】
【図1】2重化されたブート対象デバイスを有する本実施形態による情報処理システムに係る主要部の概略ブロック構成を説明する図である。
【図2】本実施形態の情報処理システムのシステム起動時における処理手順を説明するフロー図である。
【図3】本実施形態による情報処理システムのシステム起動時におけるメインメモリへのブートファームウエアの展開を説明する図である。
【図4】本実施形態の情報処理システムのシステム起動時におけるブートファームウエアによる処理手順を説明するフロー図である。
【図5】本実施形態の情報処理システムのシステム起動時におけるシステムソフトウエアによる処理手順を説明するフローチャートである。
【図6】従来技術による情報処理システムの概略ブロック構成を説明する図である。
【図7】2重化されたブート対象デバイスを有する従来技術による情報処理システムに係る主要部の概略ブロック構成を説明する図である。
【符号の説明】
1…制御装置
2…制御部
3…不揮発性メモリ
4…メインメモリ
5…周辺装置
D1、D2…ディスク装置
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an information processing system provided with a plurality of boot target devices storing operating systems, and more particularly to a main boot target device by cooperating with system software for multiplexing the boot target devices. The present invention relates to an information processing system capable of forcibly switching to a subordinate boot target device and starting from the subordinate boot target device in the next boot process when it cannot be started.
[0002]
[Prior art]
Generally, an information processing system such as a computer is configured to start an operating system from a boot target device such as a hard disk in response to generation of a start signal. In such a configuration, when the boot target device is broken, the operating system cannot be started. In particular, when such a failure occurs in a computer, particularly when this computer is connected to another computer on a network, all services for the other computer are stopped. appear.
[0003]
On the other hand, recently, as one technique for improving the fault tolerance of an information processing system, a plurality of hard disks are made redundant with a RAID (Redundant Arrays of Inexpensive Disks) configuration. However, this RAID configuration is a technique for improving the reliability of read data by mirroring or striping, and does not increase the reliability of operations related to system startup.
[0004]
Therefore, when it is detected that one of the disk devices is destroyed in an information processing system that multiplexes, for example, a disk device that is a boot target device, a plurality of devices provided in the system are operated by a switch operation. An information processing system has been developed in which a computer system is started by switching a boot target disk device from among the disk devices. However, in this information processing system, the switch operation for switching is performed manually by an administrator or the like, and it is also necessary to manually determine whether the system has started normally or has failed. Was done by.
[0005]
In such an information processing system, when the disk device is destroyed, it takes time to start up the system again, and this impedes system operation. However, the other disk is automatically switched. In view of this, an information processing system has been proposed in which the reliability of operations related to system activation is sufficiently enhanced.
[0006]
In this information processing system, as shown in the conceptual diagram of FIG. 6, the control device 1 is provided with the disk devices D1 and D2 storing the OS in a duplicated manner, and the control device 1 is a control having a CPU. Part 2, a non-volatile memory 3, and a main memory 4. Furthermore, a peripheral device 5 such as a keyboard and a monitor device is connected to the control unit 2.
[0007]
As an example of how to switch to a dual disk device in such an information processing system, when the control unit having the OS of the information processing system detects that one of the disk devices is destroyed, the system In the non-volatile memory provided in the device, initial microprogram load (IMPL) disk information and initial program load (IPL) disk device information are automatically stored (for example, patents). Reference 1). In this example, since the IMPL disk information and the IPL disk device information are automatically stored in the non-volatile memory, the control unit can know the disk device information to be stored next, and can automatically detect other normal information. It is possible to switch to a disk device.
[0008]
As another example, in a disk device that is individually stored with OSs and is duplicated, when a failure occurs in the disk device, information processing that attempts to shorten the time from the failure occurrence to the recovery of the disk device There is a system (see, for example, Patent Document 2). In the information processing system according to this example, when one of the disk devices is destroyed, the system is once terminated, and before restarting, the other non-destructed disk device becomes the master, and the destroyed disk device becomes the master. Switching control is performed and system registration is performed so as to become a slave. As a result, when the system is restarted, the OS is started by the IPL of the disk device that is not destroyed, which is the master, and the system is started.
[0009]
Further, as another example, the OS is individually stored and has a disk device that is duplicated, and has a means for starting the OS and a means for detecting completion of starting the OS, and starts the OS. An elapsed time from the generation of the activation signal for generating the OS, and based on whether or not the completion of the activation of the OS is detected within a predetermined elapsed time from the generation of the activation signal. There is an information processing system that controls switching of boot target disk devices (see, for example, Patent Document 3).
This information processing system can automatically detect completion of OS startup, and is subject to OS startup based on whether or not OS startup completion has been detected within a predetermined elapsed time after the startup signal is generated. Since the switching of the boot target disk device is automatically controlled, it is automatically determined whether or not the OS can be normally started and the restart of the OS from another boot disk device without any manual intervention. Can be performed.
[0010]
On the other hand, each of the duplicated disk devices to be booted in the information processing system stores various programs for starting the disk device. In each disk device, for example, a boot block program, an OS loader, an OS, and system software are stored from the top of the disk, and data is stored thereafter.
[0011]
When the information processing system is started up, the boot firmware stored in the nonvolatile memory in the system is expanded into the main memory, and the boot target disk device is selected by the operation of the boot firmware, and the disk The boot block program stored in the device is read and expanded in the main memory. The boot block program expands the OS loader stored in the boot target disk device in the main memory. Next, when the OS loader reads the OS into the main memory, the OS expands the system software stored in the boot target disk device in the main memory. It is checked whether the system software is started up in the main system or the sub system of the dual disk device, and dual control is executed. By starting the system software, the subsequent switching process for the duplicated disk device is performed during normal operation of the OS.
[0012]
[Patent Document 1]
JP-A-3-229331
[Patent Document 2]
JP 2000-81978 A
[Patent Document 3]
JP 2002-259130 A
[0013]
[Problems to be solved by the invention]
In the conventional information processing system, by duplicating the system component device, redundancy is provided for a hardware error that occurs when the system component device is accessed during operation, thereby improving reliability. Redundancy is realized by processing of system software stored in a boot target disk device that is a system constituent device. For this reason, once the system startup process has been completed until the system software is started up, the subsequent process will not cause an error even if an error occurs in accessing the redundant system disk device. Continuous operation is possible using the data that has not been generated.
[0014]
Also, if errors occur frequently in the duplicated primary system disk device, it is possible to disconnect the primary disk device and then boot the system from the secondary system disk device. is there. However, in the system start-up process, even if the bootable disk device is duplicated, the switching is triggered when an abnormality of the main disk device is detected. For this reason, if an abnormality occurs in the main system disk device before the system software stored in the main disk device starts, the system software that controls duplication must be operated. I can't. Therefore, even if the system disk device is duplicated, if an error occurs in the primary system disk device, it cannot be switched to the secondary system disk device, so that the system cannot be started up. It was.
[0015]
Therefore, in addition to the conventional function of switching the boot target device by detecting the device abnormality after the system software is started, the present invention can also be used when the device abnormality occurs before the system software is started. An information processing system having a function capable of switching devices is provided. Furthermore, regardless of device abnormality detection, a function for forcibly switching a boot target device for each boot process, and a system software It is an object of the present invention to provide an information processing system having a function of performing processing for restoring a boot target device that is forcibly switched at the time of startup.
[0016]
[Means for Solving the Problems]
In order to solve the problem of Isho, in the present invention, Store the operation system Multiplexed multiple A disk device and one of the plurality of disk devices Select from From the boot target disk device reading Start the operating system System With control means to start up In the information processing system, The control means includes The plurality disk Boot target from the device Disk unit Environment information to set As the first variable information in which device setting information indicating a disk device that is a candidate for a boot target disk device is set, and index information indicating any of the device setting information set in the first variable information is set. Second variable information Store First Storage means With , The control means selects a disk device corresponding to the device setting information indicated by the index information as a boot target disk device, accesses the selected boot target disk device, and selects the selected boot target in the second variable information. When the index information indicating the device setting information corresponding to the disk device other than the disk device is set and updated, and the selected boot target disk device does not operate normally, the disk corresponding to the device setting information indicated by the updated index information Select the device, switch the boot target disk device as a new boot target disk device, and access the new boot target disk device It was decided to.
[0017]
And A plurality of device setting information corresponding to a plurality of disk devices is set in the first variable information, and a value indicating the order of the device setting information in the first variable information is set in the index information. When selecting the boot target disk device, the control unit selects the disk device indicated by the device setting information corresponding to the order indicated by the index information as the boot target disk device. It was decided.
[0018]
further, The control means increments a value set in the second variable information when updating the index information. To do and If the boot process is successful, the index information is updated to the initial value. It was decided to.
[0019]
further, When the boot process is normally performed, the control unit sets the index information to a value indicating the device setting information corresponding to the disk device that last booted successfully. It was decided to.
[0020]
Also, The control means further reads the operation system from the accessed boot target disk device, stores the read operation system in the second storage means, and activates the operation system stored in the second storage means It was decided to.
[0021]
further, The first storage unit further stores third variable information indicating whether switching of the boot target disk device is valid or invalid, and device setting information corresponding to a plurality of disk devices is sequentially stored in the first variable information. And the control means accesses the disk device designated by the index information set in the second variable information when the third variable information is set to be effective for switching, and the third variable information When invalid switching is set in the variable information, the disk device corresponding to the device setting information set first in the first variable information is accessed. It was decided to.
[0022]
The control means clears the index information when the system is turned on, sets the index information to the second variable information in the first device setting information in the first variable information, and further sets the index information to the second variable information. When the third variable information is set to enable switching and the index information set in the second variable information does not indicate the first device setting information in the setting order in the first variable information, Output a message indicating that an error has occurred in the disk device corresponding to the first device setting information in the setting order in the first variable information I decided to do it.
[0023]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of an information processing system according to the present invention will be described with reference to the drawings. However, before explaining the information processing system of this embodiment, in order to clarify the features and effects of this embodiment, the information processing system according to the prior art that is the basis of the information processing system of this embodiment will be described. To do.
[0024]
FIG. 7 shows a conventional information processing system in which a boot block program and system software independently switch boot target disk devices. FIG. 2 shows an outline of a part related to the start-up of the information processing system. In the figure, the same parts as those in the information processing system shown in FIG.
[0025]
In the information processing system of FIG. 7, duplicated disk devices D1 and D2 are connected to the control device 1. Each of the disk devices D1 and D2 stores a boot block program, an OS loader, an OS, and system software in order from the top of the disk. Although not shown, each disk device stores data following these.
[0026]
The control device 1 includes a non-volatile memory NM and a main memory M, but in the figure, portions related to system startup are typically shown. The nonvolatile memory NM stores a self-diagnosis firmware NM1 and a boot firmware environment variable NM2. Although not shown, boot firmware binary data is also stored. The boot firmware environment variable NM2 stores boot firmware environment information. In the figure, since the disk devices D1 and D2 are duplicated, the environment variable "boot-device = disk0" , disk1 "is stored. In this environment variable, “disk0” is associated with the disk device D1, and “disk1” is associated with the disk device D2, and the boot targets are the disk devices D1 and D2. This indicates that the startup process is performed.
[0027]
Also, nothing is stored in the main memory M before the system startup, but the figure shows the development status of the software read from the boot target disk device at the system startup. The boot firmware M1 is obtained by reading boot firmware data stored in the nonvolatile memory NM, and the boot block program, OS loader M3, OSM4, and system software M5 are stored in the boot target disk device. What was stored is what was read into the main memory M when the system was started up.
[0028]
Therefore, an outline of the operation in which the boot firmware M1 and the system software M5 independently switch the boot target disk device in the information processing system shown in FIG.
[0029]
First, when the power is turned on and the system startup process is started, the self-diagnosis firmware NM1 is started and a system check is executed. Then, the boot firmware data stored in the non-volatile memory NM is read into the main memory M to obtain the boot firmware M1. Since the boot control environment variable prepared in the boot firmware environment variable NM2 is “boot-device = disk0, disk1”, the boot firmware M1 sequentially selects the disk devices set in this environment variable. Access is first performed, and a device that can be normally accessed first is determined as a boot target device. When the boot target device is determined, the boot firmware M1 does not actively change the boot target disk device thereafter.
[0030]
Next, the boot firmware M1 accesses the boot target disk device selected above, reads the boot block program written in the head block thereof into the main memory, and expands the boot block program M2. The boot firmware M1 transfers control to the read boot block program M2.
[0031]
When the boot block program M2 is activated, the boot block program M2 reads the disk device in which it is stored, in the illustrated example, the OS loader stored in the disk device D1 into the main memory, and the OS Control is transferred to the loader M3.
[0032]
Therefore, when the OS loader M3 is activated, the OS loader M3 reads the OS stored in the disk device D1 in which the OS loader M3 is stored into the main memory, and passes control to the OSM 4.
[0033]
Further, when the OSM 4 is activated, the OSM 4 reads the system software stored in the disk device D1 in which the OSM 4 is stored into the main memory M, expands the system software M5, and activates the system software M5. . Here, when the system software M5 is normally activated, the operation proceeds to the operation.
[0034]
As described above, in the information processing system shown in FIG. 7, the boot firmware M1 and the system software M5 perform the operation of switching the boot target disk device independently.
[0035]
Since the system software M5 can execute the switching control when the system software M5 can normally shift to the operation operation, the disk device D1 can be disconnected when the abnormality of the boot target disk device D1 is detected. In that case, the system software M5 rewrites the environment information of the boot firmware environment variable NM2 in the nonvolatile memory NM in order to switch the boot target disk device D1 at the next reboot.
[0036]
However, since the boot firmware M1 and the system software M5 are proceeding independently as described above, after the boot firmware M1 selects the boot target disk device according to the environment information of the boot firmware. If some abnormality occurs during the process before the control is transferred to the system software M5 and the process cannot be continued, the system software M5 has not started yet. The environment information of NM2 cannot be rewritten. Therefore, even in the next reboot, the boot target disk device cannot be changed to another disk device having no abnormality, and as a result, the system cannot be started up.
[0037]
As described above, in the information processing system according to the prior art, when some abnormality occurs during the process before the control by the activation of the system software M5, the system to be booted is made redundant although the boot target disk device is made redundant. There was a problem that did not stand up.
[0038]
Furthermore, in the information processing system of the prior art, when a module that detects a disk device abnormality tries to switch the disk device to be booted by rewriting the environment information “boot-device” of the boot firmware environment variable individually. The boot block program, the OS loader, and the OS initialization process need to be changed in consideration of the redundant configuration of the disk device to be booted. Generally, the boot block program, the OS loader, The initialization unit of the OS has a problem that it is difficult to apply a change in consideration of a specific redundant configuration system.
[0039]
Therefore, in the information processing system of the present embodiment, the following two requirements by the switching mechanism provided in the conventional information processing system can be inherited as they are. In other words, one requirement is that the boot firmware accesses the disk devices set in the environment information “boot-device” in order, and determines the disk device that can be normally accessed first as the boot target disk device. Yes, the second requirement is that if the system software can successfully move to operation, the system software can control the switching, and if a disk device abnormality is detected, the boot target disk device can be disconnected. It can be done.
[0040]
In order to provide an information processing system that satisfies the above requirements, in this embodiment, the first variable that can set device information to be booted as environment information stored in the boot firmware environment variable in the nonvolatile memory "" Boot-device ", the second variable" boot-device-index "indicating the boot target order information, and the disk devices are accessed in order, and the first disk device that can be accessed normally is the boot target. A third variable “boot-device-index-available” indicating whether or not the decision function is valid is prepared.
[0041]
The first variable “boot-device” is set to “boot-device = disk0, disk1, disk5” when there are three redundant disk devices, for example. For the second variable “boot-device-index”, for example, if the first variable is as described above, the index number of “disk0” is the initial value 0, and the index number of “disk1” is 1 and the index number of “disk5” is 2, and the disk device to be booted is designated at the next boot. The third variable “boot-device-index-available” has values of “true” and “false”, and when this value is selected and the switching function by duplication described above is valid, “true” is set, and if not, “false” is set.
[0042]
FIG. 1 shows the configuration of the information processing system according to the present embodiment in which the boot firmware environment variable including the above three environment information is prepared in the nonvolatile memory. In FIG. 1, the same parts as those in the configuration of the information processing system according to the prior art shown in FIG. In FIG. 1, as in FIG. 7, the configuration related to system startup is mainly shown in the configuration of the information processing system.
[0043]
The information processing system in FIG. 1 is significantly different from the information processing system in FIG. 7 in the contents prepared in the boot firmware environment variable stored in the nonvolatile memory NM. The boot firmware environment variable NM2 prepared in the information processing system according to the prior art of FIG. 7 is only “boot-device” as environment information. However, in the information processing system of this embodiment of FIG. In the firmware environment variable NM21, the first variable “boot-device”, the second variable “boot-device-index”, and the third variable “boot-device-index-available” are prepared as environment information. It is that you are.
[0044]
Therefore, the information processing system of the present embodiment shown in FIG. 1 shows a schematic configuration when the boot target disk device is switched by boot firmware and system software, and switches the disk device which is a duplicated device. Take the case as an example. The switching process will be described below with reference to the flowchart of the processing procedure in FIG.
[0045]
First, when the system is powered on or rebooted and reset (step S101), the system automatically stores its own hardware diagnosis stored in the non-volatile memory NM, for example, the flash memory. Diagnostic firmware (POST) NM1 is activated, and a hardware self-diagnosis is performed in order to ensure that the system starts up normally immediately after power-on or immediately after reboot reset (step S102).
[0046]
Since the self-diagnosis firmware NM1 executes diagnosis of the system including the main memory M, it normally operates as it is with the code on the flash memory. However, after the diagnosis of the main memory M, the code may be expanded in the main memory M to operate on the main memory. In some cases, after the CPU cache memory is diagnosed, the execution code is expanded in the cache memory. The self-diagnosis firmware NM1 creates hardware configuration information as a result of diagnosing the hardware, and delivers the information to boot firmware M1 described later.
[0047]
When the diagnosis by the self-diagnosis firmware NM1 is completed, the control is transferred to the boot firmware M1 (step S103). The code of the boot firmware M1 is normally stored in a non-volatile memory NM, for example, a flash memory, and the execution code is expanded in the main memory M and operates on the main memory M. In some cases, the code is not stored in the flash memory but downloaded from the outside to the main memory M by the self-diagnosis firmware NM1.
[0048]
The boot firmware M1 includes a disk driver, a console, and a console so that the boot block program, the OS loader, and the OS can be booted based on the hardware configuration information created by the self-diagnosis firmware NM1. A boot driver such as a driver is initialized (step S103). Further, the boot firmware M1 constructs an environment such as a memory environment so that the boot target program is operated.
[0049]
Next, the boot firmware M1 checks the reset factor as part of the initialization process. If the reset factor is power-on, the boot firmware M1 is stored in the boot firmware environment variable NM21 of the nonvolatile memory NM. Clear the second variable “boot-device-index” to 0. When the reset factor is a reboot that is not powered on, the value of the second variable is not changed.
[0050]
When the process proceeds until the process proceeds to the boot process, the boot firmware M1 has three variables stored in the boot firmware environment variable NM21: the first variable “boot-device” and the second variable “boot-device-index”. The boot target disk device is selected according to the value of the third variable “boot-device-index-available” (step S104).
[0051]
The boot firmware M1 accesses the selected boot target disk device, reads the disk configuration information, and confirms that the disk operates normally. If the selected disk cannot operate normally, the boot target disk device is changed to the next candidate. At that time, the value of the second variable “boot-device-index” is updated. Also, even if the selected boot target disk device can operate normally, the system software M5 cannot be started normally and is forcibly switched to the next candidate in preparation for the next boot process. Therefore, the value of the second variable “boot-device-index” is updated.
[0052]
When selecting the target disk from the values of the three variables “boot-device”, “boot-device-index”, and “boot-device-index-available” stored in the boot firmware environment variable NM21, If there is no target disk device that can be selected, or if there is no target disk device that can be selected when trying to change the target disk device to the next candidate, an error message is notified and processing is performed. Stop.
[0053]
When the boot device M1 is selected as the boot target, the boot firmware M1 reads the boot block program written in the first block in the disk device D1 into the main memory M and reads it. Control is transferred to the boot block program M2 (step S105).
[0054]
When the boot block program M2 is activated, the boot block program M2 reads the OS loader stored in the disk device D1 in which the boot block program M2 is stored into the main memory M, and transfers control to the OS loader M3 ( Step S106).
[0055]
When the OS loader M3 is activated, the OS loader M3 reads the OS stored in the disk device D1 in which the OS loader M3 is stored into the main memory M, and the control is passed to the OSM 4 (step S107).
[0056]
Therefore, when the OSM4 initialization process is performed and the OSM4 is activated (step S108), the OSM4 reads the system software stored in the disk device D1 in which it is stored into the main memory M, and the system software M5 is activated (step S109).
[0057]
When the system software M5 starts normally, the system software M5 clears the second variable “boot-disk-unit-index” recorded in the boot firmware environment variable NM21 to zero. With this process, the above-described boot process is executed again from the same disk device D1 in the next reboot process. It is checked whether the primary or secondary disk device has started up. If it is recognized that the secondary disk device has started up, an error message is notified (step S110). Subsequent disk device switching processing is performed by the system software M5 (step S111).
[0058]
Here, when the system software M5 cannot be started normally, the second variable “boot-device-index” recorded in the boot firmware environment variable NM21 is updated by the process in step S104 described above. Therefore, at the next reboot, the next candidate disk device is forcibly set as the boot target device. In addition, an abnormality is detected in the disk device selected in the process in step S104, and the second variable “boot-device-index” has been updated by that amount, so the next reboot is forced to Candidate disk devices become boot targets.
[0059]
If an abnormality of the disk device is detected in the open process of the boot target disk device in step S4, as described above, the disk device in which the abnormality is detected as in the conventional information processing system. Is detached.
[0060]
Then, during the processing period of steps S105 to S109 before reaching the initialization process of the system software M5, when the disk device has an abnormality or the like and is in a panic state, Since the wear M5 does not start, the disk device switching process was not executed. However, in the information processing system of the present embodiment, it can be recognized that the system software M5 has not been started normally, and the disk device can be forcibly switched. If an error occurs in the main system disk device that has been duplicated, the system software that controls the duplication is not operating, so it is not possible to switch to the secondary system disk device. The problem that the system cannot be started can be avoided.
[0061]
As described above, in the information processing system shown in FIG. 1, the processing procedure for switching the boot target disk device by the boot firmware and the system software for the duplexed disk device has been described. Next, referring to FIG. 3 and FIG. 4, the detailed configuration of the boot firmware M5 in the information processing system of the present embodiment of FIG. 1 and the procedure for switching the boot target disk device by the boot firmware M5 are as follows. explain.
[0062]
FIG. 3 shows the storage status of the nonvolatile memory NM provided in the control device 1 of the information processing system of this embodiment shown in FIG. 1 and the configuration of the boot firmware M1 read into the main memory M. A specific example is shown. In FIG. 3, the same parts as those in FIG.
[0063]
The nonvolatile memory NM provided in the control device 1 stores self-diagnostic firmware (POST) NM1, boot first wear compressed data NM3, and hardware configuration information NM4. The nonvolatile memory NM of the information processing system is also prepared. Instead of the conventional boot firmware environment variable NM2 stored in the nonvolatile memory NM, the boot firmware environment variable NM21 in FIG. 3 includes the first variable “boot-device”, the second variable as environment information. A variable “boot-device-index” and a third variable “boot-device-index-available” are prepared.
[0064]
On the other hand, the boot firmware M1 has the same configuration as that of the conventional boot firmware M1, and includes an initialization processing unit M11, a trap processing unit M12, a memory processing unit M13, a monitor processing unit M14, various library units M15, and a client service. The module includes a processing unit M16, a boot processing unit M17, and a driver processing unit M18. The boot firmware M1 having these module configurations is read from the boot firmware data NM3 into the main memory M after the self-diagnosis of the system is completed, and is decompressed and expanded after being compressed and stored. . The boot firmware M1 operates on the main memory M. These parts are as follows.
[0065]
The initialization processing unit M11 initializes each module of the boot firmware M1. Of the environment information stored in the boot firmware environment variable NM21 of the non-volatile memory NM, one that needs to be initialized is initialized here.
[0066]
The trap processing unit M12 executes processing for traps generated in the operating environment of the boot firmware M1. Some trap processing occurs due to hardware failure, while others occur as part of normal processing, such as miss processing in the memory management unit (MMU). In addition, the boot block program M2 and the OS loader M3 that are expanded and operated on the main memory M during the boot process of the OS operate in the environment of the boot firmware M1. The trap processing unit M12 also performs processing of the generated trap. For the OSM 4 expanded in the main memory M, the trap processing before the initial trap vector change is performed by the trap processing unit M12.
[0067]
The memory management unit M13 assigns a logical address from the physical memory configuration notified by the hardware configuration information NM4 of the nonvolatile memory NM. Also, dynamic memory allocation associated with MMU miss processing is performed. Also, dynamic acquisition / release processing of physical memory and logical memory is performed.
[0068]
The monitor processing unit M14 supports a command input screen that is a man-machine interface of the boot firmware M1, and the various library units M15 are various support modules.
[0069]
The client service processing unit M16 dynamically allocates a memory space to a client program such as the boot block program M2 expanded on the main memory M, the OS loader M3, and the OSM4, and accesses the disk device. It has the role of an interface that provides services. Each client program can use the function of the boot firmware M1 through the client service processing unit M16. By using this function, the boot block program, the OS loader, and the OS stored in the boot target disk device can be read to perform boot processing.
[0070]
The boot processing unit M17 is a module that supports boot processing. The boot target disk device is determined according to the value of the environment information stored in the boot firmware environment variable NM21 of the nonvolatile memory NM, and the boot block program stored in the first block of the boot target disk device is set as the main. It has the function of expanding to the memory M and passing control. This module performs the processing of step S104, which is a feature of the present embodiment.
[0071]
The driver processing unit M18 controls I / O supported by the boot firmware M1. This includes disk drivers, SCSI drivers, console drivers, and the like.
[0072]
The operation of the boot firmware M1 composed of various modules as described above on the main memory M will be described with reference to the processing flow of FIG.
[0073]
First, immediately after power-on or immediately after reboot reset (step S201), the system activates self-diagnosis firmware (POST) written in a flash memory, which is a nonvolatile memory (step S202).
[0074]
The self-diagnosis firmware NM1 executes hardware diagnosis for ensuring that the system starts up normally. As a result of the diagnosis, hardware configuration information is created (step S203) and recorded in the hardware configuration information NM4 of the nonvolatile memory NM (step S204). This configuration information is used for subsequent hardware configuration recognition in the boot firmware M1.
[0075]
The boot firmware M1 is a program that starts after diagnosing the main memory M after the hardware diagnosis by the self-diagnosis firmware NM1, and thus can operate on the main memory M. The binary data of the boot firmware M1 is normally stored in a compressed format in the flash memory in the system, and after being diagnosed by POST, it is expanded and expanded on the main memory M by POST (step S205). . Alternatively, the data of the boot firmware M1 may not be stored in the flash memory in the system, but may be downloaded by decompressing the data compressed by POST from the outside onto the main memory M.
[0076]
Then, similar to the processing in step S103 shown in FIG. 2, the modules M11 to M18 of the boot firmware M1 are initialized, and the initialization processing unit M11 boots according to the hardware configuration information NM4. Initialization according to the firmware environment variable NM21 is executed (step S206).
[0077]
The boot processing unit M17 determines a boot target disk device according to the environment information of the boot firmware environment variable NM21 (step S207). Therefore, the boot processing unit M17 accesses the determined disk device to be booted, reads the boot block program stored in the first block of the disk device, and expands it on the main memory M (step S208). The boot block program M2 has a function of expanding the OS loader in the main memory and transferring control.
[0078]
Next, the boot block program M2 read on the main memory M is stored next to the boot block program at the head of the boot target disk device by using the function of the client service processing unit M16. The OS loader is read and expanded on the main memory M (step S209). The OS loader M3 has a function of interpreting the file system of the OS, and has a function of expanding the OS program stored in the boot target disk device to the main memory and transferring control.
[0079]
Further, the OS loader M3 read on the main memory M reads the next OS of the OS loader stored in the boot target disk device and expands it on the main memory M by using the function of the client service processing unit M16. (Step S210). This processing is the same as step S108 in the processing flow shown in FIG. 2, and the processing after step S210 is the same as the processing after step S109.
[0080]
The detailed configuration of the boot firmware M5 in the information processing system of the present embodiment and the procedure of the boot target disk device switching process by the boot firmware M5 have been described above. Next, referring to the flowchart of FIG. The disk device switching process after the system software stored in the disk device to be booted is read and expanded in the main memory M in the control device 1 in the information processing system of the present embodiment will be described. To do.
[0081]
First, the system software M5 read on the main memory M is initialized and started as described in step S110 (step S301).
[0082]
Next, the system software M5 checks the boot firmware environment variable NM21 in the nonvolatile memory NM and checks whether the third variable “boot-device-index-available” exists (step S302).
[0083]
Here, when the boot process is executed by the boot firmware M5 having the configuration of the information processing system of the prior art before the present embodiment is implemented, the boot firmware environment variable NM2 is set as shown in FIG. Since the third variable “boot-device-index-available” does not exist (N in step S302), it operates within the system configuration of the prior art shown in FIG. The process proceeds to normal operation processing (step S305).
[0084]
When the present embodiment is implemented, the third variable “boot-device-index-available” exists in the processing of step S302 (Y), and the redundant operation function of the current boot target disk device is set. It is confirmed whether it is present (step S303). The system software M5 is software that improves reliability by redundantly operating the boot target disk device, but this function may be invalidated by setting, so the current setting is confirmed here.
[0085]
If the system software M5 has been set to perform redundant operation of the boot target disk device by checking the setting related to the redundant operation function in step S303 (Y), the third variable “3” of the boot firmware environment variable NM21 The value “true” is set to “boot-device-index-available” (step S306). The third variable “boot-device-index-available” is set to the value “false” in the initial default state. In this case, the forced disk switching function in the boot firmware M1 does not work.
[0086]
However, once the value is set to “true”, this third variable is recorded in the boot firmware environment variable NM21 of the nonvolatile memory NM. Will not change. If “true” is set in the third variable when the system software M5 is not installed, even if the boot target disk device is forcibly switched at the time of booting by the boot firmware M1, the original is set. There will be nothing to return to. For this reason, the reboot process fails. In order to avoid this, the setting of setting the value of the third variable to “true” is performed by the system software M5.
[0087]
When the system software M5 is installed and operated, once the value of the third variable is set to “true”, the value of the third variable is stored in the boot firmware environment variable NM21 of the nonvolatile memory NM. Therefore, the redundant operation function becomes effective. In this processing flow, the redundant operation state of the boot target disk device is checked in the startup processing of the system software M5, and the third variable is always changed. However, here, without changing, It may be set at the time of installation of the system software M5, or after entering the normal operation state, the redundant operation state may be checked and set from the menu of the system software M5. It is important that the system software M5 only sets the value of the third variable to “true”.
[0088]
As a result of the confirmation processing in step S303, the system software M5 determines that the boot target disk device is not set to operate redundantly (N) (N), the third variable “boot-device-” of the boot firmware environment variable NM21. A value “false” is set in “index-available” (step S304).
[0089]
Next, it is checked whether or not the second variable “boot-device-index” of the boot firmware environment variable NM21 is 0 (step S307). As shown in the flow of FIG. 2, the value of the second variable is 0 because the value of the third variable “boot-device-index-available” is “false” when the boot firmware M1 is operating. This is only the case. If the value of the third variable “boot-disk-unit-index-available” is “true” during the operation of the boot firmware M1, the second variable “boot-device” must be executed during the boot process. The value of “-index” has been updated (incremented). Accordingly, when the value of the second variable is 0 (Y in step S307), the switching function according to the present embodiment is not effective, and the normal operation is immediately started (step S305).
[0090]
On the other hand, when the value of the second variable “boot-device-index” is not 0 (N in step S307), the value of the third variable “boot-device-index-available” is “ indicates "true". In this case, the setting of the first variable “boot-device” is checked (step S308), and it is checked whether the disk device on which the boot process is actually executed is the primary system or the secondary system. (Step S309).
[0091]
In general, when the value of the second variable “boot-device-index” is 1, it indicates that the main system has started up, and when it is 2 or more, it indicates that the second variable “boot-device-index” has started up in the secondary system. Depending on the system settings, there may be a case where a plurality of the same disk devices are set with different names in the setting of the first variable “boot-device”. In this case, even if the value of the second variable “boot-device-index” is 2, it may indicate a primary device. Here, such a state is also taken into consideration for confirmation.
[0092]
As a result of the confirmation in the process of step S309, if it is recognized that the booted disk device is not the main system (N), some abnormality has occurred during the activation of the main disk device, and this is notified. A warning message is displayed (step S310).
[0093]
Regardless of whether the boot-started device is the primary system or the secondary system, it indicates that the system software M5 has started normally, and the next reboot process allows the second variable to be executed normally again. The value of “boot-device-index” is cleared to 0 (step S311), and the operation shifts to normal operation (step S305). Here, although 0 is cleared, it may be decremented to indicate a device that has succeeded in booting last.
[0094]
In step S305, the normal operation is performed. When a disk device abnormality is detected during the normal operation process, the boot target disk device is disconnected by the system software M5. In order to switch the target disk device, the system software M5 directly rewrites the value of the second variable “boot-device-index” of the environment information. This process is the same as in the case of the prior art. At this time, if the value of the second variable “boot-device-index” is decremented without being cleared to 0 in step S311, the first variable “boot-device” is changed accordingly. The value of the second variable “boot-device-index” is also rewritten or cleared to zero.
[0095]
As described above, according to the information processing system according to the present embodiment, a hardware error that occurs when a device device that can be booted, which is a system disk device that stores an operating system, is duplicated and the system disk device is accessed during operation. Therefore, it is possible to provide a computer system that can improve reliability by providing redundancy, and by linking boot firmware and system software for disk device duplication processing, If the system software stored in the boot target device device cannot be started, the boot target device device is forcibly switched to the subordinate boot device device in the next boot process by the boot firmware. System software from the boot device It was possible to enable the start-up of.
[0096]
Below, the embodiment regarding the information processing system by this invention is shown.
(Appendix 1)
In an information processing system in which an operation system selected and read from a plurality of multiplexed devices is activated and the system is started up,
Storage means for storing environment information for setting a boot target from the plurality of devices;
A boot control unit for determining a boot target device based on the setting of the environment information and starting the operation system stored in the boot target device;
Control means for performing multiplexing control of the plurality of devices,
The information processing system according to claim 1, wherein when an abnormality is detected in the boot target device, the control unit changes the setting of the environment information and controls to switch to the other device.
(Appendix 2)
The environmental information is
First variable information including device setting information to be boot target candidates for the plurality of devices;
Second variable information including index information for designating a boot target device based on the device setting information;
Third variable information in which a binary value indicating whether the multiplexing is valid is set;
The information processing system according to appendix 1, characterized by comprising:
(Appendix 3)
The boot control unit clears the index information to an initial value when the system is turned on, and selects the device initially set in the device setting information as a boot target. Information processing system.
(Appendix 4)
The boot control unit selects the boot target device specified by the index information when the third variable information is set to valid, and when the third variable information is set to not, 3. The information processing system according to appendix 2, wherein the device set to 1 is selected as a boot target.
(Appendix 5)
The information processing system according to appendix 4, wherein the boot control unit updates an index in the index information when validity is set in the third variable information.
(Appendix 6)
The boot control unit selects a boot target device set in the environment information, reads the operation system stored in the boot target device, and starts the operation system. Information processing system according to item.
(Appendix 7)
If the control means is set to valid in the third variable information and the index information is not the initial value, the control means refers to the setting in the first variable information and confirms that it has started up in the secondary boot target device. The information processing system according to attachment 2, wherein the information processing system is recognized.
(Appendix 8)
When the control unit recognizes that the secondary boot target device has started up, the control unit notifies the warning message indicating that an abnormality has occurred in the primary device. Information processing system described in 1.
(Appendix 9)
The information processing system according to appendix 7 or 8, wherein the control means clears the second variable information to an initial value when the third variable information exists and the second variable information is not 0.
(Appendix 10)
The control means sets the third variable information to No when the third variable information exists in the storage means and there is no redundant operation setting for the plurality of devices. 2. The information processing system according to 2.
(Appendix 11)
Regardless of whether or not the third variable information exists in the storage means, the control means disconnects the boot target apparatus when detecting the occurrence of an abnormality in the boot target apparatus, and the boot of the first variable information The information processing system according to appendix 2, wherein the setting information of a device that is a target candidate is rewritten.
(Appendix 12)
The storage unit is a non-volatile memory, and the setting in the second variable information and the third variable information stored in the storage unit is rewritten by the boot control unit and the control unit. The information processing system described.
(Appendix 13)
The information processing system according to appendix 1 or 2, wherein the boot control unit executes a boot process using boot firmware stored in the storage unit.
(Appendix 14)
The information processing system according to appendix 1 or 2, wherein the control means reads system software stored in the boot target device and executes multiplexing control.
[0097]
【The invention's effect】
As described above, in the information processing system according to the present invention, in the system in which the system disk device as the boot target device is multiplexed and the redundancy is improved, before the system software that controls the multiplexing is started, Even when an abnormality occurs in the primary system disk device selected by the hardware, the boot target device can be switched to the secondary system disk device for operation.
[0098]
The system software for controlling the multiplexing of the boot target device is software that operates under the OS after the OS stored in the boot target device is started. The OS itself is started by the boot loader. In the information processing system of the present invention, the system of the main system is started before the system software for controlling the multiplexing is started by devising the setting method of the boot firmware environment information stored in the nonvolatile memory of the system. The boot target device can now be switched to the secondary system disk device even if an error occurs in the disk device. Therefore, even when the change of the OS and the boot loader is not permitted, the boot target device can be switched without changing the OS and the boot loader at all.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating a schematic block configuration of a main part according to an information processing system according to an embodiment having a duplex boot target device.
FIG. 2 is a flowchart illustrating a processing procedure when the information processing system according to the present embodiment is started.
FIG. 3 is a diagram for explaining the deployment of boot firmware to the main memory at the time of system startup of the information processing system according to the present embodiment.
FIG. 4 is a flowchart illustrating a processing procedure by boot firmware when the information processing system according to the present embodiment is started.
FIG. 5 is a flowchart illustrating a processing procedure by system software at the time of system startup of the information processing system according to the embodiment.
FIG. 6 is a diagram illustrating a schematic block configuration of an information processing system according to a conventional technique.
FIG. 7 is a diagram for explaining a schematic block configuration of a main part of an information processing system according to the prior art having a dual boot target device.
[Explanation of symbols]
1 ... Control device
2. Control unit
3. Non-volatile memory
4 ... Main memory
5. Peripheral device
D1, D2 ... Disk device

Claims (9)

オペレーションシステムを格納する多重化された複数のディスク装置と、前記複数のディスク装置のいずれかから選択したブート対象ディスク装置から読み出したオペレーションシステムを起動してシステムを立ち上げる制御手段とを備えた情報処理システムにおいて、
前記制御手段は、
前記複数のディスク装置からブート対象ディスク装置を設定する環境情報として、ブート対象ディスク装置の候補となるディスク装置を示す装置設定情報が設定された第1変数情報と、前記第1変数情報に設定された装置設定情報のいずれかを示すインデックス情報が設定された第2変数情報とを格納する第1の格納手段を備え
前記制御手段が、
前記インデックス情報が示す装置設定情報に対応するディスク装置を、ブート対象ディスク装置として選択して、選択したブート対象ディスク装置をアクセスし、
前記第2変数情報に、選択したブート対象ディスク装置以外のディスク装置に対応する装置設定情報を示すインデックス情報を設定して更新し、
前記選択したブート対象ディスク装置が正常に動作しない場合、更新したインデックス情報が示す装置設定情報に対応するディスク装置を選択して、新たなブート対象ディスク装置としてブート対象ディスク装置を切り換え、
切り換えられた新たなブート対象ディスク装置をアクセスすることを特徴とする情報処理システム。
A plurality of multiplexed disk devices that store the operation system; and a control unit that activates the operation system read from the boot target disk device selected from the plurality of disk devices and starts the system . In the information processing system,
The control means includes
As the environment information for setting the boot target disk device from said plurality of disk devices, a first variable information device setting information that indicates disk devices that are candidates for boot target disk device has been set, is set to the first variable information First storage means for storing second variable information in which index information indicating any of the device setting information is set ;
The control means is
Select a disk device corresponding to the device setting information indicated by the index information as a boot target disk device, access the selected boot target disk device,
Updating the second variable information by setting index information indicating device setting information corresponding to a disk device other than the selected boot target disk device;
If the selected boot target disk device does not operate normally, select the disk device corresponding to the device setting information indicated by the updated index information, and switch the boot target disk device as a new boot target disk device,
An information processing system for accessing a switched new boot target disk device .
前記第1変数情報には、複数のディスク装置に対応した複数の装置設定情報が設定され、
前記インデックス情報には、前記第1変数情報内の装置設定情報の順番を示す値が設定され、
前記制御手段は、ブート対象ディスク装置の選択時、前記インデックス情報が示す順番に対応する装置設定情報が示すディスク装置をブート対象ディスク装置として選択することを特徴とする請求項1に記載の情報処理システム。
In the first variable information, a plurality of device setting information corresponding to a plurality of disk devices is set,
In the index information, a value indicating the order of the device setting information in the first variable information is set,
2. The information processing according to claim 1 , wherein when the boot target disk device is selected, the control unit selects the disk device indicated by the device setting information corresponding to the order indicated by the index information as the boot target disk device. system.
前記制御手段は、前記インデックス情報を更新する場合、前記第2変数情報に設定された値をインクリメントすることを特徴とする請求項2に記載の情報処理システム。The information processing system according to claim 2, wherein the control unit increments a value set in the second variable information when updating the index information . 前記制御手段は、ブート処理が正常に行われた場合、前記インデックス情報を初期値に更新することを特徴とする請求項1又は2に記載の情報処理システム。 Wherein if the boot process is successful, the information processing system according to claim 1 or 2, characterized in that updating the index information to an initial value. 前記制御手段は、ブート処理が正常に行われた場合、前記インデックス情報を、最後にブートが成功したディスク装置に対応する装置設定情報を示す値に設定することを特徴とする請求項1又は2に記載の情報処理システム。 Wherein if the boot process is successful, the index information, claims and sets the last showing the device setting information corresponding to the disk device boot was successful value 1 or 2 Information processing system described in 1. 前記制御手段はさらに、The control means further includes
アクセスした前記ブート対象ディスク装置からオペレーションシステムを読み出し、Read the operation system from the accessed boot target disk device,
読み出したオペレーションシステムを第2の格納手段に格納し、The read operation system is stored in the second storage means,
前記第2の格納手段に格納したオペレーションシステムを起動することを特徴とする請求項1に記載の情報処理システム。2. The information processing system according to claim 1, wherein the operation system stored in the second storage unit is activated.
前記第1の格納手段は、ブート対象ディスク装置の切り換えが有効又は無効かを示す第3変数情報をさらに格納し、The first storage means further stores third variable information indicating whether switching of the boot target disk device is valid or invalid,
前記第1変数情報には、複数のディスク装置に対応する装置設定情報が順番に設定されており、In the first variable information, device setting information corresponding to a plurality of disk devices is set in order,
前記制御手段は、前記第3変数情報に切り換えの有効が設定されている場合、前記第2変数情報に設定されたインデックス情報が指定するディスク装置にアクセスし、前記第3変数情報に切り換えの無効が設定されている場合、前記第1変数情報において最初に設定された装置設定情報に対応するディスク装置にアクセスすることを特徴とする請求項1に記載の情報処理システム。The control means accesses the disk device specified by the index information set in the second variable information when the third variable information is set to enable switching, and disables switching to the third variable information. The information processing system according to claim 1, wherein the disk device corresponding to the device setting information set first in the first variable information is accessed.
前記制御手段は、システムの電源投入時に前記インデックス情報をクリアし、前記第1変数情報における設定順番が最初の装置設定情報にインデックス情報を前記第2変数情報に設定することを特徴とする請求項7に記載の情報処理システム。The control means clears the index information when the system is turned on, and sets the index information in the second variable information in the apparatus setting information that is first set in the first variable information. 8. The information processing system according to 7. 前記制御手段は、前記第3変数情報に切り換えの有効が設定されており、且つ前記第2変数情報に設定されたインデックス情報が、前記第1変数情報における設定順番が最初の装置設定情報を示していない場合に、前記第1変数情報における設定順番が最初の装置設定情報に対応するディスク装置に異常が発生していることを示すメッセージを出力することを特徴とする請求項7又は8に記載の情報処理システム。The control means indicates that the third variable information is set to be valid for switching, and the index information set in the second variable information indicates device setting information in which the setting order in the first variable information is first. 9. A message indicating that an error has occurred in the disk device corresponding to the first device setting information in the first variable information when the setting order in the first variable information is not output. Information processing system.
JP2003119808A 2003-04-24 2003-04-24 Information processing system Expired - Fee Related JP4349837B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003119808A JP4349837B2 (en) 2003-04-24 2003-04-24 Information processing system
US10/786,054 US7434042B2 (en) 2003-04-24 2004-02-26 Apparatus, method and recording medium for starting up data processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003119808A JP4349837B2 (en) 2003-04-24 2003-04-24 Information processing system

Publications (2)

Publication Number Publication Date
JP2004326409A JP2004326409A (en) 2004-11-18
JP4349837B2 true JP4349837B2 (en) 2009-10-21

Family

ID=33296445

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003119808A Expired - Fee Related JP4349837B2 (en) 2003-04-24 2003-04-24 Information processing system

Country Status (2)

Country Link
US (1) US7434042B2 (en)
JP (1) JP4349837B2 (en)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI294098B (en) * 2004-08-06 2008-03-01 Via Tech Inc Fast boot method and system
US7356680B2 (en) * 2005-01-22 2008-04-08 Telefonaktiebolaget L M Ericsson (Publ) Method of loading information into a slave processor in a multi-processor system using an operating-system-friendly boot loader
US7330965B2 (en) * 2005-02-09 2008-02-12 International Business Machines Corporation Multi-tiered boot list
US8255108B2 (en) * 2005-08-31 2012-08-28 Spx Corporation Dynamic file system creation for scan tools
JP2007102349A (en) * 2005-09-30 2007-04-19 Tokiko Techno Kk Data processor
JPWO2007096956A1 (en) * 2006-02-22 2009-07-09 富士通株式会社 Central processing unit
US7886140B2 (en) * 2007-08-16 2011-02-08 International Business Machines Corporation Booting a computer using a boot list when a non-volatile memory on the computer does not contain the boot list
JP5083019B2 (en) * 2008-04-30 2012-11-28 ブラザー工業株式会社 Computer system, program
JP5343489B2 (en) * 2008-09-29 2013-11-13 日本電気株式会社 Computer system, legacy application execution method, and program
JP5293062B2 (en) * 2008-10-03 2013-09-18 富士通株式会社 Computer apparatus, memory diagnosis method, and memory diagnosis control program
US7966484B1 (en) * 2009-01-14 2011-06-21 Cms Products, Inc. Automatic alternating bootable storage devices between different kinds of boot files
US8386757B1 (en) * 2009-02-13 2013-02-26 Unidesk Corporation Managed desktop system
US8788801B2 (en) * 2009-08-18 2014-07-22 Ca, Inc. Backup and recovery of systems by restoring a backup boot configuration data (BCD) with installation files from an operating system install disk
US8762699B1 (en) * 2009-12-05 2014-06-24 Cms Products Inc. System, apparatus, and method for initiating a reboot of a personal computer system by pressing a button on an attached storage device and causing the operating system on the attached storage device to be booted
US8918630B1 (en) * 2009-12-16 2014-12-23 Cms Products Inc System, apparatus, and method for initiating a reboot of a personal computer system by pressing a button on an attached storage device and causing the operating system on the attached storage device to be booted
JP5279041B2 (en) * 2010-09-15 2013-09-04 Necシステムテクノロジー株式会社 Information processing apparatus and control method thereof
JP2012256364A (en) * 2012-08-31 2012-12-27 Toshiba Corp Information processor and boot control method therefor
US9280359B2 (en) * 2012-12-11 2016-03-08 Cisco Technology, Inc. System and method for selecting a least cost path for performing a network boot in a data center network environment
US9213611B2 (en) * 2013-07-24 2015-12-15 Western Digital Technologies, Inc. Automatic raid mirroring when adding a second boot drive
US10223217B2 (en) * 2015-11-24 2019-03-05 Ricoh Company, Ltd. Information processing device, method for booting information processing device, and non-transitory recording medium
US20190138407A1 (en) * 2017-11-07 2019-05-09 Microsoft Technology Licensing, Llc Systems and methods of deploying an operating system from a resilient virtual drive
CN111124517B (en) * 2019-12-23 2023-01-20 湖南国科微电子股份有限公司 Embedded chip boot starting method and device, computer equipment and storage medium
CN114063913A (en) * 2021-11-03 2022-02-18 东风汽车集团股份有限公司 EMMC partition storage method and structure

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03229331A (en) 1990-02-02 1991-10-11 Fujitsu Ltd Information processor
JP3001470B2 (en) 1997-08-07 2000-01-24 米沢日本電気株式会社 Boot failure detection system for personal computer
GB2332541B (en) * 1997-12-20 2002-12-04 Ibm Boot failure recovery system and method
US6105130A (en) * 1997-12-23 2000-08-15 Adaptec, Inc. Method for selectively booting from a desired peripheral device
JP3512627B2 (en) 1998-03-13 2004-03-31 日本電気株式会社 Load Volume I / O Control and Management Method by Alternative Path and Duplication in IPL
JP2000081978A (en) 1998-09-04 2000-03-21 Nec Corp Disk device, disk duplicating method and record medium
JP3714119B2 (en) * 2000-06-13 2005-11-09 日本電気株式会社 User authentication type network OS boot method and system using BIOS preboot environment
US6754818B1 (en) * 2000-08-31 2004-06-22 Sun Microsystems, Inc. Method and system for bootstrapping from a different boot image when computer system is turned on or reset
JP2002259130A (en) 2001-03-02 2002-09-13 Toshiba Corp Information processing system and is start control method
US7234051B2 (en) * 2002-08-09 2007-06-19 Intel Corporation Method and apparatus for booting from a selection of multiple boot images

Also Published As

Publication number Publication date
US7434042B2 (en) 2008-10-07
US20040215952A1 (en) 2004-10-28
JP2004326409A (en) 2004-11-18

Similar Documents

Publication Publication Date Title
JP4349837B2 (en) Information processing system
JP5431111B2 (en) Information processing apparatus and system setting method
JP6198876B2 (en) Secure recovery apparatus and method
JP5211837B2 (en) Control method, computer system, and control program
US6205558B1 (en) Recovery of file systems after modification failure
KR100532413B1 (en) apparatus and method for protecting flash memory
JP4448878B2 (en) How to set up a disaster recovery environment
US20020053044A1 (en) Self-repairing operating system for computer entities
JP2001522088A (en) Computer Recovery System Using Removable Mass Media
JP2004038931A (en) Method for implementing backup and recovery of data in computer hard disk
US20060036832A1 (en) Virtual computer system and firmware updating method in virtual computer system
JP4677214B2 (en) Program, method and mechanism for collecting panic dump
JP6740789B2 (en) Storage control device and storage device management program
JPWO2006104197A1 (en) Processing device, program, and storage medium
JP5314731B2 (en) Method and computer system for synchronizing basic input / output program between data processing devices
JP2000148467A (en) Information processor, basic system program rewriting method of information processor, and recording medium recorded with basic system program rewriting program of information processor
JP2003099146A (en) System for controlling start of computer system
US20050262334A1 (en) Computer restoration apparatus
JP4963167B2 (en) System startup method and program
JP5949540B2 (en) Information processing apparatus and stored information analysis method
JP2002049509A (en) Data processing system
CN112817642A (en) Method and device for starting EFI operating system by X86 platform through automatic firmware switching
JP4165423B2 (en) System board with core I / O card
JP3967073B2 (en) RAID controller
JP2002049487A (en) Method for switching boot drive

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060223

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090324

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090522

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: 20090623

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090721

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120731

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4349837

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120731

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130731

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees