(57)【要約】本発明は、オペレーティングシステム及びアプリケーションの統合オンデマンド配信システム及び方法であり、オペレーティングシステムイメージとアプリケーションイメージとは分離、分別されたものである。加えて、オペレーティングシステム配信及びアプリケーション配信サービスの統合は、広い範囲のクライアントデバイスへの配信を可能にし、このクライアントデバイスには、シン・クライアントやディスクレスワークステーションのようなローカルディスク容量がないものも含まれる。さらに、本発明は、オペレーティングシステム配信及びアプリケーション配信の集中管理を統合することで、サーバ集中型アプリケーション管理の完全なソリューションを提供し、それにより、ネットワークコンピューティング方法について所有するためのトータルコストを低減することができる。分離、分別されたオペレーティングシステムイメージ及びアプリケーションイメージを提供することと組み合わせて、クライアントマシンレベル特定のオペレーティング管理機能及びユーザレベル特定のアプリケーション管理機能を実行することは、適切な基準合わせをし適切なセキュリティ管理機能を提供する、本質的に標準的な技術を提供する。その結果、従来の製品よりもより低い所有トータルコストですむ、完全で、拡張性があり、強度があって信頼性の高いサーバ集中型アプリケーション及びオペレーティングシステム管理システムを実現する。【選択図】図１【特許請求の範囲】
【請求項１】
少なくとも１つのオペレーティングシステムイメージと、
オペレーティングシステム配信サーバと、
少なくとも１つのアプリケーションイメージと、
アプリケーション配信サーバと、
少なくとも１つのクライアントコンピュータに対してオペレーティングシステム配信とアプリケーション配信とを管理するための統合ユーザインタフェースと、
を具備して構成された、ネットワーク経由でクライアントコンピュータへオペレーティングシステム及びアプリケーションを統合オンデマンド配信するオペレーティングシステム及びアプリケーションの統合オンデマンド配信システムであって、
前記統合ユーザインタフェースは、少なくとも１つのクライアントコンピュータに対してオンデマンド配信される、少なくとも１つのオペレーティングシステムイメージと少なくとも１つのアプリケーションイメージとを選択可能であると共に、該少なくとも１つのオペレーティングシステムイメージは、少なくとも１つのアプリケーションイメージから分離、分別されていることを特徴とするオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項２】
クライアントコンピュータに対するオペレーティングシステム配信エージェントを更に具備して構成され、
クライアントコンピュータ用に選択されたオペレーティングシステムイメージが、前記オペレーティングシステム配信エージェント及びオペレーティングシステム配信サーバを介して該クライアントコンピュータへ配信されることを特徴とする請求項１記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項３】
クライアントコンピュータに対するアプリケーション配信エージェントを更に具備して構成され、
クライアントコンピュータ用に選択された少なくとも１つのアプリケーションイメージが、前記アプリケーション配信エージェント及びアプリケーション配信サーバを介して該クライアントコンピュータへ配信されることを特徴とする請求項１記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項４】
少なくとも１つのクライアントコンピュータに対してオペレーティングシステムの配信とアプリケーションの配信とを管理するための統合共通データベースを更に具備して構成されたことを特徴とする請求項１記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項５】
オペレーティングシステムの配信とアプリケーションの配信とを管理するための前記統合ユーザインタフェースが、ＷＥＢユーザインタフェースであることを特徴とする請求項１記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項６】
前記オペレーティングシステム配信サーバ上に、クライアントコンピュータでのアプリケーション実行時に、ページファイルを書き出すための仮想ディスクを更に具備して構成されたことを特徴とする請求項１記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項７】
少なくとも１つのオペレーティングシステムイメージが配信される仮想ディスクを更に具備して構成されたことを特徴とする請求項１記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項８】
少なくとも１つのアプリケーションイメージが配信される仮想ディスクを更に具備して構成されたことを特徴とする請求項１記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項９】
少なくとも１つのアプリケーションイメージが配信される仮想ファイルシステムを更に具備して構成されたことを特徴とする請求項１記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項１０】
クライアントコンピュータに配信済みのオペレーティングシステムイメージの一部を記憶するためのローカル記憶装置キャッシュをクライアントコンピュータに更に具備して構成されたことを特徴とする請求項１記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項１１】
クライアントコンピュータに配信済みのアプリケーションイメージの一部を記憶するためのローカル記憶装置キャッシュをクライアントコンピュータに更に具備して構成されたことを特徴とする請求項１記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項１２】
少なくとも１つのオペレーティングシステムイメージと、
オペレーティングシステム配信サーバと、
少なくとも１つのアプリケーションイメージと、
アプリケーション配信サーバと、
を具備して構成され、
該少なくとも１つのオペレーティングシステムイメージが、少なくとも１つのアプリケーションイメージから分離、分別されていることを特徴とする、ネットワーク経由でクライアントコンピュータに対してオペレーティングシステム及びアプリケーションとを統合オンデマンド配信するオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項１３】
オペレーティングシステム及びアプリケーションの統合オンデマンド配信を管理するための統合共通データベースを更に具備して構成されたことを特徴とする請求項１２記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項１４】
ネットワーク経由でクライアントコンピュータへオペレーティングシステムとアプリケーションとを統合オンデマンド配信する方法であって、該方法は、
オペレーティングシステム配信サーバを提供するステップと、
アプリケーション配信サーバを提供するステップと、
少なくとも１つのオペレーティングシステムイメージを提供するステップと、
少なくとも１つのアプリケーションイメージであると共に少なくとも１つのオペレーティングシステムイメージが該少なくとも１つのアプリケーションイメージから分離、分別されたものであるアプリケーションイメージを提供するステップと、
少なくとも１つのクライアントコンピュータに対してオペレーティングシステムの配信とアプリケーションの配信との管理をする統合ユーザインタフェースを提供するステップと、
前記統合ユーザインタフェースによりクライアントコンピュータ用のオペレーティングシステムを選択するステップと、
前記統合ユーザインタフェースによりクライアントコンピュータ用の少なくとも１つのアプリケーションを選択するステップと、
クライアントコンピュータへのユーザのログオン時に、クライアントコンピュータに対して前記選択されたオペレーティングシステム用のオペレーティングシステムイメージを配信することによりクライアントコンピュータに対して選択されたオペレーティングシステムをオンデマンド配信するステップと、
クライアントコンピュータに対して前記選択された少なくとも１つのアプリケーション用のアプリケーションイメージを配信することにより前記選択された少なくとも１つのアプリケーションをオンデマンド配信するステップと、
を備えて構成されたことを特徴とするネットワーク経由でクライアントコンピュータに対してオペレーティングシステム及びアプリケーションとを統合オンデマンド配信するオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項１５】
前記少なくとも１つのクライアントコンピュータに対してオペレーティングシステムの配信とアプリケーションの配信とを管理をするための統合ユーザインタフェースを提供するステップにおいて、オペレーティングシステム配信管理は、クライアントコンピュータに特定であり、アプリケーション配信管理は、ユーザに特定であることを特徴とする請求項１４記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項１６】
オペレーティングシステム配信エージェントを提供するステップを更に備えてなり、
前記選択されたオペレーティングシステム用のオペレーティングシステムイメージが、前記オペレーティングシステム配信エージェント及びオペレーティングシステム配信サーバを介してクライアントコンピュータに配信されることを特徴とする請求項１４記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項１７】
アプリケーション配信エージェントを提供するステップを更に備えてなり、
前記選択された少なくとも１つのアプリケーション用のアプリケーションイメージが、前記アプリケーション配信エージェント及びアプリケーション配信サーバを介してクライアントコンピュータに配信されることを特徴とする請求項１４記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項１８】
少なくとも１つのクライアントコンピュータに対してオペレーティングシステムの配信とアプリケーション配信との管理をするための統合共通データベースを提供するステップを更に備えてなることを特徴とする請求項１４記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項１９】
前記オペレーティングシステム配信及びアプリケーション配信を管理するための統合ユーザインタフェースが、ＷＥＢユーザインタフェースであることを特徴とする請求項１４記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項２０】
クライアントコンピュータでのアプリケーション実行時に、オペレーティングシステム配信サーバ上に、ページファイルの書き出し用の仮想ディスクを提供するステップを更に備えてなることを特徴とする請求項１４記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項２１】
前記少なくとも１つのオペレーティングシステムイメージが配信される仮想ディスクを提供するステップを更に備えてなることを特徴とする請求項１４記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項２２】
前記少なくとも１つのアプリケーションイメージが配信される仮想ディスクを提供するステップを更に備えてなることを特徴とする請求項１４記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項２３】
前記少なくとも１つのアプリケーションイメージが配信される仮想ファイルシステムを提供するステップを更に備えてなることを特徴とする請求項１４記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項２４】
クライアントコンピュータ上のローカル記憶装置キャッシュを提供するステップと、
クライアントコンピュータに対して配信済みのオペレーティングシステムイメージの一部をローカル記憶装置キャッシュに記憶するステップと、
オペレーティングシステムのオンデマンド配信の遂行中に、ローカル記憶装置キャッシュに記憶されたオペレーティングシステムイメージの一部が要求されたとき、ローカル記憶装置キャッシュからオペレーティングシステムの一部を配信するステップと、
を更に備えてなることを特徴とする請求項１４記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項２５】
クライアントコンピュータにローカル記憶装置キャッシュを提供するステップと、
クライアントコンピュータに対して配信済みのアプリケーションイメージの一部をローカル記憶装置キャッシュに記憶するステップと、
オペレーティングシステムのオンデマンド配信の遂行中に、ローカル記憶装置キャッシュに記憶されたアプリケーションイメージの一部が要求されたとき、ローカル記憶装置キャッシュからアプリケーションの一部を配信するステップと、
を更に備えてなることを特徴とする請求項１４記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項２６】
クライアントコンピュータへネットワーク経由でオペレーティングシステム及びアプリケーションを統合オンデマンドで配信するオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法であって、
オペレーティングシステム配信サーバを提供するステップと、
アプリケーション配信サーバを提供するステップと、
少なくとも１つのオペレーティングシステムイメージを提供するステップと、
少なくとも１つのアプリケーションイメージを提供するステップと、
を備えて構成され、
少なくとも１つのオペレーティングシステムイメージが、少なくとも１つのアプリケーションイメージから分離、分別されていることを特徴とするオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項２７】
オペレーティングシステム及びアプリケーションの統合オンデマンド配信管理のための統合共通データベースを提供するステップを更に備えてなることを特徴とする請求項２６記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法。
【請求項２８】
オペレーティングシステム配信サーバを提供する手段と、
アプリケーション配信サーバを提供する手段と、
少なくとも１つのオペレーティングシステムイメージを提供する手段と、
少なくとも１つのアプリケーションイメージであって、少なくとも１つのオペレーティングシステムイメージが該少なくとも１つのアプリケーションイメージから分離、分別されたアプリケーションイメージを提供する手段と、
少なくとも１つのクライアントコンピュータに対してオペレーティングシステムの配信とアプリケーションの配信との管理をするための統合ユーザインタフェースを提供する手段と、
前記統合ユーザインタフェースを用い、クライアントコンピュータ用のオペレーティングシステムを選択する手段と、
前記統合ユーザインタフェースを用い、少なくとも１つのアプリケーションを選択する手段と、
クライアントコンピュータにユーザがログオンしたとき、クライアントコンピュータに対して選択されたオペレーティングシステムのためのオペレーティングシステムイメージを配信することにより、クライアントコンピュータに対して選択されたオペレーティングシステムをオンデマンド配信する手段と、
クライアントコンピュータに対して選択された少なくとも１つのアプリケーション用のアプリケーションイメージを配信することにより、選択された少なくとも１つのアプリケーションをオンデマンド配信する手段と、
を具備して構成されたことを特徴とするネットワーク経由でクライアントコンピュータへオペレーティングシステム及びアプリケーションを統合オンデマンド配信するオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項２９】
オペレーティングシステム配信エージェントを提供する手段を更に具備し、
前記選択されたオペレーティングシステム用のオペレーティングシステムイメージが、前記オペレーティングシステム配信エージェント及びオペレーティングシステム配信サーバを介してクライアントコンピュータに配信されることを特徴とする請求項２８記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項３０】
アプリケーション配信エージェントを提供する手段を更に具備し、
前記選択されたアプリケーション用の少なくとも１つのアプリケーションイメージが、前記アプリケーション配信エージェント及びアプリケーション配信サーバを介してクライアントコンピュータに配信されることを特徴とする請求項２８記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項３１】
オペレーティングシステムの配信とアプリケーションの配信とを管理するための統合共通データベースを更に具備して構成されたことを特徴とする請求項２８記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項３２】
前記少なくとも１つのオペレーティングシステムイメージが配信される仮想ディスクを提供する手段を更に具備して構成されたことを特徴とする請求項２８記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項３３】
前記少なくとも１つのアプリケーションイメージを配信する仮想ディスクを提供する手段を更に具備して構成されたことを特徴とする請求項２８記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項３４】
少なくとも１つのアプリケーションイメージが配信される仮想ファイルシステムを提供する手段を更に具備して構成されたことを特徴とする請求項２８記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項３５】
クライアントコンピュータ上のローカル記憶装置キャッシュを提供する手段と、
クライアントコンピュータに配信済みのオペレーティングシステムイメージの一部を前記ローカル記憶装置キャッシュに記憶する手段と、
オペレーティングシステムのオンデマンド配信の遂行中に、ローカル記憶装置キャッシュに記憶されたオペレーティングシステムイメージの一部が要求されたとき、オペレーティングシステムの一部をローカル記憶装置キャッシュから配信する手段と、
を更に具備して構成されたことを特徴とする請求項２８記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【請求項３６】
クライアントコンピュータにローカル記憶装置キャッシュを提供する手段と、
クライアントコンピュータに配信済みのオペレーティングシステムイメージの一部を前記ローカル記憶装置キャッシュに記憶する手段と、
アプリケーションのオンデマンド配信の遂行中に、前記ローカル記憶装置キャッシュに記憶されたアプリケーションイメージの一部が要求されたとき、アプリケーションの一部を該ローカル記憶装置キャッシュから配信する手段と、
を更に具備して構成されたことを特徴とする請求項２８記載のオペレーティングシステム及びアプリケーションの統合オンデマンド配信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にはクライアントコンピュータにオペレーティングシステム及びアプリケーションを供給する技術に関するものであり、特に、ネットワークを介してクライアントコンピュータに対しオペレーティングシステム及びアプリケーションを一貫して要求の都度配信する、つまり、オンデマンド配信する技術に関するものである。
【背景技術】
【０００２】
近年、ネットワークコンピューティングモデルが、企業におけるコンピュータの需要管理に対して費用逓減効果のある方法として普及しつつある。ネットワーク管理されたＰＣ、ネットワークコンピュータ、シン・クライアントから、サーバセントリックのクライアント、ネットワークコンピューティングまでの一連の技術は、ネットワークコンピューティング環境における、ＩＴサービス（「Total Cost of Ownership（情報システム総合コスト、以下、ＴＣＯとする）」などで知られる）を提供するコストの削減の必要性によって大いに活発化されてきた。エンドユーザにコンピュータ資源を提供することにおいて最も高価なのは、コンピューティングハードウェア及びソフトウェアのコストではなく、運用時のメンテナンスおよび管理にかかるコストであることは、産業界では周知である。このことは、「Thin Client Benefits（ Newburn Consulting 、2002年）」、「Total Cost of Application Ownership（The Tolly Group Whitepaper（1999年））」TCO Analyst: A White Paper on GartnerGroup's Next Generation Total Cost of Ownership Methodology（GartnerConsulting（1997年））などにも記載されている通りである。これらの周知の研究(studies)によれば、ネットワークコンピューティングモデルは、ＩＴサービスの機能のメンテナンス(保守)及び管理を集中することによって、ＴＣＯを著しく減らすことができ、それにより、運用時のメンテナンスおよび管理の再発コストを減らすことができる。
【０００３】
新規技術は、パフォーマンスを損なうことなくより低いＴＣＯ及び信頼性を達成するための継続的な探求において開発されている。特別の関心事は、オペレーティングシステム（ＯＳ）配信及びアプリケーション配信であり、これは、ＰＣ又はクライアントコンピュータにオペレーティングシステム及びアプリケーションを展開するために配信（ストリーミング）技術を利用するものである。
【０００４】
配信技術は、まず、インターネットマルチメディアアプリケーションのために開発され、時間依存又は相互方向のデータを、ネットワークを介してタイムリに配信するための有益な方法を提供する。例えばビデオストリーミングでは、全てのビデオファイルが再生を開始する前にダウンロードされるまで待機する代わりに、ファイルの充分な部分がダウンロードされるとすぐに、ビデオ再生を開始する。また、「プリフェッチング（prefetching）」又は「バッファリング（buffering）」と呼ばれているプロセスにおいて、ダウンロード済みのフレームが再生されている間に、さらなるフレームがダウンロードされる。ビデオ再生はユーザにとって継ぎ目なく見え、そして、全てのビデオファイルをダウンロードするための、潜在的に非常に長い遅延は除去される。
【０００５】
同様に、ＯＳ配信及びアプリケーション配信システムは、配信技術を梃入れしてネットワークコンピューティングの性能を向上させている。ネットワークコンピュータ（例えば中央サーバからネットワークを経てブートするディスクレスコンピュータ）は、ネットワーク待ち時間が原因でパフォーマンスが悪いことが従来からの欠点である。従来のディスクレスネットワークコンピュータ技術は、単に「デマンドページングないし要求時ページング（demand paging）」ディスクアクセスを、ネットワークアクセスと取り替えるに過ぎない。即ち、コードやデータがクライアントコンピュータにおいて必要なときはいつでも、それらがローカルディスクからよりもむしろネットワークを通じて提供される。そして、ネットワーク待ち時間がローカルディスクのアクセス遅延より大きいことがしばしばあるため、コード及びデータのアクセス時間は非常に長くなり、ネットワークコンピュータの性能を低下させることになる。また、ネットワーク上の他のトラフィックは、これらのコンピュータの性能を更に悪化させる可能性がある。しかしながら、ＯＳ配信及びアプリケーション配信システムにおいては、ＯＳ又はアプリケーションがネットワークの限られた応答時間又はバンド幅が原因した遅延による影響を受けずに継ぎ目なく実行可能となるように、ＯＳ又はアプリケーションを実行するために必要なファイルが、ビデオストリーミングに似た方法で、クライアントコンピュータに「プリフェッチないし先取りされている（prefetched）」か「バッファリングされる（buffered）」かしていなければならない。同時に、ＯＳ又はアプリケーションのファイルが中央サーバからクライアントコンピュータまで配信されるため、オペレーティングシステムまたはアプリケーションの集中インストール（centralized installation）、配信及び管理が可能にされる。
【０００６】
現在のところ、ＯＳ配信システムが「Venturcom社」や 「Qualystem社」などのベンダーにより提供されている。リモートブート（Remote Boot）やネットワークブート（Network Boot）技術などによりさらに一般に知られているように、従来のＯＳ配信ソリューションは、配信方法論により、クライアントコンピュータにオペレーティングシステムをブート又は初めにロードするために必要なコアＯＳファイル（core OS files）を提供する。従来のＯＳ配信ソリューションが従来のネットワークコンピューティング上におけるＯＳ配信のパフォーマンスを向上させるにもかかわらず、これらはそれでもやはり重大な欠点を持つ。
【０００７】
まず始めに、一旦最初のＯＳのロードが完了すると、システムはクライアントコンピュータを実行するのに必要なコード又はデータの更なるアクセスを行なうデマンドページングへ戻る。例えば、従来のＯＳ配信システムで提供されるアプリケーション配信は、デマンドページングに依存する。一般的に、アプリケーションはオペレーティングシステムイメージに組み込まれ、そして、完全な、アプリケーションをプラスしたＯＳのイメージ（OS-plus-applications image）がクライアントコンピュータに配信される。しかしながら、初めのＯＳロード部分のみが配信され、そして、一旦オペレーティングシステムが起動ないしアップされ、実行されていれば、システムは従来のデマンドページングに依存する。このように、クライアントコンピュータでアプリケーションを実行しているとき（なお、ユーザのシステムとの大量の（bulk）対話処理を含むとき）、従来のＯＳ配信システムのパフォーマンスは、従来のディスクレスワークステーション同然であり、様々なネットワークの待ち時間によって制限される。
【０００８】
加えて、従来のＯＳ配信ソリューションは、基準合わせ（scalability）（一般的には拡張性）及び管理についての重大な問題に悩まされている。例えば、各々のエンドユーザが自身の必要とするアプリケーションを選択することを希望するため、完全な、アプリケーションをプラスしたオペレーティングシステムのイメージが、各々のエンドユーザのアカウントのために構成されなければならない。しかしながら、各々のクライアントマシンに対して複数のＯＳイメージを保持する理由がない。即ち、アプリケーションはユーザに固有ないし特定であるのに対して、オペレーティングシステムはクライアントマシンに固有ないし特定であるからである。このようなことから、「アプリケーションをプラスしたＯＳ」の配信方法は、各々のユーザに対して相当な記憶空間の無駄使いを課することになり、普通は、１ユーザにつき数百メガバイトに及ぶ。そして、何千ものユーザを抱える企業システムでは、１ユーザにつき数百メガバイトの無駄な記憶空間が、結局、簡単にテラバイトもの不必要な記憶領域に達することとなる。
【０００９】
別の問題は、アプリケーションが加えられるか、削除されるか、アップグレードされるかさもなければ修正されるたびに、新たなＯＳイメージが構成されなければならないということである。新たな「アプリケーションをプラスしたＯＳ」のイメージは、アプリケーションのうち、１つでも、それに「パッチ」（軽微な修正またはアップグレード）が適用されているときは必ず、再構成されなければならない。しかし、オペレーティングシステムイメージを構成することは、リソースに負荷のかかるタスクであり、パッチがアプリケーションに適用される（これは比較的よくあるイベントである）都度、このタスクを繰り返すことは、多数のユーザを有する環境において非実用的である。基本的に、これらの問題は、オペレーティングシステムがマシンに特定である一方、アプリケーションがユーザに特定であるという事実に原因がある。換言すれば、単一ユニットとしてＯＳ及びアプリケーションを管理するシステムは、オペレーティングシステム管理及びアプリケーション管理の間の特定レベルの不一致により、十分には基準合わせされていないのである。この根本的な不一致について配慮して適切な解決策が取られなければならない。
【００１０】
また、一方で、アプリケーション配信技術は、その配信技術を利用してアプリケーションの配信と管理との問題に対処している。マルチメディア又はＯＳの配信に類似している方法で、アプリケーション配信システムにおけるアプリケーションは、複数のアプリケーションブロックがクライアントコンピュータでアプリケーションを実行するのに必要であるため、一度に１ブロックずつサーバからネットワークを介して提供される。しかしながら、アプリケーションのコード又はデータの「プリフェッチング」は、ＯＳ配信よりもさらに「インテリジェント（intelligent）」でなければならない。なぜならば、ユーザ駆動（user driven）のアプリケーション実行が対話形式の性質を持つため、ごく近いか予見できる将来において必要なコード又はデータが確定されないからである。然しながら、インテリジェント予測アルゴリズムにおいては、アプリケーション配信システムが、ネットワーク上におけるデマンドページングを最小限にする充分な予測精度で必要なコードとデータとをプリフェッチすることができ、アプリケーションのパフォーマンスを向上する。同時に、アプリケーションはサーバから提供されるので、アプリケーション分配、インストールおよび配信の管理はサーバで集中して行なうことができ、これにより更に、ＴＣＯの絶えず増大するアプリケーション管理コンポーネントを減らす。現在、アプリケーション配信技術の様々な実施例は、「AppStream社」や「Endeavors Technology社」などのベンダにより提供されている。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、アプリケーション配信技術は、システムが機能するために多くのローカルディスク空間を必要とするという重大な欠点を持つ。これは、実質的に現在の全てのアプリケーション（例えばMicrosoft Word（登録商標））が、かなり大きいローカル記憶空間を必要とするローカルページングファイル（一時ファイル（temporary files）とも言う）を利用するからである。これらのアプリケーションは、ページングファイルを書き込むための充分なディスク容量なしで実行することができない。しかしながら、現在利用できるアプリケーション配信ソリューションは、データをサーバからクライアントへの一方向にしか配信しないため、データ又はファイルをサーバに書き込む能力を提供しない。このように、現在利用できるアプリケーション配信技術は、ディスクレスＰＣ及びシン・クライアントなどのようなローカル記憶空間がないクライアントデバイスには用いることができない。
【００１２】
この欠点を克服する大変望ましい方法は、ＯＳ配信技術をアプリケーション配信技術と統合することである。統合された配信技術では、アプリケーション配信サービスのために必要なローカル記憶空間は、ネットワークを介して仮想ディスクサービスを可能にすることにより、ＯＳ配信サービスによって提供できる。そこで、統合されたＯＳ配信及びアプリケーション配信システムの分野が必要であることが、自ずと明らかである。
【００１３】
アプリケーション配信技術の別の欠点は、それがオペレーティングシステム依存性並びにオペレーティングシステム管理の問題に対処していないことである。クライアントコンピュータにインストールされたオペレーティングシステムの管理は、企業システム管理のための重要な側面であることは疑う余地はない。さらに、アプリケーションのインストール及び実行がオペレーティングシステムに依存することから、オペレーティングシステム管理に対処しないアプリケーション管理システムは、本質的に不完全である。例えば、Windows 98（登録商標）用に記述された一部のアプリケーションは、Windows 2000（登録商標）またはWindows XP（登録商標）においては適切にインストール又は実行されない。従って、アプリケーション配布および配信の集中管理は、クライアントコンピュータ上のオペレーティングシステムの同じく対等な集中管理が成されるのでなければ、充分に効果的且つ完全であることができない。さらに、オペレーティングシステム管理と切り離されたアプリケーションの管理では企業システム管理を複雑にし、また、予想外の困難を引き起こす可能性があり、それは究極的にはより高いＴＣＯの結果となる。
【００１４】
そこで、アプリケーション配信及びオペレーティングシステム配信の両方に対する配信技術を利用してオペレーティングシステムと同様にアプリケーションの分配及び配信の集中管理を提供するシステムの分野が必要であることが、自明である。
【課題を解決するための手段】
【００１５】
このため、本発明は、オペレーティングシステム及びアプリケーションの統合オンデマンド配信のシステム及び方法を提供することによって前述のニーズに対処せんとするものである。
【００１６】
本発明の一態様によれば、本発明は、ネットワークを介したクライアントコンピュータに対するオペレーティングシステム及びアプリケーションの統合オンデマンド配信システムであって、少なくとも１つのオペレーティングシステムイメージと，オペレーティングシステム配信サーバと，各々のクライアントコンピュータに対するオペレーティングシステム配信エージェントと，少なくとも１つのアプリケーションイメージと，アプリケーション配信サーバと，各々のクライアントコンピュータに対するアプリケーション配信エージェントと，オペレーティングシステム配信及びアプリケーション配信管理のための統合ユーザインターフェースと，を具備して構成されたことを特徴とする。本発明のシステムは、オペレーティングシステム配信およびアプリケーション配信管理のための統合共通データベースを更に具備することができる。本発明のシステムは、コンピュータに固有ないし特定のものであるオペレーティングシステム配信管理と、ユーザに固有ないし特定アプリケーション配信管理と、を行い、システムを適切に基準化させることができる。
【００１７】
本発明の別の態様では、本発明は、ネットワークを介したクライアントコンピュータに対するオペレーティングシステム及びアプリケーションの統合オンデマンド配信方法であって、オペレーティングシステム配信エージェント及びオペレーティングシステム配信サーバを提供するステップと，アプリケーション配信エージェント及びアプリケーション配信サーバを提供するステップと，少なくとも１つのオペレーティングシステムイメージを提供するステップと，少なくとも１つのアプリケーションイメージを提供するステップと，オペレーティングシステム配信及びアプリケーション配信管理のための統合ユーザインタフェースであって、オペレーティングシステム配信管理がクライアントに固有ないし特定のものであり、アプリケーション配信管理がユーザに固有ないし特定のものである統合ユーザインタフェースを提供するステップと，統合ユーザインタフェースを用いて、クライアントコンピュータのオペレーティングシステムを選択するステップと，統合ユーザインタフェースを用いて、ユーザのための少なくとも１つのアプリケーションを選択するステップと，クライアントコンピュータにユーザがログオンしたときに、オペレーティングシステム配信エージェント及びオペレーティングシステム配信サーバを介して、クライアントコンピュータに対して選択されたオペレーティングシステムのオペレーティングシステムイメージを配信することにより、クライアントコンピュータに対して選択されたオペレーティングシステムをオンデマンド配信するステップと，オペレーティングシステム配信エージェント及びオペレーティングシステム配信サーバを介して、クライアントコンピュータに対して選択された少なくとも１つのアプリケーションのアプリケーションイメージを配信することにより、選択された少なくとも１つのアプリケーションをオンデマンド配信するステップと，を含むことを特徴とする。
【００１８】
本発明の更に別の態様によれば、本発明は、ネットワークを介したクライアントコンピュータに対するオペレーティングシステム及びアプリケーションの統合オンデマンド配信システムであって、オペレーティングシステム配信サーバを提供する手段と，アプリケーション配信サーバを提供する手段と，少なくとも１つのオペレーティングシステムイメージを提供する手段と，少なくとも１つのアプリケーションイメージ提供手段であって、少なくとも１つのオペレーティングシステムイメージが少なくとも１つのアプリケーションイメージから分離、分別されたアプリケーションイメージを提供する手段と，少なくとも１つのクライアントコンピュータに対するオペレーティングシステム配信及びアプリケーション配信管理のための統合ユーザインタフェースを提供する手段と，統合ユーザインタフェースを用いて、クライアントコンピュータのためのオペレーティングシステムを選択する手段と，統合ユーザインタフェースを用いて、少なくとも１つのアプリケーションを選択する手段と，クライアントコンピュータにユーザがログオンしたときに、クライアントコンピュータに対して選択されたオペレーティングシステムのオペレーティングシステムイメージを配信することにより、クライアントコンピュータに対して選択されたオペレーティングシステムをオンデマンドで配信する手段と，クライアントコンピュータに対して選択された少なくとも１つのアプリケーションのためのアプリケーションイメージを配信することにより選択された少なくとも１つのアプリケーションをオンデマンドで配信する手段と，を具備して構成されたことを特徴とする。
【００１９】
本発明の他の更なる目的及び利点は、以下の明細書，クレーム及び図面を参照することにより、当業者によって更に理解され、認識されることであろう。
【発明を実施するための最良の形態】
【００２０】
図１は、本発明におけるシステムの概念ブロック図を例示しており、同図１に示すように、本発明のシステムの実施例は、オペレーティングシステム配信サーバ１１０，オペレーティングシステムイメージ１１２，オペレーティングシステム配信サービス１１４，アプリケーション配信サーバ１２０，アプリケーションイメージ１２２，アプリケーション配信サービス１２４，クライアントコンピュータ１３０，ＯＳ配信エージェント１３２，アプリケーション配信エージェント１３４，統合ユーザインタフェース１４０，集中管理コンソール１４２、統合共通データベース１５０及びデータベースサーバ１５２を具備して構成することができる。
【００２１】
クライアントコンピュータ１３０は、本発明の範囲内において、シン・クライアントモジュール、ＰＣ又はワークステーションであることもできる。クライアントコンピュータ１３０はまた、本発明の範囲内において、携帯デバイスからサーバクラスのマシンに至るまで、いかなる配信クライアントデバイスでもあることができる。特に、クライアントコンピュータ１３０は、本発明の範囲内において、ＷＥＢサーバやＥメールサーバのようなサーバマシンであることもできる。即ち、ＷＥＢやＥメールサービス目的のサーバとして機能するマシンは、ＯＳ配信目的のクライアントであることができ、ＯＳストリーミングサーバから配信されたオペレーティングシステムを有する。
【００２２】
オペレーティングシステム配信サーバ１１０、アプリケーション配信サーバ１２０及びデータベースサーバ１５２は、別々の物理サーバ上に配置することも同じ物理サーバマシン上に配置することもできるロジカルユニットである。
【００２３】
更に、オペレーティングシステムサーバ１１０，アプリケーション配信サーバ１２０又はデータベースサーバ１５２のいずれかは、サーバファームやサーバクラスタなどの多数個の物理サーバに配置することができる。オペレーティングシステムイメージ１１２は、例えばMicrosoft Windows 98，Windows 2000，Windows XP及びLinux（登録商標）などのオペレーティングシステムを実行するのに必要な全てのコンポーネント（カーネルイメージ，デバイスドライバ，実行ファイル，ダイナミック・リンク・ライブラリ（ＤＬＬs）など）を包含したファイルを具備して構成されている。これと類似して、アプリケーションイメージ１１２は、例えばMicrosoft Word，Excel（登録商標）， Outlook（登録商標）及びPowerPoint（登録商標）などのアプリケーションを実行するのに必要な全てのコンポーネントを包含したファイルを具備して構成されている。なお、全てのアプリケーションがアプリケーション配信サーバ１２０から配信される必要がないことには注意すべきである。いくつかのアプリケーション、特に、デマンドページングを殆ど又は全く作動させることがない小さなユーティリティアプリケーションについては、本発明の範囲内において、アプリケーションファイルはオペレーティングシステムイメージ１１２中に包含させることができる。また、Microsoft Windowsのような一部のオペレーティングシステムについては、ノートパッドや電卓などのようないくつかのユーティリティプログラムが、既にオペレーティングシステムの一部であることに注意すべきである。
【００２４】
本発明の好ましい実施例において、オペレーティングシステム配信サーバ１１０の配信サービスは、オペレーティングシステム配信サービス１１４を通して提供され、このオペレーティングシステム配信サービス１１４は、本発明の範囲内で、サービスプロセス又はサービスデーモンとすることができる。同様に、アプリケーション配信サーバ１２０の配信サービスは、アプリケーション配信サービス１２４を介して提供するように構成できる。また、別の実施例においては、オペレーティングシステム配信サービス１１４又はアプリケーション配信サービス１２４は、本発明の範囲内において、サービスプロセス内のサービススレッドとして実行することが可能である。さらに別の実施例では、オペレーティングシステム配信サービス１１４及びアプリケーション配信サービス１２４の両方を、本発明の範囲内において、１つのサービスプロセス内のサービススレッドとして実行することができる。このような実施例では、オペレーティングシステムに１つのサービスプロセスだけが存在するように見えるが、オペレーティングシステム配信サービス１１４とアプリケーション配信サービス１２４とは、そのサービスプロセス内の別々のサービススレッドによって提供されるのである。
【００２５】
本発明の一実施例においては、クライアントコンピュータ１３０，オペレーティングシステム配信サーバ１１０，アプリケーション配信サーバ１２０及びデータベースサーバ１５２は、ネットワークを介して相互に通信する。しかしながら、オペレーティングシステム配信サーバ１１０，アプリケーション配信サーバ１２０又はデータベースサーバ１５２のいずれかを他のサーバのいずれかと同じ物理サーバに配置する実施例としたものでは、本発明の範囲内において、サーバ間の通信は、同じマシン内で行なわれることになる。
【００２６】
図２ａは、本発明の統合システム管理機能のための統合ユーザインタフェース画面を示したものである。同図２ａに示すように、統合ユーザインタフェース１４０は、本発明の統合システムの全ての機能的なサブコンポーネントを管理するための統合システム管理機能を含んでいる。一般に、統合ユーザインタフェース１４０は、例えば集中管理コンソール１４２等のシステム管理ワークステーションにおいて、システム管理者により実行されるが、それをネットワーク１６０上のどのコンピュータでも実行するように構成することが本発明の範囲内において可能である。システム管理者は、統合ユーザインタフェース１４０を利用して、クライアントコンピュータ，オペレーティングシステム及びユーザのセットアップと構成とを行なうことになる。
【００２７】
特に、図２ａは、ユーザインタフェース構成要素である、オペレーティングシステムイメージを管理するためのオペレーティングシステム２０２，アプリケーションイメージを管理するためのアプリケーション２０４，クライアントデバイスを管理するためのクライアントデバイス２０６，ユーザを管理するためのユーザ２０８及びサーバを管理するためのサーバ２１０を表示している。図２ａはまた、ユーザインタフェース構成要素である、イメージ構成ユーティリティファンクションにアクセスするためのユーティリティ２１２及びシステムのコントロールデバイスを管理するデバイス管理２１４を表示している。
【００２８】
図２ａに図示のように、オペレーティングシステム２０２のユーザインタフェース構成要素が選択されると、右側のウィンドウ枠２１７に利用可能なオペレーティングシステムイメージが表示される。ＯＳイメージ１（２１６）が右側のウィンドウ枠２１７で選択されると、オペレーティングシステムイメージ、つまりWindows2000（２１８）が表示され、同じくサポートハードウェア２２０とデバイスドライバ２２２とが表示される。
【００２９】
図２ｂは、本発明におけるアプリケーションイメージ管理機能のための統合ユーザインタフェース画面を図示する。図２ｂに示すように、アプリケーション２０４のユーザインタフェース構成要素が選択されると、右側のウィンドウ枠においてシステムの利用可能なアプリケーションイメージを表示する。特に、アプリケーションイメージ１（２２４）が選択されると、イメージがWord2000（２２６）（登録商標）アプリケーションのものであり、サポートされたオペレーティングシステムがWindows2000（２２８）及びWindowsXP（２２９）であることを表示する。
【００３０】
図２ｃは、本発明におけるクライアントデバイス管理機能のための統合ユーザインタフェース画面を示したものである。図２ｃは、クライアントデバイス２０６のユーザインタフェース構成要素が選択されると、右側のウィンドウ枠２１７が利用可能なクライアントデバイスを表示することを示している。同図２ｃはまた、特にデバイス１（２３０）が選択されると、その結果、ハードウェア２３２，対象ＯＳ履歴２３４及びデバイス２３６が表示されることを示している。
【００３１】
図２ｄは、本発明における利用者管理機能のための統合ユーザインタフェース画面を図示するものである。図２ｄに示すように、ユーザ２０８のユーザインタフェース構成要素が選択されると、右側のウィンドウ枠２１７に諸ユーザが表示される。また、ユーザ１（２３８）が選択されると、割当てられたオペレーティングシステム２４０及びアプリケーション２４２が表示される。
【００３２】
図２ｅは、本発明におけるサーバ管理機能のための統合ユーザインタフェースを示したものである。図２ｅに図示のように、サーバ２１０のユーザインタフェース構成要素が選択されると、右側のウィンドウ枠２１７に利用可能なサーバが表示される。サーバ１（２４４）の下には、サーバ１（２４４）に対し、ＯＳイメージ２４５のツリーにおいて、イメージ１（２４６）及びイメージ２（２４７）など、利用可能なオペレーティングシステムイメージが表示される。しかしながら、アプリケーションイメージ２４８の下にはエントリがなく、これはサーバ１（２４４）がオペレーティングシステム配信のみに用いられていることを示している。それ故に、ＯＳ配信サービス２５０のみがサービス２５２のツリーの下に表示されている。クライアントデバイスのＩＰアドレス範囲２５４の構成要素は、クライアントデバイスのＩＰアドレスの表示及び管理機能にアクセスするのに用いられる。同図２ｅはまた、アプリケーションイメージ２５８に対するエントリを有するサーバ２（２５６）を示している。但し、ＯＳイメージ２５９の下には何もなく、これは、サーバ２（２５６）がアプリケーション配信サーバとしてのみ作動することを示している。対照的に、サーバ３（２６０）は、ＯＳイメージ、つまりイメージ２（２６２）を有し、同様に、アプリケーションイメージ、つまりアプリケーションイメージ５（２６４）及びアプリケーションイメージ６（２６５）を有しており、これは、サーバ３（２６０）がアプリケーション配信サーバと同様にＯＳ配信サーバとしての役目を果たすことを示している。それ故に、サービス２６６のツリーは、サーバ３（２６０）で動作するＯＳ配信サービス２６８及びアプリケーション配信サービス２６９の両方を表示している。
【００３３】
図２ｆは、本発明におけるイメージ構成ユーティリティファンクションのための統合ユーザインタフェース画面を図示するものである。図２ｆに示すように、ＯＳイメージビルダ２７０のユーザインタフェース構成要素が選択されると、右側のウィンドウ枠２１７においてＯＳ構成機能画面を表示する。システムファイルリストボックス２７２は、機能的なオペレーティングシステムイメージを構成するのに必要なオペレーティングシステムカーネルファイルを表示し、デバイスドライバリストボックス２７４は、システムデバイスドライバを表示する。加えて、ＯＳ構成ドロップダウンボックス２７６は、構成されるオペレーティングシステムがWindows2000であることを示す。また、イメージ名２７８及びイメージパス２７９が特定されることが示されている。
【００３４】
図２ｇは、本発明においてクライアントコンピュータ用のオペレーティングを選択するための統合ユーザインタフェース画面を図示するものである。この画面は、前述した統合システム管理ユーザインタフェースのクライアントデバイス管理機能画面からアクセスすることができる。同図２ｇに示すように、統合ユーザインタフェース１４０は、クライアントコンピュータ用のオペレーティングシステムを選択する機能を含む。例えば、この図２ｇは、クライアントコンピュータ１（２８０）を設定、構成するための選択が成されたユーザインタフェース画面を示している。オペレーティングシステムフィールド２８２について、Windows2000（２８４）が選択されると、クライアントコンピュータがブートしたときに、Windows2000オペレーティングシステムイメージがクライアントコンピュータ１（２８０）に配信されることを示す。このように、オペレーティングシステム管理は、クライアントコンピュータに特定のものである。
【００３５】
図２ｈは、本発明における、ユーザのためにオペレーティングシステムを選択するための統合ユーザインタフェース画面を図示している。同図２ｈに示すように、ユーザ１（２８６）が、オペレーティングシステム設定のために選択される。オペレーティングシステムフィールド２８８について、Windows2000（２８９）が選択されると、当業者にとって周知のプリブートログイン機能でユーザ１（２８６）がログインしているクライアントコンピュータに、Windows2000オペレーティングシステムイメージが配信されることを示す。それ故に、オペレーティングシステム管理は、ユーザ固有及び／又はクライアントコンピュータ固有とすることが可能となる。
【００３６】
図３ａは、本発明における、提供済みのオペレーティングシステムのためにアプリケーションを選択するための統合ユーザインタフェース画面を図示するものである。図３ａに示すように、Windows 2000オペレーティングシステム３１０が、アプリケーションの設定のために選択される。選択されたオペレーティングシステムにおいて利用可能なアプリケーションがアプリケーションフィールド３１２の下にリスト表示され、アクティブフィールド３１４を利用することにより、各々のアプリケーションには、アクティブ又は非アクティブステータスを設定することが可能である。
【００３７】
図３ｂは、本発明におけるユーザのためにアプリケーションを選択するための統合ユーザインタフェース画面を図示するものである。同図３ｂに示すように、ユーザ１（３１８）が、設定のために選択される。初期設定アプリケーションフィールド３２０として、Word2000フィールド３２２，Outlook2000（登録商標）フィールド３２４及びAcrobat Reader6（登録商標）フィールド３２６が選択されており、ユーザ１（３１８）が利用可能な初期設定アプリケーションを示している。また、同図３ｂには、更に、Excel2000（登録商標）フィールド３３２及びAutoCAD2004（登録商標）フィールド３３４が選択された、追加アプリケーションフィールド３３０が示されている。
【００３８】
このため、図３ａ及び図３ｂと同様に図２ａから図２ｈに示されるように、本発明は、オペレーティングシステム配信及びアプリケーション配信の統合管理を提供するものであり、オペレーティングシステム配信管理がクライアントコンピュータ又はマシンに特定であり、且つ／又は、アプリケーション配信管理がユーザに特定のものである。このように、本発明は、適切に基準合わせ可能な（scalable）オペレーティングシステム及びアプリケーションの統合オンデマンド配信を提供するものである。更に、システムセキュリティおよびアクセス権を、適当なレベルで適切に管理することができる。
【００３９】
また、他の実施例においては、統合ユーザインタフェース１４０をＷＥＢユーザインタフェースとすることができ、様々なハードウェアおよびネットワーク環境に亘ってシステムの柔軟性、互換性および可搬性を供するのである。
【００４０】
一旦オペレーティングシステム及びアプリケーションがシステム管理者によって設定されると、ユーザは、クライアントコンピュータのオペレーティングシステムをブートし、オペレーティングシステムインタフェースから利用可能なアプリケーションを起動することにより、提供されたコンピュータリソースにアクセスすることができる。更に、クライアントコンピュータのユーザもまた、管理者によって利用可能にされるアプリケーションへの加入、申込み（subscribe）することを選択することができる。
【００４１】
図４は、本発明におけるクライアントコンピュータのユーザのためのユーザインタフェース画面を図示するものである。同図４に示すように、クライアントコンピュータ１（２１０）のユーザ１（３１８）は、クライアントユーザインタフェース４０２において、利用可能なアプリケーションへの加入、申込み（subscription）の設定又はカスタマイズにアクセスできる。初期設定アプリケーションフィールド４１０について、Word2000フィールド４１２，Outlook2000フィールド４１４及びAcrobatReader6フィールド４１６が選択され、これは、クライアントコンピュータ１（２１０）のユーザ１（３１８）に対する初期設定アプリケーション申し込みを示している。また、同図４には、Excel2000フィールド４２２が選択された状態の追加アプリケーションフィールド４２０が示されており、これは、ユーザ１（３１８）がExcel2000の申込みを選択したことを示している。ここで、AutoCAD2004フィールド４２４は選択されておらず、これは、システム管理者によって、クライアントコンピュータ１（２１０）のユーザ１（３１８）が、AutoCAD2004アプリケーションが利用可能にされているものの、ユーザ１（３１８）がこのアプリケーションを申し込まないことを決定したことを示している。この加入、申込みされたアプリケーションは、クライアントコンピュータのローカルドライブにインストールされれば、クライアントコンピュータ１（２１０）のデスクトップ又はプログラムメニューに表示されることとなる。
【００４２】
図５ａは、オペレーティングシステム配信プロセスの概要を図示するものである。同図５ａに示すように、オペレーティングシステムは、オペレーティングシステム配信サーバ１１０からＯＳ配信エージェント１３２に、１度に１ブロックずつ、オペレーティングシステムイメージ１１２を配信することにより、クライアントコンピュータ１３０にオンデマンド配信される。好ましい実施例においては、オペレーティングシステム配信サービスは、ネットワーク１６０上で通信されるオペレーティングシステム配信サービス１１４及びＯＳ配信エージェント１３２により達成される。なお、オペレーティングシステム配信サービスは公知技術である。例えば、米国特許5,974,547号（「クライアントコンピュータに対するオペレーティングシステムの信頼性の高いネットワークブート技術」，Yevgeniy Klimenko，1998年3月20日出願）や、「Venturcom BXP 2.0 for Windows 2000 and Windows XP（ネットワーク上のディスクレスクライアントの集中管理），Patrick Waddell，2002年，Venturcom」などがある。また、従来技術において慣習的であるように、ＯＳ配信，ネットワークブート及びリモートブートの単語が、本願明細書において同じ意味で用いられることに留意して頂きたい。
【００４３】
ネットワークブート及びＯＳ配信の動作について簡単に説明すると、クライアントコンピュータのブートプロセスは、ネットワークインタフェースカード（ＮＩＣ）を、オペレーティングシステムをブート及びロードするＩＰＬデバイス（Initial Program Load Device）として認識するコードを含む、クライアントコンピュータのＲＯＭ  ＢＩＯＳにおいて開始する。このことは、「BIOS Boot Specification（Compaq Computer Corporation, Phoenix Technologies Ltd., Intel Corporation, 1996年１月）」にも記載されている。ネットワークカードはまた、換言すれば、ＰＸＥ可能ＮＩＣ（PXE-enabled NIC）など、ブート可能なデバイスでなければならない。ＰＸＥ（Preboot Execution Environment）は、ＯＳファイルがネットワークを介してダウンロードされ得るように、いかなるＯＳもロードされる前に、ネットワークカードによりサーバへのネットワーク接続を開始する方法を提供する。このことは、「Preboot Execution Environment (PXE) Specification Version 2.1（Intel Corporation，1999年９月）」にも記載されている。ネットワークカードはまた、本発明の範囲内において、例えばＥＢＭ  ＲＰＬ (Remote Program Load) のような、当業者に周知のいかなるプリブート接続プロトコルも使用することができる。クライアントコンピュータがブートするときに、ＢＩＯＳブートコードはPXE-enabled NICに対し、初期ＯＳブートコードを提供するように命令し、ＰＸＥ可能ＮＩＣは、初期ＯＳブートコードをダウンロードするべく、例えばオペレーティングシステム配信サーバ１１０のようなブートサーバに接続する。初期ブートコードの一部として、ＯＳ配信エージェント１３２は、プレＯＳディスクアクセス要求（ＰＣアーキテクチャのINT13）をトラップし、また、これらをＰＸＥ可能ＮＩＣにリダイレクトして、ＯＳファイルがクライアントコンピュータにダウンロードされ続けることができるようにする。
【００４４】
ネットワークスタック及びファイルシステムが使用可能になるのに十分なオペレーティングシステムが一旦ダウンロードされると、ＯＳ配信エージェント１３２は、ネットワーク１６０を介してオペレーティングシステム配信サーバに対する全ディスク要求をリダイレクトするディスクフィルタドライバとして作動するＯＳ配信エージェントに変換される。そして、更なるＯＳがクライアントコンピュータ１３０において必要とされるときにはすぐに、オペレーティングシステムイメージ１１２の対応する部分を、オペレーティングシステム配信サーバ１１０からネットワーク１６０を介してＯＳ配信エージェント１３２に配信することにより、必要なファイルがクライアントコンピュータ１３０に供給される。それ故に、全てのブートプロセスは、クライアントコンピュータ１３０のユーザに対して完全に透過的である。好ましい実施例では、オペレーティングシステム配信サービス１１４は、オペレーティングシステム配信サービスを提供するべく、オペレーティングシステムイメージ１１２を読み込み、ＯＳ配信エージェント１３２と通信する。
【００４５】
１つの実施例では、オペレーティングシステムイメージ１１２は、クライアントコンピュータにおけるディスクアクセス要求をネットワーク上の仮想システムにリダイレクトすることにより、透過的に配信される。好ましい実施例においては、本発明のＯＳ配信システムのための仮想ディスクに対するディスクアクセスのリダイレクトは、現在のオペレーティングシステムにおける重構造のデバイスドライバアーキテクチャのディスクドライブデバイスドライバのレベルで作動する。なお、Microsoft Windows NT/2000/XPオペレーティングシステム用の重構造のデバイスドライバ・アーキテクチャの説明としては、「Inside Microsoft Windows 2000, Third Edition（David A. Solomon and Mark E. Russinovich著，Microsoft Press， 2000年）」及び 「Windows NT File System Internals（Rajeev Nagar著，O'Reilly & Associates，1997年）」がある。
【００４６】
アプリケーション配信は、ＯＳ配信と非常に類似した方法論及びプロセスにより達成される。まず最初に、アプリケーション配信エージェント１３４が、オペレーティングシステムの一部としてクライアントコンピュータ１３０にダウンロードされる。オペレーティングシステム配信及びアプリケーション配信の管理機能が統合されるため、オペレーティングシステムは、どのアプリケーションが、アプリケーションをオペレーティングシステムイメージに実際に組み込まずに利用可能であるか、について認識している。また、別の実施例では、本発明の範囲内において、アプリケーション設定を、アプリケーション配信エージェント１３４を介して、クライアントコンピュータ１３０において実行されているオペレーティングシステムに伝送することができる。更に、オペレーティングシステムは、デスクトップ又はプログラムスタートメニューのアプリケーションアイコン又はショートカットを表示することで、ユーザに対しアプリケーションを利用可能にする。
【００４７】
図５ｂは、アプリケーション配信プロセスの概要を図示するものである。ユーザがアプリケーションアイコンをクリックしてアプリケーションを起動するときに、アプリケーション配信エージェント１３４が、アプリケーションイメージ１２２をアプリケーション配信サーバ１２０からネットワークを介して配信することにより、必要なアプリケーションファイルをオンデマンド配信する。まず、アプリケーション起動を開始するときに、アプリケーションイメージ１２２のうちアプリケーションを最初に実行させるのに十分な部分がダウンロードされる。さらに、ユーザがアプリケーションプログラムを利用するのに伴い、アプリケーションイメージ１２２の更なる部分が、クライアントコンピュータ１３０に必要なファイルを配信することにより、オンデマンド配信される。好ましい実施例においては、アプリケーション配信サービス１２４は、アプリケーション配信サービスを提供するべく、アプリケーションイメージ１２２を読み込んでアプリケーション配信エージェント１３４に通信する。
【００４８】
１つの実施例においては、アプリケーション配信エージェント１３４は実行時のオブジェクトコードデバッガ（runtime object code debuggers）と同様の方法で作動することができる。即ち、必要なアプリケーションファイルがメモリに存在しないときに、アプリケーションの実行が中断され、アプリケーション配信エージェント１３４が、必要なファイルをダウンロードするべく、ネットワーク１６０を介してアプリケーション配信サーバ１２０と通信する。なお、通信メカニズムとしては、本発明の範囲内において、ソケット（Socket）やＲＰＣなどを含む、当業者に周知のいかなるネットワーク通信方法を用いることもできる。そして、一旦必要なファイルがダウンロードされると、アプリケーションが引き続き実行される。
【００４９】
他の実施例においては、アプリケーション配信エージェント１３４はファイルシステムドライバとして動作し、必要なアプリケーションファイルをロードするためのディスクアクセス要求（「ページフォルト（page fault）」と呼ばれる）を、アプリケーション配信サーバ１２０にリダイレクトする。そして、アプリケーション配信サービスは、クライアントコンピュータ１３０に対して仮想ファイルシステムとして現れ、あたかもアプリケーションがローカルディスクドライブのファイルシステムからロードされているかのように作用する。アプリケーション配信技術の更に詳細な情報については、米国特許6,574,618, （「ネットワーク配信されたアプリケーションを実行する方法及びシステム」，Dan Eylon et al.，2000年12月28日出願）に記載されている。
【００５０】
本発明においては、ＯＳ配信サービスの仮想ディスク及びアプリケーション配信サービスの仮想ファイルシステムの区別がなされることが重要である。好ましい実施例においては、本発明のＯＳ配信サービスの仮想ディスクリダイレクトが、ディスクドライブデバイスドライバのレベルで作動する一方、アプリケーション配信の仮想ファイルリダイレクトは、ファイルシステムデバイスドライバのレベルで作動する。このため、ＯＳ配信サービス及びアプリケーション配信サービスが、衝突することなく、最大限の自在性をもって相互に透過的に作動する。然しながら、ＯＳ配信サービス及びアプリケーション配信サービスの両方は、本発明の範囲内において、仮想ファイルシステムと同様に仮想ディスクを用いることができる。
【００５１】
さらに他の実施例においては、クライアントコンピュータ１３０に配信されたアプリケーションファイルは、クライアントコンピュータ１３０の仮想ディスクに書き込まれ、必要に応じて、クライアントコンピュータ１３０にオンデマンド配信される。
【００５２】
さらに他の実施例においては、クライアントコンピュータ１３０に既に配信されたファイル（オペレーティングシステム又はアプリケーションのファイル）を記憶するために、ローカル記憶装置キャッシュをクライアントコンピュータ１３０に加えることもできる。そして、クライアントコンピュータ１３０のオペレーティングシステムによりページフォルトがなされたときに、システムは、まず、ローカル記憶装置キャッシュからファイル要求を履行することを試みる。ここで、必要なファイルページがローカルキャッシュにおいて見つからない場合にのみ、ファイルページがサーバから配信され、それにより、応答速度が改善され、ネットワークトラフィックが低減される。ローカルキャッシュ記憶装置は、本発明の範囲内において、当業者に周知のいかなる持続性の記憶装置であっても良く、これには、ディスクドライブ、フラッシュメモリデバイス及びＲＡＭディスクが含まれる。
【００５３】
図５ａ及び図５ｂに示されるように、本発明では、アプリケーションイメージとは分離、分別されたオペレーティングシステムイメージを提供する。オペレーティングシステム配信管理がクライアントコンピュータに特定のものであり、アプリケーション配信管理がユーザに特定のものである統合ユーザインタフェース１４０との組み合わせによって、分離、分別されたオペレーティングシステムイメージ及びアプリケーションイメージは、適切に基準合わせされたオペレーティングシステム及びアプリケーションの統合オンデマンド配信を行なう。そして、各々のユーザに対するアプリケーションイメージと結合されたオペレーティングシステムイメージを設定する（これは有用な記憶空間及びコンピュータ資源を浪費する）必要がない。
【００５４】
本発明の別の態様では、本発明はオペレーティングシステム配信及びアプリケーション配信管理に用いる統合共通データベースを含んで構成することができる。統合ユーザインタフェース１４０を統合共通データベース１５０と組み合わせることにより、統合管理機能は非常に単純化され、より強く信頼性の高いものとなる。また、全てのシステム情報が同じデータベースシステムの範囲内で管理されるため、エントリについて相互参照並びにエラー及び整合性のための相互チェックをすることができる。統合共通データベース１５０は、本発明の範囲内において、Microsoft Access（登録商標），SQL Server（登録商標）及びOracle（登録商標）を含む（但しこれらに限定されない）当業者に周知のいかなるデータベースシステムを用いても実現することができる。
【００５５】
本発明の統合共通データベース１５０はデータベースサーバ１５２に配置される。前述のように、データベースサーバ１５２は、単一の物理サーバハードウェア、又は、サーバファームやサーバクラスタなどのような複数の物理サーバに配置可能なロジカルユニットである。更に、オペレーティングシステム配信サーバ１１０，アプリケーション配信サーバ１２０及びデータベースサーバ１５２は全て、別々の物理サーバ又は同一の物理サーバマシンに配置可能なロジカルユニットである。
【００５６】
図６ａから図６ｇは、本発明における統合共通データベース１５０において考え得る構成要素を図示するものである。図６ａは、アカウントエンティティを示しており、アカウント名フィールド６１２及び部署フィールド６１４を有している。図６ｂはアプリケーションエンティティ６２０を示しており、イメージフィールド６２４，イメージサイズフィールド６２６，アクティブフィールド６２８及びＯＳフィールド６３０を有している。図６ｃはライセンス使用エンティティ６３０を示しており、アプリケーションフィールド６３２，最大ユーザフィールド６３４及び現在ユーザフィールド６３６を有している。図６ｄは、ログエンティティ６４０を示しており、タイムスタンプフィールド６４２，優先度フィールド６４４及びメッセージフィールド６４６を有している。図６ｅはクライアントマシンエンティティ６５０を示しており、マシン名フィールド６５２，ＭＡＣアドレスフィールド６５４，ＩＰアドレスフィールド６５６及び初期ユーザフィールド６５８を有している。当業者にとって周知であるように、ＭＡＣアドレスは、イーサネット（登録商標）プロトコルをサポートするネットワークインタフェースカードに対するイーサネットアドレスなどのようなリンク層又は物理層においてネットワークデバイスを一意に識別し、そして、ＩＰアドレスは、ネットワーク又はＩＰ層において、ネットワークデバイスを一意に識別する。図６ｆは、サーバエンティティ６７０の具体例を示しており、サーバ名フィールド６７２，ＩＰアドレスフィールド６７４及びポートフィールド６７６を有している。当業者にとって周知であるように、ポート番号はＩＰアドレスのサービス接続端点（service connection endpoint）を識別する。最後に、図６ｇはオペレーティングシステムエンティティ６８０を示しており、ＯＳ名フィールド６８２，イメージフィールド６８４，サイズフィールド６８６及びアクティブフィールド６８８を有している。
【００５７】
システム管理者は、操作において、集中管理コンソール１４２の統合ユーザインタフェース１４０を用いて、クライアントコンピュータ用のオペレーティングシステム及びユーザが用いるアプリケーションを設定する。ユーザ，クライアントコンピュータ，オペレーティングシステムイメージ及びアプリケーションイメージの情報は、データベースサーバ１５２で稼動している統合共通データベース１５０に格納され、アクセスされる。例えば、統合ユーザインタフェース１４０は、統合共通データベース１５０のアカウントエンティティ６１０からユーザ１（２３０）の情報に対し、また、クライアントマシンエンティティ６５０からクライアントコンピュータ１（２１０）の情報に対し、アクセスする。オペレーティングシステムが統合共通データベース１５０で選択されると、選択されたオペレーティングシステムに対するイメージファイルが、オペレーティングシステムエンティティ６８０のＯＳ名フィールド６８２及びイメージフィールド６８４を参照することによって取得される。同様に、アプリケーションが選択されると、アプリケーションに対するイメージファイルが、統合共通データベース１５０におけるアプリケーションエンティティ６２０のアプリケーション名フィールド６２２及びイメージフィールド６２４を参照することによって取得される。
【００５８】
また、オペレーティングシステム及びアプリケーションのライセンスが、ライセンス使用エンティティ６３０により管理される。一旦システム管理者がクライアントコンピュータ及びユーザを設定し、これらに対してオペレーティングシステム及びアプリケーションを利用可能にすると、ユーザはさらに、統合共通データベース１５０のデータベースエンティティを経て情報へのアクセス及び情報の格納を行なうクライアントユーザインタフェース４０２を用い、彼ら自身が望むインストールの設定を行なうことができる。
【００５９】
一旦設定及びインストールが完了すると、オペレーティングシステム配信サーバ１１０は、オペレーティングシステムエンティティ６８０のＯＳ名フィールド６８２及びイメージフィールド６８４を参照することにより、どのファイルを配信するかについて、また、クライアントマシンエンティティ６５０のマシン名フィールド６５２及びＩＰアドレスフィールド６５６を参照することにより、オペレーティングシステムイメージファイルをどのクライアントコンピュータに配信するかについて、確認をする。ＩＰアドレスフィールド６５６は、ネットワーク層又はＩＰ層において、ネットワーク上のコンピュータを一意に識別する。クライアントマシンエンティティ６５０のＭＡＣアドレスフィールド６５４は、リンク層又は物理層において、ネットワーク上のコンピュータを一意に識別する。さらに、オペレーティングシステム配信サーバ１１０は、オペレーティングシステムイメージファイルを配信するＯＳ配信エージェント１３２を用いて、通信接続（一般的にはソケット接続）を開始する。アプリケーション配信エージェント１３４は、ＯＳダウンロード又はＯＳ配信の一部としてクライアントコンピュータにダウンロードされる。一旦アプリケーション配信エージェント１３４がクライアントコンピュータで実行されると、アプリケーションはＯＳ配信に類似したプロセスを経て配信される。
【００６０】
本発明は、分離、分別されたＯＳイメージ及びアプリケーションイメージを提供することにより、また、クライアントマシンレベルに固有ないし特定のオペレーティング管理機能及びユーザレベルに固有ないし特定のアプリケーション管理機能を実行することにより、適切に基準合わせされ、適切なセキュリティ管理機能を提供する、本質的に標準的な技術を提供する。その結果、従来の製品よりもより低い所有トータルコストですむ、完全で、拡張性があり、強度があって信頼性の高いサーバ集中型アプリケーション及びオペレーティングシステム管理システムを実現する。
【００６１】
なお、本発明の好ましい実施例の前述の説明は、例証および説明のために提示されたものであり、網羅的な記述、又は、本発明を記述された厳密な表現に制限することを、意図していない。そして、上記説明の観点から多くの修正およびバリエーションが可能であり、本発明の範囲がこの詳細な説明によって制限されず、添付した請求項及びその請求項の均等物によるものとすることが意図されている。
【図面の簡単な説明】
【００６２】
【図１】本発明におけるシステムの概念ブロック図の例示である。
【図２ａ】本発明における統合システム管理機能のための統合ユーザインタフェース画面の例示である。
【図２ｂ】本発明におけるアプリケーションイメージ管理機能のための統合ユーザインタフェース画面の例示である。
【図２ｃ】本発明におけるクライアント装置管理機能のための統合ユーザインタフェース画面の例示である。
【図２ｄ】本発明におけるユーザ管理機能のための統合ユーザインタフェース画面の例示である。
【図２ｅ】本発明におけるサーバ管理機能のための統合ユーザインタフェース画面の例示である。
【図２ｆ】本発明におけるイメージ設定ユーティリティ機能のための統合ユーザインタフェース画面の例示である。
【図２ｇ】本発明におけるクライアントコンピュータのためのオペレーティングシステムを選択するための統合ユーザインタフェース画面の例示である。
【図２ｈ】本発明におけるユーザのためのオペレーティングシステムを選択するための統合ユーザインタフェース画面の例示である。
【図３ａ】本発明における、ある決まったオペレーティングシステム用のアプリケーションを選択するための統合ユーザインタフェース画面の例示である。
【図３ｂ】本発明における、あるユーザ用のアプリケーションを選択するための統合ユーザインタフェース画面の例示である。
【図４】本発明における、あるユーザ用のクライアントコンピュータ上でのユーザインタフェース画面の例示である。
【図５ａ】オペレーティングシステム配信プロセスの全体概要の例示である。
【図５ｂ】アプリケーション配信プロセスの全体概要の例示である。
【図６ａ】本発明における統合共通データベースの可能なエンティティの例示である。
【図６ｂ】本発明における統合共通データベースの可能なエンティティの例示である。
【図６ｃ】本発明における統合共通データベースの可能なエンティティの例示である。
【図６ｄ】本発明における統合共通データベースの可能なエンティティの例示である。
【図６ｅ】本発明における統合共通データベースの可能なエンティティの例示である。
【図６ｆ】本発明における統合共通データベースの可能なエンティティの例示である。
【図６ｇ】本発明における統合共通データベースの可能なエンティティの例示である。
【図１】
2007536630.tif 000002
【図２ａ】
2007536630.tif 000003
【図２ｂ】
2007536630.tif 000004
【図２ｃ】
2007536630.tif 000005
【図２ｄ】
2007536630.tif 000006
【図２ｅ】
2007536630.tif 000007
【図２ｆ】
2007536630.tif 000008
【図２ｇ】
2007536630.tif 000009
【図２ｈ】
2007536630.tif 000010
【図３ａ】
2007536630.tif 000011
【図３ｂ】
2007536630.tif 000012
【図４】
2007536630.tif 000013
【図５ａ】
2007536630.tif 000014
【図５ｂ】
2007536630.tif 000015
【図６ａ】
2007536630.tif 000016
【図６ｂ】
2007536630.tif 000017
【図６ｃ】
2007536630.tif 000018
【図６ｄ】
2007536630.tif 000019
【図６ｅ】
2007536630.tif 000020
【図６ｆ】
2007536630.tif 000021
【図６ｇ】
2007536630.tif 000022