JP2014186501A - 情報処理装置及びその起動制御方法、記憶媒体、並びにコンピュータ・プログラム - Google Patents

情報処理装置及びその起動制御方法、記憶媒体、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP2014186501A
JP2014186501A JP2013060543A JP2013060543A JP2014186501A JP 2014186501 A JP2014186501 A JP 2014186501A JP 2013060543 A JP2013060543 A JP 2013060543A JP 2013060543 A JP2013060543 A JP 2013060543A JP 2014186501 A JP2014186501 A JP 2014186501A
Authority
JP
Japan
Prior art keywords
information
processing apparatus
oss
information processing
order
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.)
Pending
Application number
JP2013060543A
Other languages
English (en)
Inventor
Hiroaki Suzuki
裕明 鈴木
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2013060543A priority Critical patent/JP2014186501A/ja
Publication of JP2014186501A publication Critical patent/JP2014186501A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】 起動可能な複数のOSがある場合であっても、起動するOSを効率よく選定することが可能な情報処理装置等を提供する。
【解決手段】 情報処理装置1は、設定情報103に基づいて、自装置が起動する特定のOSを選定するOS選定モジュール101と、進捗管理情報104から、自装置が次回起動する特定のOSの位置を示す情報と、デバイスIDとを求めると共に、求めた情報に基づいて、設定情報103を更新する制御モジュール102と、これらモジュールとデータとを記憶可能な記憶部3と、当該モジュールを実行する実行部2とを備えることを特徴とする。
【選択図】 図1

Description

本発明は、例えば、電子機器等において動作可能なオペレーティングシステムの起動を制御及び管理する技術分野に関する。
一般的に知られたパーソナルコンピュータ(Personal_computer:以降、「PC」と称する)やサーバ装置及びスマートフォン等の電子機器は、オペレーティングシステム(Operating_System:以降、「OS」と称する)がプリインストールされた状態で広く普及している。
そのため、例えば、電子機器を開発、製造及び修理等を行うメーカは、CD(Compact_Disc:以降、「CD」と称する)やDVD(Digital_Versatile_Disc:以降、「DVD」と称する)等の記録媒体を用いて電子機器にOSをプリインストールする必要がある。
より具体的に、電子機器を開発する場合、例えば、メーカの開発者は、種別の異なる複数のOSにおいて電子機器が正常に動作する否かを評価する必要がある。
また、電子機器を製造、または修理する場合に、例えば、電子機器の製造を担当する作業者は、複数枚のインストール用記憶媒体を用いてOSをプリインストールする必要がある。さらに、作業者は、テストプログラムモジュール群が格納された記憶媒体を用いて、当該電子機器が正常に動作するか否かを検査する必要がある。
このような状況において、メーカは、電子機器にOSをプリインストールする、またはその電子機器の検査を効率よく実施したいという要求がある。このため、電子機器にOSを効率よくプリインストールする、またはその電子機器の機能を検査するための技術は、多岐にわたり存在する。
例えば、特許文献1は、情報処理装置及び情報処理装置制御方法に関する技術を開示する。
特許文献1に開示された情報処理装置は、OSを起動する際に、OSが格納された複数のハードディスクドライブ(Hard_disk_drive:以降、「HDD」と称する)の中から1つのHDDを選定すると共に、選定したHDDに格納されたOSを起動する。
より具体的に、係る情報処理装置は、複数のHDDの中から1つのHDDを選定する際に、それぞれのHDDに関連付けられた起動順位(OSを起動する順位)を含むHDD認識順番テーブルを参照する。
さらに、情報処理装置は、HDD認識順番テーブルに基づいて、1つのHDDを選定すると共に、選択したHDDに格納されたOSを起動する。
また、係る情報処理装置は、選択したHDDに格納されたOSを起動する際に、起動するOSと基本入出力システム(Basis_Input/Output_System:以降、「BIOS」と称する)との間で受け渡される起動情報を取得する。
情報処理装置は、取得した起動情報と、予め決められた期待値とが一致するか否かを判定することによって、リグレッション試験における作業者の手間を軽減する。
特許文献2は、ハードディスクを利用したコンピュータシステムの検査方法に関する技術を開示する。
より具体的に、特許文献2に開示された検査方法は、PCに搭載されたHDDを2つの領域(第1分割領域と第2分割領域)に分割する。
係る検査方法は、第1分割領域にテストプログラムモジュールを格納する。さらに、検査方法は、第2分割領域にプレインストールするプログラムファイルのイメージデータファイルと、そのイメージデータファイルを展開するプログラムモジュールとを格納する。
次に、検査方法は、第1分割領域に格納されたテストプログラムを使用してPCを検査すると共に、検査終了後には第2分割領域のイメージデータファイルを第1分割領域に展開することによって、HDDの内容をプレインストールした状態にする。
これにより、例えば、作業者は、インストールに要する記憶媒体の入れ替え作業と、テストプログラムモジュール群が格納された記憶媒体の入れ替え作業とを軽減することができる。
WO2012117556号公報 特開2001−331308号公報
しかしながら、上述した手法によって電子機器を開発、製造及び修理等を行う場合に、例えば、作業者は、OSのプリインストールに使用するCD等の記憶媒体を入れ替える手間と、テストプログラムモジュール群が格納された記憶媒体を入れ替える手間とが発生する。そのため、例えば、電子機器の生産量が多いメーカでは、それら記憶媒体を入れ替えに要する膨大な工数が発生する。
特許文献1に開示された情報処理装置は、HDD認識順序テーブルに記載された複数のHDDと、そのHDDに関連付けられたOSの起動順位に基づいて、起動するHDDを選定する。
また、情報処理装置のブート制御部は、HDD認識順序テーブルに記載されたOSの起動順位を1つ繰り上げることによって、当該起動順位を変更する。
即ち、特許文献1には、ブート制御部によって、認識順序テーブルに記載された起動順位を繰り上げることが記載されているに留まり、起動したOSにおいて動作可能な各種プログラムモジュールによって、HDDに関連付けられたOSの起動順位を変更することについては、考慮されておらず何ら述べられていない。
また、特許文献1では、HDD認識順序テーブルを参照すると共に、HDD認識順序テーブルの情報に基づいて、最も起動順位の高いHDDから起動する処理をBIOSプログラムに追加する必要がある。つまり、特許文献1は、BIOSプログラムをカスタマイズする必要がある。
特許文献2では、各種OS用のイメージデータファイルを第2分割領域に格納することが記載されているに留まり、第2分割領域に格納された各種OS用のイメージデータファイルをどのように選定するのか具体的に開示していないので、各種OS用のイメージデータファイルを選定することができない。
本発明の主たる目的は、起動可能な複数のOSがある場合であっても、起動するOSを効率よく選定することが可能な情報処理装置等を提供することにある。
上記の課題を達成すべく、本発明に係る情報処理装置は、以下の構成を備えることを特徴とする。
即ち、本発明に係る情報処理装置は、
1つ以上のOSが格納されたデバイスを識別可能なデバイスIDと、該OSを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のOSを選定するOS選定手段と、
前記1つ以上のOSの起動順位と、前記位置を示す情報と、前記デバイスIDとを含み、前記1つ以上のOSを起動する順序と、該OSを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のOSの前記位置を示す情報と、前記デバイスIDとを求めると共に、求めた前記位置を示す情報と、前記デバイスIDとに基づいて、前記設定情報を更新する制御手段と、
前記OS選定手段と、前記制御手段と、前記設定情報と、前記進捗管理情報とを記憶可能な記憶手段と、
前記自装置の起動に際して前記OS選定手段を実行し、前記OSの起動に際して前記制御手段を実行する実行手段と、
を備えることを特徴とする。
或いは、上記に示すOS選定手段を含む記憶媒体によっても、同目的を達成される。
また、同目的を達成すべく、本発明に係る情報処理装置の起動制御方法は、以下の構成を備えることを特徴とする。
即ち、本発明に係る情報処理装置の起動制御方法は、
実行部を用いて、1つ以上のOSが格納されたデバイスを識別可能なデバイスIDと、該OSを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のOSを選定し、
前記1つ以上のOSの起動順位と、前記位置を示す情報と、前記デバイスIDとを含み、前記1つ以上のOSを起動する順序と、該OSを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のOSの前記位置を示す情報と、前記デバイスIDとを求めると共に、求めた前記位置を示す情報と、前記デバイスIDとに基づいて、前記設定情報を更新することを特徴とする。
尚、同目的は、上記の各構成を有する情報処理装置及びその起動制御方法を、コンピュータによって実現するコンピュータ・プログラム、及びそのコンピュータ・プログラムが格納されている、コンピュータ読み取り可能な記憶媒体によっても達成される。
本発明によれば、起動可能な複数のOSがある場合であっても、起動するOSを効率よく選定することが可能な情報処理装置等を提供することができる。
本発明の第1の実施形態における情報処理装置の構成を示すブロック図である。 本発明の第1の実施形態における進捗管理情報の構成(フォーマット)を具体的に例示した図である。 本発明の第2の実施形態を実現可能なコンピュータ(情報処理装置)のハードウェア構成を例示的に示すブロック図である。 本発明の第2の実施形態を実現可能な記憶媒体のシステム構成を例示的に示す図である。 本発明の第2の実施形態における情報処理装置が起動に際して実行するOS選定モジュールの処理を示すフローチャートである。 本発明の第2の実施形態における情報処理装置においてOSが起動した際に実行する制御モジュールの処理を示すフローチャートである。 本発明の第3の実施形態における実現可能なコンピュータ(情報処理装置)のハードウェア構成を例示的に示すブロック図である。
以下、本発明の実施形態について図面を参照して詳細に説明する。
<第1の実施形態>
図1は、本発明の第1の実施形態における情報処理装置1の構成を示すブロック図である。図1において、情報処理装置1は、実行部2と、記憶部3とを有する。
より具体的に、実行部2は、命令に従って各種処理を実行可能である。
記憶部3は、コンピュータによるデータの読み書きが可能な記憶デバイスである。
より具体的に、一例として、記憶部3は、サーバ装置等の電子機器に搭載されたHDD、SSD(Solid_State_Drive)、CD等の記憶媒体、外部記憶装置(例えば、USB(Universal_Serial_Bus)メモリ)等の不揮発性記憶素子を採用することができる。
記憶部3には、OS選定モジュール101、制御モジュール102、設定情報103、進捗管理情報104、第1のOS105及び第2のOS106が格納されている。
設定情報103は、情報処理装置1(自装置)が起動するに際してロードするOS(以降、説明の便宜上、単に「起動するOS」と略記する)が格納されたデバイスにおけるブートセクタのセクタ情報(つまり、開始セクタの位置情報、以降、単に「ブートセクタのセクタ情報」と称する)と、そのOSを格納するデバイスを一意に識別可能なデバイス識別子(Identification:以降、「ID」と称する)とを含む。
また、設定情報103は、後述するOS選定モジュール101、制御モジュール102及び起動したOSにおいて動作可能なソフトウェアプログラムによって、更新する(書き換える)ことができる。
より具体的に、一例として、起動したOSにおいて動作可能なソフトウェアプログラムとは、例えば、MS−DOS(登録商標:以降、省略する)を起動するに際して実行すべき動作が予め記述されたスタートアップバッチ(Autoexec.Bat)である。
スタートアップバッチにデバイスIDと、ブートセクタのセクタ情報とを書き換える処理(例えば、上書き処理)が含まれている場合に、実行部2は、当該スタートアップバッチの処理に従って、設定情報103を書き換えることができる。
次に、以下の説明において、説明の便宜上、2つの異なる種別のOSを第1のOS105と第2のOS106と称する。また、第1のOS105と第2のOS106とを総称して、単に、OSと称する(以下、各実施形態においても同様)。
より具体的に、第1のOS105と第2のOS106とは、例えば、一般的に知られたMS−DOSやWindows(登録商標:以降、省略する)、Linux(登録商標:以降、省略する)等の情報処理装置1において動作可能なOSである。
OS選定モジュール101は、設定情報103を参照すると共に、設定情報103の値を求める。さらに、OS選定モジュール101は、求めた値に基づいて、起動する特定のOS(以下、単に「OS」とも記す)を選定する。
より具体的に、OS選定モジュール101は、設定情報103からOSを起動するに際して参照するデバイスにおけるブートセクタのセクタ情報と、そのOSが格納されたデバイス(つまり、参照されるデバイス)のデバイスIDとを求める。
次に、OS選定モジュール101は、求めた当該ブートセクタのセクタ情報と、デバイスのデバイスIDとに基づいて、そのデバイスにおける当該OSのブートセクタにポインタを移動する。
これにより、実行部2は、移動したブートセクタに格納された情報に基づいて、OS選定モジュール101が選定した特定のOSの起動処理を開始することができる。
尚、実行部2がブートセクタに格納された情報に基づいて、起動処理を実行する技術自体は、現在では一般的な技術を採用することができるので、本実施形態における詳細な説明は省略する(以下、各実施形態においても同様)。
設定情報103の値を求めた際に、OS選定モジュール101は、設定情報103の値を所定の既定値(初期値、デフォルト値とも記す)に更新する(書き換える)。
尚、OS選定モジュール101が設定情報103の値を所定の既定値に更新する動作については、第2の実施形態において後述する。
次に、制御モジュール102は、進捗管理情報104を参照する。
図2は、本発明の第1の実施形態における進捗管理情報104の構成(フォーマット)を具体的に例示した図である。
進捗管理情報104とは、1つ以上のOSの起動順位、OSの種別情報、デバイスID、ブートセクタのセクタ情報(開始セクタの情報)及び実行結果を関連付けた情報である。
より具体的に、図2において1列目は、情報処理装置1がOSを起動する順位(起動順位)を示す。2列目は、情報処理装置1が起動するOSの種別情報を示す。3列目は、情報処理装置1が起動する際に参照するデバイスのデバイスIDを示す。4列目は、OSが格納されたデバイスにおけるブートセクタのセクタ情報を示す。5列目は、OSを起動したか否かの情報を含む実行結果を示す。
ここで、図2において1列目に示す起動順位は、最も起動順位が高い場合に、「01」と示す。即ち、係る起動順位は、起動順位が高い順に「01」、「02」、「03」・・・「n」、「n+1」と示す。
尚、上述した本実施形態では、説明の便宜上、一例として、進捗管理情報104は、起動順位、OSの種別情報、デバイスID、ブートセクタのセクタ情報及び実行結果を含む構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、進捗管理情報104は、さらに、例えば、ソフトウェアプログラムの実行結果やデバイスのデバイス名等の各種情報を含む構成を採用してもよい。
制御モジュール102は、進捗管理情報104に格納された起動順位(図2に示す1列目)の高い順に、当該起動順位に関連付けられた実行結果(図2に示す4列目)の値を求める。
さらに、制御モジュール102は、求めた実行結果の値が「実施済み」を示すか否かを判別する。
制御モジュール102は、実行結果の値が「実施済み」を示す場合に、次に高い起動順位に関連付けられた実行結果の値を求めると共に、求めた実行結果の値が「実施済み」を示すか否かを判別する。
即ち、制御モジュール102は、求めた実行結果の値が「未実施」(つまり、実施済みでない)を示すと判別するまで起動順位が高い順に実行結果を求めると共に、求めた実行結果の値を「実施済み」を示すか否かを判別する。
一方で、制御モジュール102は、求めた実行結果の値が「未実施」を示す場合に、進捗管理情報104の実行結果の値を「未実施」から「実施済み」を示す値に更新する。
さらに、制御モジュール102は、進捗管理情報104から次に高い起動順位に関連付けられたデバイスIDと、ブートセクタのセクタ情報とを求める。
より具体的に、例えば、第1のOS105の起動順位が最も高く、第2のOS106の起動順位が第1のOS105の次に高い場合に、制御モジュール102は、進捗管理情報104から記憶部3のデバイスIDと、第2のOS106が格納された記憶部3におけるブートセクタのセクタ情報とを求める。
制御モジュール102は、求めたブートセクタのセクタ情報と、デバイスIDとに基づいて、設定情報103を更新する。
これにより、情報処理装置1は、次に起動する際に、更新された設定情報103に基づいて、1つ以上のOSが格納されたデバイスから起動する特定のOSを選定することができる。
尚、上述した本実施形態では、説明の便宜上、一例として、情報処理装置1は、第1のOS105と第2のOS106との種別の異なる2つのOSを起動する構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、情報処理装置1は、1つ以上のOSを起動する構成を採用してもよい。
尚、上述したモジュールとは、ソフトウェアプログラムの機能(処理)単位と捉えることができる。これらの各モジュールは、専用のハードウェアによって実現してもよい。また、各モジュールは、コンピュータに読み出し可能な情報を、例えば、不図示の記憶媒体に格納すると共に、格納した当該情報を、実行部2に読み出して解釈し実行することによって実現してもよい。
このように本実施の形態に係る情報処理装置1によれば、起動可能な複数のOSがある場合であっても、起動するOSを効率よく選定することができる。その理由は、以下に述べる通りである。
即ち、情報処理装置1の実行部2は、OS選定モジュール101に従って処理を実行することによって、1つ以上のOSの中から設定情報103の値に基づき、起動する特定のOSを選定することができるからである。また、設定情報103の値は、OS選定モジュール101、制御モジュール102及び起動したOSにおいて動作可能なソフトウェアプログラムによって、容易に書き換えることができる。そのため、実行部2は、OS選定モジュール101に従って処理を実行することによって、変更された設定情報103の値に基づき、起動する特定のOSを効率よく選定することができるからである。
また、情報処理装置1は、CD等の記憶媒体を入れ替える手間を軽減することができる。その理由は、実行部2は、設定情報103の値に基づいて、起動する特定のOSを選定することができるからである。即ち、情報処理装置1は、起動する際に、記憶媒体を必要としない、または最小限の記憶媒体において動作することができるからである。
<第2の実施形態>
次に、上述した本発明の第1の実施形態に係る情報処理装置1を基本とする第2の実施形態について説明する。以下の説明においては、本実施形態に係る特徴的な部分を中心に説明する。その際、上述した各実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明は省略する。
図3は、本発明の第2の実施形態を実現可能なコンピュータ(情報処理装置10)のハードウェア構成を例示的に示すブロック図である。
図3において、情報処理装置10は、CPU(Central_Processing_Unit)11、CD−ROM(Compact_Disc_Read_Only_Memory)等の記憶媒体18に格納されたデータを読み書き可能なリーダライタ12、ROM(Read_Only_Memory)13、RAM(Random_Access_Memory)14、HDD15、外部装置との通信インタフェース(Interface:以降、「I/F」と称する)16を備え、これら構成がバス17(通信線)を介して接続された構成を有する。
より具体的に、CPU11は、第1の実施形態における実行部2に相当する。また、CPU11は、情報処理装置10の全体の動作を司る。次に、HDD15は、第1の実施形態における記憶部3に相当する。
本実施形態において、HDD15には、一例として、第1の実施形態において説明した設定情報103、進捗管理情報104及び第2のOS106が格納されている。
また、記憶媒体18には、一例として、第1の実施形態において説明したOS選定モジュール101、制御モジュール102及び第1のOS105が格納されている。
次に、本発明の第2の実施形態に係るより具体的な情報処理装置10の動作について説明する。
ここでは、情報処理装置10は、まず、第1のOS105を起動すると共に、起動した第1のOS105において各種ソフトウェアプログラムを実行することとする。次に、情報処理装置10は、第2のOS106を起動することとする。
また、一例として、第1のOS105は、MS−DOSとする。第2のOS106は、Linuxとする。実行部2は、MS−DOSが起動した際に、スタートアップバッチである「Autoexec.Bat」に従って処理を実行することとする。
「Autoexec.Bat」には、例えば、不図示の第1のソフトウェアプログラムを実行する命令と、制御モジュール102を実行する命令と、自装置を再起動する命令とが予め記述されていることとする。
不図示の第1のソフトウェアプログラムとは、一例として、セットアッププログラムやWindowsインストーラー、情報処理装置10において発生した不具合を修正するソフトウェアプログラム等である。
情報処理装置10は、記憶媒体18を起動可能なように、例えば、BIOS設定メニューを用いてリーダライタ12から起動するように設定されていることとする。
記憶媒体18は、例えば、作業者による自装置の起動操作に応じて、情報処理装置10を起動可能なブータブルCDである。また、記憶媒体18は、例えば、一般的に知られたEl_Torito規格に基づいて作成されたブータブルCDである。
図4は、本発明の第2の実施形態を実現可能な記憶媒体18のシステム構成を例示的に示す図である。
より具体的に、図4において「Boot_Record_Volume」は、セクタ17の位置に格納されている。また、「Boot_Record_Volume」は、「Booting_Catalog」の位置を示すセクタ情報を含む。次に、「Initial/Default_Entry」を含む「Booting_Catalog」には、記憶媒体18が起動可能(つまり、ブータブルCD)か否かを示す情報と、「Boot_Sector」の位置を示すセクタ情報とを含む。
また、図4において「Boot_Sector」には、OS選定モジュール101と、OSを起動することが可能な各種情報とを含む。
尚、図4に示す「Boot_Record_Volume」、「Booting_Catalog」及びOS選定モジュール101を除く「Boot_Sector」を含む記憶媒体18のシステム構成自体は、例えば、現在では一般的なEl_Torito規格に基づく技術等を採用することができるので、本実施形態における詳細な説明は省略する(以下、各実施形態においても同様)。
本実施形態において、CPU11は、作業者による自装置の起動操作に応じて、図4に示す「Boot_Record_Volume」を参照すると共に、参照した「Boot_Record_Volume」に基づいて、対応する「Booting_Catalog」にポインタを移動する。
さらに、CPU11は、「Booting_Catalog」を参照すると共に、参照した「Booting_Catalog」に基づいて、対応する「Boot_Sector」にポインタを移動する。CPU11は、「Boot_Sector」に含まれるOS選定モジュール101に従い処理を実行する。
説明の便宜上、上述した構成を例に説明するが、これに限定されない(以下の実施形態においても同様)。
図5は、本発明の第2の実施形態における情報処理装置10が起動に際して実行するOS選定モジュール101の処理を示すフローチャートである。
図5に示すフローチャートに沿って情報処理装置10の処理手順を説明する。このフローチャートに記載された処理は、記憶媒体18から読み出されたOS選定モジュール101に従ってCPU11が実行することによって実現される。
ステップS1:
CPU11は、まず、HDD15に格納された設定情報103を参照すると共に、設定情報103の値を求める。
ここでは、CPU11は、設定情報103から第1のOS105が格納された記憶媒体18におけるブートセクタのセクタ情報と、第1のOS105が格納された記憶媒体18を読み込むリーダライタ12のデバイスIDとを求める。
ステップS2:
CPU11は、設定情報103から求めた値と、所定の既定値とを比較する。
ここでは、一例として、所定の既定値とは、第1のOS105が格納された記憶媒体18におけるブートセクタのセクタ情報と、リーダライタ12のデバイスIDとする。
ステップS3において「YES」:
CPU11は、設定情報103から求めた値と、所定の既定値とを比較した結果、求めた値と、所定の既定値とが同じ値であると判別した場合に、処理をステップS5に進める。
ステップS3において「NO」:
CPU11は、設定情報103から求めた値と、所定の既定値とを比較した結果、求めた値と、所定の既定値とが異なる値であると判別した場合に、処理をステップS4に進める。
ステップS4:
CPU11は、設定情報103の値を所定の既定値に更新すると共に、処理をステップS5に進める。
ステップS5:
CPU11は、求めたデバイスIDと、ブートセクタのセクタ情報に基づいて、デバイスにおける起動するOSのブートセクタにポインタを移動する。
図6は、本発明の第2の実施形態における情報処理装置10においてOSが起動した際に実行する制御モジュール102の処理を示すフローチャートである。
図6に示すフローチャートに沿って情報処理装置10の処理手順を説明する。このフローチャートに記載された処理は、記憶媒体18から読み出された制御モジュール102に従ってCPU11が実行することによって実現される。
CPU11は、Autoexec.Batの記述に従って、第1のソフトウェアプログラム(不図示)を実行する。次に、CPU11は、制御モジュール102に従って処理を開始する。
ステップS11:
CPU11は、進捗管理情報104を参照すると共に、進捗管理情報104に格納された起動順位の高い順に、当該起動順位に関連付けられた実行結果の値を求める。
ステップS12
CPU11は、求めた実行結果の値が「実施済み」を示すか否かを判別する。
ステップS13において「YES」:
CPU11は、求めた実行結果の値が「実施済み」を示すか否かを判別した結果、実行結果の値が「実施済み」を示すと判別した場合に、処理をステップS14に処理を進める。
ステップS13において「NO」:
CPU11は、求めた実行結果の値が「実施済み」を示すか否かを判別した結果、実行結果の値が「未実施」(つまり、実施済みでない)を示すと判別した場合に、処理をステップS15に処理を進める。
ステップS14:
CPU11は、進捗管理情報104を参照すると共に、進捗管理情報104から次に起動順位の高い起動順位に関連付けられた実行結果の値を求めると共に、ステップS12に処理を戻す。
ステップS15:
CPU11は、求めた実行結果の値を更新する。より具体的に、CPU11は、進捗管理情報104に格納された実行結果の値を「未実施」から「実施済み」を示す値に更新する。
ステップS16:
CPU11は、進捗管理情報104から次に高い起動順位に関連付けられたデバイスIDと、ブートセクタのセクタ情報とを求める。
ここでは、実行部2は、進捗管理情報104から第1のOS105の次に高い起動順位を有する第2のOS106が格納されたHDD15におけるブートセクタのセクタ情報と、第2のOS106が格納されたHDD15のデバイスIDとを求める。
ステップS17:
CPU11は、進捗管理情報104から求めたデバイスIDと、ブートセクタのセクタ情報とに基づいて、設定情報103を更新する。
これにより、情報処理装置10は、再起動した際に、OS選定モジュール101に従って処理を実行することによって、ステップS17において更新した設定情報103の値に基づいて、HDD15に格納された第2のOS106(つまり、特定のOS)を起動することができる。
尚、上述した本実施形態では、説明の便宜上、一例として、情報処理装置10は、HDD15及び記憶媒体18に格納された種別の異なる1つ以上のOSを起動する構成を例に説明した。
しかしながら本発明に係る実施形態は、係る構成に限定されず、情報処理装置10は、例えば、通信I/F16にUSB接続形式の外部記憶装置(例えば、USBメモリ)に格納されたOSを起動する構成を採用することができる。
その場合に、USBメモリは、起動可能なように、例えば、先頭セクタにブートセクタ(Master_Boot_Record:以降、「MBR」と称する)を配置する構成を採用してもよい。
尚、上述した本実施形態では、説明の便宜上、一例として、記憶媒体18は、OS選定モジュール101と制御モジュール102とを含む構成を例に説明した。また、HDD15は、設定情報103と進捗管理情報104とを含む構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、記憶媒体18は、OS選定モジュール101を含む構成を採用してもよい。また、HDD15は、設定情報103と進捗管理情報104と制御モジュール102とを含む構成を採用してもよい。
また、上述した本実施形態では、説明の便宜上、一例として、HDD15は、設定情報103を含む構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されない。HDD15に設定情報103が無い(つまり、記憶媒体18にも設定情報103が無い)場合に、OS選定モジュール101は、上述した所定の既定値(初期値)のOSを起動する。さらに、当該所定の既定値のOSを起動した際に、制御モジュール102は、上述した各種処理を実行すると共に、設定情報103をHDD15に格納する構成を採用することができる。
このように本実施の形態に係る情報処理装置10によれば、第1の実施形態において説明した効果を享受できると共に、さらに、1つ以上のOSが複数のデバイスに格納された場合であっても、起動する特定のOSを効率よく選定することができる。その理由は、情報処理装置10は、制御モジュール102に従って処理を実行することによって、進捗管理情報104に格納された値に基づいて、設定情報103の値を更新することができるからである。
<第3の実施形態>
次に、上述した本発明の第2の実施形態に係る情報処理装置10を基本とする第3の実施形態について説明する。以下の説明においては、本実施形態に係る特徴的な部分を中心に説明する。その際、上述した各実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明は省略する。
本発明の第3の実施形態における情報処理装置10について、図6、図7を参照して説明する。
図7は、本発明の第3の実施形態における実現可能なコンピュータ(情報処理装置10)のハードウェア構成を例示的に示すブロック図である。
図7において、情報処理装置10は、通信ネットワーク33を介して管理サーバ32と通信可能に接続する。
通信ネットワーク33とは、例えば、携帯電話事業者が所有する各種通信回線、インターネットサービスプロバイダ等が提供するインターネット等の一般的な通信回線である。
管理サーバ32には、進捗管理情報104、第2のOS106及び制御モジュール107が格納されている。
制御モジュール107は、第2の実施形態において説明した制御モジュール102の動作に、さらに、情報処理装置10毎に異なる進捗管理情報104を参照すると共に、各種処理を実行する点が異なる。
即ち、制御モジュール107は、例えば、1つ以上の情報処理装置10が通信ネットワーク33を介して管理サーバ32と通信可能に接続する場合に、それぞれの情報処理装置10に関連付けられた進捗管理情報104を参照すると共に、各種処理を実行する。
その場合に、管理サーバ32には、進捗管理情報10が情報処理装置10毎に対応付けられて格納されている。
より具体的に、制御モジュール107は、情報処理装置10から情報処理装置10を識別可能な識別情報を受信する。
ここで、識別情報とは、情報処理装置10を一意に識別可能な情報を含む。
より具体的に、一例として、識別情報は、外部記憶装置31に予め格納された不図示の識別IDである。
尚、上述した本実施形態では、説明の便宜上、一例として、識別情報は、外部記憶装置31に予め格納された不図示の識別IDを例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されない。
識別情報は、情報処理装置10が有するネットワークカードのMAC(Media_Access_Control)アドレスを採用してもよいし、情報処理装置10の装置名(装置型番)と製造号機番号とを組み合わせた情報を採用してもよいし、IP(Internet_Protocol)アドレスを採用してもよい。
制御モジュール107は、識別情報を受信した際に、当該識別情報に基づいて、例えば、1つ以上の情報処理装置10の中から、識別情報を送信した情報処理装置10を判別する。
制御モジュール107は、判別した結果に応じて、情報処理装置10に関連付けられた進捗管理情報104を選定する。
尚、進捗管理情報104を選定した後の制御モジュール107の処理は、第2の実施形態において説明した制御モジュール102(つまり、図6に示すステップS11乃至ステップS17)の処理と同様である。そのため、重複する説明は省略する。
次に、本発明の第3の実施形態に係るより具体的な情報処理装置10の動作について説明する。
ここでは、情報処理装置10は、まず、第1のOS105を起動すると共に、起動した第1のOS105において各種ソフトウェアプログラムを実行することとする。次に、情報処理装置10は、第2のOS106を起動すると共に、第2のOS106において不図示の第1のソフトウェアプログラムを実行することとする。
また、一例として、第1のOS105は、記憶媒体18から起動可能なWindows(例えば、Windows_Preinstallation_Environment)とする。第2のOS106は、例えば、MS−DOSとする。
CPU11は、Windowsが起動した際には、スタートアップバッチ(例えば、startnet.cmd)に従って処理を実行することとする。また、CPU11は、MS−DOSが起動した際には、「Autoexec.Bat」に従って処理を実行することとする。
「startnet.cmd」には、例えば、管理サーバ32に識別情報を送信する命令と、制御モジュール107を実行する命令と、管理サーバ32から外部記憶装置31に第2のOS106と不図示の第1のソフトウェアプログラムとのコピーを実行する命令と、自装置を再起動する命令とが予め記述されていることとする。
「Autoexec.Bat」には、例えば、不図示の第1のソフトウェアプログラムを実行する命令と、自装置を再起動する命令とが予め記述されていることとする。
不図示の第1のソフトウェアプログラムは、一例として、Windowsインストーラーである。
説明の便宜上、上述した構成を例に説明するが、これに限定されない(以下の実施形態においても同様)。
例えば、作業者による自装置の起動操作に応じて、CPU11は、記憶媒体18に含まれるOS選定モジュール101に従い処理を実行する。
CPU11は、まず、HDD15に格納された設定情報103を参照すると共に、設定情報103の値を求める。
ここでは、CPU11は、設定情報103から第1のOS105が格納された記憶媒体18におけるブートセクタのセクタ情報と、第1のOS105が格納された記憶媒体18を読み込むリーダライタ12のデバイスIDとを求める。
CPU11は、リーダライタ12のデバイスIDと、第1のOS105が格納された記憶媒体18におけるブートセクタのセクタ情報に基づいて、起動する第1のOS105のブートセクタにポインタを移動する。
ここでは、情報処理装置10は、Windowsを起動することとする。
Windowsが起動した際に、CPU11は、startnet.cmdの記述に従って、通信ネットワーク33を介して管理サーバ32に識別情報を送信する。
次に、CPU11は、制御モジュール107の処理を開始する。CPU11は、受信した識別情報に基づいて、識別情報を送信した情報処理装置10を判別する。
CPU11は、判別した結果に応じて、情報処理装置10に関連付けられた進捗管理情報104を選定する。
CPU11は、図6に示すステップS11乃至ステップ17の処理を実行することによって、進捗管理情報104から求めたHDD15のデバイスIDと、第2のOS106が格納されたHDD15におけるブートセクタのセクタ情報とに基づいて、HDD15に格納された設定情報103を更新する。
次に、CPU11は、startnet.cmdの記述に従って、管理サーバ32から外部記憶装置31に第2のOS106と不図示の第1のソフトウェアプログラムとのコピーを実行する。さらに、CPU11は、自装置を再起動する。
自装置を再起動した際に、CPU11は、記憶媒体18に含まれるOS選定モジュール101に従い処理を実行することによって、第2のOS106を起動する。
尚、上述した本実施形態では、説明の便宜上、一例として、管理サーバ32は、1つの情報処理装置10が通信ネットワーク33を介して通信可能に接続する構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、管理サーバ32は、1つ以上の情報処理装置10が通信ネットワーク33を介して通信可能に接続する構成を採用してもよい。
その場合に、管理サーバ32は、接続された、それぞれの情報処理装置10に関連付けられた進捗管理情報104を格納する構成を採用することができる。
また、上述した本実施形態では、説明の便宜上、一例として、設定情報103は、HDD15に格納された構成を例に説明した。しかしながら本発明に係る実施形態は、係る構成に限定されず、設定情報103は、コンピュータによる読み書きが可能な記憶デバイス(例えば、外部記憶装置31)に格納する構成を採用してもよい。
その場合に、OS選定モジュール101は、情報処理装置10が備える全ての記憶デバイスを順に参照すると共に、設定情報103の有無を判別する。さらに、OS選定モジュール101は、記憶デバイスに設定情報103があった場合に、上述した処理を実行する構成を採用することができる。
このように本実施の形態に係る情報処理装置10によれば、上述した各実施形態において説明した効果を享受できると共に、さらに、1つ以上の情報処理装置10がある場合であっても、情報処理装置10毎に効率よく特定のOSを選定することができる。その理由は、制御モジュール107は、情報処理装置10を識別可能な識別情報に基づいて、情報処理装置10毎に進捗管理情報104を制御、及び管理することができるからである。
また、情報処理装置10は、複数の電子機器にOSをプリインストールする、例えば、開発、製造及び修理に適用して好適である。その理由は、情報処理装置10は、通信ネットワーク33を介して接続された管理サーバ32に格納された制御モジュール107と進捗管理情報104とを用いて動作することができるからである。また、情報処理装置10は、OSのプリインストールするところの各種ソフトウェアプログラムを管理サーバ32から求めると共に、そのソフトウェアプログラムを実行することができるからである。
本発明は、上述した各実施形態には限定されない。本発明は、パーソナルコンピュータ、POS(Point_Of_Sale)システム、サーバ、携帯端末装置、複写機、複合機等のOSにおいて動作する各種の電子機器に適用可能である。
1 情報処理装置
2 実行部
3 記憶部
10 情報処理装置
11 CPU
12 リーダライタ
13 ROM
14 RAM
15 HDD
16 通信インタフェース
17 バス
18 記憶媒体
31 外部記憶装置
32 管理サーバ
33 通信ネットワーク
101 OS選定モジュール
102 制御モジュール
103 設定情報
104 進捗管理情報
105 第1のOS
106 第2のOS
107 制御モジュール

