(57)【特許請求の範囲】
【請求項１】
マルチブートマネージャーの方法であって、その方法は、
マスターブートレコード（ＭＢＲ）を有する第一セクタ、及び第一オペレーティングシステム（ＯＳ）を有する第一パーティションを含む記録媒体に、前記第一セクタ及び前記第一パーティションとは別れた、マルチブートマネージャーを保存するためのマルチブートマネージャー用のパーティションを定義し、
ＢＩＯＳプログラムを実行することにより、前記ＢＩＯＳがブートセクタの探索及び前記第一セクタの前記ＭＢＲをローディングし、前記ＭＢＲが前記マルチブートマネージャー用のパーティションをメモリにローディングし、さらに前記マルチブートマネージャーによって前記第一パーティションに含まれるブートローダーを前記メモリにローディングし、前記ブートローダーにより前記第一ＯＳを前記メモリにローディングしてコンピュータをスタートアップし、
前記第一ＯＳの条件の下、オペレーティングシステムを変更するために、アプリケーションプログラムを実行して前記マルチブートマネージャー用のパーティションのアドレスフラグを変更し、そして
前記第一ＯＳをアンローディングし、前記マルチブートマネージャー用のパーティションに位置する前記マルチブートマネージャーをローディングし、前記アドレスフラグに基づいて第二ＯＳをローディングするために、コンピュータをリブートするマルチブートマネージャーの方法。
【請求項２】
マルチブートマネージャーの方法であって、前記方法は、
マスターブートレコード（ＭＢＲ）を有する第一セクタ、マルチブートマネージャー用のパーティション、第一パーティション、及び第二パーティションによって定義される記録媒体をセットアップし、前記マルチブートマネージャー用のパーティションは、マルチブートマネージャー及び第一パーティション又は第二パーティションを管理するアドレスフラグを含み、
ＢＩＯＳプログラムを実行して、ブートセクタを検索し、且つ前記第一セクタの前記ＭＢＲをローディングし、前記ＭＢＲが前記マルチブートマネージャー用のパーティションをメモリにローディングし、前記マルチブートマネージャーが前記第一パーティションに含まれるブートローダーを前記メモリにローディングし、前記ブートローダーにより第一オペレーティングシステム（ＯＳ）を前記メモリにローディングしてコンピュータをスタートアップし、
オペレーティングシステムを変更し、その方法は以下を含む：前記第一ＯＳの条件の下アプリケーションプログラムを実行し、利用者により選択される対話型オプションインターフェースを形成し、前記利用者の選択又は操作に従って前記マルチブートマネージャー用のパーティションの前記アドレスフラグが前記第二パーティションを管理するように変更し、
コンピュータをリブートし、その方法は以下を含む：前記第一ＯＳをアンロードし、前記ＢＩＯＳプログラム及び前記ＭＢＲではなく前記マルチブートマネージャー用のパーティションを直接ローディングし、前記マルチブートマネージャー用のパーティションの前記アドレスフラグが前記第二パーティションを管理することに基づいて前記マルチブートマネージャー用のパーティションのマルチブートマネージャーが前記第二パーティションをローディングし、前記第二パーティションの第二ＯＳをローディングする。
【請求項３】
前記コンピュータのスタートアップは、
ＢＩＯＳからＭＢＲへのプログラム実行の制御の伝達と、
ＭＢＲから前記マルチブートマネージャー用のパーティションへのプログラム実行の制御の伝達と、
前記マルチブートマネージャー用のパーティションから前記第一パーティションへのプログラム実行の制御の伝達と、
前記第一パーティションから前記第一ＯＳへのプログラム実行の制御の伝達と、をさらに含む、請求項２に記載のマルチブートマネージャーの方法。
【請求項４】
前記コンピュータのリブートにおいて、
前記第二パーティションは、前記第二パーティションの前記第二ＯＳをローディングするためのブートローダーをさらに含む、請求項２に記載のマルチブートマネージャーの方法。
【請求項５】
前記オペレーティングシステムの変更において、
前記対話型オプションインターフェースは、アクセスできない前記第一ＯＳのネームオプションとともに異なるオペレーションシステムの複数のネームオプションを含むラジオボタンオプションとして設計される、請求項２に記載のマルチブートマネージャーの方法。
【請求項６】
前記アプリケーションプログラムは、マルチブートマネージャー用のパーティションの前記アドレスフラグが前記第一又は第二パーティションを管理するように変更させる、請求項２に記載のマルチブートマネージャーの方法。
【請求項７】
前記記録媒体は、少なくとも一つのパーティションからなる複数のハードディスクを含み、前記マルチブートマネージャー用のパーティションは前記複数のハードディスクの一つに定義される、請求項２に記載のマルチブートマネージャーの方法。
【請求項８】
マルチブートマネージャーの方法であって、前記方法は、
マスターブートレコード（ＭＢＲ）を有する第一セクタ、マルチブートマネージャー用のパーティション、第一パーティション、及び第二パーティションによって定義される記録媒体をセットアップし、前記マルチブートマネージャー用のパーティションは、マルチブートマネージャー及び第一パーティション又は第二パーティションを管理するアドレスフラグを含み、
ＢＩＯＳプログラムを実行して、ブートセクタを検索し、且つ前記第一セクタの前記ＭＢＲをローディングし、前記ＭＢＲが前記マルチブートマネージャー用のパーティションをメモリにローディングし、前記マルチブートマネージャーが前記第一パーティションに含まれるブートローダーを前記メモリにローディングし、前記ブートローダーにより第一オペレーティングシステム（ＯＳ）を前記メモリにローディングしてコンピュータをスタートアップし、
オペレーティングシステムを変更し、その方法は以下を含む：前記第一ＯＳの条件の下アプリケーションプログラムを実行し、利用者により選択される対話型オプションインターフェースを形成し、前記利用者の選択又は操作に従って前記マルチブートマネージャー用のパーティションの前記アドレスフラグが前記第二パーティションを管理するように変更し、
コンピュータをリブートし、その方法は以下を含む：前記第一ＯＳをアンロードし、前記ＢＩＯＳプログラムではなく前記ＭＢＲを直接メモリにローディングし、前記ＭＢＲが前記マルチブートマネージャー用のパーティションをローディングし、前記マルチブートマネージャー用のパーティションの前記アドレスフラグが前記第二パーティションを管理することに基づいて前記マルチブートマネージャー用のパーティションのマルチブートマネージャーが前記第二パーティションをローディングし、前記第二パーティションの第二ＯＳをローディングするマルチブートマネージャーの方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチブートマネージャーの方法に関するものであり、より具体的にはハードディスク上のマルチブートマネージャー用のパーティションを定義するための方法である。
【背景技術】
【０００２】
Ｘ８６セントラル・プロセッシング・ユニット（ＣＰＵ）を搭載するコンピュータについては、通常のブート手続きは、オペレーティングシステム（ＯＳ）がロードされるまで電源が供給される。
ＩＢＭ  ＰＣと互換性のあるコンピュータシステムにおいて最初に実行されるプロセスは、コンピュータの電源投入後の基本入出力システム（ＢＩＯＳ）である。実際に、ＢＩＯＳはマザーボードまたはフラッシュメモリー上の読み出し専用メモリ（ＲＯＭ）に記録されており、コンピュータシステムの基本操作用のサービスプログラムとして機能する。一般的に、ハードウエアに保存されたソフトウエアは、ファームウエアと呼ばれる。ファームウエアは、特定のユーティリティプログラムを介してメモリに保存されたサービスプログラムの更新または修復に役立つ。
【０００３】
はじめに、ＢＩＯＳは通常稼動中のコンピュータにインストール又は接続された周辺機器を確保するためにパワーオン・セルフテスト（ＰＯＳＴ）を実行する。その後、ＢＩＯＳは、ソフトウエアに位置するオペレーティングシステムをローディングするために、ブートセクタを検索する命令実行し、ソフトウエアのブートセクタの読み取りを試す。ソフトウエアに位置するオペレーティングシステムが存在しない場合、ＢＩＯＳは、ハードディスクに位置するオペレーティングシステムをローディングするために、マスターブートレコード（ＭＢＲ）として知られるハードディスク上の第一セクタを読み取り始める。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】台湾公開公報２０１０−０１２８５号
【０００５】
図１は従来のハードディスクパーティションを示すが、この図に限定されるものではない。実際には、様々なパーティションの定義モードがハードディスク上に存在する。図１に示されるように、ハードディスク上の第一セクタは、シリンダ０、ヘッド０、セクタ１のアドレスに位置したマスターブートレコード（ＭＢＲ）１５として知られている。ハードディスクは、様々なオペレーティングシステムをローディングするための複数のパーティションに分割されてもよい。パーティションは、主要パーティション１１、１２、及び拡張パーティション１３に分割されてもよい。主要パーティションは従来、最大で４つ定義される。１つの拡張パーティションがハードディスク上に存在する場合、主要パーティションは最大で３つ定義される。拡張パーティションは１つであるが、複数の倫理パーティション１３１−１３３として定義されてもよい。
【０００６】
ＭＢＲ１５に記録されたデータは、３つのパートに分割されてもよい。一つはブートセクタをメモリにローディングするためのプレローダー又はプレブートであるブートパーティションローダー（ＢＰＬ）１５１である。二つ目は、ハードディスク上にパーティションのデータを記録するためのパーティションデータ１５２であり、スタートアップアドレス及び各パーティションの容量などのハードディスクパーティションの状態を記録するためのパーティションテーブルに含まれる。三つ目は、MBRのすべてのセクターデータが正しいかどうかを検証するための検証データ１５３である。
【０００７】
コンピュータをブートする例として、まずコンピュータに電源が投入されたとき、ＢＩＯＳプログラムが実行されＢＩＯＳはメモリにロードされる。そして、パワーオン・セルフテスト（ＰＯＳＴ）が、ＣＰＵ、マザーボード、メモリなどのコンピュータのハードウエアをテストするために実行される。テスト結果は出力され、スクリーンまたはデュプリケーターに表示される。ブート手続きに続いて、ハードウエア及び周辺機器は、ＰＯＳＴを用いて通常動作するようにテストされる。仮にビデオグラフィックスカード（ＶＧＡ）、ｉｎｔｅｇｒａｔｅｄ ｄｅｖｉｃｅ ｅｌｅｃｔｒｏｎｉｃｓ（ＩＤＥ）、又はシリアルＡＴＡ（ＳＡＴＡ）などのほかのハードウエアに記録されたＢＩＯＳが存在する場合、ＢＩＯＳプログラムは同時に実行される。
【０００８】
ＢＩＯＳは、コンピュータをスタートアップするためのブートセクタ検索命令を行い、メモリにコンピュータスタートアップ用のブートセクタをロードする。ハードディスクに関しては、ハードディスク上の第一セクタに位置するＭＢＲが読み取られメモリにロードされる。プログラム実行の制御は、ブートフラグとともにパーティションセットアップをメモリにロードするマスターブートレコード（ＭＢＲ）のブートパーティションローダーに伝えられる。プログラム実行の制御は、パーティションのブートセクタにブートフラグとともに伝えられる。ブートセクタは、ブートローダーを含み、ブートローダーのガイディングアシスタントを介してブートフラグを有するパーティションのオペレーティングシステムをメモリにローディングして実行する。そして、プログラム実行の制御は、オペレーティングシステムに伝えられるので、ブート手続きは終了する。
【０００９】
ハードディスクは、ロードされる様々なオペレーティングシステムによって複数のパーティションに分割されてもよいが、実行には、ブートフラグとともにメモリにロードされるパーティションだけが存在する。結果として、通常ブート手続きはリニア且つ相互排他的であり、すなわち、ブートする際にブートフラグを有するパーティション及び該パーティションにインストールされたＯＳを直接にローディングする。他のブートフラグを有さないパーティション及び他のＯＳは実行されない。
【００１０】
複数ブートコンピュータのために、マルチブートマネージャーのようなソフトが開発されるので、利用者は各パーティションにインストールされた異なるＯＳを管理することができ、異なるＯＳは選択的にメモリをローディングして実行することができる。従来のマルチブートマネージャーは、SPFdisk、GRUB、LILOなどである。
【００１１】
ＢＩＯＳの実行後、ＭＢＲが実行用のメモリにロードされる第一セクタであるので、ほとんどのマルチブートマネージャーは、そこに搭載されるマルチブートマネージャーのＭＢＲを変更又は再構築する。従って、プログラム実施の制御は、ＯＳがロードされる前にＭＢＲによって得られる。コンピュータブートのオプションは、パーティション又はコンピュータブート用のオペレーティングシステムを選択するために利用者に提供される。
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、ＭＢＲが不適切に変更または再構築されたとき、セキュリティー問題が発生する場合がある。例えば、セクタはウイルスを感染させやすく、また正常でないブート手続きとなるような故障を起こしやすい。さらに、大半のマルチブートマネージャーは作動しなくなり、そしてプログラム実行の制御に切り替えられるため、実行できなくなる。他のＯＳに変更した場合、コンピュータをリスタートしなければならず、コールドブート又はホットブートのようなすべてのブート手続きを再度満たす必要がある。言い換えると、ブート手続きは、ＢＩＯＳがロードされた後に実行される必要がある。マルチブートマネージャーがプログラム実行の制御を得たときだけ、異なるOSが付随的にメモリにロードされてもよい。
【課題を解決するための手段】
【００１３】
本発明は、ＢＩＯＳを装備したコンピュータにおけるマルチブートマネージャーの方法及び記録媒体を目的とする。記録媒体は、マルチブートマネージャー用のパーティション、第一パーティション、および第二パーティション用のパーティションで定義され、マルチブートマネージャー用のパーティションはマルチブートマネージャーと第一又パーティションは第二パーティションを管理するアドレスフラグとを含む。
【発明の効果】
【００１４】
マルチブートマネージャーは、３つのステップを含む：コンピュータシステムのスタートアップ、オペレーティングシステムの変更、及びコンピュータシステムのリブート、である。
コンピュータをスタートアップする第一ステップは、以下のステップを含む：ＢＩＯＳプログラムの実行；ＢＩＯＳによるメモリへのマルチブートマネージャー（ＭＢＲ）のローディング；アドレスフラグにより示されたプレブートパーティションに従った第一パーティションの管理、ＭＢＲによるメモリへのマルチブートマネージャー（ＭＢＲ）のローディング、及びマルチブートマネージャー用のパーティションへのプログラム実行の制御の伝達；実行のために、第一パーティションにロードされるマルチブートマネージャーに含まれるマルチブートマネージャー用のパーティション、第一パーティションへのプルグラム実行の制御の伝達；メモリに対して第一パーティションの第一オペレーティングシステムをローディングするためのブートローダーを有するブートセクタに含まれる第一パーティション、及び第一ＯＳに対するプログラム実行の制御の伝達、そしてブート手続きは完了する。
【００１５】
変更ＯＳのステップは以下のステップを含む：第一ＯＳの状況下でのアプリケーションプログラムの実行；ユーザーの選択に対する従来の付随的インターフェースの構築；マルチブートマネージャー用のパーティションのアドレスフラグが第二パーティションを管理するように変更。
【００１６】
最後に、コンピュータのリブートステップは以下を含む：第一ＯＳのアンロード；マスタブートレコード（ＭＢＲ）のローディング；マルチブートマネージャー用のパーティションに位置するマルチブートマネージャーのローディング；マルチブートマネージャーのパーティションのアドレスフラグに従った第二パーティションの管理及び第二パーティションへのマルチブートマネージャーのローディング；第二パーティションに位置する第二ＯＳのローディング。マスタブートレコード（ＭＢＲ）のローディングステップは付随的に省略されてもよい。
【図面の簡単な説明】
【００１７】
【図１】従来のハードディスクパーティションを示す。
【図２】本発明に従ったハードディスクのパーティションを示す。
【図３】マルチブートマネージャーの方法を示すフローチャートである。
【図４】マルチブートマネージャーの方法のその他の実施形態を示すフローチャートである。
【図５】本発明に従ったコンピュータのスタートアップのフローチャートである。
【図６】本発明に従ったコンピュータのスタートアップのフローチャートである。
【図７】本発明に従ったコンピュータのリブート手続きのフローチャートである。
【図８】本発明に従ったコンピュータのリブート手続きのそのほかの実施形態を示すフローチャートである。
【発明を実施するための形態】
【００１８】
本発明は、マルチブートモードを備えたデスクトップ又はノートブックのようなコンピュータに適用できるマルチブートマネージャーの方法を提供する。本発明に従ったマルチブートの方法は、メモリに選択されたオペレーティングシステムのローディング目的のためにコンピュータをオン／オフ時に選択できる複数のオペレーティングシステムをローディングすることを目的とする。
【００１９】
図２は、本発明に従ったハードディスクのパーティションを示し、それは例示の図でありこれに制限されない。実際にハードディスク上には様々なパーティションの定義モードが存在する。コンピュータは記録媒体２を備え、それはハードディスクであることが好ましい。記録媒体２は、アドレスがシリンダ０、ヘッド０、セクタ１である第一セクタに位置するマスターブートレコード（ＭＢＲ）２５を含む。記録媒体２は、複数のパーティション２１−２４を含み、それらはマルチブートマネージャー２４用のパーティション及び複数の主要パーティション２１−２２などであり、少なくとも第一パーティション２１及び第二パーティション２２を含む。その複数のパーティションには異なるオペレーティングシステムがロードでき、本実施形態では第一パーティション２１に第一OSがロードされ、第二パーティション２２に第二ＯＳがロードされている。本発明に従った異なるOSは、Windows（登録商標）XP、 Windows（登録商標）VISTA Windows（登録商標）7、など異なるバージョンのWindows（登録商標）オペレーティングシステム、またはUNIX（登録商標）、Linux, Free BSD, Solaris, MAC OCX、などのWindows（登録商標）以外のオペレーティングシステムを含む。
【００２０】
本発明に従ったマルチブートマネージャー２４用のパーティションは、記録媒体２の独立パーティションであり、メモリにロードされたＭＢＲ２５用の指定のパーティションである。マルチブートマネージャー２４用のパーティションは、コンピュータのブートを制御するためのプログラムであるマルチブートマネージャー２４１と、アドレス及び各パーティションの容量を記録するためのパーティションテーブル２４２と、メモリにロードされる第一パーティション２１及び第二パーティション２２の間に一つのパーティションを指定するためのアドレスフラグ２４３と、を含む。
【００２１】
図３は、マルチブートマネージャーの方法を示すフローチャートである。本実施例で説明される方法は以下を含む：その中に記録されたマルチブートマネージャーによるマルチブートマネージャーのパーティションの定義（ステップ３２）；第一ＯＳをローディングするためのコンピュータのスタートアップ（ステップ３４）；第一ＯＳの条件の下アプリケーションプログラムを実行するためにマルチブートマネージャー用のパーティションのアドレスフラグを変更するためのＯＳの変更（ステップ３６）；第一ＯＳのアンローディング、マルチブートマネージャーのローディング、及びアドレスフラグに従って第二オペレーティングシステムをローディングするためのコンピュータのリブート（ステップ３８）。
【００２２】
図４は、マルチブートマネージャーの方法のそのほかの実施形態を示すフローチャートである。まず、記録媒体のセットアップを実行する（ステップ４２）。記録媒体は、マルチブートマネージャー用のパーティション、第一パーティション及び第二パーティションで定義され、マルチブートマネージャー用のパーティションはマルチブートマネージャー、及び第一パーティション又は第二パーティションを管理するアドレスフラグを含む。
【００２３】
ここで、本発明に従ったコンピュータのブートのフローが図５及び図６を参照して説明される。コンピュータのスタートアップを実行するステップ（ステップ４４）は、以下のステップを含む。ＢＩＯＳプログラムは、スタートアップ又は電源オンコンピュータの信号を受けて実行され、プログラム実行の制御を得る（ステップ４４０）。ＢＩＯＳは、通常オペレーションにおいてコンピュータに接続された周辺機器を確保するためにパワーオン・セルフテスト（ＰＯＳＴ）を実行する。その後、ＢＩＯＳは、シリンダ０、ヘッド０、セクタ１のアドレスに位置したハードディスク上のマスタブートレコード（ＭＢＲ）をメモリにローディングするためにブートセクタを検索する（ステップ４４１）。ＢＩＯＳはプログラム実行の制御をマスタブートレコード（ＭＢＲ）に伝える（ステップ４４２）。ＭＢＲはマルチブートマネージャー用のパーティションをメモリにロードし（ステップ４４３）そしてプログラム実行の制御をマルチブートマネージャー用のパーティションに伝える（ステップ４４４）。マルチブートマネージャー用のパーティションは、マルチブートマネージャー及びアドレスフラグを含む。マルチブートマネージャーは、第一パーティションを管理するアドレスフラグに従って第一パーティションをメモリにロードし（ステップ４４５）、そしてマルチブートマネージャー用のパーティションは、第一パーティションにプログラム実行の制御を伝える（ステップ４４６）。第一パーティションは、第一パーティションに位置する第一ＯＳをメモリにローディングするためのブートローダーを有するブートセクションを含む（ステップ４４７）。第一パーティションは、第一パーティションに位置する第一ＯＳにプログラム実行の制御を伝える（ステップ４４８）。
【００２４】
次に、以下のステップを含む変更オペレーティングシステムが実行される：第一ＯＳの条件の下、アプリケーションプログラムの実行、及び、ユーザーによって選択されるための異なるオペレーティングシステムの複数のネームオプションを含む対話型オプションインターフェースの形成。望ましいインターフェースは、ラジオボタンオプションとして設計され、第一ＯＳのネームオプションは機能しない又はアクセス不可であるかもしくは第一ＯＳのネームオプションは表示不可能である。アプリケーションプログラムは、次のブートのリファレンスのためにアドレスフラグが第二パーティションに管理するように、ユーザーの選択に従ってマルチブートマネージャー用のパーティションのアドレスフラグを変更する。アプリケーションプルグラムは、マルチブートマネージャー用のパーティションに位置する、マルチブートマネージャーと通じていてもよく、又はマルチブートマネージャーが駆動するように指示してもよい。
【００２５】
図７を参照する。図７は、本発明に従ったコンピュータのリスタートのフローチャートである。リブート手続きのステップは、データ管理を安全かつ統合するために確保する第一ＯＳのアンロードを含む（ステップ４８１）。リブート手続きは、コンピュータのホット又はコールドスタートのようなリブートを意味するのではなく、ＢＩＯＳプログラムを省略したそれに続くブート手続きである。コールド又はホットブートにかかわらず、従来のブート手続きは実行のためにＢＩＯＳプログラムをロードする必要があり、本発明にかかるリブート手続きはＢＩＯＳではなくマスターブートレコード（ＭＢＲ）をメモリにロードする必要がある（ステップ４８２）。そしてプログラム実行の制御をＭＢＲのブートパーティションローダーに伝える。その後、ＭＢＲは、マルチブートマネージャー用のパーティションをメモリにロードし（ステップ４８３）、プログラム実行の制御はマルチブートマネージャーを含むマルチブートマネージャー用のパーティションに伝えられる。マルチブートマネージャーは、第二パーティションを管理するアドレスフラグに従って第二パーティションをメモリにロードし（ステップ４８５）、そしてマルチブートマネージャー用のパーティションはプログラム実行の制御を第二パーティションに伝える。第二パーティションは、第二パーティションに位置する第二ＯＳをメモリにローディングする（ステップ４８７）ためのブートローダーを有するブートセクタを含む。第二パーティションは、第二パーティションに位置する第二ｏｓにプログラム実行の制御を伝える。
【００２６】
図８は、本発明に従ったコンピュータのリブートのそのほかの実施形態を示すフローチャートである。この実施例は、ＢＩＯＳプログラムとマスターブートレコード（ＭＢＲ）とを省略したリブート手続きを説明する。リブートステップは、以下を含む：第一オペレーティングシステムのアンローディング（ステップ４８１）；ＢＩＯＳプログラム及びマスターブートレコード（ＭＢＲ）ではなく、マルチブートマネージャー用のパーティションをメモリへのローディング；マルチブートマネージャー用のパーティションへのプログラム実行の制御の伝達；その後、ステップ４８５及びステップ４８７が実行される。
【００２７】
本発明は、望ましい実施例に関して説明されてきたが、本発明の範囲及び添付の特許請求の範囲に逸脱することなく他の様々な変更が加えられてもよい。
【図１】
0005723554.tif 000002
【図２】
0005723554.tif 000003
【図３】
0005723554.tif 000004
【図４】
0005723554.tif 000005
【図５】
0005723554.tif 000006
【図６】
0005723554.tif 000007
【図７】
0005723554.tif 000008
【図８】
0005723554.tif 000009