(57)【要約】【課題】  起動可能な複数のＯＳがある場合であっても、起動するＯＳを効率よく選定することが可能な情報処理装置等を提供する。【解決手段】  情報処理装置１は、設定情報１０３に基づいて、自装置が起動する特定のＯＳを選定するＯＳ選定モジュール１０１と、進捗管理情報１０４から、自装置が次回起動する特定のＯＳの位置を示す情報と、デバイスＩＤとを求めると共に、求めた情報に基づいて、設定情報１０３を更新する制御モジュール１０２と、これらモジュールとデータとを記憶可能な記憶部３と、当該モジュールを実行する実行部２とを備えることを特徴とする。【選択図】      図１
2014186501.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上のＯＳが格納されたデバイスを識別可能なデバイスＩＤと、該ＯＳを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のＯＳを選定するＯＳ選定手段と、
前記1つ以上のＯＳの起動順位と、前記位置を示す情報と、前記デバイスＩＤとを含み、前記1つ以上のＯＳを起動する順序と、該ＯＳを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のＯＳの前記位置を示す情報と、前記デバイスＩＤとを求めると共に、求めた前記位置を示す情報と、前記デバイスＩＤとに基づいて、前記設定情報を更新する制御手段と、
前記ＯＳ選定手段と、前記制御手段と、前記設定情報と、前記進捗管理情報とを記憶可能な記憶手段と、
前記自装置の起動に際して前記ＯＳ選定手段を実行し、前記ＯＳの起動に際して前記制御手段を実行する実行手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記制御手段は、
前記起動順位と関連づけられた前記特定のＯＳを起動したか否かを示す実行結果の値を、前記進捗管理情報から求めると共に、求めた前記実行結果の値が未実施を示す場合に、その値を、実施済みを示す値に更新し、該起動順位の次に高い起動順位に関連付けられた前記位置を示す情報と、前記デバイスＩＤとを前記進捗管理情報から求めることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記設定情報は、
前記選定した特定のＯＳの起動に際して実行するソフトウェアプログラムに前記位置を示す情報と、前記デバイスＩＤとを更新する命令を含む場合にも、前記実行手段が前記ソフトウェアプログラムに記述された処理を実行することによって、更新されることを特徴とする請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記位置を示す情報とは、
前記デバイスにおけるブートセクタのセクタ情報であることを特徴とする請求項１乃至請求項３の何れかに記載された情報処理装置。
【請求項５】
前記進捗管理情報は、
前記起動順位、前記ＯＳの種別情報、前記デバイスＩＤ、前記ブートセクタのセクタ情報及び前記実行結果を関連付けた情報であることを特徴とする請求項１乃至請求項４の何れかに記載の情報処理装置。
【請求項６】
請求項１乃至請求項５の何れかに記載の情報処理装置を起動するに際してブート可能な起動媒体であって、前記ＯＳ選定手段を表すコンピュータに読み出し可能な情報を含むことを特徴とする記憶媒体。
【請求項７】
実行部を用いて、１つ以上のＯＳが格納されたデバイスを識別可能なデバイスＩＤと、該ＯＳを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のＯＳを選定し、
前記1つ以上のＯＳの起動順位と、前記位置を示す情報と、前記デバイスＩＤとを含み、前記1つ以上のＯＳを起動する順序と、該ＯＳを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のＯＳの前記位置を示す情報と、前記デバイスＩＤとを求めると共に、求めた前記位置を示す情報と、前記デバイスＩＤとに基づいて、前記設定情報を更新することを特徴とする情報処理装置の起動制御方法。
【請求項８】
前記設定情報を更新するに際して、
前記起動順位と関連づけられた前記特定のＯＳを起動したか否かを示す実行結果の値を、前記進捗管理情報から求めると共に、求めた前記実行結果の値が未実施を示す場合に、その値を、実施済みを示す値に更新し、該起動順位の次に高い起動順位に関連付けられた前記位置を示す情報と、前記デバイスＩＤとを前記進捗管理情報から求めることを特徴とする請求項７に記載の情報処理装置の起動制御方法。
【請求項９】
情報処理装置を動作制御するコンピュータ・プログラムであって、そのコンピュータ・プログラムにより、
１つ以上のＯＳが格納されたデバイスを識別可能なデバイスＩＤと、該ＯＳを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のＯＳを選定する機能と、
前記1つ以上のＯＳの起動順位と、前記位置を示す情報と、前記デバイスＩＤとを含み、前記1つ以上のＯＳを起動する順序と、該ＯＳを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のＯＳの前記位置を示す情報と、前記デバイスＩＤとを求めると共に、求めた前記位置を示す情報と、前記デバイスＩＤとに基づいて、前記設定情報を更新する機能と、
をコンピュータに実現させることを特徴とするコンピュータ・プログラム。
【請求項１０】
前記設定情報を更新するに際して、
前記起動順位と関連づけられた前記特定のＯＳを起動したか否かを示す実行結果の値を、前記進捗管理情報から求めると共に、求めた前記実行結果の値が未実施を示す場合に、その値を、実施済みを示す値に更新し、該起動順位の次に高い起動順位に関連付けられた前記位置を示す情報と、前記デバイスＩＤとを前記進捗管理情報から求めることを特徴とする請求項９に記載のコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、電子機器等において動作可能なオペレーティングシステムの起動を制御及び管理する技術分野に関する。
【背景技術】
【０００２】
一般的に知られたパーソナルコンピュータ（Ｐｅｒｓｏｎａｌ＿ｃｏｍｐｕｔｅｒ：以降、「ＰＣ」と称する）やサーバ装置及びスマートフォン等の電子機器は、オペレーティングシステム（Ｏｐｅｒａｔｉｎｇ＿Ｓｙｓｔｅｍ：以降、「ＯＳ」と称する）がプリインストールされた状態で広く普及している。
【０００３】
そのため、例えば、電子機器を開発、製造及び修理等を行うメーカは、ＣＤ（Ｃｏｍｐａｃｔ＿Ｄｉｓｃ：以降、「ＣＤ」と称する）やＤＶＤ（Ｄｉｇｉｔａｌ＿Ｖｅｒｓａｔｉｌｅ＿Ｄｉｓｃ：以降、「ＤＶＤ」と称する）等の記録媒体を用いて電子機器にＯＳをプリインストールする必要がある。
【０００４】
より具体的に、電子機器を開発する場合、例えば、メーカの開発者は、種別の異なる複数のＯＳにおいて電子機器が正常に動作する否かを評価する必要がある。
【０００５】
また、電子機器を製造、または修理する場合に、例えば、電子機器の製造を担当する作業者は、複数枚のインストール用記憶媒体を用いてＯＳをプリインストールする必要がある。さらに、作業者は、テストプログラムモジュール群が格納された記憶媒体を用いて、当該電子機器が正常に動作するか否かを検査する必要がある。
【０００６】
このような状況において、メーカは、電子機器にＯＳをプリインストールする、またはその電子機器の検査を効率よく実施したいという要求がある。このため、電子機器にＯＳを効率よくプリインストールする、またはその電子機器の機能を検査するための技術は、多岐にわたり存在する。
【０００７】
例えば、特許文献１は、情報処理装置及び情報処理装置制御方法に関する技術を開示する。
【０００８】
特許文献１に開示された情報処理装置は、ＯＳを起動する際に、ＯＳが格納された複数のハードディスクドライブ（Ｈａｒｄ＿ｄｉｓｋ＿ｄｒｉｖｅ：以降、「ＨＤＤ」と称する）の中から１つのＨＤＤを選定すると共に、選定したＨＤＤに格納されたＯＳを起動する。
【０００９】
より具体的に、係る情報処理装置は、複数のＨＤＤの中から１つのＨＤＤを選定する際に、それぞれのＨＤＤに関連付けられた起動順位（ＯＳを起動する順位）を含むＨＤＤ認識順番テーブルを参照する。
【００１０】
さらに、情報処理装置は、ＨＤＤ認識順番テーブルに基づいて、１つのＨＤＤを選定すると共に、選択したＨＤＤに格納されたＯＳを起動する。
【００１１】
また、係る情報処理装置は、選択したＨＤＤに格納されたＯＳを起動する際に、起動するＯＳと基本入出力システム（Ｂａｓｉｓ＿Ｉｎｐｕｔ／Ｏｕｔｐｕｔ＿Ｓｙｓｔｅｍ：以降、「ＢＩＯＳ」と称する）との間で受け渡される起動情報を取得する。
【００１２】
情報処理装置は、取得した起動情報と、予め決められた期待値とが一致するか否かを判定することによって、リグレッション試験における作業者の手間を軽減する。
【００１３】
特許文献２は、ハードディスクを利用したコンピュータシステムの検査方法に関する技術を開示する。
【００１４】
より具体的に、特許文献２に開示された検査方法は、ＰＣに搭載されたＨＤＤを２つの領域（第１分割領域と第２分割領域）に分割する。
【００１５】
係る検査方法は、第１分割領域にテストプログラムモジュールを格納する。さらに、検査方法は、第２分割領域にプレインストールするプログラムファイルのイメージデータファイルと、そのイメージデータファイルを展開するプログラムモジュールとを格納する。
【００１６】
次に、検査方法は、第１分割領域に格納されたテストプログラムを使用してＰＣを検査すると共に、検査終了後には第２分割領域のイメージデータファイルを第１分割領域に展開することによって、ＨＤＤの内容をプレインストールした状態にする。
【００１７】
これにより、例えば、作業者は、インストールに要する記憶媒体の入れ替え作業と、テストプログラムモジュール群が格納された記憶媒体の入れ替え作業とを軽減することができる。
【先行技術文献】
【特許文献】
【００１８】
【特許文献１】ＷＯ２０１２１１７５５６号公報
【特許文献２】特開２００１−３３１３０８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１９】
しかしながら、上述した手法によって電子機器を開発、製造及び修理等を行う場合に、例えば、作業者は、ＯＳのプリインストールに使用するＣＤ等の記憶媒体を入れ替える手間と、テストプログラムモジュール群が格納された記憶媒体を入れ替える手間とが発生する。そのため、例えば、電子機器の生産量が多いメーカでは、それら記憶媒体を入れ替えに要する膨大な工数が発生する。
【００２０】
特許文献１に開示された情報処理装置は、ＨＤＤ認識順序テーブルに記載された複数のＨＤＤと、そのＨＤＤに関連付けられたＯＳの起動順位に基づいて、起動するＨＤＤを選定する。
【００２１】
また、情報処理装置のブート制御部は、ＨＤＤ認識順序テーブルに記載されたＯＳの起動順位を１つ繰り上げることによって、当該起動順位を変更する。
【００２２】
即ち、特許文献１には、ブート制御部によって、認識順序テーブルに記載された起動順位を繰り上げることが記載されているに留まり、起動したＯＳにおいて動作可能な各種プログラムモジュールによって、ＨＤＤに関連付けられたＯＳの起動順位を変更することについては、考慮されておらず何ら述べられていない。
【００２３】
また、特許文献１では、ＨＤＤ認識順序テーブルを参照すると共に、ＨＤＤ認識順序テーブルの情報に基づいて、最も起動順位の高いＨＤＤから起動する処理をＢＩＯＳプログラムに追加する必要がある。つまり、特許文献１は、ＢＩＯＳプログラムをカスタマイズする必要がある。
【００２４】
特許文献２では、各種ＯＳ用のイメージデータファイルを第２分割領域に格納することが記載されているに留まり、第２分割領域に格納された各種ＯＳ用のイメージデータファイルをどのように選定するのか具体的に開示していないので、各種ＯＳ用のイメージデータファイルを選定することができない。
【００２５】
本発明の主たる目的は、起動可能な複数のＯＳがある場合であっても、起動するＯＳを効率よく選定することが可能な情報処理装置等を提供することにある。
【課題を解決するための手段】
【００２６】
上記の課題を達成すべく、本発明に係る情報処理装置は、以下の構成を備えることを特徴とする。
【００２７】
即ち、本発明に係る情報処理装置は、
１つ以上のＯＳが格納されたデバイスを識別可能なデバイスＩＤと、該ＯＳを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のＯＳを選定するＯＳ選定手段と、
前記1つ以上のＯＳの起動順位と、前記位置を示す情報と、前記デバイスＩＤとを含み、前記1つ以上のＯＳを起動する順序と、該ＯＳを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のＯＳの前記位置を示す情報と、前記デバイスＩＤとを求めると共に、求めた前記位置を示す情報と、前記デバイスＩＤとに基づいて、前記設定情報を更新する制御手段と、
前記ＯＳ選定手段と、前記制御手段と、前記設定情報と、前記進捗管理情報とを記憶可能な記憶手段と、
前記自装置の起動に際して前記ＯＳ選定手段を実行し、前記ＯＳの起動に際して前記制御手段を実行する実行手段と、
を備えることを特徴とする。
【００２８】
或いは、上記に示すＯＳ選定手段を含む記憶媒体によっても、同目的を達成される。
【００２９】
また、同目的を達成すべく、本発明に係る情報処理装置の起動制御方法は、以下の構成を備えることを特徴とする。
【００３０】
即ち、本発明に係る情報処理装置の起動制御方法は、
実行部を用いて、１つ以上のＯＳが格納されたデバイスを識別可能なデバイスＩＤと、該ＯＳを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のＯＳを選定し、
前記1つ以上のＯＳの起動順位と、前記位置を示す情報と、前記デバイスＩＤとを含み、前記1つ以上のＯＳを起動する順序と、該ＯＳを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のＯＳの前記位置を示す情報と、前記デバイスＩＤとを求めると共に、求めた前記位置を示す情報と、前記デバイスＩＤとに基づいて、前記設定情報を更新することを特徴とする。
【００３１】
尚、同目的は、上記の各構成を有する情報処理装置及びその起動制御方法を、コンピュータによって実現するコンピュータ・プログラム、及びそのコンピュータ・プログラムが格納されている、コンピュータ読み取り可能な記憶媒体によっても達成される。
【発明の効果】
【００３２】
本発明によれば、起動可能な複数のＯＳがある場合であっても、起動するＯＳを効率よく選定することが可能な情報処理装置等を提供することができる。
【図面の簡単な説明】
【００３３】
【図１】本発明の第１の実施形態における情報処理装置の構成を示すブロック図である。
【図２】本発明の第１の実施形態における進捗管理情報の構成（フォーマット）を具体的に例示した図である。
【図３】本発明の第２の実施形態を実現可能なコンピュータ（情報処理装置）のハードウェア構成を例示的に示すブロック図である。
【図４】本発明の第２の実施形態を実現可能な記憶媒体のシステム構成を例示的に示す図である。
【図５】本発明の第２の実施形態における情報処理装置が起動に際して実行するＯＳ選定モジュールの処理を示すフローチャートである。
【図６】本発明の第２の実施形態における情報処理装置においてＯＳが起動した際に実行する制御モジュールの処理を示すフローチャートである。
【図７】本発明の第３の実施形態における実現可能なコンピュータ（情報処理装置）のハードウェア構成を例示的に示すブロック図である。
【発明を実施するための形態】
【００３４】
以下、本発明の実施形態について図面を参照して詳細に説明する。
【００３５】
＜第１の実施形態＞
図１は、本発明の第１の実施形態における情報処理装置１の構成を示すブロック図である。図１において、情報処理装置１は、実行部２と、記憶部３とを有する。
【００３６】
より具体的に、実行部２は、命令に従って各種処理を実行可能である。
【００３７】
記憶部３は、コンピュータによるデータの読み書きが可能な記憶デバイスである。
【００３８】
より具体的に、一例として、記憶部３は、サーバ装置等の電子機器に搭載されたＨＤＤ、ＳＳＤ（Ｓｏｌｉｄ＿Ｓｔａｔｅ＿Ｄｒｉｖｅ）、ＣＤ等の記憶媒体、外部記憶装置（例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ＿Ｓｅｒｉａｌ＿Ｂｕｓ）メモリ）等の不揮発性記憶素子を採用することができる。
【００３９】
記憶部３には、ＯＳ選定モジュール１０１、制御モジュール１０２、設定情報１０３、進捗管理情報１０４、第１のＯＳ１０５及び第２のＯＳ１０６が格納されている。
【００４０】
設定情報１０３は、情報処理装置１（自装置）が起動するに際してロードするＯＳ（以降、説明の便宜上、単に「起動するＯＳ」と略記する）が格納されたデバイスにおけるブートセクタのセクタ情報（つまり、開始セクタの位置情報、以降、単に「ブートセクタのセクタ情報」と称する）と、そのＯＳを格納するデバイスを一意に識別可能なデバイス識別子（Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ：以降、「ＩＤ」と称する）とを含む。
【００４１】
また、設定情報１０３は、後述するＯＳ選定モジュール１０１、制御モジュール１０２及び起動したＯＳにおいて動作可能なソフトウェアプログラムによって、更新する（書き換える）ことができる。
【００４２】
より具体的に、一例として、起動したＯＳにおいて動作可能なソフトウェアプログラムとは、例えば、ＭＳ−ＤＯＳ（登録商標：以降、省略する）を起動するに際して実行すべき動作が予め記述されたスタートアップバッチ（Ａｕｔｏｅｘｅｃ．Ｂａｔ）である。
【００４３】
スタートアップバッチにデバイスＩＤと、ブートセクタのセクタ情報とを書き換える処理（例えば、上書き処理）が含まれている場合に、実行部２は、当該スタートアップバッチの処理に従って、設定情報１０３を書き換えることができる。
【００４４】
次に、以下の説明において、説明の便宜上、２つの異なる種別のＯＳを第１のＯＳ１０５と第２のＯＳ１０６と称する。また、第１のＯＳ１０５と第２のＯＳ１０６とを総称して、単に、ＯＳと称する（以下、各実施形態においても同様）。
【００４５】
より具体的に、第１のＯＳ１０５と第２のＯＳ１０６とは、例えば、一般的に知られたＭＳ−ＤＯＳやＷｉｎｄｏｗｓ（登録商標：以降、省略する）、Ｌｉｎｕｘ（登録商標：以降、省略する）等の情報処理装置１において動作可能なＯＳである。
【００４６】
ＯＳ選定モジュール１０１は、設定情報１０３を参照すると共に、設定情報１０３の値を求める。さらに、ＯＳ選定モジュール１０１は、求めた値に基づいて、起動する特定のＯＳ（以下、単に「ＯＳ」とも記す）を選定する。
【００４７】
より具体的に、ＯＳ選定モジュール１０１は、設定情報１０３からＯＳを起動するに際して参照するデバイスにおけるブートセクタのセクタ情報と、そのＯＳが格納されたデバイス（つまり、参照されるデバイス）のデバイスＩＤとを求める。
【００４８】
次に、ＯＳ選定モジュール１０１は、求めた当該ブートセクタのセクタ情報と、デバイスのデバイスＩＤとに基づいて、そのデバイスにおける当該ＯＳのブートセクタにポインタを移動する。
【００４９】
これにより、実行部２は、移動したブートセクタに格納された情報に基づいて、ＯＳ選定モジュール１０１が選定した特定のＯＳの起動処理を開始することができる。
【００５０】
尚、実行部２がブートセクタに格納された情報に基づいて、起動処理を実行する技術自体は、現在では一般的な技術を採用することができるので、本実施形態における詳細な説明は省略する（以下、各実施形態においても同様）。
【００５１】
設定情報１０３の値を求めた際に、ＯＳ選定モジュール１０１は、設定情報１０３の値を所定の既定値（初期値、デフォルト値とも記す）に更新する（書き換える）。
【００５２】
尚、ＯＳ選定モジュール１０１が設定情報１０３の値を所定の既定値に更新する動作については、第２の実施形態において後述する。
【００５３】
次に、制御モジュール１０２は、進捗管理情報１０４を参照する。
【００５４】
図２は、本発明の第１の実施形態における進捗管理情報１０４の構成（フォーマット）を具体的に例示した図である。
【００５５】
進捗管理情報１０４とは、１つ以上のＯＳの起動順位、ＯＳの種別情報、デバイスＩＤ、ブートセクタのセクタ情報（開始セクタの情報）及び実行結果を関連付けた情報である。
【００５６】
より具体的に、図２において１列目は、情報処理装置１がＯＳを起動する順位（起動順位）を示す。２列目は、情報処理装置１が起動するＯＳの種別情報を示す。３列目は、情報処理装置１が起動する際に参照するデバイスのデバイスＩＤを示す。４列目は、ＯＳが格納されたデバイスにおけるブートセクタのセクタ情報を示す。５列目は、ＯＳを起動したか否かの情報を含む実行結果を示す。
【００５７】
ここで、図２において１列目に示す起動順位は、最も起動順位が高い場合に、「０１」と示す。即ち、係る起動順位は、起動順位が高い順に「０１」、「０２」、「０３」・・・「ｎ」、「ｎ＋１」と示す。
【００５８】
尚、上述した本実施形態では、説明の便宜上、一例として、進捗管理情報１０４は、起動順位、ＯＳの種別情報、デバイスＩＤ、ブートセクタのセクタ情報及び実行結果を含む構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、進捗管理情報１０４は、さらに、例えば、ソフトウェアプログラムの実行結果やデバイスのデバイス名等の各種情報を含む構成を採用してもよい。
【００５９】
制御モジュール１０２は、進捗管理情報１０４に格納された起動順位（図２に示す１列目）の高い順に、当該起動順位に関連付けられた実行結果（図２に示す４列目）の値を求める。
【００６０】
さらに、制御モジュール１０２は、求めた実行結果の値が「実施済み」を示すか否かを判別する。
【００６１】
制御モジュール１０２は、実行結果の値が「実施済み」を示す場合に、次に高い起動順位に関連付けられた実行結果の値を求めると共に、求めた実行結果の値が「実施済み」を示すか否かを判別する。
【００６２】
即ち、制御モジュール１０２は、求めた実行結果の値が「未実施」（つまり、実施済みでない）を示すと判別するまで起動順位が高い順に実行結果を求めると共に、求めた実行結果の値を「実施済み」を示すか否かを判別する。
【００６３】
一方で、制御モジュール１０２は、求めた実行結果の値が「未実施」を示す場合に、進捗管理情報１０４の実行結果の値を「未実施」から「実施済み」を示す値に更新する。
【００６４】
さらに、制御モジュール１０２は、進捗管理情報１０４から次に高い起動順位に関連付けられたデバイスＩＤと、ブートセクタのセクタ情報とを求める。
【００６５】
より具体的に、例えば、第１のＯＳ１０５の起動順位が最も高く、第２のＯＳ１０６の起動順位が第１のＯＳ１０５の次に高い場合に、制御モジュール１０２は、進捗管理情報１０４から記憶部３のデバイスＩＤと、第２のＯＳ１０６が格納された記憶部３におけるブートセクタのセクタ情報とを求める。
【００６６】
制御モジュール１０２は、求めたブートセクタのセクタ情報と、デバイスＩＤとに基づいて、設定情報１０３を更新する。
【００６７】
これにより、情報処理装置１は、次に起動する際に、更新された設定情報１０３に基づいて、１つ以上のＯＳが格納されたデバイスから起動する特定のＯＳを選定することができる。
【００６８】
尚、上述した本実施形態では、説明の便宜上、一例として、情報処理装置１は、第１のＯＳ１０５と第２のＯＳ１０６との種別の異なる２つのＯＳを起動する構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、情報処理装置１は、１つ以上のＯＳを起動する構成を採用してもよい。
【００６９】
尚、上述したモジュールとは、ソフトウェアプログラムの機能（処理）単位と捉えることができる。これらの各モジュールは、専用のハードウェアによって実現してもよい。また、各モジュールは、コンピュータに読み出し可能な情報を、例えば、不図示の記憶媒体に格納すると共に、格納した当該情報を、実行部２に読み出して解釈し実行することによって実現してもよい。
【００７０】
このように本実施の形態に係る情報処理装置１によれば、起動可能な複数のＯＳがある場合であっても、起動するＯＳを効率よく選定することができる。その理由は、以下に述べる通りである。
【００７１】
即ち、情報処理装置１の実行部２は、ＯＳ選定モジュール１０１に従って処理を実行することによって、１つ以上のＯＳの中から設定情報１０３の値に基づき、起動する特定のＯＳを選定することができるからである。また、設定情報１０３の値は、ＯＳ選定モジュール１０１、制御モジュール１０２及び起動したＯＳにおいて動作可能なソフトウェアプログラムによって、容易に書き換えることができる。そのため、実行部２は、ＯＳ選定モジュール１０１に従って処理を実行することによって、変更された設定情報１０３の値に基づき、起動する特定のＯＳを効率よく選定することができるからである。
【００７２】
また、情報処理装置１は、ＣＤ等の記憶媒体を入れ替える手間を軽減することができる。その理由は、実行部２は、設定情報１０３の値に基づいて、起動する特定のＯＳを選定することができるからである。即ち、情報処理装置１は、起動する際に、記憶媒体を必要としない、または最小限の記憶媒体において動作することができるからである。
【００７３】
＜第２の実施形態＞
次に、上述した本発明の第１の実施形態に係る情報処理装置１を基本とする第２の実施形態について説明する。以下の説明においては、本実施形態に係る特徴的な部分を中心に説明する。その際、上述した各実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明は省略する。
【００７４】
図３は、本発明の第２の実施形態を実現可能なコンピュータ（情報処理装置１０）のハードウェア構成を例示的に示すブロック図である。
【００７５】
図３において、情報処理装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ＿Ｐｒｏｃｅｓｓｉｎｇ＿Ｕｎｉｔ）１１、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ＿Ｄｉｓｃ＿Ｒｅａｄ＿Ｏｎｌｙ＿Ｍｅｍｏｒｙ）等の記憶媒体１８に格納されたデータを読み書き可能なリーダライタ１２、ＲＯＭ（Ｒｅａｄ＿Ｏｎｌｙ＿Ｍｅｍｏｒｙ）１３、ＲＡＭ（Ｒａｎｄｏｍ＿Ａｃｃｅｓｓ＿Ｍｅｍｏｒｙ）１４、ＨＤＤ１５、外部装置との通信インタフェース（Ｉｎｔｅｒｆａｃｅ：以降、「Ｉ／Ｆ」と称する）１６を備え、これら構成がバス１７（通信線）を介して接続された構成を有する。
【００７６】
より具体的に、ＣＰＵ１１は、第１の実施形態における実行部２に相当する。また、ＣＰＵ１１は、情報処理装置１０の全体の動作を司る。次に、ＨＤＤ１５は、第１の実施形態における記憶部３に相当する。
【００７７】
本実施形態において、ＨＤＤ１５には、一例として、第１の実施形態において説明した設定情報１０３、進捗管理情報１０４及び第２のＯＳ１０６が格納されている。
【００７８】
また、記憶媒体１８には、一例として、第１の実施形態において説明したＯＳ選定モジュール１０１、制御モジュール１０２及び第１のＯＳ１０５が格納されている。
【００７９】
次に、本発明の第２の実施形態に係るより具体的な情報処理装置１０の動作について説明する。
【００８０】
ここでは、情報処理装置１０は、まず、第１のＯＳ１０５を起動すると共に、起動した第１のＯＳ１０５において各種ソフトウェアプログラムを実行することとする。次に、情報処理装置１０は、第２のＯＳ１０６を起動することとする。
【００８１】
また、一例として、第１のＯＳ１０５は、ＭＳ−ＤＯＳとする。第２のＯＳ１０６は、Ｌｉｎｕｘとする。実行部２は、ＭＳ−ＤＯＳが起動した際に、スタートアップバッチである「Ａｕｔｏｅｘｅｃ．Ｂａｔ」に従って処理を実行することとする。
【００８２】
「Ａｕｔｏｅｘｅｃ．Ｂａｔ」には、例えば、不図示の第１のソフトウェアプログラムを実行する命令と、制御モジュール１０２を実行する命令と、自装置を再起動する命令とが予め記述されていることとする。
【００８３】
不図示の第１のソフトウェアプログラムとは、一例として、セットアッププログラムやＷｉｎｄｏｗｓインストーラー、情報処理装置１０において発生した不具合を修正するソフトウェアプログラム等である。
【００８４】
情報処理装置１０は、記憶媒体１８を起動可能なように、例えば、ＢＩＯＳ設定メニューを用いてリーダライタ１２から起動するように設定されていることとする。
【００８５】
記憶媒体１８は、例えば、作業者による自装置の起動操作に応じて、情報処理装置１０を起動可能なブータブルＣＤである。また、記憶媒体１８は、例えば、一般的に知られたＥｌ＿Ｔｏｒｉｔｏ規格に基づいて作成されたブータブルＣＤである。
【００８６】
図４は、本発明の第２の実施形態を実現可能な記憶媒体１８のシステム構成を例示的に示す図である。
【００８７】
より具体的に、図４において「Ｂｏｏｔ＿Ｒｅｃｏｒｄ＿Ｖｏｌｕｍｅ」は、セクタ１７の位置に格納されている。また、「Ｂｏｏｔ＿Ｒｅｃｏｒｄ＿Ｖｏｌｕｍｅ」は、「Ｂｏｏｔｉｎｇ＿Ｃａｔａｌｏｇ」の位置を示すセクタ情報を含む。次に、「Ｉｎｉｔｉａｌ／Ｄｅｆａｕｌｔ＿Ｅｎｔｒｙ」を含む「Ｂｏｏｔｉｎｇ＿Ｃａｔａｌｏｇ」には、記憶媒体１８が起動可能（つまり、ブータブルＣＤ）か否かを示す情報と、「Ｂｏｏｔ_Ｓｅｃｔｏｒ」の位置を示すセクタ情報とを含む。
【００８８】
また、図４において「Ｂｏｏｔ_Ｓｅｃｔｏｒ」には、ＯＳ選定モジュール１０１と、ＯＳを起動することが可能な各種情報とを含む。
【００８９】
尚、図４に示す「Ｂｏｏｔ＿Ｒｅｃｏｒｄ＿Ｖｏｌｕｍｅ」、「Ｂｏｏｔｉｎｇ＿Ｃａｔａｌｏｇ」及びＯＳ選定モジュール１０１を除く「Ｂｏｏｔ_Ｓｅｃｔｏｒ」を含む記憶媒体１８のシステム構成自体は、例えば、現在では一般的なＥｌ＿Ｔｏｒｉｔｏ規格に基づく技術等を採用することができるので、本実施形態における詳細な説明は省略する（以下、各実施形態においても同様）。
【００９０】
本実施形態において、ＣＰＵ１１は、作業者による自装置の起動操作に応じて、図４に示す「Ｂｏｏｔ＿Ｒｅｃｏｒｄ＿Ｖｏｌｕｍｅ」を参照すると共に、参照した「Ｂｏｏｔ＿Ｒｅｃｏｒｄ＿Ｖｏｌｕｍｅ」に基づいて、対応する「Ｂｏｏｔｉｎｇ＿Ｃａｔａｌｏｇ」にポインタを移動する。
【００９１】
さらに、ＣＰＵ１１は、「Ｂｏｏｔｉｎｇ＿Ｃａｔａｌｏｇ」を参照すると共に、参照した「Ｂｏｏｔｉｎｇ＿Ｃａｔａｌｏｇ」に基づいて、対応する「Ｂｏｏｔ_Ｓｅｃｔｏｒ」にポインタを移動する。ＣＰＵ１１は、「Ｂｏｏｔ_Ｓｅｃｔｏｒ」に含まれるＯＳ選定モジュール１０１に従い処理を実行する。
【００９２】
説明の便宜上、上述した構成を例に説明するが、これに限定されない（以下の実施形態においても同様）。
【００９３】
図５は、本発明の第２の実施形態における情報処理装置１０が起動に際して実行するＯＳ選定モジュール１０１の処理を示すフローチャートである。
【００９４】
図５に示すフローチャートに沿って情報処理装置１０の処理手順を説明する。このフローチャートに記載された処理は、記憶媒体１８から読み出されたＯＳ選定モジュール１０１に従ってＣＰＵ１１が実行することによって実現される。
【００９５】
ステップＳ１：
ＣＰＵ１１は、まず、ＨＤＤ１５に格納された設定情報１０３を参照すると共に、設定情報１０３の値を求める。
【００９６】
ここでは、ＣＰＵ１１は、設定情報１０３から第１のＯＳ１０５が格納された記憶媒体１８におけるブートセクタのセクタ情報と、第１のＯＳ１０５が格納された記憶媒体１８を読み込むリーダライタ１２のデバイスＩＤとを求める。
【００９７】
ステップＳ２：
ＣＰＵ１１は、設定情報１０３から求めた値と、所定の既定値とを比較する。
【００９８】
ここでは、一例として、所定の既定値とは、第１のＯＳ１０５が格納された記憶媒体１８におけるブートセクタのセクタ情報と、リーダライタ１２のデバイスＩＤとする。
【００９９】
ステップＳ３において「ＹＥＳ」：
ＣＰＵ１１は、設定情報１０３から求めた値と、所定の既定値とを比較した結果、求めた値と、所定の既定値とが同じ値であると判別した場合に、処理をステップＳ５に進める。
【０１００】
ステップＳ３において「ＮＯ」：
ＣＰＵ１１は、設定情報１０３から求めた値と、所定の既定値とを比較した結果、求めた値と、所定の既定値とが異なる値であると判別した場合に、処理をステップＳ４に進める。
【０１０１】
ステップＳ４：
ＣＰＵ１１は、設定情報１０３の値を所定の既定値に更新すると共に、処理をステップＳ５に進める。
【０１０２】
ステップＳ５：
ＣＰＵ１１は、求めたデバイスＩＤと、ブートセクタのセクタ情報に基づいて、デバイスにおける起動するＯＳのブートセクタにポインタを移動する。
【０１０３】
図６は、本発明の第２の実施形態における情報処理装置１０においてＯＳが起動した際に実行する制御モジュール１０２の処理を示すフローチャートである。
【０１０４】
図６に示すフローチャートに沿って情報処理装置１０の処理手順を説明する。このフローチャートに記載された処理は、記憶媒体１８から読み出された制御モジュール１０２に従ってＣＰＵ１１が実行することによって実現される。
【０１０５】
ＣＰＵ１１は、Ａｕｔｏｅｘｅｃ．Ｂａｔの記述に従って、第１のソフトウェアプログラム（不図示）を実行する。次に、ＣＰＵ１１は、制御モジュール１０２に従って処理を開始する。
【０１０６】
ステップＳ１１：
ＣＰＵ１１は、進捗管理情報１０４を参照すると共に、進捗管理情報１０４に格納された起動順位の高い順に、当該起動順位に関連付けられた実行結果の値を求める。
【０１０７】
ステップＳ１２
ＣＰＵ１１は、求めた実行結果の値が「実施済み」を示すか否かを判別する。
【０１０８】
ステップＳ１３において「ＹＥＳ」：
ＣＰＵ１１は、求めた実行結果の値が「実施済み」を示すか否かを判別した結果、実行結果の値が「実施済み」を示すと判別した場合に、処理をステップＳ１４に処理を進める。
【０１０９】
ステップＳ１３において「ＮＯ」：
ＣＰＵ１１は、求めた実行結果の値が「実施済み」を示すか否かを判別した結果、実行結果の値が「未実施」（つまり、実施済みでない）を示すと判別した場合に、処理をステップＳ１５に処理を進める。
【０１１０】
ステップＳ１４：
ＣＰＵ１１は、進捗管理情報１０４を参照すると共に、進捗管理情報１０４から次に起動順位の高い起動順位に関連付けられた実行結果の値を求めると共に、ステップＳ１２に処理を戻す。
【０１１１】
ステップＳ１５：
ＣＰＵ１１は、求めた実行結果の値を更新する。より具体的に、ＣＰＵ１１は、進捗管理情報１０４に格納された実行結果の値を「未実施」から「実施済み」を示す値に更新する。
【０１１２】
ステップＳ１６：
ＣＰＵ１１は、進捗管理情報１０４から次に高い起動順位に関連付けられたデバイスＩＤと、ブートセクタのセクタ情報とを求める。
【０１１３】
ここでは、実行部２は、進捗管理情報１０４から第１のＯＳ１０５の次に高い起動順位を有する第２のＯＳ１０６が格納されたＨＤＤ１５におけるブートセクタのセクタ情報と、第２のＯＳ１０６が格納されたＨＤＤ１５のデバイスＩＤとを求める。
【０１１４】
ステップＳ１７：
ＣＰＵ１１は、進捗管理情報１０４から求めたデバイスＩＤと、ブートセクタのセクタ情報とに基づいて、設定情報１０３を更新する。
【０１１５】
これにより、情報処理装置１０は、再起動した際に、ＯＳ選定モジュール１０１に従って処理を実行することによって、ステップＳ１７において更新した設定情報１０３の値に基づいて、ＨＤＤ１５に格納された第２のＯＳ１０６（つまり、特定のＯＳ）を起動することができる。
【０１１６】
尚、上述した本実施形態では、説明の便宜上、一例として、情報処理装置１０は、ＨＤＤ１５及び記憶媒体１８に格納された種別の異なる１つ以上のＯＳを起動する構成を例に説明した。
【０１１７】
しかしながら本発明に係る実施形態は、係る構成に限定されず、情報処理装置１０は、例えば、通信Ｉ／Ｆ１６にＵＳＢ接続形式の外部記憶装置（例えば、ＵＳＢメモリ）に格納されたＯＳを起動する構成を採用することができる。
【０１１８】
その場合に、ＵＳＢメモリは、起動可能なように、例えば、先頭セクタにブートセクタ（Ｍａｓｔｅｒ＿Ｂｏｏｔ＿Ｒｅｃｏｒｄ：以降、「ＭＢＲ」と称する）を配置する構成を採用してもよい。
【０１１９】
尚、上述した本実施形態では、説明の便宜上、一例として、記憶媒体１８は、ＯＳ選定モジュール１０１と制御モジュール１０２とを含む構成を例に説明した。また、ＨＤＤ１５は、設定情報１０３と進捗管理情報１０４とを含む構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、記憶媒体１８は、ＯＳ選定モジュール１０１を含む構成を採用してもよい。また、ＨＤＤ１５は、設定情報１０３と進捗管理情報１０４と制御モジュール１０２とを含む構成を採用してもよい。
【０１２０】
また、上述した本実施形態では、説明の便宜上、一例として、ＨＤＤ１５は、設定情報１０３を含む構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されない。ＨＤＤ１５に設定情報１０３が無い（つまり、記憶媒体１８にも設定情報１０３が無い）場合に、ＯＳ選定モジュール１０１は、上述した所定の既定値（初期値）のＯＳを起動する。さらに、当該所定の既定値のＯＳを起動した際に、制御モジュール１０２は、上述した各種処理を実行すると共に、設定情報１０３をＨＤＤ１５に格納する構成を採用することができる。
【０１２１】
このように本実施の形態に係る情報処理装置１０によれば、第１の実施形態において説明した効果を享受できると共に、さらに、１つ以上のＯＳが複数のデバイスに格納された場合であっても、起動する特定のＯＳを効率よく選定することができる。その理由は、情報処理装置１０は、制御モジュール１０２に従って処理を実行することによって、進捗管理情報１０４に格納された値に基づいて、設定情報１０３の値を更新することができるからである。
【０１２２】
＜第３の実施形態＞
次に、上述した本発明の第２の実施形態に係る情報処理装置１０を基本とする第３の実施形態について説明する。以下の説明においては、本実施形態に係る特徴的な部分を中心に説明する。その際、上述した各実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明は省略する。
【０１２３】
本発明の第３の実施形態における情報処理装置１０について、図６、図７を参照して説明する。
【０１２４】
図７は、本発明の第３の実施形態における実現可能なコンピュータ（情報処理装置１０）のハードウェア構成を例示的に示すブロック図である。
【０１２５】
図７において、情報処理装置１０は、通信ネットワーク３３を介して管理サーバ３２と通信可能に接続する。
【０１２６】
通信ネットワーク３３とは、例えば、携帯電話事業者が所有する各種通信回線、インターネットサービスプロバイダ等が提供するインターネット等の一般的な通信回線である。
【０１２７】
管理サーバ３２には、進捗管理情報１０４、第２のＯＳ１０６及び制御モジュール１０７が格納されている。
【０１２８】
制御モジュール１０７は、第２の実施形態において説明した制御モジュール１０２の動作に、さらに、情報処理装置１０毎に異なる進捗管理情報１０４を参照すると共に、各種処理を実行する点が異なる。
【０１２９】
即ち、制御モジュール１０７は、例えば、１つ以上の情報処理装置１０が通信ネットワーク３３を介して管理サーバ３２と通信可能に接続する場合に、それぞれの情報処理装置１０に関連付けられた進捗管理情報１０４を参照すると共に、各種処理を実行する。
【０１３０】
その場合に、管理サーバ３２には、進捗管理情報１０が情報処理装置１０毎に対応付けられて格納されている。
【０１３１】
より具体的に、制御モジュール１０７は、情報処理装置１０から情報処理装置１０を識別可能な識別情報を受信する。
【０１３２】
ここで、識別情報とは、情報処理装置１０を一意に識別可能な情報を含む。
【０１３３】
より具体的に、一例として、識別情報は、外部記憶装置３１に予め格納された不図示の識別ＩＤである。
【０１３４】
尚、上述した本実施形態では、説明の便宜上、一例として、識別情報は、外部記憶装置３１に予め格納された不図示の識別ＩＤを例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されない。
【０１３５】
識別情報は、情報処理装置１０が有するネットワークカードのＭＡＣ（Ｍｅｄｉａ＿Ａｃｃｅｓｓ＿Ｃｏｎｔｒｏｌ）アドレスを採用してもよいし、情報処理装置１０の装置名（装置型番）と製造号機番号とを組み合わせた情報を採用してもよいし、ＩＰ（Ｉｎｔｅｒｎｅｔ＿Ｐｒｏｔｏｃｏｌ）アドレスを採用してもよい。
【０１３６】
制御モジュール１０７は、識別情報を受信した際に、当該識別情報に基づいて、例えば、１つ以上の情報処理装置１０の中から、識別情報を送信した情報処理装置１０を判別する。
【０１３７】
制御モジュール１０７は、判別した結果に応じて、情報処理装置１０に関連付けられた進捗管理情報１０４を選定する。
【０１３８】
尚、進捗管理情報１０４を選定した後の制御モジュール１０７の処理は、第２の実施形態において説明した制御モジュール１０２（つまり、図６に示すステップＳ１１乃至ステップＳ１７）の処理と同様である。そのため、重複する説明は省略する。
【０１３９】
次に、本発明の第３の実施形態に係るより具体的な情報処理装置１０の動作について説明する。
【０１４０】
ここでは、情報処理装置１０は、まず、第１のＯＳ１０５を起動すると共に、起動した第１のＯＳ１０５において各種ソフトウェアプログラムを実行することとする。次に、情報処理装置１０は、第２のＯＳ１０６を起動すると共に、第２のＯＳ１０６において不図示の第１のソフトウェアプログラムを実行することとする。
【０１４１】
また、一例として、第１のＯＳ１０５は、記憶媒体１８から起動可能なＷｉｎｄｏｗｓ（例えば、Ｗｉｎｄｏｗｓ＿Ｐｒｅｉｎｓｔａｌｌａｔｉｏｎ＿Ｅｎｖｉｒｏｎｍｅｎｔ）とする。第２のＯＳ１０６は、例えば、ＭＳ−ＤＯＳとする。
【０１４２】
ＣＰＵ１１は、Ｗｉｎｄｏｗｓが起動した際には、スタートアップバッチ（例えば、ｓｔａｒｔｎｅｔ．ｃｍｄ）に従って処理を実行することとする。また、ＣＰＵ１１は、ＭＳ−ＤＯＳが起動した際には、「Ａｕｔｏｅｘｅｃ．Ｂａｔ」に従って処理を実行することとする。
【０１４３】
「ｓｔａｒｔｎｅｔ．ｃｍｄ」には、例えば、管理サーバ３２に識別情報を送信する命令と、制御モジュール１０７を実行する命令と、管理サーバ３２から外部記憶装置３１に第２のＯＳ１０６と不図示の第１のソフトウェアプログラムとのコピーを実行する命令と、自装置を再起動する命令とが予め記述されていることとする。
【０１４４】
「Ａｕｔｏｅｘｅｃ．Ｂａｔ」には、例えば、不図示の第１のソフトウェアプログラムを実行する命令と、自装置を再起動する命令とが予め記述されていることとする。
【０１４５】
不図示の第１のソフトウェアプログラムは、一例として、Ｗｉｎｄｏｗｓインストーラーである。
【０１４６】
説明の便宜上、上述した構成を例に説明するが、これに限定されない（以下の実施形態においても同様）。
【０１４７】
例えば、作業者による自装置の起動操作に応じて、ＣＰＵ１１は、記憶媒体１８に含まれるＯＳ選定モジュール１０１に従い処理を実行する。
【０１４８】
ＣＰＵ１１は、まず、ＨＤＤ１５に格納された設定情報１０３を参照すると共に、設定情報１０３の値を求める。
【０１４９】
ここでは、ＣＰＵ１１は、設定情報１０３から第１のＯＳ１０５が格納された記憶媒体１８におけるブートセクタのセクタ情報と、第１のＯＳ１０５が格納された記憶媒体１８を読み込むリーダライタ１２のデバイスＩＤとを求める。
【０１５０】
ＣＰＵ１１は、リーダライタ１２のデバイスＩＤと、第１のＯＳ１０５が格納された記憶媒体１８におけるブートセクタのセクタ情報に基づいて、起動する第１のＯＳ１０５のブートセクタにポインタを移動する。
【０１５１】
ここでは、情報処理装置１０は、Ｗｉｎｄｏｗｓを起動することとする。
【０１５２】
Ｗｉｎｄｏｗｓが起動した際に、ＣＰＵ１１は、ｓｔａｒｔｎｅｔ．ｃｍｄの記述に従って、通信ネットワーク３３を介して管理サーバ３２に識別情報を送信する。
【０１５３】
次に、ＣＰＵ１１は、制御モジュール１０７の処理を開始する。ＣＰＵ１１は、受信した識別情報に基づいて、識別情報を送信した情報処理装置１０を判別する。
【０１５４】
ＣＰＵ１１は、判別した結果に応じて、情報処理装置１０に関連付けられた進捗管理情報１０４を選定する。
【０１５５】
ＣＰＵ１１は、図６に示すステップＳ１１乃至ステップ１７の処理を実行することによって、進捗管理情報１０４から求めたＨＤＤ１５のデバイスＩＤと、第２のＯＳ１０６が格納されたＨＤＤ１５におけるブートセクタのセクタ情報とに基づいて、ＨＤＤ１５に格納された設定情報１０３を更新する。
【０１５６】
次に、ＣＰＵ１１は、ｓｔａｒｔｎｅｔ．ｃｍｄの記述に従って、管理サーバ３２から外部記憶装置３１に第２のＯＳ１０６と不図示の第１のソフトウェアプログラムとのコピーを実行する。さらに、ＣＰＵ１１は、自装置を再起動する。
【０１５７】
自装置を再起動した際に、ＣＰＵ１１は、記憶媒体１８に含まれるＯＳ選定モジュール１０１に従い処理を実行することによって、第２のＯＳ１０６を起動する。
【０１５８】
尚、上述した本実施形態では、説明の便宜上、一例として、管理サーバ３２は、１つの情報処理装置１０が通信ネットワーク３３を介して通信可能に接続する構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、管理サーバ３２は、１つ以上の情報処理装置１０が通信ネットワーク３３を介して通信可能に接続する構成を採用してもよい。
【０１５９】
その場合に、管理サーバ３２は、接続された、それぞれの情報処理装置１０に関連付けられた進捗管理情報１０４を格納する構成を採用することができる。
【０１６０】
また、上述した本実施形態では、説明の便宜上、一例として、設定情報１０３は、ＨＤＤ１５に格納された構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、設定情報１０３は、コンピュータによる読み書きが可能な記憶デバイス（例えば、外部記憶装置３１）に格納する構成を採用してもよい。
【０１６１】
その場合に、ＯＳ選定モジュール１０１は、情報処理装置１０が備える全ての記憶デバイスを順に参照すると共に、設定情報１０３の有無を判別する。さらに、ＯＳ選定モジュール１０１は、記憶デバイスに設定情報１０３があった場合に、上述した処理を実行する構成を採用することができる。
【０１６２】
このように本実施の形態に係る情報処理装置１０によれば、上述した各実施形態において説明した効果を享受できると共に、さらに、１つ以上の情報処理装置１０がある場合であっても、情報処理装置１０毎に効率よく特定のＯＳを選定することができる。その理由は、制御モジュール１０７は、情報処理装置１０を識別可能な識別情報に基づいて、情報処理装置１０毎に進捗管理情報１０４を制御、及び管理することができるからである。
【０１６３】
また、情報処理装置１０は、複数の電子機器にＯＳをプリインストールする、例えば、開発、製造及び修理に適用して好適である。その理由は、情報処理装置１０は、通信ネットワーク３３を介して接続された管理サーバ３２に格納された制御モジュール１０７と進捗管理情報１０４とを用いて動作することができるからである。また、情報処理装置１０は、ＯＳのプリインストールするところの各種ソフトウェアプログラムを管理サーバ３２から求めると共に、そのソフトウェアプログラムを実行することができるからである。
【産業上の利用可能性】
【０１６４】
本発明は、上述した各実施形態には限定されない。本発明は、パーソナルコンピュータ、ＰＯＳ（Ｐｏｉｎｔ＿Ｏｆ＿Ｓａｌｅ）システム、サーバ、携帯端末装置、複写機、複合機等のＯＳにおいて動作する各種の電子機器に適用可能である。
【符号の説明】
【０１６５】
１    情報処理装置
２    実行部
３    記憶部
１０    情報処理装置
１１    ＣＰＵ
１２    リーダライタ
１３    ＲＯＭ
１４    ＲＡＭ
１５    ＨＤＤ
１６    通信インタフェース
１７    バス
１８    記憶媒体
３１    外部記憶装置
３２    管理サーバ
３３    通信ネットワーク
１０１    ＯＳ選定モジュール
１０２    制御モジュール
１０３    設定情報
１０４    進捗管理情報
１０５    第１のＯＳ
１０６    第２のＯＳ
１０７    制御モジュール
【図１】
2014186501.tif 000003
【図２】
2014186501.tif 000004
【図３】
2014186501.tif 000005
【図４】
2014186501.tif 000006
【図５】
2014186501.tif 000007
【図６】
2014186501.tif 000008
【図７】
2014186501.tif 000009
【手続補正書】
【提出日】平成26年4月10日(2014.4.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
（ａ）１つ以上のＯＳが格納されたデバイスを識別可能なデバイスＩＤと、該ＯＳを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のＯＳを選定するＯＳ選定手段を表すプログラムと、
（ｂ）前記1つ以上のＯＳの起動順位と、前記位置を示す情報と、前記デバイスＩＤとを含み、前記1つ以上のＯＳを起動する順序と、該ＯＳを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のＯＳの前記位置を示す情報と、前記デバイスＩＤとを求めると共に、求めた前記位置を示す情報と、前記デバイスＩＤとに基づいて、前記設定情報を更新する制御手段を表すプログラムと、
（ｃ）前記設定情報と、
（ｄ）前記進捗管理情報と
を記憶可能な記憶手段と、
前記自装置の起動に際して、前記記憶手段におけるブートセクタに含まれる前記ＯＳ選定手段を表すプログラムを実行し、前記ＯＳの起動に際して前記制御手段を表すプログラムを実行する実行手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記制御手段は、
前記起動順位と関連づけられた前記特定のＯＳを起動したか否かを示す実行結果の値を、前記進捗管理情報から求めると共に、求めた前記実行結果の値が未実施を示す場合に、その値を、実施済みを示す値に更新し、該起動順位の次に高い起動順位に関連付けられた前記位置を示す情報と、前記デバイスＩＤとを前記進捗管理情報から求めることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記設定情報は、
前記選定した特定のＯＳの起動に際して実行するソフトウェアプログラムに前記位置を示す情報と、前記デバイスＩＤとを更新する命令を含む場合にも、前記実行手段が前記ソフトウェアプログラムに記述された処理を実行することによって、更新されることを特徴とする請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記進捗管理情報は、
前記起動順位、前記ＯＳの種別情報、前記デバイスＩＤ、前記位置を示す情報及び前記実行結果を関連付けた情報であることを特徴とする請求項２または請求項３に記載の情報処理装置。
【請求項５】
前記位置を示す情報とは、
前記デバイスにおけるブートセクタのセクタ情報であることを特徴とする請求項１乃至請求項４の何れかに記載された情報処理装置。
【請求項６】
情報処理装置を起動するに際してブート可能な記憶媒体であって、
１つ以上のＯＳが格納されたデバイスを識別可能なデバイスＩＤと、該ＯＳを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、前記情報処理装置が起動する特定のＯＳを選定するＯＳ選定手段を表すプログラムと、
前記1つ以上のＯＳの起動順位と、前記位置を示す情報と、前記デバイスＩＤとを含み、前記1つ以上のＯＳを起動する順序と、該ＯＳを実行したか否かの進捗を管理する進捗管理情報から、前記情報処理装置が次回起動する前記特定のＯＳの前記位置を示す情報と、前記デバイスＩＤとを求めると共に、求めた前記位置を示す情報と、前記デバイスＩＤとに基づいて、前記設定情報を更新する制御手段を表すプログラムと、
前記設定情報と、
前記進捗管理情報と
を含み、
前記ＯＳ選定手段を表すプログラムは、
前記記憶媒体におけるブートセクタに含まれることを特徴とする記憶媒体。
【請求項７】
情報処理装置の実行部を用いて、
ＯＳ選定手段を表すプログラムに従い１つ以上のＯＳが格納されたデバイスを識別可能なデバイスＩＤと、該ＯＳを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のＯＳを選定し、
制御手段を表すプログラムに従い前記1つ以上のＯＳの起動順位と、前記位置を示す情報と、前記デバイスＩＤとを含み、前記1つ以上のＯＳを起動する順序と、該ＯＳを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のＯＳの前記位置を示す情報と、前記デバイスＩＤとを求めると共に、求めた前記位置を示す情報と、前記デバイスＩＤとに基づいて、前記設定情報を更新し、
前記自装置の起動に際して、前記ＯＳ選定手段を表すプログラムを記憶可能な記憶手段におけるブートセクタに含まれる該ＯＳ選定手段を表すプログラムを実行し、前記ＯＳの起動に際して前記制御手段を表すプログラムを実行することを特徴とする情報処理装置の起動制御方法。
【請求項８】
前記設定情報を更新するに際して、
前記起動順位と関連づけられた前記特定のＯＳを起動したか否かを示す実行結果の値を、前記進捗管理情報から求めると共に、求めた前記実行結果の値が未実施を示す場合に、その値を、実施済みを示す値に更新し、該起動順位の次に高い起動順位に関連付けられた前記位置を示す情報と、前記デバイスＩＤとを前記進捗管理情報から求めることを特徴とする請求項７に記載の情報処理装置の起動制御方法。
【請求項９】
情報処理装置を動作制御するコンピュータ・プログラムであって、そのコンピュータ・プログラムにより、
１つ以上のＯＳが格納されたデバイスを識別可能なデバイスＩＤと、該ＯＳを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のＯＳを選定する機能と、
前記1つ以上のＯＳの起動順位と、前記位置を示す情報と、前記デバイスＩＤとを含み、前記1つ以上のＯＳを起動する順序と、該ＯＳを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のＯＳの前記位置を示す情報と、前記デバイスＩＤとを求めると共に、求めた前記位置を示す情報と、前記デバイスＩＤとに基づいて、前記設定情報を更新する機能と、
前記自装置の起動に際して、前記ＯＳを選定する機能を記憶可能な記憶手段におけるブートセクタに含まれる該ＯＳを選定する機能を実行し、前記ＯＳの起動に際して前記設定情報を更新する機能を実行する機能と、
をコンピュータに実現させることを特徴とするコンピュータ・プログラム。
【請求項１０】
前記設定情報を更新するに際して、
前記起動順位と関連づけられた前記特定のＯＳを起動したか否かを示す実行結果の値を、前記進捗管理情報から求めると共に、求めた前記実行結果の値が未実施を示す場合に、その値を、実施済みを示す値に更新し、該起動順位の次に高い起動順位に関連付けられた前記位置を示す情報と、前記デバイスＩＤとを前記進捗管理情報から求めることを特徴とする請求項９に記載のコンピュータ・プログラム。