(57)【要約】最新のコンピューター基本ソフト（ＯＳ）はＣＤ−ＲＯＭのような保護媒体より起動し、そして実行するように変更される。ファイル及び設定情報は完全に設定され、かつ作動可能なＯＳよりハードドライブイメージファイルへコピーされる。イメージファイルよりの最初の読み取り要求、及び書き込みディスクセクターデーターベースよりの書き込み要求及び先に書き込まれたデーターへの読み取り要求を提供することにより、エミュレートされたディスク読み取り書き込みハ−ドディスクドライブを実行するファイルシステムフィルター及びデバイスドライバーが付加される。ＯＳは起動の間にフィルター及びドライバーをロ−ドし、続いてエミュレートされた読み取り書き込みハ−ドディスクドライブより実行するように変更される。次にハードドライブイメージファイルは起動可能な保護媒体上に配置される。
2006510995.tif 000002
【特許請求の範囲】
【請求項１】
ファイルおよび設定情報を完全に設定され、そして作動可能な基本ソフトよりハードドライブイメージファイルへコピーし、予め決められた最大サイズの書き込みディスクセクターデーターベースを作成し、保存するために作動する書き込みディスクセクターデーターベースドライバーを前記ハードドライブイメージファイルへコピーし、書き込み、消去、又は読み取り専用ファイルのファイルアクセス属性を変更する要求を落とすために作動する読み取り専用保護ドライバーを前記ハードドライブイメージファイルへコピーし、そして基本ソフトが起動の間に前記の書き込みディスクセクターデーターベースドライバー及び前記読み取り専用保護ドライバーをロードするように前記ハードドライブイメージファイル上の前記ファイル及び設定情報を変更することよりなる、起動可能なハードドライブイメージファイルを作成する方法。
【請求項２】
読み取り書き込みファイル又はフリースペースへ向けられた書き込み要求、及び先に書き込まれたファイルへ向けられた読み取り要求を前記の書き込みディスクセクターデーターベースへ出力先を変更するように作動するファイルアクセス要求出力先変更ドライバーを前記ハードドライブイメージファイルへコピーし、そこでは変更された前記ファイル及び設定情報が前記ファイルアクセス要求出力先変更ドライバーをロードするように基本ソフトに命令することを含むことより更になる請求項１の方法。
【請求項３】
前記ファイルアクセス要求出力先変更ドライバーは、先に書き込まれていないファイルへ向けられた読み取り要求を前記ハードドライブイメージファイルへ渡す請求項２の方法。
【請求項４】
前記の書き込みディスクセクターデーターベースの予め決められた最大サイズは、前記ハードドライブイメージファイル上の読み取り書き込みファイル及びフリースペースのサイズである請求項１の方法。
【請求項５】
保護媒体上へ前記ハードドライブイメージファイルを配置することより更になる請求項１の方法。
【請求項６】
ハードドライブイメージファイルを作成し、完全に設定されそして作動可能な基本ソフトよりファイル及び設定情報を前記ハードドライブイメージファイルへコピーし、予め決められた最大サイズの書き込みディスクセクタ−デ−タ−ベ−スを作成し、そして保存するように作動する書き込みディスクセクタ−デ−タ−ベ−スドライバ−を前記ハ−ドドライブイメ−ジファイルへコピ−し、書き込み、消去又は読取専用ファイルのファイルアクセス属性を変更する要求を落とすように作動する読み取り専用保護ドライバーを前記ハードドライブイメージファイルへコピーし、基本ソフトが起動の間に前記書き込みディスクセクターデーターベースドライバー及び前記読み取り専用保護ドライバーをロードするように前記ハードドライブイメージファイル上の前記ファイル及び設定情報を変更し、そして保護媒体上に前記ハードドライブイメージファイルを配置することよりなるコンピューターの基本ソフトを保護媒体より起動しそして実行するように変更する方法。
【請求項７】
読み取り書き込みファイル又はフリースペースへ向けられた書き込み要求及び先に書き込まれたファイルへ向けられた読み取り要求を前記書き込みディスクセクタ−データーベースへ出力先を変更するように作動するファイルアクセス要求出力先変更ドライバーを、前記ハードドライバーイメージファイルへコピーし、そこでは前記ファイル及び設定情報の変更が基本ソフトに前記ファイルアクセス要求出力先変更ドライバーをロードするように命令することを含むことより更になる請求項６の方法。
【請求項８】
前期ファイルアクセス要求出力先変更ドライバーが先に書き込まれていないファイルへ向けられた読み取り要求を前記ハードドライブイメージファイルへ渡す請求項７の方法。
【請求項９】
ユーザーファイル及び設定情報を前記ハードドライブイメージファイルへコピーすることより更になる請求項６の方法。
【請求項１０】
前記保護媒体はコンピューターにより起動可能なデバイスとして認められるデバイスにより読み取られる請求項６の方法。
【請求項１１】
前期保護媒体上の前記ハードドライブイメージファイルに先立ち、ハードディスクより起動するために前記の変更された基本ソフトを設定し、前記コンピューターを前記の変更された基本ソフトを使用して前記ハードディスクより再起動し、そして前記の変更された基本ソフトをテストするため、少なくとも一つのテストスクリプトを実行することにより変更された基本ソフトをテストすることより更になる請求項６の方法。
【請求項１２】
前記の完全に設定されそして作動可能な基本ソフトは、保護媒体より実行することをサポートしない請求項６の方法。
【請求項１３】
前記の変更された基本ソフトは、起動の間に以下のステップ、即ちエミュレートされた読み取り書き込みハードディスクドライブを作成しそして前記ドライブを物理ドライブとしてファイルシステムに取り付け、前記のエミュレートされた読み取り書き込みハードディスクドライブへ向けられた書き込みデーターを記憶するように作動する予め決められた最大サイズの書き込みディスクセクターデーターベースを作成かつ保存し、そして書き込み、消去、又は読み取り専用ファイルのファイルアクセス属性を変更する要求を落とすように作動する読み取り専用保護ファイルシステムフィルターをインストールすることをコンピューターに実行させるように作動し、完全に設定されそして作動可能な基本ソフトを変更することにより作成されたハードドライブイメージファイル及び変更された基本ソフトを含む保護されたコンピューターの読み取り可能な媒体。
【請求項１４】
前記の変更された基本ソフトが起動の間に次のステップ、即ち読み取り書き込みファイル又はフリースペースへ向けられた書き込み要求及び先に書き込まれたファイルへ向けらた読み取り要求を前記書き込みディスクセクタ−デ−タ−ベ−スへ出力先を変更するように作動する出力先変更ファイルシステムフィルターをインストールすることをコンピューターに実行させるように更にする請求項１３の保護媒体。
【請求項１５】
前記の変更された基本ソフトは、起動の間に以下のステップ、即ち読み取り書き込みファイル又はフリースペースへ向けられた前記のエミュレートされた読み取り書き込みハードディスクドライブへの書き込み要求及び先に書き込まれたファイルへ向けられた読み取り要求を前記書き込みディスクセクターデーターベースへ出力先を変更し、先に書き込まれていないファイルへ向けられた前記のエミュレートされた読み取り書き込みハードディスクドライブへの読み取り要求を前記保護媒体上の前記ハードドライブイメージファイルへ出力先を変更し、そして書き込み、消去、又は読み取り専用ファイルのファイルアクセス属性を変更する前記のエミュレートされた読み取り書き込みハードディスクドライブへ向けられた要求を落とすことをコンピューターに更に実行させるようにする請求項１４の保護媒体。
【請求項１６】
前述の変更された基本ソフトは前記の完全に設定されかつ作動可能な基本ソフトと別のライセンスを必要としない請求項１３の保護媒体。
【請求項１７】
前記媒体の内容はエンドユーザーにより準備され、そして前記媒体上に配置される請求項１３の保護媒体。
【請求項１８】
ユーザー固有の設定情報を更に含む請求項１３の保護媒体。
【請求項１９】
前記固有の設定情報は、ネットワークアクセス設定情報、パスワード、暗号キー、電子署名、プログラム体系設定、そしてファイルシステムバックアップ計画を含むグループより選択される請求項１８の保護媒体。
【請求項２０】
コンピューターシステムドライブが使用不可になるに先立ち、完全に設定されそして作動可能な基本ソフトより引き出された変更された基本ソフト及び読み取り書き込みハードディスクドライブをエミュレートする、少なくとも一つのデバイスドライバーを含む保護媒体を準備し、そして前記システムドライブの使用不可の後は、前記コンピューターを前記保護媒体より起動しそしてエミュレートされた読み取り書き込みハードディスクドライブ上で前記の変更された基本ソフトを実行することよりなるコンピューター災難復旧方法。
【請求項２１】
一つの前記デバイスドライバ−は予め決められた最大サイズの書き込みディスクセクタ−デ−タ−ベ−スを作成し保存するように作動する書き込みディスクセクタ−デ−タ−ベ−スドライバ−よりなる請求項２０の方法。
【請求項２２】
別の前記デバイスドライバーは読み取り書き込みファイル又はフリースペースへ向けられた書き込み要求及び先に書き込まれたファイルへ向けられた書き込み要求を前記書き込みディスクセクターデーターベースへ出力先を変更するように作動するファイルアクセス要求出力先変更ドライバーよりなる請求項２１の方法。
【請求項２３】
前記ファイルアクセス要求出力先変更ドライバーは、先に書き込まれていないファイルへ向けられた読み取り要求を前記保護媒体へ渡す請求項２２の方法。
【請求項２４】
一つの前記デバイスドライバーは書き込み、消去、又は読み取り専用ファイルのファイルアクセス属性変更の要求を落とすように作動する、読み取り専用保護ドライバーよりなる請求項２０の方法。
【請求項２５】
それを前記保護媒体上に配置するに先立ち、前記の変更された基本ソフトをテストすることにより更になる請求項２０の方法。
【請求項２６】
前記テストは、前記の変更された基本ソフトを前記保護媒体上へ配置するに先立ち、前記の変更された基本ソフトで前記コンピューターを再起動し、そして少なくとも一つのテストスクリプトを実行することよりなる請求項２５の方法。
【請求項２７】
前記の完全に設定されそして作動可能な基本ソフトは、本来前記保護媒体より実行しない請求項２０の方法。
【請求項２８】
複製基本ソフトを作成するために前記の主な基本ソフトファイル及び設定情報をコピ−し、保護媒体上のハ−ドドライブイメ−ジファイル及び一定の最大サイズの書き込みディスクセクタ−デ−タ−べ−スを使用して読み取り書き込みハ−ドディスクドライブをエミュレ−トするためファイルシステムフィルタ−及びデバイスドライバ−を作成し、前記ファイルシステムフィルタ−及びデバイスドライバ−をロ−ドし実行するために前記複製基本ソフトを変更し、前記の変更された基本ソフト及び前記ファイルシステムフィルタ−及びデバイスドライバ−を保護媒体上に配置し、そして前記保護媒体より前記の変更された基本ソフトにて前記コンピュ−タ−を起動しそして実行させることよりなる、その主な基本ソフトは本来保護媒体より実行することをサポ−トしない保護媒体よりコンピュ−タ−を起動させそして実行させる方法。
【請求項２９】
実行時は、前記の変更された基本ソフトは前記のエミュレ−トされた読み取り書き込みハ−ドディスクドライブ上で実行する請求項２８の方法。
【請求項３０】
前期のエミュレ−トされた読み取り書き込みハ−ドディスクドライブは前記保護媒体より最初の読み取り要求を供給し、そして書き込み要求及び前記書き込みディスクセクタ−デ−タ−ベ−スより先に書き込まれたデ−タ−への読み取り要求を供給することにより作動する請求項２９の方法。
【請求項３１】
前期のエミュレ−トされた読み取り書き込みハ−ドディスクドライブは、書き込み、消去、又は前記保護媒体上の読み取り専用ファイルのファイルアクセス属性変更の要求を落とすことにより前記保護媒体上のファイル読み取り専用特性を保存する請求項３０の方法。
【請求項３２】
前記保護媒体より前記の変更された基本ソフトにて前記コンピュ−タ−を起動させ実行させるには、初期ＯＳブ−トストラップフェ−ズに続くROMBIOSインタ−ラプト０ｘ１３を必要としない請求項２８の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は概してコンピューター分野に、特にそれが保護媒体より起動しそして実行できるように基本ソフトを変更する方法に関係する。
【０００２】
最新のパソコンは複雑になってきており、そして多種の周辺デバイスとネットワークインターフェースを含む。これらのデバイスは、ＲＳ−２３２シリアルポート、ユニバーサルシリアルバス（ＵＳＢ）、ＩＥＥＥ１３９４（又ファイヤーワイヤー又はi−リンクとして知られる）、小型コンピューターシステムインターフェース（ＳＣＳＩ）、そしてトークンリング、イサーネット、ブルーツース、ＩＥＥＥ８０２.１１などのような色々なネットワークインターフェースを含む色々な標準インタ−フェ−スによりコンピューターへ接続される。大部分のこれらのインターフェースは、取り付けられたデバイスそして又はネットワークへのアクセスを提供するために、完全に設定されかつ実行する基本ソフトが必要である。そのようなことで、これらのインターフェースによりコンピューターに取り付けられるデーター記憶装置は、ハードドライブの故障、ウイルス感染又はコンピューターＯＳが首尾よく実行したりバックアップデバイスへアクセスを提供をできない様にする他の問題により引き起こされるようなコンピュータークラッシュ事件の際に必要とされる重要なシステムファイルのためのバックアップデバイスとしての使用には貧弱な選択しかできない。
【０００３】
ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭのような保護された、又は読み取り専用の媒体デバイスは、大部分のコンピューターにおけるＣＤ−ＲＯＭそして又はＤＶＤ−ＲＯＭドライブ標準装置として最新のコンピューターシステムの当たり前の部分となってきた。加えてＣＤ−ＲＯＭ及びＤＶＤ−ＲＯＭ「作成機」又はこれらの伝統的に読み取り専用媒体へデーターを書き込めるドライブはほとんど全てのパソコンメーカーが彼らが販売する機械の標準装置としてＣＤ−ＲＯＭ又はＤＶＤ−ＲＯＭ作成機を提供するほどに激増してきた。コンピューターユーザーが安全に大量のコンピュータープログラム及びデーターを保管するための費用効率の高い手段はＣＤ−ＲＯＭ又はＤＶＤ−ＲＯＭ作成機を使用し、そして追記型（ＷＯＲＭ）媒体又は代わりに「書き換え可能」媒体上にデーターを保存することである。どちらの場合もデーターがＣＤ−ＲＯＭ上又はＤＶＤ−ＲＯＭ上に作成され、そして媒体のセッションが閉鎖された後はデーターはすべての変更から保護され、そしてコンピューターのホストＯＳ及びコンピューターユーザーには読み取り専用デスクのように見えるであろう。
【０００４】
保護媒体上に読み取り専用形式でデーターを保管することは費用効率が高い一方、保管されたデーターの使用方法には根本的な制限が課せられる。ＣＤ−ＲＯＭ及びＤＶＤ−ＲＯＭ媒体上で使用される標準のファイルシステム形式は読み取り専用媒体に固有の特徴を持って設計された。例えば読み取り専用ファイルと共に動くように明確に記述されたコンピュータープログラムに対し媒体上に保管されたデーターを直接使用することは制限される。そのようなことで、固有のファイルシステムのセキュリティ特性に依存するプログラムは保護媒体上に保管されたファイルを直接使用することができない。又保護媒体の読み取り専用特性は多くの実行可能プログラムが媒体より直接実行することを妨げる。例えば実行可能プログラムをスペ−スの消去、他のプログラム又はスレッドとの同期のための信号、ＯＳレジストリ−への変更などのようなそれが開始された一時的なファイルをディレクトリ−へ書込む必要が起こるかもしれない。多くの実行可能プログラムが保護媒体より直接実行できないことの一つの結論としてハードディスクドライブのような読み取り書き込み記憶装置上で本来作動するように設計された多くの最新コンピューターＯＳは保護媒体よりロードし、そして実行することはできない。
【０００５】
ＯＳが保護媒体より実行できないことは災難復旧（故障した又はウイルスに感染した主要なドライブを取り付け、そして又は故障したドライブを殺菌した後にコンピューターを起動する）の分野で重大な欠点である。これはマイクロソフトウインドウズＮＴ／２０００／ＸＰのような最新のＯＳにとって特に真実である。１９９０年代の初めマイクロソフト社はウインドウズＮＴと称する進んだＯＳを導入した。この新しいＯＳはＮＴＦＳと称するその新しいファイルシステムと共にパソコンのハードディスク上に作成されたファイルはＭＳ−ＤＯＳやウインドウズ３Ｘ／９Ｘ／ＭＥのようなＭＳ−ＤＯＳに由来するマイクロソフトウインドウズのそれらの版のようなレガシーＯＳのユーザーにより、もはやアクセスできないという新しいパラダイムへパソコンユーザーを導いた。更にウインドウズＮＴ自身（そしてその後継機）は保護媒体より実行することができず、復旧媒体が第二のハードドライブであった場合だけ災難復旧オプションが利用できたので、単にウインドウズＮＴのＯＳを起動可能な媒体へコピーするだけであった。
【０００６】
１９９０年代の中頃「ＥＩトリト」と称する起動可能なＣＤ−ＲＯＭ仕様の採用がもたらされ、同時にあのＣＤ−ＲＯＭ作成ハードウェアーの利用が増加するようになってきた。カリフォルニア州アービンのフェニックステクノロジーズとフロリダ州ボカレイトンのＩＢＭより発表され、ｈｔｔｐ：／／ｗｗｗ．ｐｈｏｅｎｉＸ．Ｃｏｍ／resourＣes/ｓＰＥＣｓＣＤ−ＲＯＭ.ｐＤｆで入手でき、そしてこの中に参考として組み込まれているＥＩトリト仕様はＣＤ−ＲＯＭ上の一つ以上の起動可能なハード又はフロッピーディスク「イメージ」ファイル及びコンピューターのＲＯＭＢＩ／ＯＳに付随した変更がＣＤ−ＲＯＭを起動可能なデバイスとしてサポートすることを可能にしている。ＥＩトリト仕様にてレガシーＯＳの要素を利用して（より新しいＯＳとは異なるが）保護媒体より実行することができる起動可能な災難復旧ＣＤ−ＲＯＭディスクを作成することが可能となった。このように取り外し可能な読み取り専用媒体より起動できるレガシーＯＳ下で実行する災難復旧の解決法が開発できただけである。
【０００７】
災難復旧ソフトウェアー開発者はマイクロソフトに保護媒体より実行できる非レガシーＯＳ版を提供するよう圧力をかけ続けた。２００２年の初め、マイクロソフトはＣＤ−ＲＯＭディスクより起動し実行するよう設計された限られた機能性を持つ非レガシーＯＳウインドウズＰＥを発表した。限られた機能性に加えて、又ウインドウズＰＥはＯＳを含むどの起動可能なＣＤ−ＲＯＭの製作者に対しても、付加的な特許料が伴う。ウインドウズＰＥは非レガシーＯＳを実行させるコンピューターシステム上の災難復旧に解決法を提供する一方、いくつかの点で不完全である。ウインドウズＰＥは完全な非レガシーＯＳに比べ機能性が限定される。ハ−ドウエア−サポトが限定され、ＣＤ−ＲＯＭデバイス上の使用しか提供されない。ウインドウズＰＥは実行中の既存アプリケーションに対してサポートが限定され、実行中のアプリケーションに対し書き込み可能なフリーディスクスペースを備えていない。最後にウインドウズＰＥの災難復旧ＣＤ−ＲＯＭはユーザー専用の設定情報を含まない。
【０００８】
保護媒体より起動し、実行できる限定されたＯＳによってさえもフリーディスクスペースへの書き込みができないことは問題をはらむ。例えばひどいウイルス感染に続いて、ユーザーは災難復旧ディスクよりコンピューターを起動し、そしてあるウイルス対策プログラムをダウンロ−ドし、実行するためにインターネットにアクセスしたいかも知れない。これは書き込み可能なフリーディスクスペースをサポートしないＯＳ下では不可能である。
【発明の開示】
【０００９】
この発明はコンピューターのＯＳを保護媒体より起動し、かつ実行すように変更する方法に関係する。この方法はハードドライブイメージファイルを作成し、そして完全に設定されかつ作動可能なＯＳからハードドライブイメージファイルへファイルと設定情報をコピーすることよりなる。本方法は更に書き込みディスクセクターデーターベースドライバーをハードドライブイメージファイルへコピーすることよりなり、そこでは書き込みディスクセクターデーターベースドライバーは予め決められた最大サイズの書き込みディスクセクターデーターベースを作成し、保存するように作動している。読み取り専用保護ドライバーは更にハードドライブイメージファイルへコピーされ、ここで読み取り専用ドライバーは書き込み、消去、又は読み込み専用ファイルのファイルアクセス属性変更の要求を落とすように作動している。又ファイルアクセス要求出力先変更ドライバーは読み取り書き込みファイル又はフリースペースへ向けられた書き込み要求、及び先に書き込まれたファイルへ向けられた読み取り要求を書き込みディスクセクターデーターベースへ出力先を変更するように作動しているハードドライブイメージファイルへコピーされるかもしれない。ハードドライブイメージファイル上のファイルと設定情報はＯＳが起動の間に書き込みディスクセクターデーターベースドライバー、読み取り専用保護ドライバー、及びファイルアクセス要求出力先変更ドライバーをロードするように変更される。次にハードドライバーイメージファイルは保護媒体上に配置される。
【発明の詳細】
【００１０】
この発明は最新のコンピューター基本ソフト（ＯＳ）を保護媒体より起動し、実行するように変更することに関係する。変更されたＯＳは読み取り書き込みディスクドライブをエミュレートすることにより保護された、又は読み取り専用の媒体より起動し実行する。ここで使われるように「保護媒体」という言葉はこの発明のハードディスクエミュレーション時に読取専用特性を有する、又は実行するコンピューター読み取り可能データー記憶媒体に言及する。ＲＯＭ、ＰＲＯＭＥＥＰＲＯＭ、そして類似の読み取り専用半導体メモリ−がそうであるように、伝統的なＣＤ−ＲＯＭ及びＤＶＤ−ＲＯＭディスクは保護媒体の例である。またこの言葉はＣＤ−Ｒ及びＣＤ−ＲＷ媒体にも適用され、（ＤVＤ＋Ｒ、ＤＶＤ＋ＲＷそして他のあらゆる寸法、容量又は形式の光記憶媒体は勿論のこと）これらは一回以上書き込みができるが、この様な媒体のセッションが閉鎖されると読み取り専用媒体の特性を有する。又保護媒体はこの発明によるディスクエミュレーション時に「書込み保護」特性の使用により読み取り専用となる磁気記憶媒体を含む。この言葉は広く解釈されるべきである。
【００１１】
コンピューターシステムは色々なデーター記憶装置又はドライブよりデーターをアクセスし、そしてそれらにデーターを記憶する。最新のＯＳは図１に描写するように記憶装置に対し、層状ヒエラルキ−のサポートを備え、そしてそれにアクセスする。色々な階層のデバイス及びファイルシステムドライバーは一般にメモリ−へロードされ、そしてシステム初期化又は起動処理の間に初期化される。層状の取り組みはＯＳ及びＯＳ環境内で実行される他のプログラムが、下にあるファイルシステム又ハ−ドウエア−プロトコルの特別な知識がなくても下にある記憶媒体上に記憶されたファイルへのアクセスを可能にする。最新ＯＳにおける層状ドライバーモデルの使用はプログラムのポータビリティを高め、広い範囲のハードウェアー構成上でのプログラムの実行を可能にし、そして新しいハードウェアーを利用するために全てのアプリケーションを更新する必要なく新しい記憶技術の既存コンピューターへの組み込みを可能にする。ここでより充分に論じると、又層状ドライバーモデルは層状ヒエラルギーに適切なフィルターとドライバーを備えることにより物理又は仮想記憶装置の、又は記憶媒体上に配置されるファイルの見かけ上の特性を変更することを可能にする。
【００１２】
ここで使用される「ファイルシステムフィルター」という言葉はフィルター、デバイスドライバー、又は図１、２、４、及び５に描写されるような層状ヒエラルキー内のどこかにある他のソフトウェアーモジュールに言及する。下位レベル、即ちハードウェアーデバイスの次にあるこの様なフィルターのいくつかは、全ての特別なファイルシステムより独立し、そしてブロックＩ／Ｏレベル上で作動することに注意すべきである。これはこの発明のエミュレートされた読み取り書き込みディスクドライブが、システムのサポートする特別なファイルシステムより独立して色々なシステム上で実行されることを可能にする。このような下位レベルのフィルターはここでは一貫性を保つため「ファイルシステムフィルター」と呼ぶことにする。この言葉は包括的に解釈される必要があり、そしてある特別なファイルシステムのみの中、又はそれを意識して作動するフィルターに限定されない。同様にこのようなプログラムを記憶するファイルは勿論のこと、ファイルシステムフィルターを実行するプログラムは関連するファイルシステムフィルターが実際に作動する層状ヒエラルキー内の場所に無関係にファイルシステムフィルタードライバーと呼ぶことにする。
【００１３】
図１は記憶装置（すなわちＣ：又はＤ：ドライブ）のＯＳ一覧を対応する物理ドライブデバイスへ変換するシステム要素及びデバイスドライバーの機能的ヒエラルキーを描写する。ＯＳはアプリケーションプログラムによる使用のため、ハードドライブＣ：１０２及びＣＤ−ＲＯＭドライブＤ：１０４のような記憶装置への標準インターフェースを備える。フロッピードライブ、テープユニットなどのような付加的なドライブインターフェースは示されていないし、またこの説明でのＣＤ−ＲＯＭドライブの使用は保護媒体ドライブの代表であり限定していない。ＯＳ標準ドライブインターフェース１０２、１０４はＯＳ環境内で実行されるプログラムが下にある媒体上のファイルへアクセスすることを可能にする。ディスクファイルシステムドライバー１０６及びＣＤ−ＲＯＭファイルシステムドライバー１０８はそれぞれの下にある媒体上のそれぞれのファイルシステム内で個々のファイルへアクセスするサービスを備える。パーティションマネージャー１１０はハードディスク上に存在する多くのパーティシヨンの各々の範囲内でデーターへのアクセスを提供する。ディスククラスドライバー１１２及びＣＤ−ＲＯＭクラスドライバー１１４は下にあるデバイスに固有のアクセス特性手段を備える。ＳＣＳＩポートドライバー１１６はＩ／Ｏ要求を下にあるミニポートドライバー１１８及び１２０により理解できる標準フォ−マットに変換する。ミニポ−トドライバ−１１８、１２０は物理デバイス１２２、１２４が取り付けられる制御装置を理解しそしてＳＣＳＩポートドライバー１１６よりのＩ／Ｏ要求を処理する。最後に物理ハードディスクドライブデバイス１２２及びＣＤ−ＲＯＭドライブデバイス１２４は夫々不揮発性磁気又は光データー記憶媒体よりデーターを読み取る。（ハードディスクドライブ１２２の場合はデーターをそれに記憶する）
【００１４】
図２はファイル属性が保存されるエミュレートされた読み取り書き込みハードディスクドライブ１２５を機能的なブロック図形式で描写する。エミュレートされた読み取り書き込みハードディスクドライブ１２５はこの発明者により米国特許申請連番No．ＸＸＸに詳細に記述され、その内容はそのままの形でこの中に参考として組み込まれている。この発明による変更されたＯＳ１２６の観点から、エミュレートされた読み取り書き込みディスクドライブ１２５は物理的ハードディスクドライブと区別がつかない。（図１に描写されるように物理ハードディスクドライブ１２２及び中間の層状ファイルシステム及びデバイスドライバーにより実行される論理ディスクドライブ１０２のような）上位ファイルシステムフィルター１３６及び下位ファイルシステムフィルター１２８は共に以下のより詳細な記述のように、エミュレートされた読み取り書き込みハードディスクドライブ１２５に関連する、ファイルシステム及びデバイスドライバー（表示はない）の層状ヒエラルキーの中に挿入される。下位ファイルシステムフィルタ−１２８はエミュレートされたドライブ１２５へ向けられた読み取り書き込み要求を傍受する。最初の読み取り要求、即ち先に書き込まれていないファイル又はデーターに向けられた読み取り要求はＣＤ−ＲＯＭのような保護媒体上に存在するハードディスクイメージファイル１３０より供給される。エミュレートされたハードディスクドライブ１２５へ向けられた書き込み要求は下位ファイルシステムフィルター１２８により傍受され、そして書き込みディスクセクターデーターベース１３２へ向けられる。書き込みディスクセクターデーターベース１３２はシステムメモリー又は代わりにすべての読み取り書き込み記憶装置上に存在し、ハードディスクイメージファイル１３０上の全ての読み取り書き込みファイル及びフリ−スペ−スに相当する多くの書き込みデーターを記憶することができる。下位ファイルシステム１２８は次の読み取り要求、即ち書き込みディスクセクターデーターベース１３２よりエミュレートされたハードディスクドライブ１２５へ先に書き込まれたファイル又はデーターへ読み取り要求を供給する。
【００１５】
上位ファイルシステムフィルター１３６はハードディスクイメージファイル１３０上のファイル及びディレクトリーに関連するアクセス属性をモニタ−し実行する。例えば読み取り専用ファイル属性を読み取り書き込み（これはファイルが続いて消去されることを可能にし、エミュレ−トされたハ−ドディスクドライブ１２５上の利用可能なフリ−スペ−ス領域を見かけ上増加させる。）へ変更するためのＯＳ１２６よりの要求は傍受され、そして作動は回避される。このようにして書き込みディスクセクターデーターベース１３２の全体の（究極の）サイズが抑制される。
【００１６】
書き込みディスクセクターデーターベース１３２はいかなる利用可能な読み取り書き込みコンピューターデーター記憶装置上でも保存することができ、そしてシステムメモリーで論理構造で保存されることが望ましい。書き込みディスクセクターデーターベース１３２は必要な又は所要のいかなる論理構造で構成してもよいが、その各々がハードディスクイメージファイル１３０の一つのセクターを記憶するに充分な容量を有するデーター記憶場所又は「ビン」の連続として実行されることが望ましい。書き込みディスクセクターデーターベース１３２の最大サイズ（即ちハードディスクイメージファイル１３０上の全ての読み取り書き込みファイル及びフリースペース）は分かっているか、又は計算できるので、全ての書き込みディスクセクターデーターベース１３２は予め（例えばシステム初期化の間のように）割り当てることができる。代わって書き込みディスクセクターデーターベース１３２はメモリ−又は他の記憶装置にデーターが書き込まれる個所だけ割り当てるように動的に構築してよい。
【００１７】
書き込みディスクセクターデーターベース１３２はいくつかの点でディスクキャッシュメモリーに似ている。ディスクキャッシュは技術ではよく知られている。ディスクキャッシュは知覚されるＩ／Ｏ性能を改善し、少し前にアクセスしたデーターを高速階層のメモリ−レベルに保存することによりディスクアクセスの平均待ち時間を減少させる。ディスクキャッシュは読み取り書き込み要求の両方に応答するデーターで占められる。ディスクキャッシュは一般に一定のサイズで、利用可能な記憶場所又はビンが全て利用されると、より古い又はより新しくなく利用されたビンはより新しいデーターを記憶するために再割り当てされる。再割り当てされたビンが書き込みデーターを含む場合は、下にある記憶媒体はキャッシュメモリーに書き込まれた変更データーを反映するために時々更新されなければならない。
【００１８】
この発明の書き込みディスクセクターベース１３２は多くの重要な点でディスクキャッシュと異なる。書き込みディスクセクターデーターベース１３２は読み取り要求に応答するデ−タ−は入っていない。むしろそれは書き込みデ−タ−のみ、即ちエミュレ−トされた読み取り書き込みハードディスクドライブ１２５に向けられた書き込み要求に関連するデーターを含む（先に書き込まれたデーターに向けられた読み取り要求は、書き込みディスクセクターデーターベース１３２より供給されるが、しかしデーターベース１３２は読み取り要求に応答するデーターは決して入っていない）。書き込みディスクセクターデーターベース１３２の究極のサイズは分かっているので、ハードドライブイメージファイル１３０の特定のディスクセクターに関連する記憶場所又はビンは再割り当てを行わない方が望ましい。即ちハードディスクイメージファイル１３０上の読み取り書き込みファイル又はフリースペースが一旦書き込まれると、そのセクターに割り当てられた、書き込みディスクセクターデーターベース１３２のビンは続いてイメージファイル１３０の別のセクターへ割り当てられない。最後に書き込みディスクセクターデーターベース１３２は下にあるいかなる大量記憶装置とも書き込みデーターの一貫性を維持できない。言い換えると書き込みディスクセクターデーターベース１３２は本発明のエミュレートされた読み取り書き込みハードディスクドライブ１２５へ書き込まれたデーターの最終目的地である。
【００１９】
図３は本発明により最新のＯＳを保護媒体より起動し、実行するように変更する一つの方法を描写する。方法はパソコンのハードディスクドライブ２０４（例えばＣ：ドライブのような）上に存在するような完全に設定され作動可能な最新ＯＳ２０２より実行可能なファイルと設定情報をコピーし、論理記憶場所及び他の詳細の変更を反映させるため、ファイルと情報を変更し（ステップ２０６）、そして保護媒体２００上のハードディスクイメージファイル１３０の中に変更されたＯＳファイル１２６を配置する。上で述べたようにファイルアクセス属性を実行するための上位ファイルシステムフィルタードライバー１３６及びＩ／Ｏ要求を出力先変更するための下位ファイルシステムフィルタードライバー１２８が作成され（ステップ２０８）、そして保護媒体２００上のハードディスクイメージファイル１３０に配置される。更にステップ２０８において仮想ハードディスクドライバー１４４が作成され、そして保護媒体２００上のハードディスクイメージファイル１３０に配置される。以下により詳細に記述されるように仮想ハードディスクドライバー１４４は物理ディスクドライブをエミュレートするのに必要なＩ／Ｏ応答（部分的には書き込みディスクセクターデーターベース１３２により）を提供する。最後に起動セクター２１２がステップ２１０で作成され、そして保護媒体２００上に配置される。起動セクター２１２はそのＲＯＭBOISがＥＩトリト仕様をサポートするコンピューターが保護媒体２００より起動処理を始めることを可能にする。
【００２０】
以下でより十分に論ずるように、変更されたＯＳ１２６及び関連するフィルターとドライバー１３６，１２８及び１４４は保護媒体２００上に配置されるに先立ち、ステップ２１４でテストされる。例えばこのようなテストはハードドライブ２０４上の一つ以上の特別なディレクトリーへ変更されたＯＳ１２６をコピ−し、ドライブ２０４上の起動情報を変更し、コンピューターを再起動し、変更されたＯＳ１２６をテストし、コンピューターの最初の起動情報を復活させ、そして保護媒体へファイルをコピーするに先立ち、完全に設定され、そして作動可能なＯＳ２０２を使用して再度再起動することよりなる。
【００２１】
図４は先に記述したファイルシステムドライバー及びデバイスの層状ヒエラルキー内でエミュレートされた読み取り書き込みハードディスクドライブ１２５の一つの実行を描写する。この実施例で仮想ミニポートドライバー１４４が付加される。仮想ミニポートドライバー１４４は、ＳＣＳＩポートドライバー１１６によりそれに向けられるセクター読み取り及び書き込み操作をシミュレートすることによりハードディスクデバイスの基本機能をエミュレートする。又ファイルシステムヒエラルキーに下位ファイルシステムフィルター１２８が付加される。下位フィルター１２８は仮想ミニポートドライバー１４４に向けられるファイルシステム要求を傍受し、そして読み取り書き込みハードドライブエミュレーションを提供する。下位フィルター１２８は先に記述したように書き込みディスクセクターデーターベース１３２への書き込み操作の出力先を変更することによりこれを達成する。下位フィルター１２８は更にＣＤ−ＲＯＭドライブへの最初の（即ち先に書き込んでいない）読み取り要求の出力先を変更し、そこでは読み取りデーターは保護媒体上に配置されたハードドライブイメージファイル１３０より取り出す。
【００２２】
エミュレートされた読み取り書き込みハードディスクドライブ１２５に関連するＯＳインターフェース１３４のような他のファイルシステム要素、ファイルシステムドライバー１３８、パーティションマネージャー１４０、そしてディスククラスドライバー１４２は、技術上はよく知られ、かつ図１に関して上で述べたように物理ハードドライブのそれらにちょうど相似の方法で機能する。
【００２３】
エミュレートされた読み取り書き込みハードディスクドライブ１２５は更に上位ファイルシステムフィルター１３６を含む。上位フィルター１３６はエミュレートされたドライブ１２５上で、ファイルシステム属性を実行する。即ち上位ファイルシステム１３６はエミュレートされた読み取り書き込みディスクドライブ１２５に向けられる全ての読み取り及び書き込み要求を傍受し、そしてエミュレートされたドライブ１２５上で、前から存在する読み取り専用ファイルへの変更を阻止する。
【００２４】
図４に関して見られるようにエミュレートされた読み取り書き込みハードディスクドライブ１２５への、又はよりのデーターの論理構造及び作動フローはドライブ１２２のような物理ハードディスクドライブに関係するそれらより独立である。このように変更されたＯＳ１２６は物理ハードディスクドライブ１２２のない又は存在するハードディスクドライブ１２２が被害を受けまたは他の理由で利用できないコンピューターにおいてエミュレートされた読み取り書き込みハードディスクドライブ１２５より起動し、かつ完全に実行することができる。このようにこの発明の変更されたＯＳ１２６は、物理ハードディスクドライブクラッシュ、ひどいいウイルス感染などからの復旧のような災難復旧時の特別なユーティリティーを見出す。変更されたＯＳ１２６は完全に設定され、そして作動可能なＯＳ２０２より作成されるので、ハードウェアー、アクセサリー、ネットワークインターフェース、サブスクリプションサービスなどの個々の配置によって、個々のコンピューターにはそれは「カスタマイズ」である。更に変更されたＯＳ１２６は完全に設定され、そして作動可能なＯＳ２０２の単なる「バックアップ」コピーよりなるので、完全に設定され、そして作動可能なＯＳ２０２の代わりに変更されたＯＳ１２６を利用するためには別の許可は必要ない。
【００２５】
図５はこの発明のエミュレートされた読み取り書き込みハードディスクドライブ１２５の代わりの実施例を描写する。この実施例で仮想モノリシックポートドライバー１４６はＳＣＳＩポートドライバー１１６（エミュレートされた読み取り書き込みハードディスクドライブ１２５の連鎖の中の）及び仮想ミニポートドライバー１４４の両方と置き換わる。仮想モノリシックポートドライバー１４６はＳＣＳＩポートドライバー１１６及び仮想ミニポートドライバー１４４の両方の機能性を備える。
【００２６】
図６は下位ファイルシステムフィルター１２８の作動をフロー図により説明する。ＣＤ−ＲＯＭクラスドライバー１１４よりＣＤ−ＲＯＭドライブに向けられるファイルＩ／Ｏ要求は、下位ファイルシステムフィルター１２８により傍受される。ハードドライブイメージファイル１３０がエミュレートされた読み取り書き込みハードディスクドライブ１２５を実行するために使用されている時、ステップ１５０で決められるように、ファイルＩ／Ｏ要求はステップ１５６でＣＤ−ＲＯＭデバイスへ渡される。エミュレートされた読み取り書き込みハードディスクドライブ１２５が使用可能な場合、ＣＤ−ＲＯＭドライブ１２４に向けられる全てのＩ／Ｏ要求はＩ／Ｏ要求が媒体関係かどうかを決定するためにステップ１５２で検査される。そうであれば要求はステップ１５４で「媒体でない」というエラーコードを付けて落とされる。もしＩ／Ｏ要求が媒体関係でない場合、それはステップ１５６でＣＤ−ＲＯＭドライブ１２４へ渡される。
【００２７】
更に下位ファイルシステムフィルター１２８は、それらがディスククラスドライバー１４２より流れるので、エミュレートされた読み取り書き込みディスクドライブ１２５へ向けられる要求を傍受する。ハードドライブエミュレーションが使用可能かどうかが、ステップ１５８で決定され、そしてそうでなければ全てのＩ／Ｏ要求はステップ１６８で下位ディスクドライバー階層へ向けられる。これらのＩ／Ｏ要求は仮想ミニポートドライバー１４４又は仮想モノリシックポートドライバー１４６により最終的に処理される。もしエミュレートされた読み取り書き込みハードディスクドライブ１２５が使用可能な場合、Ｉ／Ｏ要求はそれが媒体関係かどうかを決定するために、ステップ１６０で検査される。Ｉ／Ｏ要求が媒体関係でない場合、それはステップ１６８において下位ディスクドライバ−階層へ渡される。もしＩ／Ｏ要求が媒体関係の場合、それは書き込みディスクセクターデーターベース１３２より提供できるかを決定するために、そこで検査される。即ちＩ／Ｏ要求が書き込み操作か、又は先に書き込まれたデーターに向けられる読み取り操作かの決定がなされる。もしそうであればＩ／Ｏ要求はステップ１６４で書き込みディスクセクターデーターベース１３２より満たされる。もしそうでなければ、即ちもしＩ／Ｏ要求が最初の読み取り要求（即ち先に書き込まれていないデーターへ向けられた読み取り要求）であればそこで読み取り要求はステップ１６６にてハードディスクイメージファイル１３０の適切なセクターへ書込まれ、そして読み取り要求はステップ１５６でＣＤ−ＲＯＭデバイスへ送られる。
【００２８】
図７は上位ファイルシステムフィルター１３６の作動をフロー図により描写する。上位ファイルシステムフィルター１３６はＯＳインターフェース１３４によりエミュレートされたドライブ１２５に向けられるＩ／Ｏ要求を傍受することによりエミュレートされた読み取り書き込みハードディスクドライブ１２５上の前から存在するファイルのファイル属性を実行する。上位ファイルシステムフィルター１３６は、それがエミュレートされたドライブ１２５上に前から存在するファイルの一つのためのものか（即ちファイルがハードディスクイメージファイル１３０上に存在するかどうか）、そしてファイルは保護される必要があるかどうかをステップ１７０で決定するためにＩ／Ｏ要求を最初に検査する。要求されたファイルが保護される必要があるかどうかは以下のように色々な方法でステップ１７０にて決定される。
充分資格のあるファイル名の先に作成されたリストの使用。
ファイル属性の使用。
ファイル日時スタンプの使用
ディレクトリーヒエラルキー内のファイル位置の使用
又はこれらの方法のあらゆる組み合わせ
もし傍受されたＩ／Ｏ要求が保護ファイルと確認されてないファイルに向けられれば、要求はステップ１８０で下位レベルファイルシステムドライバーへ渡される。もしＩ／Ｏ要求が保護を必要とするものと確認されるファイルへ向けられる場合は、要求はそれがファイルのアクセス属性の変更要求かどうかを決定するため、ステップ１７２にて更に検査される。もし要求が保護ファイルの読み取り専用属性の変更であれば、ファイルに関連する読み取り専用特性を保存するため、要求パケットは読み取り専用属性をONにするようにステップ１７４にて変更される。変更されたＩ／Ｏ要求は次にステップ１８０にて下位ファイルシステムドライバーへ送られる。Ｉ／Ｏ要求が保護ファイルのアクセス属性を変更しないという決定がステップ１７２にてなされれば、要求が読み取り専用媒体上のファイルに有効かどうかを決定するためにステップ１７６にて更に検査される。もし要求が有効であれば、それはステップ１８０にて下位レベルファイルシステムドライバーへ送られる。もしＩ／Ｏ要求が読み取り専用媒体上のファイルに有効でないと決定されれば（例えばファイル消去のような要求）、要求はステップ１７８にて書き込み保護媒体への書き込みの試みを示すエラーコードを付けて落とされる。
【００２９】
図８はそこからこの発明の変更されたＯＳ１２６が起動し、実行する（参照番号は図３及び図８に関係する）ことができる起動可能な保護媒体２００を生成させるように、最新ＯＳ２０２（例えばウインドウズ２０００又はウインドウズＸＰ）を変更する方法を描写する。最初にコンピューターシステムハードドライブ２０４（ステップ２２０）上の新しいサブディレクトリーヒエラルキーにある元のＯＳファイルの各々を複製することによりもとの実行可能なＯＳ２０２及び設定ファイルのコピーを作成する。例えば「Ｃ：＼ウインドウズ」又は「Ｃ：＼プログラムファイルズ」に配置される現在のＯＳファイルは夫々「Ｃ：＼レスキュー＼ウインドウズ」及び「Ｃ：＼レスキュー＼プログラムファイルズ」へコピーされる。ＣＤ−ＲＯＭディスクよりの起動をサポートするために使用される変更されたＯＳ１２６ファイル及びデバイスドライバー１３６、１２８、１２８、１４４の起動能力をテストするためのテストスクリプトは次に新しいＯＳディレクトリーヒエラルキー（ステップ２２２）へコピーされる。新しいディレクトリーヒエラルキーに配置されるＯＳ設定ファイルは複製ファイルがコピー（ステップ２２４）された新しいディレクトリーヒエラルキーを反映させるため、及び変更されたＯＳ１２６（ステップ２２６）の起動時に付加デバイスドライバー及びテストスクリプトがロ−ドされるようにするために更新される。起動デバイス（Ｃ：ドライブのような）上のＢＯＯＴ．ＩＮＩファイルのバックアップコピ−が作成され元のＢＯＯＴ．ＩＮＩファイルは新しいディレクトリーヒエラルキーにある変更されたＯＳ１２６が起動（ステップ２２８）できる様にするため更新される。コンピューターは新しいディレクトリーヒエラルキー（ステップ２３０）にある変更されたＯＳ１２６ファイルより再スタートし実行できるように再起動される。変更されたＯＳ１２６がスタートする場合、それは変更されたＯＳ１２６及びハードドライブエミュレーションドライバー１３６，１２８，１２８，１４４（ステップ２３２）の正しい作動を確認するためにテストスクリプトを実行する。テストが完了するとテストスクリプトは元のＢＯＯＴ．ＩＮＩファイルを復活させ、そして元のＯＳ２０２（ステップ２３４）下で作動を復活させるようにコンピューターを再起動させる。複製されたＯＳディレクトリーの設定ファイルは次にテストスクリプト（ステップ２３６）を除去又は不能にするために更新される。複製ＯＳディレクトリーの設定ファイルはハードドライブイメージファイル（ステップ２３８）より変更されたＯＳ１２６の起動を可能にするために更新される。次に複製ＯＳディレクトリ−ヒエラルキ−はハ−ドドライブイメ−ジファイル（ステップ２４０）を作成するために使用される。最後にハードドライブイメージファイルはＥＩトリト可起動ＣＤ−ＲＯＭディスク（ステップ２４２）のような保護媒体２００上に配置される。変更されたＯＳ１２６のテストは望まれるが、この発明には不可欠なものではなく、そしてこの技術に熟練した人はすぐにこの発明の利点はテスト手順を省略することにより得られることに注意すべきである。（信頼性は低下するが）
【００３０】
図９はこの発明によりコンピューターシステムがその上に変更されたＯＳ１２６を使用して保護媒体２００より起動しそして実行する方法を描写する。ＯＳ起動プロセスはＲＯＭＢＩ／ＯＳのPＯＳT（電源オン自己テスト）ルーチンが保護媒体２００上のブ−トストラップコードを含む起動セクタ−をメモリ−へ読み込む時に始まり（ステップ２５０）次にＣＰＵの制御をブ−トストラップコ−ドへ転送する。ブ−トストラップコ−ドは起動デバイス（即ち保護媒体２００）より設定情報を読み取る。特にもしＲＯＭＢＩ／ＯＳがＥＩトリト仕様をサポートするならば、それは保護媒体２００上に配置されるハードドライブイメージファイル１３０を認識し、そしてハードドライブイメージファイル１３０を使用して読み取り専用のハードドライブ（表示なし）をエミュレートする。ＲＯＭＢＩ／ＯＳはＲＯＭＢＩ／ＯＳインターラプト０Ｘ１３ハードドライブインターフェースを通してエミュレートされた読み取り専用ハードドライブへアクセスを提供する。ＲＯＭＢＩ／ＯＳはエミュレートされた読み取り専用ハードドライブ上の起動記録よりブートストラップコードを読み取るため、インターラプト０Ｘ１３ハードドライブインターフェースを使用し、そしてＣＰＵの制御をブートストラップコードへ転送する。
【００３１】
起動記録の中のブートストラップコードは次に変更されたＯＳ１２６ブートストラップモジュールＮＴＬＤＲをメモリーへロードするため、インターラプト０Ｘ１３ハードドライブインターフェースを使用し、次にＣＰＵ制御をＮＴＬＤＲ（ステップ２５２）へ渡す。ブートストラップモジュールＮＴＬＤＲは次に基本的なシステム設定及び起動ドライブ情報を含むメモリ−内起動ロ−ダ−構造を構築する。次にＮＴＬＤＲはＲＯＭＢＩ／ＯＳインターラプト０Ｘ１３ハードドライブインターフェースを使用してエミュレートされた読み取り専用ハードドライブよりカーネルモジュールをロードし、そしてＣＰＵ制御及びメモリー内起動ロ−ダ−構造へのポインタ−をカ−ネルモジュール（ステップ２５４）へ渡す。
【００３２】
普通カーネルモジュールは図２に示すように下にあるファイルシステム及び記憶装置のための層状サポートを備えるような方法でデバイス及びファイルシステム特有のドライバーをロードするためＲＯＭＢＩ／ＯＳインタ−ラプト０Ｘ１３インターフェースを使用する。階層を形成するデバイスドライバーをメモリーへロードした後、カーネルはＲＯＭＢＩ／ＯＳインターフェースを使用してエミュレートされた読み取り専用ハードドライブへアクセスすることはもはやできない。しかしこの発明によると、保護媒体２００より変更されたＯＳ１２６を起動する場合、カーネル又はエミュレートされた読み取り書き込みハードドライブ１２５が変更されたＯＳ１２６によりシステムドライブとして使用されるようにサポートするために付加的なドライバー１３６、１２８、１２８、１４４をロードする。全てのデバイスドライバー階層をメモリー（ステップ２５６）へロードした後、カーネルはロードされたデバイスドライバーの各々が最下位レベルのデバイスドライバーよりスタートするような初期化ルーチンをコールする。初期化ステップの間に、仮想ＳＣＳＩミニポートドライバー１４４（図３）又は仮想モノリシックポートドライバ１４６（図４）は物理ハードディスクを見つけたことを伝え、次にエミュレートされた読み取り書き込みハードドライブ１２５（ステップ２５８）への変更されたＯＳ１２６により作成される要求を満たすため、物理ハードドライブの機能をエミュレートする。最下位レベルのドライバーを初期化の後、カーネルは下位ファイルシステムフィルター１２８（ステップ２６０）を初期化する。下位ファイルシステムフィルター１２８は保護媒体ドライブ１２４及び仮想ポートドライバー１４４、１４６（ステップ２６０）の両方のドライバー連鎖へ加わり、そして書き込みディスクセクターデーターベース１３２のために書き込み可能なRAM（又は他の書き込み可能なシステム装置）へスペースを割り当て、次にエミュレートされた読み取り書き込みハードドライブ１２５へ行くＩ／Ｏ書き込み及び先に書き込まれた読み取り要求の傍受を開始する。上述（ステップ２６４）のように保護媒体２００上のハードディスクイメージファイル１３０よりのこれらの傍受された要求は、書き込みディスクセクターデーターベース１３２と一緒に処理される。下位ファイルシステム初期化しそしてエミュレートされた読み取り書き込みハードドライブ１２５へ行く要求の処理を開始する準備が出来た時、それはＮＴＬＤＲにより作成された起動ローダー構造を配置し、そしてエミュレートされた読み取り書き込みハードドライブ１２５をシステムドライブにするために構造（ステップ２６６）の中に配置される情報を更新する。次にＯＳカーネルはファイルシステムドライバー階層を初期化し、ファイルシステムドライバーはエミュレートされた読み取り書き込みハードドライブ（ステップ２６８）上に配置されるファイルシステムへ加わる。全てのファイルシステムドライバーが初期化されると、変更されたＯＳ１２６カーネルは上述のように前から存在する読み取り専用ファイルを保護する上位ファイルシステムフィルター１３６を含むファイルシステムフィルタードライバー（ステップ２７０）を初期化する。エミュレートされた読み取り書き込みハードドライブ１２５上に搭載されるファイルシステムに取り付けられる場合、上位ファイルシステムフィルター１３６は、エミュレートされた読み取り書き込みハードドライブ１２５上の前から存在する読み取り専用ファイルが読み取り専用媒体上のファイル特性を有する一方、エミュレートされた読み取り書き込みハードドライブ１２５上の読み取り書き込みファイル及びフリースペースは読み取り書き込み媒体（ステップ２７２）に関連する特性を有するようにファイルアクセス要求の処理を開始する。次に変更されたＯＳ１２６カーネルは、システムドライブ（ステップ２７４）を配置するため、ステップ２５４で作成されステップ２６６で修正された起動ロ−ダ−情報を使用する。最後にカーネルは起動処理を完了させ、次にエミュレートされた読み取り書き込みハードドライブ１２５よりの実行を継続し、物理読み取り書き込みハードドライブデバイス（ステップ２７６）上で実行しているかのような作動をする。コンピューターは次に災難復旧操作のようなものに対し、ユーザーに準備しそして利用可能としそしてコンピューター特有のハードウェアー、アクセサリー、ネットワーク接続などに対し完全な設定が行われる。
【００３３】
この発明はその特別な特性、側面、実施例に関してここで述べてきたが、多くの変更、修正、そして他の実施例はこの発明の広い範囲内で可能であり、従って全ての変更、修正、そして実施例は本発明の範囲内にあると見なすべきである。従ってこの実施例は全ての側面において、実施例であり限定するものではないと解釈されるべきであり、付属の請求項が意味し、相当する範囲内にある全ての変更はこの中に包含されることを意味する。
【図面の簡単な説明】
【００３４】
【図１】従来技術のファイルシステム階層フィルタ−及びドライバ−の図
【図２】エミュレ−トされた読み取り書き込みハ−ドディスクドライブの機能ブロック図
【図３】保護媒体より起動し実行が可能な変更された基本ソフとを作成する一つの過            程の機能図
【図４】エミュレ−トされた読み取り書き込みハ−ドディスクドライブの一実施例を            実行するコンピュ−タ−ファイルシステム図
【図５】エミュレ−トされた読み取り書き込みハ−ドディスクドライブの別の実施例            によるコンピュ−タ−ファイルシステム図
【図６】下位ファイルシステムフィルタ−のフロ−図の説明
【図７】上位ファイルシステムフィルタ−のフロ−図の説明
【図８】コンピュ−タ−が起動し実行する保護媒体を作成するフロ−図
【図９】この発明による保護媒体よりの起動処理のフロ−図
【符号の説明】
【００３５】
図１（従来後術）
１０２：ハ−ドドライブＣ：
１０４：ＣＤ−ＲＯＭドライブＤ：
１０６：ハ−ドディスクファイルシステム,ＦＡＴ,ＮＴＦＳ等
１０８：ＣＤファイルシステム
１１０：パ−ティションマネ−ジャ−
１１２：ディスククラスドライバ−
１１４：ＣＤ−ＲＯＭクラスドライバ−
１１６：ＳＣＳＩポ−トドライバ−
１１８：ＩＤＥ又はＳＣＳＩミニポ−トドライバ−
１２０：ＩＤＥ又はＳＣＳＩミニポ−トドライバ−
１２２：物理ハ−ドディスクデバイス
１２４：物理ＣＤ−ＲＯＭデバイス
図２
１２５：エミュレ−トされた読み取り書き込みハ−ドディスクドライブ
１２６：基本ソフト（ＯＳ）
１２８：下位ファイルシステムフィルタ−（Ｉ／Ｏ要求の出力先変更）
１３０：保護媒体上のハ−ドディスクイメ−ジファイル
１３２：書き込みディスクセクタ−デ−タ−ベ−ス
１３６：上位ファイルシステムフィルタ−（ファイルアクセス属性の実行）
ＲＥＡＤ ＤＡＴＡ：デ−タ−読み取り
WRITE ＤＡＴＡ：デ−タ−書き込み
UNＷＲＩＴＴＥＮ ＲＥＡＤ ＤＡＴＡ：未書き込みデ−タ−読み取り
ＰＲＥＶＩＯＵＳＬＹ ＷＲＩＴＴＥＮ ＲＥＡＤ ＤＡＴＡ：既書き込みデ−タ−読
み取り
図３
１２６：変更されたＯＳ実行ファイル及び設定情報
１２８：下位ファイルシステムフィルタ−ドライバ−（Ｉ／Ｏ要求の出力先変更）
１３６：上位ファイルシステムフィルタ−ドライバ−（ファイルアクセス属性の実
行）
１４４：仮想ハ−ドディスクドライバ−
２００：保護媒体
２０２：完全に設定され作動可能な基本ソフト
２０４：ハ−ドディスクドライブ
２０６：変更する
２０８：保護媒体より読み取り書き込みディスクドライブをエミュレ−トするドラ
イバ−を作成する
２１２：起動セクタ−
２１４：変更された基本ソフトのテスト
図４、図５
１０２：ハ−ドドライブＣ：
１０４：ＣＤ−ＲＯＭドライブＤ：
１０６：ハ−ドディスクファイルシステム,ＦＡＴ,ＮＴＦＳ等
１０８：ＣＤファイルシステム
１１０：パ−ティションマネ−ジャ−
１１２：ディスククラスドライバ−
１１４：ＣＤ−ＲＯＭクラスドライバ−
１１６：ＳＣＳＩポ−トドライバ−
１１８：ＩＤＥ又はＳＣＳＩミニポ−トドライバ−
１２０：ＩＤＥ又はＳＣＳＩミニポ−トドライバ−
１２２：物理ハ−ドディスクデバイス
１２４：物理ＣＤ−ＲＯＭデバイス
１２８：ディスクからＣＤへの出力先変更及び書き込みデ−タ−記憶装置のための
下位ファイルシステムフィルタ−
１３４：エミュレ−トされたハ−ドドライブＥ：
１３６：読み取り専用ファイルを保護する上位ファイルシステムフィルタ−
１３８：ハ−ドディスクファイルシステム,ＦＡＴ,ＮＴＦＳ等
１４０：パ−ティションマネ−ジャ−
１４２：ディスククラスドライバ−
１４４：仮想ミニポ−トドライバ−
１４６：仮想モノリシックポ−トドライバ−
図６
１１４：ＣＤ−ＲＯＭクラスドライバ−
１１６：ＳＣＳＩポ−トドライバ−
１２８：下位ファイルシステムフィルタ−
１４２：ディスククラスドライバ−
１５０：ＣＤ−ＲＯＭイメ−ジファイルが搭載されているか？
１５２：要求は媒体関係か？
１５４：非媒体エラ−の要求を落とす
１５６：ＣＤ−ＲＯＭデバイスへ要求を伝送する
１５８：イメ−ジは搭載されているか？
１６０：要求は媒体関係か？
１６２：これは書き込みディスクセクタ−デ−タ−ベ−スの中のセクタ−向け読み
取り又は書き込み要求か？
１６４：書き込みディスクセクタ−デ−タ−ベ−スから要求を満たす
１６６：ＣＤ−ＲＯＭ上のイメ−ジファイルよりのセクタ−向け書き込み要求
１６８：仮想ディスクデバイスへ要求を伝送する
図７
１３４：エミュレ−トされたハ−ドドライブＥ：
１３６：上位ファイルシステムフィルタ−
１３８：ハ−ドディスクファイルシステム,ＦＡＴ,ＮＴＦＳ等
１７０：ファイルは前から存在する読み取り専用ファイルか？
１７２：要求は媒体関係か？
１７４：新ファイル属性へ読み取り専用フラグを設定する
１７６：要求は読み取り専用媒体上のファイルに有効か？
１７８：書き込み保護エラ−の要求を落とす
１８０：要求をネイティブファイルシステムへ伝送する
図８
２２０：完全に設定されそして作動可能なＯＳファイルを新ハ−ドドライブディレ
クトリ−構造へコピ−する
２２２：上位及び下位ファイルシステムフィルタ−ドライバ−及び仮想ディスクド
ライバを含む起動テストスクリプト及び付加デバイスドライバ−を作成し, 
新ＯＳディレクトリ−ヒエラルキ−へコピ−する
２２４：新ディレクトリ−ヒエラルキ−を反映させるため複製設定ファイルを更新
する
２２６：テストスクリプト及び新デバイスドライバ−のロ−ドを可能にするため複
製設定ファイルを更新する
２２８：起動初期化のバックアップを作成し、次に新ディレクトリ−ヒエラルキ−
の変更されたＯＳの起動を可能にするため起動初期化を修正する
２３０：コンピュ−タ−を再起動させ、つまり新ディレクトリ−ヒエラルキ−の中
の変更されたＯＳを使用して再スタ−トし、そしてエミュレ−ションドラ
イバ−をロ−ドし、そしてテストスクリプトを実行する
２３２：テストスクリプトを実行し、そして変更されたＯＳの作動を確認し、元の
起動初期化ファイルを復活させ、そしてコンピュ−タ−を再起動する
２３４：元のＯＳを使用してコンピュ−タ−を再スタ−トする
２３６：複製設定ファイルのテストスクリプトを無効にする
２３８：変更されたＯＳがハ−ドドライブイメ−ジファイルより起動することを可
能にするように新設定ファイルを変更する
２４０：新ＯＳディレクトリ−構造よりのファイルを使用してハ−ドドライブイメ
−ジファイルを作成する
２４２：ハ−ドドライブイメ−ジファイルを使用してＥＩトリトＣＤ−ＲＯＭ起動
デバイスを作成する
図９
２５０：ＣＤ−ＲＯＭ上のハ−ドドライブイメ−ジファイルを使用してＲＯＭＢＩ
／ＯＳは読み取り専用ハ−ドドライブをエミュレ−トする。ＲＯＭＢＩ／
ＯＳはインタ−ラプト１３ｈを使用し読み取り専用ハ−ドドライブから起
動記録を読み取り、起動記録に制御を伝達する。
２５２：起動記録のコ−ドはＯＳブ−トストラップモジュ−ルＮＴＬＤＲをメモリ
−へロ−ドするためインタ−ラプト１３ｈを使用し、次に制御をＮＴＬＤ
Ｒへ渡す
２５４：ＮＴＬＤＲはメモリ−内起動ロ−ダ−構造を構築し、ＯＳカ−ネルをメモ
リ−へロ−ドし、次に制御をＯＳカ−ネルへ渡す
２５６：ＯＳカ−ネルは仮想ミニポ−トドライバ−及び下位ディスクフィルタ−ド
ライバ−を含む起動ドライバ−をメモリ−へロ−ドするためインタ−ラプ
ト１３ｈを使用し、そして仮想ミニポ−トドライバ−の初期化を開始する
２５８：仮想ミニポ−トドライバ−は、物理ハ−ドドライブの外見を作成する
２６０：ＯＳカ−ネルは下位ディスクフィルタ−ドライバ−の初期化を開始する
２６２：下位ファイルシステムフィルタ−はＣＤ−ＲＯＭデバイス及び仮想ミニポ
−トドライバ−により作成されたハ−ドドライブのドライバ−連鎖へ組み
込まれる
２６４：下位ファイルシステムフィルタ−はエミュレ−トされたハ−ドドライブイ
へ伝送されつつあるＩ／Ｏ要求の傍受を開始し、そしてＣＤ−ＲＯＭデバ
イス上のイメ−ジファイル及び先に割り当てられた書き込みディスクセク
タ−デ−タ−ベ−スを使用して要求を満たす
２６６：下位ファイルシステムフィルタ−はＮＴＬＤＲにより作成された起動ロ−
ダ−構造を配置し、そしてエミュレ−トされたドライブをＯＳシステムド
ライブにするために構造を更新する
２６８：ＯＳは下位デバイス上に配置された媒体上のファイルシステム構造へアク
セスを提供するファイルシステムドライバ−を初期化する
２７０：ＯＳはエミュレ−トされたハ−ドドライブに組み込まれたファイルシステ
ムの中の上位ファイルシステムフィルタ−を初期化する
２７２：上位ファイルシステムはエミュレ−トされたハ−ドドライブへの要求の傍
受を開始し、そして前から存在する読み取り専用ファイルへの変更を阻止
する
２７４：ＯＳカ−ネルはシステムドライブを決定するため修正された起動ロ−ダ−
構造を使用する
２７６：ＯＳは起動を完了し、次に今度はそれがシステムドライブと認識するエミ
ュレ−トされたハ−ドドライブよりの作動を継続する
【図１】
2006510995.tif 000003
【図２】
2006510995.tif 000004
【図３】
2006510995.tif 000005
【図４】
2006510995.tif 000006
【図５】
2006510995.tif 000007
【図６】
2006510995.tif 000008
【図７】
2006510995.tif 000009
【図８】
2006510995.tif 000010
【図９】
2006510995.tif 000011
【国際調査報告】
2006510995.tif 000012