Claims (10)

  1. 1つ以上のOSが格納されたデバイスを識別可能なデバイスIDと、該OSを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のOSを選定するOS選定手段と、
    前記1つ以上のOSの起動順位と、前記位置を示す情報と、前記デバイスIDとを含み、前記1つ以上のOSを起動する順序と、該OSを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のOSの前記位置を示す情報と、前記デバイスIDとを求めると共に、求めた前記位置を示す情報と、前記デバイスIDとに基づいて、前記設定情報を更新する制御手段と、
    前記OS選定手段と、前記制御手段と、前記設定情報と、前記進捗管理情報とを記憶可能な記憶手段と、
    前記自装置の起動に際して前記OS選定手段を実行し、前記OSの起動に際して前記制御手段を実行する実行手段と、
    を備えることを特徴とする情報処理装置。
  2. 前記制御手段は、
    前記起動順位と関連づけられた前記特定のOSを起動したか否かを示す実行結果の値を、前記進捗管理情報から求めると共に、求めた前記実行結果の値が未実施を示す場合に、その値を、実施済みを示す値に更新し、該起動順位の次に高い起動順位に関連付けられた前記位置を示す情報と、前記デバイスIDとを前記進捗管理情報から求めることを特徴とする請求項1に記載の情報処理装置。
  3. 前記設定情報は、
    前記選定した特定のOSの起動に際して実行するソフトウェアプログラムに前記位置を示す情報と、前記デバイスIDとを更新する命令を含む場合にも、前記実行手段が前記ソフトウェアプログラムに記述された処理を実行することによって、更新されることを特徴とする請求項1または請求項2に記載の情報処理装置。
  4. 前記位置を示す情報とは、
    前記デバイスにおけるブートセクタのセクタ情報であることを特徴とする請求項1乃至請求項3の何れかに記載された情報処理装置。
  5. 前記進捗管理情報は、
    前記起動順位、前記OSの種別情報、前記デバイスID、前記ブートセクタのセクタ情報及び前記実行結果を関連付けた情報であることを特徴とする請求項1乃至請求項4の何れかに記載の情報処理装置。
  6. 請求項1乃至請求項5の何れかに記載の情報処理装置を起動するに際してブート可能な起動媒体であって、前記OS選定手段を表すコンピュータに読み出し可能な情報を含むことを特徴とする記憶媒体。
  7. 実行部を用いて、1つ以上のOSが格納されたデバイスを識別可能なデバイスIDと、該OSを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のOSを選定し、
    前記1つ以上のOSの起動順位と、前記位置を示す情報と、前記デバイスIDとを含み、前記1つ以上のOSを起動する順序と、該OSを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のOSの前記位置を示す情報と、前記デバイスIDとを求めると共に、求めた前記位置を示す情報と、前記デバイスIDとに基づいて、前記設定情報を更新することを特徴とする情報処理装置の起動制御方法。
  8. 前記設定情報を更新するに際して、
    前記起動順位と関連づけられた前記特定のOSを起動したか否かを示す実行結果の値を、前記進捗管理情報から求めると共に、求めた前記実行結果の値が未実施を示す場合に、その値を、実施済みを示す値に更新し、該起動順位の次に高い起動順位に関連付けられた前記位置を示す情報と、前記デバイスIDとを前記進捗管理情報から求めることを特徴とする請求項7に記載の情報処理装置の起動制御方法。
  9. 情報処理装置を動作制御するコンピュータ・プログラムであって、そのコンピュータ・プログラムにより、
    1つ以上のOSが格納されたデバイスを識別可能なデバイスIDと、該OSを起動可能な情報が格納された前記デバイスにおける位置を示す情報とを含む設定情報に基づいて、自装置が起動する特定のOSを選定する機能と、
    前記1つ以上のOSの起動順位と、前記位置を示す情報と、前記デバイスIDとを含み、前記1つ以上のOSを起動する順序と、該OSを実行したか否かの進捗を管理する進捗管理情報から、前記自装置が次回起動する前記特定のOSの前記位置を示す情報と、前記デバイスIDとを求めると共に、求めた前記位置を示す情報と、前記デバイスIDとに基づいて、前記設定情報を更新する機能と、
    をコンピュータに実現させることを特徴とするコンピュータ・プログラム。
  10. 前記設定情報を更新するに際して、
    前記起動順位と関連づけられた前記特定のOSを起動したか否かを示す実行結果の値を、前記進捗管理情報から求めると共に、求めた前記実行結果の値が未実施を示す場合に、その値を、実施済みを示す値に更新し、該起動順位の次に高い起動順位に関連付けられた前記位置を示す情報と、前記デバイスIDとを前記進捗管理情報から求めることを特徴とする請求項9に記載のコンピュータ・プログラム。
