JP2012104150A - Customizing space in network environment - Google Patents

Customizing space in network environment Download PDF

Info

Publication number
JP2012104150A
JP2012104150A JP2012009332A JP2012009332A JP2012104150A JP 2012104150 A JP2012104150 A JP 2012104150A JP 2012009332 A JP2012009332 A JP 2012009332A JP 2012009332 A JP2012009332 A JP 2012009332A JP 2012104150 A JP2012104150 A JP 2012104150A
Authority
JP
Japan
Prior art keywords
file
model
block
storage device
normal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012009332A
Other languages
Japanese (ja)
Other versions
JP5414814B2 (en
Inventor
Hwang Joon
ワン、ジュン
Guohong Xie
シエ、グオホン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Priority to JP2012009332A priority Critical patent/JP5414814B2/en
Publication of JP2012104150A publication Critical patent/JP2012104150A/en
Application granted granted Critical
Publication of JP5414814B2 publication Critical patent/JP5414814B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To allow each of different users, in the case where a PC is shared by the users, to store fundamental personal settings in a user account of the PC.SOLUTION: A model client platform produces a file image including an increment file stored in a first model block of a model storage device, produces a file description image including a file description stored in a second model block of the model storage device, and uploads the file image and the file description image to a server connected with the model client platform. The file description includes a position of the first model block in the model storage device. A normal client platform produces a normal block bitmap indicating the situation of using each of normal blocks in a normal storage device of the normal client platform, and receives a file description image from a server connected with the normal client platform.

Description

コンピュータをカスタマイズする能力は、プラットフォームの重要な機能である。一般的に、カスタマイズとは、コンピュータの設定を変更して特定のユーザに合わせることを含む。例えば、パソコン(PC)は、背景画像を変えること、テキストフォントを選ぶこと、または、オペレーティングシステムのカラースキームによってカスタマイズされうる。PCが異なるユーザによって共有される場合、個々のユーザは、それらの基本的な個人設定をPCのユーザアカウント内に記憶させうる。その後、ログインすることによって、それらの設定にアクセスしうる。   The ability to customize a computer is an important feature of the platform. In general, customization includes changing computer settings to suit a particular user. For example, a personal computer (PC) can be customized by changing the background image, choosing a text font, or operating system color scheme. If the PC is shared by different users, the individual users can store their basic personal settings in the PC's user account. You can then access those settings by logging in.

添付の図面において本願明細書中に記載される発明が例示されるが、限定を意図しない。説明を簡潔かつ明確にすべく、図面中に示される構成要素は、必ずしも同じ尺度で描かれていない。例えば、いくつかの構成要素の寸法は、わかりやすくするために他の要素に比べて誇張されうる。さらに、適切だとみなされる場合は、図面を通じて参照符号が繰り返し用いられ、対応するかまたは同様の構成要素を示す。   The invention described herein is illustrated in the accompanying drawings, but is not intended to be limiting. For simplicity and clarity of illustration, components shown in the drawings are not necessarily drawn to scale. For example, the dimensions of some components may be exaggerated relative to other elements for clarity. Further, where considered appropriate, reference numerals are repeated throughout the drawings to indicate corresponding or analogous elements.

サーバプラットフォーム、および、サーバプラットフォームと接続する複数のクライアントプラットフォームを有するネットワーク環境の一実施形態を示す。1 illustrates one embodiment of a network environment having a server platform and a plurality of client platforms connected to the server platform.

ネットワーク環境における通常のクライアントプラットフォーム、モデルクライアントプラットフォーム、および、サーバプラットフォームの構造の一例を示す。An example of the structure of the normal client platform in a network environment, a model client platform, and a server platform is shown.

複数のブロックに分割される記憶装置の一実施形態を示す。1 illustrates one embodiment of a storage device that is divided into a plurality of blocks.

増分ファイルイメージおよび増分ファイル記述イメージの一実施形態を示す。Fig. 4 illustrates an embodiment of an incremental file image and an incremental file description image.

モデルクライアントプラットフォームにより生成されたモデルブロックビットマップの一実施形態を示す。Fig. 4 illustrates one embodiment of a model block bitmap generated by a model client platform.

通常のクライアントプラットフォームにより生成された通常のブロックビットマップの一実施形態を示す。FIG. 4 illustrates one embodiment of a regular block bitmap generated by a regular client platform.

モデルクライアントプラットフォームをインストールする方法の一実施形態を示す。Fig. 4 illustrates one embodiment of a method for installing a model client platform.

通常のクライアントプラットフォームを初期化する一実施形態を示す。Fig. 4 illustrates an embodiment for initializing a normal client platform.

通常のクライアントプラットフォームにおいて入出力要求を処理する一実施形態を示す。Fig. 4 illustrates an embodiment for processing an I / O request in a normal client platform.

ネットワーク環境におけるクライアントプラットフォームのクライアントのための記憶装置空間をセーブする一実施形態を示す。FIG. 6 illustrates one embodiment of saving storage space for a client of a client platform in a network environment. FIG.

一般のプラットフォームの一実施形態を示す。1 illustrates one embodiment of a general platform.

以下にネットワーク環境におけるスペースをカスタマイズする技術を説明する。以下の説明では、本発明の完全なる理解をさらに深めるべく、論理実装、擬似コード、オペランドを特定する手段、リソース区分/共有/複製の実装、システムコンポーネントのタイプおよび相互関連性、および、論理区分/統合の選択など、多数の特定の詳細が記載される。しかしながら、本発明は、そのような特定の詳細がなくとも実施されうる。他の例では、本発明をあいまいにすることを避けるべく、制御構造、ゲートレベル回路、および、完全なソフトウェア命令シーケンスは詳細に示されていない。記載を読んだ当業者であれば、何度も実験を繰り返さなくても適切な機能を実装できるであろう。   A technique for customizing a space in a network environment is described below. In the following description, a logical implementation, pseudocode, means for identifying operands, resource partitioning / sharing / duplication implementation, system component types and interrelationships, and logical partitioning to further enhance a full understanding of the present invention A number of specific details are described, such as the choice of integration. However, the present invention may be practiced without such specific details. In other instances, control structures, gate level circuits, and complete software instruction sequences have not been shown in detail in order to avoid obscuring the present invention. Those skilled in the art who have read the description will be able to implement appropriate functions without having to repeat experiments.

明細書中に用いられる「1つの実施形態」、「一実施形態」、「一例」などは、説明される実施形態が特定の特徴、構造、または、特性を含みうるが、必ずしもその特定の特徴、構造、または、特性を含まなくてもよいことを示す。また、このような言い方は、必ずしも同じ実施形態を指すわけではない。さらに、特定の特徴、構造、または、特性が一実施形態に関連して記載された場合、他の実施形態に関連するそのような特徴、構造、または、特性にも、明確に記載されているか否かを問わず有効であることが当業者には明らかであろう。   As used herein, "one embodiment", "one embodiment", "one example", etc., although the described embodiment may include a particular feature, structure, or characteristic, is not necessarily that particular feature , Structure or property may not be included. Moreover, such phrases are not necessarily referring to the same embodiment. In addition, if a particular feature, structure, or characteristic is described in connection with one embodiment, is it also explicitly stated in such feature, structure, or characteristic in relation to the other embodiment It will be apparent to those skilled in the art whether it is effective or not.

本発明の実施形態は、ハードウェア、ファームウェア、ソフトウェア、または、それらのいかなる組合せでも実装されうる。本発明の実施形態は、機械可読媒体に格納される命令としても実装されてよく、当該命令は、1つ以上のプロセッサにより読み取られて実行されうる。機械可読媒体は、機械(コンピュータなど)によって読み取り可能な形式で情報を格納または伝送するいかなる機構も含みうる。例えば、機械可読媒体は、ROM(リードオンリーメモリ)、RAM(ランダムアクセスメモリ)、磁気記憶装置の記憶媒体、光記憶媒体、フラッシュメモリデバイス、電気、光、音響、または、他の形式の伝播信号(例えば、搬送波、赤外線信号、デジタル信号など)他を含みうる。   Embodiments of the invention may be implemented in hardware, firmware, software, or any combination thereof. Embodiments of the invention may also be implemented as instructions stored on a machine-readable medium, which may be read and executed by one or more processors. A machine-readable medium may include any mechanism for storing or transmitting information in a form readable by a machine (such as a computer). For example, a machine readable medium may be a ROM (Read Only Memory), a RAM (Random Access Memory), a magnetic storage device storage medium, an optical storage medium, a flash memory device, an electrical, optical, acoustic, or other form of propagated signal Others (eg, carrier wave, infrared signal, digital signal, etc.) may be included.

図1にネットワーク環境10の一実施形態が示される。ネットワーク環境10は、サーバプラットフォーム12と、イーサネット(登録商標)、ファイバーチャンネル、または、他の通信リンクなどのネットワーク13を介してサーバプラットフォーム12と接続する複数のクライアントプラットフォーム11−11とを有してよい。本実施形態では、ネットワーク環境10は、いかなる数のクライアントプラットフォームおよびサーバプラットフォームを有してもよい。 An embodiment of a network environment 10 is shown in FIG. The network environment 10 includes a server platform 12 and a plurality of client platforms 11 1 to 11 N connected to the server platform 12 via a network 13 such as Ethernet (registered trademark), Fiber Channel, or other communication link. You can do it. In this embodiment, the network environment 10 may have any number of client platforms and server platforms.

ネットワーク環境10は、それぞれのカスタマイズされた必要条件を満たすべく、異なるグループのクライアントに異なるコンテンツを提供してよい。例えば、若い学生は、教育的なコンテンツが必要かもしれないし、大人は、娯楽的なコンテンツを好むかもしれない。これらのニーズに応えるべく、各クライアントプラットフォーム11−11は、オペレーティングシステム、および、または、オペレーティングシステム上で動作するベースソフトウェアアプリケーションなどのベースソフトウェアイメージ、および/または、おそらく他のソフトウェアイメージもインストールされうる。 The network environment 10 may provide different content to different groups of clients to meet their customized requirements. For example, young students may need educational content and adults may prefer entertainment content. To meet these needs, the client platform 11 1 -11 N are operating systems, and, or, the base software image including based software application that runs on an operating system, and / or, perhaps even other software image installation Can be done.

クライアントプラットフォームの1つ(クライアントプラットフォーム11など)は、ベースファイルとは異ってよい増分ソフトウェアイメージがインストールされるモデルクライアントプラットフォームとして選択されうる。例えば、増分ファイルは、カスタマイズされたサービスをクライアントの特定のグループ(若い学生など)に提供しうるプログラム(教育的コンテンツなど)を含みうる。他の例では、増分ファイルは、ベースファイルのアップデートバージョンであってよい。その後、モデルクライアントプラットフォームは、増分ソフトウェアイメージと、サーバにアップロードされるそれらの記述情報とを含む増分パッケージを生成しうる。増分パッケージは、増分ソフトウェアイメージを格納するブロックを説明するブロック記述をさらに含んでよい。一実施形態では、ブロック記述は、モデルプラットフォームの記憶装置におけるブロックの位置を含みうる。 One client platform (such as client platform 11 1), the base file may be selected as a model client platform that good incremental software image I different is installed. For example, the incremental file may include a program (such as educational content) that may provide customized services to a particular group of clients (such as young students). In other examples, the incremental file may be an updated version of the base file. The model client platform can then generate an incremental package that includes the incremental software images and their descriptive information uploaded to the server. The incremental package may further include a block description that describes the block that stores the incremental software image. In one embodiment, the block description may include the location of the block in the model platform storage.

モデルクライアントプラットフォームは、記憶装置のブロックに格納された増分ソフトウェアイメージがサーバから入手可能であるかどうかを示す情報をさらに生成し、当該情報をサーバ12にアップロードしてよい。一実施形態では、情報は、モデルクライアントプラットフォームの記憶装置の各ブロックの使用状況を示すモデルブロックビットマップでありうる。   The model client platform may further generate information indicating whether incremental software images stored in the storage device block are available from the server and upload the information to the server 12. In one embodiment, the information may be a model block bitmap that indicates the usage of each block of the model client platform storage.

上記構成は、ネットワーク環境10における通常のクライアントプラットフォーム(クライアントプラットフォーム11)を実現しうる。当該クライアントプラットフォームは、予め増分ソフトウェアイメージがインストールされておらず、クライアントからの要求に応じてサーバから増分ソフトウェアイメージをダウンロードすることにより、そのグループのクライアントにカスタマイズされたコンテンツを提供する。 The above configuration can realize a normal client platform (client platform 11 2 ) in the network environment 10. The client platform does not have the incremental software image installed in advance, and provides customized content to the group of clients by downloading the incremental software image from the server in response to a request from the client.

ネットワーク環境10におけるモデルクライアントプラットフォーム(例えばクライアントプラットフォーム11)、通常のクライアントプラットフォーム(例えばクライアントプラットフォーム11)、および、サーバプラットフォーム12の構造の一実施形態が図2に示される。 One embodiment of the structure of a model client platform (eg, client platform 11 1 ), normal client platform (eg, client platform 11 2 ), and server platform 12 in network environment 10 is shown in FIG.

図に示すように、モデルクライアントプラットフォーム(例えばクライアントプラットフォーム11)は、ハードウェアマシン20と、ハードウェアマシン20上で動作するファームウェア21と、オペレーティングシステム22およびアプリケーション23を含む、ファームウェア21の上で動作するソフトウェアイメージとを含みうる。 As shown, the model client platform (e.g., client platform 11 1 ) includes a hardware machine 20, a firmware 21 that runs on the hardware machine 20, an operating system 22, and an application 23. Software images that operate.

ハードウェアマシン20は、1つ以上のプロセッサ201、メモリ202、記憶装置203、および、ネットワークインターフェース204などをさらに含みうる。記憶装置203は、クライアントプラットフォーム内にある内部記憶装置(ハードディスクなど)、および、クライアントプラットフォームの外にある外部記憶装置(フロッピー(登録商標)ディスク、光ディスクなど)を含みうる。本実施形態では、記憶装置203は、データ記憶のための複数のブロックに分割されてよい。   The hardware machine 20 may further include one or more processors 201, a memory 202, a storage device 203, a network interface 204, and the like. The storage device 203 can include an internal storage device (such as a hard disk) within the client platform and an external storage device (floppy (registered trademark) disk, optical disk, etc.) external to the client platform. In the present embodiment, the storage device 203 may be divided into a plurality of blocks for data storage.

ファームウェア21は、システムスタートアップの間にプラットフォームが実行するBIOS(バイオス)ルーチン210、および、ファームウェア21とオペレーティングシステム22との間のインターフェースとなるEFI(拡張ファームウェアインターフェース)ルーチン211を格納し、オペレーティングシステム22をブートする標準環境を提供しうる。オペレーティングシステム22は、クライアントプラットフォームが実行するタスクを制御し、システム資源を管理してパフォーマンスを最適化しうる。オペレーティングシステム22は、ファイルおよびディクショナリのトラックを記憶装置203に保持するなどの基本的なタスクを実行しうる。   The firmware 21 stores a BIOS (bios) routine 210 executed by the platform during system startup, and an EFI (extended firmware interface) routine 211 serving as an interface between the firmware 21 and the operating system 22. A standard environment for booting can be provided. The operating system 22 can control tasks performed by the client platform, manage system resources, and optimize performance. The operating system 22 may perform basic tasks such as keeping file and dictionary tracks in the storage device 203.

本実施形態には、ベースファイルおよび増分ファイルの2種類のファイルが存在しうる。ベースファイルは、オペレーティングシステム22のためのプログラム、および/または、データベースプログラム、ワードプロセッサ、スプレッドシートなどの基本アプリケーションのためのプログラムを含みうる。増分ファイルは、ベースファイルとは異なってよい。例えば、増分ファイルは、若い学生用の教育プログラム、または、大人用のゲームなど、クライアントのグループに合わせて設計されたプログラムを含みうる。オペレーティングシステム22は、アプリケーション23からの呼び出しを受信して、記憶装置203から/にファイルを読み書きするI/Oハンドラ220、ファイルのトラックを整理して記憶装置203に保持するファイルシステム221、および、記憶装置203から/にファイルを出入力するドライバ222を有しうる。ドライバ222は、記憶装置のベースファイルが破壊されないようにするための記憶装置保護(SUP)ドライバ2220をさらに有しうる。   In this embodiment, there can be two types of files: a base file and an incremental file. The base file may include programs for the operating system 22 and / or programs for basic applications such as database programs, word processors, spreadsheets, and the like. The incremental file may be different from the base file. For example, the incremental file may include a program designed for a group of clients, such as an educational program for young students or a game for adults. The operating system 22 receives a call from the application 23, reads / writes a file to / from the storage device 203, a file system 221 that organizes a track of the file and holds the file in the storage device 203, and A driver 222 for inputting / outputting a file from / to the storage device 203 may be included. The driver 222 may further include a storage device protection (SUP) driver 2220 to prevent the storage device base file from being destroyed.

アプリケーション23は、オペレーティングシステム22により提供されるソフトウェアプラットフォーム内で動作し、ユーザとのやりとりのためのユーザインターフェース230を提供するソフトウェアプログラムを含みうる。   The application 23 may include a software program that runs within a software platform provided by the operating system 22 and provides a user interface 230 for user interaction.

通常のクライアントプラットフォーム(例えばクライアントプラットフォーム11)は、ハードウェアマシン24、ハードウェアマシン24の上で動作するファームウェア25、および、オペレーティングシステム26およびアプリケーション27を含む、ファームウェア25の上で動作するソフトウェアイメージを含みうる。 A typical client platform (e.g., client platform 11 2 ) is a hardware machine 24, firmware 25 that runs on the hardware machine 24, and a software image that runs on the firmware 25, including an operating system 26 and applications 27. Can be included.

通常のクライアントプラットフォームの構成は、通常のクライアントプラットフォームのオペレーティングシステム26がクライアントの要求に応じて記憶装置243またはサーバ12からファイルを読み出すための供給オンデマンド(POD)ドライバ2621をさらに含む以外は、モデルクライアントプラットフォームの構成と同様である。   The configuration of a normal client platform is a model except that the normal client platform operating system 26 further includes a supply on demand (POD) driver 2621 for reading files from the storage device 243 or the server 12 in response to a client request. The configuration is the same as that of the client platform.

サーバ12は、ハードウェアマシン120、アカウントサーバ121、パッケージサーバ122、および、イメージサーバ123を有しうる。ハードウェアマシン120は、1つ以上のプロセッサ1201、メモリ1202、記憶装置1203、ネットワークインターフェース1204などを有しうる。アカウントサーバ121は、クライアントプラットフォームから受信されたアカウント情報を確認しうる。パッケージサーバ122は、アカウントサーバ121からの確認結果に基づき、クライアントプラットフォームとの間で増分パッケージを送受信しうる。   The server 12 can include a hardware machine 120, an account server 121, a package server 122, and an image server 123. The hardware machine 120 may include one or more processors 1201, a memory 1202, a storage device 1203, a network interface 1204, and the like. The account server 121 can confirm the account information received from the client platform. The package server 122 can send and receive incremental packages to and from the client platform based on the confirmation result from the account server 121.

カスタマイズされたサービスをクライアントのグループに提供すべく、プレインストール期間において、オペレーティングシステムおよび/または基本アプリケーションを含むベースファイルが各クライアントプラットフォームの記憶装置にプレインストールされてよい。しかしながら、ベースファイルは、他の方法でインストールされてもかまわない。例えば、ベースファイルは、モデルクライアントプラットフォームの記憶装置203にプレインストールされてもよい。その後、モデルクライアントプラットフォームのEFI221は、ベースファイル、および、ベースファイル記述(ファイル名、ファイルサイズ、および、ファイル構成など)を含むベースパッケージを生成し、当該ベースパッケージをサーバ12のイメージサーバ123にアップロードしてよい。   In order to provide a customized service to a group of clients, a base file containing an operating system and / or basic application may be pre-installed on the storage device of each client platform during a pre-install period. However, the base file may be installed in other ways. For example, the base file may be preinstalled in the storage device 203 of the model client platform. Thereafter, the EFI 221 of the model client platform generates a base package including a base file and a base file description (file name, file size, file structure, etc.), and uploads the base package to the image server 123 of the server 12. You can do it.

ベースパッケージは、モデルクライアントプラットフォームの記憶装置203内のブロックの位置など、ベースファイルを格納するブロックの説明をするブロック記述をさらに含みうる。そして、イメージサーバ123は、プレインストール期間において他のクライアントプラットフォームのそれぞれにベースパッケージをダウンロードすることにより、他のクライアントプラットフォームのそれぞれは、モデルクライアントプラットフォームと同じブロック位置にベースファイルをプレインストールしうる。   The base package may further include a block description that describes the block that stores the base file, such as the location of the block in the storage device 203 of the model client platform. Then, the image server 123 downloads the base package to each of the other client platforms during the preinstall period, so that each of the other client platforms can preinstall the base file at the same block position as the model client platform.

教育的な素材またはゲームなどの、クライアントのグループに合わせて設計された増分ファイルは、モデルクライアントプラットフォームの記憶装置203にインストールされうる。インストール中、SUPドライバ2220は、ベースファイルが破壊されないように、ベースファイルが使用しない記憶装置203のブロックに増分ファイルを導く。SUPドライバ2220は、さらに、増分ファイルがベースファイルのアップデートバージョンかどうかを決定し、増分ファイルがアップデートされたベースファイルである場合、増分ファイルを格納するブロックを、ベースファイルを格納するブロックにマップすることを示すマッピング情報を記録してよい。   Incremental files designed for a group of clients, such as educational material or games, may be installed in the model client platform storage 203. During installation, the SUP driver 2220 directs the incremental file to a block of the storage device 203 that the base file does not use so that the base file is not destroyed. The SUP driver 2220 further determines whether the incremental file is an updated version of the base file, and if the incremental file is an updated base file, maps the block storing the incremental file to the block storing the base file. Mapping information indicating this may be recorded.

そして、EFI211は、増分ファイル、および、入手可能なマッピング情報に基づき、増分パッケージを生成しうる。増分パッケージは、サーバにアップロードされてよい。パッケージは、増分ファイルのコンテンツを有する増分ファイルイメージ、および、増分ファイルのファイル記述を有する増分ファイル記述イメージを含みうる。ファイル記述の例は、ファイル名、ファイルサイズ、および、ファイル構成(ファイルシステムのツリー構造など)を含みうる。本実施形態では、ファイル記述は、記憶装置203内のブロック位置など、増分ファイルを格納しうる記憶装置203のブロックについての情報をさらに含んでよい。EFI211は、さらに、記憶装置203の各ブロックの使用状況を示すモデルブロックビットマップを生成し、当該モデルブロックビットマップをサーバ12にアップロードしうる。   The EFI 211 may then generate an incremental package based on the incremental file and the available mapping information. Incremental packages may be uploaded to the server. The package may include an incremental file image having the contents of the incremental file and an incremental file description image having a file description of the incremental file. Examples of file descriptions may include file name, file size, and file structure (such as a file system tree structure). In this embodiment, the file description may further include information about blocks of the storage device 203 that can store incremental files, such as block locations within the storage device 203. The EFI 211 may further generate a model block bitmap indicating the usage status of each block in the storage device 203 and upload the model block bitmap to the server 12.

図3Aは、例えば、ブロック1....ブロックnなどの複数のブロックに分割されている記憶装置203の一実施形態を示す。   FIG. 3A shows, for example, blocks 1. 1 illustrates one embodiment of a storage device 203 that is divided into a plurality of blocks, such as block n.

図3Bは、増分ファイルイメージ301、および、増分ファイル記述イメージ302を有する増分パッケージ300の一実施形態を示す。増分ファイルイメージ301は、複数のエントリを有してよく、複数のエントリのそれぞれは、記憶装置203の1ブロックに対応する。増分ファイルイメージ301の各エントリは、2つの部分を含んでよく、1つは、ブロック内に格納された増分ファイルのコンテンツであり、もう1つは、当該ブロックに関連する記述情報である。   FIG. 3B illustrates one embodiment of an incremental package 300 having an incremental file image 301 and an incremental file description image 302. The incremental file image 301 may have a plurality of entries, and each of the plurality of entries corresponds to one block of the storage device 203. Each entry of the incremental file image 301 may include two parts, one is the contents of the incremental file stored in the block, and the other is descriptive information associated with the block.

例えば、増分ファイルイメージ301のエントリ1は、記憶装置203のブロック1に格納された増分ファイル1のコンテンツと、ブロック1に関する記述情報(例えば、記憶装置203内のブロック位置)とを含みうる。記憶のための複数のブロックを要しうる増分ファイルについては、それに対応する増分ファイルイメージは、複数のエントリを含みうる。   For example, entry 1 of incremental file image 301 may include the contents of incremental file 1 stored in block 1 of storage device 203 and descriptive information about block 1 (eg, block location in storage device 203). For incremental files that may require multiple blocks for storage, the corresponding incremental file image may include multiple entries.

同様に、増分ファイル記述イメージ302は、複数のエントリを有してよく、複数のエントリのそれぞれは、記憶装置203の1ブロックに対応する。増分ファイル記述イメージ302の各エントリは、2つの部分を有してよく、1つは、ブロック内に格納されたファイル記述情報であり、もう1つは、当該ブロックに関連する記述情報である。   Similarly, the incremental file description image 302 may have a plurality of entries, and each of the plurality of entries corresponds to one block of the storage device 203. Each entry of the incremental file description image 302 may have two parts, one is file description information stored in the block and the other is description information related to the block.

例えば、増分ファイル記述イメージ302のエントリ1'は、記憶装置203のブロック20に格納されたファイル記述情報と、ブロック20に関するブロック記述情報(例えば、記憶装置203内のブロック位置)とを含みうる。上述のごとく、ファイル記述情報は、ファイル名、ファイルサイズ、ファイル構成、および、増分ファイルを格納する記憶装置203のブロック(例えば増分ファイル1および2を格納するブロック4、5、10)などの増分ファイル(例えば増分ファイル1および2)に関する記述情報を含みうる。   For example, the entry 1 ′ of the incremental file description image 302 may include file description information stored in the block 20 of the storage device 203 and block description information regarding the block 20 (for example, a block position in the storage device 203). As described above, the file description information includes the file name, file size, file structure, and increment such as the block of the storage device 203 that stores the incremental file (eg, blocks 4, 5, and 10 that store the incremental files 1 and 2). Descriptive information about the files (eg, incremental files 1 and 2) may be included.

図3Cは、モデルブロックビットマップの一実施形態を示し、ビットマップの各ビットは、記憶装置203の各ブロックに対応し、ビット'1'またはビット'0'は、対応するブロックが用いられていること、および、用いられてないことを表してよい。しかしながら、モデルブロックビットマップには他の技術も適用しうることを理解されたい。例えば、モデルブロックビットマップは、記憶装置203の各ブロックに格納されたコンテンツがサーバにアップロードされているかどうかを示してよい。その場合、ビット'1'またはビット'0'は、対応するブロックのコンテンツがアップロードされていること、および、アップロードされていないことを表してよい。   FIG. 3C illustrates one embodiment of a model block bitmap, where each bit of the bitmap corresponds to each block of storage device 203, and bit '1' or bit '0' is the corresponding block used. It may represent that it is present and not used. However, it should be understood that other techniques may be applied to the model block bitmap. For example, the model block bitmap may indicate whether the content stored in each block of the storage device 203 has been uploaded to the server. In that case, bit '1' or bit '0' may indicate that the content of the corresponding block has been uploaded and has not been uploaded.

再び図2を参照すると、グループの中の1クライアント(例えば若い学生)がベースファイルをプレインストールしている通常のクライアントプラットフォームにログオンすると、EFI251は、ユーザインターフェース270を介してクライアントにより入力されたアカウント情報を受信しうる。その後、アカウント情報は、プラットフォームの初期化中、オペレーティングシステム26をブートする前に確認のためにアカウントサーバ121に送られてよい。   Referring back to FIG. 2, when one client (eg, a young student) in the group logs on to a regular client platform that has pre-installed base files, the EFI 251 may receive an account entered by the client via the user interface 270. Information can be received. The account information may then be sent to the account server 121 for verification prior to booting the operating system 26 during platform initialization.

確認後、アカウントサーバ121は、パッケージサーバ122を起動してアカウント情報と一致するモデルブロックビットマップをEFI251に送信してよい。モデルブロックビットマップは、モデルクライアントプラットフォームの記憶装置203の各ブロックの使用状況を示すモデルクライアントプラットフォームのEFI211により提供されうる。EFI251は、通常のクライアントプラットフォームの記憶装置243の各ブロックの使用状況を示す通常のブロックビットマップをさらに生成しうる。   After the confirmation, the account server 121 may activate the package server 122 and send a model block bitmap that matches the account information to the EFI 251. The model block bitmap can be provided by the EFI 211 of the model client platform indicating the usage status of each block of the storage device 203 of the model client platform. The EFI 251 may further generate a normal block bitmap indicating the usage status of each block of the storage device 243 of the normal client platform.

図3Dは、通常のブロックビットマップ304の一実施形態を示す。図に示すように、記憶装置243のブロック1から3は、通常のクライアントプラットフォームのプレインストール時にベースファイルを格納するために用いられうる。   FIG. 3D illustrates one embodiment of a regular block bitmap 304. As shown, blocks 1 through 3 of storage device 243 may be used to store base files during normal client platform pre-installation.

通常のクライアントプラットフォーム内でオペレーティングシステム26がブートアップされ、SUPドライバ2620およびPODドライバ2621を含むドライバ262がセットアップされた後、パッケージサーバ121は、クライアントに合わせて設計された増分ファイル記述イメージをPODドライバ2621に送信してよい。PODドライバ2621は、増分ファイル記述イメージからファイル記述情報およびブロック記述情報を取り出してよい。PODドライバ2621は、ブロック記述情報に記載されたブロック位置についてのファイル記述情報を格納し、EFI251から取り出された通常のブロックビットマップをアップデートしてよい。通常のブロックビットマップは、増分ファイル記述情報を格納する記憶装置243のブロックが用いられることを示すことによりアップデートされうる。   After the operating system 26 is booted up and the driver 262 including the SUP driver 2620 and the POD driver 2621 is set up in a normal client platform, the package server 121 transmits an incremental file description image designed for the client to the POD driver. 2621 may be transmitted. The POD driver 2621 may extract file description information and block description information from the incremental file description image. The POD driver 2621 may store file description information about the block position described in the block description information, and update a normal block bitmap extracted from the EFI 251. The normal block bitmap may be updated by indicating that a block of storage 243 that stores incremental file description information is used.

サーバ12から読み出された増分ファイル記述情報、および、他の情報(例えばベースファイル記述情報)を利用することにより、オペレーティングシステム26は、ファイル構成を表すファイルシステム261を構築しうる。本実施形態では、ファイルシステム261は、ファイル、特に増分ファイルに対応するブロックに関する情報をさらに表してよい。増分ファイルのコンテンツが通常のプラットフォームの記憶装置243にインストールされていなくても、オペレーティングシステム26が増分ファイルおよび/またはベースファイルのアイコンをユーザインターフェース270のスクリーンに提示する手助けをファイルシステム261がしうる。例えば、ユーザスインターフェース270は、若い学生にはEラーンニング(e−class)のアイコンを、または、大人にはゲームのアイコンを提示しうる。   By using the incremental file description information read from the server 12 and other information (for example, base file description information), the operating system 26 can construct a file system 261 representing the file structure. In this embodiment, the file system 261 may further represent information regarding files, particularly blocks corresponding to incremental files. The file system 261 may help the operating system 26 present the incremental file and / or base file icons on the screen of the user interface 270 even if the contents of the incremental file are not installed in the normal platform storage 243. . For example, the user interface 270 may present an e-class icon for young students or a game icon for adults.

ユーザインターフェース270上のファイルアイコンをクリックすることによりクライアントがファイルを開くと、I/Oハンドラ260がユーザインターフェース270からのI/O呼び出しを受信し、ファイルシステム261は、記憶装置243のどのブロックが選択されたファイルに対応しうるかを分析してよい。PODドライバ2621は、通常のブロックビットマップを参照することにより、選択されたファイルが記憶装置243に格納されているかどうかを決定してよい。対応するブロックが用いられていることを通常のブロックビットマップが示す場合、PODドライバ2621は、記憶装置243のブロックからファイルを読み出し、当該ファイルをユーザインターフェース270に出力してよい。しかしながら、対応するブロックが用いられていないことを通常のブロックビットマップが示す場合は、PODドライバ2621は、モデルブロックビットマップを参照することにより、選択されたファイルがサーバ12から入手可能かどうかを決定しうる。例えば、対応するブロックがモデルブロックビットマップ内で用いられていると示されるということは、選択されたファイルがサーバから入手可能であることを表しうる。   When a client opens a file by clicking a file icon on the user interface 270, the I / O handler 260 receives an I / O call from the user interface 270, and the file system 261 determines which block of the storage device 243 It may be analyzed whether it can correspond to the selected file. The POD driver 2621 may determine whether the selected file is stored in the storage device 243 by referring to a normal block bitmap. When the normal block bitmap indicates that the corresponding block is used, the POD driver 2621 may read the file from the block of the storage device 243 and output the file to the user interface 270. However, if the normal block bitmap indicates that the corresponding block is not being used, the POD driver 2621 refers to the model block bitmap to determine whether the selected file is available from the server 12. Can be determined. For example, indicating that the corresponding block is used in the model block bitmap may indicate that the selected file is available from the server.

選択されたファイルがサーバ12から入手可能であるとの決定に応じて、PODドライバ2621は、選択されたファイルをサーバ12にダウンロードする要求を送信する。パッケージサーバ122は、選択されたファイルを格納する増分ファイルイメージのエントリを読み出し、当該増分ファイルイメージのエントリをPODドライバ2621にダウンロードすることにより、PODドライバ2621は、増分ファイルイメージのエントリから取り出されたファイルを記憶装置243の対応するブロックに格納し、対応するブロックが用いられていることを示すことによって、通常のブロックビットマップをアップデートしてよい。最後に、PODドライバ2621は、選択されたファイルをユーザインターフェース270に出力してよい。   In response to determining that the selected file is available from the server 12, the POD driver 2621 sends a request to download the selected file to the server 12. The package server 122 reads the incremental file image entry storing the selected file and downloads the incremental file image entry to the POD driver 2621 so that the POD driver 2621 is retrieved from the incremental file image entry. The normal block bitmap may be updated by storing the file in a corresponding block of the storage device 243 and indicating that the corresponding block is being used. Finally, the POD driver 2621 may output the selected file to the user interface 270.

新しいファイルを記憶装置243にダウンロードすることをクライアントが選択する場合、SUPドライバ2620は、ベースファイルを保護すべく、当該ベースファイルが用いない記憶装置243のブロックに新しいファイルを格納してよい。SUPドライバ2620は、新しいファイルがベースファイルのアップデートバージョンかどうかをさらに決定してよい。新しいファイルがアップデートされたベースファイルである場合、SUPドライバ2620は、新しいファイルを格納するブロックを、ベースファイルを格納するブロックにマップするためのマッピング情報を記録しうる。   If the client chooses to download a new file to the storage device 243, the SUP driver 2620 may store the new file in a block of the storage device 243 that is not used by the base file to protect the base file. The SUP driver 2620 may further determine whether the new file is an updated version of the base file. If the new file is an updated base file, the SUP driver 2620 may record mapping information for mapping the block storing the new file to the block storing the base file.

ログオフ前に、クライアントが現在の記憶装置構成をセーブすると決めた場合、通常のクライアントプラットフォームは、リブートし、EFI251は、通常のクライアントプラットフォームの記憶装置243に格納された増分ファイル、および/または、マッピング情報に基づき、増分パッケージを生成し、当該増分パッケージをサーバ12にアップロードしてよい。EFI251が通常のブロックビットマップをサーバにさらにアップロードすることにより、他の通常のクライアントプラットフォームにクライアントがログオンした場合に、同じ記憶装置環境を生成すべく、サーバ12からダウンロードされた通常のブロックビットマップ、および、増分パッケージが用いられてよい。   If the client decides to save the current storage configuration before logging off, the normal client platform will reboot and the EFI 251 will store the incremental file and / or mapping stored in the normal client platform storage 243. Based on the information, an incremental package may be generated and the incremental package uploaded to the server 12. The normal block bitmap downloaded from the server 12 to create the same storage environment when the client logs on to another normal client platform by the EFI 251 further uploading the normal block bitmap to the server And incremental packages may be used.

他の実施形態は、図2に示されるような構造のための他の技術を実装しうる。例えば、クライアントの他のグループに合わせて設計された増分ファイルをインストールすべく、モデルプラットフォームがさらに用いられてよい。その場合、EFI211は、クライアントのそれぞれのグループに対して増分パッケージおよびブロックビットマップをそれぞれ生成してよい。他の例では、対応するファイル記述が通常のクライアントプラットフォームにプレインストールされていない場合、EFI211は、増分ファイル記述イメージをサーバ12にアップロードしなくてよい。さらに他の例では、モデルブロックビットマップは、省略されてよく、増分ファイルを格納するブロックに関する情報は、対応するブロックに格納された増分ファイルがサーバ12から入手可能かどうかを示すインジケータなどの増分ファイル記述イメージと統合されてよい。   Other embodiments may implement other techniques for the structure as shown in FIG. For example, the model platform may be further used to install incremental files designed for other groups of clients. In that case, the EFI 211 may generate an incremental package and a block bitmap, respectively, for each group of clients. In another example, the EFI 211 may not upload the incremental file description image to the server 12 if the corresponding file description is not pre-installed on the regular client platform. In yet another example, the model block bitmap may be omitted and the information about the block storing the incremental file is an increment such as an indicator that indicates whether the incremental file stored in the corresponding block is available from the server 12. May be integrated with the file description image.

図4は、モデルクライアントプラットフォームをインストールする方法の一実施形態を示す。図に示すように、ブロック401において、ITアドミニストレータまたは適切なデバイスが1つ以上のクライアントプラットフォーム11−11にベースファイルをインストールしてよい。ベースファイルは、オペレーティングシステム、および/または、任意の基本アプリケーションファイルを含みうる。 FIG. 4 illustrates one embodiment of a method for installing a model client platform. As shown, in block 401, IT administrator or appropriate device may be installed based files to one or more client platforms 11 1 -11 N. The base file may include an operating system and / or any basic application file.

ブロック402において、ITアドミニストレータ、または、適切なデバイスは、新しいクライアントのグループに合わせて設計された増分ファイルがモデルクライアントプラットフォームにインストールされたかどうかを決定しうる。インストールされたと決定された場合、ITアドミニストレータ、または、適切なデバイスは、ブロック403において、ネットワーク環境10から、1つのクライアントプラットフォームをモデルクライアントプラットフォームとして選択し、ブロック404において、そのクライアントのグループに合わせて設計された増分ファイルを決定し、ブロック405において、当該増分ファイルを、選択されたモデルクライアントプラットフォームの記憶装置にインストールしてよい。   At block 402, the IT administrator or appropriate device may determine whether an incremental file designed for a new group of clients has been installed on the model client platform. If it is determined that it has been installed, the IT administrator or appropriate device selects one client platform as the model client platform from the network environment 10 at block 403 and matches the group of clients at block 404. The designed incremental file may be determined, and at block 405, the incremental file may be installed on the storage device of the selected model client platform.

増分ファイルをインストールする一方で、ブロック406において、モデルクライアントプラットフォームのSUPドライバ2220は、増分ファイルがモデルクライアントプラットフォームの記憶装置にインストールされているベースファイルのアップデートバージョンであるかどうかを決定してよい。増分ファイルがアップデートされたベースファイルであることの決定に応じて、ブロック407において、SUPドライバは、ベースファイルが使用しないブロックに増分ファイルを格納し、当該増分ファイルを格納するブロックを、ベースファイルを格納するブロックにマップしてよい。その後、ブロック408において、EFI211は、増分ファイルイメージおよび増分ファイル記述イメージを含む増分パッケージと、モデルクライアントプラットフォームの記憶装置203のブロックの使用状況を示すモデルブロックビットマップとを生成してよい。最後に、ブロック409において、モデルクライアントプラットフォームのEFI211、または、他の適切なデバイスは、増分パッケージおよびモデルブロックビットマップをサーバ12にアップロードしてよい。   While installing the incremental file, at block 406, the model client platform SUP driver 2220 may determine whether the incremental file is an updated version of the base file installed in the model client platform storage. In response to determining that the incremental file is an updated base file, at block 407, the SUP driver stores the incremental file in a block that is not used by the base file, and replaces the block storing the incremental file with the base file. You may map to the block to store. Thereafter, at block 408, the EFI 211 may generate an incremental package that includes the incremental file image and the incremental file description image, and a model block bitmap that indicates the usage of the blocks of the model client platform storage 203. Finally, at block 409, the model client platform's EFI 211, or other suitable device, may upload the incremental package and model block bitmap to the server 12.

図5は、通常のクライアントプラットフォームを初期化する一実施形態を示す。ブロック501において、通常のクライアントプラットフォームが開始し、オペレーティングシステムをブートする前に、ファームウェアルーチンがBIOSプログラムを実行しうる。ブロック502において、EFI251は、ユーザインターフェース270を介して、アカウント情報を入力するようクライアントを促してよい。その後、ブロック503において、EFI251がアカウント情報をサーバ12に送信することにより、アカウントサーバ121は、アカウント情報を確認しうる。ブロック504において、確認に応じて、パッケージサーバ122は、アカウント情報と一致するモデルブロックビットマップをEFI251に送信してよい。モデルブロックビットマップは、クライアントに合わせて設計された増分ファイルがインストールされたモデルクライアントプラットフォームによって生成されてよい。   FIG. 5 illustrates one embodiment for initializing a normal client platform. In block 501, the firmware routine may execute the BIOS program before the normal client platform starts and boots the operating system. At block 502, the EFI 251 may prompt the client to enter account information via the user interface 270. Thereafter, in block 503, the account server 121 may confirm the account information by the EFI 251 sending the account information to the server 12. At block 504, in response to confirmation, the package server 122 may send a model block bitmap that matches the account information to the EFI 251. The model block bitmap may be generated by a model client platform with an incremental file designed for the client installed.

ブロック505において、EFI251は、通常のクライアントプラットフォームの記憶装置243のブロックの使用状況を示す通常のブロックビットマップを生成してよい。その後、ブロック506におぃて、オペレーティングシステム26がブートされ、SUPドライバ2620およびPODドライバ2621を含むドライバがセットアップされる。ブロック507において、パッケージサーバ122は、モデルクライアントプラットフォームによりアップロードされた増分ファイル記述イメージをPODドライバ2621に送信してよい。当該増分ファイル記述イメージは、増分ファイルに関する記述情報、および、モデルプラットフォームにおける増分ファイルを格納するブロックに関するブロック記述を含んでよい。   At block 505, the EFI 251 may generate a normal block bitmap that indicates the block usage of the normal client platform storage 243. Thereafter, at block 506, operating system 26 is booted and drivers including SUP driver 2620 and POD driver 2621 are set up. In block 507, the package server 122 may send the incremental file description image uploaded by the model client platform to the POD driver 2621. The incremental file description image may include descriptive information regarding the incremental file and a block description regarding the block storing the incremental file in the model platform.

その後、ブロック508において、増分ファイルが通常のクライアントプラットフォームに実際にはロードされていない場合でも、通常のクライアントプラットフォームのオペレーティングシステム26は、増分ファイル記述イメージを利用することによってファイルシステムをセットアップし、増分ファイルのアイコンをユーザインターフェース270に表示しうる。   Thereafter, in block 508, the normal client platform operating system 26 sets up the file system by utilizing the incremental file description image, even if the incremental file is not actually loaded on the normal client platform. A file icon may be displayed on the user interface 270.

図6は、通常のクライアントプラットフォームにより入出力要求を処理する一実施形態を示す。ブロック601において、通常のクライアントプラットフォームのI/Oハンドラ260は、I/O要求を受信して、記憶装置243から/にファイルを読み書きしてよい。ブロック602において、I/Oハンドラ260は、要求が読み取り要求か書き込み要求かを決定しうる。読み取り要求の場合、I/Oハンドラ260は、要求をPODドライバ2621へと転送する。その後、ブロック603において、PODドライバ2621は、ファイルシステム261を用いて、要求されたファイルをチェックすることにより、ファイルを格納するブロックに関する情報などのファイル関連情報を見つけうる。   FIG. 6 illustrates one embodiment of processing an I / O request by a normal client platform. In block 601, the normal client platform I / O handler 260 may receive an I / O request and read / write a file to / from the storage device 243. At block 602, the I / O handler 260 may determine whether the request is a read request or a write request. In the case of a read request, the I / O handler 260 transfers the request to the POD driver 2621. Thereafter, at block 603, the POD driver 2621 may find file related information, such as information about the block storing the file, by using the file system 261 to check the requested file.

ブロック604において、PODドライバ2621は、EFI251から読み出された通常のブロックビットマップを参照することにより、要求されたファイルが記憶装置243のブロックにすでにロードされているかどうかを決定してよい。ファイルが記憶装置243のブロックにロードされている場合、PODドライバ2621は、記憶装置243からファイルを読み取ってユーザインターフェース270に出力し、I/O要求を終了してよい。ファイルが記憶装置243のブロックにロードされていない場合、PODドライバ2621は、モデルブロックビットマップを参照することにより、要求されたファイルがサーバ12から入手可能かどうかを決定しうる。   At block 604, the POD driver 2621 may determine whether the requested file has already been loaded into the block of the storage device 243 by referring to the normal block bitmap read from the EFI 251. If the file is loaded into a block of the storage device 243, the POD driver 2621 may read the file from the storage device 243 and output it to the user interface 270 to end the I / O request. If the file is not loaded into a block of storage device 243, POD driver 2621 may determine whether the requested file is available from server 12 by referring to the model block bitmap.

要求されたファイルがサーバ12から入手可能であるという決定に応じて、PODドライバ2621は、ファイルイメージのダウンロード要求をサーバ12に送信してよく、パッケージサーバ122は、要求されたファイルを有する増分ファイルイメージのエントリを見つけ、当該増分ファイルイメージのエントリをPODドライバ2621に送信してよい。その後、PODドライバ2621は、ブロック606において、増分ファイルイメージエントリからファイルを読み出し、ブロック607において、当該ファイルを記憶装置243の対応するブロックにロードしてよい。ブロック608において、PODドライバ2621は、要求されたファイルを格納するブロックが用いられていることを示すことにより、通常のブロックビットマップをアップデートしてよい。ブロック609において、PODドライバ2621は、ファイルをユーザインターフェース270に出力し、I/O要求を終了してよい。   In response to determining that the requested file is available from server 12, POD driver 2621 may send a file image download request to server 12, and package server 122 may increment the file with the requested file. The image entry may be found and the incremental file image entry sent to the POD driver 2621. The POD driver 2621 may then read the file from the incremental file image entry at block 606 and load the file into the corresponding block of the storage device 243 at block 607. At block 608, the POD driver 2621 may update the normal block bitmap by indicating that the block storing the requested file is being used. In block 609, the POD driver 2621 may output the file to the user interface 270 and terminate the I / O request.

ブロック602において、I/O要求は、新しいファイルを記憶装置243に書き込む要求であるという決定に応じて、I/Oハンドラ260は、要求をSUPドライバ2620に転送してよい。ブロック610において、SUPドライバ2620は、ベースファイルが使用しない記憶装置243のブロックに新しいファイルを格納してよい。ブロック611において、SUPドライバ2620は、新しいファイルを格納するブロックが用いられていること示すことにより、通常のブロックビットマップをアップデートしてよい。ブロック612において、SUPドライバ2620は、新しいファイルが記憶装置243に格納されたベースファイルのアップデートバージョンであるかどうかをさらに決定してよい。新しいバージョンであれば、ブロック613において、SUPドライバ2620は、新しいファイルを格納するブロックを、ベースファイルを格納するブロックにマップするマッピング情報を記録してよい。   In block 602, in response to determining that the I / O request is a request to write a new file to the storage device 243, the I / O handler 260 may forward the request to the SUP driver 2620. In block 610, the SUP driver 2620 may store the new file in a block of the storage device 243 that is not used by the base file. In block 611, the SUP driver 2620 may update the normal block bitmap by indicating that the block storing the new file is being used. At block 612, the SUP driver 2620 may further determine whether the new file is an updated version of the base file stored in the storage device 243. If it is a new version, at block 613, the SUP driver 2620 may record mapping information that maps the block storing the new file to the block storing the base file.

図7は、ネットワーク環境におけるクライアントプラットフォームのクライアントのための記憶装置スペースをセーブする一実施形態を示す。ブロック701において、クライアントは、クライアントプラットフォームをログアウトし、現在の記憶装置環境をセーブするオプションを与えられうる。記憶装置環境をセーブすべく、クライアントプラットフォームは、703においてプラットフォームをリブートしてよく、EFI251、または、クライアントプラットフォームの他の適切なデバイスは、増分パッケージ、および、ブロックビットマップを生成しうる。増分パッケージは、記憶装置に格納された増分ファイルに対応する増分ファイルイメージと、増分ファイルに関する情報を記述した増分ファイル記述イメージとを含みうる。ブロックビットマップは、記憶装置のブロックの使用状況を示し得る。上述のごとく、ブロックビットマップを省略し、ブロックに関連するそのような情報を増分ファイル記述イメージに統合してもよい。   FIG. 7 illustrates one embodiment of saving storage space for a client of a client platform in a network environment. In block 701, the client may be given the option to log out of the client platform and save the current storage device environment. To save the storage environment, the client platform may reboot the platform at 703, and EFI 251 or other suitable device on the client platform may generate incremental packages and block bitmaps. The incremental package may include an incremental file image corresponding to the incremental file stored on the storage device and an incremental file description image describing information about the incremental file. The block bitmap may indicate the usage status of the block of the storage device. As mentioned above, the block bitmap may be omitted and such information related to the block may be integrated into the incremental file description image.

その後、ブロック705において、EFI251は、増分パッケージおよびブロックビットマップをサーバ12にアップロードしてよい。ブロック706において、EFI251は、クライアントプラットフォームの記憶装置から増分ファイルを消去し、ログアウトしてよい。   Thereafter, at block 705, the EFI 251 may upload the incremental package and block bitmap to the server 12. At block 706, the EFI 251 may erase the incremental file from the client platform storage and log out.

他の実施形態は、図7に示された方法のための他の技術を実装しうる。例えば、クライアントプラットフォームは、記憶装置環境セーブ/リストアサービスを提供する前に、VIPクライアントだけがそのようなサービスを受ける資格があるとすれば、そのクライアントがVIPクライアントであるかどうかを決定しうる。   Other embodiments may implement other techniques for the method shown in FIG. For example, before providing a storage environment save / restore service, the client platform may determine whether the client is a VIP client if only the VIP client is eligible for such service.

図8は、図1のネットワーク環境10におけるクライアントプラットフォームまたはサーバとして機能しうる一般的なプラットフォームの一実施形態を示す。プラットフォームは、1つ以上のプロセッサ850、メモリ851、チップセット852、I/Oデバイス853、ファームウェア854、および、記憶装置855を含みうる。プロセッサ850は、プロセッサバスなどの1つ以上のバスを介して他の構成要素に通信可能に結合される。プロセッサ850は、例えば、カリフォルニア州サンタクララのインテル社から購入可能な、Intel(登録商標)Xeon(登録商標)、Intel(登録商標)Pentium(登録商標)、Intel(登録商標)Itanium(登録商標)アーキテクチャなどの適切なアーキテクチャの下でコードを実行しうる1つ以上の処理コアを有する集積回路(IC)として実装されうる。   FIG. 8 illustrates one embodiment of a general platform that can function as a client platform or server in the network environment 10 of FIG. The platform may include one or more processors 850, memory 851, chipset 852, I / O device 853, firmware 854, and storage device 855. The processor 850 is communicatively coupled to other components via one or more buses, such as a processor bus. The processor 850 is, for example, Intel® Xeon®, Intel® Pentium®, Intel® Itanium®, available from Intel Corporation of Santa Clara, California. It can be implemented as an integrated circuit (IC) having one or more processing cores that can execute code under a suitable architecture, such as an architecture.

一実施形態では、メモリ851は、プロセッサ850により実行されうるコードを格納してよい。メモリ851のいくつかの例をあげると、これがすべてではないが、SDRAM(同期型随時書き込み読み出しメモリ)デバイス、RAMBUS RDRAM(ダイナミックランダムアクセスメモリ)デバイス、ダブルデータレート(DDR)メモリデバイス、SRAM(スタティックRAM)、および、フラッシュメモリデバイスなどの半導体デバイスの1つ、または、それらの組合せを含みうる。   In one embodiment, the memory 851 may store code that can be executed by the processor 850. Some examples of memory 851 include, but are not all, SDRAM (synchronous ad-hoc write / read memory) devices, RAMBUS RDRAM (dynamic random access memory) devices, double data rate (DDR) memory devices, SRAM (static RAM) and one or a combination of semiconductor devices such as flash memory devices.

一実施形態では、チップセット852は、プロセッサ850、メモリ851、および、例えばI/Oデバイス853、ファームウェア854、および、記憶装置855などの他の構成要素間に1つ以上の通信経路を提供しうる。I/Oデバイス853の例は、キーボード、マウス、ネットワークインターフェース、記憶装置、カメラ、ブルートゥース、および、アンテナを含みうる。   In one embodiment, chipset 852 provides one or more communication paths between processor 850, memory 851, and other components such as, for example, I / O device 853, firmware 854, and storage device 855. sell. Examples of the I / O device 853 may include a keyboard, a mouse, a network interface, a storage device, a camera, Bluetooth, and an antenna.

ファームウェア854は、プロセッサ850、チップセット852、および、プラットフォームの他の構成要素を初期化すべく、システムセットアップ中にプラットフォームが実行するBIOSルーチン、および/または、ファームウェア1054とプラットフォームのオペレーティングシステムとのインターフェースとなり、オペレーティングシステムをブートする標準環境を提供するEFIルーチンを格納しうる。   Firmware 854 interfaces with the BIOS routines executed by the platform during system setup and / or firmware 1054 and the platform operating system to initialize processor 850, chipset 852, and other components of the platform. EFI routines that provide a standard environment for booting the operating system may be stored.

記憶装置855は、プラットフォーム内にある内部記憶装置(ハードディスクなど)、および/または、クライアントプラットフォーム外にある外部記憶装置(例えば、フロッピー(登録商標)ディスク、光ディスクなど)を含みうる。図8に示されるようなクライアントプラットフォームがクライアントプラットフォームとして実行しうる場合、記憶装置855は、ベースファイル、増分ファイル、ファイル記述、または、おそらく他のデータも格納しうる。図8に示されるようなプラットフォームがサーバ12である場合、記憶装置855は、増分ファイルイメージ、増分ファイル記述イメージ、ブロックビットマップ、または、おそらく他のデータも格納しうる。   The storage device 855 can include an internal storage device (such as a hard disk) that is within the platform and / or an external storage device (eg, floppy disk, optical disk, etc.) that is outside the client platform. If a client platform such as that shown in FIG. 8 can be implemented as a client platform, the storage device 855 may also store base files, incremental files, file descriptions, or possibly other data. If the platform as shown in FIG. 8 is server 12, storage device 855 may also store incremental file images, incremental file description images, block bitmaps, or possibly other data.

これまで例示的実施例を参照して本発明の特定の特徴を説明してきたが、その記載は、限定の意味合いで解釈されることを意図しない。これらの例示的実施形態のさまざまな修正、および、本発明の他の実施形態も本発明の趣旨および範囲内にあることが当業者には明らかである。   While certain features of the invention have been described with reference to illustrative embodiments, this description is not meant to be construed in a limiting sense. It will be apparent to those skilled in the art that various modifications of these exemplary embodiments and other embodiments of the invention are within the spirit and scope of the invention.

これまで例示的実施例を参照して本発明の特定の特徴を説明してきたが、その記載は、限定の意味合いで解釈されることを意図しない。これらの例示的項目のさまざまな修正、および、本発明の他の項目も本発明の趣旨および範囲内にあることが当業者には明らかである。本発明の例を下記の各項目として示す。
[項目1]
モデルクライアントプラットフォームの方法であって、
モデルクライアントプラットフォームのモデル記憶装置の第1のモデルブロックに格納された増分ファイルを含むファイルイメージを生成する段階と、
モデル記憶装置の第2のモデルブロックに格納されたファイル記述を含むファイル記述イメージを生成する段階と、
ファイルイメージ、および、ファイル記述イメージをサーバにアップロードする段階と、
を備え、
ファイル記述は、モデル記憶装置における第1のモデルブロックの位置を含む、
方法。
[項目2]
モデル記憶装置の各モデルブロックに格納されたデータがサーバから入手可能かどうかを示すモデルブロックビットマップを生成する段階をさらに備える、項目1に記載の方法。
[項目3]
モデル記憶装置の各モデルブロックの使用状況を示すモデルブロックビットマップを生成する段階をさらに備える、項目1に記載の方法。
[項目4]
ファイルイメージは、モデル記憶装置における第1のモデルブロックの位置をさらに含む、項目1に記載の方法。
[項目5]
ファイル記述イメージは、モデル記憶装置における第2のモデルブロックの位置をさらに含む、項目1に記載の方法。
[項目6]
モデル記憶装置の第3のモデルブロックに格納されたベースファイル、および、モデル記憶装置における第3のモデルブロックの位置を含む他のファイルイメージを生成する段階と、
他のファイルイメージをサーバにアップロードする段階と、
をさらに備える、項目1に記載の方法。
[項目7]
増分ファイルは、モデル記憶装置の第3のモデルブロックに格納されたベースファイルのアップデートバージョンであることを決定する段階と、
増分ファイルを格納する第1のモデルブロックを、ベースファイルを格納する第3のモデルブロックにマップするマッピング情報を記録する段階と、
マッピング情報をサーバにアップロードする段階と、
をさらに備える、項目1に記載の方法。
[項目8]
通常のクライアントプラットフォームの方法であって、
通常のクライアントプラットフォームの通常の記憶装置の各通常のブロックの使用状況を示す通常のブロックビットマップを生成する段階と、
ファイル記述を含むファイル記述イメージをサーバからダウンロードする段階と、
を備え、
ファイル記述は、モデルクライアントプラットフォームのモデル記憶装置における第1のモデルブロックの位置を含み、
第1のモデルブロックは、増分ファイルを格納する、
方法。
[項目9]
サーバからモデルブロックビットマップをダウンロードする段階をさらに備え、
モデルブロックビットマップは、モデル記憶装置の各モデルブロックの使用状況を示す、項目8に記載の方法。
[項目10]
通常のブロックビットマップ、および、モデルブロックビットマップに基づき、増分ファイルがサーバから入手可能かどうかを決定する段階と、
サーバから増分ファイルをダウンロードする段階と、
モデル記憶装置における第1のモデルブロックの位置に対応する通常の記憶装置の第1の通常のブロックに増分ファイルを格納する段階と、
第1の通常のブロックが用いられていることを示すよう、通常のブロックビットマップをアップデートする段階と、
をさらに備える、項目9に記載の方法。
[項目11]
第1のモデルブロックの位置に基づき、サーバに格納されたファイルイメージから増分ファイルを読み出す段階をさらに備え、
ファイルイメージは、増分ファイルを第1のモデルブロックの位置にリンクさせる、項目10に記載の方法。
[項目12]
ファイル記述イメージは、モデル記憶装置における第2のモデルブロックの位置をさらに含み、第2のモデルブロックは、ファイル記述を格納する、項目9に記載の方法。
[項目13]
第2のモデルブロックの位置に対応する通常の記憶装置の第2の通常のブロックに、ファイル記述を格納する段階と、
第2の通常のブロックが用いられていることを示すよう、通常のブロックビットマップをアップデートする段階と、
をさらに備える、項目12に記載の方法。
[項目14]
ベースファイル、および、モデル記憶装置におけるベースファイルを格納する第3のモデルブロックの位置を含むベースファイルイメージをサーバからダウンロードする段階と、
第3のモデルブロックの位置に対応する通常の記憶装置の第3の通常のブロックに、ベースファイルを格納する段階と、
をさらに備える項目9に記載の方法。
[項目15]
通常の記憶装置の第4の通常のブロックに新しいファイルを格納する段階と、
新しいファイルがベースファイルのアップデートバージョンである場合、第4の通常のブロックを第3の通常のブロックにマップするマッピング情報を記録する段階と、
をさらに備える、項目14に記載の方法。
[項目16]
複数の命令を備える機械可読媒体であって、実行されると、クライアントプラットフォームにおいて、
クライアントプラットフォームの記憶装置の第1のブロックに増分ファイルを格納する段階と、
クライアントプラットフォームをリブートする段階と、
増分ファイルを含むファイルイメージ、および、増分ファイルのファイル記述を含むファイル記述イメージを生成する段階と、
を実行させ、
ファイル記述は、記憶装置における第1のブロックの位置を含む、機械可読媒体。
[項目17]
複数の命令は、
ファイルイメージ、および、ファイル記述イメージをサーバにアップロードする段階と、
記憶装置から増分ファイルを削除する段階と、
クライアントプラットフォームをからログアウトする段階と、
をさらに実行させる、項目16に記載の機械可読媒体。
[項目18]
複数の命令は、
記憶装置の各ブロックの使用状況を示すブロックビットマップを生成する段階と、
ブロックビットマップをサーバにアップロードする段階と、
をさらに実行させる、項目16に記載の機械可読媒体。
[項目19]
増分ファイルを格納する第1のモデルブロック、および、増分ファイルのファイル記述を格納する第2のモデルブロックを有するモデル記憶装置と、
増分ファイルを含むファイルイメージ、および、ファイル記述を含むファイル記述イメージを生成するモデルファームウェア構成要素と、
を備え、
ファイル記述は、モデル記憶装置における第1のモデルブロックの位置を含む、モデルクライアントプラットフォーム。
[項目20]
ファイルイメージおよびファイル記述イメージをサーバにアップロードするモデルネットワークインターフェースをさらに備える、項目19に記載のモデルクライアントプラットフォーム。
[項目21]
モデルファームウェア構成要素は、モデル記憶装置の各モデルブロックの使用状況を示すモデルブロックビットマップをさらに生成し、
モデルネットワークインターフェースは、モデルブロックビットマップをサーバにさらにアップロードする、項目20に記載のモデルクライアントプラットフォーム。
[項目22]
モデル記憶装置は、ベースファイルを格納する第3のモデルブロックをさらに有する、項目19に記載のモデルクライアントプラットフォーム。
[項目23]
モデルファームウェアは、ベースファイル、および、モデル記憶装置における第3のモデルブロックの位置を含む他のファイルイメージをさらに生成し、
モデルネットワークインターフェースは、他のファイルイメージをサーバにさらにアップロードする、項目20に記載のモデルクライアントプラットフォーム。
[項目24]
増分ファイルがベースファイルのアップデートバージョンである場合、増分ファイルを格納する第1のモデルブロックを、ベースファイルを格納する第3のモデルブロックにマップするマッピング情報を記録するドライバをさらに備える、項目23に記載のモデルクライアントプラットフォーム。
[項目25]
複数の通常のブロックを有する通常の記憶装置と、
ファイル記述を含むファイル記述イメージをサーバからダウンロードするための通常のネットワークインターフェースと、
通常のブロックの使用状況を示す通常のブロックビットマップを生成する通常のファームウェア構成要素と、
を備え、
ファイル記述は、モデルクライアントプラットフォームのモデル記憶装置における第1のモデルブロックの位置を含み、
第1のモデルブロックは、増分ファイルを格納する、
通常のクライアントプラットフォーム。
[項目26]
通常のネットワークインターフェースは、サーバからモデルブロックビットマップをさらにダウンロードし、モデルブロックビットマップは、モデル記憶装置の各モデルブロックの使用状況を示す、項目25に記載の通常のクライアントプラットフォーム。
[項目27]
第1のドライバをさらに備え、第1のドライバは、
通常のブロックビットマップ、および、モデルブロックビットマップに基づき、増分ファイルがサーバから入手可能かどうかを決定し、
サーバから増分ファイルをダウンロードし、
第1のモデルブロックの位置に対応する複数の通常のブロックの第1の通常のブロックに、増分ファイルを格納し、
第1の通常のブロックが使用されていることを示すよう、通常のブロックビットマップをアップデートする、項目25に記載の通常のクライアントプラットフォーム。
[項目28]
ファイル記述イメージは、モデル記憶装置における第2のモデルブロックの位置をさらに含み、第2のモデルブロックは、ファイル記述を格納し、
通常の記憶装置は、第2のモデルブロックの位置に対応する複数の通常のブロックの第2の通常のブロックに、ファイル記述をさらに格納する、項目25に記載の通常のクライアントプラットフォーム。
[項目29]
第2のドライバをさらに備え、第2のドライバは、
サーバから、ベースファイル、および、モデル記憶装置におけるベースファイルを格納する第3のモデルブロックの位置を含むベースファイルイメージを受信し、
第3のモデルブロックの位置に対応する複数の通常のブロックの第3の通常のブロックに、ベースファイルを格納する項目25に記載の通常のクライアントプラットフォーム。
[項目30]
第2のドライバをさらに備え、第2のドライバは、
複数の通常のブロックの第4の通常のブロックに新しいファイルを格納し、
新しいファイルがベースファイルのアップデートバージョンである場合、第4の通常のブロックを第3の通常のブロックにマップするマッピング情報を記録する、項目29に記載の通常のクライアントプラットフォーム。
While certain features of the invention have been described above with reference to illustrative embodiments, the description is not intended to be construed in a limiting sense. It will be apparent to those skilled in the art that various modifications of these illustrative items, and other items of the invention, are within the spirit and scope of the invention. Examples of the present invention are shown as the following items.
[Item 1]
Model client platform method,
Generating a file image including an incremental file stored in a first model block of a model storage device of a model client platform;
Generating a file description image including a file description stored in a second model block of the model storage device;
Uploading a file image and a file description image to the server;
With
The file description includes the position of the first model block in the model storage device,
Method.
[Item 2]
The method of item 1, further comprising generating a model block bitmap indicating whether data stored in each model block of the model storage device is available from a server.
[Item 3]
The method of item 1, further comprising the step of generating a model block bitmap that indicates the usage status of each model block in the model storage device.
[Item 4]
The method of claim 1, wherein the file image further includes a position of the first model block in the model storage device.
[Item 5]
The method of item 1, wherein the file description image further comprises a position of a second model block in the model storage device.
[Item 6]
Generating a base file stored in a third model block of the model storage device and another file image including a position of the third model block in the model storage device;
Uploading other file images to the server,
The method according to item 1, further comprising:
[Item 7]
Determining that the incremental file is an updated version of the base file stored in the third model block of the model store;
Recording mapping information that maps a first model block storing an incremental file to a third model block storing a base file;
Uploading the mapping information to the server;
The method according to item 1, further comprising:
[Item 8]
A normal client platform approach,
Generating a normal block bitmap indicating the usage of each normal block on a normal storage device on a normal client platform;
Downloading a file description image including a file description from a server;
With
The file description includes the location of the first model block in the model store of the model client platform;
The first model block stores an incremental file;
Method.
[Item 9]
Further comprising downloading a model block bitmap from the server;
Item 9. The method according to Item 8, wherein the model block bitmap indicates a usage status of each model block of the model storage device.
[Item 10]
Determining whether an incremental file is available from the server based on the normal block bitmap and the model block bitmap;
Downloading incremental files from the server;
Storing the incremental file in the first normal block of the normal storage device corresponding to the position of the first model block in the model storage device;
Updating the normal block bitmap to indicate that the first normal block is being used;
The method according to item 9, further comprising:
[Item 11]
Reading the incremental file from the file image stored on the server based on the location of the first model block;
The method of item 10, wherein the file image links the incremental file to the location of the first model block.
[Item 12]
10. The method of item 9, wherein the file description image further includes a location of a second model block in the model storage device, wherein the second model block stores the file description.
[Item 13]
Storing the file description in a second normal block of a normal storage device corresponding to the location of the second model block;
Updating the normal block bitmap to indicate that the second normal block is being used;
The method of item 12, further comprising:
[Item 14]
Downloading a base file and a base file image including a location of a third model block storing the base file in the model storage device from the server;
Storing the base file in a third normal block of a normal storage device corresponding to the position of the third model block;
The method according to item 9, further comprising:
[Item 15]
Storing the new file in a fourth normal block of a normal storage device;
If the new file is an updated version of the base file, recording mapping information that maps the fourth regular block to the third regular block;
15. The method of item 14, further comprising:
[Item 16]
A machine-readable medium comprising a plurality of instructions that when executed on a client platform,
Storing the incremental file in the first block of the client platform storage;
Rebooting the client platform;
Generating a file image including an incremental file and a file description image including a file description of the incremental file;
And execute
A machine-readable medium, wherein the file description includes a location of the first block in the storage device.
[Item 17]
Multiple instructions
Uploading a file image and a file description image to the server;
Deleting incremental files from the storage device; and
Logging out of the client platform;
The machine-readable medium according to item 16, further comprising:
[Item 18]
Multiple instructions
Generating a block bitmap indicating usage of each block of the storage device;
Uploading the block bitmap to the server;
The machine-readable medium according to item 16, further comprising:
[Item 19]
A model storage device having a first model block storing an incremental file and a second model block storing a file description of the incremental file;
A model firmware component that generates a file image including an incremental file and a file description image including a file description; and
With
The model client platform, wherein the file description includes the location of the first model block in the model store.
[Item 20]
Item 20. The model client platform of item 19, further comprising a model network interface for uploading a file image and a file description image to a server.
[Item 21]
The model firmware component further generates a model block bitmap indicating the usage status of each model block in the model storage device,
The model client platform of item 20, wherein the model network interface further uploads the model block bitmap to the server.
[Item 22]
20. The model client platform of item 19, wherein the model storage device further comprises a third model block that stores a base file.
[Item 23]
The model firmware further generates a base file and other file images including the location of the third model block in the model store,
The model client platform of item 20, wherein the model network interface further uploads other file images to the server.
[Item 24]
Item 23, further comprising a driver that records mapping information that maps a first model block storing the incremental file to a third model block storing the base file if the incremental file is an updated version of the base file. The model client platform described.
[Item 25]
A normal storage device having a plurality of normal blocks;
A normal network interface for downloading a file description image including a file description from the server;
A normal firmware component that generates a normal block bitmap indicating normal block usage, and
With
The file description includes the location of the first model block in the model store of the model client platform;
The first model block stores an incremental file;
Normal client platform.
[Item 26]
26. The normal client platform of item 25, wherein the normal network interface further downloads a model block bitmap from the server, the model block bitmap indicating usage of each model block in the model storage device.
[Item 27]
A first driver, the first driver comprising:
Based on the normal block bitmap and model block bitmap, determine whether an incremental file is available from the server,
Download incremental files from the server,
Storing the incremental file in a first regular block of the plurality of regular blocks corresponding to the location of the first model block;
26. The regular client platform of item 25, wherein the regular block bitmap is updated to indicate that the first regular block is being used.
[Item 28]
The file description image further includes a position of the second model block in the model storage device, the second model block storing the file description,
26. The normal client platform of item 25, wherein the normal storage device further stores a file description in a second normal block of the plurality of normal blocks corresponding to the location of the second model block.
[Item 29]
A second driver, the second driver comprising:
Receiving from the server a base file image including a base file and a location of a third model block storing the base file in the model storage device;
26. The ordinary client platform according to item 25, wherein the base file is stored in a third ordinary block of the plurality of ordinary blocks corresponding to the position of the third model block.
[Item 30]
A second driver, the second driver comprising:
Store the new file in the fourth regular block of the multiple regular blocks,
30. A regular client platform according to item 29, wherein if the new file is an updated version of the base file, the mapping information mapping the fourth regular block to the third regular block is recorded.

Claims (30)

モデルクライアントプラットフォームの方法であって、
前記モデルクライアントプラットフォームのモデル記憶装置の第1のモデルブロックに格納された増分ファイルを含むファイルイメージを生成する段階と、
前記モデル記憶装置の第2のモデルブロックに格納されたファイル記述を含むファイル記述イメージを生成する段階と、
前記ファイルイメージ、および、前記ファイル記述イメージをサーバにアップロードする段階と、
を備え、
前記ファイル記述は、前記モデル記憶装置における前記第1のモデルブロックの位置を含む、
方法。
Model client platform method,
Generating a file image including an incremental file stored in a first model block of a model storage device of the model client platform;
Generating a file description image including a file description stored in a second model block of the model storage device;
Uploading the file image and the file description image to a server;
With
The file description includes a position of the first model block in the model storage device;
Method.
前記モデル記憶装置の各モデルブロックに格納されたデータが前記サーバから入手可能かどうかを示すモデルブロックビットマップを生成する段階をさらに備える、請求項1に記載の方法。   The method of claim 1, further comprising generating a model block bitmap indicating whether data stored in each model block of the model storage device is available from the server. 前記モデル記憶装置の各モデルブロックの使用状況を示すモデルブロックビットマップを生成する段階をさらに備える、請求項1に記載の方法。   The method of claim 1, further comprising generating a model block bitmap indicating usage of each model block in the model storage device. 前記ファイルイメージは、前記モデル記憶装置における前記第1のモデルブロックの前記位置をさらに含む、請求項1に記載の方法。   The method of claim 1, wherein the file image further includes the location of the first model block in the model storage device. 前記ファイル記述イメージは、前記モデル記憶装置における前記第2のモデルブロックの位置をさらに含む、請求項1に記載の方法。   The method of claim 1, wherein the file description image further includes a position of the second model block in the model storage device. 前記モデル記憶装置の第3のモデルブロックに格納されたベースファイル、および、前記モデル記憶装置における前記第3のモデルブロックの位置を含む他のファイルイメージを生成する段階と、
前記他のファイルイメージを前記サーバにアップロードする段階と、
をさらに備える、請求項1に記載の方法。
Generating a base file stored in a third model block of the model storage device and another file image including a position of the third model block in the model storage device;
Uploading the other file image to the server;
The method of claim 1, further comprising:
前記増分ファイルは、前記モデル記憶装置の第3のモデルブロックに格納されたベースファイルのアップデートバージョンであることを決定する段階と、
前記増分ファイルを格納する前記第1のモデルブロックを、前記ベースファイルを格納する前記第3のモデルブロックにマップするマッピング情報を記録する段階と、
前記マッピング情報を前記サーバにアップロードする段階と、
をさらに備える、請求項1に記載の方法。
Determining that the incremental file is an updated version of a base file stored in a third model block of the model store;
Recording mapping information for mapping the first model block storing the incremental file to the third model block storing the base file;
Uploading the mapping information to the server;
The method of claim 1, further comprising:
通常のクライアントプラットフォームの方法であって、
前記通常のクライアントプラットフォームの通常の記憶装置の各通常のブロックの使用状況を示す通常のブロックビットマップを生成する段階と、
ファイル記述を含むファイル記述イメージをサーバからダウンロードする段階と、
を備え、
前記ファイル記述は、モデルクライアントプラットフォームのモデル記憶装置における第1のモデルブロックの位置を含み、
前記第1のモデルブロックは、増分ファイルを格納する、
方法。
A normal client platform approach,
Generating a normal block bitmap indicating usage of each normal block in the normal storage of the normal client platform;
Downloading a file description image including a file description from a server;
With
The file description includes a location of a first model block in a model storage device of a model client platform;
The first model block stores an incremental file;
Method.
前記サーバからモデルブロックビットマップをダウンロードする段階をさらに備え、
前記モデルブロックビットマップは、前記モデル記憶装置の各モデルブロックの使用状況を示す、請求項8に記載の方法。
Downloading a model block bitmap from the server;
The method of claim 8, wherein the model block bitmap indicates a usage status of each model block in the model storage device.
前記通常のブロックビットマップ、および、前記モデルブロックビットマップに基づき、前記増分ファイルが前記サーバから入手可能かどうかを決定する段階と、
前記サーバから前記増分ファイルをダウンロードする段階と、
前記モデル記憶装置における前記第1のモデルブロックの前記位置に対応する前記通常の記憶装置の第1の通常のブロックに前記増分ファイルを格納する段階と、
前記第1の通常のブロックが用いられていることを示すよう、前記通常のブロックビットマップをアップデートする段階と、
をさらに備える、請求項9に記載の方法。
Determining whether the incremental file is available from the server based on the normal block bitmap and the model block bitmap;
Downloading the incremental file from the server;
Storing the incremental file in a first normal block of the normal storage device corresponding to the location of the first model block in the model storage device;
Updating the normal block bitmap to indicate that the first normal block is being used;
The method of claim 9, further comprising:
前記第1のモデルブロックの前記位置に基づき、前記サーバに格納されたファイルイメージから前記増分ファイルを読み出す段階をさらに備え、
前記ファイルイメージは、前記増分ファイルを前記第1のモデルブロックの前記位置にリンクさせる、請求項10に記載の方法。
Reading the incremental file from a file image stored on the server based on the location of the first model block;
The method of claim 10, wherein the file image links the incremental file to the location of the first model block.
前記ファイル記述イメージは、前記モデル記憶装置における第2のモデルブロックの位置をさらに含み、前記第2のモデルブロックは、前記ファイル記述を格納する、請求項9に記載の方法。   The method of claim 9, wherein the file description image further includes a location of a second model block in the model storage device, wherein the second model block stores the file description. 前記第2のモデルブロックの前記位置に対応する前記通常の記憶装置の第2の通常のブロックに、前記ファイル記述を格納する段階と、
前記第2の通常のブロックが用いられていることを示すよう、前記通常のブロックビットマップをアップデートする段階と、
をさらに備える、請求項12に記載の方法。
Storing the file description in a second normal block of the normal storage device corresponding to the location of the second model block;
Updating the normal block bitmap to indicate that the second normal block is being used;
The method of claim 12, further comprising:
ベースファイル、および、前記モデル記憶装置における前記ベースファイルを格納する第3のモデルブロックの位置を含むベースファイルイメージを前記サーバからダウンロードする段階と、
前記第3のモデルブロックの前記位置に対応する前記通常の記憶装置の第3の通常のブロックに、前記ベースファイルを格納する段階と、
をさらに備える請求項9に記載の方法。
Downloading a base file and a base file image including a position of a third model block storing the base file in the model storage device from the server;
Storing the base file in a third normal block of the normal storage device corresponding to the location of the third model block;
The method of claim 9, further comprising:
前記通常の記憶装置の第4の通常のブロックに新しいファイルを格納する段階と、
前記新しいファイルが前記ベースファイルのアップデートバージョンである場合、前記第4の通常のブロックを前記第3の通常のブロックにマップするマッピング情報を記録する段階と、
をさらに備える、請求項14に記載の方法。
Storing a new file in a fourth normal block of the normal storage device;
If the new file is an updated version of the base file, recording mapping information that maps the fourth regular block to the third regular block;
15. The method of claim 14, further comprising:
複数の命令を備える機械可読媒体であって、実行されると、クライアントプラットフォームにおいて、
前記クライアントプラットフォームの記憶装置の第1のブロックに増分ファイルを格納する段階と、
前記クライアントプラットフォームをリブートする段階と、
前記増分ファイルを含むファイルイメージ、および、前記増分ファイルのファイル記述を含むファイル記述イメージを生成する段階と、
を実行させ、
前記ファイル記述は、前記記憶装置における前記第1のブロックの位置を含む、機械可読媒体。
A machine-readable medium comprising a plurality of instructions that when executed on a client platform,
Storing an incremental file in a first block of the storage device of the client platform;
Rebooting the client platform;
Generating a file image including the incremental file and a file description image including a file description of the incremental file;
And execute
The machine-readable medium, wherein the file description includes a location of the first block in the storage device.
前記複数の命令は、
前記ファイルイメージ、および、前記ファイル記述イメージをサーバにアップロードする段階と、
前記記憶装置から前記増分ファイルを削除する段階と、
前記クライアントプラットフォームをからログアウトする段階と、
をさらに実行させる、請求項16に記載の機械可読媒体。
The plurality of instructions are:
Uploading the file image and the file description image to a server;
Deleting the incremental file from the storage device;
Logging out of the client platform;
The machine-readable medium of claim 16, further executing:
前記複数の命令は、
前記記憶装置の各ブロックの使用状況を示すブロックビットマップを生成する段階と、
前記ブロックビットマップをサーバにアップロードする段階と、
をさらに実行させる、請求項16に記載の機械可読媒体。
The plurality of instructions are:
Generating a block bitmap indicating the usage status of each block of the storage device;
Uploading the block bitmap to a server;
The machine-readable medium of claim 16, further executing:
増分ファイルを格納する第1のモデルブロック、および、前記増分ファイルのファイル記述を格納する第2のモデルブロックを有するモデル記憶装置と、
前記増分ファイルを含むファイルイメージ、および、前記ファイル記述を含むファイル記述イメージを生成するモデルファームウェア構成要素と、
を備え、
前記ファイル記述は、前記モデル記憶装置における前記第1のモデルブロックの位置を含む、モデルクライアントプラットフォーム。
A model storage device having a first model block for storing an incremental file and a second model block for storing a file description of the incremental file;
A model firmware component for generating a file image including the incremental file and a file description image including the file description;
With
The model client platform, wherein the file description includes a location of the first model block in the model storage device.
前記ファイルイメージおよびファイル記述イメージをサーバにアップロードするモデルネットワークインターフェースをさらに備える、請求項19に記載のモデルクライアントプラットフォーム。   20. The model client platform of claim 19, further comprising a model network interface that uploads the file image and file description image to a server. 前記モデルファームウェア構成要素は、前記モデル記憶装置の各モデルブロックの使用状況を示すモデルブロックビットマップをさらに生成し、
前記モデルネットワークインターフェースは、前記モデルブロックビットマップを前記サーバにさらにアップロードする、請求項20に記載のモデルクライアントプラットフォーム。
The model firmware component further generates a model block bitmap indicating the usage status of each model block of the model storage device;
21. The model client platform of claim 20, wherein the model network interface further uploads the model block bitmap to the server.
前記モデル記憶装置は、ベースファイルを格納する第3のモデルブロックをさらに有する、請求項19に記載のモデルクライアントプラットフォーム。   The model client platform of claim 19, wherein the model storage device further comprises a third model block for storing a base file. 前記モデルファームウェアは、ベースファイル、および、前記モデル記憶装置における第3のモデルブロックの位置を含む他のファイルイメージをさらに生成し、
前記モデルネットワークインターフェースは、前記他のファイルイメージを前記サーバにさらにアップロードする、請求項20に記載のモデルクライアントプラットフォーム。
The model firmware further generates a base file and another file image including a position of a third model block in the model storage device;
21. The model client platform of claim 20, wherein the model network interface further uploads the other file image to the server.
前記増分ファイルが前記ベースファイルのアップデートバージョンである場合、前記増分ファイルを格納する前記第1のモデルブロックを、前記ベースファイルを格納する前記第3のモデルブロックにマップするマッピング情報を記録するドライバをさらに備える、請求項23に記載のモデルクライアントプラットフォーム。   A driver that records mapping information that maps the first model block storing the incremental file to the third model block storing the base file if the incremental file is an updated version of the base file; The model client platform of claim 23, further comprising: 複数の通常のブロックを有する通常の記憶装置と、
ファイル記述を含むファイル記述イメージをサーバからダウンロードするための通常のネットワークインターフェースと、
前記通常のブロックの使用状況を示す通常のブロックビットマップを生成する通常のファームウェア構成要素と、
を備え、
前記ファイル記述は、モデルクライアントプラットフォームのモデル記憶装置における第1のモデルブロックの位置を含み、
前記第1のモデルブロックは、増分ファイルを格納する、
通常のクライアントプラットフォーム。
A normal storage device having a plurality of normal blocks;
A normal network interface for downloading a file description image including a file description from the server;
A normal firmware component that generates a normal block bitmap indicating usage of the normal block;
With
The file description includes a location of a first model block in a model storage device of a model client platform;
The first model block stores an incremental file;
Normal client platform.
前記通常のネットワークインターフェースは、前記サーバからモデルブロックビットマップをさらにダウンロードし、前記モデルブロックビットマップは、前記モデル記憶装置の各モデルブロックの使用状況を示す、請求項25に記載の通常のクライアントプラットフォーム。   26. The normal client platform of claim 25, wherein the normal network interface further downloads a model block bitmap from the server, the model block bitmap indicating usage of each model block in the model storage device. . 第1のドライバをさらに備え、前記第1のドライバは、
前記通常のブロックビットマップ、および、モデルブロックビットマップに基づき、前記増分ファイルが前記サーバから入手可能かどうかを決定し、
前記サーバから前記増分ファイルをダウンロードし、
前記第1のモデルブロックの前記位置に対応する前記複数の通常のブロックの第1の通常のブロックに、前記増分ファイルを格納し、
前記第1の通常のブロックが使用されていることを示すよう、前記通常のブロックビットマップをアップデートする、請求項25に記載の通常のクライアントプラットフォーム。
A first driver, the first driver comprising:
Determining whether the incremental file is available from the server based on the normal block bitmap and the model block bitmap;
Download the incremental file from the server;
Storing the incremental file in a first regular block of the plurality of regular blocks corresponding to the location of the first model block;
26. The regular client platform of claim 25, wherein the regular block bitmap is updated to indicate that the first regular block is being used.
前記ファイル記述イメージは、前記モデル記憶装置における第2のモデルブロックの位置をさらに含み、前記第2のモデルブロックは、前記ファイル記述を格納し、
前記通常の記憶装置は、前記第2のモデルブロックの前記位置に対応する前記複数の通常のブロックの第2の通常のブロックに、前記ファイル記述をさらに格納する、請求項25に記載の通常のクライアントプラットフォーム。
The file description image further includes a position of a second model block in the model storage device, and the second model block stores the file description;
26. The normal storage device of claim 25, wherein the normal storage device further stores the file description in a second normal block of the plurality of normal blocks corresponding to the location of the second model block. Client platform.
第2のドライバをさらに備え、前記第2のドライバは、
前記サーバから、ベースファイル、および、前記モデル記憶装置における前記ベースファイルを格納する第3のモデルブロックの位置を含むベースファイルイメージを受信し、
前記第3のモデルブロックの前記位置に対応する前記複数の通常のブロックの第3の通常のブロックに、前記ベースファイルを格納する請求項25に記載の通常のクライアントプラットフォーム。
A second driver, the second driver comprising:
Receiving from the server a base file image including a base file and a location of a third model block storing the base file in the model storage device;
26. The normal client platform of claim 25, wherein the base file is stored in a third normal block of the plurality of normal blocks corresponding to the location of the third model block.
第2のドライバをさらに備え、前記第2のドライバは、
前記複数の通常のブロックの第4の通常のブロックに新しいファイルを格納し、
前記新しいファイルが前記ベースファイルのアップデートバージョンである場合、前記第4の通常のブロックを前記第3の通常のブロックにマップするマッピング情報を記録する、請求項29に記載の通常のクライアントプラットフォーム。
A second driver, the second driver comprising:
Storing a new file in a fourth regular block of the plurality of regular blocks;
30. The normal client platform of claim 29, wherein if the new file is an updated version of the base file, mapping information is recorded that maps the fourth normal block to the third normal block.
JP2012009332A 2012-01-19 2012-01-19 Customizing space in a network environment Expired - Fee Related JP5414814B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012009332A JP5414814B2 (en) 2012-01-19 2012-01-19 Customizing space in a network environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012009332A JP5414814B2 (en) 2012-01-19 2012-01-19 Customizing space in a network environment

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2009524063A Division JP5070286B2 (en) 2006-09-11 2006-09-11 Customizing space in a network environment

Publications (2)

Publication Number Publication Date
JP2012104150A true JP2012104150A (en) 2012-05-31
JP5414814B2 JP5414814B2 (en) 2014-02-12

Family

ID=46394376

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012009332A Expired - Fee Related JP5414814B2 (en) 2012-01-19 2012-01-19 Customizing space in a network environment

Country Status (1)

Country Link
JP (1) JP5414814B2 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021530037A (en) * 2018-06-29 2021-11-04 アマゾン テクノロジーズ インコーポレイテッド Operating system customization in on-demand network code execution system
US11550713B1 (en) 2020-11-25 2023-01-10 Amazon Technologies, Inc. Garbage collection in distributed systems using life cycled storage roots
US11593270B1 (en) 2020-11-25 2023-02-28 Amazon Technologies, Inc. Fast distributed caching using erasure coded object parts
US11714675B2 (en) 2019-06-20 2023-08-01 Amazon Technologies, Inc. Virtualization-based transaction handling in an on-demand network code execution system
US11714682B1 (en) 2020-03-03 2023-08-01 Amazon Technologies, Inc. Reclaiming computing resources in an on-demand code execution system
US11836516B2 (en) 2018-07-25 2023-12-05 Amazon Technologies, Inc. Reducing execution times in an on-demand network code execution system using saved machine states
US11861386B1 (en) 2019-03-22 2024-01-02 Amazon Technologies, Inc. Application gateways in an on-demand network code execution system
US11875173B2 (en) 2018-06-25 2024-01-16 Amazon Technologies, Inc. Execution of auxiliary functions in an on-demand network code execution system
US11943093B1 (en) 2018-11-20 2024-03-26 Amazon Technologies, Inc. Network connection recovery after virtual machine transition in an on-demand network code execution system
US11968280B1 (en) 2021-11-24 2024-04-23 Amazon Technologies, Inc. Controlling ingestion of streaming data to serverless function executions

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11306121A (en) * 1998-04-17 1999-11-05 Toshiba Corp Computer and its system
JP2001282729A (en) * 2000-03-30 2001-10-12 Casio Comput Co Ltd System and method for setting user environment, and recording medium
US6487718B1 (en) * 1999-03-31 2002-11-26 International Business Machines Corporation Method and apparatus for installing applications in a distributed data processing system
JP2003099268A (en) * 2001-07-24 2003-04-04 Microsoft Corp Method and system for creating and employing operating system having selected functionality
JP2003288259A (en) * 2002-03-28 2003-10-10 Hitachi Ltd Information processing system
JP2005209195A (en) * 2004-01-19 2005-08-04 Samsung Electronics Co Ltd Embedded system using binary position information and remote software downloading method therein
JP2005339133A (en) * 2004-05-26 2005-12-08 Nippon Telegr & Teleph Corp <Ntt> System for shared personal computer and management method for it
JP2006134172A (en) * 2004-11-08 2006-05-25 Nippon Telegr & Teleph Corp <Ntt> Control method for interoperable computer, interoperable computer and shared computer control program
US20060143362A1 (en) * 2004-12-29 2006-06-29 Cong Li Apparatus and method for incremental package deployment

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11306121A (en) * 1998-04-17 1999-11-05 Toshiba Corp Computer and its system
US6487718B1 (en) * 1999-03-31 2002-11-26 International Business Machines Corporation Method and apparatus for installing applications in a distributed data processing system
JP2001282729A (en) * 2000-03-30 2001-10-12 Casio Comput Co Ltd System and method for setting user environment, and recording medium
JP2003099268A (en) * 2001-07-24 2003-04-04 Microsoft Corp Method and system for creating and employing operating system having selected functionality
JP2003288259A (en) * 2002-03-28 2003-10-10 Hitachi Ltd Information processing system
JP2005209195A (en) * 2004-01-19 2005-08-04 Samsung Electronics Co Ltd Embedded system using binary position information and remote software downloading method therein
JP2005339133A (en) * 2004-05-26 2005-12-08 Nippon Telegr & Teleph Corp <Ntt> System for shared personal computer and management method for it
JP2006134172A (en) * 2004-11-08 2006-05-25 Nippon Telegr & Teleph Corp <Ntt> Control method for interoperable computer, interoperable computer and shared computer control program
US20060143362A1 (en) * 2004-12-29 2006-06-29 Cong Li Apparatus and method for incremental package deployment

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11875173B2 (en) 2018-06-25 2024-01-16 Amazon Technologies, Inc. Execution of auxiliary functions in an on-demand network code execution system
JP2021530037A (en) * 2018-06-29 2021-11-04 アマゾン テクノロジーズ インコーポレイテッド Operating system customization in on-demand network code execution system
JP7275171B2 (en) 2018-06-29 2023-05-17 アマゾン テクノロジーズ インコーポレイテッド Operating System Customization in On-Demand Network Code Execution Systems
US11836516B2 (en) 2018-07-25 2023-12-05 Amazon Technologies, Inc. Reducing execution times in an on-demand network code execution system using saved machine states
US11943093B1 (en) 2018-11-20 2024-03-26 Amazon Technologies, Inc. Network connection recovery after virtual machine transition in an on-demand network code execution system
US11861386B1 (en) 2019-03-22 2024-01-02 Amazon Technologies, Inc. Application gateways in an on-demand network code execution system
US11714675B2 (en) 2019-06-20 2023-08-01 Amazon Technologies, Inc. Virtualization-based transaction handling in an on-demand network code execution system
US11714682B1 (en) 2020-03-03 2023-08-01 Amazon Technologies, Inc. Reclaiming computing resources in an on-demand code execution system
US11550713B1 (en) 2020-11-25 2023-01-10 Amazon Technologies, Inc. Garbage collection in distributed systems using life cycled storage roots
US11593270B1 (en) 2020-11-25 2023-02-28 Amazon Technologies, Inc. Fast distributed caching using erasure coded object parts
US11968280B1 (en) 2021-11-24 2024-04-23 Amazon Technologies, Inc. Controlling ingestion of streaming data to serverless function executions

Also Published As

Publication number Publication date
JP5414814B2 (en) 2014-02-12

Similar Documents

Publication Publication Date Title
JP5414814B2 (en) Customizing space in a network environment
US8402437B2 (en) System and method for updating initialization parameters for application software from within a software development environment
US9619304B2 (en) Automatic connections between application components
TWI250451B (en) Method and system for creating and employing an operating system having selected functionality
US10447814B2 (en) Joint servicing of software packages
CN102246157B (en) Method and system for isolating applications hosted by plug-in code
US9413608B2 (en) Systems and methods for dynamic mobile applications
US9614931B2 (en) Identifying a resource set require for a requested application and launching the resource set in a container for execution in a host operating system
CN102193817B (en) Simplify the management of physics and virtual deployment
US20080127162A1 (en) Method and apparatus for configuring application software
JP2008234673A (en) System and method for managing application installation for mobile device
US8346854B2 (en) Method and system of operating system independence
CN107832099A (en) A kind of client release compatible method, apparatus and storage medium
CN101479721A (en) Running applications from removable media
JP5070286B2 (en) Customizing space in a network environment
WO2016062146A1 (en) Serial number information update method, device and terminal
JP2010500671A5 (en)
US9710575B2 (en) Hybrid platform-dependent simulation interface
US20090307680A1 (en) Side-by-side driver installation
CN109150956A (en) A kind of implementation method, device, equipment and computer storage medium pushing SDK
CN113127361A (en) Application program development method and device, electronic equipment and storage medium
JP6444862B2 (en) Thin client for mapping system
CN112154417A (en) Sharing a code base between a stand-alone version and a Web-based version of an application via an emulated network communication channel
CA2878759C (en) Methods and systems for providing software applications
US10303462B2 (en) Windows support of a pluggable ecosystem for universal windows application stores

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130607

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130618

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130911

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131015

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131112

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees