明 細 書 書換可能型情報記録媒体及びブートストラップ方法 技術分野
本発明は、 例えば C D— RWドライブをブートデパイスとして使用し てコンピュータシステムをブートストラップするのに用いて好適の、 書 換可能型情報記録媒体及び情報記録媒体並びにブートストラップ方法に 関する。 背景技術
一般に、コンピュータシステム [例えばパーソナルコンピュータ(P C)] では、ブートストラップするためのブートデバイスとして、ハードディス ク ドライブ (HDD) ゃフロッピーディスクドライブ (F D D) が使用さ れている。
つまり、 P Cに電源が投入されると、 B I O S (基本入出力システム ; Basic Input Output System) によるシステムチェックや初期化処理を経 た後、 B I O Sによってハードディスク (HD)ゃフ口ッピーディスク (F D) 等のメモリデバイス (外部記憶装置, 補助記憶装置, ストレイジメモ リ) に予め格納されているオペレーティングシステム [O S ;例えば W I ND OWS (Microsoft Corporationの登録商標, 商品名) , MS—D O S (Microsoft Corporationの登録商標, 商品名) ] がメインメモリ (主 記憶装置) 上にロードされて、 O Sが起動するようになっている。
近年、 CD, DVD系の媒体の普及が目覚しく、通常のコンピュータシ ステムであれば、 CD, DVD系の媒体用のドライブが装備されるように なってきているため、 自分の O S環境、即ち自分用にカスタマイズされた
〇 Sを CD, DVD系の媒体に記録して持ち歩き、 HDへインストールす ることなく、 CD, DVD系の媒体用のドライブから直接起動できるよう にし、どこでも自分の OS環境を再現できるようにしたいとの要望がある。 特に、 O Sの中でも WI NDOWSは広く一般に普及しているため、 こ れを CD, DVD系の媒体に記録して持ち歩き、 HDヘインス トールする ことなく、 CD, DVD系の媒体用のドライブから直接起動できるように したいとの要望は強い。
また、 このように CD, DVD系の媒体に記録して持ち歩き、 HDヘイ ンストールすることなく、 CD, DVD系の媒体用のドライブから直接起 動できるようになれば、 これらの媒体を入れ替えるだけで、面倒な設定を することなく、複数の異なる O S環境を使い分けることもできるようにな る。
しかしながら、 例えば、 MS— DO Sのような OSの場合には、 HDD 及ぴ FDDのいずれのブートデバイスからも起動することができる力 S、W I NDOWSのようなデータ容量の大きい OSを格納するには FD (ブー トメディァ)では容量不足であり、 FDには格納することができないため、 FDDをブートデパイスとして起動することはできない。 このため、 WI NDOWSのような OSは、 HDDからしか起動することができなかった c 最近では、 El Torito規格に準拠してフォーマッ トされた CD— ROM (いわゆるブータブル CD, ブートメディァ) も提供されるようになって きており、 El Torito規格に準拠した B I O Sを備える P Cであれば、 プ 一トデバイスとして CD— ROMドライブを指定できるようになってい るため、 CD— ROMドライブを使用して、例えば MS— DO Sのような 〇 Sを直接起動させることができるようになってきている。
しかしながら、 このようなブータプル CDは、従来から行なわれている
FDからの立ち上げを CD— ROMから行なえるようにしただけであり、
従来のローダ(例えばブートストラップローダ等) が格納されている起動 ディスクの内容を、図 1 5に示すようにフロッピーディスクイメージとし て CD— ROMに格納しているだけである。 また、 HDからの立ち上げを CD— ROMから行なえるようにするために、図 1 6に示すようにハード ディスクイメージとして CD— ROMに格納することも考えられる。 また、このようなブータブル CDに MS— DO Sや W I NDOWSなど の OSを格納し、 起動可能なリカバリ CD (バックアップ (?D) とするこ とも行なわれているが、 この場合も、 単に従来のローダとともに、 MS— DO Sや W I NDOWSなどの O Sを一枚のディスクに格納して、ブータ ブル CDとリ力バリ CDとの双方の機能を有するものとして構成しただ けである。
このようなブータブル CDを用いたとしても、例えば WI NDOWSの ように一部のデータを書き換えながら立ち上がる O Sを起動するには、一 旦、 WI NDOWSのような O Sを HDにインス トーノレし、 HDから起動 することになるため、 従来の起動方法と何ら変わらないのである。
ここで、 一般的な P Cのブートストラップについて、 図 1 7 (A) 〜図 1 7 (F) のメインメモリのメモリマップ遷移図、 及ぴ、 図 1 8のブート ストラップの手順を示すフローチャートを参照しながら説明する。 なお、 ここでは、 ローダとしてのブートス トラップローダ (ブートローダ; Boo t Loader) 及び I P L (イニシャル 'プログラム ' ローダ; Initial Pro gram Loader) , MS-DOS , W I N D O W Sが格納されたハードディ スクイメージのブータブル CDを例にして説明する。
つまり、 P Cをブートストラップすべく、 P Cに電源が投入されると、 図 1 7 (A) に示すように、 メインメモリ上の例えばアドレス 0E0000H〜0 FFFFFHの領域に B I O Sが読み込まれ、この B I O Sが実行されてハード ウェアの初期化等が行なわれる。 ごの際、 図 1 7 (B) に示すように、 B
I O Sに含まれるプログラムによってメインメモリ上の例えば最もァド レス 000000H側の領域に割り込みべク トルテーブルが作成される。その後、 B I OSに含まれるブートストラッププログラムが実行されて、ブータブ ル CDに格納されているデータが読み込まれる。 なお、 図 1 7 (A) 〜図 1 7 (F) のメモリマップでは、 Intel社の x 8 6系 (808 6) のマイ ク口プロセッサのメインメモリを例にしている。
具体的には、 図 1 8に示すように、 ステップ C 1 0で、 B I〇 Sは、 ブ ータブル CDの論理ァドレス番号 LB A 1 6に記録されているプライマ リ 'ボリューム ·ディスクリプタ (Primary Volume Descriptor) を読み 込み、 さらに、論理ァドレス番号 L B A 1 7のブートレコードボリユーム ティスクジプタ (Boot Record Volume Descriptor) を isみ; ιΔむ。
次に、 ステップ C 20で、論理ァドレス番号 LB A 2 0のプーティング カタログ (Booting Catalog) を読み込み、 ステップ C 30で、 論理アド レス番号 L B A 2 7のブートス トラップローダ (ブートローダ; Boot Lo ader) をメインメモリ上にロードする。 例えば、 ブートストラップローダ は、 図 1 7 (C) に示すように、 メインメモリ上のアドレス 0007C0Hに口 一ドされる。
次いで、ステップ C 40で、 メインメモリ上にロードされたブートス ト ラップローダが実行されると、 図 1 7 (D) に示すように、 I P L (ィニ シャノレ 'プログラム .ローダ; Initial Program Loader) がメインメモリ 上にロードされ、 ステップ C 5 0で、 I P Lが実行され、 これにより、 図 1 7 (E) に示すように、 MS— DOS (O S) がメインメモリ上にロー ドされて、 MS— DO Sが実行されて起動する。
これに続き、 図 1 7 (F) に示すように、 W I ND OWS (O S) をメ インメモリ上にロードして、実行し、 WI NDOWSを起動させようとす ると、 起動時にエラーが発生して起動させることができない。 つまり、 E
1 Torito規格に準拠した B I O Sによって、ブータブル C Dからローダや MS—DO S等を読み込み、 さらに、 WI NDOWSのように一部のデー タ (ファイル) を書き換えながら立ち上がる O Sを読み込むことができた としても、 B I OSにはブータブル CDにデータを書き込むためにデイス ク ドライブを操作 [ライ ト動作 (Write動作) ]するためのプログラム (書 込用ディスク ドライバに相当するもの) が含まれていないため、データを 書き換えることができず、エラーが発生してしまレ、、 W I NDOWSを起 動させることができない。
このため、 起動した MS— D O Sを用いて、 一旦、 ブータブル CDに格 納されている W I NDOWSを HDヘインス トールし、 HDから W I ND OWSを立ち上げることになる。
つまり、自分用にカスタマィズされた W I ND OWSのような O Sを C D, DVD系の媒体に記録して持ち歩けたとしても、 これは単に CD, D VD系の媒体にバックアップをとって持ち歩いているにすぎず、他の P C 等のコンピュータシステムで自分用にカスタマィズされた W I ND OW Sのような O Sを実際に使用するためには、使用する P C等のコンビユー タシステムの HDに自分用にカスタマイズされた W I NDOWSのよう な O Sをィンストールし、 HDから W I NDOWSのような O Sを立ち上 げなければならないのである。
これでは、 上述のように、 CD, DVD系の媒体に記録して持ち歩き、
HDヘインス トールすることなく、 CD, DVD系の媒体用のドライプか ら直接起動できるようにしたり、 CD, DVD系の媒体を入れ替えるだけ で、面倒な設定をすることなく、複数の異なる O S環境を使い分けること もできるようにしたいとの要望に応えることにはならない。
このように、 WI NDOWSのような OSは、起動するたびにメモリデ バイス (外部記憶装置) に予め格納されているデータのうち一部のデータ
■ を書き換えながら立ち上がるようになっているため、上述のようなブータ ブル CDを使用したとしても、結局、 HDDからしか起動することができ ない。
ここで、予め O Sを格納しておくメモリデバイスとしては、再生専用の もの (CD— ROM, DVD-ROM) のほか、 書換可能なもの (HD, FD, CD-RW, D VD-RW, DVD-RAM) 、 追記可能 ( 1度だ け記録可能) なもの (CD_R, DVD-R) もある。
このうち、 CD— ROM, DVD— ROMのような再生専用媒体や CD — R, D VD— Rのような追記可能媒体ではデータの書き換えができない ため、 CD— ROM, DVD— ROMのような再生専用媒体用のドライブ や CD— R, DVD— Rのような追記可能媒体用のドライブからは W I N DOWSのように一部のデータを書き換えながら立ち上がる O Sを直接 起動することはできない。
一方、 CD— RW, D VD-RW, D V D _ R AMのような書換可能媒 体は、 データの書き換えができるため、 CD— RW, D VD-RW, D V D— RAMのような書换可能媒体用のドライブからは W I NDOWSの ように一部のデータを書き換えながら立ち上がる OSを直接起動するこ とができる可能性はある。
しかしながら、 B I OSには、 CD— RW, D VD-RW, DVD-R AMのような書換可能媒体にデータを書き込むためにディスク ドライブ を操作 [ライ ト動作 (Write動作) ] するためのプログラム (書込用ディ スク ドライバに相当するもの) は含まれていないため、データを書き換え ることができない。
一方、 B I OSには、 HDにデータを書き込むためにディスク ドライブ を操作 [ライ ト動作 (Write動作) ] するためのプログラム (書込用ディ スク ドライバに相当するもの) は含まれているため、 W I NDOWSのよ
うに一部のデータを書き換えながら立ち上がる o sをハードディスクィ メージとして CD— RW等の書換可能媒体に書き込んで、これを C D— R W等の書換可能媒体用のドライブによって読み出すようにすることで、 B I O Sには擬似的に HDに見えるようにすること(ハードディスクエミュ レート) が考えられる。
ここで、 HDに対しては、データはディスク内のセクタ領域にセクタ単 位で書き込まれたり、読み込まれたりするようになっており、例えば HD のフォーマツ ト時にセクタ長は 5 1 2バイ トになっているので、 WI ND OWSのように一部のデータを書き換えながら立ち上がる O Sを起動す る際に、 B I OSは HDに書き込まれているデータをセクタ単位(5 1 2 バイ ト毎) で書き換えようとする。
しかしながら、一般に CD— RW等の書換可能媒体に書き込まれている データはブロック (2キロパイ ト) 単位で管理されており、 また、 一般的 な C D— R W等の書換可能媒体にデータを書き込むための書込用デイス ク ドライバでは、バケツトライ トの場合であっても 3 2ブロック (64キ ロバイ ト) [通常、 32ブロックであるが、 3 2ブロック以外にも設定変 更可能で、 例えば 1 6プロック (3 2キロバイ ト) と設定することもでき る] といった大きな単位でデータの書き換えを行なうようになっている。 このため、このような一般的な書込用ディスク ドライバと同様のものを書 込用ディスク ドライバとして用いると、 WI NDOWSのように一部のデ ータを書き換えながら立ち上がる OSを起動する際に、 B I OSがセクタ 単位 ( 5 1 2バイ ト毎) でデータを書き換えようとしても、 特定の一部の データのみを書き換えることはできず、結局、 WI NDOWSを起動する ことができない。 発明の開示
本発明は、 このような課題に鑑み創案されたもので、 CD, DVD系の 媒体のうち CD— RW, D VD-RW, D V D— R AMのような書換可能 型情報記録媒体に、自分用にカスタマイズされたオペレーティングシステ ム〇 S (—部のデータを書き換えながら起動する W I NDOWSのような O S) を格納して持ち歩き、その OSを HDにインストールすることなし に、 これらの書換可能型情報記録媒体から直接起動させうるようにして、 どこでも自分の O S環境を再現できるようにした、書換可能型情報記録媒 体及び情報記録媒体並びにブートス トラップ方法を提供することを目的 とする。
本発明の書換可能型情報記録媒体 [コンピュータ読み取り可能な記録 媒体 (書換可能型情報記録媒体)] は、 コンピュータシステムに接続され る書換可能型情報記録媒体用ドライブを介してデータの読み出し, 書き 込みを行ないうる書換可能型情報記録媒体であって、 データ (一部のデ ータ) を書き換えながら [データ (一部のデータ) を書き換える処理を コンピュータシステムに実行させながら] 立ち上がる第 1のオペレーテ ィングシステムと、 書換可能型情報記録媒体用ドライブを書き込み操作 するための (処理をコンピュータシステムに実行させる) 書換可能型情 報記録媒体書込用ドライバと、 コンピュータシステムのメインメモリ上 の割り込みべク トルテーブルに格納されるコンピュータシステムのディ スク ドライブを操作するための (処理をコンピュータシステムに実行さ せる) B I O Sの割り込み処理プログラムの先頭アドレスを、 書換可能 型情報記録媒体書込用ドライバの先頭ァドレスに書き換える (処理をコ ンピュータシステムに実行させる) ァドレス変換プログラムとを格納し たことを特徴としている。
本発明の書換可能型情報記録媒体によれば、 CD, DVD系の媒体の うち CD— RW, D VD-RW, D V D— R AMのような書換可能型情
報記録媒体に、 自分用にカスタマイズされたオペレーティングシステム
OS (特に、 一部のデータを書き換えながら起動する W I NDOWSの ような O S) を格納して持ち歩き、 その O Sを HDにインス トールする ことなしに、 これらの書換可能型情報記録媒体から直接起動させ、 どこ でも自分の O S環境を再現できるようになるという利点がある。
特に、 自分用にカスタマィズされたォペレ一ティングシステム (O S) が記録された CD— RW, D VD-RW, D V D— R AMのような書換 可能型情報記録媒体に、 通常頻繁に使用するアプリケーションプロダラ ムを記録しておけば、 例えばあるコンピュータシステム (例えばパーソ ナルコンピュータ) での作業中に他のコンピュータシステムで作業を行 なう必要が生じた場合等に、 任意のコンピュータシステムを使って継続 して作業を行なえるようになる。
また、 万が一通常使用しているコンピュータシステム (例えばパーソ ナルコンピュータ) のハードディスクに障害が生じた場合にも、 CD— RW, D VD-RW, D V D— R AMのような書換可能型情報記録媒体 を用いることで、 ハードディスクの代わりに緊急避難的に作業を継続す ることが可能となる。 つまり、 CD— RW, D VD-RW, DVD-R AMのような書換可能型情報記録媒体は、 緊急時用記録媒体 (緊急ディ スク) として使用することができる。
また、 書換可能型情報記録媒体書込用ドライバ及びア ドレス変換プロ グラムをメインメモリ上にロードし、 B I O Sの割り込み処理プロダラ ムとして実行することで、書換可能型情報記録媒体に格納された O S (— 部のデータを書き換えながら起動する WI NDOWSのような O S) を 書換可能型情報記録媒体から直接起動させるために、 特に B I〇 Sを設 計変更しなくてもよく、 簡便な方法で実現できるという利点もある。 好ましくは、 書換可能型情報記録媒体を、 基板上に結晶状態の部分を
未記録状態 ·消去状態とし、 非晶質状態の部分を記録状態とする相変化 型記録層を有するものとして構成する。
好ましくは、 コンピュータシステムのブートス トラップ時に第 1オペ レーティングシステムをメインメモリ上へロードするための (処理をコ ンピュータシステムに実行させる) ローダを格納する。
これによれば、 ローダは、 コンピュータシステムをブートス トラップ する際に最初にメインメモリ上にロードされるものであるため、 W I N D O W Sが起動する前に、 書換可能型情報記録媒体書込用ドライバ及び ァドレス変換プログラムをメインメモリ上に確実にロードすることがで き、ァドレス変換プログラムを実行することができるという利点もある。 また、ローダを、ブートストラップローダを備えるものとして構成し、 書換可能型情報記録媒体書込用ドライバ及びア ドレス変換プログラムを、 ブートス トラップローダに含ませるのが好ましい。
また、 データの書き換えを行なわずに [データを書き換える処理をコ ンピュータシステムに実行させずに] 立ち上がる第 2のオペレーティン グシステム (例えば M S— D O S ) と、 コンピュータシステムのブート ス トラップ時に第 1オペレーティングシステム(例えば W I N D O W S ) 及び第 2オペレーティングシステムをメインメモリ上へロードするため の (処理をコンピュータシステムに実行させる) ローダとを格納し、 口 ーダが、 第 2オペレーティングシステムを第 1オペレーティングシステ ムよりも先にメインメモリ上へロードする (処理をコンピュータシステ ムに実行させる) ように構成され、 書換可能型情報記録媒体書込用ドラ ィパ及ぴァドレス変換プログラムを、 第 2オペレーティングシステムの 常駐プログラムに含ませるのが好ましい。
これにより、 第 1のオペレーティングシステムと しての W I N D O W
Sが起動する前に、 第 2のオペレーティングシステムとしての M S— D
O Sが起動するようになり、 書換可能型情報記録媒体書込用ドライバ及 ぴァドレス変換プログラムが M S— D〇 Sの常駐プログラムとしてメイ ンメモリ上にロードされることになる。
これによれば、 書換可能型情報記録媒体書込用ドライバ及びァドレス 変換プログラムがデータの書き換えを行なわずに立ち上がる O S (M S - D O S ) の常駐プログラムとされているため、 メインメモリ上に書換 可能型情報記録媒体書込用ドライバ及ぴァドレス変換プログラムを格納 するための領域を別個に確保したり、 上書きされないようにメモリ転送 を行なったりする必要がなく、 より簡便な方法で、 書換可能型情報記録 媒体書込用ドライバ及ぴァドレス変換プログラムをメインメモリ上へ口 ードすることができ、 さらに書換可能型情報記録媒体書込用ドライバが 上書きされないでメインメモリ上に残しておくことができるという利点 がある。
また、書換可能型情報記録媒体書込用ドライバを、 B I O Sにより (コ ンピュータシステムが B I O Sを実行して) 設定されたドライブ番号が 書換可能型情報記録媒体用ドライブのドライブ番号であるか否かを判定 するステップと、 B I O Sによる書き込み命令があつたか否かを判定す るステップと、 B I O Sにより (コンピュータシステムが B I O Sを実 行して) 設定されたドライブ番号が書换可能型情報記録媒体用ドライブ のドライブ番号であると判定し、 かつ、 B I O Sによる書き込み命令が あつたと判定した場合に、 書換可能型情報記録媒体へ書き込みを行なう ベく書換可能型情報記録媒体用ドライブを書き込み動作させるステップ とを備える (即ち、 これらのステップをコンピュータシステムに実行さ せる) ものとして構成するのが好ましい。
また、書換可能型情報記録媒体書込用ドライバを、 B I O Sにより (コ ンピュータシステムが B I O Sを実行して) 設定されたドライブ番号が
書換可能型情報記録媒体用ドライブのドライブ番号でないと判定したか、 又は、 B I O Sによる書き込み命令がなかったと判定した場合には、 B I O Sの割り込み処理プログラムの先頭ァドレスを指定するステップを 備える (即ち、 このステップをコンピュータシステムに実行させる) も のとして構成するのが好ましい。
さらに、 ア ドレス変換プログラムが、 書換可能型情報記録媒体用ドラ イブに装着されている媒体が書換可能型情報記録媒体であるか否かを判 定するステップを備える (即ち、 このステップをコンピュータシステム に実行させるものとして構成する) のが好ましい。
これによれば、 メインメモリ上に残しておく必要のある C D— R W書 込用ドライバのプログラムを小さくできるという利点がある。
また、書換可能型情報記録媒体書込用ドライバは、 B I O Sにより (コ ンピュータシステムが B I O Sを実行して) 設定されたドライブ番号が 書換可能型情報記録媒体用ドライブのドライブ番号であるか否かを判定 するステップと、 B I〇 Sによる書き込み命令があつたか否かを判定す るステップと、 書換可能型情報記録媒体用ドライブに装着されている媒 体が書換可能型情報記録媒体であるか否かを判定するステップと、 B I
O Sにより (コンピュータシステムが B I O Sを実行して) 設定された ドライブ番号が書換可能型情報記録媒体用ドライブのドライブ番号であ ると判定し、 かつ、 B 1 〇 Sによる書き込み命令があつたと判定し、 か つ、 書換可能型情報記録媒体用ドライブに装着されている媒体が書換可 能型情報記録媒体であると判定した場合に、 書換可能型情報記録媒体へ 書き込みを行なうべく書換可能型情報記録媒体用ドライブを書き込み動 作させるステップとを備える (即ち、 これらのステップをコンピュータ システムに実行させる) ものとして構成するのが好ましい。
また、書換可能型情報記録媒体書込用ドライバは、 B I O Sにより (コ
ンピュータシステムが B I O Sを実行して) 設定されたドライブ番号が 書換可能型情報記録媒体用ドライブのドライブ番号でないと判定したか、 又は、 B I O Sによる書き込み命令がなかったと判定したか、 又は、 書 換可能型情報記録媒体用ドライブに装着されている媒体が書換可能型情 報記録媒体でないと判定した場合には、 ア ドレス書換プログラムによつ て書き換える前の B I O Sの割り込み処理プログラムの先頭ァドレスを 指定するステップを備える (即ち、 このステップをコンピュータシステ ムに実行させる) ものとして構成するのが好ましい。
さらに、 書換可能型情報記録媒体書込用ドライバを、 書き込むデータ のプロック数及び先頭論理ブロック番号に基づいて、 書換可能型情報記 録媒体に格納されているオペレーティングシステムのデータの中の書き 換えるべきデータを特定する (処理をコンピュータシステムに実行させ る) ものとして構成するのが好ましい。
これよれば、 書き込むデータのブロック数及ぴ先頭論理プロック番号 に基づいて、 書換可能型情報記録媒体に格納されているオペレーティン グシステムのデータの中の書き換えるべきデータを特定し、 6 4 k B , 3 2 k Bといった大きな単位で行ないながら、 実質的には書き換える必 要のある特定の一部のデータだけを書き換える (差し替える) ようにし ているため、 C D系, D V D系の書換可能型情報記録媒体を用いて W I N D O W Sのように一部のデータを書き換えながら立ち上がる〇 Sを起 動する場合であっても、 途中で止まってしまうことなく、 確実に起動さ せることができるという利点がある。
本発明の情報記録媒体 [コンピュータ読み取り可能な記録媒体 (情報 記録媒体)] は、 データ (データの一部) を書き換えながら [データ (デ ータの一部) を書き換える処理をコンピュータシステムに実行させなが ら] 立ち上がる第 1のオペレーティングシステムを起動する際に用いら
れ、 コンピュータシステムのメインメモリ上の割り込みべク トルテープ ルに格納される前記コンピュータシステムのディスク ドライブを操作す るための (処理をコンピュータシステムに実行させる) B I O Sの割り 込み処理プログラムの先頭ァドレスを、 書換可能型情報記録媒体書込用 ドライバの先頭ァドレスに書き換える (処理をコンピュータシステムに 実行させる)ァドレス変換プログラムを格納したことを特徴としている。 本発明の情報記録媒体によれば、 CD, DVD系の媒体のうち CD— RW, D VD-RW, DVD— RAMのような書換可能型情報記録媒体 に、自分用にカスタマィズされたオペレーティングシステム O S (特に、 —部のデータを書き換えながら起動する W I NDOWS,のような O S) , を格納して持ち歩き、 その OSを HDにインス トールすることなしに、 これらの書換可能型情報記録媒体から直接起動させ、 どこでも自分の O S環境を再現できるようになるという利点がある。
特に、 自分用にカスタマィズされたオペレーティングシステム (O S) が記録された CD— RW, D VD-RW, D V D— R AMのような書換 可能型情報記録媒体に、 通常頻繁に使用するアプリケーションプロダラ ムを記録しておけば、 例えばあるコンピュータシステム (例えばパーソ ナルコンピュータ) での作業中に他のコンピュータシステムで作業を行 なう必要が生じた場合等に、 任意のコンピュータシステムを使って継続 して作業を行なえるようになる。
また、 万が一通常使用しているコンピュータシステム (パーソナルコ ンピュータ) のハードディスクに障害が生じた場合にも、 CD— RW, DVD-RW, D VD— RAMのような書換可能型情報記録媒体を用い ることで、 ハードデイスクの代わりに緊急避難的に作業を継続すること が可能となる。 つまり、 CD— RW, D VD -RW, DVD— RAMの ような書換可能型情報記録媒体は、 緊急時用記録媒体 (緊急ディスク)
として使用することができる。
また、 書換可能型情報記録媒体書込用ドライバ及びァドレス変換プロ グラムをメインメモリ上にロードし、 B I O Sの割り込み処理プロダラ ムとして実行することで、書換可能型情報記録媒体に格納された O S (— 部のデータを書き換えながら起動する W I N D O W Sのような O S ) を 書換可能型情報記録媒体から直接起動させるために、 特に B I O Sを設 計変更しなくてもよく、 簡便な方法で実現できるという利点もある。 好ましくは、 書換可能型情報記録媒体用ドライブを書き込み操作する ための (処理をコンピュータシステムに実行させる) 書換可能型情報記 録媒体書込用ドライバを格納する。
また、 情報記録媒体を、 コンピュータシステムをブートス トラップし うるブータブルディスクとして構成するのが好ましい。
さらに、 データの書き換えを行なわずに [データを書き換える処理を コンピュータシステムに実行させずに] 立ち上がる第 2のオペレーティ ングシステムと、 コンピュータシステムのブートス トラップ時に第 2ォ ペレーティングシステムをメインメモリ上へロードするための (処理を コンピュータシステムに実行させる)ローダとを格納するのが好ましい。 また、 本発明のブートス トラップ方法は、 書換可能型情報記録媒体を 装着する書換可能型情報記録媒体用ドライブを第 1のオペレーティング システムを起動するためのブートデバイスとして使用可能なコンビユー タシステムのブートストラップ方法であって、 第 1オペレーティングシ ステムが、 データ (一部のデータ) を書き換えながら [即ち、 データ (一 部のデータ) を書き換える処理をコンピュータシステムに実行させなが ら] 立ち上がるものであり、 書換可能型情報記録媒体に、 第 1オペレー ティングシステムと、 書換可能型情報記録媒体用ドライブを書き込み操 作するための (処理をコンピュータシステムに実行させる) 書換可能型
情報記録媒体書込用ドライバと、 コンピュータシステムのメインメモリ 上の割り込みべク トルテーブルに格納されるコンピュータシステムのデ イスク ドライブを操作するための (処理をコンピュータシステムに実行 させる) B I O Sの割り込み処理プログラムの先頭ア ドレスを、 書換可 能型情報記録媒体書込用ドライバの先頭ア ドレスに書き換える (処理を コンピュータシステムに実行させる) ァ ドレス変換プログラムとが格納 されており、第 1オペレーティングシステムの起動前に、 (コンピュータ システムが、)書換可能型情報記録媒体書込用ドライバ及ぴァドレス変換 プログラムをメインメモリ上にロードし、 ァドレス変換プログラムを実 行して割り込みべク トルテーブルに格納される B I O Sの割り込み処理 プログラムの先頭ァ ドレスを書換可能型情報記録媒体書込用ドライバの 先頭ァドレスに書き換え、 第 1オペレーティングシステムが起動する際 に、 書換可能型情報記録媒体書込用ドライバによって (コンピュータシ ステムが書換可能型情報記録媒体書込用ドライバを実行して)、前記書換 可能型情報記録媒体用ドライブに装着された書換可能型記録媒体に格納 された第 1オペレーティングシステムのデータ (一部のデータ) を書き 換えることを特徴としている。
本発明のブートストラップ方法によれば、 CD, DVD系の媒体のう ち CD— RW, D VD-RW, D V D— R AMのような書換可能型情報 記録媒体に、 自分用にカスタマイズされたオペレーティングシステム O S (特に、 一部のデータを書き換えながら起動する W I NDOWSのよ うな O S) を格納して持ち歩き、 その〇 Sを HDにインス トールするこ となしに、 これらの書換可能型情報記録媒体から直接起動させ、 どこで も自分の O S環境を再現できるようになるという利点がある。
特に、 自分用にカスタマィズされたオペレーティングシステム (O S) が記録された CD— RW, DVD— RW, D V D _ R AMのような書換
可能型情報記録媒体に、 通常頻繁に使用するアプリケーションプロダラ ムを記録しておけば、 例えばあるコンピュータシステム (例えばパーソ ナルコンピュータ) での作業中に他のコンピュータシステムで作業を行 なう必要が生じた場合等に、 任意のコンピュータシステムを使って継続 して作業を行なえるようになる。
また、 万が一通常使用しているコンピュータシステム (例えばパーソ ナルコンピュータ) のハードディスクに障害が生じた場合にも、 CD— RW, D VD-RW, DVD— RAMのような書換可能型情報記録媒体 を用いることで、 ハードディスクの代わりに緊急避難的に作業を継続す ることが可能となる。 つまり、 CD— RW, D VD-RW, DVD-R AMのような書換可能型情報記録媒体は、 緊急時用記録媒体 (緊急ディ スク) として使用することができる。 '
また、 書換可能型情報記録媒体書込用ドライバ及びァドレス変換プロ グラムをメインメモリ上にロードし、 B I 〇 Sの割り込み処理プロダラ ムとして実行することで、書換可能型情報記録媒体に格納された O S (— 部のデータを書き換えながら起動する W I NDOWSのような O S) を 書換可能型情報記録媒体から直接起動させるために、 特に B I O Sを設 計変更しなくてもよく、 簡便な方法で実現できるという利点もある。 好ましくは、 書換可能型情報記録媒体に、 ブートス トラップ時に第 1 オペレーティングシステムをメインメモリ上へロードするための (処理 をコンピュータシステムに実行させる) ローダを格納する。
これによれば、 ローダは、 コンピュータシステムをブートス トラップ する際に最初にメインメモリ上にロードされるものであるため、 WI N DOWSが起動する前に、 書換可能型情報記録媒体書込用ドライバ及び ァドレス変換プログラムをメインメモリ上に確実にロードすることがで き、ァドレス変換プログラムを実行することができるという利点もある。
また、 ローダを、 ブートストラップローダを含むものとして構成し、 (コンピュータシステムが、)書換可能型情報記録媒体書込用ドライバ及 びァドレス変換プログラムを、 ブートストラップローダとともにメイン メモリ上にロードするのが好ましい。
また、第 1オペレーティングシステムの起動前に、 (コンピュータシス テムが、)書換可能型情報記録媒体書込用ドライバを所定の領域へ転送す るのが好ましい。
これによれば、オペレーティングシステムの起動前に、 (コンピュータ システムが、)書換可能型情報記録媒体書込用ドライバを所定の領域へ転 送するため、 ローダとともにメインメモリ上にロードされた書換可能型 情報記録媒体書込用ドライバが、 その後にメインメモリ上にロードされ るオペレーティングシステムによって上書きされないようにすることが できるという利点がある。
また、書換可能型情報記録媒体に、データの書き換えを行なわずに [デ ータを書き換える処理をコンピュータシステムに実行させずに] 立ち上 がる第 2のオペレーティングシステム (例えば M S— D O S ) と、 コン ピュータシステムのブートス トラップ時に第 1オペレーティングシステ ム (例えば W I N D O W S ) 及び第 2オペレーティングシステムをメイ ンメモリ上へロードするための (処理をコンピュータシステムに実行さ せる) ローダとを格納し、 書換可能型情報記録媒体書込用ドライパ及ぴ ァドレス変換プログラムを、 第 2オペレーティングシステムの常駐プロ グラムに含ませ、ローダが(コンピュータシステムがローダを実行して)、 第 1オペレーティングシステムをメインメモリ上へロードする前に、 第 2オペレーティングシステムをメィンメモリ上へロードするとともに、 第 2オペレーティングシステムの常駐プログラムに含まれる書換可能型 情報記録媒体書込用ドライバ及ぴァドレス変換プログラムをメインメモ
リ上へロードするのが好ましい。
これによれば、 書換可能型情報記録媒体書込用ドライバ及ぴァドレス 変換プログラムがデータの書き換えを行なわずに立ち上がる O S (M S - D O S ) の常駐プログラムとされているため、 メインメモリ上に書換 可能型情報記録媒体書込用ドライバ及ぴァドレス変換プログラムを格納 するための領域を別個に確保したり、 上書きされないようにメモリ転送 を行なったりする必要がなく、 より簡便な方法で、 書換可能型情報記録 媒体書込用ドライバ及びァドレス変換プログラムをメインメモリ上へ口 一ドすることができ、 さらに書換可能型情報記録媒体書込用ドライバが 上書きされないでメインメモリ上に残しておくことができるという利点 がある。
本発明のブートス トラップ方法は、 データ (一部のデータ) を書き換 えながら [データ (一部のデータ) を書き換える処理をコンピュータシ ステムに実行させながら] 立ち上がるオペレーティングシステムを起動 させるコンピュータシステムのブートス トラップ方法であって、 ォペレ 一ティングシステムの起動前に、 (コンピュータシステムが)書換可能型 情報記録媒体用ドライブを書き込み操作するための (処理をコンビユー タに実行させる) 書換可能型情報記録媒体書込用ドライバと、 コンビュ ータシステムのメインメモリ上の割り込みべク トルテーブルに格納され るコンピュータシステムのディスク ドライブを操作するための (処理を コンピュータに実行させる) B I O Sの割り込み処理プログラムの先頭 ア ドレスを、 書換可能型情報記録媒体書込用ドライバの先頭ァドレスに 書き換える (処理をコンピュータに実行させる) ア ドレス変換プロダラ ムとを、 メインメモリ上にロードし、 了ドレス変換プログラムを実行し て割り込みべク トルテーブルに格納される B I O Sの割り込み処理プロ グラムの先頭ァドレスを書換可能型情報記録媒体書込用ドライバの先頭
ァドレスに書き換えることを特徴としている。
本発明のブートス トラップ方法は、 データを書き換えながら [データ を書き換える処理をコンピュータシステムに実行させながら] 立ち上が るオペレーティングシステムを起動させるコンピュータシステムのブー トストラップ方法であって、オペレーティングシステムの起動前に、 (コ ンピュータシステムが、)コンピュータシステムに書換可能型情報記録媒 体用ドライバが接続されており、 かつ、 書換可能型情報記録媒体用ドラ イブに装着されている媒体が書換可能型情報記録媒体であるか否かを判 定するステップと、 コンピュータシステムのメインメモリ上の割り込み べク トルテーブルに格納されるコンピュータシステムのディスク ドライ ブを操作するための B I O Sの割り込み処理プログラムの先頭ァドレス を、 書換可能型情報記録媒体書込用ドライバの先頭ァドレスに書き換え るステップとを備える (即ち、 これらのステップをコンピュータシステ ムに実行させる) ア ドレス変換プログラム、 及び、 書換可能型情報記録 媒体用ドライブを書き込み操作するための (処理をコンピュータシステ ムに実行させる) 書換可能型情報記録媒体書込用ドライバを前記メイン メモリ上にロードし、 ァドレス変換プログラムの判定ステップを実行し て、 書換可能型情報記録媒体用ドライバが接続されており、 かつ、 書換 可能型情報記録媒体用ドライブに装着されている媒体が書換可能型情報 記録媒体であるか否かを判定し、 書換可能型情報記録媒体用ドライバが 接続されており、 かつ、 書換可能型情報記録媒体用ドライブに装着され ている媒体が書換可能型情報記録媒体であると判定した場合に、 ァドレ ス変換プログラムのァドレス書換ステップを実行して割り込みべク トル テーブルに格納される B I O Sの割り込み処理プログラムの先頭ァドレ スを書換可能型情報記録媒体書込用ドライバの先頭ァ ドレスに書き換え- オペレーティングシステムが起動する際に、 書換可能型情報記録媒体書
込用ドライバによって (即ち、 コンピュータシステムが書換可能型情報 記録媒体書込用ドライバを実行して)、書換可能型情報記録媒体用ドライ プに装着された書換可能型記録媒体に格納されたオペレーティングシス テムのデータ (一部のデータ) を書き換えることを特徴としている。
これによれば、 メインメモリ上に残しておく必要のある C D— R W書 込用ドライバのプログラムを小さくできるという利点がある。 図面の簡単な説明
図 1は、 本発明の第 1実施形態にかかる書換可能型情報記録媒体とし ての C D— R Wの管理領域とデータ領域との配置の一例を示す図である c 図 2は、 本発明の第 1実施形態にかかる書換可能型情報記録媒体とし ての C D— R Wを示す模式的断面図である。
図 3は、 本発明の第 1実施形態にかかる書換可能型情報記録媒体の C D - R Wの構造例を示す図である。
図 4は、 一般的な割り込みベク トルテーブルを示す図である。
図 5 ( A ) 〜図 5 ( G ) は、 本発明の第 1実施形態にかかる書換可能 型情報記録媒体の C D— R Wを用いてブートストラップする場合のメイ ンメモリのメモリマップ遷移図である。
図 6は、 本発明の第 1実施形態にかかる書换可能型情報記録媒体の C D— R Wを用いてブートストラップする場合の手順を示すフロ一チヤ一 トである。
図 7は、 一般的な B I O Sによるハードディスクのリード /ライ ト動 作を示すプログラムの一例を示している。
図 8は、 本発明の第 1実施形態にかかる書換可能型情報記録媒体の C D— RWに対して書き込みを行なう場合の動作を説明するための図であ る。
図 9は、 本発明の第 1実施形態にかかる書換可能型情報記録媒体の C D— RWに対して書き込みを行なう場合の手順を示すフローチャートで ある。
図 1 0は、 本発明の第 1実施形態にかかる書換可能型情報記録媒体の CD— RWに対して書き込みを行なう場合の書き込み方法を説明するた めの図である。
図 1 1は、 本発明の第 2実施形態にかかる書換可能型情報記録媒体の CD— RWの構造例を示す図である。
図 1 2 (A) 〜図 1 2 (G) は、 本発明の第 2実施形態にかかる書換 可能型情報記録媒体の CD _RWを用いてブートストラップする場合の メインメモリのメモリマップ遷移図である。
図 1 3は、 本発明の第 2実施形態にかかる書換可能型情報記録媒体の CD— RWを用いてブートストラップする場合の手順を示すフローチヤ 一トである。
図 1 4は、 本発明の各実施形態にかかる書換可能型情報記録媒体の C
D— RWを用いてブートストラップする場合のァドレス変換プログラム による処理手順の変形例を示すフローチヤ一トである。
図 1 5は、 一般的なフロッピーィメージのブータブル C Dの構造例を 示す図である。
図 1 6は、 一般的なハードディスクイメージのブータブル CDの構造 例を示す図である。
図 1 7 (A) 〜図 1 7 (F) は、 一般的なブートストラップ時のメイ ンメモリのメモリマップ遷移図である。
図 1 8は、 一般的なブータブル CDを用いてプ^"トストラップする場 合の手順を示すフローチャートである。
発明を実施するための最良の形態
以下、 本発明の一実施形態にかかる書換可能型情報記録媒体及び情報 記録媒体並びにブートストラップ方法について、 図面を参照しながら詳 細に説明する。
(第 1実施形態)
本実施形態にかかる書換可能型情報記録媒体としては、 CD, DVD 系の媒体では CD— RW, D VD-RW, D V D— R AMのような媒体 があるが、 ここでは CD— RWを例に説明する。
まず、 図 1は、 本発明を適用した書換可能型情報記録媒体 (情報記録 媒体) としての CD— RW (光ディスク) の管理領域 (非データ領域) とデータ領域との配置の一例を示す図である。
この図 1に示すように、 CD— RW (単にディスクともいう) 1 00 は、光学的に再生又は記録可能な記録媒体であって、管理領域 1 0 1と、 ユーザ領域 1 0 2とを備えている。
このうち、 管理領域 1 0 1は、 ドライブ装 ¾ (図示せず) が再生可能 な領域であってユーザはその領域をアクセスできない領域であり、 P C A (Power Calibration Area) と P M A (Program Memory Area)と力、らな る。
ここで、 P C Aは、 データを書込むときのレーザの強さを調節するた めの情報が記録される領域である。 また、 PMAには、 CD— Rや CD 一 RWに特有の一時的なファイル管理情報記録領域であり、 例えば追記 時の記録開始ァドレスが一時的に記録されている。
ユーザ領域 1 0 2は、 ドライブ装置が読み出し可能な領域であってュ 一ザがその領域を任意にアクセスできる領域である。
このユーザ領域 1 0 2は、 リードインを格納するためのリードイン領 域 1 0 3と、 ユーザデータを記録すべきデータ領域 (プログラム領域)
1 0 7と、 リードァゥトを格納するためのリードアゥト領域 1 0 6とか らなる。
ここで、 リードィン領域 1 0 3は、 本来 CD— ROMフォーマッ トで 用いられる TOC (Table of Contents) と呼ばれるファイル管理情報や ディスク管理情報を記載する領域である。
データ領域 1 0 7は、 ドライブ装置 (図示せず) がデータを記録, 消 去, 再生できる書換可能領域 (RAM領域, RW領域) 1 0 5として構 成される。
リードァゥト領域 1 0 6は、 E FMデータの終わりを示すための領域 である。
なお、 このような管理領域 1 0 1及びユーザ領域 1 02を構成する各 要素は、 ディスク最内周から P CA, PMA, リードイン領域 1 0 3、 RAM領域 1 0 5、 リードァゥト領域 1 0 6の順に配置されている。 そして、 RAM領域 1 0 5は、 相変化型記録層を有し、 相変化型記録 層の結晶状態の部分を未記録状態 ·消去状態とし、 非晶質の部分を記録 状態とするものである。 この RAM領域 1 05には、 ゥォブルを有する 案内溝 (ゥォブル溝) が設けられており、 このゥォブル溝に沿って案内 しながら、 相変化型記録層に記録光を照射して非晶質マーク (記録マー ク) を形成することにより E FM変調された情報が記録される。
なお、 データ領域 1 0 7は、 ドライブ装置 (図示せず) がデータの読 み出しのみ可能な再生専用の再生専用領域 (ROM領域) を備えるもの として構成しても良い。 この ROM領域には、 E FM変調された情報が プリピット列により記録される。
この場合、 ROM領域に記録する情報としては、 例えばアプリケーシ ヨンソフトやドライバソフトなどが考えられるが、 その種類は特に限ら れない。
例えば、 特殊な CD— RWの媒体情報, 認証情報等であってもよい。 CD— RWは、 ユーザ個人が簡単に、 音楽や映画あるいはコンピュータ プログラム等の著作物のデータを複製できるので、 このような著作物の 保護が万全でないという課題がある。 このような著作権付きのデータを 保護する方法として、 CD— RWに使用料を予め上乗せし、 ROM領域 に認証情報等を記録し、 認証付き CD— RWとして、 このような CD— RWに限り著作権付きデータの複製を認める方法が考えられる。
ところで、 本実施形態にかかる CD— RW1 0 0では、 図 2に示すよ うに、 管理領域 1 0 1とユーザ領域 1 0 2との全域に亘つて、 基板 5 0 ' 上に少なく とも相変化型記録層 5 2を有する。
好ましくは、 CD— RW1 00の層構造は、 表面に案内溝 6 1を形成 された基板 (ポリカーボネート基板) 5 0上に、 基板 5 0を被覆して基 板 5 0に形成された凹部の形状とほぼ同一再生信号が得られる非晶質マ ークを形成しうる相変化型記録層 5 2と、 相変化型記録層 (記録層) 5 2におけるレーザ光の吸収量を制御し、 多重干渉効果によって反射率を 調整するとともに、 記録層 5 2からの放熱を制御し、 記録層や基板の熱 変形を抑止する保護層 5 1, 5 3と、 レーザ光を反射し、 記録層からの 放熱を促進するために、 記録層 5 2の記録再生光入射側とは反対側に設 けられた反射膜からなる反射層 54とをこの順に設け、 さらに、 最上層 に、 空気との直接接触を防いだり、 異物との接触による傷を防ぐため、 紫外線硬化性樹脂層や熱硬化性樹脂層等の保護コート層 5 5を約 1 m から約数百 μ mの厚さで設ける。
ところで、 このように構成される CD— RWディスク 1 00に、 自分 用にカスタマィズされたオペレーティングシステム O S (一部のデータ を書き換えながら起動する W I NDOWSのような O S) を格納して持 ち歩き、 どこでも自分の O S環境を再現できるようにするためには、 そ
の CD— RWディスク 1 00に格納された O Sを HDにインストールす ることなしに、 CD— RWディスク 1 0 0から直接起動できるようにし たい。
以下、 一部のデータを書き換えながら立ち上がるオペレーティングシ ステム (O S, 第 1オペレーティングシステム) として W I NDOWS (例えば WI NDOWS 9 5, W I NDOWS 9 8, W I NDOWS ME , W I ND OWS 2000, W I N D OWS N T等 ; Microsoft Corporation の登録商標) を例にして説明する。 なお、 一部のデータを 書き換えながら立ち上がる〇 Sは、 これらのものに限られず、 例えば L I NUX (Linus Torvalds の登録商標) , F r e e B S D (Berkeley Software Design, Incの登録商標) 等の O Sも含まれる。
ここで、 上述のような CD— RWディスク 1 0 0には、 一般に、 I S O 9 6 6 0に準拠したボリユーム構造になるように論理フォーマッ ト (これを I S O 9 6 6 0フォーマッ トという) を施すことになるが、 こ れをコンピュータシステム(例えばパーソナルコンピュータ,パソコン, P C) をブートス トラップするための起動ディスク (ブータブル CD, ブ 一トメディア) として機能させるためには、 さらに、 El Torito 規格に 準拠したボリユーム構造になるように論理フォーマツ トを施す必要があ る。
このため、 本実施形態では、 CD— RWディスク 1 00の論理フォー マッ トは、 図 3に示すように、 プライマリ · ボリユーム ·ディスクリブ タ (Primary VolumeDescriptor,論理ア ドレス番号 L B A 1 6), ブート レ 一卜、ホリュームディスクリプタ (Boot Record Volume Descriptor, 論理ァドレス番号 L B A 1 7),ブーティングカタ口グ(Booting Catalog, 論理ア ドレス番号 L B A 2 0 ), ブートス トラップローダ (ブートロー ダ; Boot Loader,論理ァドレス番号 L B A 2 7 ), I P L (Initial Program
Loader), MS-DO S (O S), WI NDOWS (OS) が順に配置さ れた構造となっている。
ここでは、 CD— RWディスク 1 0 0には、 El Torito 規格に準拠し た起動可能なディスクイメージ (Bootable Disk Image) 、 論理アドレ ス番号 LBA 2 7以下にハードディスクイメージとして格納されている c つまり、図 3に示すように、論理ァドレス番号 LB A 2 7以下のデータ、 即ち、 ブートストラップローダ (ブートローダ; Boot Loader,論理アド レス番号 LBA 2 7), I P L (Initial Program Loader), MS—DO S (O S), WI NDOWS (O S) は、 ハードディスクイメージとして 格納されている。
このため、 ブーティングカタログ (Booting Catalog) では、 図 3に示 すように、 CD— RWディスク 1 00に格納されているデータが、 ハー ドディスクイメージであることを指定すべく、 ブートメディアタイプが ハードディスクを指定する 4に設定されている。
このように、 CD— RWディスク 1 0 0に格納する起動可能なデイス クイメージ (Bootable Disk Image) をハードディスクイメージとするこ とで、 CD— RWディスク 1 00に書き込まれている起動可能なディス クイメージ (Bootable Disk Image) が H Dとして見えるようにエミユレ 一トして起動を行なうようになっている(ハードディスクエミュレート) また、 ここでは、 W I NDOWSもハードディスクイメージで書き込ま れているため、 W I ND OWSがー部のデータを書き換えながら立ち上 がる際にも、 CD— RWディスク 1 00に書き込まれている W I NDO WSは、 B I O Sからは HDとして見えることになる。
特に、 本実施形態では、 基板上に結晶状態の部分を未記録状態 ·消去 状態とし、 非晶質状態の部分を記録状態とする相変化型記録層を有する 1枚の C D _ RWデイスク 1 00に、 コンピュータシステムのブートス
トラップ時にオペレーティングシステムをコンピュータシステムのメイ ンメモリ上へロードするためのローダ [ブートストラップローダ (ブー 卜ロータ ; Boot Loader) , I P L (Initial Program Loader) j と、 一部 のデータを書き換えながら立ち上がるオペレーティングシステム〇 S (W I NDOWS) とが格納され、 このローダに、 CD— RWドライブ を書き込み操作するための CD— RW書込用ドライバと、 メインメモリ 上の割り込みべク トルテーブルに格納されるコンピュータシステムのデ イスク ドライブを操作するための B I O Sの割り込み処理プログラムの 先頭ァドレスを、 CD— RW書込用ドライバの先頭ァドレスに書き換え るアドレス変換プログラムとを含ませている。
なお、 プートス トラップローダ (ブートローダ; Boot Loader), I P L (Initial Program Loader) を、 まとめて、 コンピュータシステムの ブートス トラップ時に、 オペレーティングシステム O Sをコンピュータ システムのメインメモリ上へロードするためのローダという。 なお、 口 ーダは、 必ずしもブートストラップローダ及び I P Lから構成されるも のでなくてもよく、 例えば起動可能ディスクイメージをフロッピーディ スクイメージとする場合には I P Lだけでも良く、 とにかく O Sをメイ ンメモリ上にロードするためのプログラムであれば良い。
また、 ここでは、 一部のデータ (ファイル) を書き換えながら立ち上 がる O Sを W I ND OWSとしており、 W I N D〇 W Sは M S— D O S (O S) を内包しているから、 説明をわかりやすくするために MS—D O Sと W I ND OWSとを分けている。 なお、 MS— DO Sは、 一部の データを書き換えながら立ち上がる W I NDOWSのような O Sと異な り、 データの書き換えを行なわずに立ち上がる O S (第 2オペレーティ ングシステム) である。
さらに、 ここでは、 I S O 9 6 6 0及び El Torito規格に準拠した構
成とすべく、 プライマリ 'ボリューム 'ディスクリプタ (Primary Volume Descriptor) , ブートレコードボリュームディスクリプタ (Boot Record Volume Descriptor) , ブーティングカタログ (Booting Catalog) を設け ているが、 例えば他の規格に準拠したブータブル CDとして構成する場 合には、 これらを設ける必要はない。
特に、 本実施形態では、 CD— RWディスク 1 00を HDと同様に用 いながら W I NDOWSを起動することができるように、 ローダに含ま れるブートス トラップローダには、 CD— RWドライブ (書換可能型情 報記録媒体用ドライブ) を書き込み操作 (記録動作, ライ ト動作) する ための (処理をコンピュータシステムに実行させる) CD— RW書込用 ドライバ (書換可能型情報記録媒体書込用ドライバ, 割り込み処理プロ グラム, 割り込み処理ルーチン) と、 メインメモリ上の割り込みべタ ト ルテーブルに格納されるコンピュータシステムのディスク ドライブを操 作するための B I 〇 Sの割り込み処理プログラム (割り込み処理ルーチ ン) の先頭ア ドレスを、 CD— RW書込用 ドライバの先頭ア ドレスに書 き換える (処理をコンピュータシステムに実行させる) ア ドレス変換プ ログラムとが含まれており、 ブートストラップローダ (Boot Loader) が メインメモリにロードされる際に、 これらの CD— RW書込用ドライノく 及びァドレス変換プログラムもメインメモリ上にロードされるようにな つている。
なお、 CD— RW書込用ドライバは、 B I O Sに付加されるプロダラ ムであるため、 B I OS付加プログラム (トラッププログラム) ともい 5。
ここで、 CD— RW書込用ドライバは、 例えば HDDに対する記録コ マンド (書込コマンド) を CD— RWディスク 1 00に対する記録コマ ンド (書込コマンド) に翻訳するようなプログラムとして構成される。
この CD— RW書込用 ドライバは、 ブー トス トラップローダ (Boot Loader) とともにメインメモリ上にロードされ、 W I NDOWSを起動 する際に実行されることになる。
なお、 この CD— RW書込ドライバは、 一般的なドライバと同様の機 能も備えており、 例えばトラックアッ トワンスゃパケッ トライ ト等の各 種の書き込み方式により書き込みを行ないうる機能 (このような処理を コンピュータシステムに実行させる機能) を有している。 特に、 バケツ トライ トの場合には、 3 2プロック (64キロバイ ト) [通常、 3 2ブロ ックであるが、 3 2ブロック以外にも設定変更可能で、 例えば 1 6プロ ック (3 2キロバイ ト) と設定することもできる] といった単位でデー タの書き換えを行なえるようになつている。
了ドレス変換プログラムは、 メインメモリ上の割り込みべク トルテー ブルに格納される割り込み処理プログラム (割り込み処理ルーチン) を 呼び出すためのァドレスのうち、 コンピュータシステムのデイスク ドラ , イブを操作するための B I O Sプログラムの割り込み処理プログラム (割り込み処理ルーチン) を呼び出すためのア ドレス (先頭ア ドレス) を、 メインメモリ上にロードされた CD— RW書込用ドライバを呼び出 すためのアドレス (CD— RW書込用ドライバの先頭ア ドレス) に書き 換えるステップを有する (このステップをコンピュータシステムに実行 させる) ものとして構成される。
例えば、 コンピュータシステムのディスク ドライプを操作するための B I O Sプログラムの割り込み処理プログラム(割り込み処理ルーチン) を呼び出すためのア ドレス (先頭ア ドレス) は、 図 4に示すように、 I BM-P C互換機で用いられる割り込みべク トルテーブルで.は割り込み 番号 1 3 ( I NT 1 3 h) に格納されているため、 この割り込み番号 1 3 ( I NT 1 3 h) に格納されているア ドレスを、 ブートス トラップ口
ーダ (Boot Loader) とともにメインメモリ上にロードされる C D— RW 書込用ドライバの先頭ァドレスに書き換えるようになつている。
なお、 B I O Sのプログラムにおけるコマンド (指令, 命令) として の I NT 1 3 hは、 コンピュータシステムのメインメモリのデータバッ ファ領域から HD等のディスクのセクタ領域へデータを転送するための プログラムの実行を指示するコマンド (データ転送命令, データ転送コ マンド) である。 この場合、 データ転送はセクタ単位で行なわれる。
このア ドレス変換プログラムは、 ブートス トラップローダ (Boot Loader) とともにメインメモリ上にロードされ、 WI NDOWSを起動 する前に実行されて割り込みベク トルテーブルの割り込み番号 1 3 ( I NT 1 3 h) に対応して格納されるァドレスを書き換えるようになつて レヽる。
ところで、 コンピュータシステムの I D Eコントローラには、 I DE (E— I DE, ATAP I ) に準拠していれば、 HDDのほかに HDD 以外のデバイス (例えば CD— ROMドライブ, CD— RWドライブ等) も接続できるようになっている。
この場合、 I DEコントローラには、 2つの I DEコネクタ [ 1番目 の I D Eコネクタを I D Eプライマリ ( I DE 1) といい、 2番目の I DEコネクタを I DEセカンダリ ( I D E 2) という] を介して、 4つ のドライブ [ドライブ番号(0〜 3)]を接続することができる。つまり、 I D Eコネクタにはマスタとスレーブがあり、 1つの I D Eコネクタに は 2つのドライブを接続できるため、 合計 4つのドライブを接続できる ようになつている。
そして、 コンピュータシステム (B I O S) は、 I DEプライマリの マスタに接続される ドライブをドライブ番号 0とし、 I DEプライマリ のスレープに接続される ドライブをドライブ番号 1とし、 I D Eセカン
ダリのマスタに接続されるドライブをドライブ番号 2とし、 I D Eセカ ンダリのスレーブに接続される ドライブをドライブ番号 3として、 各種 の処理を実行するようになつている。
一般に、 ドライブ番号 0, 2、 即ち、 I DEコネクタのマスタ側 ( I DEプライマリのマスタ及び I DEセカンダリのマスタ) に接続される ドライブが起動可能なドライブ (ブートデバイス) とされるため、 例え ば、 ドライブ番号 0に HDDを接続し、 ドライブ番号 2に CD— RWド ライプを接続すればよい。 また、 B I O Sは、 El Torito 規格に準拠し て構成されている必要があり (これにより、 ブートデバイスとして、 H DDのほかに CD— ROMドライブを用いることができるようになる)、 さらに、 B I O Sが CD— RWドライブをブートデバイスとしての CD —R OMドライブと認識して、 CD—RWドライブからブートス トラッ プできるように設定しておく必要もある。
そして、 本実施形態では、 CD— RW書込用ドライバは、 B I O Sに より設定されたドライブ番号が CD— RWドライブのドライブ番号であ るか否かを判定するステップと、 B I O Sによる書き込み命令があった か否かを判定するステップと、 CD— RWドライブに装着されている媒 体が CD— RWディスク 1 0 0であるか否かを判定するステップとを備 える (即ち、 このようなステップをコンピュータシステムに実行させる) ものとして構成される。
なお、 CD— RWドライブに装着されている媒体が CD— RWデイス ク 1 00であるか否かを判定するステップは、 CD— RWドライブが接 続されているか否かを判定するステップ(ドライブ判定ステップ)、及び、 CD-RWドライブに装着されている媒体が CD— RWディスク 1 00 であるか否かを判定するステップ (ディスク判定ステップ) により構成 する (即ち、 このようなステップをコンピュータシステムに実行させる
ものとして構成する) こともできる。
ここで、 CD— RWドライブに装着されている媒体が CD— RWディ スク 1 00であるか否かも判定するようにしているのは、 CD— RW ライプに装着されているブートメディアが CD— ROMディスクである 場合もあり、 この場合にはデータの書き換えを行なえないため、 データ 書込処理を行なわないようにするためである。
また、 B I OSは、 各種処理を実行する際に、 コンピュータシステム の I DEコントローラに I D Eコネクタを介して接続されている ドライ ブをドライブ番号によって指定するため、 上述のように、 B I O Sによ つて指定されたドライブ番号が CD— RWドライブのドライブ番号であ るか否かを判定することは、 HDD力、、 CD— ROMドライブ (CD— RWドライブ) か (即ち、 HDD以外のドライブか) を判定することに なる。
そして、 上述の全ての条件を満たした場合、 即ち、 B I O Sにより設 定されたドライブ番号が CD— RWドライブのドライブ番号であると判 定し、 かつ、 B I O Sによる書き込み命令があつたと判定し、 かつ、 C D— RWドライブに装着されている媒体が CD— RWディスク 1 00で あると判定した場合に、 CD—RWへの書き込みを行なうべく、 CD— RWドライブを書き込み動作させるようになつている。
—方、 書換可能型情報記録媒体書込用ドライバは、 上述の条件のうち のいずれか 1つを満たしていない場合、 即ち、 B I O Sにより設定され たドライブ番号が CD— RWドライブのドライブ番号でないと判定した 力、、又は、 B I〇 Sによる書き込み命令がなかったと判定したカ 又は、 CD— RWドライブに装着されている媒体が CD— RWディスク 1 00 でないと判定した場合には、 アドレス書換プログラムによって書き換え る前の B I O Sの割り込み処理プログラムの先頭ァドレスを指定するよ
うになっており、 これにより、 本来の I NT 1 3 hで指定していたァド レスへ飛んで、 通常のコンピュータシステムのディスク ドライプを操作 するための B I O Sプログラムの割り込み処理プログラム (割り込み処 理ルーチン) が実行されるようになっている。
このように、 書換可能型情報記録媒体書込用ドライバが、 B I O Sに より設定されたドライブ番号が CD— RWドライブのドライブ番号であ るか否か、 及ぴ、 B I O Sによる書き込み命令があつたか否か、 及び、 CD—RWドライブに装着されている媒体が CD— RWディスク 1 00 であるか否かを判定するようにすることで、 CD— RWディスク 1 0 0 への書き込み以外の場合に、 B I 〇 Sプログラムが実行され、 ディスク ドライブを操作するための B I O Sプログラムの割り込み処理プロダラ ム (割り込み処理ルーチン) が実行される際には、 本来の I NT 1 3 h で指定していたァドレスへ飛んで、 通常のコンピュータシステムのディ スク ドライブを操作するための B I〇 Sプログラムの割り込み処理プロ グラム(割り込み処理ルーチン)が実行されるようにしているのである。 ここで、 上述のような CD— RWディスクは、 コンピュータシステム のブートストラップに用いられる力、このような CD— RWディスクは、 例えば以下のような方法で作成することができる。
つまり、 まずパケッ トライ ト方式で書き込みを行なえるようにフォー マッ トされた CD— RWディスク (CD— RWメディア) を用意する。 次に、 コンピュータシステムのハードディスクを分割して得られるパ ーテイシヨンの一^ 3が、 CD— RWディスクの容量以下 [例えば約 6 5 0メガバイ ト (MB) 以下] の容量を有する領域となるように、 パーテ イシヨンの設定を行なう。 なお、 好ましくは、 一つのパーティションが CD— RWディスクの容量 (例えば約 6 50メガバイ ト) と同じ容量に なるように設定する。
次いで、 このパーティションに、 CD—RWディスクに格納しようと するデータと同じデータ (ここでは、 Boot- Loader, I P L, OS, ァプ リケーシヨンプログラム等) を記録する。
そして、 パーティションに記録したデータを、 用意した CD— RWデ イスクにハードディスクイメージとしてコピーする。
このようにして、 図 3に示すようなデータが記録された CD— RWデ イスクを作成することができる。
ここで、 一つのパーティションを予め CD— RWの容量以下 [例えば 約 6 50メガバイ ト (MB) 以下] の容量を有する領域として設定して おくのは、 以下の理由による。
つまり、 ここでは、 例えばハードディスクの一^ 0のパーティションに 記録するデータ (ファイル) は FAT (ファイルアロケーションテープ ル) ファイルシステムによって管理されるようにしている。
このため、 CD— RWディスクにハードディスクイメージとしてコピ 一されるデータには、 FAT (管理領域) も含まれており、 ブートス ト ラップ時には B I O Sは FATに基づいて CD— RWディスクにコピー されたデータの読み出しや書き込みを行なおうとする。
この場合、 一つのパーティションの容量が実際の C D— RWディスク の容量よりも多く設定されていると、 現実には存在しない領域に対して データの読み出しや書き込みを行なおう としてしまうことになり、結局、 データの読み出しや書き込みが行なえずにエラーが発生することになる そこで、 一つのパーティションを予め CD— RWの容量以下 [例えば 約 6 50メガバイ ト (MB) 以下] の容量を有する領域として設定して いるのである。
ところで、 このようなハ一ドディスクイメージの CD— RWディスク を作成する場合には、 ハードディスク上にブートローダ, I P L, O S
アプリケーションプログラム等のデータを記録させていく作業が必要に なるが、 通常、 このような作業を行なっていく と、 ハードディスクへの データの記録は連続して行なわれず、 空き領域に記録されていく ように なる。 特に、 H Dの断片化 (フラグメンテーション) が進んでいく と、 記録すべきデータ (ファイル) が分割され、 それぞれが細分化された空 き領域に記録されていく ようになる。
このようなデータ記録作業上は、 一つのパーティションを、 C D— R Wディスクの容量 (例えば約 6 5 0メガバイ ト) よりも大きな容量の領 域として設定しておくのが好ましい。
しかしながら、一つのパーティションを C D— R Wディスクの容量(例 えば約 6 5 0メガパイ ト) よりも大きな容量の領域として設定しておく と、 データ容量そのものが C D— RWディスクの容量以下 (例えば約 6 5 0メガバイ ト以下) であっても、 データが C D— R Wディスクの容量 (例えば約 6 5 0メガバイ ト) よりも大きな容量を有する広い領域にわ たって分散して記録されてしまうことになるため、 このパーティション に記録されているデータをそのまま C D— R Wディスクにコピーするこ とができなくなる。
この場合には、 最適化 (デフラグ) を行なって、 データが記録されて いる領域の容量が C D— R Wディスクの容量 (例えば約 6 5 0メガパイ ト) 以下になるようにし、 その後、 パーティションの容量が C D— RW ディスクの容量 (例えば約 6 5 0メガバイ ト) 以下になるようにパーテ イションを設定し直せば良い。
このように、 ハードディスクを 1つのパーティシヨンとして設定して おいて、 或いは、 パーティションを C D— R Wディスクの容量 (例えば 約 6 5 0メガバイ ト) よりも十分に大きな容量を有する領域として設定 しておいて、 データを記録した後に、 最適化 (デフラグ) を行ない、 デ
ータが記録されている領域の容量が C D_RWディスクの容量 (例えば 約 6 5 0メガバイ ト) 以下になるようにし、 その後に、 パーティション の容量が CD— RWディスクの容量 (例えば約 6 50メガバイ ト) 以下 になるようにパーティションを設定し直すようにすれば良い。
なお、 このようにパーティションの容量が小さくなるようにパーティ ションを設定し直すと、 FATが格納される領域の容量も小さくなり、 データも再配置されることになる。
なお、 ここでは C D— R Wディスクの作成方法について説明したが、 D VD-RAM, DVD— RWなどの DV D系媒体も同様に作成するこ とができる。
本実施形態にかかる書換可能型情報記録媒体 (情報記録媒体) として の CD— RWディスク 1 0 0は、 上述のように構成されるため、 次に、 このような CD— RWディスク 1 0 0を用いる場合のコンピュータシス テムのブートストラップについて、 図 5 (A) 〜図 5 (G) のメインメ モリのメモリマップ遷移図、 及ぴ、 図 6のブートストラップの手順を示 すフローチャートを参照しながら説明する。
つまり、 コンピュータシステムをブートス トラップすべく、 電源が投 入されると、 図 5 (A) に示すように、 メインメモリ上の例えばァドレ ス 0E0000H〜0FFFFFHの領域に B I O Sが読み込まれ、この B I O Sが実 行されてハードウェアの初期化等が行なわれる。 この際、 図 5 (B) に 示すように、 B I O Sに含まれるプログラムに従ってメインメモリ上の 例えば最もァドレス 000000H側の領域に割り込みべク トルテーブルが作 成される。 その後、 B I〇 Sに含まれるブートストラッププログラムが 実行され、 ブートデバイスとしての CD— ROMドライブとして認識さ れる CD— RWドライブに装着されている CD— RWディスク 1 0 0に 記録されているデータが読み込まれる。 なお、 図 5 (A) 〜阅 5 (G)
のメモリマップでは、 Intel 社の x 8 6系 (8 0 86) のマイクロプロ セッサのメインメモリを例にしている。
具体的には、 図 6に示すように、 ステップ S 1 0で、 B I OSのブー トストラッププログラムは、 CD— RWディスク 1 0 0の論理ァ ドレス 番号 L B A 1 6に記録されているプライマリ · ボリューム 'ディスクリ プタ (Primary Volume Descriptor) を読み込み、 さらに、 論理ア ドレス 番号 L B A 1 7のブー トレコードボリ ュームディスク リプタ (Boot Record Volume Descriptor) を! ¾み込? _P。
次に、 ステップ S 2 0で、 論理ア ドレス番号 L B A 20のブーティン グカタログ (Booting Catalog) を読み込む。 ここで、 ブーティングカタ ログ (Booting Catalog) のブートメディアタイプはハードディスクを 旨 定する 4に設定されている (図 3参照)。
次に、 ステップ S 3 0で、 ブーティングカタログ (Booting Catalog) に従って、 論理アドレス番号 L B A 2 7のブートストラップローダ (ブ 一トローダ; Boot Loader) をメインメモリ上にロードする。 例えば、 ブ 一トストラップローダは、 図 5 (C) に示すように、 メインメモリ上の ア ドレス 0007C0Hにロードされる。 ここでは、 ブートストラップローダ には、 CD— RW書込用ドライバ及びァ ドレス変換プログラムも含まれ るため、 これらの CD— RW書込用ドライバ及びァドレス変換プロダラ ムもメインメモリ上にロードされることになる。
次いで、 メインメモリ上にロードされたブートストラップローダが実 行されると、ステップ S 40で、 CD— RW書込用ドライバが、図 5 (D) に示すように、 メインメモリ上の割り込みべク トルテーブルに連なる領 域 (所定の領域) にメモリ転送され、 さらに、 ステップ S 5 0で、 アド レス変換プログラムも実行されて、 割り込みべク トルテーブルの割り込 み番号 1 3 ( I NT 1 3 h) に格納されているァドレス (先頭ァドレス)
ヽ メインメモリ上にロードされた CD— RW書込用ドライバの先頭ァ ドレスに書き換えられる [図 5 (D) 参照]。 なお、 ア ドレス変換プログ ラムはメモリ転送されない。
なお、 本実施形態では、 CD— RW書込用ドライバ及ぴア ドレス変換 プログラムをブートストラップローダとともにメインメモリ上にロード した後、 CD— RW書込用ドライバを割り込みベク トルテーブルに連な る領域(所定の領域)に転送するようにしているが、このメモリ転送は、 少なくとも MS— DO S (さらには W I ND OWS) をメインメモリ上 にロードする前に (即ち、 W I NDOWSを起動する前に) 実行される ようにする必要がある。 この場合、 CD— RW書込用ドライバをメモリ 転送するためのプログラム (メモリ転送プログラム) もブートス トラッ プローダに含ませておき、 メインメモリ上にロードする必要がある。 これにより、 〇sをメインメモリ上にロードするためのローダに含ま せることで、 簡易な方法で CD— RW書込用ドライバ及びァドレス変換 プログラムをメインメモリ上にロードしながら、 メインメモリ上にロー ドされた CD— RW書込用ドライバ力 S、MS _D O S,W I NDOWS , その他のプログラムをメインメモリ上にロードする際に上書きされてし まわないようにすることができる。
そして、 ブートス トラップローダが実行されたことによって、 ステツ プ S 60で、 図 5 (Ε) に示すように、 I P L (Initial Program Loader) が読み込まれてメインメモリ上にロードされ、 この I P L (Initial Program Loader) が実行されると、 ステップ S 7 0で、 図 5 (F) に示 すように、 MS— DOSがメインメモリ上の CD— RW書込用ドライバ が格納された領域に連なる領域にロードされて実行され、 MS— DO S が起動する。
これに続き、 ステップ S 8 0で、 W I ND OWSがメインメモリ上の
MS _D〇 Sが格納された領域に連なる領域にロードされて実行される 際に、 CD— RW書込用ドライバが実行されることで、 CD— RWディ スク 1 0 0に記録されている W I ND OWSの一部のデータが書き換え られながら、 W I NDOWSが起動する。
つまり、 W I ND OWSが起動する際に、 一部のデータ (ファイル) を書き換えようとして B I O Sプログラムが実行されると、 後述するよ うに、 ドライブ番号が CD— RWドライブのドライブ番号である 2番に 設定され、 書き込み命令が出され、 さらに割り込みベク トルテーブルの I NT 1 3 hを参照すると、 CD— RWドライブを書き込み動作させる ための CD— RW書込用ドライバを呼び出すためのァドレスが呼び出さ ' れ、 これにより CD— RW書込用ドライバが実行されることになり、 こ れにより、 CD— RWディスク 1 00に記録されている W I NDOWS の一部のデータ (ファイル) が書き換えられながら、 W I NDOWSが 起動する。
ここでは、 MS— D O Sを含む W I NDOWSは、図 5 (F),図 5 (G) に示すように、 メインメモリ上にロードされた CD— RW書込用ドライ バに連なる領域に、 メインメモリ内を下側 (アドレス 000000H側) から 上側へ向けて吸い上げられながらロードされていくため、 先にメインメ モリ上にロードされているブートストラップローダ (Boot Loader) 及び I P L (Initial Program Loader) は M S— D O Sを含む W I N D O W
Sによって上書きされることになる。 なお、 ア ドレス変換プログラムは メモリ転送されずにブートス トラップローダに含まれているため、 ブー トストラップローダとともに上書きされてしまうことになる。
ところで、 一般に、 コンピュータシステムのブートストラップ時の H DDの操作 (記録 ·再生, リード/ライ ト動作) は、 B I O Sに含まれ るプログラム、例えば図 7 (A), 図 7 (B) に示すようなプログラム (ハ
ードディスク ドライバ) に基づいて行なわれる。
なお、 図 7 (A) は HDからデータを再生 (リード, Read) する際に 実行されるプログラムの一例を示しており、 図 7 (B) は HDへデータ を記録 (ライ ト, Write) する際に実行されるプログラムの一例を示して いる。 また、 図 7 (A), 図 7 (B) に示されるプログラム中、 I NT 1 3 hの前では、 記録か ·再生か、 ドライブが何である力 、 ドライブ番号 は何番か等を指定している。 例えば、 図 7 (A) の 「mov AX, 0201h」 は 「再生(読み出し)」 を指示するものであり、図 7 (B)の「movAX, 0301h」 は 「記録 (書き込み)」 を指示するものである。 また、 図 7 (A), 図 7 (B) の 「mov DX, 0082h」 は、 「8」 でドライブとして 「HDD」 を指定 し、 「2」 で 「ドライブ番号 2」 を指定している。 これにより、 ディスク の種類を識別しうることになる。
本実施形態では、 上述のように、 CD— RWディスク 1 00に格納す る起動可能なディスクイメージ (Bootable Disk Image) をハードデイス クイメージとし、 CD— RWディスク 1 00に書き込まれている起動可 能なディスクイメージ (Bootable Disk Image) が HDとして見えるよう にハードディスクエミュレートするため、 コンピュータシステム (B I OS) は、 HDからメインメモリ上にロードされた W I ND〇WSを起 動しているつもりで、 CD— RWディスク 1 0 0からメインメモリ上に ロードされた W I ND OWSの一部のデータを書き換えながら W I ND OWSを起動することになる。
このため、 W I ND OWSの起動時に W I ND OWSの一部のデータ を書き換える際には、 B I O Sプログラムは、 例えば図 7 (B) に示さ れるプログラム (ハードディスク ドライバ) に従って、 「書き込み」, ΓΗ DDJ, 「ドライブ番号 2 (CD— RWドライブが接続されている ドライ プ番号)」を指定して、 HDDを操作(記録, ライ ト動作) しょうとする。
具体的には、 図 7 (B) に示すように、 B I 〇 Sプログラムの I NT 1 3 hを実行する前に、 「movAX,0301h」 によって 「記録操作 (ライ ト動 作)」 が指示され、 また、 「mov DX, 0082hJ によって 「HDD」 が指定さ れるとともに、 CD— RWドライブが接続されている ドライブ番号 2が 指定されることになる。 また、 B I O Sプログラムでは、 I NT 1 3 h を実行する前に、 HDDによって HDへデータを書き込む際に必要とな るセクタ情報 (シリンダ番号, セクタ番号, ヘッ ド番号, セクタ数等) も指定するようになっている。
なお、 セクタ情報のうちのシリンダ番号, セクタ番号及ぴヘッ ド番号 によってデータを書き換えるセクタの位置が特定される。 また、 HD上 のデータの書き換えは、 メインメモリのデータバッファ領域と HDのセ クタ領域との間でのデータ交換により行なわれるようになっており、 通 常、 HDのフォーマツ ト時にセクタ長は 5 1 2バイ トに設定されている ので、 W I NDOWSのように一部のデータを書き換えながら立ち上が る O Sを起動する際に、 B I O Sは HDに書き込まれているデータを 5 1 2パイ トのセクタ毎に書き換えようとする。 この場合、 書き換えるセ クタの数はセクタ情報のうちのセクタ数によって指定される。 なお、 セ クタの数で指定されるデータの全バイ ト数は、 セクタ長で指定されるパ ィ ト数 (例えば 5 1 2バイ ト) の整数倍になる。
次に、 このような B I O Sに含まれる HDDを操作 (記録, ライ ト動 作) するためのプログラムによって、 〇0— 1 1^ディスク 1 00への書 き込みを行なう場合の動作について、 図 8を参照しながら説明する。 まず、 図 8に示すように、 HDへデータを記録する (書き込む) ため の B I O Sのプログラムが実行されて、 I NT 1 3 h (hは 1 6進数で あることを示す) がくると、 割り込みべク トルテーブルの I NT 1 3 h (メインメモリ上のァドレスは例えば 000:004Cである) が参照される。
ここでは、 I NT 1 3 hに格納されているァドレスは、 本来のディス ク ドライブを操作するための B I O Sプログラムの割り込み処理プログ ラム (割り込み処理ルーチン) を呼び出すためのアドレス (例えば 7724 0CFC) から、 メインメモリ上にロードされた CD— RW書込用ドライバ の先頭ア ドレス (例えば 00 00 08 00) に書き換えられている。
このため、 C D _ RW書込用 ドライバの先頭ア ドレス (例えば 0080:0000) へジャンプし、 CD— RW書込用ドライバが実行され、 他の ディスク (例えば HD) へデータを記録する代わりに、 CD— RWドラ イブによって CD— RWディスク 1 0 0へのデータの書き込み (記録) が行なわれ、 CD— RW書込用ドライバに基づく書き込み処理が終了し たら、 割り込み処理を終了するようになっている。
ところで、 本実施形態では、 CD— RW書込用ドライバによって、 書 き込むデータのプロック数及ぴ先頭論理ブロック番号に基づいて、 CD 一 RWディスク 1 0 0に格納されている W I ND OWSのデータのうち の書き換えるべきデータが特定され、 W I NDOWSが起動する際に W I ND〇WSの一部のデータが書き換えられるようになつている。
通常、 HDのフォーマツ ト時にセクタ長は 5 1 2パイ トに設定される ため、 W I NDOWSのように一部のデータを書き換えながら立ち上が る O Sを起動する際に、 B I O Sは HDに書き込まれているデータをセ クタ単位 ( 5 1 2バイ ト毎) で書き換えようとする。
しかしながら、 一般に CD— RW等の書換可能媒体に書き込まれてい るデータはブロック (2キロバイ ト) 単位で管理されており、 また、 一 般的な CD— RW等の書換可能媒体にデータを書き込むための書込用デ イスク ドライバでは、バケツ トライ トの場合であっても 3 2プロック( 6 4キロバイ ト) [通常、 3 2ブロックであるが、 3 2プロック以外にも設 定変更可能で、 例えば 1 6ブロック (3 2キロバイ ト) と設定すること
もできる] といった大きな単位でデータの書き換えを行なうようになつ ているため、 このような一般的な書込用ディスク ドライバと同様のもの を書込用ディスク ドライバとして用いたとしても、 W I NDOWSのよ うに一部のデータを書き換えながら立ち上がる O Sを起動する際に、 B I O Sがセクタ単位 ( 5 1 2バイ ト毎) でデータを書き換えようとして も、 特定の一部のデータのみを書き換えることはできず、 結局、 WI N D OWSを起動することができない。
このため、 本実施形態では、 CD— RW書込用ドライバによって、 3 2ブロック ( 64キロバイ ト) [通常、 3 2ブロックであるが、 3 2ブロ ック以外にも設定変更可能で、 例えば 1 6ブロック (3 2キロバイ ト) と設定することもできる] という書換単位でパケッ トライ トにより書き 換えを行なうものの、 実際には、 CD— RWディスク 1 0 0に格納され ている W I ND OWSのデータを、 先頭論理ブロック番号及ぴブロック 数に基づいて、 より小さい書換単位(5 1 2バイ ト毎) で書き換える (差 し替える) ことができるようにして、 HDDによって HDに書き込まれ ているデータを書き換える際の書換単位 (5 1 2バイ ト) と整合 (一致) させている。 なお、 データの書き換えに際しては、 B I O Sによって設 定される、 書き込むべきセクタの位置やセクタ数は、 論理ブロック番号 やプロック数に変換される。
このようにして、 例えば W I NDOWSのように一部のデータを書き 換えながら立ち上がる O Sを起動する際に、 B I O Sが HDDを操作(記 録, ライ ト動作) して HDのデータをセクタ単位 (5 1 2パイ ト毎) で 書き換えようとしたら、 CD— RW書込用ドライバによって、 CD— R Wドライブを操作 (記録, ライ ト動作) して、 CD— RWディスク 1 0 0から例えば 3 2プロック (64 k B) [通常、 3 2ブロックである力 3 2ブロック以外にも設定変更可能で、 例えば 1 6プロック (3 2キロ
バイ ト) と設定することもできる] のデータを読み込み、 読み込まれた データのうち、 書き込むべきセクタの位置やセクタ数から換算される論 理プロック番号ゃブロック数によって特定されるプロック内のデータを、 セクタ単位 (5 1 2バイ ト毎) で書き換える (差し替える) ようにして いる。
具体的には、 CD— RW書込用ドライバによって CD _RWドライブ を操作して CD— RWディスク 1 00へ書き込み処理を行なう場合の手 順について、 図 9を参照しながら説明する。
まず、 図 9に示すように、 ステップ A 1 0で、 B I O Sに含まれるプ ログラムによって設定されたドライブ番号が CD— RWドライブのドラ イブ番号であるか否かを判定する。 ここでは、 CD— RWドライブはド ライブ番号 2に接続しているため、 ドライブ番号が 2であるか否かを判 定する。
また、 B I O Sに含まれるプログラムによって書き込み命令 (書き込 みコマンド) があったか否かも判定する。
さらに、 CD— RWドライブに装着されている媒体が CD— RWディ スク 1 00であるか否かも判定する。
そして、 これらの判定の結果、 これらの全ての条件を満たしていると 判定した場合、 即ち、 ドライブ番号が 2である (即ち、 ドライブ番号が CD— RWドライブのドライブ番号である) と判定し、 かつ、 書き込み 命令があつたと判定し、 かつ、 CD— RWドライブに装着されている媒 体が CD— RWディスク 1 00であると判定した場合には、 ステップ A
20へ進む。
ステップ A 20では、 書き込むべきデータの長さ n [nは 2キロバイ ト (2048バイ ト) を 1ブロックとした場合のブロック数である] の
3 2の剰余が 0であるか否か、 即ち、 書き込むべきデータの長さ nがパ
ケットライ ト (Packet Write) での通常の書換単位 (記録単位) である 3 2ブロック (64キロバイ ト) の倍数であるか否かを判定し、 この結 果、 書き込むべきデータの長さ nの 3 2の剰余が 0である場合には、 ス テツプ A 30へ進む。 なお、 ここでは、 書換単位を 3 2ブロック (64 キロバイ ト) としているが、 書換単位は 3 2ブロック以外にも設定変更 可能で、 例えば 1 6プロック (3 2キロバイ ト) と設定することもでき る。
ステップ A 30では、 データを書き込む位置を示す論理ブロックアド レス (Logical Block Address; L B A) の先頭 L B Aィ直 xの 3 2の剰余 が 0であるか否か、 即ち、 先頭 L B A値 Xがパケッ トライ ト (Packet Write) での通常の書換単位 (記録単位) である 3 2ブロック (64キロ バイ ト) の倍数であるか否かを判定し、 この結果、 先頭 L BA値 Xの 3 2の剰余が 0であると判定した場合には、 ステップ A 40へ進む。
ステップ A40では、 先頭 LB A値 Xから ηブロック分の領域にデー タを書き込んで、 この CD— RW書込用ドライバによる割り込み処理を 終了する。 つまり、 先頭 LB A値 Xから nブロック分の領域に記録され ているデータを、 書き込むべきデータで書き換えて、 CD— RW書込用 ドライバによる割り込み処理を終了する。
ところで、 ステップ A 1 0で、 上述のいずれかの条件を満たさないと 判定した場合、 即ち、 ,ライブ番号が 2でないと判定する力、 又は、 書 き込み命令がなかったと判定するか、 又は、 CD— RWドライブに装着 されている媒体が CD— RWディスク 1 00でないと判定した場合、 ス テツプ A 50へ進み、 本来のディスク ドライブを操作 (記録 .再生) す るための割り込み処理プログラムの先頭ァドレスへジャンプする。
つまり、 CD— RW書込用'ドライバの実行中に、 ドライブ番号が 2で ないと判定したか、又は、書き込み命令がなかったと判定したか、又は、
CD-RWドライブに装着されている媒体が CD— RWディスク 1 00 でないと判定した場合には、 図 8に示すように本来の割り込みべク トル テーブルの I NT 1 3 hで指定されていたァ ドレス(例えば 77240CFC) に基づいて、 ディスク ドライブの操作 (記録 ·再生) を行なうための割 り込み処理プログラムの先頭ア ドレス (例えば FC0C:2477) へジャンプ し、 この B I O Sの一部であるディスク ドライブの操作 (記録 ·再生) を行なうための割り込み処理プログラムを実行するようになっている。 そして、 このプログラムに基づく処理が終了したら、 割り込み処理を終 了するようになっている。
さて、 ステップ A20で、 書き込むべきデータの長さ nの 3 2の剰余 が 0でないと判定された場合は、 ステップ A 6 0へ進み、 データを書き 込む位置を示す論理プロックァ ドレス (Logical Block Address; L B A) の先頭 L B A値 xの 3 2の剰余が 0であるか否か、 即ち、 先頭 LBA値 Xがパケットライ ト (Packet Write) での書換単位 (記録単位) である 3 2ブロック (64キロバイ ト) の倍数であるか否かを判定し、 この結 果、 先頭 L B A値 Xの 3 2の剰余が 0であると判定した場合には、 ステ ップ A 70へ進む。
ステップ A 70では、 パケットライ ト (Packet Write) では 3 2ブロ ック (64キロバイ ト;書換単位, 書込単位) 毎にデータを書き込む (書 き換える) ようになつているため、 次式によって、 書き込むべきデータ の長さ nをパケットライ ト (Packet Write) で書き込むのに必要なブロ ック数 mを算出する。
m= I NT (n/3 2) X 3 2 + 3 2
次いで、 ステップ A8 0へ進み、 CD— RWディスク 1 0 0の先頭 L B A値 Xから mプロック分の領域に書き込まれているデータを読み出し て、 ステップ A 90へ進み、 メインメモリ上に読み込まれたデータ (先
頭 L B A値 xから mプロック分の領域のデータ) のうちの一部のデータ を、 書き込むべきデータ (セクタ単位) で書き換えて、 ステップ A40 へ進み、 CD— RWディスク 1 0 0の先頭 L B A値 Xから mブロック分 の領域に一部書き換えられたデータをパケットライ トで書き込んで (即 ち、データを書き込むべく CD— RWドライブへ信号を出力して)、 この CD— RW書込用ドライバによる割り込み処理を終了する。
一方、 ステップ A 6 0で、 先頭 L B A値 Xの 3 2の剰余が 0でないと 判定した場合には、 ステップ A 1 00へ進む。
ステップ A 1 0 0では、 パケットライ ト (Packet Write) では 3 2ブ ロック (64キロバイ ト ;書換単位, 書込単位) 毎にデータを書き込む (書き換える) ようになつているため、 次式 (1) によって、 書き込む べきデータの長さ nをパケットライ ト (Packet Write) で書き込むのに 必要なプロック数 mを算出するとともに、 次式 (2) によって、 バケツ トライ ト (Packet Write) で書き込む場合に書き込むべきデータの先頭 LB A値を含むパケットの先頭 LBA値 yを算出する。 なお、 I NTは 整数をとることを意味する。 また、 式 (1) 中、 「n + x% 32」 は n + Xの 3 2の剰余である。
m= [ I NT {(η + χ% 3 2) /3 2 } +1 ] X 3 2 . . . (1) y= I NT (x/3 2) X 3 2 - - · ( 2 ) ここでは、 式 (1 ) は、 書き込むべきデータが複数のパケット (3 2 ブロック) にまたがってしまう場合も考慮している。
例えば、 先頭 LBA値 Xが 1 0で、 書き込むべきデータの長さ nが 2 2である場合、書き込むべきデータの最後の L B A値 zは 3 2であるが、 式 (1) によって求められる mは 64 (m= 64) となり、 書き込むベ きデータがまたがつている 2つのバケツトが読み出されることになる。 また、 先頭 8 値 が4 2で、 書き込むべきデータの長さ nが 54
である場合、 書き込むべきデータの最後の LB A値 zは 9 6であるが、 式 (1) によって求められる mは 9 6 (m= 9 6 ) となり、 書き込むベ きデータがまたがつている 3つのパケッ トが読み出されることになる。 次いで、 ステップ A 1 1 0へ進み、 CD— RWディスク 1 00の先頭 LB A値 yから mプロック分の領域に書き込まれているデータを読み出 して、ステップ A 9 0へ進み、メインメモリ上に読み込まれたデータ (先 頭 L B A値 yから mプロック分の領域のデータ) のうちの一部のデータ を、 書き込むべきデータ (セクタ単位) で書き換えて、 ステップ A40 へ進み、 CD— RWディスク 1 00の先頭 L B A値 yから mプロック分 の領域に一部書き換えられたデータをパケッ トライ小で書き込んで (即 ち、データを書き込むべく CD— RWドライブへ信号を出力して)、 この 〇0— 1 書込用ドライバによる割り込み処理を終了する。
具体的には、 この CD— RW書込用ドライバによって CD— RWドラ イブを操作することによる CD— RWディスク 1 0 0への書き込みは、 例えば図 1 0 (A) 〜図 1 0 (C) に示すようにして行なわれる。
つまり、 図 1 0 (A) に示すように、 HDに書き込まれているデータ をセクタ単位 (5 1 2バイ ト毎) で書き換えるべく B I O Sによって設 定されるデータが、 例えば 2 5 6 0バイ ト [2 5 6 0バイ ト ( 5セクタ) = 204 8バイ ト ( 2キロバイ ト ; 4セクタ ; 1ブロック) + 5 1 2バ イ ト (1セクタ)] であると、 書き込むべきデータの長さ n、 即ちブロッ ク数は 2となり、 上記の式 ( 1 ) より、 mは 3 2ブロックとなる。 また、 先頭 LB A値が例えば 1 0であると、 上記の式 (2) より、 yは 0とな る。 この場合、 図 1 0 (B) に示すように、 先頭 L B A値 0から 3 2ブ ロック分、 即ち、 8 値0〜1^8 値3 1の 3 2ブロック分のデータ が CD— RWディスク 1 00からメインメモリ上へ読み込まれる。
そして、メインメモリ上に読み込まれたデータのうちの LBA値 1 0,
1 1の 2つのブロック内の一部のデータ [ここでは、 2 5 6 0バイ ト( 5 セクタ) のデータ] をセクタ単位 (5 1 2バイ ト毎) で書き換えて (差 し替えて)、 図 1 0 (C) に示すように、 8 値1 0 , 1 1のデータの 一部を書き換えた 3 2ブロック (1つのパケット) のデータとし、 この 3 2ブロックのデータをパケットライ ト (Packet Write) で書き込むよ うになっている。
ところで、 図 9に示すように、 ステップ A 3 0で、 先頭 L B A値 の 3 2の剰余が 0でないと判定した場合には、 ステップ A 1 2 0へ進む。 ステップ A 1 2 0では、 パケットライ ト (Packet Write) では 3 2ブ ロック ( 64キロバイ ト ;書換単位, 書込単位) 毎にデータを書き込む (書き換える) ようになつているため、 次式 (3) によって、 書き込む べきデータの長さ nをパケットライ ト (Packet Write) で書き込むのに 必要なブロック数 m' を算出するとともに、 次式 (4) によって、 パケ ットライ ト (Packet Write) で書き込む場合に書き込むべきデータの先 頭 LBA値を含むパケットの先頭 LBA値 を算出する。
m' = n + 3 2 · · · ( .3 ) γ' = I NT (x/3 2 ) X 3 2 ... (4) 次いで、 ステップ A 1 30へ進み、 CD— RWディスク 1 00の先頭 8 値7' から ブロック分の領域に書き込まれているデータを読 み出して、 ステップ A 9 0へ進み、 メインメモリ上に読み込まれたデー タ (先頭 LBA値 y' から m' プロック分の領域のデータ) のうちの一 部のデータを、 書き込むべきデータ (セクタ単位) で書き換えて、 ステ ップ A40へ進み、 CD— RWディスク 1 0 0の先頭 LBA値 y' から m' プロック分の領域に一部書き換えられたデータを書き込んで(即ち、 データを書き込むべく CD— RWドライブへ信号を出力して)、この CD — RW書込用ドライバによる割り込み処理を終了する。
なお、 ここでは、 パケッ トヲイ トでの書換単位を 3 2プロック (64 キロバイ ト) として説明しているが、 書換単位は 3 2ブロック以外にも 設定変更可能で、 例えば 1 6ブロック (3 2キロバイ ト) と設定するこ ともでき、 例えば書換単位を 1 6ブロック (3 2キロバイ ト) とした場 合であっても、 上述と同様にして書き換えを行なうことができる。
したがって、 本実施形態にかかる書換可能型情報記録媒体 (情報記録 媒体) 及ぴブートス トラップ方法によれば、 CD, DVD系の媒体のう ち CD— RW, D VD-RW, D V D _ R AMのような書換可能型情報 記録媒体に、 自分用にカスタマイズされたオペレーティングシステム O S (一部のデータを書き換えながら起動する W I ND OWSのような O S) を格納して持ち歩き、 その OSを HDにインス トールすることなし に、 これらの書換可能型情報記録媒体から直接起動させ、 どこでも自分 の O S環境を再現できるようになるという利点がある。
特に、 自分用にカスタマィズされたオペレーティングシステム (O S) が記録された CD— RW, D VD-RW, D V D _ R AMのような書換 可能型情報記録媒体に、 通常頻繁に使用するアプリケーションプロダラ ムを記録しておけば、 例えばあるパーソナルコンピュータ (コンビユー タシステム) での作業中に他のパーソナルコンピュータで作業を行なう 必要が生じた場合等に、 任意のパーソナルコンピュータを使って継続し て作業を行なえるようになる。
また、 万が一通常使用しているパーソナルコンピュータ (コンビユー タシステム) のハードディスクに障害が生じた場合にも、 CD— RW, D VD-RW, D VD— RAMのような書換可能型情報記録媒体を用い ることで、 ハードディスクの代わりに緊急避難的に作業を継続すること が可能となる。 つまり、 CD— RW, D VD-RW, DVD— RAMの ような書換可能型情報記録媒体は、 緊急時用記録媒体 (緊急ディスク)
として使用することができる。
また、 1枚の CD— RWディスク 1 0 0に、 ローダ, MS— DO S, W I NDOWS, CD— RW書込用ドライバ, アドレス変換プログラム の全てを格納しているため、 携帯性に優れ、 持ち歩きに便利であり、 ま た、 コンピュータシステムのブートス トラップ時には、 この 1枚のディ スクを用いるだけで W I NDOWSを起動させることができ、 操作が簡 単であるという利点もある。
また、 CD— RW書込用ドライバ及ぴアドレス変換プログラムをメイ ンメモリ上にロードし、 B I O Sの割り込み処理プログラムとして実行 することで、 書換可能型情報記録媒体に格納された O S (—部のデータ を書き換えながら起動する W I NDOWSのような O S) を書換可能型 情報記録媒体から直接起動させるために、 特に B I O Sを設計変更しな くてもよく、 簡便な方法で実現できるという利点もある。
さらに、 上述のように、 64 k B, 3 2 k Bといった大きな単位で書 き換えを行ないながら、 実質的には書き換える必要のある特定の一部の データだけを書き換える (差し替える) ようにしているため、 CD系, DVD系の書換可能型情報記録媒体を用いて W I NDOWSのように一 部のデータを書き換えながら立ち上がる O Sを起動する場合であっても. 途中で止まってしまうことなく、 確実に起動させることができるという 利点がある。
つまり、 WI ND〇WSのように一部のデータを書き換えながら立ち 上がる O Sを起動する際に、 CD— RW書込用ドライバによって、 パケ ッ トライ トによって 3 2プロック (64キロバイ ト) [通常、 3 2プロッ クであるが、 3 2ブロック以外にも設定変更可能で、 例えば 1 6ブロッ ク (32キロバイ ト) と設定することもできる] という書換単位で書き 換えを行なうようになっているものの、 実際には、 B I O Sが、 HDに
書き込まれたデータをセクタ単位 (5 1 2パイ ト毎) で書き換えようと したら、 CD— RW書込用ドライバによって、 CD— RWドライブによ るデータの書換単位である 3 2ブロック (6 4 k B) のデータのうち B I O Sが書き換えようとしているセクタ単位 (5 1 2バイ ト毎) のデー タに対応して、 特定のブロック内のデータをセクタ単位 (5 1 2バイ ト 毎) で書き換える (差し替える) ようにしている。
このように、 B I O Sが HDに記憶されたデータを書き換えるために セクタを基準としてデータを書き換えようとすると、 書き換える必要の ある特定の一部のデータのみがセクタを基準として書き換えられる (差 し替えられる) ため、 CD— RWドライブが 64 k B, 3 2 k Bといつ た大きな単位でデータの書き換えを行なう場合であっても、 途中で止ま つてしまうことなく、 確実に起動させることができるのである。
また、 ローダ (ブートストラップローダ) は、 コンピュータシステム をブートス トラップする際に最初にメインメモリ上にロードされるもの であるため、 W I ND OWSが起動する前に、 CD— RW書込用ドライ バ及ぴァドレス変換プログラムをメインメモリ上に確実にロードするこ とができ、 ァドレス変換プログラムを実行することができるという利点 もある。
(第 2実施形態)
本発明の第 2実施形態にかかる書換可能型情報記録媒体 (情報記録媒 体) 及びブートス トラップ方法は、 上述の第 1実施形態で CD— RW書 込用 ドライバ及びァドレス変換プログラムをブートス トラップローダ (Boot Loader) に含ませてメインメモリ上にロードしているのに代えて、 CD— RW書込用ドライバ及ぴァドレス変換プログラムを MS— D〇 S の常駐プログラムとしてメインメモリ上にロードするようにしている点 が異なる。
このため、 本実施形態では、 CD— RWディスク 1 0 0の論理フォー マッ トは、 図 1 1に示すように、 プライマリ ·ポリユーム 'ディスクリ プタ (Primary Volume Descriptor,論理アドレス番号 L B A 1 6), ブー トレコードボリユームディスクリプタ (Boot Record Volume Descriptor, 論理ァドレス番号 L B A 1 7),ブーティングカタ口グ(Booting Catalog, 論理ァドレス番号 L B A 20), ブートストラップローダ (Boot Loader, 論理アドレス番号 L B A 2 7), I P L (Initial Program Loader), M S -DO S, CD— RW書込用ドライバ及びァドレス変換プログラム, W I ND OWSが順に配置された構造となっている。
特に、 本実施形態では、 ア ドレス変換プログラムが、 割り込みべク ト ルテーブルに格納される割り込み処理プログラム (割り込み処理ルーチ ン) のア ドレスを書き換えるためのプログラムであり、 また、 CD— R W書込用ドライノく (B I O S付加プログラム, トラッププログラム)力 S、 CD— RWディスク 1 0 0を HDと同様に用いながら W I NDOWSを 起動するために B I O Sに付加されるプログラムである点は、 上述の第 1 実施形態と同じであるが、 これらの CD— RW書込用ドライバ及ぴァ ドレス変換プログラムは、 媒体上の MS— D〇 Sが格納された領域と W I NDOWSが格納された領域との間の領域に、 MS— D O Sの常駐プ ログラムとして格納されており、 MS— DO Sがメインメモリにロード された後、 W I ND〇WSがメインメモリ上にロードされる前に、 これ らの CD— RW書込用ドライバ及ぴァドレス変換プログラムがメインメ モリ上にロードされるようになっているのである。
これにより、 CD— RW書込用ドライバ及ぴァドレス変換プログラム が MS— DO Sに常駐プログラムに含まれるため、 メインメモリ上の M S— DO Sが格納された領域に連なるように CD— RW書込用ドライバ 及ぴァドレス変換プログラムがロードされる領域が確保されることにな
る。
なお、その他の構成は、上述の第 1実施形態のものと同様であるため、 ここでは、 その説明を省略する。
本実施形態にかかる書換可能型情報記録媒体 (情報記録媒体) は、 上 述のように構成されるため、 コンピュータシステムのブートス トラップ について、 図 1 2 (A) 〜図 1 2 (G) のメインメモリのメモリマップ 遷移図、 及び、 図 1 3のブートス トラップの手順を示すフローチャート を参照しながら説明する。
つまり、 コンピュータシステムをブートス トラップすべく、 電源が投 入されると、 図 1 2 (A) に示すように、 メインメモリ上の例えばァド レス 0E0000H〜0FFFFFHの領域に B I O Sが読み込まれ、この B I O Sが 実行されてハードウェアの初期化等が行なわれる。 この際、 図 1 2 (B) に示すように、 B I O Sに含まれるプログラムに従ってメインメモリ上 の例えば最もァドレス 000000H側の領域に割り込みべク トルテーブルが 作成される。 その後、 B I O Sに含まれるプートストラッププログラム に従って、 C D-RWドライブに装着されている CD— RWディスク 1 0 0に記録されているデータが読み込まれる。 なお、 図 1 2 (A) 〜図 1 2 (G) のメモリマップでは、 Intel 社の x 8 6系 (8 0 8 6) のマ イク口プロセッサのメインメモリを例にしている。
具体的には、 図 1 3に示すように、 ステップ B 1 0で、 B I O Sに含 まれるブートストラッププログラムは、 CD— RWディスク 1 0 0の論 理ァドレス番号 LB A 1 6に記録されているプライマリ · ボリューム · ディスクリプタ (Primary Volume Descriptor) を読み込み、 さらに、 論 理ァドレス番号 L B A 1 7のブートレコードボリユームデイスクリプタ (Boot Record Volume Descriptor) み込む。
次に、 ステップ B 20で、 論理アドレス番号 L B A 20のブーティン
グカタログ (Booting Catalog) を読み込み、 ステップ B 3 0で、 ブーテ イングカタログ (Booting Catalog) に従って、 論理ア ドレス番号 LB A 2 7のプートストラップローダ (ブートローダ; Boot Loader) をメイン メモリ上にロードする。例えば、 ブートス トラップローダ(Boot Loader) は、 図 1 2 (C) に示すように、 メインメモリ上のアドレス 0007C0Hに ロードされ、 実行される。
このようにブートストラップローダ (BootLoader) が実行されたこと で、 ステップ B 40で、 図 1 2 (D) に示すように、 I P L (Initial Program Loader) がメインメモリ上にロードされ、 メインメモリ上に口 ードされた I P L (Initial Program Loader) 力 S実行される。
そして、 I P L (Initial Program Loader) が実行されることで、 ス テツプ B 5 0で、 図 1 2 (E) に示すように、 MS— DO Sがメインメ モリ上の割り込みべク トルテーブルに連なる領域にロードされて実行さ れ、 MS— DO Sが起動する。
このようにして MS_D〇 Sが起動すると、 続けて、 ステップ B 6 0 で、 MS— DO Sの常駐プログラムとしての CD— RW書込用ドライバ 及びア ドレス変換プログラムが、 図 1 2 (F) に示すように、 メインメ モリ上の MS—DO Sに連なる領域にロードされ、 ステップ B 7 0で、 ァドレス変換プログラムが実行されて、 割り込みべク トルテーブルの I NT 1 3 hに格納されているァドレスが、 メインメモリ上にロードされ た CD— RW書込用ドライバの先頭ァドレスに書き換えられる。
なお、 図 1 2 (F), 図 1 2 (G) では、 CD— RW書込用ドライノく (ト ラッププログラム) のみを示しており、 ア ドレス変換プログラムは示し ていないが、 実際には、 メインメモリ上の CD— RW書込用ドライバが ロードされているところにァ ドレス変換プログラムもロードされている c そして、 ステップ B 8 0で、 メインメモリ上に MS— DO Sの常駐プ
ログラムとしてロードされた CD— RW書込用ドライバが実行されるこ とで、 CD— RWディスク 1 00に記録されている W I NDOWSの一 部のデータが書き換えられながら、 W I NDOWSが起動する。
つまり、 W I ND OWSが起動する際に、 一部のデータ (ファイル) を書き換えよう として B I O Sプログラムが実行されると、 ドライブ番 号が CD— RWドライブのドライブ番号である 2番に設定され、 書き込 み命令が出され、 さらに割り込みべク トルテーブルの I NT 1 3 hを参 照すると、 CD— RWドライブを書き込み動作させるための CD— RW 書込用ドライバを呼び出すためのァドレスが呼び出され、 これにより C D— RW書込用ドライバが実行されることになり、 これにより、 CD— RWディスク 1 0 0に記録されている W I NDOWSの一部のデータ (ファイル) が書き換えられながら、 W I ND〇WSが起動する。
ここでは、 MS— DO Sを含む W I NDOWSは、 図 1 2 (E) 〜図 1 2 (G) に示すように、 メインメモリ上の割り込みべク トルテーブル に連なる領域に、 メインメモリ内を下側 (ア ドレス 000000H側) から上 側へ向けて吸い上げられながらロードされていくため、 先にメインメモ リ上にロードされているブートストラップローダ (Boot Loader) 及び I P L (Initial Program Loader) は MS— DO S, ア ドレス変換プログ ラム及び B I O S付加プログラム, W I ND OWSによって上書きされ ることになる。
したがって、 本実施形態にかかる書換可能型情報記録媒体 (情報記録 媒体) 及びブートス トラップ方法によれば、 CD— RW書込用ドライバ 及びァ ドレス変換プログラムが MS—D〇 Sの常駐プログラムとされて いるため、 上述の第 1実施形態のように、 メインメモリ上に CD— RW 書込用ドライバ及びァドレス変換プログラムを格納するための領域を別 個に確保したり、 上書きされないようにメモリ転送を行なったりする必
要がなく、 より簡便な方法で、 CD— RW書込用ドライバ及びア ドレス 変換プログラムをメインメモリ上へロードすることができ、 さらに C D 一 RW書込用ドライバが上書きされずにメインメモリ上に残るようにす ることができるという利点がある。
また、 MS— DO Sは、 W I NDOWSが起動する前に起動するもの であるため、 MS— DO Sの常駐プログラムとしておけば、 WI NDO WSが起動する前に、 CD— RW書込用ドライバ及びァドレス変換プロ グラムをメインメモリ上に確実にロードすることができ、 ァドレス変換 プログラムを実行することができるという利点もある。
さらに、 上述の第 1実施形態の場合と同様に、 以下の利点もある。 つまり、 CD, DVD系の媒体のうち CD— RW, DVD— RW, D VD— RAMのような書換可能型情報記録媒体に、 自分用にカスタマィ ズされたオペレーティングシステム O S (特に、 一部のデータを書き換 えながら起動する W I NDOWSのような O S) を格納して持ち歩き、 その OSを HDにインス トールすることなしに、 これらの書換可能型情 報記録媒体から直接起動させ、 どこでも自分の O S環境を再現できるよ うになるという利点がある。
特に、 自分用にカスタマイズされたオペレーティングシステム (O S) が記録された CD— RW, D VD-RW, D V D— R AMのような書換 可能型情報記録媒体に、 通常頻繁に使用するアプリケーションプロダラ ムを記録しておけば、 例えばあるパーソナルコンピュータ (コンビユー タシステム) での作業中に他のパーソナルコンピュータで作業を行なう 必要が生じた場合等に、 任意のパーソナルコンピュータを使って継続し て作業を行なえるようになる。
また、 万が一通常使用しているパーソナルコンピュータ (コンビユー タシステム) のハードディスクに障害が生じた場合にも、 CD— RW,
DVD-RW, DVD— RAMのような書換可能型情報記録媒体を用い ることで、 ハードディスクの代わりに緊急避難的に作業を継続すること が可能となる。 つまり、 CD— RW, DVD-RW, DVD— RAMの ような書換可能型情報記録媒体は、 緊急時用記録媒体 (緊急ディスク) として使用することができる。
また、 1枚の C D— RWディスク 1 00に、 ローダ, MS— DO S, WI NDOWS, CD— RW書込用ドライバ, ア ドレス変換プログラム の全てを格納しているため、 携帯性に優れ、 持ち歩きに便利であり、 ま た、 コンピュータシステムのブートス トラップ時には、 この 1枚のディ スクを用いるだけで W I NDOWSを起動させることができ、 操作が簡 単であるという利点もある。
また、 CD— RW書込用ドライバ及びア ドレス変換プログラムをメイ ンメモリ上にロードし、 B I O Sの割り込み処理プログラムとして実行 することで、 書換可能型情報記録媒体に格納された O S (—部のデータ を書き換えながら起動する WI NDOWSのような O S) を書換可能型 情報記録媒体から直接起動させるために、 特に B I O Sを設計変更しな くてもよく、 簡便な方法で実現できるという利点もある。
さらに、 上述のように、 64 k B, 3 2 k Bといった大きな単位で行 ないながら、 実質的には書き換える必要のある特定の一部のデータだけ を書き換える (差し替える) ようにしているため、 CD系, DVD系の 書換可能型情報記録媒体を用いて W I NDOWSのように一部のデータ を書き換えながら立ち上がる O Sを起動する場合であっても、 途中で止 まってしまうことなく、 確実に起動させることができるという利点があ る。
つまり、 W I NDQWSのように一部のデータを書き換えながら立ち 上がる O Sを起動する際に、 CD— RW書込用ドライバによって、 パケ
ッ トライ トによって 3 2ブロック (64キロパイ ト) [通常、 32プロッ クであるが、 3 2プロック以外にも設定変更可能で、 例えば 1 6プロッ ク (3 2キロバイ ト) と設定することもできる] という書換単位で書き 換えを行なうようになっているものの、 実際には、 B I O Sが、 HDに 書き込まれたデータをセクタ単位 (5 1 2パイ ト毎) で書き換えようと したら、 CD— RW書込用ドライバによって、 CD— RWドライブによ るデータの書換単位である 3 2ブロック (64 k B) のデータのうち B I O Sが書き換えようとしているセクタ単位 (5 1 2パイ ト毎) のデー タに対応して、 特定されるブロック内のデータを、 セクタ単位 (5 1 2 バイ ト毎) で書き換える (差し替える) ようにしている。
このように、 B I O Sが HDに記憶されたデータを書き換えるために セクタを基準としてデータを書き換えようとすると、 書き痪える必要の ある特定の一部のデータのみがセクタを基準として書き換えられる (差 し替えられる) ため、 C D— RWドライブが 64 k B, 3 2 kB.といつ た大きな単位でデータの書き換えを行なう場合であっても、 途中で止ま つてしまうことなく、 確実に起動させることができるのである。
なお、 上述の各実施形態では、 CD— RW書込用ドライバ及びアドレ ス変換プログラムをブートストラップローダ (Boot Loader) に含ませて メインメモリ上にロードしたり、 MS -DO Sの常駐プログラムとして メインメモリ上にロードしたりしているが、 これに限られるものではな く、 一部のデータ (ファイル) を書き換えながら起動する W I NDOW Sのような〇 Sがメインメモリ上にロードされ、 実行されて起動する前 に、 CD— RW書込用ドライバ及びァドレス変換プログラムがメィンメ モリ上にロードされるように、 CD— RWデイスク 1 00に格納してお けばよい。
また、 上述の各実施形態では、 書換可能型情報記録媒体として CD—
RWを例にして説明したが、 これに限られるものではなく、 例えば DV D— RAM, DVD— RWのような他の書換可能型情報記録媒体 (光記 録媒体) であっても良い。
なお、 本発明は上述した実施形態に限定されるものではなく、 本発明 の趣旨を逸脱しない範囲で、 種々変形して実施することができる。
例えば、 上述の各実施形態では、 CD— RWディスク 1 00をブータ プル CDとして構成し、 この 1枚の CD— RWディスク 1 0 0に MS— DO S及び WI NDOWS (O S) を格納し、 さらに CD— RW書込用 ドライバ及ぴァドレス変換プログラムも格納しているが、 これに限られ るものではない。
例えば、 CD— RWディスク 1 00には、 自分用にカスタマイズした O Sとしての W I NDOWSのみをハードディスクイメージで格納する 一方、 別の情報記憶媒体 (記憶媒体;例えばフロッピーディスク, CD 一 ROM, CD-R, CD— RW等) に、 ローダ (ブートス トラップ口 ーダ, I P L) 及び MS— DOSを格納することでブータブルディスク (起動ディスク) とし、 このブータブルディスクとしての情報記録媒体 に、 CD _RWドライブを書き込み操作するための CD— RW書込用ド ライパと、 コンピュータシステムのメインメモリ上の割り込みべク トル テーブルのコンピュータシステムのディスク ドライブを操作するための B I O Sの割り込み処理プログラムの先頭アドレスを、 CD— RW書込 用ドライバの先頭ァドレスに書き換えるァドレス変換プログラムとを格 納するようにしても良い。
そして、 このブータプルディスクとしての情報記録媒体を用いて MS -DO Sを起動させるとともに、 コンピュータシステムのメインメモリ 上に CD— RW書込用ドライバ及ぴァドレス変換プログラムをロードし、 ァドレス変換プログラムを実行して割り込みべク トルテーブルの B I O
Sの割り込み処理プログラムの先頭ァドレスを CD— RW書込用ドライ バの先頭ァドレスに書き換えた後、 CD— RWディスク 1 00から W I ND OWSを読み込ませて起動させるようにすれば良い。 なお、 CD— RW書込用ドライバ及ぴァドレス変換プログラムは、 ローダに含ませて も良いし、 MS—DO Sの常駐プログラムとしても良い。
また、 例えば、 CD— RWディスク 1 00に、 ローダ (ブートス トラ ップローダ, I P L) 及ぴ MS— D O Sを格納することでブータプル C Dを構成し、このブータプル CDとしての CD— RWディスク 1 0 0に、 自分用にカスタマイズした O Sとしての W I ND OWSをハードデイス クイメージで格納する一方、 別の情報記憶媒体 (記憶媒体;例えばフロ ッピーディスク, CD— ROM, CD-R, CD— RW等) に、 CD— RWドライブを書き込み操作するための CD— RW書込用ドライバと、 コンピュータシステムのメインメモリ上の割り込みべク トノレテープノレの コンピュータシステムのディスク ドライブを操作するための B I O Sの 割り込み処理プログラムの先頭ア ドレスを、 CD— RW書込用ドライバ の先頭ァドレスに書き換えるァドレス変換プログラムとを格納するよう にしても良い。
そして、 このブータプル CDとしての CD— RWディスク 1 0 0を用 いて MS— DO Sを起動させた後、 情報記録媒体からコンピュータシス テムのメインメモリ上に CD— RW書込用ドライバ及ぴァドレス変換プ ログラムをロードし、 ァドレス変換プログラムを実行して割り込みべク トルテーブルの B I O Sの割り込み処理プログラムの先頭ァドレスを C D— RW書込用ドライバの先頭ァドレスに書き換えた後、 CD— RWデ イスク 1 0 0力 ら WI NDOWSを読み込ませて起動させるようにすれ ば良い。
さらに、 例えば、 CD— RWディスク 1 00には、 自分用にカスタマ
ィズした O Sとしての W I NDOWSをハードディスクイメージで格納 するとともに、 CD— RWドライブを書き込み操作するための CD— R W書込用ドライバと、 コンピュータシステムのメインメモリ上の割り込 みべク トルテーブルのコンピュータシステムのディスク ドライブを操作 するための B I O Sの割り込み処理プログラムの先頭ア ドレスを、 CD — RW書込用ドライバの先頭ァドレスに書き換えるァドレス変換プログ ラムとを格納する一方、 別の情報記憶媒体 (記憶媒体;例えばフロッピ 一ディスク, CD— ROM, CD-R, CD— RW等) にローダ (ブー トス トラップローダ, I P L ) 及ぴ M S— D O Sを格納してブータブル ディスク (起動ディスク) としても良い。
そして、 まず、 このブータブルディスクとしての情報記録媒体を用い て MS— DO Sを起動させた後、 CD— RWディスク 1 0 0からコンビ ユータシステムのメインメモリ上に CD— RW書込用ドライバ及びァド レス変換プログラムをロードし、 ァドレス変換プログラムを実行して割 り込みべク トルテーブルの B I〇 Sの割り込み処理プログラムの先頭ァ ドレスを CD— RW書込用ドライバの先頭ァドレスに書き換える。 その 後、 C D— RWディスク 1 00から W I ND OWSを読み込ませて起動 させるようにすれば良い。
また、 例えば、 CD— RWディスク 1 0 0に自分用にカスタマイズし た O Sとしての W I ND OWSをハードディスグイメージで格納する一 方、 別の情報記憶媒体 (記憶媒体;例えばフロッピーディスク, CD— ROM, CD-R, CD— RW等) にローダ(ブートストラップローダ, I P L) 及び MS— DO Sを格納して、 これをブータプルディスク (起 動ディスク) とし、 さらに別の情報記憶媒体 (記憶媒体;例えばフロッ ピーディスク, CD_R〇M, CD-R, CD— RW等) に、 CD— R Wドライブを書き込み操作するための CD— RW書込用ドライバと、 コ
ンピュータシステムのメインメモリ上の割り込みべク トノレテーブルのコ ンピュータシステムのディスク ドライブを操作するための B I O Sの割 り込み処理プログラムの先頭ァ ドレスを、 〇0— 111^書込用ドライバの 先頭ァドレスに書き換えるァドレス変換プログラムとを格納するように しても良い。
そして、 このブータプルディスクとしての 1の情報記録媒体を用いて MS-DO Sを起動させた後、 他の情報記録媒体からコンピュータシス テムのメインメモリ上に CD— RW書込用ドライバ及ぴァドレス変換プ ログラムをロードし、 了 ドレス変換プログラムを実行して割り込みべク トルテーブルの B I O Sの割り込み処理プログラムの先頭ァドレスを C D— RW書込用ドライバの先頭ア ドレスに書き換えた後、 CD— RWデ イスク 1 00から WI ND OWSを読み込ませて起動させるようにすれ ば良い。
ここでは、 いずれの場合も CD— RW書込用ドライバ及ぴァドレス変 換プログラムを同一の記録媒体に格納しているが、 これに限られるもの ではなく、 CD— RW書込用ドライバ及ぴァドレス変換プログラムが W I NDOWSを起動させる前にメインメモリ上にロードされるようにす れば良く、 例えば CD— RW書込用ドライバとァドレス変換プログラム とを別々の記録媒体に格納するようにしても良い。
なお、 上述の各実施形態では、 CD— RW書込用ドライバが、 CD—
RWドライブに装着されている媒体が CD— RWディスク 1 00である か否かを判定するステップも含むものとして構成しているが、 このステ ップを有しないものとして構成することもできる。
これは、 ア ドレス変換プログラムは、 メインメモリ上にロードされて も、 その後に O Sがロードされると上書きされてしまうのに対し、 CD 一 RW書込用ドライバはメインメモリ上に残しておく必要がある (メイ
ンメモリ上に常駐させておく必要がある) ため、 CD— RW書込用ドラ ィパのプログラムはできるだけ小さくする (即ち、 CD— RW書込用ド ライパが格納されるメインメモリ上のメモリ領域をできるだけ小さくす る) のが望ましいからである。
具体的には、 CD— RW書込用ドライバは、 B I O Sにより設定され たドライブ番号が CD— RWドライブのドライブ番号であるか否かを判 定するステップと、 B I O Sによる書き込み命令があつたか否かを判定 するステップとを備える (即ち、 このようなステップをコンピュータシ ステムに実行させる) ものとして構成することもできる。
そして、 上述の全ての条件を満たした場合、 即ち、 B I O Sにより設 定されたドライブ番号が CD— RWドライブのドライブ番号であると判 定し、 かつ、 B I O Sによる書き込み命令があつたと判定した場合に、 CD— RWへの書き込みを行なうべく、 CD— RWドライプを書き込み 動作させるようにすればよい。
一方、 CD— RW書込用ドライバは、 上述の条件のうちのいずれか一 方の条件を満たしていない場合、 即ち、 B I O Sにより設定されたドラ イブ番号が CD— RWドライブのドライブ番号でないと判定したか、 又 は、 B I O Sによる書き込み命令がなかったと判定した場合に、 ァドレ ス書換プログラムによって書き換える前の B I O Sの割り込み処理プロ グラムの先頭ァドレスを指定するようにすればよい。
これにより、 本来の I NT 1 3 hで指定していたァ 'ドレスへ飛んで、 通常のコンピュータシステムのディスク ドライブを操作するための B I O Sプログラムの割り込み処理プログラム (割り込み処理ルーチン) が 実行されるようにすればよい。
ところで、 CD— RW書込用ドライバをこのように構成する場合には、 例えばア ドレス変換プログラムを、 CD— RWドライブ (ブートデバイ
ス) が接続されているか否かを判定するステップ (ドライブ判定ステツ プ)、及び、 CD— RWドライブに装着されている媒体が CD— RWディ スク 1 0 0であるか否かを判定するステップ (ディスク判定ステップ) を含むものとして (即ち、 このようなステップをコンピュータシステム に実行させるものとして) 構成すれば良い。
つまり、 ア ドレス変換プログラムを、 上述の各実施形態において説明 したステップ、 即ち、 コンピュータシステムのメインメモリ上の割り込 みべク トノレテーブルに格納されるコンピュータシステムのディスク ドラ イブを操作するための B I O Sの割り込み処理プログラムの先頭ァドレ スを、 CD— RW書込用ドライバの先頭ア ドレスに書き換えるステップ (ア ドレス書換ステップ) に加えて、 CD— RWドライブ (ブートデバ イス) が接続されているか否かを判定するステップ (ドライブ判定ステ ップ)、及び、 CD— RWドライブに装着されている媒体が CD— RWデ イスク 1 00であるか否かを判定するステップ(ディスク判定ステップ) を含むものとして構成すればょレ、。そして、ァ ドレス変換プログラムが、 CD— RW書込用ドライバよりも先にメインメモリ上にロードされて実 行されるようにすれば良い。
なお、 このァドレス変換プログラムのドライブ判定機能及びディスク 判定ステップは、 上述の第 1実施形態の CD— RWドライブに装着され ている媒体が CD— RWであるか否かを判定するステップに相当する。 この場合、 コンピュータシステムのブートス トラップ方法としては、 以下のような処理が行なわれる。 ここでは、 適宜、 ア ドレス変換プログ ラムによる処理手順を示す図 14のフローチャートを参照する。
つまり、 データを書き換えながら立ち上がるオペレーティングシステ ムと しての WI NDOWSの起動前に、 上述の各実施形態と同様の方法 でァドレス変換プログラム及ぴ CD— RW書込用ドライバがメインメモ
V上にロードされ、 ァドレス変換プログラムのドライブ判定ステップ及 ぴディスク判定ステップによって、 CD— RWドライブが接続されてい るか否かを判定するとともに、 CD— RWドライブに装着されている媒 体が CD— RWディスク 1 0 0であるか否かを判定する (図 1 4中、 ス テツプ D 1 0)。
この判定の結果、 CD— RWドライブが接続されており、 かつ、 CD 一 RWドライブに装着されている媒体が CD _RWディスク 1 00であ ると判定した場合には、 ァドレス変換プログラムのァドレス書換ステツ プによって、 'コンピュータシステムのメインメモリ上の割り込みべク ト ルテーブルに格納されるコンピュータシステムのディスク ドライブを操 作するための B I O Sの割り込み処理プログラムの先頭ァドレスを、 C D— RW書込用ドライバの先頭ア ドレスに書き換える (図 1 4中、 ステ ップ D 20)。
また、 このように、 CD— RWドライブが接続されており、 かつ、 C D— RWドライブに装着されている媒体が CD— RWディスク 1 0 0で あると判定した場合には、 メインメモリ上にロードされた CD— RW書 込用ドライバは、 MS— DO Sや W I NDOWSなどの O Sやその他の プログラムがメインメモリ上にロードされる際に上書きされないように して、 メインメモリ上に残しておく。
例えば、 上述の第 1実施形態のようにして CD— RW書込用ドライバ をメインメモリ上にロードする場合、 〇0— 1 書込用ドライバが上書 きされないように、 上述の第 1実施形態の場合と同様に、 CD— RW書 込用ドライバを MS—D O S等の他のプログラムによって上書きされな いところヘメモリ転送すれば良い。
そして、 W I NDOWSの起動時に一部のデータを書き換える際に、 メインメモリ上にロードされている CD— RW書込用ドライバが実行さ
れるようにする。
一方、 CD— RWドライブが接続されていないと判定した場合、又は、 CD— RWドライブに装着されている媒体が CD— RWディスク 1 00 でないと判定した場合には、 上述の各実施形態のァドレス変換プログラ ムによるア ドレス変換ステップを実行することなく、 処理を終了するよ うにすれば良い。
このように、 CD— RWドライブが接続されていないと判定した場合、 又は、 CD— RWドライブに装着されている媒体が CD— RWディスク 1 0 0でないと判定した場合には、 メインメモリ上にロードされた CD _RW書込用ドライバは、 MS— DO Sや W I NDOWSなどの O Sや その他のプログラムがメインメモリ上にロードされる際に上書きされる ようにして、 メインメモリ上に残さないようにするのが好ましい。
例えば、 上述の第 1実施形態のようにして CD— RW書込用ドライバ 及ぴァドレス変換プログラムをメインメモリ上にロードする場合には、 CD— RW書込用ドライバをメモリ転送することなく、 CD— RW書込 用ドライバ及びァドレス変換プログラムをブートストラップローダに含 ませてメインメモリ上にロードしたままにしておき、 その後にメインメ モリ上にロードされる MS—DO S等の他のプログラムによって上書き されるようにすれば良い。
これにより、 CD— RWドライブが接続されていないと判定した場合、 又は、 CD— RWドライブに装着されている媒体が CD— R Wデイスク 1 00でないと判定した場合には、 ア ドレス変換処理を行なったり、 C D— RW書込用ドライバのメモリ転送を行なったり しないようにして、 処理を簡略化することができる。 また、 CD— RW書込用ドライバをメ インメモリ上に残さないようにすることで、 必要のない CD— RW書込 用ドライバによってメインメモリ上のメモリ領域が使われてしまわない
ようにすることができる。 産業上の利用可能性
以上のように、本発明の書換可能型情報記録媒体及び情報記録媒体並び にブートストラップ方法によれば、書換可能型情報記録媒体に格納された オペレーティングシステム ( O S ) をノ、一ドディスクにインストールする ことなしに、 コンピュータを直接起動させることができるようになる。 こ の結果、自分用にカスタマイズされた O Sを書換可能型情報記録媒体に格 鈉して持ち歩き、 どこでも自分の O S環境を再現できるようになり、その 利用価値は非常に高い。