JP2013060543A 2013-03-22 2013-03-22 情報処理装置及びその起動制御方法、記憶媒体、並びにコンピュータ・プログラム Pending JP2014186501A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013060543A JP2014186501A (ja) 2013-03-22 2013-03-22 情報処理装置及びその起動制御方法、記憶媒体、並びにコンピュータ・プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013060543A JP2014186501A (ja) 2013-03-22 2013-03-22 情報処理装置及びその起動制御方法、記憶媒体、並びにコンピュータ・プログラム

Publications (1)

Publication Number Publication Date
JP2014186501A true JP2014186501A (ja) 2014-10-02

Family

ID=51834026

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013060543A Pending JP2014186501A (ja) 2013-03-22 2013-03-22 情報処理装置及びその起動制御方法、記憶媒体、並びにコンピュータ・プログラム

Country Status (1)

Country Link
JP (1) JP2014186501A (ja)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02135528A (ja) * 1988-11-16 1990-05-24 Oki Electric Ind Co Ltd マルチosにおける起動os選択方法
JPH04305738A (ja) * 1991-04-02 1992-10-28 Oki Electric Ind Co Ltd 制御プログラムのロード方式
JPH1153214A (ja) * 1997-08-07 1999-02-26 Nec Yonezawa Ltd パーソナルコンピュータのブート不良検出システム
JP2001243076A (ja) * 2000-02-09 2001-09-07 Internatl Business Mach Corp <Ibm> データ処理システムのブート・プロセス自動化方法、データ処理システム、及びプログラム・プロダクト
JP2002215399A (ja) * 2001-01-22 2002-08-02 Pfu Ltd コンピュータシステム
JP2005122410A (ja) * 2003-10-15 2005-05-12 Nec Soft Ltd コンピュータ起動方法
JP2006092511A (ja) * 2004-09-22 2006-04-06 Cyberlink Corp コンピュータの簡素化スタートアップシステム、その簡素化操作システム、その簡素化操作方法およびその効率的スタートアップシステム
JP2007164420A (ja) * 2005-12-13 2007-06-28 Toshiba Tec Corp 商品販売データ処理装置
WO2012117556A1 (ja) * 2011-03-03 2012-09-07 富士通株式会社 情報処理装置及び情報処理装置制御方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02135528A (ja) * 1988-11-16 1990-05-24 Oki Electric Ind Co Ltd マルチosにおける起動os選択方法
JPH04305738A (ja) * 1991-04-02 1992-10-28 Oki Electric Ind Co Ltd 制御プログラムのロード方式
JPH1153214A (ja) * 1997-08-07 1999-02-26 Nec Yonezawa Ltd パーソナルコンピュータのブート不良検出システム
JP2001243076A (ja) * 2000-02-09 2001-09-07 Internatl Business Mach Corp <Ibm> データ処理システムのブート・プロセス自動化方法、データ処理システム、及びプログラム・プロダクト
JP2002215399A (ja) * 2001-01-22 2002-08-02 Pfu Ltd コンピュータシステム
JP2005122410A (ja) * 2003-10-15 2005-05-12 Nec Soft Ltd コンピュータ起動方法
JP2006092511A (ja) * 2004-09-22 2006-04-06 Cyberlink Corp コンピュータの簡素化スタートアップシステム、その簡素化操作システム、その簡素化操作方法およびその効率的スタートアップシステム
JP2007164420A (ja) * 2005-12-13 2007-06-28 Toshiba Tec Corp 商品販売データ処理装置
WO2012117556A1 (ja) * 2011-03-03 2012-09-07 富士通株式会社 情報処理装置及び情報処理装置制御方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSND200400557022; 竹内充彦: 'Linuxerのたまご Powered:第1回 マルチブート環境を作る' Linux magazine 第5巻,第6号(通巻45号), 20030601, pp.172〜173, 株式会社アスキー *
JPN6014042848; 竹内充彦: 'Linuxerのたまご Powered:第1回 マルチブート環境を作る' Linux magazine 第5巻,第6号(通巻45号), 20030601, pp.172〜173, 株式会社アスキー *

