(57)【要約】【課題】ユーザの特別の操作を必要とすることなく電源オン時の初期化処理に要する時間を短縮する。【解決手段】非ブートデバイス初期化モジュール１２２は、コンピュータの電源オンに応答してオペレーティングシステムの起動に必要な複数の非ブートデバイスを初期化する。ブートデバイス判定モジュール１２３は、非ブートデバイス初期化モジュール１２２による初期化後に、複数のブートデバイスの中からオペレーティングシステムの起動が可能な１つのブートデバイスを見つける。ブートデバイス判定モジュール１２３は、この起動が可能な１つのブートデバイスが見つかるまで、上記複数のブートデバイスを１つずつ逐次初期化する。【選択図】      図３
2007122653.tif 000002
【特許請求の範囲】
【請求項１】
複数のブートデバイスと、オペレーティングシステムの起動に必要な複数の非ブートデバイスとを有する本体と、
前記本体の電源オンに応答して前記複数の非ブートデバイスを初期化する非ブートデバイス初期化手段と、
前記非ブートデバイス初期化手段による初期化後に、前記複数のブートデバイスの中からオペレーティングシステムの起動が可能な１つのブートデバイスを見つけるブートデバイス判定手段であって、当該起動が可能な１つのブートデバイスが見つかるまで、前記複数のブートデバイスを１つずつ逐次初期化するブートデバイス判定手段と、
前記ブートデバイス判定手段によって見つけられたブートデバイスからオペレーティングシステムを起動する起動手段と
を具備することを特徴とする情報処理装置。
【請求項２】
前記複数のブートデバイスの優先順位を表すブート優先順位情報を格納するブート優先順位格納手段を更に具備し、
前記ブートデバイス判定手段は、前記ブート優先順位情報の示す優先順位に従って前記複数のブートデバイスを１つずつ逐次初期化する
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記ブートデバイス判定手段は、
前記非ブートデバイス初期化手段による初期化後に、前記複数のブートデバイスの中から初期化すべきブートデバイスを前記ブート優先順位情報の示す優先順位に従って選択するブートデバイス選択手段と、
前記ブートデバイス選択手段によって選択されたブートデバイスを初期化するブートデバイス初期化手段と、
前記ブートデバイス初期化手段によって初期化されたブートデバイスによってオペレーティングシステムを起動することが可能であるかを判定することによって前記起動が可能なブートデバイスを見つける起動可判定手段であって、起動が可能でない場合に前記ブートデバイス選択手段による次のブートデバイスの選択を要求する起動可判定手段と
を含むことを特徴とする請求項２記載の情報処理装置。
【請求項４】
前記本体に設けられた第１のスイッチと、
前記本体に設けられた第２のスイッチと、
前記第１のスイッチ及び前記第２のスイッチのいずれか一方の操作に応答して、前記本体を電源オンする電源制御手段とを更に具備し、
前記複数のブートデバイスは、汎用のオペレーティングシステムに比較して機能が限定された特定の処理専用の特定オペレーティングシステムを格納した特定のブートデバイスを含み、
前記ブートデバイス判定手段は、前記本体の電源オンの要因が前記第１のスイッチの操作及び前記第２のスイッチの操作のいずれであるかを判別する要因判別手段を更に含み、
前記ブートデバイス初期化手段は、前記電源オンの要因が前記第１のスイッチの操作である場合、前記ブートデバイス選択手段によって１つのブートデバイスが選択される毎に、当該選択されたブートデバイスを初期化し、前記電源オンの要因が前記第２のスイッチの操作である場合、前記特定のブートデバイスのみを初期化する
ことを特徴とする請求項３記載の情報処理装置。
【請求項５】
前記特定オペレーティングシステムは、ＴＶ放送番組データを処理するための機能を有することを特徴とする請求項４記載の情報処理装置。
【請求項６】
複数のブートデバイスと、オペレーティングシステムの起動に必要な複数の非ブートデバイスとを有する情報処理装置を起動する起動制御方法において、
前記情報処理装置の電源オンに応答して前記複数の非ブートデバイスを初期化するステップと、
前記複数の非ブートデバイスの初期化後に、前記複数のブートデバイスの中から初期化すべきブートデバイスを選択するステップと、
前記選択されたブートデバイスを初期化するステップと、
前記初期化されたブートデバイスによってオペレーティングシステムを起動することが可能であるかを判定するステップであって、起動することが可能でないと判定された場合に、前記選択するステップにより次に初期化すべきブートデバイスを選択させるステップと、
起動することが可能であると判定されたブートデバイスからオペレーティングシステムを起動することによって前記情報処理装置を起動するステップと
を具備することを特徴とする起動制御方法。
【請求項７】
前記選択するステップにおいて、前記情報処理装置に設けられたブート優先順位格納手段に格納された前記複数のブートデバイスの優先順位を表すブート優先順位情報に従って前記初期化すべきブートデバイスが選択されることを特徴とする請求項６記載の起動制御方法。
【請求項８】
前記情報処理装置に設けられた第１のスイッチ及び前記第２のスイッチのいずれか一方の操作に応答して前記情報処理装置を電源オンするステップと、
前記複数の非ブートデバイスの初期化後に、前記電源オンの要因が前記第１のスイッチの操作及び前記第２のスイッチの操作のいずれであるかを判別するステップと、
前記電源オンの要因が前記第２のスイッチの操作である場合、前記複数のブートデバイスのうち、汎用のオペレーティングシステムに比較して機能が限定された特定の処理専用の特定オペレーティングシステムを格納した特定のブートデバイスのみを前記ブート優先順位情報の示す優先順位に無関係に初期化するステップとを更に具備し、
前記電源オンの要因が前記第１のスイッチの操作である場合、前記選択するステップにおいて、前記ブート優先順位情報に従って前記初期化すべきブートデバイスが選択される
ことを特徴とする請求項７記載の起動制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パーソナルコンピュータのような情報処理装置に係り、特にオペレーティングシステムを起動するのに必要な初期化処理の高速化に好適な情報処理装置及び起動制御方法に関する。
【背景技術】
【０００２】
パーソナルコンピュータのような情報処理装置の電源オン時には、当該情報処理装置を起動するためのＰＯＳＴ（Power On Self Test）処理と呼ばれる起動処理がＢＩＯＳ(Basic Input Output System)によって実行されるのが一般的である。この起動処理の初めでは、オペレーティングシステムのブート（起動）に先立って初期化処理が行われる。
【０００３】
この種の情報処理装置には様々な機能が要求される。例えば、ハードディスクドライブ（ＨＤＤ）以外のハードディスクドライブ、光ディスクドライブ、ＬＡＮコントローラなどのブート可能デバイス（ブートデバイス）から情報処理装置を起動（ブートアップ）することが要求される。
【０００４】
このため、通常、情報処理装置の電源オン時に実行される初期化処理では、各種バス、チップセット、メモリ、キーボードコントローラ（ＫＢＣ）、グラフィックスコントローラ等の、オペレーティングシステムの起動に必要な非ブートデバイスの初期化に加えて、全てのブートデバイスの初期化が行われる。また、この初期化処理では、各ブートデバイスへのリソースの割り当て及び割り込みの設定等が行われる。そして全てのブートデバイスの初期化が完了すると、ユーザによって任意に設定可能なブート優先順位に従ってオペレーティングシステムを起動可能なブートデバイスが判定される。
【０００５】
このような初期化処理により、ハードディスクドライブだけでなく、光ディスクドライブ、或いはＬＡＮコントローラ（ＬＡＮコントローラとネットワークを介して接続された例えばサーバ）などのブートデバイスからオペレーティングシステムをブートして情報処理装置を起動することができる。
【０００６】
一方、例えば特許文献１には、システム立ち上げ中にキーボード上の複数の特定キーの１つの押下が検出された場合に、その押下が検出された特定キーに予め対応付けられたセットアップ設定パターンを設定することが記載されている。この特許文献１に記載の技術においては、セットアップ設定パターンの設定により、ＢＩＯＳセットアップメニューを起動するための初期化処理を最小限にして、当該セットアップメニューを素早く起動することができる。以上の初期化処理は複数のオペレーティングシステムが搭載されたマルチオペレーティングシステム対応の情報処理装置においても同様に実行される。
【特許文献１】特開２０００−２９８５７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記したように、パーソナルコンピュータのような従来の情報処理装置では、ＢＩＯＳによる起動処理の最初に実行される初期化処理で、全てのブートデバイスの初期化と当該ブートデバイスへのリソースの割り当て等の設定処理とが漏れなく行われている。そして、これらの処理が全て行われた後に、つまりオペレーティングシステムの起動（ブート）のための全ての準備が完了した後に、当該オペレーティングシステムが起動される。このため従来は、ＢＩＯＳによる起動処理に長時間を要し、オペレーティングシステム（情報処理装置）を高速で起動できないという問題がある。また従来のマルチオペレーティングシステム（マルチＯＳ）対応の情報処理装置では、オペレーティングシステムによっては使用されることのないブートデバイスも初期化される。ところが、使用されることのないブートデバイスが初期化されると、消費電力の増加を招くなどの問題が起きる可能性がある。
【０００８】
一方、上記特許文献１には、ＢＩＯＳセットアップメニューを起動するための初期化処理を最小限にする技術が記載されている。しかし、特許文献１に記載の技術では、オペレーティングシステムの起動に必要な初期化を最小限にすることは考慮されていない。また、特許文献１に記載の技術では、必要な初期化処理を指定するためのセットアップ設定パターンは、キーボード上の複数の特定キーの１つが押下されることにより指定される。このためユーザは、複数の特定キーの各々とセットアップ設定パターンとの関係を認識する必要がある。
【０００９】
本発明は上記事情を考慮してなされたものでその目的は、ユーザの特別の操作を必要とすることなく電源オン時の初期化処理に要する時間を短縮してオペレーティングシステムを高速で起動できる情報処理装置及び起動制御方法を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の１つの観点に係る情報処理装置は、複数のブートデバイスと、オペレーティングシステムの起動に必要な複数の非ブートデバイスとを有する本体と、前記本体の電源オンに応答して前記複数の非ブートデバイスを初期化する非ブートデバイス初期化手段と、前記非ブートデバイス初期化手段による初期化後に、前記複数のブートデバイスの中からオペレーティングシステムの起動が可能な１つのブートデバイスを見つけるブートデバイス判定手段であって、当該起動が可能な１つのブートデバイスが見つかるまで、前記複数のブートデバイスを１つずつ逐次初期化するブートデバイス判定手段と、前記ブートデバイス判定手段によって見つけられたブートデバイスからオペレーティングシステムを起動する起動手段とを具備する。
【発明の効果】
【００１１】
本発明によれば、オペレーティングシステムの起動に必要な最小限のブートデバイスのみを初期化するだけで良いため、ユーザの特別の操作を必要とすることなく電源オン時の初期化処理に要する時間を短縮してオペレーティングシステムを高速で起動することができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態につき図面を参照して説明する。  
まず図１及び図２を参照して、本発明の一実施形態に係る情報処理装置の構成について説明する。この情報処理装置はバッテリ駆動可能な携帯型の情報処理装置であり、ノートブック型パーソナルコンピュータ１０として実現されている。
【００１３】
図１はノートブック型パーソナルコンピュータ１０のディスプレイユニットを開いた状態における斜視図である。このコンピュータ１０は、コンピュータ本体１１と、ディスプレイユニット１２とから構成されている。ディスプレイユニット１２には、ＬＣＤ（Liquid Crystal Display）１７から構成される表示装置が組み込まれており、そのＬＣＤ１７の表示画面はディスプレイユニット１２のほぼ中央に位置されている。
【００１４】
ディスプレイユニット１２は、コンピュータ本体１１に対して開放位置と閉塞位置との間を回動自在に取り付けられている。コンピュータ本体１１は薄い箱形の筐体を有しいる。コンピュータ本体１１の上面には、キーボード１３、コンピュータ１１を電源オン／オフするためのパワーボタンスイッチ（第１のスイッチ）１４、入力操作パネル１５及びタッチパッド１６などが配置されている。
【００１５】
入力操作パネル１５は、押されたボタンスイッチに対応するイベントを入力する入力装置であり、複数の機能をそれぞれ起動するための複数のボタンスイッチを備えている。これらボタンスイッチ群には、テレビジョン（ＴＶ）起動ボタンスイッチ（第２のスイッチ）１５Ａが含まれている。
【００１６】
ＴＶ起動ボタンスイッチ１５Ａは、ＴＶ放送番組データの再生など、コンピュータ１０におけるＡＶ機能を実行するためのスイッチである。ＴＶ起動ボタンスイッチ１５Ａがユーザによって操作されるとコンピュータ本体１１の電源がオンされる。この場合、後述する副オペレーティングシステム（副ＯＳ）１３２（図２参照）が起動される。この副ＯＳ１３２の起動に応じてＴＶアプリケーション（ＴＶアプリケーションプログラム）が自動的に起動される。これにより、ＡＶ機能が実行される。
【００１７】
コンピュータ本体１１の例えば右側面には、ＴＶアンテナコネクタ１８が設けられている。ＴＶアンテナコネクタ１８には、ＴＶアンテナケーブルが接続される。
【００１８】
図２はパーソナルコンピュータ１０のシステム構成を示すブロック図である。コンピュータ１０は、ＣＰＵ１１１、ノースブリッジ１１２、主メモリ１１３、グラフィクスコントローラ１１４、サウスブリッジ１１５及びＬＣＤ１７を有する。コンピュータ１０はまた、ＢＩＯＳ−ＲＯＭ１２０、ハードディスクドライブ（ＨＤＤ）１３０、ＬＡＮコントローラ１４１、カードコントローラ１４２、ＴＶチューナ（ＴＶチューナ・キャプチャユニット）１４３、ＵＳＢポート１５１，１５２、セレクタブルベイデバイス１６０、エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１７０及び電源回路１８０を有する。
【００１９】
ＣＰＵ１１１は、コンピュータ１０の動作を制御するプロセッサである。このＣＰＵ１１１は、ブートデバイスから主メモリ１１３にロードされるオペレーティングシステム（ＯＳ）を実行する。またＣＰＵ１１１は、各種アプリケーションプログラムを実行する。またＣＰＵ１１１は、ＢＩＯＳ−ＲＯＭ１２０に格納されたシステムＢＩＯＳ（Basic Input Output System）１２１（図３参照）も実行する。システムＢＩＯＳ１２１はハードウェア制御のためのプログラムである。このため、システムＢＩＯＳ１２１をＣＰＵ１１が実行することによりハードウェア制御が実現される。しかし、以下の説明では、煩雑さを避けるために、システムＢＩＯＳ１２１がハードウェア制御を行うものとする。
【００２０】
ノースブリッジ１１２は、ＣＰＵ１１１のローカルバスとサウスブリッジ１１５との間を接続するブリッジデバイスである。ノースブリッジ１１２には、主メモリ１１３をアクセス制御するメモリコントローラも内蔵されている。また、ノースブリッジ１１２は、ＡＧＰ（Accelerated Graphics Port）バスなどを介してグラフィクスコントローラ１１４との通信を実行する機能も有している。
【００２１】
グラフィクスコントローラ１１４は、コンピュータ１０のディスプレイモニタとして使用されるＬＣＤ１７を制御する表示コントローラである。このグラフィクスコントローラ１１４はビデオメモリ（ＶＲＡＭ）１１４ａを有しており、当該ＶＲＡＭ１１４ａに書き込まれた表示データから、ＬＣＤ１７に表示すべき表示イメージを形成する映像信号を生成する。
【００２２】
サウスブリッジ１１５は、ＢＩＯＳ−ＲＯＭ１２０をアクセス制御する機能を有する。またサウスブリッジ１１５は、ＨＤＤ１３０及びセレクタブルベイデバイス１６０などを制御するためのＩＤＥ（Integrated Drive Electronics）コントローラを内蔵している。またサウスブリッジ１１５は、ＰＣＩ（Peripheral Component Interconnect）バス２及びＬＰＣ（Low Pin Count）バス３にそれぞれ接続され、当該ＰＣＩバス２及びＬＰＣバス３上の各デバイスを制御する機能を有する。またサウスブリッジ１１５は、ＵＳＢコントローラ１５０を内蔵している。
【００２３】
ＵＳＢコントローラ１５０は、ＵＳＢポート１５１及び１５２にそれぞれ接続されたＵＳＢデバイスを制御する。ＵＳＢデバイスとして、ＵＳＢメモリ或いはフレキシブルディスクドライブ（ＦＤＤ）等を用いることができる。また、ＵＳＢメモリ或いはＦＤＤ等のＵＳＢデバイスにＯＳを格納し、このＵＳＢデバイスからＵＳＢコントローラ１５０を介して当該ＯＳを主メモリ１１３にロードしてコンピュータ１０を起動することもできる。このためＵＳＢコントローラ１５０は、ブートデバイスとして扱われる。なお、図２では、ＵＳＢポート１５１及び１５２以外のＵＳＢポートは省略されている。
【００２４】
ＢＩＯＳ−ＲＯＭ１２０はフラッシュＲＯＭのような書き換え可能な不揮発性メモリである。図３は、ＢＩＯＳ−ＲＯＭ１２０に格納されるシステムＢＩＯＳ１２１の主要な構成を示す。
【００２５】
システムＢＩＯＳ１２１は、コンピュータ１０（ＯＳ）を起動するためのＰＯＳＴ（Power On Self Test）処理を実行するのに必要な、プログラムモジュール、例えば非ブートデバイス初期化モジュール１２２、ブートデバイス判定モジュール１２３及びＯＳ起動モジュール１２４を含む。ＰＯＳＴ処理は、コンピュータ本体１１の電源オンに応答して実行される、デバイス診断を含む起動処理である。コンピュータ本体１１の電源は、パワーボタンスイッチ１４及びＴＶ起動ボタンスイッチ１５Ａのいずれが操作された場合にもオンされる。非ブートデバイス初期化モジュール１２２及びブートデバイス判定デバイス１２３は、ＰＯＳＴ処理の初めで実行される。
【００２６】
非ブートデバイス初期化モジュール１２２は、ＯＳの起動（ＯＳブート）に必要な非ブートデバイスの初期化を実行するのに用いられる。本実施形態において、ＯＳブートに必要な非ブートデバイスは、ノースブリッジ１１２及びサウスブリッジ１１５の両チップセット、主メモリ１１３、グラフィクスコントローラ１１４及びＥＣ／ＫＢＣ１７の各デバイスと、ＣＰＵ１１１が当該各デバイスをアクセスするのに必要なバス群である。このバス群は、ＰＣＩバス２、ＬＰＣバス３、ＣＰＵ１１１とノースブリッジ１１２とを接続するバス、ノースブリッジ１１２とグラフィクスコントローラ１１４とを接続するバス、そしてノースブリッジ１１２とサウスブリッジ１１５とを接続するバスである。
【００２７】
ブートデバイス判定モジュール１２３は、ＯＳブートに必要最小限のブートデバイスのみを初期化するブートデバイス判定処理を実行するのに用いられる。ブートデバイス判定モジュール１２３は、起動要因判別モジュール１２３ａ、ブートデバイス選択モジュール１２３ｂ、ブートデバイス初期化モジュール１２３ｃ及び起動可判定モジュール１２３ｄを含む。
【００２８】
起動要因判別モジュール１２３ａは、ＯＳ起動が必要となった要因を判定するのに用いられる。ブートデバイス選択モジュール１２３ｂは、ＯＳブートに必要最小限のブートデバイスを選択するのに用いられる。この選択は、ブート優先順位に基づいて行われる。この優先順位は、ブート優先順位情報によって示される。このブート優先順位情報は、ＢＩＯＳ−ＲＯＭ１２０に確保されたブート優先順位格納領域１２５に格納されている。
【００２９】
ブートデバイス初期化モジュール１２３ｃは、選択されたブートデバイスを初期化するのに用いられる。起動可判定モジュール１２３ｄは、初期化されたブートデバイスによってＯＳを起動することが可能かを判定するのに用いられる。
【００３０】
ＯＳ起動モジュール１２４は、ブートデバイス判定モジュール１２３の起動可判定モジュール１２３ｄによって起動可が判定された場合に、当該起動可が判定されたブートデバイスによってＯＳを起動するのに用いられる。
【００３１】
再び図２を参照すると、ＨＤＤ１３０は、各種ソフトウェアおよびデータを格納する記憶装置である。ＨＤＤ１３０には、主オペレーティングシステム（主ＯＳ）１３１及び副オペレーティングシステム（副ＯＳ）１３２が予め格納されている。つまりＨＤＤ１３０はブートデバイスである。主ＯＳ１３１は汎用のＯＳである。一方、副ＯＳ１３２はＴＶ放送番組データを含むＡＶ（オーディオ・ビデオ）データを処理するための最小限の機能のみを有する特定ＯＳ、つまり処理機能が限定されたＡＶ処理（特定の処理）専用の特定ＯＳである。主ＯＳ１３１及び副ＯＳ１３２は、それぞれ主メモリ１１３にロードされることにより、ＣＰＵ１１１によって実行される。ＴＶアプリケーションは、副ＯＳ１３２上で動作する。
【００３２】
ＰＣＩバス２には、ＬＡＮ（ローカルエリアネットワーク）コントローラ１４１及びカードコントローラ１４２が接続されている。ＬＡＮコントローラ１４１は、コンピュータ１０をネットワークに接続するためのネットワークコントローラ（通信デバイス）である。このＬＡＮコントローラ１４１にネットワーク介して例えばサーバが接続されている場合、このサーバから当該ＬＡＮコントローラ１４１を介して主メモリ１１３にＯＳをロードすることができる。このためＬＡＮコントローラ１４１は、ブートデバイスとして扱われる。なお、図２では、ワイヤレスＬＡＮコントローラは省略されている。このワイヤレスＬＡＮコントローラもブートデバイスとして扱われる。
【００３３】
カードコントローラ１４２は、当該カードコントローラ１４２と接続されるカードスロットに挿入されたＰＣカード或いはＳＤ（Secure Digital）カードのようなカードデバイスを制御する。このカードデバイスにＯＳを格納し、当該カードデバイスからカードコントローラ１４２を介して当該ＯＳを主メモリ１１３にロードしてコンピュータ１０を起動することができる。このためカードコントローラ１４２は、ブートデバイスとして扱われる。
【００３４】
ＰＣＩバス２にはまた、ＴＶチューナ１４３が接続されている。ＴＶチューナ１４３はＴＶアンテナコネクタ１８と接続されている。ＴＶチューナ１４３はＴＶアンテナコネクタ１８を介して入力されるＴＶ放送信号から映像データ及び音声データを復調する。復調された映像データはＴＶチューナ１４３内で例えばＭＰＥＧ２（MPEG: Moving Picture Coding Experts Group）のような圧縮符号化方式で圧縮符号化された後にＰＣＩバス２上に出力される。このＰＣＩバス２上に出力された圧縮符号化された映像データは、ＴＶアプリケーションに基づいてデコードされた後にグラフィクスコントローラ１１４によってＬＣＤ１７に表示される。
【００３５】
セレクタブルベイデバイス１６０は、例えば、コネクタ１６１及び光ディスクドライブ（ＯＤＤ）１６２から構成されるブートデバイスである。ＯＤＤ１６２は、例えばＤＶＤ（Digital Versatile Disc）、ＣＤ（Compact Disc）などの光記憶メディアを駆動するためのドライブユニットである。セレクタブルベイデバイス１６０には、ＯＤＤ１６２の代わりに、ＨＤＤ１３０に次ぐ２台目のＨＤＤ（セカンドＨＤＤ）を内蔵することが可能である。
【００３６】
ＥＣ／ＫＢＣ１７０は、電源管理のためのエンベデッドコントローラと、キーボード（ＫＢ）１３及びタッチパッド１８などを制御するキーボードコントローラとが単一チップに集積されたマイクロコンピュータである。ＥＣ／ＫＢＣ１７０は、電源回路１８０と協調して動作することにより、ユーザによるパワーボタンスイッチ１４またはＴＶ起動ボタンスイッチ１５Ａの操作に応答して、コンピュータ本体１１を電源オンする電源制御機能を有している。電源回路１８０は、バッテリ１８１、またはＡＣアダプタ１８２を介して供給される外部電源を用いて、コンピュータ本体１１の各コンポーネントに供給すべきシステム電源を生成する。
【００３７】
次に、システムＢＩＯＳ１２１によって実行される起動処理（ＰＯＳＴ処理）の手順について図４のフローチャートを参照して説明する。この起動処理は、コンピュータ本体１１の電源がオンされたときに実行される。また、コンピュータ本体１１の電源は、当該コンピュータ本体１１に設けられたパワーボタンスイッチ１４及びＴＶ起動ボタンスイッチ１５Ａのいずれかがユーザによって操作されたときにオンされる。
【００３８】
さて、コンピュータ本体１１が電源オンされると（ステップＳ０）、コンピュータ１０を起動するためのＰＯＳＴ処理と呼ばれる起動処理がシステムＢＩＯＳ１２１によって次のように実行される。
【００３９】
まず、システムＢＩＯＳ１２１の非ブートデバイス初期化モジュール１２２が起動される。すると非ブートデバイス初期化モジュール１２２は、ＯＳの起動（ＯＳブート）に必要な非ブートデバイスを初期化するための非ブートデバイス初期化処理を実行する（ステップＳ１）。これにより、ノースブリッジ１１２及びサウスブリッジ１１５の両チップセット、主メモリ１１３、グラフィクスコントローラ１１４及びＥＣ／ＫＢＣ１７の各デバイスが初期化される。また、ＰＣＩバス２、ＬＰＣバス３、ＣＰＵ１１１とノースブリッジ１１２とを接続するバス、ノースブリッジ１１２とグラフィクスコントローラ１１４とを接続するバス、そしてノースブリッジ１１２とサウスブリッジ１１５とを接続するバスが初期化される。
【００４０】
次に、システムＢＩＯＳ１２１のブートデバイス判定モジュール１２３が起動される。するとブートデバイス判定モジュール１２３は、ＯＳブートに必要最小限のブートデバイスのみを初期化するブートデバイス判定処理を実行する（ステップＳ２）。
【００４１】
以下、ブートデバイス判定処理（ステップＳ２）の手順について図５のフローチャートを参照して説明する。まず、ブートデバイス判定モジュール１２３の起動要因判別モジュール１２３ａは、起動処理が開始された要因（起動要因）、つまりコンピュータ本体１１が電源オンされた要因を判別する（ステップＳ１１）。もし、起動要因がパワーボタンスイッチ１４の操作であるならば（ステップＳ１２）、起動要因判別モジュール１２３ａはブートデバイス選択モジュール１２３ｂに制御を渡す。
【００４２】
ブートデバイス選択モジュール１２３ｂは、ＢＩＯＳ−ＲＯＭ１２０のブート優先順位格納領域１２５に格納されているブート優先順位情報に基づいて初期化すべきブートデバイスを選択する（ステップＳ１３）。１回目のステップＳ１３では、優先順位が最も高いブートデバイスが選択される。
【００４３】
ブートデバイス判定モジュール１２３のブートデバイス初期化モジュール１２３ｃは、ブートデバイス選択モジュール１２３ｂによってブートデバイスが選択されると、当該選択されたブートデバイスの初期化（転送レート設定、レガシー処理等）を実行する（ステップＳ１４）。このステップＳ１４では、選択されたブートデバイスへのリソースの割り当て、割り込みの設定等も行われる。また、選択されたブートデバイスが例えばＬＡＮコントローラ１４１の場合には、オプションＲＯＭ（Option ROM）がコールされる。換言するならば、ＬＡＮコントローラ１４１以外のブートデバイス（つまり非ＬＡＮブートデバイス）が選択された場合にはオプションＲＯＭはコールされないため、初期化処理に要する時間を短縮できる。
【００４４】
ブートデバイス判定モジュール１２３の起動可判定モジュール１２３ｄは、選択されたブートデバイスが初期化されると、当該ブートデバイスからのＯＳ（コンピュータ１０）の起動が可能か否かを判定する（ステップＳ１５）。選択されたブートデバイスがカードコントローラ１４２の場合を例にとると、当該カードコントローラ１４２と接続されるカードスロットにＰＣカードのようなカードデバイスが挿入されていないならば、ステップＳ１５において起動不可が判定される。
【００４５】
もし、ステップＳ１５において起動可が判定された場合、起動可判定モジュール１２３ｄは、当該選択されたブートデバイスをＯＳの起動が可能なデバイスと判定する。この場合、つまりＯＳの起動が可能なブートデバイスが見つけられた場合、起動可判定モジュール１２３ｄはブートデバイス選択モジュール１２３ｂによる新たなブートデバイスの選択を抑止する。これにより、ブートデバイス判定モジュール１２３における一連のブートデバイス判定処理は正常終了し、ＯＳ起動モジュール１２４に制御が渡される。するとＯＳ起動モジュール１２４は、起動可判定モジュール１２３ｄによってＯＳの起動が可能なデバイスとして判定されたブートデバイスからＯＳを起動するためのＯＳ起動処理を実行する（図４のステップＳ３）。このＯＳ起動処理により、ＯＳの起動が可能なデバイスとして判定されたブートデバイスから主メモリ１１３にＯＳがロードされ、当該ＯＳの実行によってコンピュータ１０が起動される。
【００４６】
一方、ステップＳ１５において起動不可が判定された場合、起動可判定モジュール１２３ｄはブートデバイス選択モジュール１２３ｂに起動不可を通知することにより、次のブートデバイスの選択を要求する。するとブートデバイス選択モジュール１２３ｂは、ＢＩＯＳ−ＲＯＭ１２０のブート優先順位格納領域１２５に格納されているブート優先順位情報を参照して次の優先順位の選択すべきブートデバイスがあるか否かを判定する（ステップＳ１６）。
【００４７】
もし、選択すべきブートデバイスがないならば、即ちブート優先順位情報によって示される全てのブートデバイスについて既に選択（初期化）済みであるならば、ブートデバイス選択モジュール１２３ｂはいずれのブートデバイスからもＯＳを起動できないと判定する。この場合、ブートデバイス判定モジュール１２３によるブートデバイス判定処理は異常終了する。
【００４８】
これに対し、選択すべきブートデバイスがあるならば、ブートデバイス選択モジュール１２３ｂは次の優先順位の未選択のブートデバイスを初期化すべきブートデバイスとして選択する（ステップＳ１３）。するとブートデバイス初期化モジュール１２３ｃは、新たに選択されたブートデバイスを初期化する（ステップＳ１４）。
【００４９】
ステップＳ１３及びＳ１４の処理は、ＯＳの起動が可能なブートデバイスが見つけられるか、ブート優先順位情報によってブート優先順位が示される全てのブートデバイスについて起動不可が判定されるまで繰り返される。したがって、最も低い優先順位のブートデバイス以外のブートデバイスがＯＳの起動が可能なブートデバイスとして判定された場合には、当該判定されたブートデバイスよりもブート優先順位が低いブートデバイスの初期化は実行されていない。
【００５０】
このため本実施形態においては、従来技術に比較して電源オン時の初期化処理に要する時間を短縮することができる。つまり本実施形態においては、起動処理時間（ＰＯＳＴ処理時間）を短縮してＯＳを高速で起動（ブート）できる。この効果は、ＯＳの起動が可能であると判定されるブートデバイスのブート優先順位が高いほど大きい。
【００５１】
なお、ブート優先順位の最も低いブートデバイスがＯＳの起動が可能なブートデバイスとして判定された場合には、全てのブートデバイスについて初期化が実行されることになる。この場合の初期化処理に要する時間は従来技術と同等であり、従来技術よりも長くなることはない。しかも、このような状態が発生することは極めて希である。
【００５２】
本実施形態では、上述の起動処理で初期化されなかったブートデバイスの初期化は、起動されたＯＳに任される。
【００５３】
次に、起動処理が開始された要因（コンピュータ本体１１の電源オンの要因）が、ＴＶ起動ボタンスイッチ１５Ａの操作であるものとする（ステップＳ１２）。この場合、起動要因判別モジュール１２３ａはブートデバイス初期化モジュール１２３ｃに制御を渡す。本実施形態において、ＴＶ放送番組データを再生するためのＴＶアプリケーションは副ＯＳ１３２上で動作する。この副ＯＳ１３２はＨＤＤ１３０に予め格納されている。
【００５４】
そこでブートデバイス初期化モジュール１２３ｃは、ＴＶ起動ボタンスイッチ１５Ａの操作に応じて起動処理が開始された結果、起動要因判別モジュール１２３ａによって起動された場合、ブート優先順位情報の示すブート優先順位に無関係にＨＤＤ１３０を初期化する（ステップＳ１７）。
【００５５】
起動可判定モジュール１２３ｄは、ブートデバイス初期化モジュール１２３ｃによってＨＤＤ１３０が初期化されると、当該ＨＤＤ１３０からの副ＯＳ１３２の起動が可能か否かを判定する（ステップＳ１８）。もし、ステップＳ１８において起動可が判定された場合、一連のブートデバイス判定処理は正常終了する。すると、ＨＤＤ１３０から副ＯＳ１３２を起動するためのＯＳ起動処理がＯＳ起動モジュール１２４によって実行される（図４のステップＳ３）。
【００５６】
このように本実施形態においては、ユーザが例えばＴＶ放送番組を視聴するためにＴＶ起動ボタンスイッチ１５Ａを操作した場合、ＴＶ放送番組の視聴に無関係の例えばＯＤＤ１６２のようなブートデバイスが初期化されることはない。このため本実施形態においては、ＴＶ起動ボタンスイッチ１５Ａの操作に起因する電源オン時の初期化処理に要する時間を短縮して、起動処理を高速化できる。つまり本実施形態においては、ＯＳによっては使用されることのない不必要なブートデバイスまで初期化されるのを抑止できる。しかも本実施形態においては、不必要なブートデバイスの初期化が行われないことにより、そのデバイスで余分な電力が消費されるなどの問題が起きる可能性をなくすことができる。
【００５７】
また、副ＯＳ１３２はＴＶ放送番組データの処理を含むＡＶ処理を実行するための最小限の機能のみを有している。このため、副ＯＳ１３２の起動に要する時間は、汎用の主ＯＳ１３１の起動に要する時間に比べて遥かに短い。よって、ユーザはＴＶ起動ボタンスイッチ１５Ａを操作するだけで、ＴＶ放送番組を即座に視聴をすることができる。
【００５８】
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。
【図面の簡単な説明】
【００５９】
【図１】本発明の一実施形態に係るパーソナルコンピュータの外観を示す斜視図。
【図２】図１のパーソナルコンピュータのシステム構成を示すブロック図。
【図３】図２中のＢＩＯＳ−ＲＯＭ１２０に格納されるシステムＢＩＯＳ１２１の主要な構成を示す図。
【図４】同実施形態において適用される起動処理の手順を示すフローチャート。
【図５】図４中のブートデバイス判定処理（ステップＳ２）の手順を示すフローチャート。
【符号の説明】
【００６０】
１０…パーソナルコンピュータ、１１…コンピュータ本体、１４…パワーボタンスイッチ（第１のスイッチ）、１５Ａ…ＴＶ起動ボタンスイッチ（第２のスイッチ）、１７…ＬＣＤ、１１１…ＣＰＵ、１１２…ノースブリッジ、１１３…主メモリ、１１４…グラフィクスコントローラ、１１５…サウスブリッジ、１２０…ＢＩＯＳ−ＲＯＭ、１２１…システムＢＩＯＳ、１２２…非ブートデバイス初期化モジュール、１２３…ブートデバイス判定モジュール、１２３ａ…起動要因判別モジュール、１２３ｂ…ブートデバイス選択モジュール、１２３ｃ…ブートデバイス初期化モジュール、１２３ｄ…起動可判定モジュール、１２４…ＯＳ起動モジュール、１２５…ブート優先順位格納領域。
【図１】
2007122653.tif 000003
【図２】
2007122653.tif 000004
【図３】
2007122653.tif 000005
【図４】
2007122653.tif 000006
【図５】
2007122653.tif 000007