(57)【特許請求の範囲】
【請求項１】
複数のハードウェアコンポーネントを有するコンピュータに組み込まれ、当該コンピュータのブート処理及びリブート処理を制御する高速立ち上げ装置において、
前記複数のハードウェアコンポーネントにそれぞれ対応する複数の情報管理テーブルであって、対応するハードウェアコンポーネントの装置ブート時の初期化情報及び当該ハードウェアコンポーネントを切り離す際に再初期化に必要となるハードウェアコンポーネントを示す依存関係、並びにＢＩＯＳによるブート完了時の初期化情報を記憶する複数の情報管理テーブルと、
リブート処理の際に、前記複数のハードウェアコンポーネントのうち故障が生じているハードウェアコンポーネントを切り離すための再初期化と共に、ハードウェアコンポーネントの前記装置ブート時の初期化情報を書き戻すブート・リブート制御手段と、
を備え、
前記故障が生じているハードウェアコンポーネントを切り離す際に再初期化に必要とならないハードウェアコンポーネントについては再初期化を行わないことを特徴とする高速立ち上げ装置。
【請求項２】
請求項１に記載の高速立ち上げ装置において、
前記リブート処理の際に前記ハードウェアコンポーネントの何れも故障していない場合は、前記ＢＩＯＳによるブート完了時の初期化情報を書き戻すことによりハードウェアコンポーネントの初期化処理を省略することを特徴とする高速立ち上げ装置。
【請求項３】
請求項１又は２に記載の高速立ち上げ装置において、
前記装置がＯＳ(Operating System)配下で運用されている間に前記ハードウェアコンポーネントに故障が生じた場合に、当該故障の情報を記憶する故障情報記憶手段を更に備え、
前記リブート処理の際に前記故障情報記憶手段を参照することにより前記ハードウェアコンポーネントに故障が生じているか否かを判断することを特徴とする高速立ち上げ装置。
【請求項４】
請求項１乃至３の何れか１項に記載の高速立ち上げ装置において、
前記装置ブート時の初期化情報は、対応するハードウェアコンポーネントの装置ブート時での、初期化モジュールの先頭アドレス、メモリ上で対応する内部テーブル、及びＣＰＵ内における初期設定値を含み、
前記ＢＩＯＳによるブート完了時の初期化情報は、対応するハードウェアコンポーネントのＢＩＯＳブート完了時での、初期化モジュールの先頭アドレス、メモリ上で対応する内部テーブル、及びＣＰＵ内における初期設定値を含む、ことを特徴とする高速立ち上げ装置。
【請求項５】
請求項１乃至４の何れか１項に記載の高速立ち上げ装置において、
前記リブート処理の際に、前記複数のハードウェアコンポーネントのうち故障が生じているハードウェアコンポーネントが複数存在する場合は、当該複数のハードウェアコンポーネントを切り離すための再初期化と共に、ハードウェアコンポーネントの前記装置ブート時の初期化情報を書き戻す、ことを特徴とする高速立ち上げ装置。
【請求項６】
ＣＰＵ、メモリ、及び複数のハードウェアコンポーネントを含むハードウェアと、前記ハードウェアのブート処理及びリブート処理を制御するＢＩＯＳ(Basic Input Output System)と、前記ＢＩＯＳによる前記ハードウェアのブート処理又はリブート処理の後にブートされるＯＳ(Operating System)と、を備える情報処理装置において、
前記ＢＩＯＳが請求項１乃至５の何れか１項に記載の高速立ち上げ装置としての機能を有することを特徴とする情報処理装置。
【請求項７】
複数のハードウェアコンポーネントを有するコンピュータに組み込まれ、当該コンピュータのブート処理及びリブート処理を制御する高速立ち上げプログラムにおいて、
前記複数のハードウェアコンポーネントにそれぞれ対応する複数の情報管理テーブルであって、対応するハードウェアコンポーネントの装置ブート時の初期化情報及び当該ハードウェアコンポーネントを切り離す際に再初期化に必要となるハードウェアコンポーネントを示す依存関係、並びにＢＩＯＳによるブート完了時の初期化情報を記憶する複数の情報管理テーブルと、
リブート処理の際に、前記複数のハードウェアコンポーネントのうち故障が生じているハードウェアコンポーネントを切り離すための再初期化と共に、ハードウェアコンポーネントの前記装置ブート時の初期化情報を書き戻すブート・リブート制御手段と、
を備え、
前記故障が生じているハードウェアコンポーネントを切り離す際に再初期化に必要とならないハードウェアコンポーネントについては再初期化を行わない高速立ち上げ装置としてコンピュータを機能させることを特徴とする高速立ち上げプログラム。
【請求項８】
複数のハードウェアコンポーネントを有するコンピュータに組み込まれ、当該コンピュータのブート処理及びリブート処理を制御するＢＩＯＳ(Basic Input Output System)が行う高速立ち上げ方法において、
前記複数のハードウェアコンポーネントにそれぞれ対応する複数の情報管理テーブルであって、対応するハードウェアコンポーネントの装置ブート時の初期化情報及び当該ハードウェアコンポーネントを切り離す際に再初期化に必要となるハードウェアコンポーネントを示す依存関係、並びにＢＩＯＳによるブート完了時の初期化情報を記憶する複数の情報管理テーブルを用意するステップと、
リブート処理の際に、前記複数のハードウェアコンポーネントのうち故障が生じているハードウェアコンポーネントを切り離すための再初期化と共に、ハードウェアコンポーネントの前記装置ブート時の初期化情報を書き戻すブート・リブート制御ステップと、
を備え、
前記故障が生じているハードウェアコンポーネントを切り離す際に再初期化に必要とならないハードウェアコンポーネントについては再初期化を行わないことを特徴とする高速立ち上げ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ再起動処理の高速化に関する。
【背景技術】
【０００２】
コンピュータのリブート処理には、ハードウェア（ＨＷ：hardware）及びメモリの再初期化を行うコールドリブート（ハードリブートともいう）と、メモリ情報は保存し、ハードウェアのみを再初期化するウォームリブート（ソフトリブートともいう）がある。
【０００３】
このようなリブート処理を高速に行うために種々の技術が提案されている。
【０００４】
その一例として、特許文献１には、パーソナルコンピュータ装置等の待機モードを有する装置において、装置の非使用状態から使用状態に移行する際の初期化（ＰＯＳＴ）処理を省略することにより、非使用状態から使用状態への移行を迅速化し、待ち時間を短縮する技術が開示されている。
【０００５】
また、特許文献２には、ウォームリセット要求をＣＰＵのみ初期化するリセット要求に変換することで、プラットフォームに接続されたＩ／Ｏ装置のハードウェア初期化を最小限にし、高速でのリセット及びリスタートを実行する技術が記載されている。
【０００６】
更に、ＯＳ（Operating System）の高速リブートを実現する機能として、ＢＩＯＳ（Basic Input Output System）立ち上げが完了した状態から再度ＯＳブート処理のみを行う再立ち上げ方式がある。
【０００７】
このＯＳの高速リブート方式では、ハードウェアの初期化処理を行わず、ＢＩＯＳ立ち上げが完了した位置からＯＳのみを再度リブートすることで、システム停止時間の短縮を可能としている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】国際公開第２００２／０９５５５６号パンフレット
【特許文献２】特開２０１０−１２３１２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上述したような種々の技術を組みあわせることにより、再起動処理の高速化を図ることが可能となる。
【００１０】
しかしながらこれらの技術を組み合わせたとしても、ハードウェア故障発生時のリブートに際しては、以下のような問題が存在した。
【００１１】
具体的に説明する。ＢＩＯＳ立ち上げ完了位置からの再立ち上げはハードウェア，メモリの再初期化を伴わないため、高速のリブートが可能であるが、ＢＩＯＳ立ち上げ完了位置という特定の箇所からのリブートのみ可能である。従って、ハードウェア故障が発生した場合、該当コンポーネントの切り離し処理が必要となることからＢＩＯＳ立ち上げ完了位置からの再立ち上げ方式を動作させることは出来ず、コールドリブートを行わなくてはならない。コールドリブートはハードウェア及びメモリの初期化を行うため、該当コンポーネントを切り離すだけにも関わらず、システム復旧までに時間を要してしまう。
【００１２】
そこで、本発明は、ハードウェア故障が生じた場合であっても高速でリブートすることが可能な、ハードウェア構成縮退時の高速立ち上げ方法、高速立ち上げ装置及び高速立ち上げプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の第１の観点によれば、複数のハードウェアコンポーネントを有するコンピュータに組み込まれ、当該コンピュータのブート処理及びリブート処理を制御する高速立ち上げ装置において、前記複数のハードウェアコンポーネントにそれぞれ対応する複数の情報管理テーブルであって、対応するハードウェアコンポーネントの装置ブート時の初期化情報及び当該ハードウェアコンポーネントを切り離す際に再初期化に必要となるハードウェアコンポーネントを示す依存関係、並びにＢＩＯＳによるブート完了時の初期化情報を記憶する複数の情報管理テーブルと、リブート処理の際に、前記複数のハードウェアコンポーネントのうち故障が生じているハードウェアコンポーネントを切り離すための再初期化と共に、ハードウェアコンポーネントの前記装置ブート時の初期化情報を書き戻すブート・リブート制御手段と、を備え、前記故障が生じているハードウェアコンポーネントを切り離す際に再初期化に必要とならないハードウェアコンポーネントについては再初期化を行わないことを特徴とする高速立ち上げ装置が提供される。
【００１４】
本発明の第２の観点によれば、ＣＰＵ、メモリ、及び複数のハードウェアコンポーネントを含むハードウェアと、前記ハードウェアのブート処理及びリブート処理を制御するＢＩＯＳ(Basic Input Output System)と、前記ＢＩＯＳによる前記ハードウェアのブート処理又はリブート処理の後にブートされるＯＳ(Operating System)と、を備える情報処理装置において、前記ＢＩＯＳが上記本発明の第１の観点により提供される高速立ち上げ装置としての機能を有することを特徴とする情報処理装置が提供される。
【００１５】
本発明の第３の観点によれば、複数のハードウェアコンポーネントを有するコンピュータに組み込まれ、当該コンピュータのブート処理及びリブート処理を制御する高速立ち上げプログラムにおいて、前記複数のハードウェアコンポーネントにそれぞれ対応する複数の情報管理テーブルであって、対応するハードウェアコンポーネントの装置ブート時の初期化情報及び当該ハードウェアコンポーネントを切り離す際に再初期化に必要となるハードウェアコンポーネントを示す依存関係、並びにＢＩＯＳによるブート完了時の初期化情報を記憶する複数の情報管理テーブルと、リブート処理の際に、前記複数のハードウェアコンポーネントのうち故障が生じているハードウェアコンポーネントを切り離すための再初期化と共に、ハードウェアコンポーネントの前記装置ブート時の初期化情報を書き戻すブート・リブート制御手段と、を備え、前記故障が生じているハードウェアコンポーネントを切り離す際に再初期化に必要とならないハードウェアコンポーネントについては再初期化を行わない高速立ち上げ装置としてコンピュータを機能させることを特徴とする高速立ち上げプログラムが提供される。
【００１６】
本発明の第４の観点によれば、複数のハードウェアコンポーネントを有するコンピュータに組み込まれ、当該コンピュータのブート処理及びリブート処理を制御するＢＩＯＳ(Basic Input Output System)が行う高速立ち上げ方法において、前記複数のハードウェアコンポーネントにそれぞれ対応する複数の情報管理テーブルであって、対応するハードウェアコンポーネントの装置ブート時の初期化情報及び当該ハードウェアコンポーネントを切り離す際に再初期化に必要となるハードウェアコンポーネントを示す依存関係、並びにＢＩＯＳによるブート完了時の初期化情報を記憶する複数の情報管理テーブルを用意するステップと、リブート処理の際に、前記複数のハードウェアコンポーネントのうち故障が生じているハードウェアコンポーネントを切り離すための再初期化と共に、ハードウェアコンポーネントの前記装置ブート時の初期化情報を書き戻すブート・リブート制御ステップと、を備え、前記故障が生じているハードウェアコンポーネントを切り離す際に再初期化に必要とならないハードウェアコンポーネントについては再初期化を行わないことを特徴とする高速立ち上げ方法が提供される。
【発明の効果】
【００１７】
本発明によれば、ハードウェア故障が発生した場合、全てのハードウェアの再初期化を行うのではなく、該当コンポーネントを切り離すと共に、それによって再初期化が必要なコンポーネントのみを再初期化することから、ハードウェア故障が生じた場合であっても高速でリブートすることが可能となる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態における情報処理装置の基本的構成を表す図である。
【図２】本発明の実施形態におけるブート処理時の動作について説明するフローチャートである。
【図３】本発明の実施形態におけるハードウェア故障発生時の動作について説明するフローチャートである。
【図４】本発明の実施形態におけるリブート処理時の動作について説明するフローチャートである。
【発明を実施するための形態】
【００１９】
まず、本発明の実施形態の概略を説明する。
【００２０】
本発明の実施形態はＢＩＯＳがハードウェアの故障情報、各コンポーネントの初期化位置及びその位置からＢＩＯＳブートを行うための情報を記憶することで、リブートの際に故障コンポーネント切り離し処理、それに伴う初期化処理のみを行い、その他の健全なハードウェアコンポーネントの再初期化処理を実行せずに再立ち上げを行う。これにより、ハードウェア故障後のハードウェア縮退構成においても、従来技術より高速なリブートを可能とし、システム停止となる期間を短くすると共に、故障コンポーネント切り離し後の立ち上げを高速にする。
【００２１】
以上が本願発明の実施形態の概略である。
【００２２】
次に、本発明の実施形態について図面を用いて詳細に説明する。
【００２３】
図１は、本発明の一実施形態である情報処理装置１０００の概略構成を示すブロック図である。なお、情報処理装置１０００自体は具体的にどのような用途の装置であってもよい。例えば、情報処理装置１０００が汎用のパーソナルコンピュータやサーバであってもよく、携帯電話機等の端末であってもよく、その他何らかの機能を有する装置であってもよい。任意の装置により本実施形態を実現することが可能である。
【００２４】
また、情報処理装置１０００は、ＯＳ（operating system）１００、ＢＩＯＳ（basic input output system）２００及びハードウェア（ＨＷ）３００を含む。
【００２５】
ＯＳ１００は、情報処理装置１０００のシステム全体を管理する。ここで、ＯＳ１００は本実施形態特有のものに限定されない、例えば、Ｗｉｎｄｏｗｓ（登録商標）や、Ｌｉｎｕｘ（登録商標）といったＯＳを用いることが可能である。
【００２６】
ＢＩＯＳ２００は、情報処理装置１０００に、組み込まれた又は接続された周辺機器を制御するための機能を提供する。
【００２７】
ここで、ＢＩＯＳ２００は、ブート・リブート制御部２０１、故障情報記憶部２０２及び複数の初期化情報管理テーブル２０３を含む。
【００２８】
ブート・リブート制御部２０１は、情報処理装置１０００におけるブート及びリブートを制御する機能を有する。
【００２９】
また、故障情報記憶部２０２は、故障した又は故障の疑いがあるハードウェアコンポーネント３０３を記憶する機能を有する。
【００３０】
初期化情報管理テーブル２０３は、複数のハードウェアコンポーネント３０３のそれぞれに対応するように複数設けられている。なお、下述するが本実施形態においてハードウェアコンポーネント３０３の数に制限はなく、任意の個数が存在していてよい。従って初期化情報管理テーブル２０３も任意の個数設けられることとなる。なお、図１においては、初期化情報管理テーブル２０３−１、初期化情報管理テーブル２０３−２及び初期化情報管理テーブル２０３−ｎを図示する。ここで、ｎは任意の自然数を意味する。
【００３１】
そして、初期化情報管理テーブル２０３は、それぞれ対応するハードウェアコンポーネント３０３に関しての「初期化情報」を記憶する。
【００３２】
具体的には初期化情報管理テーブル２０３が記憶する初期化情報は、下記の三種類の情報を含む。
【００３３】
すなわち、
１）メモリに関する情報として、対応するハードウェアコンポーネント３０３を初期化するための初期化モジュールの先頭アドレス、当該初期化モジュールの先頭アドレスに対応するメモリ３０２上の内部テーブル
２）ＣＰＵに関する情報として、ＣＰＵ３０１内部のコンテキスト／レジスタ／スタック、初期設定値
３）関連情報として、ハードウェアコンポーネント切り離し時に再初期化が必要となるハードウェアコンポーネント間の依存関係
の３つの情報を記憶する。
【００３４】
なお、これらの情報はあくまで一例に過ぎず、これらの情報以外の情報が更に追加されていてもよく、また、これらの情報に代替する他の情報が含まれるようにしてもよい。
【００３５】
また、情報処理装置１０００は、ハードウェア３００として、ＣＰＵ３０１、メモリ３０２、及びその他のハードウェアコンポーネント３０３を含む。
【００３６】
ＣＰＵ３０１は演算処理装置であり、情報処理装置１０００全体の動作を制御する機能を有する。
【００３７】
メモリ３０２は、ＣＰＵ３０１の動作に必要なプログラムを記憶する。更に、メモリ３０２は、ＣＰＵ３０１の作業領域となる。具体的にはメモリ３０２は、主記憶装置となるＲＡＭ（Random Access Memory）と、ＯＳ１００等を格納する補助記憶装置であるＨＤＤ（Hard disk drive）やＦｌａｓｈ  ＳＳＤ（Solid State Drive）と、ＢＩＯＳ２００を記憶するフラッシュメモリ等により実現される。すなわち、メモリ３０２は、単一の記憶装置により実現されてもよいが、複数の記憶装置の組合せにより実現されてもよい。
【００３８】
そして、ＣＰＵ３０１及びメモリ３０２が協働することにより、各ハードウェアコンポーネント３０３の動作を制御する機能を有し、更に、ＢＩＯＳ２００及びＯＳ１００を実現する。すなわち本実施形態はハードウェアとソフトウェアが協働することにより実現される。
【００３９】
ハードウェアコンポーネント３０３は、情報処理装置１０００において用いられる種々のハードウェアを含み得る。また、上述したようにハードウェアコンポーネント３０３は任意の個数が存在していてよい。
【００４０】
また、図１においては説明の便宜上ＣＰＵ３０１及びメモリ３０２をそれぞれ別途図示している。もっとも、ＣＰＵ３０１及びメモリ３０２もハードウェアコンポーネント３０３のうちの一つでもある。すなわち、ＣＰＵ３０１及びメモリ３０２はハードウェアコンポーネント３０３を兼ねているものとする。
【００４１】
続いて、図２、３及び図４のフローチャートを参照して本発明の実施形態の動作について詳細に説明する。
【００４２】
まず、図２のフローチャートを参照して情報処理装置１０００のブート（立ち上げ）動作について説明する。図２に示すように、情報処理装置１０００のブートは、大きく分けるとＢＩＯＳ２００の初期化（ステップＳ１１〜ステップＳ１４）と、ＯＳ１００の初期化（ステップＳ１５）の２つの処理段階を含む。
【００４３】
まず、ＢＩＯＳ２００のブート・リブート制御部２０１は、ハードウェアコンポーネント３０３−１〜３０１−ｎそれぞれについて、各ハードウェアコンポーネントの初期化モジュールによる初期化処理を実行させる。この初期化処理においてブート・リブート制御部２０１は、各ハードウェアコンポーネント３０３に対応する初期化情報管理テーブル２０３に情報を格納する（ステップＳ１１）。ステップＳ１１において格納する初期化情報は上述したように、各ハードウェアコンポーネント３０３の初期化モジュールの先頭アドレス及び、その場所でのメモリ３０２上の内部テーブル、ＣＰＵ３０１内部のコンテキスト／レジスタ／スタック、初期設定値、該当コンポーネント３０３の切り離した際に再初期化が必要になるハードウェアの依存関係である。
【００４４】
続いて、ブート・リブート制御部２０１は、全てのハードウェアコンポーネント３０３に対応する初期化情報管理テーブル２０３に情報を記憶できたか確認する（ステップＳ１２）。全ての初期化情報管理テーブル２０３に情報を記憶できていない場合は（ステップＳ１２においてＮｏ）、ステップＳ１１の動作を継続する。一方、全ての初期化情報管理テーブル２０３に情報を記憶できている場合は（ステップＳ１２においてＹｅｓ）、ＢＩＯＳブートが完了する（ステップＳ１３）。
【００４５】
続いて、ブート・リブート制御部２０１は、ステップＳ１１及び１２と同様にＢＩＯＳブート完了位置でのメモリ３０２、ＣＰＵ３０１のデータを初期化情報管理テーブル２０３に記憶する（ステップＳ１４）。
【００４６】
その後、ＯＳのブート処理が開始される（ステップＳ１５）。
【００４７】
次に、図３のフローチャートを参照してＯＳ１００運用中の動作について説明する。
【００４８】
ＯＳ１００の運用中に何れかのハードウェアコンポーネント３０３が故障した場合、ＢＩＯＳ２００は当該ハードウェアコンポーネント３０３の故障を故障情報記憶部２０２に記憶する（ステップＳ２１）。
【００４９】
なお、図３の処理では、実際に故障が生じたハードウェアコンポーネントに限らず、故障の発生が疑われるハードウェアコンポーネントの情報が記憶されてもよい。
【００５０】
続いて、図４のフローチャートを参照して情報処理装置１０００のリブート動作について説明する。
【００５１】
図４に示すように、このリブート動作は、ＯＳのシャットダウン（リブート指示の結果行われる）、ＢＩＯＳのシャットダウン（ＯＳのシャットダウンに続いて行われ、ハードウェア故障の有無の判断処理を含む）、ＢＩＯＳの初期化（ステップＳ３２、ステップＳ３４、ステップＳ３５）、及びＯＳの初期化（ステップＳ３７）の4つの処理段階を含む。
【００５２】
ＯＳ１００からのリブート（立ち下げ）指示が出た場合、ＢＩＯＳ２００は運用中に故障情報記憶部２０２に記憶しておいたハードウェアコンポーネント３０３の故障情報を確認する（ステップＳ３１）。
【００５３】
ハードウェア故障が発生していない場合（ステップＳ３１にてＮｏ）、ＢＩＯＳ２００の立ち上げ完了位置で記憶した（ステップＳ１４にて）メモリ３０２上の内部テーブル、ＣＰＵ３０１内部のコンテキスト／レジスタ／スタック及び、初期設定値を書き戻す（ステップＳ３２）。これにより、不要なハードウェアの初期化処理をスキップし、ＯＳ１００立ち上げが可能な状態し、再度ＯＳ１００立ち上げを行う（ステップＳ３６及びステップＳ３７）。
【００５４】
一方、ＯＳ１００運用中にハードウェア故障が発生していた場合（ステップＳ３１にてＹｅｓ）、発生したハードウェア故障で切り離し対象となるハードウェアコンポーネント３０３と、ブート時に（ステップＳ１１及びＡ１２にて）記憶していた各ハードウェアコンポーネント３０３の初期化情報管理テーブル２０３に含まれる初期化情報と、を照らし合わせる。そして、故障したハードウェアコンポーネント３０３の切り離しを行うための初期化位置から再度ＢＩＯＳ２００立ち上げを実施する（ステップＳ３５−１〜３５−ｎ）。
【００５５】
このとき、ＢＩＯＳ２００はハードウェア故障したハードウェアコンポーネント３０３を切り離すと同時に、ステップＳ１１及びＡ１２にて記憶したメモリ３０２上の内部テーブル、ＣＰＵ３０１内部のコンテキスト／レジスタ／スタック、初期設定値を書き戻し、再初期化が必要なハードウェアコンポーネント３０３を初期化する（ステップＳ３４−１〜３４−ｎ）。これにより故障したハードウェアコンポーネント３０３を縮退させた構成でのＯＳ１００立ち上げを行う。
【００５６】
以上説明した本発明の実施形態の効果は、システム復旧時間の短縮を可能とすることにある。
【００５７】
その理由は、ハードウェア故障が発生した場合、全てのハードウェアの再初期化を行うのではなく、該当コンポーネントを切り離すと共に、それによって再初期化が必要なコンポーネントのみを再初期化することで、不要な初期化処理を行わないからである。
【００５８】
上述した実施形態においては、故障情報記憶部２０２が、故障した又は故障の疑いがあるハードウェアコンポーネント３０３を一つだけ記憶している場合を想定していた。もっとも、ステップＳ３２において複数のハードウェアコンポーネント３０３が故障しているような場合もあり得る。
【００５９】
このような場合には、当該複数のハードウェアコンポーネント３０３を切り離すための再初期化と共に、これら複数のハードウェアコンポーネント３０３と依存関係にあるハードウェアコンポーネント３０３を初期化することにより高速立ち上げを実現することが可能となる。
【００６０】
なお、上記実施形態では、本実施形態を実現するためのプログラムが、情報処理装置に予め記憶されているものとして説明した。しかし、コンピュータを情報処理装置の全部又は一部として動作させ、あるいは、上述の処理を実行させるためのプログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）、ＤＶＤ（Digital Versatile Disc）、ＭＯ（Magneto Optical Disk(Disc)）ＢＤ（Blu-ray Disc）等のコンピュータ読み取り可能な記録媒体に格納して配布し、これを別のコンピュータにインストールし、上述の手段として動作させ、あるいは、上述の工程を実行させてもよい。
【００６１】
さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを格納しておき、例えば、搬送波にプログラムを重畳させて、コンピュータにダウンロード等してプログラムを実行してもよい。
【００６２】
なお、本発明の実施形態である情報処理装置は、ハードウェアにより実現することもできるが、コンピュータをその情報処理装置として機能させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。
【００６３】
また、本発明の実施形態による高速立ち上げ方法は、ハードウェアにより実現することもできるが、コンピュータにその方法を実行させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。
【００６４】
また、上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
【００６５】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００６６】
（付記１）  複数のハードウェアコンポーネントを有するコンピュータに組み込まれ、当該コンピュータのブート処理及びリブート処理を制御する高速立ち上げ装置において、
前記複数のハードウェアコンポーネントにそれぞれ対応する複数の情報管理テーブルであって、対応するハードウェアコンポーネントの装置ブート時の初期化情報及び当該ハードウェアコンポーネントを切り離す際に再初期化に必要となるハードウェアコンポーネントを示す依存関係、並びにＢＩＯＳによるブート完了時の初期化情報を記憶する複数の情報管理テーブルと、
リブート処理の際に、前記複数のハードウェアコンポーネントのうち故障が生じているハードウェアコンポーネントを切り離すための再初期化と共に、ハードウェアコンポーネントの装置立ち上げ時の初期化情報を書き戻すブート・リブート制御手段と、
を備え、
前記故障が生じているハードウェアコンポーネントを切り離す際に再初期化に必要とならないハードウェアコンポーネントについては再初期化を行わないことを特徴とする高速立ち上げ装置。
【００６７】
（付記２）  付記１に記載の高速立ち上げ装置において、
前記リブート処理の際に前記ハードウェアコンポーネントの何れも故障していない場合は、前記ＢＩＯＳによるブート完了時の初期化情報を書き戻すことによりハードウェアコンポーネントの初期化処理を省略することを特徴とする高速立ち上げ装置。
【００６８】
（付記３）  付記１又は２に記載の高速立ち上げ装置において、
前記装置がＯＳ(Operating System)配下で運用されている間に前記ハードウェアコンポーネントに故障が生じた場合に、当該故障の情報を記憶する故障情報記憶手段を更に備え、
前記リブート処理の際に前記故障情報記憶手段を参照することにより前記ハードウェアコンポーネントに故障が生じているか否かを判断することを特徴とする高速立ち上げ装置。
【００６９】
（付記４）  付記１乃至３の何れか１に記載の高速立ち上げ装置において、
前記装置立ち上げ時の初期化位置情報は、対応するハードウェアコンポーネントの装置立ち上げ時での、初期化モジュールの先頭アドレス、メモリ上で対応する内部テーブル、及びＣＰＵ内における初期設定値を含み、
前記ＢＩＯＳブート完了時の初期化情報は、対応するハードウェアコンポーネントのＢＩＯＳブート完了時での、初期化モジュールの先頭アドレス、メモリ上で対応する内部テーブル、及びＣＰＵ内における初期設定値を含む、ことを特徴とする高速立ち上げ装置。
【００７０】
（付記５）  付記１乃至４の何れか１に記載の高速立ち上げ装置において、
前記リブート処理の際に、前記複数のハードウェアコンポーネントのうち故障が生じているハードウェアコンポーネントが複数存在する場合は、当該複数のハードウェアコンポーネントを切り離すための再初期化と共に、ハードウェアコンポーネントの装置立ち上げ時の初期化情報を書き戻す、ことを特徴とする高速立ち上げ装置。
【００７１】
（付記６）  ＣＰＵ、メモリ、及び複数のハードウェアコンポーネントを含むハードウェアと、前記ハードウェアのブート処理及びリブート処理を制御するＢＩＯＳ(Basic Input Output System)と、前記ＢＩＯＳによる前記ハードウェアのブート処理又はリブート処理の後にブートされるＯＳ(Operating System)と、を備える情報処理装置において、
前記ＢＩＯＳが付記１乃至５の何れか１に記載の高速立ち上げ装置としての機能を有することを特徴とする情報処理装置。
【００７２】
（付記７）  複数のハードウェアコンポーネントを有するコンピュータに組み込まれ、当該コンピュータのブート処理及びリブート処理を制御する高速立ち上げプログラムにおいて、
前記複数のハードウェアコンポーネントにそれぞれ対応する複数の情報管理テーブルであって、対応するハードウェアコンポーネントの装置ブート時の初期化情報及び当該ハードウェアコンポーネントを切り離す際に再初期化に必要となるハードウェアコンポーネントを示す依存関係、並びにＢＩＯＳによるブート完了時の初期化情報を記憶する複数の情報管理テーブルと、
リブート処理の際に、前記複数のハードウェアコンポーネントのうち故障が生じているハードウェアコンポーネントを切り離すための再初期化と共に、ハードウェアコンポーネントの装置立ち上げ時の初期化情報を書き戻すブート・リブート制御手段と、
を備え、
前記故障が生じているハードウェアコンポーネントを切り離す際に再初期化に必要とならないハードウェアコンポーネントについては再初期化を行わない高速立ち上げ装置としてコンピュータを機能させることを特徴とする高速立ち上げプログラム。
【００７３】
（付記８）  複数のハードウェアコンポーネントを有するコンピュータに組み込まれ、当該コンピュータのブート処理及びリブート処理を制御するＢＩＯＳ(Basic Input Output System)が行う高速立ち上げ方法において、
前記複数のハードウェアコンポーネントにそれぞれ対応する複数の情報管理テーブルであって、対応するハードウェアコンポーネントの装置ブート時の初期化情報及び当該ハードウェアコンポーネントを切り離す際に再初期化に必要となるハードウェアコンポーネントを示す依存関係、並びにＢＩＯＳによるブート完了時の初期化情報を記憶する複数の情報管理テーブルを用意するステップと、
リブート処理の際に、前記複数のハードウェアコンポーネントのうち故障が生じているハードウェアコンポーネントを切り離すための再初期化と共に、ハードウェアコンポーネントの装置立ち上げ時の初期化情報を書き戻すブート・リブート制御ステップと、
を備え、
前記故障が生じているハードウェアコンポーネントを切り離す際に再初期化に必要とならないハードウェアコンポーネントについては再初期化を行わないことを特徴とする高速立ち上げ方法。
【産業上の利用可能性】
【００７４】
本発明は、ハードウェア故障発生時に該当コンポーネントの切り離し技術を搭載した装置全般に好適である。
【符号の説明】
【００７５】
１００  ＯＳ
２００  ＢＩＯＳ
２０１  ブート・リブート制御部
２０２  故障情報記憶部
２０３  初期化情報管理テーブル
３００  ハードウェア
３０１  ＣＰＵ
３０２  メモリ
３０３  ハードウェアコンポーネント
１０００  情報処理装置
【図１】
0005712689.tif 000002
【図２】
0005712689.tif 000003
【図３】
0005712689.tif 000004
【図４】
0005712689.tif 000005