Similar Documents

Publication Publication Date Title
CN1315042C (zh) 创建和使用具有选定功能的操作***的方法和***
TW591395B (en) Recovery method of multi-functional operating system and system thereof
TWI332176B (en) Method and system for automated installation of system specific drivers
CN103746833A (zh) 基于pxe的raid自动配置方法和***
WO2012117556A1 (ja) 情報処理装置及び情報処理装置制御方法
US10089102B2 (en) Information processing apparatus, method, and program
US9513889B2 (en) System and method of automating installation of applications
TWI707274B (zh) 用於更新系統之rom編碼之電腦實施方法、電腦系統以及電腦可讀取媒體
TW201407343A (zh) 測試系統及其測試方法
TW201721412A (zh) 選擇及載入韌體卷區之技術
CN102053848A (zh) Linux操作***的自动安装方法
TW201319939A (zh) 作業系統處理方法以及系統、以及儲存其之電腦可讀取記錄媒體
US8086834B2 (en) System and method for populating a dedicated system service repository for an information handling system
US20080288769A1 (en) Method for adjusting set-up default value of bios and mainboard using the same method
CN113377586B (zh) 一种服务器自动化检测方法、装置及存储介质
JP6515462B2 (ja) 情報処理装置、情報処理装置の設定方法及び設定プログラム
CN106484442B (zh) 服务器***及更新开机映像档的方法
CN116775061A (zh) 微服务应用的部署方法、装置、设备及存储介质
TWI520063B (zh) 多重作業環境服務的管理系統及管理方法
TWI518594B (zh) 計算機系統與計算機系統啓動方法
WO2023087622A1 (zh) 虚拟机引导的配置方法、装置、计算机设备和存储介质
US20090210589A1 (en) Dynamic Vital Product Data Update Based on an Installed Feature Card
CN115357355A (zh) 一种软件跨***迁移的方法、装置、设备及可读存储介质
TW201504945A (zh) 更新週邊設備的連接管理程式的方法及主機
JP2014186501A (ja) 情報処理装置及びその起動制御方法、記憶媒体、並びにコンピュータ・プログラム

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20141007