【手続補正書】
【提出日】平成19年11月6日(2007.11.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピューティングシステム上の複数のアプリケーションを管理するコンピュータ実施方法であって、
前記アプリケーションプログラムと関連付けられているソースによって、前記コンピューティングシステム上のアプリケーションプログラムに対してＩＤが宣言されているかどうかを判定するステップと、
前記ＩＤが前記アプリケーションプログラムと関連付けられているソースによって宣言されていると判定された場合、前記宣言されたＩＤに基づいて前記アプリケーションプログラムにアプリケーションＩＤを割り当てるステップであって、前記割り当てられたアプリケーションＩＤは、前記コンピューティングシステム上で前記アプリケーションプログラムと他のアプリケーションプログラムとを区別するステップと、
前記ＩＤが前記アプリケーションプログラムと関連付けられているソースによって宣言されていないと判定された場合、前記アプリケーションプログラムの属性からアプリケーションＩＤを生成し、当該アプリケーションＩＤを前記アプリケーションプログラムに割り当てるステップであって、前記割り当てられたアプリケーションＩＤは、前記コンピューティングシステム上で前記アプリケーションプログラムと他のアプリケーションプログラムとを区別するステップと、
リソースＩＤを前記アプリケーションプログラムと関連付けられているリソースに割り当てるステップと、
前記割り当てられたアプリケーションＩＤと前記割り当てられたリソースＩＤを関連付けるステップと
を含むことを特徴とするコンピュータ実施方法。
【請求項２】
前記リソースＩＤを前記リソースに割り当てるステップは、
前記アプリケーションＩＤをオペレーティングシステムオブジェクトに割り当てるステップを含むことを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項３】
前記割り当てられたアプリケーションＩＤ、前記アプリケーションプログラムと関連付けられているマニフェスト、および前記オペレーティングシステムオブジェクトを記述する付加的なメタデータのうちの１つまたは複数に基づいて、前記オペレーティングシステムオブジェクトを前記アプリケーションプログラムに割り当てるステップをさらに含むことを特徴とする請求項２に記載のコンピュータ実施方法。
【請求項４】
前記リソースＩＤを前記リソースに割り当てるステップは、
前記割り当てられたアプリケーションＩＤ、前記アプリケーションプログラムと関連付けられているマニフェスト、前記リソースの評価、および前記リソースのハッシュのうちの１つまたは複数に基づいて、前記リソースＩＤを前記アプリケーションプログラムに割り当てるステップを含むことを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項５】
前記アプリケーションプログラムの分離ＩＤを決定するステップをさらに含み、
前記分離ＩＤは、関連付けられている別のアプリケーションＩＤを有する少なくとも１つの他のアプリケーションプログラムと関連付けられていることを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項６】
前記アプリケーションプログラムを、前記割り当てられたアプリケーションＩＤから別のアプリケーションプログラムと関連付けられている別のアプリケーションＩＤに移行するための要求を受信するステップと、
前記受信した要求に応答して、前記他のアプリケーションＩＤを前記アプリケーションプログラムに割り当てるステップと
をさらに含むことを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項７】
前記アプリケーションプログラムの属性からアプリケーションＩＤを生成するステップは、
前記アプリケーションプログラムに対して、アプリケーションベンダ、アプリケーション名、アプリケーションバージョン、およびチェックサムのうちの１つまたは複数を決定するステップを含むことを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項８】
前記リソースＩＤを前記リソースに割り当てるステップは、
前記アプリケーションプログラムの実行中に前記リソースが作成されたとき、前記リソースＩＤを前記リソースに割り当てるステップを含むことを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項９】
前記アプリケーションプログラムを構文解析して前記アプリケーションプログラムと関連付けられる署名を生成するステップをさらに含み、
前記アプリケーションＩＤを前記アプリケーションプログラムに割り当てるステップは、
前記生成された署名に基づいて前記アプリケーションプログラムに対して事前に割り当てられたアプリケーションＩＤを識別するステップを含むことを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項１０】
前記アプリケーションプログラムからオペレーティングシステムリソースに対する要求を受信するステップと、
前記受信した要求に応答して、前記オペレーティングシステムリソースの特定のバージョンが存在するかどうかを判定するステップであって、前記特定のバージョンは、前記割り当てられたＩＤと関連する前記オペレーティングシステムリソースのコピーを含むステップと、
前記判定に応答して、前記アプリケーションプログラムの前記特定のバージョンが存在する場合、前記アプリケーションプログラムに前記特定のバージョンを提供するステップと、
前記アプリケーションプログラムの前記特定のバージョンが存在しない場合、前記判定に応答して、前記特定のバージョンを生成し、前記生成された特定のバージョンを前記アプリケーションプログラムに提供するステップと
をさらに含むことを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項１１】
オペレーティングシステムがそれと関連付けられているリソースをアプリケーションプログラムによる変更から保護できるようにするコンピュータ実施方法であって、
オリジナルオペレーティングシステムリソースを維持するステップと、
第１の分離ＩＤをアプリケーションプログラムの第１のグループに割り当て、第２の分離ＩＤをアプリケーションプログラムの第２のグループに割り当てるステップであって、前記第１のグループは、第１のアプリケーションプログラムを含み、前記第２のグループは、第２のアプリケーションプログラムを含むステップと、
前記第１のアプリケーションプログラムから前記オリジナルオペレーティングシステムリソースに対する第１の要求を受信するステップと、
前記受信した要求に応答して、前記オリジナルオペレーティングシステムリソースの第１のバージョンが存在するかどうかを判定するステップであって、前記第１のバージョンは、前記第１の分離ＩＤに基づいてアプリケーションプログラムの前記第１のグループにアクセス可能な前記オリジナルオペレーティングシステムリソースのコピーを含むステップと、
前記判定に応答して、前記アプリケーションプログラムの前記第１のバージョンが存在する場合、前記第１のアプリケーションプログラムに前記第１のバージョンを提供するステップと、
前記アプリケーションプログラムの前記第１のバージョンが存在しない場合、前記判定に応答して、前記第１のバージョンを生成し、前記生成された第１のバージョンを前記第１のアプリケーションプログラムに提供するステップと、
前記第２のアプリケーションプログラムから前記オリジナルオペレーティングシステムリソースに対する第２の要求を受信するステップと、
前記オリジナルオペレーティングシステムリソースの第２のバージョンに前記第２のアプリケーションプログラムを提供するステップであって、前記第２のバージョンは、前記第２の分離ＩＤに基づいてアプリケーションプログラムの前記第２のグループにアクセス可能な前記オリジナルオペレーティングシステムリソースのコピーを含むステップと
を含むことを特徴とするコンピュータ実施方法。
【請求項１２】
前記第１の要求を前記第１のアプリケーションプログラムから受信するステップは、
ファイル、フォルダ、オブジェクト、およびオペレーティングシステムプロパティ値のうちの１つまたは複数に対する前記要求を受信するステップを含むことを特徴とする請求項１１に記載のコンピュータ実施方法。
【請求項１３】
前記アプリケーションＩＤを前記アプリケーションプログラムに割り当てるステップは、
前記アプリケーションプログラムと関連付けられているマニフェスト、前記アプリケーションプログラムと関連付けられている複数のファイルの評価、前記アプリケーションプログラムのハッシュ、および前記アプリケーションプログラムと関連付けられているインストールプログラムに対応するインストーラＩＤのうちの１つまたは複数に基づいて、前記アプリケーションＩＤを前記アプリケーションプログラムに割り当てるステップを含むことを特徴とする請求項１に記載のコンピュータ実施方法。
【請求項１４】
前記アプリケーションＩＤを前記アプリケーションプログラムに割り当てるステップは、
前記マニフェスト、前記評価、前記ハッシュ、および前記インストーラＩＤのうちの１つまたは複数からメタデータを抽出するステップをさらに含むことを特徴とする請求項１３に記載のコンピュータ実施方法。
【請求項１５】
請求項１から１４のいずれか１項に記載の前記コンピュータ実施方法を実行するコンピュータ実行可能コンポーネントを記録した１つまたは複数のコンピュータ可読媒体。
【請求項１６】
請求項１から１４のいずれか１項に記載の前記コンピュータ実施方法を実行するシステム。
【請求項１７】
ソフトウェア製品と関連付けられているＩＤコンテキストを表すデータ構造を記録したコンピュータ可読媒体であって、
前記データ構造は、
前記ソフトウェア製品を識別する値を格納するアプリケーションＩＤフィールドと、
前記ソフトウェア製品が属する前記ソフトウェア製品のグループと関連付けられている値を格納する分離ＩＤフィールドと、
前記ソフトウェア製品によって作成されたリソースと関連付けられ、前記ソフトウェア製品を識別する値を格納するリソースＩＤフィールドであって、当該値と前記アプリケーションＩＤフィールドに格納された前記値とが同じであるリソースＩＤフィールドと
を含むことを特徴とするコンピュータ可読媒体。
【請求項１８】
前記ソフトウェア製品および前記ソフトウェア製品のグループは共通リソースを共有することを特徴とする請求項１７に記載のコンピュータ可読媒体。
【請求項１９】
前記リソースは、プロセス、スレッド、ファイル、システム設定、オペレーティングシステム名前空間、前記オペレーティングシステム名前空間内の名前、およびオペレーティングシステムオブジェクトのうちの１つまたは複数を含むことを特徴とする請求項１７に記載のコンピュータ可読媒体。
【請求項２０】
前記リソースＩＤフィールドは、クリエータコンテキストおよび改訂済みコンテキストを含み、
前記クリエータコンテキストは、前記リソースを作成した前記ソフトウェア製品を識別する前記値を格納し、前記改訂済みコンテキストは、前記リソースと関連付けられたＩＤを表す別の値を格納することを特徴とする請求項１７に記載のコンピュータ可読媒体。