(57)【要約】【課題】時間を消費せず、複数のコンピュータに対し１回で共通するインストール動作を実行すること。【解決手段】ソースＣＲＭ５は実行時イメージ１を含み、転送には実行時イメージ１の複製ないし転送７、および実行可能インストールルーチン１０の転送ＣＲＭ２０への複製ないし転送９が含まれる。実行可能インストールルーチン１０、３０は、ＣＲＭへのアクセス、ハードウェア検出、最低限のユーザインタフェースおよびインストールプログラムのブートおよび実行を行うルーチンを含む関数を有する。目的コンピュータ３５は、ターゲットＣＲＭ４０へのアクセスを有し、実行可能インストールルーチン３０を実行して、ターゲットＣＲＭ４０を構成する。実行可能インストールルーチン１０、３０、２７によりターゲットＣＲＭ４０をこのように構成することによって、ディスクのジオメトリに独立とすることができる。【選択図】　　　　図１
2004021981.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータコンテキストに独立の実行時イメージをソースコンピュータ読み取り可能媒体から目的コンピュータの１つまたは複数のターゲットコンピュータ読み取り可能媒体に、１つまたは複数の転送コンピュータ読み取り可能媒体を介して転送する方法であって、
前記実行時イメージを前記転送媒体に複製するステップと、
実行可能インストールルーチンを前記転送媒体に複製するステップであって、前記実行可能インストールルーチンは、前記目的コンピュータによって実行されると、前記実行時イメージを前記ターゲット媒体に適用して、該適用された実行時イメージと前記目的コンピュータとを統合するステップと
を備えたことを特徴とする方法。
【請求項２】
前記実行時イメージは、オペレーティングシステムもしくはアプリケーションプログラムまたは双方を備えたことを特徴とする請求項１に記載の方法。
【請求項３】
前記実行可能インストールルーチンは、前記目的コンピュータによって実行されると、１つまたは複数のデータの操作動作を前記ターゲット媒体上で実行して、前記適用された実行時イメージと前記目的コンピュータとを連結することを特徴とする請求項１記載の方法。
【請求項４】
前記データの操作動作は、前記目的コンピュータに対するシステム設定を更新するステップを備えたことを特徴とする請求項３記載の方法。
【請求項５】
前記実行可能インストールルーチンは、前記目的コンピュータがブートする最低限のオペレーティングシステムを備えたことを特徴とする請求項１に記載の方法。
【請求項６】
１つまたは複数のコンピュータ読み取り可能媒体は、請求項１に記載の方法を実行するコンピュータ実行可能命令を有することを特徴とする請求項１記載の方法。
【請求項７】
コンピュータコンテキストに独立の実行時イメージをソースコンピュータ読み取り可能媒体から目的コンピュータの１つまたは複数のターゲットコンピュータ読み取り可能媒体に転送する方法であって、
前記実行時イメージを前記ターゲット媒体に適用するステップと、
実行可能インストールルーチンを前記ターゲット媒体に複製するステップであって、前記実行可能インストールルーチンは、前記目的コンピュータによって実行されると、前記適用された実行時イメージと前記目的コンピュータとを統合するステップと
を備えたことを特徴とする方法。
【請求項８】
前記実行時イメージはオペレーティングシステムもしくはアプリケーションプログラムまたは双方を備えたことを特徴とする請求項７に記載の方法。
【請求項９】
前記実行可能インストールルーチンは、前記目的コンピュータによって実行されると、前記実行時イメージと前記目的コンピュータとを１つまたは複数のデータの操作動作を前記ターゲット媒体上で実行することによって統合して、前記適用された実行時イメージと前記目的コンピュータとを連結することを特徴とする請求項７記載の方法。
【請求項１０】
前記データの操作動作は、少なくとも１つのシステム設定を更新するステップを備えたことを特徴とする請求項９記載の方法。
【請求項１１】
１つまたは複数のコンピュータ読み取り可能媒体は、請求項７に記載の方法を実行するコンピュータ実行可能命令を有することを特徴とする請求項７記載の方法。
【請求項１２】
コンピュータコンテキストに独立の実行時イメージを目的コンピュータの１つまたは複数のターゲットコンピュータ読み取り可能媒体に適用するためのコンピュータ実行可能コンポーネントを有する１つまたは複数のコンピュータ読み取り可能媒体であって、前記コンポーネントは、
前記ターゲット媒体によって用いるための実行時イメージと、
実行可能インストールルーチンであって、前記目的コンピュータによって実行されると、前記実行時イメージを前記ターゲット媒体上に適用して前記適用された実行時イメージと前記目的コンピュータとを統合するルーチンと
を備えたことを特徴とするコンピュータ読み取り可能媒体。
【請求項１３】
前記実行時イメージはオペレーティングシステムもしくはアプリケーションプログラムまたは双方を備えたことを特徴とする請求項１２に記載のコンピュータ読み取り可能媒体。
【請求項１４】
前記実行可能インストールルーチンは、１つまたは複数の統合タスクのリストを備え、および前記目的コンピュータによって実行されると、前記リストにある統合タスクの各々を実行して、前記適用された実行時イメージと前記目的コンピュータとを統合することを特徴とする請求項１２記載のコンピュータ読み取り可能媒体。
【請求項１５】
前記統合タスクは、前記目的コンピュータに対する１つまたは複数の設定を前記目的コンピュータを識別するセキュリティ識別データで更新することを特徴とする請求項１４記載の方法。
【請求項１６】
前記コンポーネントは、前記目的コンピュータがブートする最低限のオペレーティングシステムをさらに備えたことを特徴とする請求項１２に記載の方法。
【請求項１７】
コンピュータコンテキストに独立の実行時イメージと、１つまたは複数のターゲットコンピュータ読み取り可能媒体を有する目的コンピュータとを統合するよう実行するための１つまたは複数の統合タスクのリストを示すデータ構造を格納するコンピュータ読み取り可能媒体であって、前記データ構造は、
前記実行時イメージを前記ターゲット媒体に適用し、
前記目的コンピュータに固有の１つまたは複数のパラメータを決定し、および、
前記決定したパラメータと前記適用された実行時イメージとを統合する
コピュータ実行可能命令を格納する１つまたは複数のデータフィールドを備えたことを特徴とするコンピュータ読み取り可能媒体。
【請求項１８】
前記パラメータは、セキュリティ識別データもしくはハードウェア抽象化層または双方を備えたことを特徴とする請求項１７に記載のコンピュータ読み取り可能媒体。
【請求項１９】
前記データフィールドは、前記目的コンピュータをブートするためのコンピュータ実行可能命令をさらに格納することを特徴とする請求項１７記載のコンピュータ読み取り可能媒体。
【請求項２０】
コンピュータコンテキストに独立の実行時イメージを目的コンピュータの１つまたは複数のターゲットコンピュータ読み取り可能媒体に適用するためのコンピュータ実行可能コンポーネントを有する１つまたは複数のコンピュータ読み取り可能媒体であって、前記コンポーネントは、
前記実行時イメージを前記ターゲット媒体に適用するイメージ化ツールと、
前記適用された実行時イメージと前記目的コンピュータとを統合するための統合モジュールと
を備えたことを特徴とするコンピュータ読み取り可能媒体。
【請求項２１】
前記イメージ化ツールは、実行されると、少なくとも１つのファイルを前記ターゲット媒体に複製することを特徴とする請求項２０に記載のコンピュータ読み取り可能媒体。
【請求項２２】
前記イメージ化ツールは、実行されると、前記ターゲット媒体上の複製されたファイルを妥当性検査することを特徴とする請求項２１記載のコンピュータ読み取り可能媒体。
【請求項２３】
前記目的コンピュータは、前記イメージ化ツールを実行することを特徴とする請求項２０記載のコンピュータ読み取り可能媒体。
【請求項２４】
前記目的コンピュータは、オペレーティングシステムを備え、前記実行時イメージはアプリケーションプログラムを備え、および前記目的コンピュータは、前記オペレーティングシステムから前記統合モジュールを実行して、前記適用された実行時イメージと前記目的コンピュータとを統合することを特徴とする請求項２０記載のコンピュータ読み取り可能媒体。
【請求項２５】
前記統合モジュールは、前記目的コンピュータによって実行されると、前記目的コンピュータに固有の１つまたは複数のパラメータを決定して、当該決定されたパラメータと前記実行時イメージとを統合することを特徴とする請求項２０記載のコンピュータ読み取り可能媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はソフトウェアインストールに関し、より具体的には、イメージベースのソフトウェアインストールのためのシステムおよび方法に関する。
【０００２】
【従来の技術】
オペレーティングシステムは、全てのコンピュータシステムあるいはコンピュータ化された装置の心臓部にある。ソフトウェアアプリケーションおよびハードウェアは、オペレーティングシステムによって提供される環境で動作するように設計される。このため、オペレーティングシステムは、その常駐するコンピュータまたは装置の資源を管理およびスケジューリングし、並びにアプリケーションプログラムがそれらのタスクを実行するために使用することができる様々な関数モジュールおよびインタフェースを提供する。
【０００３】
【発明が解決しようとする課題】
従来のシステムにおいて、アプリケーションプログラムおよびオペレーティングシステムは、システム上のハードウェアに関する情報を発見し、ソースファイルをコピーして伸張し、それらのファイルをライブラリ登録などの方法によってインストールして、それらのインストールされたファイルをユーザ入力に基づいて構成することによってインストールを実行するものがある。このインストールプロセスは一般に時間を消費し、特にファイルをインストールする局面で、アプリケーションをインストールするシステムもオペレーティングシステムをインストールするシステムも関係なく、インストールプロセスの動作の多くは同じである。これらの従来のシステムによって、システム情報を発見し、ファイルをコピーして伸張し、ファイルをインストールし登録して、ユーザの要求を構成するには、非常に長い時間が必要である。このようなシステムでは、複数のコンピュータに対し１回で共通するインストール動作を実行する方法がない。
【０００４】
これらの理由から、イメージベースのインストールで目的とされるシステムにおいては、これらおよびその他１つまたは複数の問題に取り組むことが必要となる。
【０００５】
【課題を解決するための手段】
本発明によって、イメージベースのインストールのためのソフトウェアが提供される。特に、本発明には、コンピュータコンテキストに独立の実行時イメージをソースコンピュータ読み取り可能媒体から１または複数のターゲットコンピュータ読み取り可能媒体へ１つまたは複数の転送（ｔｒａｎｓｆｅｒ）コンピュータ読み取り可能媒体を介して転送するためのソフトウェアが含まれる。本ソフトウェアは、オペレーティングシステムおよび／または関連するアプリケーションプログラムを実行時イメージとして適用する。
【０００６】
本発明の全イメージでのソフトウェアインストール手法は、ソフトウェア製品を含む個々のファイルの集合をインストールするのではなく、ソフトウェア製品あるいは他のソフトウェアプログラムのイメージ全体をインストールするステップを備える。ソフトウェア製品がオペレーティングシステムの場合、本発明にかかるソフトウェアは、最低限のオペレーティングシステムをコンピュータ読み取り可能媒体からブートし、ローカルのハードウェアを構成し、最低限の設定を構成し、そのソフトウェアイメージを適用し、続いてユーザの好みのカスタマイズや登録その他のために適用されたソフトウェアイメージをブートする。伝統的な従来のインストールタスクは、適用される前のソフトウェア製品が生成される間に実行され、このため、目的（ｔａｒｇｅｔ）コンピュータで再度実行する必要がない。結果として、本発明により適用されたソフトウェアイメージ製品は目的コンピュータ上では伝統的インストールを実行しないこととなり、時間を節約して、エラーの危険にさらされるおそれを減らす。次に、目的コンピュータに固有のセットアップタスクは、目的コンピュータ上で統合タスクとして実行される。本発明にかかるソフトウェアは、目的コンピュータのコンピュータ読み取り可能媒体のフォーマット、分割またはジオメトリに独立である。
【０００７】
本発明にかかるソフトウェアは、ハードウェアに独立したイメージを転送して、いかなるコンピュータ読み取り可能媒体にもインストールする。加えて、統合の間、そのイメージに他のコンポーネントを加えてインストールすることができる。このようなコンポーネントは、アンインストールされるオブジェクトとしてイメージ内に存在することができるか、またはネットワーク共有を介してアクセス可能であり、そうでなければ有効なＵＲＬから取得することができる。本ソフトウェアによって、イメージを適用する前のソフトウェア製品生成中の失敗するおそれの最も多い個所において、ソフトウェア製品の確実なインストールを提供することもできる。
【０００８】
本発明の一態様による方法では、コンピュータコンテキストに独立の実行時イメージをソースコンピュータ読み取り可能媒体から１つまたは複数のターゲットコンピュータ読み取り可能媒体へ１つまたは複数の転送コンピュータ読み取り可能媒体によって転送する。特に、この方法は、実行可能なインストールルーチンに加えて実行時イメージを転送媒体に複製するステップを含む。実行可能なインストールルーチンは、目的コンピュータによって実行されると、実行時イメージをターゲット媒体に適用して実行時イメージと目的コンピュータとを統合（ｉｎｔｅｇｒａｔｅ）する。
【０００９】
本発明の他の態様による方法では、コンピュータコンテキストに独立の実行時イメージをソースコンピュータ読み取り可能媒体から１つまたは複数の目的コンピュータのターゲットコンピュータ読み取り可能媒体へ転送する。特に、この方法は実行時イメージをターゲット媒体に適用して、実行可能なインストールルーチンをターゲット媒体に複製するステップを含む。実行可能なインストールルーチンは、目的コンピュータによって実行されると、実行時イメージと目的コンピュータとを統合する。
【００１０】
本発明のさらに他の態様によるコンピュータ読み取り可能媒体は、コンピュータ実行可能コンポーネントを含む。コンピュータ実行可能コンポーネントは、コンピュータコンテキストに独立の実行時イメージを目的コンピュータの１つまたは複数のターゲットコンピュータ読み取り可能媒体に適用する。本コンポーネントは、目的コンピュータで使用する実行時イメージを含む。本コンポーネントはまた、実行可能なインストールルーチンを含み、それは目的コンピュータによって実行されると、実行時イメージをそのターゲット媒体に適用して、適用された実行時イメージと目的コンピュータとを統合する。
【００１１】
また、本発明の他の態様によるコンピュータ読み取り可能媒体は、１つまたは複数の統合タスクのリストを表すデータ構造を格納する。１つまたは複数のターゲットコンピュータ読み取り可能媒体を含む目的コンピュータは、統合タスクを実行して、コンピュータコンテキストに独立の実行時イメージと目的コンピュータとを統合する。本データ構造は、コンピュータ実行可能命令を格納する１つまたは複数のデータフィールドを含む。本コンピュータ実行可能命令は、実行時イメージをターゲット媒体に適用する。また、本コンピュータ実行可能命令は、目的コンピュータに固有の１つまたは複数のパラメータも決定する。さらに、本コンピュータ実行可能命令は、決定されたパラメータと実行時イメージとを統合する。
【００１２】
さらに、本発明の他の態様のコンピュータ読み取り可能媒体は、コンピュータ実行可能コンポーネントを含む。本コンピュータ実行可能コンポーネントは、コンピュータコンテキストに独立の実行時イメージを目的コンピュータの１つまたは複数のコンピュータ読み取り可能媒体に適用する。本コンピュータ実行可能コンポーネントは、実行時イメージをターゲット媒体に適用するイメージ化ツールを含む。本コンピュータ実行可能コンポーネントはまた、適用された実行時イメージと目的コンピュータとを統合する統合モジュールをも含む。
【００１３】
これに替えて、本発明はその他の種々の方法および装置を備えることができる。その他の特徴は、以下に明らかとなり、あるいは指摘されるであろう。
【００１４】
【発明の実施の形態】
現代のオペレーティングシステムおよびアプリケーションの多くは、すぐには実行できない状態でエンドユーザに出荷される。代わりに、エンドユーザの（「目的」）コンピュータ上での統合を達成するために、一般に「セットアップ」や「インストール」として知られる付加的処理が必要である。例えば、単純なソフトウェアなら、単に１つまたは複数のシステム設定（例えばレジストリキー）を行うだけで済むであろう。他のソフトウェアでは、デバイスドライバやサービスを定義するかもしれない。この統合のプロセスは、目的コンピュータシステムがオペレーティングシステムを実行している間に処理される。反対に、本明細書に記載された本発明にしたがうプロセスでは、予め処理されたソフトウェア製品または他のソフトウェアプログラムを「実行時イメージ」として転送する手法が（とりわけ）採られるが、ここで実行時イメージとはすぐに実行できるオペレーティングシステムまたはアプリケーションプログラムであり、一般に、目的コンピュータ上では付加的な「セットアップ」や「インストール」処理は必要ないか、あったとしてもほんのわずかである（図１参照）。目的コンピュータ上でインストール前に予め処理されたソフトウェア製品は、コンピュータコンテキストに独立しており、これにはハードウェア構成、ソフトウェア設定およびユーザ構成データが含まれるがこれに限られない。すなわち、予め処理されたソフトウェア製品は、目的コンピュータの種々のハードウェアまたはソフトウェア構成で動作することができる。加えて、コンピュータコンテキストに独立の実行時イメージは新しいユーザのため準備されるか、または他の構成データをリセット（例えばタイマ）させることができる。しかし、本発明の一般的な構造から、他の種類のソフトウェアプログラムの実行時イメージの転送にも等しく適用することができることを当業者は理解するであろう。ソフトウェアの機能は、実行時イメージに複製する一連のファイルと、目的コンピュータに編集または追加が必要なシステム設定および値のセットとによって定められる。
【００１５】
本発明にかかるソフトウェアの機能は、伝統的なインストールプロセスを改良するものだが、コンピュータ読み取り可能媒体（ＣＲＭ）上に格納された個々のファイルを使用する代わりに、そのソフトウェア製品のイメージを使用する。例えば、あるシステムにおいて、インストールソフトウェアは、複数のファイルを目的コンピュータに複製してインストールされたファイルを登録するステップを含む。登録によって目的コンピュータ上に、システム設定が追加され、データ構造が生成される。システム設定や生成されたデータの主なものはマシン固有ではない。例えば、ｅｘａｍｐｌｅ．ｄｌｌを登録すると、それがいかなるシステム（例えば、目的コンピュータ）上にインストールされるかにかかわらず３つのレジストリキー（ＨＫＬＭ＼ＳＷ＼ＵＳ＼ＭｙＡｐｐ：：ｉｎｆｏ１＝ＭｙＡｐｐＮａｍｅ，　など）またはそのシステムの構成が設定される。レジストリキーを生成する動作を実行すると、各ファイルに対する動作に時間がかかり、時間が消費される。本発明においては、インストール時以前に（例えば、アプリケーションを構築してコンパイルする間に）システム設定またはその他データ構造が生成される。生成されたデータ構造は、目的コンピュータの既存のデータ構造にマージされる。同様に、オペレーティングシステムまたはアプリケーションプログラムのファイルを目的コンピュータに個別に複製すると、単一のイメージをローカルＣＲＭにインストール中に複製してファイルを個別にそのイメージからファイルシステム内の適正な位置に移動するよりも遅くなる。さらに、マシン固有のデータ（例えば、レジストリキー　ＫｅｙＦｏｏ＝ｍａｃｈｉｎｅ＿ｓｐｅｃｉｆｉｃ＿ｓｅｃｕｒｉｔｙ＿ＩＤ＋“ａｐｐｌｉｃａｔｉｏｎｎａｍｅ”）は、イメージの処理の後再生成される。
【００１６】
マシン固有のインストールタスクは、ソフトウェア製品を予め処理することによって通常のインストールタスクと区別されている。例えば、通常のタスクには、システム設定の構成（例えば、レジストリキー）およびソフトウェアオブジェクトの登録（例えば、ダイナミックリンクライブラリの登録）が含まれるがこれに限られない。通常のタスクは、イメージ化（ｉｍａｇｉｎｇ）またはソフトウェア製品の適用前に実行される。マシン固有のタスクは、目的コンピュータのためのセキュリティ情報を生成し、目的コンピュータのセキュリティ情報に基づいてマシン固有設定（例えば、暗号キー）を生成し、およびハードウェアを検出するステップを含むがこれに限られない。マシン固有タスクの小セットは、目的コンピュータ上にイメージを適用した後に実行される。一般に、本発明のソフトウェアイメージ処理によって、結果として、従来のインストール処理、すなわちファイルの複製、レジストリエントリおよびキーの生成、並びに目的コンピュータ上の全てのソフトウェアオブジェクトの登録を行う処理よりも失敗率が低下する。
【００１７】
図面中対応する符号は、図面全体をとおして対応する部分を示す。
【００１８】
図１を参照すると、例示のブロック図は実行時イメージ１のソースＣＲＭ５から目的コンピュータ３５上にある少なくとも１つのターゲットＣＲＭ４０への転送を示す。例えば、ソースＣＲＭ５およびターゲットＣＲＭ４０は大容量記憶装置である。一実施形態において、転送は少なくとも１つの転送ＣＲＭ２０を介して行われる。ソースＣＲＭ５は、本明細書に記載されたように、オペレーティングシステムもしくはアプリケーションプログラムまたはその双方の実行時イメージ１を含む。一実施形態において、転送には実行時イメージ１の複製および転送７、ならびに実行可能インストールルーチン１０の転送ＣＲＭ２０への複製および転送９が含まれる。複製７、９が、実行時イメージ１および実行可能インストールルーチン１０に関連するデータのインストール、イメージ化および転送で実行することができることを当業者は理解するであろう。複製７、９は、実行時イメージ１（例えば、ｉｍａｇｅ．ｉｍｇ）および実行可能インストールルーチン１０の複製を（実行時イメージ２５および実行可能インストールルーチン３０によって示されるように）転送ＣＲＭ２０上に生成する。転送ＣＲＭ２０には、任意の取外し可能または固定のＣＲＭ、例えばＣＤ−ＲＯＭまたはＤＶＤ−ＲＯＭが含まれるがこれに限られない。実行可能インストールルーチン１０、３０は、ＣＲＭへのアクセス（ファイルの入出力）、ハードウェア検出（例えば、ＨＡＬのロード）、最低限のユーザインタフェースおよびインストールプログラムのブートおよび実行を行うソフトウェアルーチンを含む関数（ｆｕｎｃｔｉｏｎａｌｉｔｙ）を有するがこれに限られない。実行可能インストールルーチン１０、３０は、本明細書に記載されたよりも多くのまたは少ない関数を持つことができ、これらはさらに本発明者が達成したように本発明の範囲にあることを当業者は気づくであろう。
【００１９】
転送ＣＲＭ２０が取外し可能ＣＲＭである一実施形態では、ユーザは実行時イメージ２５および実行可能インストールルーチン３０を持つ転送ＣＲＭ２０を目的コンピュータ３５に挿入する。目的コンピュータ３５は、ターゲットＣＲＭ４０へのアクセスを有する。目的コンピュータ３５は、実行可能インストールルーチン３０を実行して、ターゲットＣＲＭ４０（例えば、大容量記憶装置）を構成する。実行可能インストールルーチン１０、３０、２７によりターゲットＣＲＭ４０をこのように構成することによって、ディスクのジオメトリに独立とすることができる。すなわち、ターゲットＣＲＭ４０を構成することによって、実行時イメージ１、２５、２６をターゲットＣＲＭ４０のいずれのフォーマット、分割（ｐａｒｔｉｔｉｏｎ）またはその他のジオメトリに適用することも許される。本イメージ化処理は、実行時イメージ１、２５、２６のフォーマットあるいはジオメトリに限定されない。このように発明者はターゲットＣＲＭ４０を構成することによって、本発明のイメージ化処理は、実行時イメージ１、２５、２６を現在または将来のＣＲＭまたはファイルシステムのいずれのフォーマットにも適用することを許されることを予想している。
【００２０】
加えて、実行可能インストールルーチン３０は、（例えば、ユーザからのまたはスクリプトを介する入力に応答して）実行されると、実行時イメージ２５をターゲットＣＲＭ４０に適用して、実行時イメージ２６を生成する。一実施形態において、実行時イメージ２５を適用するステップは、実行時イメージ２５をパッケージするステップ、実行時イメージ２５をターゲットＣＲＭ４０に転送あるいは複製するステップ、および／またはターゲットＣＲＭ４０に格納された転送あるいは複製済み実行時イメージ２６を（例えば、周期冗長検査を通して）検証するステップを含む。実行時イメージ２５が、本技術分野で既知であって、発明者が本発明の範囲内にあると意図する種々の手法により、ターゲットＣＲＭ４０に適用し、および検証することができることを当業者は気づくであろう。さらに、実行時イメージ２５を適用するステップは、実行時イメージ２５をターゲットＣＲＭ４０に単純に（例えば、ファイルごとにまたはビットごとに）複製するステップを含むことができる。
【００２１】
目的コンピュータ３５は、さらに、実行可能インストールルーチン３０を実行して、少なくとも１つの統合タスクを実行するか、そうでなければターゲットＣＲＭ４０上のデータを操作することによって、ターゲットＣＲＭ４０上の実行時イメージ２６と目的コンピュータ３５とを統合する。統合タスクを実行することによって、実行時イメージ２６を目的コンピュータ３５にリンクし、そうでなければ統合する。統合には、ハードウェア検出およびドライバインストール、ソフトウェア登録、並びにセキュリティ識別子の決定および暗号化が含まれるがこれに限られない。加えて、統合には、１つまたは複数の適用されたイメージへのリブートを含めることができる。他の統合タスクには、種々のアプリケーションプログラムを（例えば、ブートアップの際にスプラッシュスクリーンを加える）ブランディングおよびプリインストールを行うステップを含むことができる。適用された実行時イメージ２６へのリブートの後、プリインストールされたアプリケーションの全てのインストールが実行される。実行可能インストールルーチン３０は、転送ＣＲＭ２０または別のＣＲＭ上で提供することができ、目的コンピュータ３５によってアクセス可能とすることができる。加えて、実行可能インストールルーチン３０は、今後の処理（例えば、実行時イメージ２６へのリブートの後、統合タスクの実行）を考慮して、実行可能インストールルーチン２７としてその機能のいくつかまたは全てをターゲットＣＲＭ４０に複製するために実行することができる。
【００２２】
本発明にかかるソフトウェアルーチンは、アプリケーションプログラムおよびオペレーティングシステムを含むがこれに限られない、いかなるデータをインストールするためにも使用することができる。実行時イメージ２６がアプリケーションプログラムの場合、実行可能インストールルーチン３０は、より少ない統合タスクしか実行しないかもしれない。例えば、アプリケーションプログラムの転送および統合の間は、ハードウェア検出、ドライバインストールおよびソフトウェア登録は行われない場合がある。従来のインストールタスクをマシン固有タスクから分離することによって、より広範な機能を有するイメージが得られる。
【００２３】
別の例においては、種々のマザーボードの能力に対応するため、オペレーティングシステムによって提供される種々のハードウェア抽象化層（ＨＡＬｓ）からのサポートを必要とする。本発明によって、（実行時イメージ１のような）単一のオペレーティングシステムの実行時イメージは、複数のＨＡＬを含むため、異なる電力制御が必要な、異なる数のプロセッサをもつ複数の多様なマザーボードで動作するであろう。統合タスクは、ＨＡＬを構成して、目的コンピュータ３５上のいずれかの大容量記憶装置コントローラを識別するステップを含む。
【００２４】
発明者が本発明の範囲に入るよう意図する本発明のいくつかの代替の実施形態を以下に説明する。このような代替の形態においては、実行可能インストールルーチン３０は、実行可能インストールルーチン３０の関数のいくつかをターゲットＣＲＭ４０にコピーするだけである。実行可能インストールルーチン２７は、適用された実行時イメージ２６への目的コンピュータ３５をリブートした後に実行することができる。別の実施形態では、実行時インストールルーチン１０の関数は、転送ＣＲＭ２０にもターゲットＣＲＭ４０にも複製されない。この代わりに、目的コンピュータ３５は、実行時インストールルーチン１０を実行するためアクセスすることができる。転送ＣＲＭ２０を欠く実施形態においては、目的コンピュータ３５は、直接接続または図５を参照して説明されるようなネットワークを介しての、ソースＣＲＭ５上にある実行時イメージ１へのアクセス３および実行可能インストールルーチン１０へのアクセス４を行う。
【００２５】
実行時イメージ１（または、実行時イメージ２５）がオペレーティングシステムの場合、目的コンピュータ３５は、ソースＣＲＭ５（または、転送ＣＲＭ２０）に格納された最低限のオペレーティングシステムをブートし、ターゲットＣＲＭ４０を構成し、および実行時イメージ１（または、実行時イメージ２５）を適用する。この作法で、本発明にかかるソフトウェアは、実行時イメージをターゲットＣＲＭ４０にインストールされるオペレーティングシステムを欠く目的コンピュータ、例えば目的コンピュータ３５に適用するステップを備える。すなわち、本処理は、まだ最低限のオペレーティングシステム環境にある間に実行時イメージをローカルの大容量記憶装置に適用して、適用されたイメージのハードウェアおよびソフトウェアの設定を構成するステップを含む。本処理は、構成されおよび適用されたイメージにブートして、いかなる統合タスクも実行する。
【００２６】
実行時イメージ１（または実行時イメージ２５）がアプリケーションプログラムの場合、目的コンピュータ３５は、実行可能インストールルーチン１０（または実行可能インストールルーチン３０あるいは実行可能インストールルーチン２７）を目的コンピュータ３５のオペレーティングシステムから実行して、実行時イメージ１（または実行時イメージ２５）を適用し、および／または適用された実行時イメージ２６と目的コンピュータ３５のオペレーティングシステムとを（例えば、マシン固有タスクを実行して）統合する。目的コンピュータ３５のオペレーティングシステムは、完全なオペレーティングシステムとすることも、または最低限のオペレーティングシステムとすることもできる。
【００２７】
本発明の多様なＣＲＭが、１つまたは複数のコンピュータに物理的に配置され、あるいはアクセスすることができることを当業者は気づくであろう。このようにＣＲＭおよびコンピュータ間の物理的配置や接続が多様であることは、本技術分野ではよく知られており、本発明の範囲内にあると発明者は意図している。加えて、図１〜４に例示される要素は、単独のＣＲＭ上にまたは複数のＣＲＭを組み合わせて格納することができる。さらに、実行可能インストールルーチン１０は、ソースＣＲＭ５またはコンピュータが優先してアクセス可能な他のＣＲＭのいずれかに格納して、適用し、および／または実行時イメージ２６と目的コンピュータ３５とを統合することができる。
【００２８】
次に図２を参照すると、実行時イメージ１のソースＣＲＭ５からターゲットＣＲＭ４０への転送ＣＲＭ２０を介する転送を例示するフローチャートが示される。ステップ４２において、システム管理者またはその他のユーザは、実行時イメージ１をソースＣＲＭ５上に格納する。システム管理者は、ステップ４４および４６においてそれぞれ、実行時イメージ１および実行可能インストールルーチン１０を転送ＣＲＭ２０に複製または転送する。目的コンピュータ３５は、ステップ４８において目的コンピュータ３５上の実行可能インストールルーチン３０を実行して、ステップ５０において転送ＣＲＭ２０に格納された実行時イメージ２５をターゲットＣＲＭ４０に適用する。さらに、ステップ４８において目的コンピュータ３５上の実行可能インストールルーチン（実行可能インストールルーチン３０および実行可能インストールルーチン２７のいずれか、あるいはその双方）を実行することによって、ステップ５２において、ターゲットＣＲＭ４０上の実行時イメージ２６と目的コンピュータ３５とを統合する。この統合によって、目的コンピュータ３５に格納されたデータが操作され、ターゲットＣＲＭ４０上の実行時イメージ２６と目的コンピュータ３５とがリンクされる。
【００２９】
図３を参照すると、イメージ化ツール６７および統合モジュール７１とソースＣＲＭ５およびターゲットＣＲＭ４０との対話を例示するブロック図が示されている。図３の実施形態においては、実行可能インストールルーチン１０の機能は、２つのコンポーネント、すなわち適用および統合に分離され、それぞれイメージ化ツール６７および統合モジュール７１によって実行される。このような実施形態において、イメージ化ツール６７は、サードパーティの市販システム（ｃｏｍｍｅｒｃｉａｌ−ｏｆｆ−ｔｈｅ−ｓｈｅｌｆ）のイメージ化製品とすることができ、それは目的コンピュータ３５または目的コンピュータ３５に関連しない別のコンピュータによって実行される。
【００３０】
ソースＣＲＭ５は、実行時イメージ１および統合タスクリスト７６を格納する。本明細書に記載するように、実行時イメージ１は、オペレーティングシステム７２および／または少なくとも１つのアプリケーションプログラム７４を含む。例えば、実行時イメージ１は、商用のオペレーティングシステムまたはワードプロセッサや表計算などのアプリケーションプログラムを含むことができる。イメージ化ツール６７は、実行時イメージ１および統合タスクリスト７６をそれぞれ実行時イメージ２６および統合タスクリスト７７として、ターゲットＣＲＭ４０に適用するためのソフトウェア関数（ｆｕｎｃｔｉｏｎａｌｉｔｙ）を含む。ターゲットＣＲＭ４０は、ターゲットＣＲＭ４０上に格納されたイメージ化ツール６７および統合モジュール７１を実行するよう構成された目的コンピュータ３５と関連付けられる。
【００３１】
一実施形態において、目的コンピュータ３５はイメージ化ツール６７を実行して、実行時イメージ１および統合タスクリスト７６をターゲットＣＲＭ４０または目的コンピュータ３５によってアクセス可能な他のいずれかのＣＲＭに適用する。目的コンピュータ３５は、統合モジュール７１を実行して、統合タスクリスト７７にリストされたタスクを実行することによって、実行時イメージ２６と目的コンピュータ３５とを統合する。本明細書の他の個所に記載されたような統合タスクに加え、統合タスクリスト７６、７７には、目的コンピュータ３５を識別するためのセキュリティ識別データをもつ、１つまたは複数のシステム設定を更新する実行可能命令が含まれるがこれに限られない。統合モジュール７１を実行する際、目的コンピュータ３５は統合タスクの各々を実行して、実行時イメージ２６と目的コンピュータ３５との間の統合を達成する。
【００３２】
代替する一実施形態において、目的コンピュータ３５以外のコンピュータは、イメージ化ツール６７を実行して、ターゲットＣＲＭ４０に、実行時イメージ１を適用し、および統合タスクリスト７６を複製する。他の実施形態では、イメージ化ツール６７は、目的コンピュータ３５がブートする最低限のオペレーティングシステムを含むか、またはここから実行する。さらに別の実施形態では、イメージ化ツール６７は、実行時イメージ１をターゲットＣＲＭ４０に適用し、および統合モジュール７１は最低限のオペレーティングシステムから実行して、ターゲットＣＲＭ４０上の実行時イメージ２６と目的コンピュータ３５とを統合する。統合モジュール７１は、ターゲットＣＲＭ４０以外のＣＲＭ上に格納することができる。
【００３３】
次に図４を参照すると、転送ＣＲＭ２０のようなＣＲＭ８２上に格納されたデータ構造８０のコンテンツを例示するブロック図が示される。データ構造８０は、目的コンピュータ３５によって実行されて、ターゲットＣＲＭ４０上の実行時イメージ２６と目的コンピュータ３５との間の統合を達成する１つまたは複数の統合タスクのリストを表している。図４に例示される実施形態において、データ構造８０は、データイメージ化フィールド８４、データ決定フィールド８６およびデータ統合フィールド８８を含む。データイメージ化フィールド８４は、実行時イメージ１をターゲットＣＲＭ４０に適用するためのコンピュータ実行可能命令を格納する。本明細書に記載されるように、データイメージ化フィールド８４に関連するコンピュータ実行可能命令は、サードパーティの市販システムのイメージ化製品の一部として目的コンピュータ３５または目的コンピュータ３５に関連しない別のコンピュータによって実行されるようにすることができる。データ決定フィールド８６は、目的コンピュータ３５に固有な１つまたは複数のパラメータを決定するためのコンピュータ実行可能命令を格納する。例えば、本コンピュータ実行可能命令は、目的コンピュータ３５に固有のセキュリティ識別データを獲得することができる。データ統合フィールド８８は、決定したパラメータと実行時イメージ２６とを統合するためのコンピュータ実行可能な命令を格納する。例えば、このコンピュータ実行可能命令は、データ決定フィールド８６を介して獲得したセキュリティ識別データを持つ１つまたは複数の鍵を暗号化することができる。
【００３４】
図５は、汎用コンピューティング装置の一例をコンピュータ１３０の形で示している。本発明の一実施形態では、コンピュータ１３０のようなコンピュータが、本明細書で例示され説明された他の図面において使用するのに適している。コンピュータ１３０は、１つまたは複数のプロセッサまたは処理ユニット１３２およびシステムメモリ１３４を有する。例示された実施形態においては、システムバス１３６は、システムメモリ１３４のプロセッサ１３２への結合を含む種々のシステムコンポーネントを含む。バス１３６は、数種類のバス構造のいずれかの１つまたは複数を示し、これにはメモリバスあるいはメモリコントローラ、ペリフェラルバス、アクセラレーテッドグラフィックスポート、および種々のバスアーキテクチャのいずれかを用いるプロセッサあるいはローカルバスが含まれる。例として、このようなアーキテクチャには工業標準アーキテクチャ（ＩＳＡ）バス、マイクロチャネルアーキテクチャ（ＭＣＡ）バス、拡張ＩＳＡ（ＥＩＳＡ）バス、ビデオ電子標準化協会（ＶＥＳＡ）ローカルバスおよびメザニンバスとしても知られる周辺コンポーネント相互接続（ＰＣＩ）バスが含まれるがこれに限られない。
【００３５】
コンピュータ１３０は、一般に、少なくともいくつかの形態の種々の読み取り可能媒体を有する。コンピュータ読み取り可能媒体は、揮発性および不揮発性媒体、並びに取外し可能および固定媒体の双方を含むが、コンピュータ１３０によりアクセス可能ないかなる媒体とすることもできる。例として、コンピュータ読み取り可能媒体は、コンピュータ記憶媒体および通信媒体を備えることができるが、これに限られない。コンピュータ記憶媒体は、揮発性および不揮発性媒体、並びに取外し可能および固定媒体の双方を含み、これらは、情報、例えばコンピュータ読み取り可能命令、データ構造、プログラムモジュールまたはその他のデータを記憶するために、いずれかの方法または技術にも実装される。例えば、コンピュータ記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたはその他のメモリ手法、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）またはその他の光ディスク記憶、磁気カセット、磁気テープ、磁気記憶ディスクまたはその他の磁気記憶装置、その他、所望の情報を記憶するために使用することができ、コンピュータ１３０がアクセスすることができるいずれの媒体をも含むが、これに限られない。通信媒体は、一般に、コンピュータ読み取り可能命令、プログラムモジュールあるいはその他、変調されたデータ信号、例えば搬送波やその他の輸送方法に含まれるいかなるデータにも具現化されるものであって、いかなる配信媒体も含む。変調されたデータ信号は、当業者によく知られており、１つまたは複数の特性セットを有する信号または情報を信号に符号化するような手法で変更された信号を有する。有線ネットワークやディレクトワイヤード接続などの有線媒体および音声、電波、赤外線その他のような無線媒体が通信媒体の例である。また、コンピュータ読み取り可能媒体の範囲には、上述のいずれの組み合わせも含まれる。
【００３６】
システムメモリ１３４は、コンピュータ記憶媒体を取外し可能および／または固定メモリで揮発性および／または不揮発性のメモリの形で含む。例示された実施形態においては、システムメモリ１３４は、読取専用メモリ（ＲＯＭ）１３８および逐次アクセスメモリ（ＲＡＭ）１４０を含む。基本入出力システム１４２（ＢＩＯＳ）は、スタートアップの最中などにコンピュータ１３０内の要素間における情報の転送を支援する基本ルーチンを含むが、一般にＲＯＭ１３８に格納される。ＲＡＭ１４０は一般に、処理ユニット１３２にすぐにアクセス可能および／または目下処理ユニット１３２によってオペレートされているデータおよび／またはプログラムモジュールを含む。例として、図５はオペレーティングシステム１４４、アプリケーションプログラム１４６、その他のプログラムモジュール１４８およびプログラムデータ１５０を示すがこれに限られない。
【００３７】
コンピュータ１３０は、取外し可能／固定で揮発性／不揮発性の他のコンピュータ記憶媒体も含むことができる。例えば、図５は、固定で不揮発性の磁気媒体の読み書きを行うハードディスクドライブ１５４を示す。また、図５は、取外し可能で不揮発性の磁気ディスク１５８の読み書きを行う磁気ディスクドライブ１５６、および取外し可能で不揮発性の光ディスク１６２、例えばＣＤ−ＲＯＭやその他の光媒体の読み書きを行う光ディスクドライブ１６０を示す。例示の動作環境において使用することができる取外し可能／固定で揮発性／不揮発性の他のコンピュータ記憶媒体には、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、ソリッドステートＲＡＭ、ソリッドステートＲＯＭなどが含まれるがこれに限られない。ハードディスクドライブ１４４および磁気ディスクドライブ１５６と光ディスクドライブ１６０とは、一般にインタフェース１６６のような不揮発性メモリインタフェースによってシステムバス１３６に接続される。
【００３８】
上記で議論され、図５に示されたドライブあるいは他の大容量記憶装置およびそれらに関連するコンピュータ記憶媒体によって、コンピュータ読み取り可能命令、データ構造、プログラムモジュールおよびその他、コンピュータ１３０のためのデータを記憶することができる。例えば、図５において、ハードディスクドライブ１５４は、オペレーティングシステム１７０、アプリケーションプログラム１７２、その他のプログラムモジュール１７４およびプログラムデータ１７６を格納するように示されている。これらのコンポーネントは、オペレーティングシステム１４４、アプリケーションプログラム１４６、その他のプログラムモジュール１４８およびプログラムデータ１５０と同一または異なるもののいずれかとすることができ、その番号はそれらが異なるコピーであることを最低限示すために付与されていることに留意されたい。
【００３９】
ユーザは、キーボード１８０などの入力機器およびポインティング機器１８２（例えば、マウス、トラックボール、ペンまたはタッチパッド）を通してコマンドおよび情報をコンピュータ１３０に入力することができる。他の入力機器（図示せず）には、マイクロホン、ジョイスティック、ゲームパッド、サテライトディッシュ、スキャナなどを含むことができる。これらおよび他の入力機器はしばしば、システムバス１３６に結合するユーザ入力インタフェース１８４を通して処理ユニット１３２に接続するが、他のインタフェースおよびバス構造、例えばパラレルポート、ゲームポート、あるいはユニバーサルシリアルバス（ＵＳＢ）などによって接続することもできる。モニタ１８８または他の種類の表示機器もまた、ビデオインタフェース１９０のようなインタフェースを介して、システムバス１３６に接続される。モニタ１８８に加え、コンピュータはしばしば、その他の周辺出力機器（図示せず）、例えばスピーカおよびプリンタを含み、それらは出力周辺インタフェース（図示せず）を通して接続することができる。
【００４０】
コンピュータ１３０は、１つまたは複数のリモートコンピュータ、例えばリモートコンピュータ１９４への論理接続を用い、ネットワーク化された環境で動作することができる。リモートコンピュータ１９４は、パーソナルコンピュータ、ハンドヘルド機器、サーバ、ルータ、ネットワークＰＣ、ピア機器またはその他従来のネットワークノードとすることができ、一般にコンピュータ１３０に関する上述した要素の多くまたは全てを含む。図５に示される論理接続はローカルエリアネットワーク（ＬＡＮ）１９６および広域ネットワーク（ＷＡＮ）１９８を含むが、他のネットワークも含むことができる。このようなネットワーク環境は、オフィス、企業内コンピュータネットワーク、イントラネットおよびグローバルなコンピュータネットワーク（例えば、インターネット）においては、ありふれたものである。
【００４１】
ローカルエリアネットワーク環境で用いられる際、コンピュータ１３０はネットワークインタフェースまたはアダプタ１８６を通してＬＡＮ１９６に接続する。広域ネットワーク環境で使用される際は、コンピュータ１３０は一般的に、インターネットのようなＷＡＮ１９８を介して通信を確立するためのモデム１７８またはその他の手法を備える。モデム１７８は、内蔵または外付けとすることができるが、ユーザインタフェース１９４またはその他の適切な仕組みを介してシステムバス１３６に接続することができる。ネットワーク化された環境においては、コンピュータ１３０あるいはその部分に関連して示されたプログラムモジュールは、リモートメモリ記憶装置（図示せず）に格納することができる。例として、図５は、リモートのアプリケーションプログラム１９２をそのメモリ装置に存在するように示しているが、これに限られない。示されたネットワーク接続が例示であり、コンピュータ間における通信接続を確立する他の手法を用いることができることが理解されるであろう。
【００４２】
一般に、コンピュータ１３０のデータプロセッサは、そのコンピュータの種々のコンピュータ読み取り可能記憶媒体に異なる時間において格納された命令によってプログラミングが行われる。プログラムおよびオペレーティングシステムは一般に、例えばフロッピ（登録商標）ディスクまたはＣＤ−ＲＯＭで配布される。そこから、コンピュータの二次メモリにインストールあるいはロードされる。実行の際、それらは少なくとも部分的にはコンピュータの一次電子メモリにロードされる。本明細書に記載された本発明は、これらのおよびその他種々のコンピュータ読み取り可能媒体を含み、その際このような媒体には、マイクロプロセッサまたはその他データプロセッサと結合して以下に説明するステップを実行する命令またはプログラムが含まれる。また、本発明は、以下に記載される方法および手法にしたがってプログラムされる場合には、コンピュータ自身をも含むこととなる。
【００４３】
例示する目的から、本明細書ではプログラムと他の実行可能プログラムコンポーネント、例えばオペレーティングシステムとは別個のブロックとして示されている。しかし、このようなプログラムは、種々の時間に異なる記憶コンポーネントに存在し、そのコンピュータのデータプロセッサによって実行されることが理解される。
【００４４】
コンピュータ１３０を含む例示のコンピューティングシステム環境に関連して記載したが、本発明は他の非常に多くの汎用または専用のコンピューティングシステム環境または構成で動作することができる。本コンピューティングシステム環境は、本発明の使用または機能の範囲に関して、いかなる制限を提案することも意図されていない。さらに、本コンピューティングシステム環境は、例示の動作環境に示されるコンポーネントのいずれか１つまたはその組み合わせに依存したり、これに関連する条件が必要となったりするような環境であると解釈すべきではない。本発明の使用に適したコンピューティングシステム、環境および／または構成のよく知られた例には、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドあるいはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースシステム、セットトップボックス、プログラム可能なコンシューマ電子機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたは装置のいずれかを含む分散コンピューティング環境などが含まれる。
【００４５】
本発明は、コンピュータ実行可能命令、例えば１つまたは複数のコンピュータあるいはその他の装置によって実行されるプログラムモジュールの一般的なコンテキストで記述することができる。一般に、プログラムモジュールは、特定のタスクを実行しあるいは特定の抽象データタイプを実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含むがこれに限られない。本発明はまた、分散コンピューティング環境で実施することもでき、そこではコミュニケーションネットワークを通して接続されたリモート処理装置によってタスクが実行される。分散コンピューティング環境においては、プログラムモジュールは、メモリ記憶機器を含むローカルおよびリモートの双方のコンピュータ記憶媒体に置くことができる。
【００４６】
動作する際、（コンピュータ１３０のような）目的コンピュータ３５は、図２で例示されたようにコンピュータ実行可能命令を実行して、コンピュータコンテキストに独立な実行時イメージ１をソースＣＲＭ５から目的コンピュータ３５のターゲットＣＲＭ４０へ転送する。
【００４７】
ソフトウェア製品（例えば、オペレーティングシステムまたはアプリケーションプログラム）を前処理して、図１の実行時イメージ１のような実行時イメージを生成する方法の例は以下のとおりである。
【００４８】
ソフトウェアプログラムのソースコードは、ソフトウェア開発者によりコンパイルされて実行可能ファイルおよびその他のファイルが作成される。これらのファイルはコンポーネントに分けられ、それらをソフトウェア製品にアセンブルしてイメージを生成する。ソフトウェア製品のイメージは、コンピュータに適用される。ソフトウェア製品のイメージをコンピュータに適用するプロセスは、最低限のオペレーティングシステムに（例えば、ＣＤ、ＤＶＤあるいはネットワークブートを介して）ブートして、イメージの配置を行うステップを含むことができる。このイメージは、ローカルのＣＤ、ＤＶＤ、大容量記憶装置、その他のＣＲＭに格納することができる。これに替えて、イメージをネットワークを介してアクセス可能なＣＲＭに格納することができる。ユーザインタフェースを介してソフトウェア開発者によってなされた構成オプションの入力は、ソフトウェア製品のイメージを受信するためにコンピュータがアクセスすることができるファイルに格納される。例えば、構成オプションには、無人（ｕｎａｔｔｅｎｄｅｄ）インストールオプション、クリーンインストールオプションおよびアドバーンスドインストールオプションを含むことができる。コンピュータは、構成オプションに基づいてローカルＣＲＭを準備する。次いで、ソフトウェア製品は、構成オプションにしたがって、コンピュータのローカルＣＲＭにインストールされる。前処理の終わりに、ソフトウェア製品のイメージは実行時イメージ、例えば図１の実行時イメージ１となり、本発明によって目的コンピュータ３５にすぐに適用することができる。
【００４９】
実行時イメージ１が目的コンピュータ３５に適用されると、前処理の間に実行されなかったマシン固有構成のいずれかが統合の間に行われる。一実施形態において、イメージの構成は、目的コンピュータ３５がまだ最低限のオペレーティングシステム環境にある間に行われる。本明細書に記載されるように、このような構成または統合は、ソフトウェアオブジェクトをイメージに構成／登録するステップ、コンポーネントを追加または除去するステップ、システム設定（例えば、レジストリ設定）を構成するステップ、ファイルを移動して伸張するステップ、およびコンピュータの地域（ｌｏｃａｌｅ）に適した言語を選択するステップを含むがこれに限られない。適用されたイメージはブートされ、追加された構成アイテムを処理することができる。ブートの前後に実行できる構成アイテムは、ユーザ設定をリセットしてハードウェア上にブートするためのイメージを準備するためのデバイスドライバを追加するステップ、目的コンピュータ３５に固有のセキュリティデータを生成するステップ、および適用されたソフトウェアプログラムによって要求された、生成されたセキュリティデータに基づく鍵を生成するステップを含むがこれに限られない。本明細書に記載された本発明の種々の記載および種々の例の変形が本発明の範囲内にあると認められることを当業者は気づくであろう。例えば、上記の例の変形には、小売業者のためのクリーンインストールのセットアップフローが含まれる。さらに、他の変形には小売業者に対するバージョンアップのためのセットアップフローが含まれる。発明者は、このような変形を本発明の範囲内に入るように意図している。
【００５０】
本発明の要素あるいは実施形態を紹介する際、冠詞「ａ」、「ａｎ」、「ｔｈｅ」、および「ｓａｉｄ」は、１つまたは複数の要素があることを意味するよう意図したものである。用語「備える」、「含む」、および「有する」は包括的であり、かつ掲げられた要素以外の要素を追加することがあることを意味するよう意図したものである。
【００５１】
上記に鑑み、本発明のいくつかの目的およびその他有意な結果が達成されたことが理解されるであろう。
【００５２】
本発明の範囲から離れることなく種々の変更が上記の構築、製品および方法においてなされるように、上記の記載に含まれ、および添付の図面に示された全ての内容が例示として解釈すべきであり、限定する意味で解釈してはならないということが意図される。
【図面の簡単な説明】
【図１】実行時イメージのソースコンピュータ読み取り可能媒体からターゲットコンピュータ読み取り可能媒体への転送を例示するブロック図である。
【図２】実行時イメージのソースコンピュータ読み取り可能媒体からターゲットコンピュータ読み取り可能媒体への転送を例示するフローチャートである。
【図３】イメージ化ツールおよび統合モジュールとソースコンピュータ読み取り可能媒体およびターゲットコンピュータ読み取り可能媒体との相互作用を例示するブロック図である。
【図４】コンピュータ読み取り可能媒体に格納されたデータ構造のコンテンツを例示するブロック図である。
【図５】本発明を実現することができるのに適したコンピューティングシステム環境の一例を示す図である。
【符号の説明】
１、２５、２６　実行時イメージ
５　ソースＣＲＭ
１０、２７、３０　実行可能インストールルーチン
２０　転送ＣＲＭ
３５　目的コンピュータ
４０　ターゲットＣＲＭ
６７　イメージ化ツール
７１　統合モジュール
７２　オペレーティングシステム
７４　アプリケーションプログラム
７６、７７　統合タスクリスト
８０　データ構造
８２　ＣＲＭ
８４　データイメージ化フィールド
８６　データ決定フィールド
８８　データ統合フィールド
１３０　コンピュータ
１３２　処理ユニット
１３４　システムメモリ
１３６　システムバス
１３８　読取専用メモリ
１４０　ランダムアクセスメモリ
１４２　基本入出力システム
１４４　オペレーティングシステム
１４６　アプリケーションプログラム
１４８　プログラムモジュール
１５０　プログラムデータ
１５４　磁気ハードディスクドライブ装置
１５６　磁気ディスクドライブ装置
１５８　取外し可能な磁気ディスク
１６０　光ディスクドライブ装置
１６２　取外し可能な光ディスク
１６６　不揮発性メモリインタフェース
１７０　オペレーティングシステム
１７２　アプリケーションプログラム
１７４　プログラムモジュール
１７６　プログラムデータ
１７８　モデム
１８０　キーボード
１８２　マウス
１８４　ユーザ入力インタフェース
１８６　ネットワークインタフェース
１８８　モニタ
１９０　ビデオインタフェース
１９２　リモートアプリケーション
１９４　リモートコンピュータ
１９６　ローカルネットワーク
１９８　広域ネットワーク
１９５　出力周辺インタフェース
１９６　プリンタ
１９７　スピーカ
【図１】
2004021981.tif 000003
【図２】
2004021981.tif 000004
【図３】
2004021981.tif 000005
【図４】
2004021981.tif 000006
【図５】
2004021981.tif 000007