【誤訳訂正書】
【提出日】平成24年1月17日(2012.1.17)
【誤訳訂正１】
【訂正対象書類名】特許請求の範囲
【訂正対象項目名】全文
【訂正方法】変更
【訂正の内容】
【特許請求の範囲】
【請求項１】
モデルクライアントプラットフォームの方法であって、
前記モデルクライアントプラットフォームのモデル記憶装置の第１のモデルブロックに格納された増分ファイルを含むファイルイメージを生成する段階と、
前記モデル記憶装置の第２のモデルブロックに格納されたファイル記述を含むファイル記述イメージを生成する段階と、
前記ファイルイメージ、および、前記ファイル記述イメージをサーバにアップロードする段階と、
を備え、
前記ファイル記述は、前記モデル記憶装置における前記第１のモデルブロックの位置と、前記増分ファイルのファイル名、ファイルサイズ、およびファイル構成とを含み、
前記ファイル記述イメージは、通常のクライアントプラットフォームに前記増分ファイルがロードされていないときに、前記通常のクライアントプラットフォームのユーザーインターフェース上に前記増分ファイルのアイコンを表示することに利用されうる
方法。
【請求項２】
前記モデル記憶装置の各モデルブロックに格納されたデータが前記サーバから入手可能かどうかを示すモデルブロックビットマップを生成する段階をさらに備える、請求項１に記載の方法。
【請求項３】
前記モデル記憶装置の各モデルブロックの使用状況を示すモデルブロックビットマップを生成する段階をさらに備える、請求項１または２に記載の方法。
【請求項４】
前記ファイルイメージは、前記モデル記憶装置における前記第１のモデルブロックの前記位置をさらに含む、請求項１から３のいずれか１項に記載の方法。
【請求項５】
前記ファイル記述イメージは、前記モデル記憶装置における前記第２のモデルブロックの位置をさらに含む、請求項１から４のいずれか１項からに記載の方法。
【請求項６】
前記モデル記憶装置の第３のモデルブロックに格納されたベースファイル、および、前記モデル記憶装置における前記第３のモデルブロックの位置を含む他のファイルイメージを生成する段階と、
前記他のファイルイメージを前記サーバにアップロードする段階と、
をさらに備える、請求項１から５のいずれか１項に記載の方法。
【請求項７】
前記増分ファイルは、前記モデル記憶装置の第３のモデルブロックに格納されたベースファイルのアップデートバージョンであることを決定する段階と、
前記増分ファイルを格納する前記第１のモデルブロックを、前記ベースファイルを格納する前記第３のモデルブロックにマップするマッピング情報を記録する段階と、
前記マッピング情報を前記サーバにアップロードする段階と、
をさらに備える、請求項１から６のいずれか１項に記載の方法。
【請求項８】
通常のクライアントプラットフォームの方法であって、
前記通常のクライアントプラットフォームの通常の記憶装置の各通常のブロックの使用状況を示す通常のブロックビットマップを生成する段階と、
増分ファイルのファイル記述を含むファイル記述イメージをサーバからダウンロードする段階と、
を備え、
前記ファイル記述は、モデルクライアントプラットフォームのモデル記憶装置における第１のモデルブロックの位置と、前記増分ファイルのファイル名、ファイルサイズ、およびファイル構成とを含み、
前記ファイル記述イメージは、前記通常のクライアントプラットフォームに前記増分ファイルがロードされていないときに、前記通常のクライアントプラットフォームのユーザインターフェース上に前記増分ファイルのアイコンを表示することに利用されうる
前記第１のモデルブロックは、増分ファイルを格納する、
方法。
【請求項９】
前記サーバからモデルブロックビットマップをダウンロードする段階をさらに備え、
前記モデルブロックビットマップは、前記モデル記憶装置の各モデルブロックの使用状況を示す、請求項８に記載の方法。
【請求項１０】
前記通常のブロックビットマップ、および、前記モデルブロックビットマップに基づき、前記増分ファイルが前記サーバから入手可能かどうかを決定する段階と、
前記サーバから前記増分ファイルをダウンロードする段階と、
前記モデル記憶装置における前記第１のモデルブロックの前記位置に対応する前記通常の記憶装置の第１の通常のブロックに前記増分ファイルを格納する段階と、
前記第１の通常のブロックが用いられていることを示すよう、前記通常のブロックビットマップをアップデートする段階と、
をさらに備える、請求項９に記載の方法。
【請求項１１】
前記第１のモデルブロックの前記位置に基づき、前記サーバに格納されたファイルイメージから前記増分ファイルを読み出す段階をさらに備え、
前記ファイルイメージは、前記増分ファイルを前記第１のモデルブロックの前記位置にリンクさせる、請求項１０に記載の方法。
【請求項１２】
前記ファイル記述イメージは、前記モデル記憶装置における第２のモデルブロックの位置をさらに含み、前記第２のモデルブロックは、前記ファイル記述を格納する、請求項９に記載の方法。
【請求項１３】
前記第２のモデルブロックの前記位置に対応する前記通常の記憶装置の第２の通常のブロックに、前記ファイル記述を格納する段階と、
前記第２の通常のブロックが用いられていることを示すよう、前記通常のブロックビットマップをアップデートする段階と、
をさらに備える、請求項１２に記載の方法。
【請求項１４】
ベースファイル、および、前記モデル記憶装置における前記ベースファイルを格納する第３のモデルブロックの位置を含むベースファイルイメージを前記サーバからダウンロードする段階と、
前記第３のモデルブロックの前記位置に対応する前記通常の記憶装置の第３の通常のブロックに、前記ベースファイルを格納する段階と、
をさらに備える請求項９に記載の方法。
【請求項１５】
前記通常の記憶装置の第４の通常のブロックに新しいファイルを格納する段階と、
前記新しいファイルが前記ベースファイルのアップデートバージョンである場合、前記第４の通常のブロックを前記第３の通常のブロックにマップするマッピング情報を記録する段階と、
をさらに備える、請求項１４に記載の方法。
【請求項１６】
モデルクライアントプラットフォームに、
前記モデルクライアントプラットフォームの記憶装置の第１のブロックに増分ファイルを格納する段階と、
前記モデルクライアントプラットフォームをリブートする段階と、
前記増分ファイルを含むファイルイメージ、および、前記増分ファイルのファイル記述を含むファイル記述イメージを生成する段階と、
を実行させる複数の命令を備え、
前記ファイル記述は、前記記憶装置における前記第１のブロックの位置と、前記増分ファイルのファイル名、ファイルサイズ、およびファイル構成とを含み、
前記ファイル記述イメージは、通常のクライアントプラットフォームに前記増分ファイルがロードされていないときに、前記通常のクライアントプラットフォームのユーザインターフェース上に前記増分ファイルのアイコンを表示することに利用されうる
プログラム。
【請求項１７】
前記複数の命令は、
前記ファイルイメージ、および、前記ファイル記述イメージをサーバにアップロードする段階と、
前記記憶装置から前記増分ファイルを削除する段階と、
前記通常のクライアントプラットフォームをからログアウトする段階と、
をさらに実行させる、請求項１６に記載のプログラム。
【請求項１８】
前記複数の命令は、
前記記憶装置の各ブロックの使用状況を示すブロックビットマップを生成する段階と、
前記ブロックビットマップをサーバにアップロードする段階と、
をさらに実行させる、請求項１６または１７に記載のプログラム。
【請求項１９】
増分ファイルを格納する第１のモデルブロック、および、前記増分ファイルのファイル記述を格納する第２のモデルブロックを有するモデル記憶装置と、
前記増分ファイルを含むファイルイメージ、および、前記ファイル記述を含むファイル記述イメージを生成するモデルファームウェア構成要素と、
を備える、モデルクライアントプラットフォームであって、
前記ファイル記述は、前記モデル記憶装置における前記第１のモデルブロックの位置と、前記増分ファイルのファイル名、ファイルサイズ、およびファイル構成とを含み、
前記ファイル記述イメージは、通常のクライアントプラットフォームに前記増分ファイルがロードされていないときに、前記通常のクライアントプラットフォームのユーザインターフェース上に前記増分ファイルのアイコンを表示することに利用されうる
モデルクライアントプラットフォーム。
【請求項２０】
前記ファイルイメージおよびファイル記述イメージをサーバにアップロードするモデルネットワークインターフェースをさらに備える、請求項１９に記載のモデルクライアントプラットフォーム。
【請求項２１】
前記モデルファームウェア構成要素は、前記モデル記憶装置の各モデルブロックの使用状況を示すモデルブロックビットマップをさらに生成し、
前記モデルネットワークインターフェースは、前記モデルブロックビットマップを前記サーバにさらにアップロードする、請求項２０に記載のモデルクライアントプラットフォーム。
【請求項２２】
前記モデル記憶装置は、ベースファイルを格納する第３のモデルブロックをさらに有する、請求項１９から２１のいずれか１項に記載のモデルクライアントプラットフォーム。
【請求項２３】
前記モデル記憶装置は、ベースファイルを格納する第３のモデルブロックをさらに有し、
前記モデルファームウェアは、ベースファイル、および、前記モデル記憶装置における前記第３のモデルブロックの位置を含む他のファイルイメージをさらに生成し、
前記モデルネットワークインターフェースは、前記他のファイルイメージを前記サーバにさらにアップロードする、請求項２０または２１に記載のモデルクライアントプラットフォーム。
【請求項２４】
前記増分ファイルが前記ベースファイルのアップデートバージョンである場合、前記増分ファイルを格納する前記第１のモデルブロックを、前記ベースファイルを格納する前記第３のモデルブロックにマップするマッピング情報を記録するドライバをさらに備える、請求項２３に記載のモデルクライアントプラットフォーム。
【請求項２５】
複数の通常のブロックを有する通常の記憶装置と、
増分ファイルのファイル記述を含むファイル記述イメージをサーバからダウンロードするための通常のネットワークインターフェースと、
前記通常のブロックの使用状況を示す通常のブロックビットマップを生成する通常のファームウェア構成要素と、
ユーザーインタフェースと、
を備える、通常のクライアントプラットフォームであって、
前記ファイル記述は、モデルクライアントプラットフォームのモデル記憶装置における第１のモデルブロックの位置と、前記増分ファイルのファイル名、ファイルサイズ、およびファイル構成とを含み、
前記増分ファイルをロードしていないときに、前記ユーザーインタフェース上に前記増分ファイルのアイコンを表示するために前記ファイル記述イメージを利用し、
前記第１のモデルブロックは、増分ファイルを格納する、
通常のクライアントプラットフォーム。
【請求項２６】
前記通常のネットワークインターフェースは、前記サーバからモデルブロックビットマップをさらにダウンロードし、前記モデルブロックビットマップは、前記モデル記憶装置の各モデルブロックの使用状況を示す、請求項２５に記載の通常のクライアントプラットフォーム。
【請求項２７】
第１のドライバをさらに備え、前記第１のドライバは、
前記通常のブロックビットマップ、および、前記モデルブロックビットマップに基づき、前記増分ファイルが前記サーバから入手可能かどうかを決定し、
前記サーバから前記増分ファイルをダウンロードし、
前記第１のモデルブロックの前記位置に対応する前記複数の通常のブロックの第１の通常のブロックに、前記増分ファイルを格納し、
前記第１の通常のブロックが使用されていることを示すよう、前記通常のブロックビットマップをアップデートする、請求項２６に記載の通常のクライアントプラットフォーム。
【請求項２８】
前記ファイル記述イメージは、前記モデル記憶装置における第２のモデルブロックの位置をさらに含み、前記第２のモデルブロックは、前記ファイル記述を格納し、
前記通常の記憶装置は、前記第２のモデルブロックの前記位置に対応する前記複数の通常のブロックの第２の通常のブロックに、前記ファイル記述をさらに格納する、請求項２５から２７のいずれか１項に記載の通常のクライアントプラットフォーム。
【請求項２９】
第２のドライバをさらに備え、前記第２のドライバは、
前記サーバから、ベースファイル、および、前記モデル記憶装置における前記ベースファイルを格納する第３のモデルブロックの位置を含むベースファイルイメージを受信し、
前記第３のモデルブロックの前記位置に対応する前記複数の通常のブロックの第３の通常のブロックに、前記ベースファイルを格納する請求項２５から２８のいずれか１項に記載の通常のクライアントプラットフォーム。
【請求項３０】
第２のドライバをさらに備え、前記第２のドライバは、
前記複数の通常のブロックの第４の通常のブロックに新しいファイルを格納し、
前記新しいファイルが前記ベースファイルのアップデートバージョンである場合、前記第４の通常のブロックを前記第３の通常のブロックにマップするマッピング情報を記録する、請求項２９に記載の通常のクライアントプラットフォーム。
【誤訳訂正２】
【訂正対象書類名】明細書
【訂正対象項目名】全文
【訂正方法】変更
【訂正の内容】
【発明の詳細な説明】
【発明の名称】ネットワーク環境におけるスペースのカスタマイズ
【背景技術】
【０００１】
コンピュータをカスタマイズする能力は、プラットフォームの重要な機能である。一般的に、カスタマイズとは、コンピュータの設定を変更して特定のユーザに合わせることを含む。例えば、パソコン（ＰＣ）は、背景画像を変えること、テキストフォントを選ぶこと、または、オペレーティングシステムのカラースキームによってカスタマイズされうる。ＰＣが異なるユーザによって共有される場合、個々のユーザは、それらの基本的な個人設定をＰＣのユーザアカウント内に記憶させうる。その後、ログインすることによって、それらの設定にアクセスしうる。
【図面の簡単な説明】
【０００２】
添付の図面において本願明細書中に記載される発明が例示されるが、限定を意図しない。説明を簡潔かつ明確にすべく、図面中に示される構成要素は、必ずしも同じ尺度で描かれていない。例えば、いくつかの構成要素の寸法は、わかりやすくするために他の要素に比べて誇張されうる。さらに、適切だとみなされる場合は、図面を通じて参照符号が繰り返し用いられ、対応するかまたは同様の構成要素を示す。
【０００３】
【図１】サーバプラットフォーム、および、サーバプラットフォームと接続する複数のクライアントプラットフォームを有するネットワーク環境の一実施形態を示す。
【０００４】
【図２】ネットワーク環境における通常のクライアントプラットフォーム、モデルクライアントプラットフォーム、および、サーバプラットフォームの構造の一例を示す。
【０００５】
【図３Ａ】複数のブロックに分割される記憶装置の一実施形態を示す。
【０００６】
【図３Ｂ】増分ファイルイメージおよび増分ファイル記述イメージの一実施形態を示す。
【０００７】
【図３Ｃ】モデルクライアントプラットフォームにより生成されたモデルブロックビットマップの一実施形態を示す。
【０００８】
【図３Ｄ】通常のクライアントプラットフォームにより生成された通常のブロックビットマップの一実施形態を示す。
【０００９】
【図４】モデルクライアントプラットフォームをインストールする方法の一実施形態を示す。
【００１０】
【図５】通常のクライアントプラットフォームを初期化する一実施形態を示す。
【００１１】
【図６】通常のクライアントプラットフォームにおいて入出力要求を処理する一実施形態を示す。
【００１２】
【図７】ネットワーク環境におけるクライアントプラットフォームのクライアントのための記憶装置空間をセーブする一実施形態を示す。
【００１３】
【図８】一般のプラットフォームの一実施形態を示す。
【発明を実施するための形態】
【００１４】
以下にネットワーク環境におけるスペースをカスタマイズする技術を説明する。以下の説明では、本発明の完全なる理解をさらに深めるべく、論理実装、擬似コード、オペランドを特定する手段、リソース区分／共有／複製の実装、システムコンポーネントのタイプおよび相互関連性、および、論理区分／統合の選択など、多数の特定の詳細が記載される。しかしながら、本発明は、そのような特定の詳細がなくとも実施されうる。他の例では、本発明をあいまいにすることを避けるべく、制御構造、ゲートレベル回路、および、完全なソフトウェア命令シーケンスは詳細に示されていない。記載を読んだ当業者であれば、何度も実験を繰り返さなくても適切な機能を実装できるであろう。
【００１５】
明細書中に用いられる「１つの実施形態」、「一実施形態」、「一例」などは、説明される実施形態が特定の特徴、構造、または、特性を含みうるが、必ずしもその特定の特徴、構造、または、特性を含まなくてもよいことを示す。また、このような言い方は、必ずしも同じ実施形態を指すわけではない。さらに、特定の特徴、構造、または、特性が一実施形態に関連して記載された場合、他の実施形態に関連するそのような特徴、構造、または、特性にも、明確に記載されているか否かを問わず有効であることが当業者には明らかであろう。
【００１６】
本発明の実施形態は、ハードウェア、ファームウェア、ソフトウェア、または、それらのいかなる組合せでも実装されうる。本発明の実施形態は、機械可読媒体に格納される命令としても実装されてよく、当該命令は、１つ以上のプロセッサにより読み取られて実行されうる。機械可読媒体は、機械（コンピュータなど）によって読み取り可能な形式で情報を格納または伝送するいかなる機構も含みうる。例えば、機械可読媒体は、ＲＯＭ（リードオンリーメモリ）、ＲＡＭ（ランダムアクセスメモリ）、磁気記憶装置の記憶媒体、光記憶媒体、フラッシュメモリデバイス、電気、光、音響、または、他の形式の伝播信号（例えば、搬送波、赤外線信号、デジタル信号など）他を含みうる。
【００１７】
図１にネットワーク環境１０の一実施形態が示される。ネットワーク環境１０は、サーバプラットフォーム１２と、イーサネット（登録商標）、ファイバーチャンネル、または、他の通信リンクなどのネットワーク１３を介してサーバプラットフォーム１２と接続する複数のクライアントプラットフォーム１１１−１１Ｎとを有してよい。本実施形態では、ネットワーク環境１０は、いかなる数のクライアントプラットフォームおよびサーバプラットフォームを有してもよい。
【００１８】
ネットワーク環境１０は、それぞれのカスタマイズされた必要条件を満たすべく、異なるグループのクライアントに異なるコンテンツを提供してよい。例えば、若い学生は、教育的なコンテンツが必要かもしれないし、大人は、娯楽的なコンテンツを好むかもしれない。これらのニーズに応えるべく、各クライアントプラットフォーム１１１−１１Ｎは、オペレーティングシステム、および、または、オペレーティングシステム上で動作するベースソフトウェアアプリケーションなどのベースソフトウェアイメージ、および／または、おそらく他のソフトウェアイメージもインストールされうる。
【００１９】
クライアントプラットフォームの１つ（クライアントプラットフォーム１１１など）は、ベースファイルとは異ってよい増分ソフトウェアイメージがインストールされるモデルクライアントプラットフォームとして選択されうる。例えば、増分ファイルは、カスタマイズされたサービスをクライアントの特定のグループ（若い学生など）に提供しうるプログラム（教育的コンテンツなど）を含みうる。他の例では、増分ファイルは、ベースファイルのアップデートバージョンであってよい。その後、モデルクライアントプラットフォームは、増分ソフトウェアイメージと、サーバにアップロードされるそれらの記述情報とを含む増分パッケージを生成しうる。増分パッケージは、増分ソフトウェアイメージを格納するブロックを説明するブロック記述をさらに含んでよい。一実施形態では、ブロック記述は、モデルプラットフォームの記憶装置におけるブロックの位置を含みうる。
【００２０】
モデルクライアントプラットフォームは、記憶装置のブロックに格納された増分ソフトウェアイメージがサーバから入手可能であるかどうかを示す情報をさらに生成し、当該情報をサーバ１２にアップロードしてよい。一実施形態では、情報は、モデルクライアントプラットフォームの記憶装置の各ブロックの使用状況を示すモデルブロックビットマップでありうる。
【００２１】
上記構成は、ネットワーク環境１０における通常のクライアントプラットフォーム（クライアントプラットフォーム１１２）を実現しうる。当該クライアントプラットフォームは、予め増分ソフトウェアイメージがインストールされておらず、クライアントからの要求に応じてサーバから増分ソフトウェアイメージをダウンロードすることにより、そのグループのクライアントにカスタマイズされたコンテンツを提供する。
【００２２】
ネットワーク環境１０におけるモデルクライアントプラットフォーム（例えばクライアントプラットフォーム１１１）、通常のクライアントプラットフォーム（例えばクライアントプラットフォーム１１２）、および、サーバプラットフォーム１２の構造の一実施形態が図２に示される。
【００２３】
図に示すように、モデルクライアントプラットフォーム（例えばクライアントプラットフォーム１１１）は、ハードウェアマシン２０と、ハードウェアマシン２０上で動作するファームウェア２１と、オペレーティングシステム２２およびアプリケーション２３を含む、ファームウェア２１の上で動作するソフトウェアイメージとを含みうる。
【００２４】
ハードウェアマシン２０は、１つ以上のプロセッサ２０１、メモリ２０２、記憶装置２０３、および、ネットワークインターフェース２０４などをさらに含みうる。記憶装置２０３は、クライアントプラットフォーム内にある内部記憶装置（ハードディスクなど）、および、クライアントプラットフォームの外にある外部記憶装置（フロッピー（登録商標）ディスク、光ディスクなど）を含みうる。本実施形態では、記憶装置２０３は、データ記憶のための複数のブロックに分割されてよい。
【００２５】
ファームウェア２１は、システムスタートアップの間にプラットフォームが実行するＢＩＯＳ（バイオス）ルーチン２１０、および、ファームウェア２１とオペレーティングシステム２２との間のインターフェースとなるＥＦＩ（拡張ファームウェアインターフェース）ルーチン２１１を格納し、オペレーティングシステム２２をブートする標準環境を提供しうる。オペレーティングシステム２２は、クライアントプラットフォームが実行するタスクを制御し、システム資源を管理してパフォーマンスを最適化しうる。オペレーティングシステム２２は、ファイルおよびディクショナリのトラックを記憶装置２０３に保持するなどの基本的なタスクを実行しうる。
【００２６】
本実施形態には、ベースファイルおよび増分ファイルの２種類のファイルが存在しうる。ベースファイルは、オペレーティングシステム２２のためのプログラム、および／または、データベースプログラム、ワードプロセッサ、スプレッドシートなどの基本アプリケーションのためのプログラムを含みうる。増分ファイルは、ベースファイルとは異なってよい。例えば、増分ファイルは、若い学生用の教育プログラム、または、大人用のゲームなど、クライアントのグループに合わせて設計されたプログラムを含みうる。オペレーティングシステム２２は、アプリケーション２３からの呼び出しを受信して、記憶装置２０３から／にファイルを読み書きするＩ／Ｏハンドラ２２０、ファイルのトラックを整理して記憶装置２０３に保持するファイルシステム２２１、および、記憶装置２０３から／にファイルを出入力するドライバ２２２を有しうる。ドライバ２２２は、記憶装置のベースファイルが破壊されないようにするための記憶装置保護（ＳＵＰ）ドライバ２２２０をさらに有しうる。
【００２７】
アプリケーション２３は、オペレーティングシステム２２により提供されるソフトウェアプラットフォーム内で動作し、ユーザとのやりとりのためのユーザインターフェース２３０を提供するソフトウェアプログラムを含みうる。
【００２８】
通常のクライアントプラットフォーム（例えばクライアントプラットフォーム１１２）は、ハードウェアマシン２４、ハードウェアマシン２４の上で動作するファームウェア２５、および、オペレーティングシステム２６およびアプリケーション２７を含む、ファームウェア２５の上で動作するソフトウェアイメージを含みうる。
【００２９】
通常のクライアントプラットフォームの構成は、通常のクライアントプラットフォームのオペレーティングシステム２６がクライアントの要求に応じて記憶装置２４３またはサーバ１２からファイルを読み出すための供給オンデマンド（ＰＯＤ）ドライバ２６２１をさらに含む以外は、モデルクライアントプラットフォームの構成と同様である。
【００３０】
サーバ１２は、ハードウェアマシン１２０、アカウントサーバ１２１、パッケージサーバ１２２、および、イメージサーバ１２３を有しうる。ハードウェアマシン１２０は、１つ以上のプロセッサ１２０１、メモリ１２０２、記憶装置１２０３、ネットワークインターフェース１２０４などを有しうる。アカウントサーバ１２１は、クライアントプラットフォームから受信されたアカウント情報を確認しうる。パッケージサーバ１２２は、アカウントサーバ１２１からの確認結果に基づき、クライアントプラットフォームとの間で増分パッケージを送受信しうる。
【００３１】
カスタマイズされたサービスをクライアントのグループに提供すべく、プレインストール期間において、オペレーティングシステムおよび／または基本アプリケーションを含むベースファイルが各クライアントプラットフォームの記憶装置にプレインストールされてよい。しかしながら、ベースファイルは、他の方法でインストールされてもかまわない。例えば、ベースファイルは、モデルクライアントプラットフォームの記憶装置２０３にプレインストールされてもよい。その後、モデルクライアントプラットフォームのＥＦＩ２２１は、ベースファイル、および、ベースファイル記述（ファイル名、ファイルサイズ、および、ファイル構成など）を含むベースパッケージを生成し、当該ベースパッケージをサーバ１２のイメージサーバ１２３にアップロードしてよい。
【００３２】
ベースパッケージは、モデルクライアントプラットフォームの記憶装置２０３内のブロックの位置など、ベースファイルを格納するブロックの説明をするブロック記述をさらに含みうる。そして、イメージサーバ１２３は、プレインストール期間において他のクライアントプラットフォームのそれぞれにベースパッケージをダウンロードすることにより、他のクライアントプラットフォームのそれぞれは、モデルクライアントプラットフォームと同じブロック位置にベースファイルをプレインストールしうる。
【００３３】
教育的な素材またはゲームなどの、クライアントのグループに合わせて設計された増分ファイルは、モデルクライアントプラットフォームの記憶装置２０３にインストールされうる。インストール中、ＳＵＰドライバ２２２０は、ベースファイルが破壊されないように、ベースファイルが使用しない記憶装置２０３のブロックに増分ファイルを導く。ＳＵＰドライバ２２２０は、さらに、増分ファイルがベースファイルのアップデートバージョンかどうかを決定し、増分ファイルがアップデートされたベースファイルである場合、増分ファイルを格納するブロックを、ベースファイルを格納するブロックにマップすることを示すマッピング情報を記録してよい。
【００３４】
そして、ＥＦＩ２１１は、増分ファイル、および、入手可能なマッピング情報に基づき、増分パッケージを生成しうる。増分パッケージは、サーバにアップロードされてよい。パッケージは、増分ファイルのコンテンツを有する増分ファイルイメージ、および、増分ファイルのファイル記述を有する増分ファイル記述イメージを含みうる。ファイル記述の例は、ファイル名、ファイルサイズ、および、ファイル構成（ファイルシステムのツリー構造など）を含みうる。本実施形態では、ファイル記述は、記憶装置２０３内のブロック位置など、増分ファイルを格納しうる記憶装置２０３のブロックについての情報をさらに含んでよい。ＥＦＩ２１１は、さらに、記憶装置２０３の各ブロックの使用状況を示すモデルブロックビットマップを生成し、当該モデルブロックビットマップをサーバ１２にアップロードしうる。
【００３５】
図３Ａは、例えば、ブロック１...．ブロックｎなどの複数のブロックに分割されている記憶装置２０３の一実施形態を示す。
【００３６】
図３Ｂは、増分ファイルイメージ３０１、および、増分ファイル記述イメージ３０２を有する増分パッケージ３００の一実施形態を示す。増分ファイルイメージ３０１は、複数のエントリを有してよく、複数のエントリのそれぞれは、記憶装置２０３の１ブロックに対応する。増分ファイルイメージ３０１の各エントリは、２つの部分を含んでよく、１つは、ブロック内に格納された増分ファイルのコンテンツであり、もう１つは、当該ブロックに関連する記述情報である。
【００３７】
例えば、増分ファイルイメージ３０１のエントリ１は、記憶装置２０３のブロック１に格納された増分ファイル１のコンテンツと、ブロック１に関する記述情報（例えば、記憶装置２０３内のブロック位置）とを含みうる。記憶のための複数のブロックを要しうる増分ファイルについては、それに対応する増分ファイルイメージは、複数のエントリを含みうる。
【００３８】
同様に、増分ファイル記述イメージ３０２は、複数のエントリを有してよく、複数のエントリのそれぞれは、記憶装置２０３の１ブロックに対応する。増分ファイル記述イメージ３０２の各エントリは、２つの部分を有してよく、１つは、ブロック内に格納されたファイル記述情報であり、もう１つは、当該ブロックに関連する記述情報である。
【００３９】
例えば、増分ファイル記述イメージ３０２のエントリ１'は、記憶装置２０３のブロック２０に格納されたファイル記述情報と、ブロック２０に関するブロック記述情報（例えば、記憶装置２０３内のブロック位置）とを含みうる。上述のごとく、ファイル記述情報は、ファイル名、ファイルサイズ、ファイル構成、および、増分ファイルを格納する記憶装置２０３のブロック（例えば増分ファイル１および２を格納するブロック４、５、１０）などの増分ファイル（例えば増分ファイル１および２）に関する記述情報を含みうる。
【００４０】
図３Ｃは、モデルブロックビットマップの一実施形態を示し、ビットマップの各ビットは、記憶装置２０３の各ブロックに対応し、ビット'１'またはビット'０'は、対応するブロックが用いられていること、および、用いられてないことを表してよい。しかしながら、モデルブロックビットマップには他の技術も適用しうることを理解されたい。例えば、モデルブロックビットマップは、記憶装置２０３の各ブロックに格納されたコンテンツがサーバにアップロードされているかどうかを示してよい。その場合、ビット'１'またはビット'０'は、対応するブロックのコンテンツがアップロードされていること、および、アップロードされていないことを表してよい。
【００４１】
再び図２を参照すると、グループの中の１クライアント（例えば若い学生）がベースファイルをプレインストールしている通常のクライアントプラットフォームにログオンすると、ＥＦＩ２５１は、ユーザインターフェース２７０を介してクライアントにより入力されたアカウント情報を受信しうる。その後、アカウント情報は、プラットフォームの初期化中、オペレーティングシステム２６をブートする前に確認のためにアカウントサーバ１２１に送られてよい。
【００４２】
確認後、アカウントサーバ１２１は、パッケージサーバ１２２を起動してアカウント情報と一致するモデルブロックビットマップをＥＦＩ２５１に送信してよい。モデルブロックビットマップは、モデルクライアントプラットフォームの記憶装置２０３の各ブロックの使用状況を示すモデルクライアントプラットフォームのＥＦＩ２１１により提供されうる。ＥＦＩ２５１は、通常のクライアントプラットフォームの記憶装置２４３の各ブロックの使用状況を示す通常のブロックビットマップをさらに生成しうる。
【００４３】
図３Ｄは、通常のブロックビットマップ３０４の一実施形態を示す。図に示すように、記憶装置２４３のブロック１から３は、通常のクライアントプラットフォームのプレインストール時にベースファイルを格納するために用いられうる。
【００４４】
通常のクライアントプラットフォーム内でオペレーティングシステム２６がブートアップされ、ＳＵＰドライバ２６２０およびＰＯＤドライバ２６２１を含むドライバ２６２がセットアップされた後、パッケージサーバ１２１は、クライアントに合わせて設計された増分ファイル記述イメージをＰＯＤドライバ２６２１に送信してよい。ＰＯＤドライバ２６２１は、増分ファイル記述イメージからファイル記述情報およびブロック記述情報を取り出してよい。ＰＯＤドライバ２６２１は、ブロック記述情報に記載されたブロック位置についてのファイル記述情報を格納し、ＥＦＩ２５１から取り出された通常のブロックビットマップをアップデートしてよい。通常のブロックビットマップは、増分ファイル記述情報を格納する記憶装置２４３のブロックが用いられることを示すことによりアップデートされうる。
【００４５】
サーバ１２から読み出された増分ファイル記述情報、および、他の情報（例えばベースファイル記述情報）を利用することにより、オペレーティングシステム２６は、ファイル構成を表すファイルシステム２６１を構築しうる。本実施形態では、ファイルシステム２６１は、ファイル、特に増分ファイルに対応するブロックに関する情報をさらに表してよい。増分ファイルのコンテンツが通常のプラットフォームの記憶装置２４３にインストールされていなくても、オペレーティングシステム２６が増分ファイルおよび／またはベースファイルのアイコンをユーザインターフェース２７０のスクリーンに提示する手助けをファイルシステム２６１がしうる。例えば、ユーザスインターフェース２７０は、若い学生にはＥラーンニング（ｅ−ｃｌａｓｓ）のアイコンを、または、大人にはゲームのアイコンを提示しうる。
【００４６】
ユーザインターフェース２７０上のファイルアイコンをクリックすることによりクライアントがファイルを開くと、Ｉ／Ｏハンドラ２６０がユーザインターフェース２７０からのＩ／Ｏ呼び出しを受信し、ファイルシステム２６１は、記憶装置２４３のどのブロックが選択されたファイルに対応しうるかを分析してよい。ＰＯＤドライバ２６２１は、通常のブロックビットマップを参照することにより、選択されたファイルが記憶装置２４３に格納されているかどうかを決定してよい。対応するブロックが用いられていることを通常のブロックビットマップが示す場合、ＰＯＤドライバ２６２１は、記憶装置２４３のブロックからファイルを読み出し、当該ファイルをユーザインターフェース２７０に出力してよい。しかしながら、対応するブロックが用いられていないことを通常のブロックビットマップが示す場合は、ＰＯＤドライバ２６２１は、モデルブロックビットマップを参照することにより、選択されたファイルがサーバ１２から入手可能かどうかを決定しうる。例えば、対応するブロックがモデルブロックビットマップ内で用いられていると示されるということは、選択されたファイルがサーバから入手可能であることを表しうる。
【００４７】
選択されたファイルがサーバ１２から入手可能であるとの決定に応じて、ＰＯＤドライバ２６２１は、選択されたファイルをサーバ１２にダウンロードする要求を送信する。パッケージサーバ１２２は、選択されたファイルを格納する増分ファイルイメージのエントリを読み出し、当該増分ファイルイメージのエントリをＰＯＤドライバ２６２１にダウンロードすることにより、ＰＯＤドライバ２６２１は、増分ファイルイメージのエントリから取り出されたファイルを記憶装置２４３の対応するブロックに格納し、対応するブロックが用いられていることを示すことによって、通常のブロックビットマップをアップデートしてよい。最後に、ＰＯＤドライバ２６２１は、選択されたファイルをユーザインターフェース２７０に出力してよい。
【００４８】
新しいファイルを記憶装置２４３にダウンロードすることをクライアントが選択する場合、ＳＵＰドライバ２６２０は、ベースファイルを保護すべく、当該ベースファイルが用いない記憶装置２４３のブロックに新しいファイルを格納してよい。ＳＵＰドライバ２６２０は、新しいファイルがベースファイルのアップデートバージョンかどうかをさらに決定してよい。新しいファイルがアップデートされたベースファイルである場合、ＳＵＰドライバ２６２０は、新しいファイルを格納するブロックを、ベースファイルを格納するブロックにマップするためのマッピング情報を記録しうる。
【００４９】
ログオフ前に、クライアントが現在の記憶装置構成をセーブすると決めた場合、通常のクライアントプラットフォームは、リブートし、ＥＦＩ２５１は、通常のクライアントプラットフォームの記憶装置２４３に格納された増分ファイル、および／または、マッピング情報に基づき、増分パッケージを生成し、当該増分パッケージをサーバ１２にアップロードしてよい。ＥＦＩ２５１が通常のブロックビットマップをサーバにさらにアップロードすることにより、他の通常のクライアントプラットフォームにクライアントがログオンした場合に、同じ記憶装置環境を生成すべく、サーバ１２からダウンロードされた通常のブロックビットマップ、および、増分パッケージが用いられてよい。
【００５０】
他の実施形態は、図２に示されるような構造のための他の技術を実装しうる。例えば、クライアントの他のグループに合わせて設計された増分ファイルをインストールすべく、モデルプラットフォームがさらに用いられてよい。その場合、ＥＦＩ２１１は、クライアントのそれぞれのグループに対して増分パッケージおよびブロックビットマップをそれぞれ生成してよい。他の例では、対応するファイル記述が通常のクライアントプラットフォームにプレインストールされていない場合、ＥＦＩ２１１は、増分ファイル記述イメージをサーバ１２にアップロードしなくてよい。さらに他の例では、モデルブロックビットマップは、省略されてよく、増分ファイルを格納するブロックに関する情報は、対応するブロックに格納された増分ファイルがサーバ１２から入手可能かどうかを示すインジケータなどの増分ファイル記述イメージと統合されてよい。
【００５１】
図４は、モデルクライアントプラットフォームをインストールする方法の一実施形態を示す。図に示すように、ブロック４０１において、ＩＴアドミニストレータまたは適切なデバイスが１つ以上のクライアントプラットフォーム１１１−１１Ｎにベースファイルをインストールしてよい。ベースファイルは、オペレーティングシステム、および／または、任意の基本アプリケーションファイルを含みうる。
【００５２】
ブロック４０２において、ＩＴアドミニストレータ、または、適切なデバイスは、新しいクライアントのグループに合わせて設計された増分ファイルがモデルクライアントプラットフォームにインストールされたかどうかを決定しうる。インストールされたと決定された場合、ＩＴアドミニストレータ、または、適切なデバイスは、ブロック４０３において、ネットワーク環境１０から、１つのクライアントプラットフォームをモデルクライアントプラットフォームとして選択し、ブロック４０４において、そのクライアントのグループに合わせて設計された増分ファイルを決定し、ブロック４０５において、当該増分ファイルを、選択されたモデルクライアントプラットフォームの記憶装置にインストールしてよい。
【００５３】
増分ファイルをインストールする一方で、ブロック４０６において、モデルクライアントプラットフォームのＳＵＰドライバ２２２０は、増分ファイルがモデルクライアントプラットフォームの記憶装置にインストールされているベースファイルのアップデートバージョンであるかどうかを決定してよい。増分ファイルがアップデートされたベースファイルであることの決定に応じて、ブロック４０７において、ＳＵＰドライバは、ベースファイルが使用しないブロックに増分ファイルを格納し、当該増分ファイルを格納するブロックを、ベースファイルを格納するブロックにマップしてよい。その後、ブロック４０８において、ＥＦＩ２１１は、増分ファイルイメージおよび増分ファイル記述イメージを含む増分パッケージと、モデルクライアントプラットフォームの記憶装置２０３のブロックの使用状況を示すモデルブロックビットマップとを生成してよい。最後に、ブロック４０９において、モデルクライアントプラットフォームのＥＦＩ２１１、または、他の適切なデバイスは、増分パッケージおよびモデルブロックビットマップをサーバ１２にアップロードしてよい。
【００５４】
図５は、通常のクライアントプラットフォームを初期化する一実施形態を示す。ブロック５０１において、通常のクライアントプラットフォームが開始し、オペレーティングシステムをブートする前に、ファームウェアルーチンがＢＩＯＳプログラムを実行しうる。ブロック５０２において、ＥＦＩ２５１は、ユーザインターフェース２７０を介して、アカウント情報を入力するようクライアントを促してよい。その後、ブロック５０３において、ＥＦＩ２５１がアカウント情報をサーバ１２に送信することにより、アカウントサーバ１２１は、アカウント情報を確認しうる。ブロック５０４において、確認に応じて、パッケージサーバ１２２は、アカウント情報と一致するモデルブロックビットマップをＥＦＩ２５１に送信してよい。モデルブロックビットマップは、クライアントに合わせて設計された増分ファイルがインストールされたモデルクライアントプラットフォームによって生成されてよい。
【００５５】
ブロック５０５において、ＥＦＩ２５１は、通常のクライアントプラットフォームの記憶装置２４３のブロックの使用状況を示す通常のブロックビットマップを生成してよい。その後、ブロック５０６におぃて、オペレーティングシステム２６がブートされ、ＳＵＰドライバ２６２０およびＰＯＤドライバ２６２１を含むドライバがセットアップされる。ブロック５０７において、パッケージサーバ１２２は、モデルクライアントプラットフォームによりアップロードされた増分ファイル記述イメージをＰＯＤドライバ２６２１に送信してよい。当該増分ファイル記述イメージは、増分ファイルに関する記述情報、および、モデルプラットフォームにおける増分ファイルを格納するブロックに関するブロック記述を含んでよい。
【００５６】
その後、ブロック５０８において、増分ファイルが通常のクライアントプラットフォームに実際にはロードされていない場合でも、通常のクライアントプラットフォームのオペレーティングシステム２６は、増分ファイル記述イメージを利用することによってファイルシステムをセットアップし、増分ファイルのアイコンをユーザインターフェース２７０に表示しうる。
【００５７】
図６は、通常のクライアントプラットフォームにより入出力要求を処理する一実施形態を示す。ブロック６０１において、通常のクライアントプラットフォームのＩ／Ｏハンドラ２６０は、Ｉ／Ｏ要求を受信して、記憶装置２４３から／にファイルを読み書きしてよい。ブロック６０２において、Ｉ／Ｏハンドラ２６０は、要求が読み取り要求か書き込み要求かを決定しうる。読み取り要求の場合、Ｉ／Ｏハンドラ２６０は、要求をＰＯＤドライバ２６２１へと転送する。その後、ブロック６０３において、ＰＯＤドライバ２６２１は、ファイルシステム２６１を用いて、要求されたファイルをチェックすることにより、ファイルを格納するブロックに関する情報などのファイル関連情報を見つけうる。
【００５８】
ブロック６０４において、ＰＯＤドライバ２６２１は、ＥＦＩ２５１から読み出された通常のブロックビットマップを参照することにより、要求されたファイルが記憶装置２４３のブロックにすでにロードされているかどうかを決定してよい。ファイルが記憶装置２４３のブロックにロードされている場合、ＰＯＤドライバ２６２１は、記憶装置２４３からファイルを読み取ってユーザインターフェース２７０に出力し、Ｉ／Ｏ要求を終了してよい。ファイルが記憶装置２４３のブロックにロードされていない場合、ＰＯＤドライバ２６２１は、モデルブロックビットマップを参照することにより、要求されたファイルがサーバ１２から入手可能かどうかを決定しうる。
【００５９】
要求されたファイルがサーバ１２から入手可能であるという決定に応じて、ＰＯＤドライバ２６２１は、ファイルイメージのダウンロード要求をサーバ１２に送信してよく、パッケージサーバ１２２は、要求されたファイルを有する増分ファイルイメージのエントリを見つけ、当該増分ファイルイメージのエントリをＰＯＤドライバ２６２１に送信してよい。その後、ＰＯＤドライバ２６２１は、ブロック６０６において、増分ファイルイメージエントリからファイルを読み出し、ブロック６０７において、当該ファイルを記憶装置２４３の対応するブロックにロードしてよい。ブロック６０８において、ＰＯＤドライバ２６２１は、要求されたファイルを格納するブロックが用いられていることを示すことにより、通常のブロックビットマップをアップデートしてよい。ブロック６０９において、ＰＯＤドライバ２６２１は、ファイルをユーザインターフェース２７０に出力し、Ｉ／Ｏ要求を終了してよい。
【００６０】
ブロック６０２において、Ｉ／Ｏ要求は、新しいファイルを記憶装置２４３に書き込む要求であるという決定に応じて、Ｉ／Ｏハンドラ２６０は、要求をＳＵＰドライバ２６２０に転送してよい。ブロック６１０において、ＳＵＰドライバ２６２０は、ベースファイルが使用しない記憶装置２４３のブロックに新しいファイルを格納してよい。ブロック６１１において、ＳＵＰドライバ２６２０は、新しいファイルを格納するブロックが用いられていること示すことにより、通常のブロックビットマップをアップデートしてよい。ブロック６１２において、ＳＵＰドライバ２６２０は、新しいファイルが記憶装置２４３に格納されたベースファイルのアップデートバージョンであるかどうかをさらに決定してよい。新しいバージョンであれば、ブロック６１３において、ＳＵＰドライバ２６２０は、新しいファイルを格納するブロックを、ベースファイルを格納するブロックにマップするマッピング情報を記録してよい。
【００６１】
図７は、ネットワーク環境におけるクライアントプラットフォームのクライアントのための記憶装置スペースをセーブする一実施形態を示す。ブロック７０１において、クライアントは、クライアントプラットフォームをログアウトし、現在の記憶装置環境をセーブするオプションを与えられうる。記憶装置環境をセーブすべく、クライアントプラットフォームは、７０３においてプラットフォームをリブートしてよく、ＥＦＩ２５１、または、クライアントプラットフォームの他の適切なデバイスは、増分パッケージ、および、ブロックビットマップを生成しうる。増分パッケージは、記憶装置に格納された増分ファイルに対応する増分ファイルイメージと、増分ファイルに関する情報を記述した増分ファイル記述イメージとを含みうる。ブロックビットマップは、記憶装置のブロックの使用状況を示し得る。上述のごとく、ブロックビットマップを省略し、ブロックに関連するそのような情報を増分ファイル記述イメージに統合してもよい。
【００６２】
その後、ブロック７０５において、ＥＦＩ２５１は、増分パッケージおよびブロックビットマップをサーバ１２にアップロードしてよい。ブロック７０６において、ＥＦＩ２５１は、クライアントプラットフォームの記憶装置から増分ファイルを消去し、ログアウトしてよい。
【００６３】
他の実施形態は、図７に示された方法のための他の技術を実装しうる。例えば、クライアントプラットフォームは、記憶装置環境セーブ／リストアサービスを提供する前に、ＶＩＰクライアントだけがそのようなサービスを受ける資格があるとすれば、そのクライアントがＶＩＰクライアントであるかどうかを決定しうる。
【００６４】
図８は、図１のネットワーク環境１０におけるクライアントプラットフォームまたはサーバとして機能しうる一般的なプラットフォームの一実施形態を示す。プラットフォームは、１つ以上のプロセッサ８５０、メモリ８５１、チップセット８５２、Ｉ／Ｏデバイス８５３、ファームウェア８５４、および、記憶装置８５５を含みうる。プロセッサ８５０は、プロセッサバスなどの１つ以上のバスを介して他の構成要素に通信可能に結合される。プロセッサ８５０は、例えば、カリフォルニア州サンタクララのインテル社から購入可能な、Ｉｎｔｅｌ（登録商標）Ｘｅｏｎ（登録商標）、Ｉｎｔｅｌ（登録商標）Ｐｅｎｔｉｕｍ（登録商標）、Ｉｎｔｅｌ（登録商標）Ｉｔａｎｉｕｍ（登録商標）アーキテクチャなどの適切なアーキテクチャの下でコードを実行しうる１つ以上の処理コアを有する集積回路（ＩＣ）として実装されうる。
【００６５】
一実施形態では、メモリ８５１は、プロセッサ８５０により実行されうるコードを格納してよい。メモリ８５１のいくつかの例をあげると、これがすべてではないが、ＳＤＲＡＭ（同期型随時書き込み読み出しメモリ）デバイス、ＲＡＭＢＵＳ  ＲＤＲＡＭ（ダイナミックランダムアクセスメモリ）デバイス、ダブルデータレート（ＤＤＲ）メモリデバイス、ＳＲＡＭ（スタティックＲＡＭ）、および、フラッシュメモリデバイスなどの半導体デバイスの１つ、または、それらの組合せを含みうる。
【００６６】
一実施形態では、チップセット８５２は、プロセッサ８５０、メモリ８５１、および、例えばＩ／Ｏデバイス８５３、ファームウェア８５４、および、記憶装置８５５などの他の構成要素間に１つ以上の通信経路を提供しうる。Ｉ／Ｏデバイス８５３の例は、キーボード、マウス、ネットワークインターフェース、記憶装置、カメラ、ブルートゥース、および、アンテナを含みうる。
【００６７】
ファームウェア８５４は、プロセッサ８５０、チップセット８５２、および、プラットフォームの他の構成要素を初期化すべく、システムセットアップ中にプラットフォームが実行するＢＩＯＳルーチン、および／または、ファームウェア１０５４とプラットフォームのオペレーティングシステムとのインターフェースとなり、オペレーティングシステムをブートする標準環境を提供するＥＦＩルーチンを格納しうる。
【００６８】
記憶装置８５５は、プラットフォーム内にある内部記憶装置（ハードディスクなど）、および／または、クライアントプラットフォーム外にある外部記憶装置（例えば、フロッピー（登録商標）ディスク、光ディスクなど）を含みうる。図８に示されるようなクライアントプラットフォームがクライアントプラットフォームとして実行しうる場合、記憶装置８５５は、ベースファイル、増分ファイル、ファイル記述、または、おそらく他のデータも格納しうる。図８に示されるようなプラットフォームがサーバ１２である場合、記憶装置８５５は、増分ファイルイメージ、増分ファイル記述イメージ、ブロックビットマップ、または、おそらく他のデータも格納しうる。
【００６９】
これまで例示的実施例を参照して本発明の特定の特徴を説明してきたが、その記載は、限定の意味合いで解釈されることを意図しない。これらの例示的実施形態のさまざまな修正、および、本発明の他の実施形態も本発明の趣旨および範囲内にあることが当業者には明らかである。
【誤訳訂正３】
【訂正対象書類名】図面
【訂正対象項目名】図２
【訂正方法】変更
【訂正の内容】
【図２】
2010500671.tif 000001
【誤訳訂正４】
【訂正対象書類名】図面
【訂正対象項目名】図３Ｂ
【訂正方法】変更
【訂正の内容】
【図３Ｂ】
2010500671.tif 000002
【誤訳訂正５】
【訂正対象書類名】図面
【訂正対象項目名】図４
【訂正方法】変更
【訂正の内容】
【図４】
2010500671.tif 000003