(57)【要約】  システムを正常に起動できる情報処理装置を提供するという課題を解決するために、情報処理装置は、ＯＳプログラムを記憶する第１記憶部と、ブートプログラムを記憶する記憶領域、前記第１記憶部における前記ＯＳプログラムの所在を示す第１パス情報を記憶する第１領域および前記ブートプログラムによってのみアクセス可能に設定され、前回起動したＯＳプログラムの所在を示す第２パス情報を記憶する第２領域を有する第２記憶部と、処理部とを有し、前記処理部は、第１起動時に、ＯＳプログラムの起動に使用した前記第１パス情報を前記第２領域に書き込み、前記第１起動の後の第２起動時に、前記処理部は、前記ブートプログラムを用いて、前記第１領域に格納されている第１パス情報と、前記第２領域に格納されている第２パス情報とを比較し、比較結果に基づき、前記第１パス情報で示されるＯＳプログラムを起動するか否かを決定する。
2012127522.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置において、
オペレーティングシステムプログラムを記憶する第１記憶部と、
オペレーティングシステムプログラムを起動するブートプログラムを記憶するブートプログラム記憶領域、前記第１記憶部における前記オペレーティングシステムプログラムの所在を示す第１パス情報を記憶する第１領域および前記ブートプログラムによってのみアクセス可能に設定され、前回起動したオペレーティングシステムプログラムの所在を示す第２パス情報を記憶する第２領域を有する第２記憶部と、
前記ブートプログラムを実行すると共に、前記オペレーティングシステムプログラムを実行する処理部とを有し、
前記処理部は、第１起動時に、オペレーティングシステムプログラムの起動に使用した前記第１領域に格納されている第１パス情報を前記第２領域に書き込み、
前記第１起動の後の第２起動時に、前記処理部は、前記ブートプログラムを用いて、前記第１領域に格納されている第１パス情報と、前記第２領域に格納されている第２パス情報とを比較し、比較結果に基づき、前記第１パス情報で示されるオペレーティングシステムプログラムを起動するか否かを決定し、前記第１パス情報で示されるオペレーティングシステムプログラムを起動しない場合、前記第２パス情報を前記第１領域に書き込む、
ことを特徴とする情報処理装置。
【請求項２】
前記処理部は、前記比較の結果、前記第１パス情報と前記第２パス情報とが一致しない場合、前記第１パス情報で示されるオペレーティングシステムプログラムの起動を許可するか否かを通知することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記第２記憶部は、前記第１領域に格納された第１パス情報の書き換え可否を示すフラグを格納するフラグ格納領域を有し、
前記処理部は、前記ブートプログラムを用いて前記フラグを参照することにより、前記第１領域に格納された第１パス情報を更新するか否かを決定することを特徴とする請求項１記載の情報処理装置。
【請求項４】
情報処理装置の制御部によって実行される制御方法において、
第１起動時に、第２記憶部に記憶されたブートプログラムによって、第２記憶部の第１領域に記憶された第１パス情報で示される第１記憶部に格納されたオペレーティングシステムプログラムを起動し、
前記オペレーティングシステムプログラムの起動に使用した前記第１パス情報を前記ブートプログラムによってのみアクセス可能に設定された前記第２記憶部の第２領域に書き込み、
前記第１起動の後の第２起動時に、
前記ブートプログラムによって前記第２記憶部の前記第１領域に格納されている第１パス情報を参照し、
前記第２領域に格納されている第２パス情報を参照し、
前記参照した第１パス情報と前記参照した第２パス情報とを比較し、
前記比較の結果に基づき、前記参照した前記第１パス情報で示されるオペレーティングシステムプログラムを起動するか否かを決定し、
前記決定により前記オペレーティングシステムプログラムを起動しない場合は、前記参照した第２パス情報を前記第１領域に書き込む、
ことを特徴とする情報処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理装置の制御方法に関する。
【背景技術】
【０００２】
従来のＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）プログラムを有する情報処理装置では、情報処理装置の電源投入後、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）は、まず、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）に記憶されているＢＩＯＳをＲＯＭ上で実行する。ＣＰＵは、ＢＩＯＳによって、デバイスの初期化やＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）の初期化を行なう。その後、ＣＰＵは、ＢＩＯＳを実行することで、ＢＩＯＳプログラムをＲＯＭからメモリ（ＲＡＭ）上にロードし、デバイスの初期化処理等のＯＳ起動に必要な補助記憶装置の決定処理を行う。ＣＰＵは、更に、ＢＩＯＳプログラムを実行することにより、ＯＳを起動する補助記憶装置のＭＢＲ（Ｍａｓｔｅｒ  Ｂｏｏｔ  Ｒｅｃｏｒｄ）に書き込まれているブートストラップローダをメモリ上にロードする。ＣＰＵは、ブートストラップローダプログラムを実行することにより、ＭＢＲに書き込まれているパーティション情報を参照し、起動フラグが立っているパーティションからブートセクタをロードして、処理を移す。ＣＰＵは、ＢＩＯＳを実行することにより、ブートセクタ内のプログラムにてＯＳローダをメモリ上にロードする。そして、ＣＰＵは、ＯＳローダを実行することによりＯＳの起動を行う。ＯＳ上で実行されるウィルス対策ソフトはＭＢＲ及びブートブロックの保護を行なって、ウィルスソフトによる改竄を防いでいる。【０００３】
ところで、近年、このＢＩＯＳに対し新機能を追加したＵＥＦＩ（Ｕｎｉｆｉｅｄ  Ｅｘｔｅｎｓｉｂｌｅ  Ｆｉｒｍｗａｒｅ  Ｉｎｔｅｒｆａｃｅ）が利用されるようになってきている。ＵＥＦＩでは、電源投入によるシステムの起動後、ＣＰＵはＲＯＭに記憶されたＵＥＦＩをＲＯＭ上で実行する。ＣＰＵは、ＵＥＦＩを実行することにより、デバイスの初期化やメモリの初期化を行なった後、ＵＥＦＩプログラムをＲＯＭからメモリ（ＲＡＭ）上にロードし、デバイスの初期化処理等のＯＳ起動に必要な処理を行う。ＣＰＵは、ＵＥＦＩを実行することによりＯＳ起動時にＮＶＲＡＭ（Ｎｏｎ  Ｖｏｌａｔｉｌｅ  ＲＡＭ）に書き込まれているブートマネージャのロケーション情報を取得する。ＣＰＵは、ＲＯＭに展開されたＵＥＦＩを実行することにより、ロケーション情報に従って補助記憶装置に記憶されているブートマネージャをメモリ上にロードし、制御を移す。ＣＰＵは、ブートマネージャを実行することにより、ＯＳローダをメモリ上にロードし、処理を移す。この後、ＣＰＵは、ＯＳローダを実行することによりＯＳの起動を行う。【０００４】
ＵＥＦＩの起動では、ＲＯＭに記憶されたＮＶＲＡＭの情報を参照して、ブートマネージャをメモリ（ＲＡＭ）上にロードして処理を移す。ＭＢＲがないため、ＯＳを安全に起動するには、ＯＳロード時に必要なファイルが改竄されていないかどうかのチェックが必要である。しかし、ＮＶＲＡＭ内のデータの保護が行なわれていないので、ＮＶＲＡＭ内のチェックも必要である。ウィルスソフト等の悪意のあるプログラムによって、ＮＶＲＡＭ内のＯＳ起動に必要な情報が改竄された場合、正規のブートマネージャ以外の改竄されたブートマネージャを容易に実行できてしまう。つまり、セキュリティ対策のソフトウェアが動作する前に、改竄されたブートマネージャ実行されるため、ウィルスソフトの組み込みや、重要なファイルの削除などの重大な問題が生じてしまう。しかし、ユーザはＯＳ起動情報の状態がどのようになっているのかチェックできないため、改竄されている事に気づくことができない。また、起動に必要な情報が削除された場合、ＵＥＦＩはブートマネージャのロードが行なえず、ＯＳをロードすることができない。【０００５】
先行技術文献としては下記のものがある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１０−３３３９０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の課題は、システムの起動を正常に行うことのできる情報処理装置を提供することである。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本実施形態の一例における情報処理装置は、オペレーティングシステムプログラムを記憶する第１記憶部と、オペレーティングシステムプログラムを起動するブートプログラムを記憶するブートプログラム記憶領域、前記第１記憶部における前記オペレーティングシステムプログラムの所在を示す第１パス情報を記憶する第１領域および前記ブートプログラムによってのみアクセス可能に設定され、前回起動したオペレーティングシステムプログラムの所在を示す第２パス情報を記憶する第２領域を有する第２記憶部と、前記ブートプログラムを実行すると共に、前記オペレーティングシステムプログラムを実行する処理部とを有し、前記処理部は、第１起動時に、オペレーティングシステムプログラムの起動に使用した前記第１領域に格納されている第１パス情報を前記第２領域に書き込み、前記第１起動の後の第２起動時に、前記処理部は、前記ブートプログラムを用いて、前記第１領域に格納されている第１パス情報と、前記第２領域に格納されている第２パス情報とを比較し、比較結果に基づき、前記第１パス情報で示されるオペレーティングシステムプログラムを起動するか否かを決定し、前記第１パス情報で示されるオペレーティングシステムプログラムを起動しない場合、前記第２パス情報を前記第１領域に書き込む。
【発明の効果】
【０００９】
本実施形態の一側面によれば、システムの起動を正常に行うことができる。
【図面の簡単な説明】
【００１０】
【図１】情報処理装置のハードウェア構成の一例を簡略的に示す図である。
【図２】ＲＯＭ、主記憶装置及びハードディスクの構成の一例を示す図である。
【図３】ＯＳ起動情報のデータの一例を示す図である。
【図４】ＵＥＦＩのランタイムサービスのデータ読み書きについて示す図である。
【図５】ＯＳ起動情報の変更処理を示すフローチャートである。
【図６】情報処理装置の起動処理を示すフローチャートである。
【図７】情報処理装置のＯＳ起動情報の保護処理を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本実施形態における情報処理装置について説明する。
【００１２】
図１は、本実施形態における情報処理装置１０のハードウェア構成の一例を簡略的に示すブロック図である。情報処理装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１によって全体が制御されている。
【００１３】
ＣＰＵ１０１及び主記憶装置１０２には、システムコントローラ１０３が接続されている。システムコントローラ１０３は、ＣＰＵ１０１と主記憶装置１０２との間のデータ転送や、ＣＰＵ１０１とバス１０４との間のデータ転送を制御する。さらに、システムコントローラ１０３には、バス１０４を介して、グラフィックスコントローラ１０５、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０６、ネットワークコントローラ１０７、オーディオコントローラ１０８、電源１０９、光ディスクドライブ１１１、キーボードコントローラ５０及びディスクコントローラ１１２が接続されている。
【００１４】
主記憶装置１０２には、ＣＰＵ１０１に実行させるＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、主記憶装置１０２には、ＣＰＵ１０１による処理に必要な各種データが格納される。主記憶装置１０２には、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）が用いられている。
【００１５】
ディスクコントローラ１１２には、ハードディスク１１３が接続されている。ハードディスク１１３には、ＯＳやアプリケーションのプログラム、各種データが格納される。ＲＯＭ１０６には、例えば、ＵＥＦＩ（Ｕｎｉｆｉｅｄ  Ｅｘｔｅｎｓｉｂｌｅ  Ｆｉｒｍｗａｒｅ  Ｉｎｔｅｒｆａｃｅ）プログラムが格納される。
【００１６】
グラフィックスコントローラ１０５には、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｍｏｎｉｔｏｒ）等の表示部１１４が接続されており、ＣＰＵ１０１からの命令に従って画像を表示部１１４の画面に表示させる。
【００１７】
ネットワークコントローラ１０７は、ネットワークと接続されており、ネットワークを介して、ＣＰＵ１０１もしくはハードディスク１１３と他の情報処理装置との間で、データの送受信を行う。
【００１８】
キーボードコントローラ５０には、キーボード２０が接続されており、キーボード２０から送られてくる信号を、バス１０４を介してＣＰＵ１０１に送信する。
【００１９】
オーディオコントローラ１０８には、スピーカ１１５が接続されており、ＣＰＵ１０１からの命令に従って音声をスピーカ１１５から発生させる。
【００２０】
電源１０９は、不図示の電源線を介して情報処理装置１０内の各ハードウェアに対して電力を供給する。
【００２１】
このようなハードウェアによって、情報処理装置１０の処理機能を実現することができる。
【００２２】
図２は、本実施形態におけるＲＯＭ１０６、主記憶装置１０２及びハードディスク１１３の構成の一例を簡略的に示すブロック図である。
【００２３】
ＲＯＭ１０６は、ＵＥＦＩ格納領域１０６１及びＮＶＲＡＭ１０６２を有する。ＮＶＲＡＭ１０６２は、ＯＳ起動情報格納領域１０６３、前回までのＯＳ起動情報格納領域１０６４及びＯＳ起動情報書き込み可否領域１０６５を有する。
【００２４】
ＵＥＦＩ格納領域１０６１は、ＵＥＦＩ２０６２を格納する。ＵＥＦＩは、キーボード等の周辺機器を制御するプログラム群である。ＯＳ起動情報格納領域１０６３は、ＯＳの起動情報であるパス名等を格納する。前回までのＯＳ起動情報格納領域１０６４は、前回起動したＯＳに関する起動情報であるパス名等を格納する。ＯＳ起動情報書き込み可否領域１０６５は、ＯＳ起動情報の書き込みを許可するか否かの情報を格納する。書き込みを許可するか否かの情報は、例えば１バイトの情報で、“００”は「許可」を示し、“０１”は「禁止」を示し、そして“０２”は「起動時に確認」を示す。
【００２５】
ハードディスク１１３は、パーティションテーブル格納領域１１３１、ブートマネージャ格納領域１１３２、ＯＳローダ格納領域１１３３及びＯＳ格納領域１１３４を有する。
【００２６】
パーティションテーブル格納領域１１３１は、パーティションテーブルを格納する。パーティションテーブルは、アクティブパーティションか否かを示すブート識別子、パーティションの開始位置及び終了位置を示す位置情報、パーティションのＩＤ、ファイルシステムの種類を示すシステムＩＤを有する。ブートマネージャ格納領域１１３２は、ブートマネージャ２１３２を格納する。ブートマネージャ２１３２は、複数のＯＳをメニュー表示し、ユーザの指示に応じてＯＳを起動し分けるプログラムである。ＯＳローダ格納領域１１３３は、ＯＳローダ２１３３を格納する。ＯＳローダ２１３３は、情報処理装置１０の起動直後に動作し、ＯＳ２１３４をハードディスク１１３から読み込んで起動するプログラムである。ＯＳ格納領域１１３４は、ＯＳ２１３４を格納する。ＯＳ２１３４は、キーボード入力や画像表示といった入出力機能やハードディスクやメモリの管理など、多くのアプリケーションソフトから共通して利用される基本的な機能を提供し、情報処理装置１０を制御するプログラムである。
【００２７】
ここで、前回までのＯＳ起動情報格納領域１０６４及びＯＳ起動情報書き込み可否領域１０６５は、ＵＥＦＩ２０６２からのアクセスが可能な領域となっている。なお、ＵＥＦＩのランタイムサービスについては後述する。
【００２８】
図３に、ＯＳ起動情報のデータの一例を示す。ＯＳ起動情報は、起動メニュー名２０１、ブートマネージャ２１３２のパス名２０２及びブートマネージャ２１３２のＧＵＩＤ情報２０３を有する。起動メニュー名２０１は、起動するＯＳの名称である。ブートマネージャ２１３２のパス名２０２は、ＯＳを起動するためのブートマネージャ２１３２が格納されている位置情報を示す。ブートマネージャ２１３２のＧＵＩＤ情報２０３は、ハードディスク１１３上のパーティションテーブルの配置情報を示す。
【００２９】
図４に、ＵＥＦＩのランタイムサービスのデータ読み書きについて示す。
【００３０】
ＣＰＵ１０１は、ＯＳ２１３４を実行することにより、ＵＥＦＩランタイムサービス２０６３に対して、ＧｅｔＶａｒｉａｂｌｅファンクション及びＳｅｔＶａｌｉａｂｌｅファンクションを発行する。ＣＰＵ１０１は、ＯＳ２１３４を実行することにより、ＵＥＦＩランタイムサービス２０６３に対して、ＧｅｔＶａｒｉａｂｌｅファンクションを発行することで、例えば、ＮＶＲＡＭ１０６２からＯＳ起動情報を取得することができる。また、ＣＰＵ１０１は、ＯＳ２１３４を実行することにより、ＵＥＦＩランタイムサービス２０６３に対して、ＳｅｔＶａｌｉａｂｌｅファンクションを発行することで、例えば、ＮＶＲＡＭ１０６２に新たに追加された起動情報を書き込むことができる。
【００３１】
ここで、図２に示したＯＳ起動情報格納領域１０６３は、ＵＥＦＩ２０６２のランタイムサービスのために割り当てられた領域であり、ＣＰＵ１０１がＵＥＦＩのランタイムサービスを用いることでアクセス可能な領域である。一方、図２に示したＯＳ起動情報格納領域１０６３及び前回までのＯＳ起動情報格納領域１０６４は、ＣＰＵ１０１がＵＥＦＩ２０６２のランタイムサービスを用いてアクセス不可能な領域である。本実施形態においては、ＮＶＲＡＭ１０６２に、ＵＥＦＩ２０６２のランタイムサービスのために割り当てられた領域以外の領域に、ＯＳ起動情報格納領域１０６３及び前回までのＯＳ起動情報格納領域１０６４を設けている。さらに、ＵＥＦＩ２０６２に、ＯＳ起動情報格納領域１０６３及び前回までのＯＳ起動情報格納領域１０６４へのアクセス可能な機能を設けていることにより、ＵＥＦＩ２０６２によるＯＳ起動情報格納領域１０６３及び前回までのＯＳ起動情報格納領域１０６４へのアクセスを可能にしている。ここで、ＯＳ起動情報格納領域１０６３及び前回までのＯＳ起動情報格納領域１０６４へのアクセス可能な機能の一例として、ＵＥＦＩ２０６２に、ＯＳ起動情報格納領域１０６３のアドレス情報及び前回までのＯＳ起動情報格納領域１０６４のアドレス情報を追加すれば良い。これによれば、ＵＥＦＩ２０６２は、ＯＳ起動情報格納領域１０６３のアドレス情報及び前回までのＯＳ起動情報格納領域１０６４のアドレス情報を参照することができるので、ＯＳ起動情報格納領域１０６３及び前回までのＯＳ起動情報格納領域１０６４へのアクセスが可能になる。なお、ＵＥＦＩ２０６２以外からのＯＳ起動情報格納領域１０６３及び前回までのＯＳ起動情報格納領域１０６４へのアクセスは不可能となっている。ＵＥＦＩ２０６２以外からのアクセス不可能を実現するための一例として、ＵＥＦＩ２０６２がＯＳ起動時に、ＯＳにＯＳ起動情報格納領域１０６３のアドレス情報及び前回までのＯＳ起動情報格納領域１０６４のアドレス情報を通知しなければ良い。これによれば、ＯＳＯＳ起動情報格納領域１０６３のアドレス情報及び前回までのＯＳ起動情報格納領域１０６４のアドレス情報を参照することができないので、ＯＳ起動情報格納領域１０６３及び前回までのＯＳ起動情報格納領域１０６４へのアクセスが不可能になる。
【００３２】
以下に、図５を用いて、ＮＶＲＡＭ１０６２のＯＳ起動情報格納領域１０６３に格納されたＯＳ起動情報を変更するＵＥＦＩ２０６２のランタイムサービスについて説明する。
【００３３】
ステップＳ００１において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、コマンドを受信すると、ＯＳ起動情報書き込み可否領域１０６５を参照し、ＯＳ起動情報の書き込みが禁止されているか否かを判定する。ＯＳ起動情報の書き込みが禁止されている場合、処理はステップＳ００２へ移行する。一方、ＯＳ起動情報の書き込みが禁止されていない場合、処理はステップＳ００４へ移行する。
【００３４】
ステップＳ００２において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、受信したコマンドがＯＳ起動情報の書き込みであるか否かを判定する。受信したコマンドがＯＳ起動情報の書き込みである場合、処理はステップＳ００３へ移行する。一方、受信したコマンドがＯＳ起動情報の書き込みでない場合、処理はステップＳ００４へ移行する。
【００３５】
ステップＳ００３において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、グラフィックスコントローラ１０５を介して表示部１１４にエラーを表示する。処理は終了する。
【００３６】
ステップＳ００４において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、ＯＳ起動情報格納領域１０６３に新しいＯＳ起動情報を書き込む。処理は終了する。
【００３７】
ＵＥＦＩでは、ＯＳ起動情報をＲＯＭ１０６上のＮＶＲＡＭ１０６２に格納している。上述したように、ＮＶＲＡＭ１０６２に格納されているＯＳ起動情報は、ランタイムサービスによって書き換えることができ、例えば、複数のＯＳを同一装置内で切り換えて起動させたい場合は、それぞれのＯＳ起動情報を書き込んでおけばＯＳを切り換えて起動することができる。
【００３８】
以下に図６を用いて、本実施形態における情報処理装置１０の起動処理について説明する。
【００３９】
ステップＳ１０１において、ＣＰＵ１０１は、電源１０９がオンになったことをシステムコントローラ１０３を介して検出する。処理はステップＳ１０２へ移行する。
【００４０】
ステップＳ１０２において、ＣＰＵ１０１は、ＵＥＦＩをＲＯＭ１０６上にて実行する。ＵＥＦＩは、ＣＰＵ１０１のレジスタの初期化等を行う。処理はステップＳ１０３へ移行する。
【００４１】
ステップＳ１０３において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を主記憶装置１０２上にて実行する。ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、メモリコントローラやＵＳＢの初期化を行う。処理はステップＳ１０４へ移行する。
【００４２】
ステップＳ１０４において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、ＯＳ起動情報の保護処理を行う。処理はステップＳ１０５へ移行する。なお、ＯＳ起動情報の保護処理の詳細については後述する。
【００４３】
ステップＳ１０５において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、ＮＶＲＡＭ１０６２を参照してブートマネージャ２１３２のロケーション情報を取得する。処理はステップＳ１０６へ移行する。
【００４４】
ステップＳ１０６において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、ブートマネージャ２１３２をハードディスク１１３から読み出し、主記憶装置１０２にロードし、ブートマネージャ２１３２に制御を移す。処理はステップＳ１０７へ移行する。
【００４５】
ステップＳ１０７において、ＣＰＵ１０１は、ブートマネージャ２１３２を実行することにより、ＯＳローダ２１３３をハードディスク１１３から読み出し、主記憶装置１０２にロードし、ＯＳローダ２１３３に制御を移す。処理はステップＳ１０８へ移行する。
【００４６】
ステップＳ１０８において、ＣＰＵ１０１は、ＯＳローダ２１３３を実行することにより、ＯＳ２１３４をハードディスク１１３から読み出し、主記憶装置１０２にロードし、ＯＳ２１３４に制御を移す。処理はステップＳ１０９へ移行する。
【００４７】
ステップＳ１０９において、ＣＰＵ１０１は、ＵＥＦＩを用いて、前回までのＯＳ起動情報格納領域１０６４に、今回起動したＯＳのパス名を書き込む。処理は終了する。
【００４８】
なお、例えば、ユーザが情報処理装置１０に新たなＯＳを追加したい場合は、キーボード２０を介して新たなＯＳ追加のための所定の動作がなされると、ＣＰＵ１０１は、ＯＳ起動情報格納領域１０６３に新たなＯＳのパス名を書き込む。
【００４９】
以下に図７を用いて、本実施形態におけるＯＳ起動情報の保護処理について説明する。
【００５０】
ステップＳ２０１において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、ＯＳ起動情報書き込み可否領域１０６５を参照する。処理はステップＳ２０２へ移行する。
【００５１】
ステップＳ２０２において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、ＯＳ起動情報の書き込みが許可されているか否かを判定する。ＯＳ起動情報の書き込みが許可されている場合、処理はステップＳ２０３へ移行する。一方、ＯＳ起動情報の書き込みが許可されていない場合、処理はステップＳ２０４へ移行する。
【００５２】
ステップＳ２０３において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、新しいＯＳ起動情報を前回までのＯＳ起動情報格納領域１０６４に格納する。処理は終了する。
【００５３】
ステップＳ２０４において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、ＯＳ起動情報の書き込みが禁止されているか否かを判定する。ＯＳ起動情報の書き込みが禁止されている場合、処理は終了する。一方、ＯＳ起動情報の書き込みが禁止されていない場合、処理はステップＳ２０５へ移行する。
【００５４】
ステップＳ２０５において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、ＯＳ起動情報格納領域１０６３に格納されている起動情報と前回までのＯＳ起動情報格納領域１０６４に格納されている起動情報とを比較する。処理はステップＳ２０６へ移行する。
【００５５】
ステップＳ２０６において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、ＯＳ起動情報格納領域１０６３に格納されている起動情報と前回までのＯＳ起動情報格納領域１０６４に格納されている起動情報とを比較した結果、ＯＳ起動情報が変更されているか否かを判定する。ＯＳ起動情報が変更されている場合、処理はステップＳ２０７へ移行する。一方、ＯＳ起動情報が変更されていない場合、処理は終了する。
【００５６】
ステップＳ２０７において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、グラフィックスコントローラ１０５を介して表示部１１４にＯＳ起動情報の変更を許可するか否かを問うメッセージを表示する。処理はステップＳ２０８へ移行する。
【００５７】
ステップＳ２０８において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、キーボードコントローラ５０を介してユーザによってキーボード２０からＯＳ起動情報の変更の許可が選択されたか否かを判定する。ＯＳ起動情報の変更の許可が選択された場合、処理はステップＳ２０３へ移行する。一方、ＯＳ起動情報の変更の許可が選択されなかった場合、処理はステップＳ２０９へ移行する。
【００５８】
ステップＳ２０９において、ＣＰＵ１０１は、ＵＥＦＩ２０６２を実行することにより、前回までのＯＳ起動情報をＯＳ起動情報格納領域１０６３に格納する。これによれば、悪意のあるユーザによって、ＯＳ起動情報が書き換えられたとしても、ユーザに注意を喚起することができ、さらに、書き換えられたＯＳ情報を正常なＯＳ情報で書き換えることができるため、情報処理装置１０の安全性を高めることができる。処理は終了する。
【００５９】
以上、本発明の例示的な実施の形態の情報処理装置について説明したが、本発明は、具体的に開示された実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【００６０】
１０  情報処理装置
１０１  ＣＰＵ
１０２  主記憶装置
１０３  システムコントローラ
１０４  バス
１０５  グラフィックスコントローラ
１０６  ＲＯＭ
１０６１  ＵＥＦＩ格納領域
１０６２  ＮＶＲＡＭ
１０６３  ＯＳ起動情報格納領域
１０６４  前回までのＯＳ起動情報格納領域
１０６５  ＯＳ起動情報書き込み可否領域
１０７  ネットワークコントローラ
１０８  オーディオコントローラ
１０９  電源
１１１  光ディスクドライブ
１１２  ディスクコントローラ
１１３  ハードディスク
１１３１  パーティションテーブル格納領域
１１３２  ブートマネージャ格納領域
１１３３  ＯＳローダ格納領域
１１３４  ＯＳ格納領域
１１４  画像を表示部
１１５  スピーカ
２０  キーボード
２０１  起動メニュー名
２０２  パス名
２０３  ＧＵＩＤ情報
２０６２  ＵＥＦＩ
２０６３  ＵＥＦＩランタイムサービス
２１３２  ブートマネージャ
２１３３  ＯＳローダ
２１３４  ＯＳ
５０  キーボードコントローラ
【図１】
2012127522.tif 000003
【図２】
2012127522.tif 000004
【図３】
2012127522.tif 000005
【図４】
2012127522.tif 000006
【図５】
2012127522.tif 000007
【図６】
2012127522.tif 000008
【図７】
2012127522.tif 000009
【国際調査報告】
2012127522.tif 000010
2012127522.tif 000011
2012127522.tif 000012
2012127522.tif 000013