"リモートサーバにネットワーク接続された電子デバイスに関して少なくとも1つのサービスを可能にし、サポートし、及び/又は、提供するために、前記電子デバイスに配置される永続性サービスエージェントであって、不正変更が生じた場合に自己回復することを含む、外部不正変更に対して永続的であるように設定される前記電子デバイス内で隠されるドライバーエージェントと、ユーザによる開始又は介入無しで、前記ドライバーエージェントのオペレーションを自動的に開始するように設定されるランモジュールと、を有することを特徴とする永続性サービスエージェント。前記ドライバーエージェントは、サービスを提供するネットワークと通信するように設定されるフルファンクションドライバーエージェント、又は、前記電子デバイスで前記フルファンクションドライバーエージェントが利用可能かどうかを判断するように設定され、かつ、前記フルファンクションドライバーエージェントに比べて少ないファンクションセットを有して設定されるパーシャルドライバーエージェント、を少なくとも1つ有する請求項1に記載の永続性サービスエージェント。前記パーシャルドライバーエージェントは、前記電子デバイスで利用可能でないと判断する場合、前記フルファンクションドライバーエージェントのコピーを前記ネットワーク上から検索するようにさらに設定される請求項2に記載の永続性サービスエージェント。前記ランモジュールは、ユーザ介入無しで前記サービスを提供する前記電子デバイスの動作環境に前記ドライバーエージェントを自動的に適合するように設定されるインストーラモジュール、及び、前記インストーラモジュールを自動的にロードし、次に、前記ドライバーエージェントを自動的にロードするように設定されるローダーモジュール、を有する請求項1に記載の永続性サービスエージェント。前記インストーラモジュールは、前記電子デバイスの前記特定の動作環境に設定するためのプログラマブルモジュールを有する請求項4に記載の永続性サービスエージェント。前記ランモジュールは、前記電子デバイスのオペレーティングシステムに独立したドライバーエージェントのオペレーションを開始するように設定される請求項5に記載の永続性サービスエージェント。前記サービスは、資産追跡、資産回収、データ削除、ソフトウェア展開、及びソフトウェア更新の少なくとも1つを有する請求項1に記載の永続性サービスエージェント。少なくとも部分が、ファームウェア、ソフトウェア、及びハードウェア電子デバイスにおける前記電子デバイスに配置される請求項1に記載の永続性サービスエージェント。前記ファームウェアは、不揮発性メモリを有する請求項8に記載の永続性サービスエージェント。前記不揮発性メモリは、BIOSチップである請求項9に記載の永続性サービスエージェント。前記ローダーモジュールは、ファームウェアに格納され、かつ、前記ドライバーモジュール及びインストーラモジュールの少なくとも1つは、前記電子デバイスの中の大容量記憶装置のユーザアクセス可能なエリアに格納される請求項4に記載の永続性サービスエージェント。前記ドライバーエージェントは、前記リモートサーバと通信し、指令にしたがってサービスを実行するための当該指令を前記リモートサーバから受信し、それにより、前記エージェントにより実行され得るサービスの範囲を拡張するように設定される請求項1に記載の永続性サービスエージェント。前記サービスは、資産追跡、資産回収、データ削除、ソフトウェア展開、及びソフトウェア更新の少なくとも1つを有する請求項12に記載の永続性サービスエージェント。前記ドライバーエージェントは、前記リモートサーバからアプリケーションをダウンロードするように設定され、そして、前記リモートサーバから受信した指令にしたがって前記アプリケーションを開始する請求項12に記載の永続性サービスエージェント。前記アプリケーションは、実行ファイルを含む請求項14に記載の永続性サービスエージェント。請求項1に記載の永続性サービスエージェントを含む電子デバイス。電子デバイスにおいて、サービスを可能にし、サポートし、及び/又は、提供する方法であって、不正変更が生じた場合に自己回復することを含む、外部不正変更に対して永続的であるように設定されるドライバーエージェントを、前記電子デバイス内で隠し、ユーザによる開始又は介入無しで、前記ドライバーエージェントのオペレーションを自動的に開始するように設定されるランモジュールを提供し、リモートサーバと通信し、前記サービスに関連する指令を受信するネットワークに、前記ドライバーエージェントを操作的に接続すること、を有することを特徴とする方法。前記サービスは、資産追跡、資産回収、データ削除、ソフトウェア展開、及びソフトウェア更新の少なくとも1つを有する請求項17に記載の永続性サービスエージェント。リモートサーバにネットワークを介して接続される電子デバイスに、少なくとも1つのサービスを可能にし、サポートし、及び/又は、提供するために、前記電子デバイスに配置される永続性サービスエージェントであって、不正変更が生じた場合に自己回復することを含む、外部不正変更に対して永続的であるように設定される前記電子デバイス内で隠されるドライバーエージェントと、ユーザによる開始又は介入無しで、前記ドライバーエージェントのオペレーションを自動的に開始するように設定されるローダーモジュールと、を有することを特徴とする永続性サービスエージェント。ユーザ介入無しで前記サービスを提供する前記電子デバイスの動作環境に前記ドライバーエージェントを自動的に適合するように設定されるインストーラモジュールをさらに有する請求項19に記載の永続性サービスエージェント。その追跡機能を請け負う資産追跡、及び/又は、設定管理アプリケーションは、ユーザによって不正使用に対して確実なレベルで抵抗することができるべきである。資産監視の状況において、典型的には、認証ユーザは、コンピュータのライフサイクル管理の幾つかの局面において責任を有する人間である。この状況で、追跡エージェントは、ソフトウェアエージェントの偶然の除去から、認証ユーザを守ることができるべきであり、一方、エージェントを正規に不能にする要求を例えば、コンピュータ資産使用を終了する場合において可能とするべきである。非認証ユーザは、エージェントソフトウェアを取り除こうとするユーザであり、典型的にそのコンピュータのライフサイクル管理に責任を有さない者である。良く考えた理由として、エージェントを取り除こうとする非認証な試みは、追跡ソフトウェアが永久的に取り除かれることを確実にすることを望む、泥棒行為又は潜在的泥棒を含むだろう。非認証な偶然的除去の試みは、新しいオペレーティングシステムOSに成功に又は不成功にインストールする誰かの試みも含むだろう。PC資産及びその設定を追跡、管理、更新する試みは、多くのハードウェア、ソフトウェア、及び破壊/修繕、設定変更、OS再インストール、ハードドライブ再フォーマット/交換、システムクラッシュ、ユーザドリブン設定変更を含むイメージチェンジを経るPCのライフサイクル間の事実に関してさらに、挑戦的となる。これらの変更は、OSの再インストールを要求し、それにより、オリジナルの足跡、識別、又は、PC資産の追跡エージェントは不能、又は、除去される。この変更は、もし熱心に記録及び追跡されないなら、周知状態から不明状態へ移行するPC資産の始まりとなる。これらの決まりきった手順のPCライフサイクル運用上の要求は、複雑性、PC資産追跡の課題を増加させ、特に、リモート及びモバイルPCについて増加させる。これまで、既存の資産追跡アプリケーションは、それらが非認証ユーザによって不正使用することに対して要求される永続性を得るために必要な構成を表示しないという点で、ウィンドウズ登録商標NT/2000/XP環境において不十分である。これらの追跡アプリケーションは、上述した非認証又は偶然のユーザアクションによって、一般に、容易に無効化される。本発明の出願人、アブソリュートソフトウェアコーポレーションは、安全に資産を追跡し、失った及び盗まれた資産を回収する製品及びサービス、アブソリュートトラック、セキュア資産追跡、在庫管理、コンピュトレース技術プラットフォームによって供給されるソリューションを開発し、市販している。コンピュトレースは、ステルスエージェントを展開し、それは、ホストコンピュータのハードドライブに存在するソフトウェアクライアントである。いったんインストールされると、そのエージェントは、自動的に、定期的に位置情報、全自動で発見される資産データ位置を転送する監視センタにコンタクトする。エージェントと監視センタ間の継続的通信は、ユーザの介入を要求せず、インターネット又は電話接続を介して維持される。コンピュータが起動され、かつ、電話回線かインターネットアクセスISPや企業ネットワークを通してのどちらかがある限り、コンピュトレースエージェントは、監視センタに資産データを報告することが出来るだろう。エージェント及び監視センタ間のユーザ介入の無い通信は、エージェントの認証ユーザに、最新の位置情報及びコンピュータ在庫全体の広範囲の資産データにセキュアアクセスすることを確実にする。スタンドアローン、又は、既存の資産管理ツールの補足としてであろうとなかろうと、アブソリュートトラックは、リモート、モバイル、デスクトップコンピュータの全てのサイズのビジネスを助けるコスト効果のあるアプリケーションであり続け、日々のハードウェア及びソフトウェア品目追跡機能を実行する。コンピュトレースは、モバイルコンピュータの盗難を追跡し、かつ、盗まれたモバイルコンピュータを回収するための効果的ツールであり続ける。様々なコンピュトレース製品及びサービスの基礎をなす技術は、US及び他の国で開示され、特許を受けた。そしてそれは、通常は、アブソリュートソフトウェアコーポレーションに帰属している。例えば、US特許番号、5,5715,174、5,5764,892、5,802,280、6,244,758、6,262,392、及び6,507,914、そして関連する外国特許。さらに、アブソリュートトラックに関する情報は、アブソリュートソフトウェアコーポレーションで発行されている例えば、セキュアコンピュータ資産追跡ソリューション、ホワイトペーパ、2003年4月25日発行。各保護されたデバイスに展開されるエージェントソフトウェアは、内密ステルス性であり、コンピュータユーザによって発見されることを対して抵抗する。不正使用耐性のレベルは、検出の困難性、及び、コンピュトレースサービスを打ち負かすために要求される技能のレベルに影響を与える。ソフトウェアのみのコンピュトレースは、ディスクベースのユーティリティのような不正使用耐性がある一方、不正使用耐性の付加的レベルを提供する改良されたエージェントを望ましくは発展し、そして、資産追跡及び回収を超えるサービスをさらに可能にし、サポートし、及び/又は、提供する。本発明は、資産の管理及び保護ハードウェア、ファームウェア、ソフトウェア、データ等の制限を含まず、それらのソフトウェアの設定に関連するサービスを、改善された不正変更防止と共に可能にし、サポートし、及び/又は提供するサービスエージェントを対象とする。ソフトウェアエージェントは、複数のモジュールを有する。各モジュールは、特定の動作環境で機能するように設計されている。モジュール設計は、アプリケーション全体を構築せずに、特定の動作環境、例えば、BIOS又はハードドライブの中における、展開のためのエージェント設定において柔軟性を提供する。エージェントは、ソフトウェアによって実装されても良く、システム内のソフトウェア、ファームウェア、及び/又はハードウェアに在住することができる。本発明の一実施例によれば、ローダーモジュールは、パワーオンセルフテストPOST間にロードされ制御を獲得する。エージェントは、それがインストールされたデバイスに関して、サービス例えば、追跡、データ削除、及びソフトウェア更新を可能にし、サポートし、提供することが期待されている。一旦、ローダーに制御が与えられると、ローダーは、適切な時間に必要なだけ含み、かつ、削除され又は機械から無くなってしまったエージェントの部分をネットワーク例えば、インターネットを横断して再ロードし、他の機能及びエージェントのモジュールをロードするように行動する。ソフトウェアエージェントは、通常エージェントを取り除くことが期待されるアクションにも関わらず永続性を有する能力がある。本発明の一実施例によれば、永続性エージェントのエージェントコードのための少なくとも1つのモジュール及び/又はデータは、ROMのようなデバイスのファームウェアで、特に基本的な入出力システムBIOS又はその同等レベルのもので実装され、そして、そのデバイスに在住する。ソフトウェアエージェントは、デバイスのOSに独立してその設計されたサービスファンクション例えば、追跡、データ削除、及びソフトウェア更新をすぐに実行できるようにそれ自身をロードし、エージェントがその設計されたサービスファンクションを実行するシステムの基本動作を利用できるように、OSを検出することによってデバイスのある基本動作例えば、入出力を制御する環境例えば、そのデバイスのOSに自分自身を適合することができる。別な実施例によれば、コンピュトレースComputraceローダーモジュールCLM、適合インストーラモジュールAIM、及び通信ドライバエージェントCDAという、3つのモジュールを有する。CLMは、AIMをロードし、次に、検索し、認証し、解凍し、検出したOS環境にCDAを適合させる。ある実施例では、CDAは、2つの形式、フルファンクションCDA、及び、ミニCDAがある。ミニCDAのファンクションは、フル又は現状のCDAがデバイスのどこかに検出されるか否かを判断し、もしないなら、監視サーバからネットワーク例えば、インターネットを横断してフルファンクションCDAをロードすることである。別な実施例では、異なるモジュール、及び、特にCDAは、プログラマブルであり、特有の環境に適合させるためのカスタムな機能性を要求することができる。幾つかのモジュールでエージェントを提供することで、カスタマイゼーションのレベルは、最小に維持される。ある実施例では、少なくともCLMが、BIOSのようなファームウェアで、一つ以上の他のモジュールと共に、ハードドライブパーティションギャップ、又は、ハードドライブホスト保護エリアHPAに格納される。別な実施例では、CLMは、代替マスターブートレコードMBR又は前述の組み合わせに格納される。別な形態によれば、エージェントが実行するサービス環境は、リモートサーバ、又は、エージェントで利用可能な一般的なサブファンクションコールの組み合わせによって制御される。エージェントのこのプログラム可能な能力は、サーバドリブンコマンドに基づいて、その機能を拡張することが可能である。拡張性は、エリアが高価であり、機能性を加えたり、変更する柔軟な更新が経済的では無いBIOSのようなファームウェアでは、エージェントの上手い展開に関して非常に重要である。拡張性の構成は、エージェントの起動プロセス及び再起動プロセスの主要な要素となる。本発明の別な形態によれば、エージェントの拡張性は、クライアントデバイスで格納されるデータを削除するために、データ削除アプリケーションを有効にする。本発明のさらに別な形態によれば、エージェントの拡張性は、クライアントデバイスに送信され、かつ、プログラム可能となるソフトウェア更新を有効にする。本発明は、デバイスのユーザの活動にも関わらず、アクティブ状態にあり続けるために、先に展開したソフトウェアのための能力を改良する。本発明の状況においては、アクティブは、それ自身をロードし、ある実施例では、例えば、ハードドライブをフォーマットする低レベルコマンド、OSの再インストール、イメージユーティリティを用いたハードドライブの再イメージ化、ハードドライブの交換を含むユーザ活動の広い範囲においてエージェントの全機能を再構築する特有の能力を参照する。ユーザは、これらの活動を実行する個人として参照され、認証された能力、又は、非認証された能力で行動する。エージェントを取り除くこれらの活動は、意図的あるいは偶然であるかもしれない。本発明は、エージェント例えば、コンピュータ資源のライフの終わりでエージェントを合法的に無効にすることができる一方で、ソフトウェアエージェントの偶然の削除から認証ユーザを守る。本発明は、非認証ユーザによるソフトウェアエージェントの削除から保護する。本発明の永続性の属性は、資産保護、データ及びネットワークセキュリティ、IT資産管理、ソフトウェア展開、他のタイプのアプリケーションにおいて価値を有する。セキュア、内密なデバイス追跡ソフトウェアアプリケーションという状況において、本発明は、盗難という行動にもかかわらず、価値のある資産の盗難を、隠すことを極めて難しくする。加えて、ソフトウェアエージェントの永続性という性質は、エージェントが偶然でも削除出来ないという信頼を提供するので、個人情報に平和をもたらす。セキュア資産管理アプリケーションという環境で、そのライフサイクル全体を通して、資産を追跡する連続性を保障するので、本発明はさらなる価値を有する。今日、IT管理者のための挑戦すべき鍵は、ライフサイクル全体を通して資産を追跡する能力である。ライフサイクルの間に、デバイスあるユーザから別なユーザへ頻繁に移転され、その間に、デバイスは、再イメージされ、OSを再インストールされ、資産の追跡を困難にするようなメンテナンス手続が課せられるが、本発明によりそれらは容易に行われる。資産追跡サービスに加えて、永続性及び拡張性エージェントのよって、他のサービスが可能になり、サポートされ、及び/又は提供される。好ましい使用はもちろんのこと、本発明の本質及び利点のより十分な理解のために、添付される図面と共に読まれる次の詳細な記述が参照されるべきである。図面では、参照番号は、図面全体を通して類似又は同じ部分を指定する。本記述は、本発明を実行するための現在最も良く考えて記載されたものである。この記述は、本発明の一般的な原則を説明するためのものであり、本発明を制限する意味で理解されるものでは無い。本発明の範囲は、添付された請求項を参照して最も良く判断される。本発明の基礎をなす原則の理解から明白であるように、本発明は、本発明の範囲及び精神から離れることなく、様々な実施例の中に実用性を見つけることができる。本発明の永続性エージェントの構成を説明するために、エージェントや、追跡エージェントにより提供されるサービスの1つとしての資産追跡、及び、エージェントにより提供される別な例としてのデータ削除を参照する。本発明の範囲及び精神から放れることなく、エージェントは、ソフトウェア展開、更新などの他のサービスのために使用されることが理解される。下記に示す詳細な説明は、主として、本発明の方法、プロセス、操作の象徴的な表現、機能及び構成という用語で、表される。これらの方法記載及び表現は、当業者が最も効果的に、他の分野の当業者にその内容を最も効果的に伝えるように使用される手段である。ソフトウェアを実装する方法又はプロセスは、ここにおいて、一般に、望ましい結果に導く自己矛盾の無い連続的なステップと考えられる。これらのステップは、物理量の物理的な操作を要求する。しかし必ずしも必要では無いが、これらの量は、しばしば、格納、転送、結合、及び他の操作を可能にする電気的又は磁気的信号の形をとる。追跡システム外観資産追跡機能は、本発明の永続性エージェントによって可能、サポート、及び/又は、提供されるサービスの例である。図1を参照すると、本発明の実施例による資産追跡システムは、クライアントサーバアーキテクチャを含み、そしてそれは、次の主要なコンポーネントを有する。a表される電子デバイスのいずれか1つを構成し、かつ、エージェントが実装されるクライアントデバイスA。そのエージェントソフトウェアは、資産、位置、及び他の情報を報告するためのクライアントデバイスであり、かつ、望ましい機能をサポート及び実行するためにそのエージェントをプログラムするためにリモートサーバからの命令を受信するためのクライアントデバイス上で実行する。本発明は、突発的又は計画的な削除に対してより永続性のあるエージェントソフトウェアの能力、及び、監視サーバからのクライアントのプログラマビリティを提供する。b切替通信ネットワーク、インターネット、プライベート及びパブリックイントラネット、ラジオネットワーク、衛星ネットワーク、ケーブルネットワークを含む情報交換ネットワークのような通信リンクB。cクライアントデバイスAとホスト監視システムCとの間の通信を監視するホスト監視サーバ3を含むホスト監視システムC。そしてそれは、クライアントデバイスからのクライアントデバイス記録情報によって定期的に接触される。その監視サーバは、クライアントが実行すべきアクションは何か、収集すべきデータは何であるかを含む何のアクションを実行するかに関するクライアントへの命令や、次のスケジュールされたコールタイムをクライアントに提供もする。クライアントデバイスは、通信リンクB例えば、ダイヤルアップ電話通信又はIP接続を介して監視サーバに接触する。監視サーバは、インターネット上に提供されたサービス、又は、企業イントラネット上の顧客所有サーバとして、機能を実行することもできる。ホスト監視システムCは、報告及び管理者ポータルを含み、そしてそれは、顧客、管理者、及び、データを見たり、監視サーバやクライアントデバイスの機能を監視する資産追跡サービスプロバイダ機能を有する。ホスト監視サーバは、顧客に、及び、多くの通信手段を介して資産監視の状況に関する指定代理人及び法執行代理機関を知らせる。これらのコンポーネントの各々についてさらに以下に詳述する。図1を参照すると、本発明による永続性ソフトウェアエージェントを実装する役に立つクライアントデバイスAは、制限はされないが、一般的又は明確な目的のデジタル処理、情報処理、及び/又は、コンピューティング装置を含み、そしてそれは、スタンドアローンデバイス、又はより大きなシステム例えば大容量記憶装置のコンポーネント、持ち運び可能で、携帯可能で、又は固定型であっても良い。異なるタイプのクライアントデバイスは、本発明のソフトウェアエージェントアプリケーションと共に実装される。例えば、本発明のソフトウェアエージェントアプリケーションは、デスクトップクライアントコンピューティングデバイス、ポータブルコンピューティングデバイス例えば、ラップトップ、ノートブックコンピュータ、携帯可能デバイス例えば、携帯電話、PDAs携帯情報端末、パーソナル電子機器等に適用しても良く、そしてそれは、下記でさらに説明するように、外部サーバに通信することが可能である。クライアントデバイスに在住するオペレーティングシステムに加えて、クライアントデバイスは、選択的に操作可能で、プログラムにより開始され又は設定され、ルーチン及び/又は連続した命令及び/又はデバイスに格納されるロジックであっても良い。つまり、ここに記載され示唆される方法の使用は、特定の処理設定に制限されるものでは無い。本発明の原理、構成、及び機能の理解を説明するために、それらは、説明的な実施例において、その展開及び実施を参照して説明される。例示及び非制限の方法で、本発明は、インターネットの状況に関連して展開及び実装例を参照して、クライアントデバイスAコンピュータA1は、概念的にデスクトップデバイスとして表されるが、それよりむしろ、携帯コンピュータデバイスを有するとして、ラップトップ又はノートブックコンピュータを参照して記載される。現在存在する将来のグローバルネットワークに対する本発明の応用は、ここに意図されている。さらに、本発明のインターネットの形態は、クライアントコンピュータA1に関して記載及び説明されるが、インターネットへの応用は、本発明の範囲及び精神から放れることなく、他のクライアントデバイスに徐々に適用可能である。図1は、情報交換ネットワークの形式で、通信リンクBの概念的表現である。そこで、本発明は、資産追跡のために利用される。本発明により、資産追跡エージェントによりアクセスされる情報交換ネットワークは、パブリック及びプライベートコンピュータネットワーク例えば、インターネット、イントラネット、WAN、LAN等、付加価値ネットワーク、通信ネットワーク例えば、有線又は無線ネットワーク、ブロードキャストネットワーク、ケーブルネットワーク、ラジオネットワーク、そのようなネットワークの同種又は異種の組み合わせのような、分散情報交換ネットワークを、制限はされないが、有する。当業者であれば正等に評価するように、特定の目的のために最も効果的な記述により、ネットワークは、ハードウェア及びソフトウェアの両方を含み、どちらか、又は、両方として考えられる。例えば、ネットワークは、通信設備により相互接続されるハードウェアノードのセットとして、又は、通信設備として、又は、そのノード有り又はノード無しの通信設備として記載される。ハードウェア、ファームウェア、ソフトウェアとの間の境界は、常に明確ではないということがさらに理解され、そのようなネットワーク及び通信設備、及び、永続性エージェント技術プラットフォームのコンポーネントは、ソフトウェア、ファームウェア及びハードウェア形態のように当業者には理解されるだろう。インターネットは、コンピュータネットワークを含む情報交換ネットワークの例であり、そこで、本発明は実施される。当業者であれば明白であるので、インターネットネットワークサーバ、ルータ、ゲートウェイのようなを有する様々なハードウェア及びソフトウェアコンポーネントは、示されていない。さらに、ユーザ/クライアントデバイス及びサーバによるインターネットへのアクセスは、同軸ケーブル、電話線、無線RFリンクのような適切な通信媒体L、そこで実装されるブラウザのようなツールを介してなされることは、理解されるだろう。サーバ及びクライアント間の通信は、確立したプロトコルにより生じる。下記に示されるように、本発明の永続性資産追跡エージェントは、クライアントの1つの中に、又は、クライアントの1つとして設定され、それは、情報交換ネットワーク上を越え、サーバの1つと通信する。この発明は、他の既存の技術と連結して働き、そしてその他の技術は、本発明を判りにくくなることを避け、当業者には明らかなのでここでは詳述しない。特に、例えば、方法は、今のところ、インターネット、ウェブベースツール、関連方法、及びプロトコルを含んで存在する。図1を参照すると、ホスト監視システムCは、通信リンクBの1つ以上並列又は同時を介して、エージェントをインストールしたクライアントデバイスAでデータを交換するように設定されるコンピュータ例えば、サーバ3である。ホスト監視システムCは、外部ユーザアクセスC1を識別し、及び、フィルタリングするルーチンを含む。ホスト監視システムCは、さらに、報告及び監視ポータルを介して、所有者又は追跡デバイスA例えば、ネットワーク位置情報に関連する情報に関する追跡クライアントデバイスAの代理人と共に直接的又は間接的に通信する。例えば、ホスト監視システムCは、電子メール、ファックス、ページング、電話などで、追跡デバイスの所有者、所有者の指定代理人、企業指定部門又は代理人、配置された監視サービスステーション、法執行機関などと通信する。あるいは、ホスト監視システムCは、それ自身が、配置された監視サービスステーション、法執行機関となっても良い。ホスト監視システムC及び/又は下流の目的位置例えば、監視サービスステーションは、追跡された資産の在庫リスト、又は、追跡された資産の紛失/盗難状況を維持する。図1では、ただ1つのホスト監視システムCが示されるが、たくさんのホスト監視システムCが、例えば、異なる地理的領域において、通信ネットワークを横断して分散される。エージェントの重要な機能の一つは、その関係するクライアントデバイスAに関連する識別、位置、及び/又は、他の情報を報告するために、ホスト監視システムCに接触することである。本発明の一実施例によれば、各クライアントデバイスAは、独自の識別に関係しており、その独自の識別は、ホスト監視システムCへクライアントデバイスAから転送される情報の一部であっても良い。独自識別は、電子シリアルナンバESN、メディアアクセスコントロールMACナンバ、インターネットホストネーム/IPアドレス、所有者/ユーザ特定識別、クライアントデバイスの識別を表し、識別し、認める他の数字、英字、又は英数字情報の形式であっても良く、さらに、エージェント及びその識別の実際又は架空の地理的位置の決定又は確認のためのベースを表す日付及び時間のような情報の形式であっても良い。資産を追跡し、及び/又は、紛失又は盗難された紛失デバイスAを回収するために、ステルスエージェントを用いる一般的な概念は、本発明の出願人であるアブソリュートソフトウェアコーポレイションの有する特許に記載される。エージェントは、ホスト監視システムCをコールするために、適切な時間を決定しなければならない。いったん、エージェントがインストールされ、周期的に例えば、時間Nに実行し、又は、特定時間経過後に例えば、システムから、又は、ユーザログオンから、又は、デバイスシステムブート後に、ある所与の状況の発生後すぐに、又は、ハードウェア再設定のようなある内部又は外部イベントによるトリガーされ、通信プロセスを開始するためのユーザによる介入無しで、通信リンクBを介してその識別及び/又は位置を、ホスト監視システムCに報告するということをここで手短にのべることで十分である。エージェントは、さらに、2つ以上の利用可能な通信リンクBを介して、その識別と位置を報告する。エージェントの位置は、したがって追跡されたデバイスであり、例えば、インターネットを介したクライアントデバイスAとホスト監視システムCとの間の通信を可能にするように使用される全てのIPルートのリストを獲得するための探索経路ルーチンによって決定される。監視システムCへ転送される位置及び資産管理データの全ては、中央レポジトリで維持され、セキュアウェブベース又はネットワークベースコンソールを介して認証された管理者によって、7日間24時間アクセスされ得る。ある実施例では、エージェントが位置及び資産データを転送するとき、監視システムCは、タスクの次のセットのための命令、及び、次のスケジュールされたコールタイム及び日付をエージェントに対して送り、及び、プログラムする。監視システムCは、各コンピュータC2上の現状及び精度ある監査の跡を提供して、全てのエージェントの送信を記録する。包括的コンピュータ資産追跡及び在庫解決は、IP又はダイヤルアップを介して遠隔から接続する遠隔及びモバイルシステムはもちろんのこと、企業ネットワークに局所的に接続されるシステムに関するこの情報も捕獲する。加えて、情報は、資産が提供される最新の図であることを確実にするために、規則的に捕獲される必要がある。さらに後述するように、追跡エージェントは、不正改変に対する耐性と共に永続的であり、エージェントは、否認証ユーザに対して透明であり続けるように設定される。ユーザに対して隠されているために、エージェントは、インタフェースすることが望まれないなら、いかなる起動中のアプリケーションにも干渉しない。本発明による新規な構成、機能、及び操作は、さらに十分に後述される。永続性エージェントプラットフォームアーキテクチャーの外観IT管理者は、コンピュータ全体のライフサイクルの間中一貫して全てのコンピュータ資産を追跡する能力を要求する。これは、LANの外側で作動するリモート及びモバイルコンピュータを含む。資産追跡エージェントは、コンピュータのライフサイクルの始めに一度インストールされる必要があり、そのコンピュータがリタイアするまで規則的に通信される必要がある。そのライフサイクルの間に、コンピュータは多くのユーザにより使用され、ハードウェア及びソフトウェアは変化し、これら3つの領域で永続的であって、かつ、変化を報告できる追跡エージェントは、危機的状況にある。本発明による永続性エージェントは、たとえハードドライブが再フォーマット又はOSが再インストール又は不正干渉されても、例えば、IMAC及び故障/修理にもかかわらず、PCのライフサイクルの間中、PC資産の独自の識別、その状況を報告することができる。永続性エージェントは、それを保護するように設計され、非認証の削除攻撃を切り抜けるだろう。この永続性構成は、盗難の場合にPC資産に接続され続け、かつ、精度を確実にしながら資産追跡を保障するために、極めて重要である。永続性エージェントは、ホストコンピュータに在住する低レベルの検知できないソフトウェアクライアントである。エージェントは、永続性ソフトウェアであり、取り除くことが極めて難しい。エージェントは、たとえエージェントサービスが従来的手段で検出されても、エージェントソフトウェアのインストールを再構築するように機能する自己回復技術を組み込む。エージェントは、OSインストール、ハードドライブフォーマット、及びハードドライブ交換ですら切り抜けるだろう。生存性は、資産追跡及び盗難回収及びエージェントが可能にし、サポート、及び/又は提供するサービスにおける成功に対して極めて重要である。自己回復機能は、ファイルシステム内に在住せず、従来のソフトウェアより検出及び削除がより困難である。ソフトウェアの永続性及び自己回復部分は、その内密性ステルス性のため、取り除くことが困難である。ソフトウェアは、通常は、正しいパスワードと共に認証されたIT管理者によって、通常取り除かれる。自己回復特徴は、新しいイメージされたシステムはもちろんのこと、新しくフォーマット及びイメージされたOSにおいてエージェントインストールを復旧する機能であるだろう。本発明の別な形態によれば、エージェントは、最初にプログラムされたものに加えてその機能を拡張するためにプログラム可能である。エージェントはリモートサーバと通信し、そこでリモートサーバが、次のタスクセットのための命令と共にエージェントを提供することによってエージェントを送信しプログラムする。エージェントは、ハードウェア、ファームウェア、又はいかなる電子デバイスのソフトウェアで実装可能である。あるいは、エージェントは、モデムの中のDSPやコンピュータの中のCPUのような電子部品のように、デバイスの部品で実装可能である。さらに、エージェントの機能性は、パケットデータを送信し及び/又は受信することを通して、通信リンクを確立することが可能ないかなるハードウェアデバイスの回路においても実装可能である。例えば、エージェントは、電子デバイスのROMBIOS、ROM、フラッシュROM、EPROM、EEPROM等の様な不揮発性メモリ、ソフトウェアプログラム、マイクロコードプログラム、デジタルシグナルプロセッサDSPプログラム、又はOSの組み込み機能において実施可能である。本発明の実施例により、永続性追跡エージェントここでは、永続性エージェントとしても参照されるは、BIOS又は、同等の機能のシステムで実施される。従来知られているように、BIOSは、システム電源起動又は停止において常に実行されるスタートアップコードである。これは、メモリ空間で固定位置から開始するプロセッシングユニット又はソフトウェア命令の中で実装されるマイクロコードで有り得る。これらの命令は、電源オンセルフテストPOST、デバイスに在住するOSのブート前に典型的にかつ独立した、ディスクドライバ、キーボード、モニタのようなハードウェアの低レベル制御を処理する。ある実施例において、永続性エージェントは、読み出し専用メモリROMのようなファームウェア、パーソナルコンピュータのようなクライアントデバイスAで実装される。BIOSがチップで実装される場合、それは、ROMでコード化された命令セットを含む。下記においてBIOSで参照される全ては、ROMベースのBIOSに制限されないことを理解されるだろう。今日販売されるマザーボード上のBIOSチップの良く知られたブランドは、フェニックステクノロジー、インテル登録商標、IBM登録商標、アメリカンメガトレンドを含む。あるシステムコンポーネントは、所有のBIOSチップを有し、そのチップの命令は、開始時にデバイスのメモリの中でも読み出される。ハードディスク制御に関するBIOSは、例えば、ドライブのトラック及びセクターのテーブルを記憶する。もし、アブソリュートソフトウェアコーポレーションの先の特許で開示されたBIOSベースのエージェントでないなら、本発明は、エージェントのためのBIOSベースのローダーの使用を含む改良を表す。BIOSベースのローダーは、エージェントコンポーネントをさらに永続的にし、かつ、それゆえに、資産追跡又は他のサービス機能を無効にすることはさらに難しい。BIOSベースのローダーは、マシン上のブート順番を反転する必要性を減らし、したがって、製造工程でのステップを取り除く。BIOSベースのローダーは、さらに、アンチウイルススキャナー、全ディスク暗号化、及びマスターブートレコードMBRでOSローダーを読み込み又は修正する他のユーティリティのような製品と共に製造的互換性という問題を減少する。本発明の一つの実施例においては、永続性エージェント10は、図2に表されるように、コアBIOSフラッシュイメージ13に取付けられるPCIオプションROM12-周辺機器部品インタフェースバスに基づくオプションROMのようなオプションROMに、最初に格納される。示されていないが取付けられる追加的オプションROMもあり、それは、永続性エージェントに関連の無い他の機能をサポートする。永続性エージェント10は、複数のモジュールを有する。3つの主なモジュールは、図3に表されるように、コンピュトレースローダーモジュールCLM14、適合インストールモジュールAIM16、及び、通信ドライバエージェントCDA18である。永続性エージェント10の3つのモジュールを含む小さな圧縮した約22KbであるPCIオプションROM12は、標準コアフラッシュイメージに結合され、BIOSPOSTの間にBIOS及び他のオプションROMにそって保護されるメモリの中にロードされる。小さなPCIオプションROMは、POSTにより認識され、BIOS及びBIOSPOST中の他のオプションROMとともに読み書きシャドウメモリにロードされる。この構成は、再条件付けされる必要があるコアBIOSでの開発工数及び多くのインタフェースポイントを最小化する一方、安全性を高める構成を可能にするモジュラーアーキテクチャを提供する。CLMは、PCIPCデバイスの場合、イメージ管理、実行環境機能を組み込む。AIMを検索し、解凍し、PCIオプションROMを最終サイズにサイズ変更し、システムの適切な環境でAIMを実行するBIOSにインタフェースする責任がある。AIMは、ハードドライブにアクセスし、アクティブなOSを検出し、ミニCDAを発見した設定に適合させる。ミニCDAは、通信ドライバーである。それは、HTTPプロトコル、監視サーバに通信するアプリケーションレイヤ、OSにインタフェースするサービスレイヤ、及び、AIMとインタフェースする適合レイヤのためのサポートを含む。ミニCDAは、OSがロードされているとき、サービスとして実行するコンピュータのファイルシステムでフルファンクション全機能CDAが利用可能かどうかをチェックする責任を有する。フルファンクションCDAが利用不可の場合、ミニCDAは、監視サーバからフルファンクションCDAのダウンロードを開始する。一旦、フルファンクションCDAが存在するなら、監視サーバ上の新バージョンを頻繁にチェックし、もし可能なら、新バージョンでCDA自身を置き換えるだろう。様々なモジュールのこれら及び他の実施例は、下記に十分に論じられる。BIOSPOSTシーケンス及びオプションROMロードプロセスオプションROMロードプロセスが、図4のフロー図で表される。永続性エージェント10が展開されるクライアントデバイスAのブートにおいて、BIOSPOSTプロセスは、セルフテスト及びチップセット構成21を実行し、マザーボード又は拡張カードに関する機能をサポートするオプションROMのためにバスが22でスキャンされるポイントに到達する。このポイントでは、永続性エージェント10を含むPCIオプションROM12は、22で小メモリ例えば、RAMにロードされ、及びその開始ベクター後述するように、CLM14は、23でコールされる。開始ルーチンは、サポートされるべき機能の状態、及び、その最終イメージサイズを決定する。その後に、25及び26において、BIOSPOSTプロセスは、オプションROMスキャンを完了し、機能が存在する各ROMオプションの最終位置を計算する。各PCIオプションROMは、それから、移転され、PCIオプションROM12を有効にした永続性エージェントを含む、その完成ベクターがコールされるあるフェニックスBIOSでは、例えば、PCIオプションROMは移転されないが、開始ベクターから戻る前にヘッダーで宣言される最終サイズに適合するように、単にサイズを縮める。全てのオプションROMは、移動されるが、BIOSメモリは、27で書き込みプロテクトされる。次に、28でOSがうまく開始されるまでブートデバイスがコールされる。このポイントで、デバイスOS及びエージェントの両方は、同時に実行しているだろう。PCIオプションROMA.ローダーモジュールCLMCLM14は、AIM16のための仮の実行環境を設定し、AIM16をロードし、解凍し、適切な環境でそれをコールするように設定する責任がある。CLM14の最後のアクティビティは、最小サイズ2Kに縮め、POSTへ実行を返すことである。CLMは、AIM16が見つからず、又は、有効ではないなら、失敗するだけである。CLM14は、POSTへのインタフェースであり、又は、PCIオプションROM12のフロントエンドである。PCIオプションROMヘッダは、CLM14の中にあり、かつ、そのエントリポイントは、このヘッダの中の標準にしたがって公表される。CLM14は、BIOSPOSTとの統合のための2つの機能ポイントを提供する。1.ROMヘッダ及びPCIオプションROMヘッダペア2.割り込みハンドラこれら及びPCIオプションROMの様々なコンポネントの他の機能は、IBM登録商標BIOS、例えばIBM登録商標モデルT43ノートブックコンピュータに関して、後述されるだろう。1.ROMエントリポイント最初のインタフェースは、BIOSによってPCIオプションROMの数え上げの間に与えられる。このインタフェースは、標準レガシーROMヘッダ、及び、PCIオプションROMヘッダペアである。例えば、フェニックスBIOSに関して、1917hのPCIベンダーID、及びデバイスID1234hは、セットになる。上述したように、BIOSPOSTプロセスが、マザーボード上の機能、又は、拡張カードをサポートするPCIオプションROMをスキャンするとき、PCIオプションROM12全体は、ロードされ、CLM14の初期化ベクタがコールされる。オプションROMは、圧縮された.COMアプリケーションをロードし、そして、実行する。ROMエントリポイントは、START_SEGレベルで定義される。START_SEGセグメントは、ROMヘッダ、及び、PCIオプションROMヘッダへのそのリンクを含む。オプションROMは、オプションROMの中でオフセット3へのFARCALLにより初期化される。ジャンプ命令チェーンは、ここでは、OptRomProcへの制御を通過する。図5を参照すると、PCIオプションROMCLM14により始められるルーチン30は、以下のように要約される。a.31で、BIOSPOSTメモリマネージャを検索。b.32で、制御STUB_BLOCKを割り当て例えば、処理及びアプリケーション実行のため2K。c.33で、圧縮アプリケーション及びアプリケーションメモリのバックアップのための拡張メモリを割り当て例えば、64K。d.34で、アプリケーションの解凍実行のための通常のメモリでアプリケーションメモリの割り当て例えば、64Ke.35で、ディスクサービスが利用可能なら40:75hでの総数で決定される。ハードディスクの数、36で、アプリケーションを即座に実行し、39でフリーメモリに進み、40でオプションROMをゼロに圧縮する。f.37で、ビデオベクタint10hが、XBDA40:0Eh以下なら、38で、STUB_BLOCKをInt15hにフックし、40で、オプションROMをゼロに圧縮する。g.フックするものが無く、何もすることが無いなら、39で、フリーメモリを失敗にし、40で、オプションROMをゼロに圧縮する。2.割り込みハンドラ二番目のインタフェースは、割り込みハンドラである。これは、初期化ロード、及び、BIOSPOSTメモリマネージャから割り当てられたメモリからPCIオプションROMの初期化手続の実行の後に、実行する。このインタフェースは、最初に、int15hを実行し、それから、代替トリガを実行する。Int19hは、好ましい代替トリガ、及び、その初期設定である。割り込みハンドラは、BIOSディスクサービスint13hが、まだ、PCIオプションROMの開始の間に利用可能でないなら、割り込みハンドラは、ただ起動される。Int19hは、好ましいトリガーメソッドである。なぜなら、あるケースでは、最後のInt15h/func9100hの後でBIOSにより発行されるInt13hが無いからである。物理ドライブ80hによる別な問題は、Int19hの少し前まで、Int19hで物理ドライブ80hに一致しないということである。ComFileStubは、主な割り込みフックエントリポイントを含む。図6a及び6bを参照すると、割り込みハンドラにより始められるプロセス41は、以下のように要約できる。a.42で、int15がトリガーする毎に、ファンクション9100hハードディスクIRQ完成は、INT13hが使用されていることを示す。b.43で、ハードディスクデバイスが利用可能かチェックカウント40:75h。c.XBDA以上のビデオベクタ40:0Ehは、POSTのセットアップフェースが完了したことを示す。d.44で、まだ準備できていないなら、チェーンする。e.45で、Int15hフックを元に戻し、トリガーIntxxhをフックする_TRIGGER_INTNUMsetting=Int13h/Int19h。f.46で、次のトリガーIntxxhInt13h/Int19hで、トリガーIntxxhInt13h/Int19hを元に戻す。g.48で、スタックを切り替える。h.49で、拡張メモリBACKUP_BLOCKに、解凍アプリケーションメモリのコピーをバックアップする。i.50で、解凍アプリケーションメモリブロックに、圧縮アプリケーションをコピーする。j.51で、アプリケーションをコールし、拡張メモリBACKUP_BLOCKから、解凍アプリケーションメモリのコンテンツを元に戻す。k.52で、スタックを戻すように切り替える。l.53で、阻止されたトリガーIntxxhコールを完成するようにチェーンする。B.エージェントインストールモジュールAIMAIM16は、CLM14により設定される拡張コンテキストの下でロードされるように設計される。図7を参照すると、AIM16によって開始されたルーチン54は、次のステップを含む。実行されると、AIM16は、55で、アクティブパーティションを見つけるパーティションテーブルをスキャンする。アクティブパーティションでは、56で、OSシステムディレクトリ、又は、OSシステムディレクトリを示す設定ファイルを探す。そして、OSシステムディレクトリは、57で、通信ドライバエージェントCDAのインストーラモードインスタンスを生成し、インストールする。インストール機構は、各OSで特定され、独特であり、AIM16は、標準OSインストール機構を使用する。C.通信ドライバエージェントCDACDA18は、2つの形式、ミニCDA、フルファンクションCDAで存在する。1つの実施例において、ミニCDAは、PCIオプションROM12に在住する。ミニCDAの機能は、フルファンクション及び/又は現状のバージョンCDAがインストールされ、かつ、デバイス上で機能しているかどうかを決定することであり、もし無いなら、ホスト監視サーバC図1からインターネットを介してフルファンクションCDAをロードすることである。フルファンクションCDAは、デバイスとホスト監視サーバCとの間の全ての通信に責任を有する。図8を参照すると、ミニCDAは、最初にAIM16を介してインストーラモード58を実行し、そこでは、ミニCDAの全機能は、OSサービスとして登録することである。59で、エージェントのインストーラモードインスタンスは、その別のインスタンスを生成し、60で、例えば、2000/XP下のサービスマネージャでコピーを登録する。実行ファイルは、それ自身のインストーラコピーを消去し、存在する。フルファンクションCDAは、そのポイントからCDAのノーマル操作を引き継ぐので、フルファンクションCDAは、たった一度、インストーラモードで実行する。図9を参照すると、OSの次のスタートアップで、ミニCDAのサービスモードインスタンスは、例えば、2000/XPの下のサービスとして実行される。そのサービスは、62で、サービスマネージャ環境をセットアップし、適切な時間で63で待機した後で64で、それ自身のインスタンスを開始する。アプリケーションモードは、ミニCDAの通常モードの操作である。エージェントは、現在サービスモードである。もし、現状のフルファンクションCDAがデバイスに見つからない場合、ミニCDAアプリケーションは、図10に示されるように初期設定で例えばHTTPプロトコルを用いてホスト監視サーバCとの通信を開始する。他のプロトコルは、付加的モジュールによってサポートされ、ホスト監視サーバCからエージェントへアップロードされる。ホスト監視サーバCは、エージェント、格納監視ヒストリ、設定、ソフトウェア更新のような機能を実行する。ホスト監視サーバCは、フルバージョンCDAをインストールし、起動し、ミニCDAを無効にし例えば、デバイスのライフの終了時、新バージョンに更新するために自己修復機能を無効化するために、エージェントを更新し、又は、プラットフォームに要求されるエージェントに設定するために、ミニCDAとのセッションを開始する。本発明の実施例の一つによれば、クライアント装置AとサーバCとの間の通信は、図10に表される。例えば、ミニCDAが、BIOSの識別又はタイプ、又は、デバイスプラットフォームをサーバCに提供すると、BIOSのコピー又はプラットフォーム特有の振るファンクションCDA又はその更新がデバイスにダウンロードされる。図1を参照して述べたように、デバイス追跡及び/又は紛失又は盗難デバイスAを回収するために一般にステルスエージェントを用いるという一般概念は、本発明の出願人であるアブソリュートソフトウェアコーポレーションの有する特許で開示されている。デバイス追跡のアプリケーションレベルの機能性、及び、フルファンクションCDAの通信機能は、本発明の出願人に特許権そしてその特許は、ここで同一のものとされるが与えられ、かつ、先に述べられ、及び/又は本発明の権利者によって発展されたアブソリュートトラック資産追跡プロダクトのステルスエージェントの機能に類似している。一般に、単独で実行し又は他の通信リンク例えば、PSTNに基づくアプリケーションであるインターネットアプリケーションの実施例においては、エージェントは、所定の、ランダムな、イベントベース、又は間隔を変えてホストにコールを開始する。本発明の一実施例によれば、アクティブモードにおいて、エージェントは、所定の時間ごとにホストをコールする。エージェントは独自の現状時刻、及び、インターネットホストネームを符号化するための独自のエージェント識別を使用する。ある実施例によれば、エージェントは、それから、符号化されたインターネットホストネームを用いてDNSリクエストを形成する。エージェントは、インターネットを介してホストへこのDNSリクエストを送信する。所定の時間間隔後で、DNSリクエストをインターネット時間で送信するというエージェントの試みが経過するなら、エージェントは、所定の時間間隔でスリープ状態になり、それから、コールを再開する。そのコールが、別なエラー例えば、インターネットへの通信を可能にするWinsock機能が無い、及び/又は、TCP/IP通信のコンピュータ設定の失敗のために失敗するなら、エージェントは数時間サイクルで繰り返す。このように、エージェントは、本質的に、インターネット接続の存在をチェックする。そのDNSリクエストを送信した後で、エージェントは応答を待つ。ホストから有効な応答を受けるとすぐに、IPアドレスがその応答から抽出され、参照したIPアドレスに対して比較される。例えば、参照IPアドレスが、204.174.10.1と設定されるとする。もし、抽出されたIPアドレスが204.174.10.1に等しいなら、エージェントのモードは、インターネット側でアクティブからアラートへ変更される。例えば、ホスト又はホストでのオペレータが、エージェント識別が、ホストで格納され、かつ、報告された紛失又は盗難コンピュータのリストのエンティティの1つとマッチするということを認識するなら、ホストがこのIPアドレスを送信する。もし、ホスト応答から抽出されたIPアドレスが、204.174.10.1と等しくないなら、エージェントはアクティブモードであり続け、さらに4時間後にはホストにコールしない。しかし、エージェントがインターネットアプリケーションでアラートモードにならないなら、エージェントは、ホストへクライアントコンピュータを接続するために使用されるインターネット通信リンクにホストを提供する探索経路ルーチンを開始する。これらのインターネット通信リンクは、クライアントコンピュータを追跡するホストシステムを支援するだろう。DNSクエリのソースのIPアドレスは、DNSクエリ内でホストに送られる。しかし、クエリのソースがプロキシサーバを介して転送されるなら、そのとき、クライアントコンピュータのIPアドレスそしてそれは、内部NICによって割り当てられてないので、独自でないかもしれないは、クライアントコンピュータの位置を追跡するのに効率的でないかもしれない。そのようなシナリオにおいて、クライアントとホストとの間の通信を可能にするためにアクセスされる他のIPルートのアドレスを決定する必要がある。アクセスされるべきこれらのアドレス及び時間は、そのクライアントのインターネットアクセスストーリーを記録するプロキシサーバの内部ログと比較される。このようにして、クライアントは、独自に識別され、検索される。あるいは、インターネットアプリケーションを、アラートモードへの移行は、他の利用可能な通信アプリケーションをアラートモードへの移動をトリガーする状況である。CDA-サーバ通信A.拡張プロトコルBIOSの中に永続性エージョンをうまく展開することは、例えば、通信プロトコルの中に予定されている拡張性を頻繁に使用することである。この拡張性無しで、エージェントは、機能性を加え又は変更するためにより大きく、かつ、柔軟な更新を要求するかもしれない。そのような更新は、BIOSがそのプラットフォームのフラッシュEEPROMの中にプログラムされており、かつ、特別なツールが頻繁にユーザーインタラクションを要求してBIOSを更新するのに使用されなければならないなら、実践的でもないし、経済的でもない。さらに、その完全性が、コンピュータの操作で極めて重要なので、徹底的なテストがBIOSに関するOEMにおって実行される。拡張プロトコルのキー要素は、1エージェントのメモリ空間を読み書きする方法2メモリ再配置する方法3メモリをフリーにする方法4外部モジュールをロードする方法5プロシージャアドレスを決定する方法6プロシージャをコールする方法エージェントのプロトコルは、これらの機構を提供するように設計されている。リードパケットのフォーマットは、|ADDRESS|NUMBER_OF_BYTESライトパケットのフォーマットは、|ADDRESS|NUMBER_OF_BYTES|DATA...通信プロトコルは、DATAがパケット内に含まれていないということを判断することでリードパケットを区別する。DATAがあれば、そのパケットは、ライトパケットである。このプロトコルに基づくアドレスは、拡張設計に基づいている。本発明の一実施例により、拡張プロトコルに基づいて、通信リンクBを介してクライアントデバイスAとサーバCとの間の通信セッションにおけるステップの一般的な順序は、図14に概略的に表されている。通信セッションにより、処理される特定のトランザクションは、さらに以下に開示される。典型的なセッションは、次のような通信シーケンスで始まる。1クライアントが接続する。2サーバが、アドレス0xffffffff0xffffffff4から特別な読み込みで応答する。3クライアントが、そのセッション処理のアドレスで応答する。処理構造は、クライアントのバージョン、サポートOSのバージョン、及びコマンドパケットのような重要な情報を含む。クライアントは、コマンドパケットが書き込まれたとき、書き込みを、特別なパケット特別Specialとして翻訳し、CommandPacketProcessorファンクションをコールする。CommandPacketProcessorファンクションは、引数として、ファンクションコード、パラメータアドレス、パラメータ数、結果アドレスをとる。実行されなければならない関数の最低数のセットは、以下のものである。CMDFUNCCALLC関数をコールCMDFUNCSTDCALLSTDCALLファンクションをコールCMDGETMHモジュールハンドルをゲットCMDGETPAプロシージャアドレスをゲットCMDALLOCメモリを割り当てCMDFREEメモリをフリーにする実行される他の関数コードは、効率を良くするためにコマンドパケットをいっしょにチェーンことである。CMDENDCチェーン終了CMDIF通常のブランチCMDGOTO通常ではないブランチこのコマンドの少ないライブラリは、いかなる管理タスクをも成し遂げるために、パケットの中でいっしょにつながれる。重要な管理タスクは以下のものである。1CreateFileファイル作成。2ファンクションのライブラリ、又は、拡張用としてロード。3OSで、又は、作成したファイルからプロシージャをコール。4エージェントのコンテキストでメモリを割り当て、及び、空にする。B.トランザクション次のセクションは、エージェントとリモート例えば、監視サーバCTSRVとしても知られているとの間の通信を記述する。記述された各アイテムは、1つのクライアントとサーバとの間のメッセージ組であるトランザクションを表す。幾つかのトランザクションは、全てのエージェントコールで生じ、他のトランザクションは、実施されるサービスに依存し、メンテナンス又は手動修正により設定されるフラグの結果として1つのコールでなされる。下記は、サーバとエージェントとの間の典型的な通信セッションを示す表である。基本的資産追跡を有するコールクライアントが監視サービスプロバイダを有する追跡サービスに同意した場合―全てのコール資産追跡/監視サービスへの加入者のためのAT1データが、検索される。これは、AT2DLLにより集められたデータのサブセットである。AT1、又は、AT2DLLのどちらかが、クライアント上で実行され、決して両方が実行されることは無い。高度な資産追跡を有するコールクライアントがアブソリュートトラック又はコンピュトレース製品を購入した場合―全てのコール例えば、アブソリュートトラック及びコンピュトレースの顧客のためにATIIデータは、検索される。これは、AT1DLLによって集められたデータの特別なセットである。AT1、又は、AT2DLLのどちらかが、クライアント上で実行され、決して両方が実行されることは無い。基本コール及びリモートエージェントバージョンの更新技術サポートアクションに基づく一度限りのタスククライアントエージェントのバージョンをチェックし、サーバ上のバージョンと比較する。クライアントバージョンが低い場合、リモート更新を実行する。基本コール及び製造元、モデル及びシリアルナンバの検索技術サポートアクションに基づく一度限りのタスクファンクションが、クライアントから製造元、モデル及びシリアルナンバを検索し、ブート順番を変更する。C.アプリケーションモジュールの起動プロセス起動プロセスは、アプリケーションエージェント識別を、顧客アカウントに結びつけ、永続性エージェントモードをインストールする。このプロセスは以下のように記載される。アプリケーションエージェントが接続する。サーバが、コンピュータを識別する在庫DLLを送信するプロトコルにおける拡張特性を使用する。このDLLは、BIOS、筐体、ハードドライブシリアル番号のような属性を集める。在庫記録は、サーバ上に格納され、アプリケーションエージェントから読み出される顧客アカウントに接続される。独自の識別番号電子シリアル番号は、この在庫記録に関係するデバイスに割り当てられる。典型的な在庫番号は、下記のように表される。D.永続性モジュールの再起動プロセス一度、永続性エージェントモジュールが起動されると、次のステップが、アプリケーションエージェントを再インストール始め、及び、設定を元に戻す。永続性モジュールエージェントは、監視サーバをコールするCTSRV。監視サーバは、そのコンピュータを識別する在庫DLLを送信するプロトコルの中で拡張特性を使用する。このDLLは、BIOS、筐体、ハードドライブシリアル番号のような属性を集め、そして、先に格納されたものと比較する。最初の起動で格納された在庫記録は、見つかり、そして、このデバイスの在庫に関係した以前のESNは、再度割り当てられる。アプリケーションエージェントは、ダウンロードされ、インストールされ、そのアプリケーションエージェントは、正常にコールする。上述のプロセスは、BIOS及びソフトウェア永続性前述を参照の両方に適用される。即ち、永続性モジュールがどこにあるかに関係なく、検索される。データ削除データ削除は、エージェントによって有効化され、サポートされ、及び/又は提供されるもう1つの例である。上述のように、CDAの強化された生存性は、資産の物理的な位置を追跡することを向上させる。例え、資産の位置が定められるときでさえ、追跡されたデバイスの物理的な回収は、アプリケーションのローカルの法律、警察の執行力、所有者の証明の負担のために、必ずしも実行可能ではないということを認識すべきである。そのような状況で、CDAの拡張プロトコルに基づいてプログラム可能な能力は、デバイス上の秘密で機密のユーザデータを安全に守る手段に、よく変更する。例えば、クライアントデバイスのハードドライブに格納されるデータファイルに規定されたユーザ、ユーザプロファイル、又は、情報が規定された他のユーザは、監視サーバからの制御により削除可能である。データ削除は、選択されたデータアイテムに関して実行され、又は、OSを含む完全な記憶媒体装置が消去される。フルファクションCDAは、監視サーバに接触するとき、デバイスの識別が検証される。そのデバイスがデータ削除アクションのためにマークされるなら、上述した拡張通信プロトコルが、CDAのデータ削除サブファンクションをトリガーするために使用される。データ削除サブファンクションは、完璧なデータ構造を削除するワイルドカード変数と共に、削除されるべきデータを規定するパラメータでコールされる。CDAサブファンクションは、復元させないように米国国防総省が推薦するデータ削除のためのアルゴリズムを使用しても良い例えば、米国国防総省標準5220.22-M掃除及び浄化マトリックス。CDAサブファンクションは、データを削除する組み込みのOSサポートで利用可能である。これらのデータ削除アルゴリズム及び機構は、当業者には良く知られており、かつ、実際の削除機構は、ここで記述されたシステム能力を変更しない。データ削除アプリケーションは、ハードドライブ上でアプリケーション及びデータを削除し、例えば、それから、監視サーバにコールバックし、そこで、監視サーバは、データ削除アプリケーションの成功を詳細に述べるレポートをアップロードするだろう。データ削除アプリケーションが、OSの削除を除外するように指示したなら、データ削除アプリケーションは、機能するエージェント及びOSに要求されるものを除いて、全てのデータ及びアプリケーションファイルを削除するだろう。削除プロセスの最後で、エージェントは、監視サーバにステータスレポートを戻すようにする。コンピュータは、削除プロセスの後で、通常の状態に戻っても良い。データ削除がOSを削除するように指示した場合、最終的にクライアントデバイスAを機能しないようにするOSファイルを削除しようとする。最初のパスでは、削除プロセスは、機能するエージェント及びOSに必要とされるものを除いて、全てのデータ及びアプリケーションファイルを削除する。データ削除プロセスの終わりで、エージェントは、監視サーバにステータスレポートを返そうとする。データ削除アプリケーションは、それから、PC上のファイルの残り物を削除し続ける。これは、PCを使用不可にするものである。一旦、全データ削除プロセスが完了したら、エージェントは、監視サーバをコールすることは出来ないだろう。エージェントが、OSを再インストールしたなら、エージェントはそれを独自の機能で回復する。いずれの構成でも、データ削除サーバは、次の構成を有する。ファイルに0及び1のパターンを3回書き込むファイルにランダムデータを書き込むファイル属性をディレクトリに変更するファイルデータ/時間を固定値に変更するファイルサイズを0に設定するファイル名称を不規則に生成されたファイル名称に変更するディレクトリから新しいファイル名称を取り除く可能なだけ内密に作動するという目的を維持するとき、データ削除アプリケーションは、隠蔽される。データ削除プロセス中に起動するサービスは、バックグラウンドで起動するOSヘルプタスクとして削除プロセスを隠すために、HLPMGR.EXEとタイトル付けされる。削除が終了する前に、ユーザがプロセスを終了するなら、エージェントが監視サーバに次のコールをした時点で、アプリケーションは、捨てられた削除プロセスを再開することが可能である。データ削除で有効になる全てのクライアントデバイスのために、エージェントコールバック間隔は、モデム及びIPコールの両方のために所与の値にセットされる。完成するデータ削除プロセスに要求される時間は、プロセッサの速度、ハードドライブのサイズ、削除すべきデータの量、クライアントデバイスですでに生じているアクティビティの数を含む変数の数に依存する。データ削除プロセスは、完成するために数分から1.5時間以上の間に生じることが期待される。上手く削除された事に関しても出された報告は、次の情報を含む。データ削除アプリケーションがダウンロードされ、かつ、実行された確認削除されたリストファイルハードドライブ空間の変更データはPCから収集されるので、この情報が、資産追跡サービスが有効であるときのみこの情報は利用可能である。この情報は、データ削除プロセスの成功に関するユーザに提供される。拡張プロトコルの追加アプリケーション上述及び後述するように、フルファンクションCDA及びミニCDA例えば、BIOS及びソフトウェア永続性実施例は、監視サーバ上で利用可能になるデータバージョンまで最新で現状を維持するために拡張プロトコルを使用する。それは、この能力を、他の資産追跡拡張を現状のバージョンに更新するために使用する。拡張プロトコルに含まれる一般的なサブファンクションは、上述した資産追跡データ削除に加えて、複数の機能を達成するために、包括的であり、かつ、柔軟性がある。拡張プロトコルの別なアプリケーションの例は、監視サーバからアプリケーションをダウンロードし、開始することである。実行ファイルは、メモリにダウンロード可能であり、それから、実行可能である。あるいは、インストーラが監視サーバからダウンロードされ、アプリケーションをインストールし、又は、既存のアプリケーションを更新するために起動される。モジュールの代替実施例この発明は、限定されないが、次の要素に基づく特定の環境に適合するために永続性エージェントの様々な実施例で実施される。a異なるデバイス例えば、PCの製造会社から異なるBIOS実装bBIOSを有する異なるインタフェース要求c異なるデバイス製造会社から、又は、異なるデバイスモデル上で利用可能となる様々なフラッシュメモリ空間dBIOSPCIオプションROM列挙フック無しで動作可能これらの要素に適合するために、CLMは、PCIオプションROMとしてフォーマットされ、AIM及びCDAは、分割して、又はCLMと連結して格納される。CLMは、POSTサイクルの終わりに小さな断片に縮められる。デバイスがPCIオプションROMに列挙されないBIOSを有するなら、CLMは、パーティションギャップに存在し、代わりのマスターブートレコードMBRを使用する。永続性エージェントモジュールの別な実施例が、より詳細に後述される。A.フラッシュ常駐本発明のフラッシュ常駐実施例において、CLM、AIM、及びミニCDAは、BIOSフラッシュイメージの中に全てロードされる。このアプローチは、PCIオプションROMがBIOSフラッシュイメージからロードされるBIOSで使用されるこの平均的な既存プロセスを利用する。付加的モジュールAIM及びミニCDAは、図3のケースにあるように、PCIオプションROMの中のCLMに結びつくか、フラッシュの中で分割して格納される。AIM及びミニCDAがCLMに結び付けられるなら、18~20KBのPCIオプションROMは、上限値のシャドウメモリの中にPOSTでロードされ、AIMは、CLMによって解凍される。次にAIMは、システムのためにミニCDAを適合し、及び、設定し、及び、CLMに制御を返す。CLMは、PCIオプションROMのサイズを最小値に縮め、2KBROMブロックとしてメモリ領域を上限値にする。AIM~6KB及びCDA~10KBは、単にフラッシュイメージに格納され、CLMと結び付けられず、CLMは、AIM及びミニCDAを検索し、かつ、解凍するための追加イメージアクセス機能を組み込む。CLM、AIM及びミニCDAの操作は、上述の組み合わされたメソッドに類似する。CLMのサイズは、わずかに大きく、フラッシュイメージがターゲットとするプラットフォームに特に特化される。このアプローチは、フラッシュ常住のPCIオプションROMの認識を許可するベンダーIDの事前設定を仮定する。フラッシュイメージの管理は、図11に表される。B.ハードドライブパーティションギャップBIOS特定空間制限に依存して、完全な永続性エージェントの全ての方法のためにBIOSフラッシュメモリの中に十分な空間が無いかもしれない。この場合、デバイスベンダーサポートに依存して、AIM、又は、AIM及びミニCDAは、ハードドライブパーティションギャップのような大容量デバイスの中でユーザアクセス不能エリアに在住する。これは、ソフトウェア永続性の形式の例である。この実施例では、CLMは、まだ、フラッシュの中に在住し、先の実施例のように、PCIオプションROM列挙プロセスの中に呼び出され、しかし、CLMは、AIMをロードし、そしてつぎに、別な場所からCDAを実行する。図13は、その状況で含まれたパーティションギャップイメージ管理を表す。そこでは、永続性エージェントの追加モジュールは、パーティションギャップ内に存在する。このギャップは、MBR及び第1のパーティションの間に存在する。ギャップは、62セクターあり、大半は新しいハードドライブであるが、セクターの幾つかは、他のソフトウェアとの互換性を維持するインストールユーティリティにより予約されており、その使用可能サイズは、27KBである。このサイズは、サーバとの通信に必要なエージェントAIM、CDAの基本モジュール、及び、OSの中の残りのモジュールのブートストラップを含む。ホスト保護領域HPA図12を参照すると、代替的に、先の実施例のようなハードドライブパーティションでの永続性エージェント即ち、AIM及び/又はミニCDAの付加的モジュールを格納する代わりに、全てのモジュールのためのBIOSフラッシュメモリの中に十分なスペースがない状況において、永続性エージェントの付加的モジュールは、HPA、又は、同等の機能を有するような大容量記憶装置の別なユーザアクセス不能領域に在住する。これは、ソフトウェア永続性の別な例である。付加的サポートは、鍵がかけられた、又は、鍵がかけられてないHPAに要求される。このHPAアクセス機構は、PCOEM特有になるだろう。HPA内のイメージは、ランタイムで管理される必要がある。ドライバ及びアプリケーションは、BIOSインタフェースを承認する既存の方法をサポートし、かつ、HPA空間の部分を管理する必要なランタイムアクセスを獲得するだろう。この実施例では、CLMは、フラッシュ内に在住し、先の実施例のように、PCIオプションROM列挙プロセス間にコールされるが、CLMはAIMをロードし、それは、次に、別な場所からCDAを起動する。D.非フラッシュCLM多くのセキュアな実施例が、BIOSフラッシュメモリ内に在住するCLMを含む一方、これがサポートされない環境もある。これは、PCIオプションROMスキャンの間に、フラッシュ内のCLMヘッダを列挙するようにBIOSを設定していない場合である。これらのシステムでは、CLMのための代替的な位置が、既存の製品に関連するより優れた解決を提供する。代わりのマスターブートレコードの使用が、この解決のために利用される。この実施例では、CLMは、代わりのマスターブートレコードからロードする。CLMは、それから、ロードし、AIM、及び、ミニCDRに制御を渡し、そして、AIM及びミニCDRは、先の実施例で述べたように、パーティションギャップに配置される。エージェントサブローダのための代わりのMBRアプローチは、出願人によって特許されており、参照においてここに同一のものとされる。本発明において、CLMは、先行特許で見つからないAIM及びCDAに関して追加的及び異なるファンクションであるが、ここで、CLMは、類似のサブロードアプローチの長所がある。最適化CLMPCIオプションROMは、システムBIOSの中に統合するのは難しい。例えば、IBM登録商標モデルT43ノートブックコンピュータは、オプションROM構造を有するIBM登録商標BIOSと共にインストールされる。その形式及び機能は、ビデオオプションROM、又は、BIOS内に既に存在しているマザーボードコントロールオプションROMと同等である。単純なケースでは、BIOSは、CLMのベンダーIDを認識するように、単に設定されていなければならない。CLMの形式及び機能は、ホストBIOSによりしっかりと統合され、幾つかのサイズ最適化を起こすことができる。フラッシュイメージ内にCLM、AIM及びCDAモジュールを格納するために要求される~20KB内に小さな空間をセーブする機会がある。下記は、3つのメインモジュール及び各主要な機能ギャップの凡そのサイズ内の様々な機能を表す表である。最適化列は、各モジュール内の機能グループの最適化機会の評価をリストにしてある。モジュール内の様々な機能について、CLM機能PCI、イメージ管理、実行環境だけが、ホストBIOSから特有のサポートで最適化される。イメージ管理機能のサイズは、BIOSの圧縮アルゴリズムを用いて、及び、AIM及びCDAモジュールを格納する結合メソッドを用いて、約3KBに減らせる。実行環境セット及び制御機能のサイズは、全てのディスク資源が利用可能であり、かる、POSTメモリマネージャサポートが必要とされないために、POST後半ロードされるPCIオプションROMを確実にすることによって、0.8KBまで減らすことが可能である。~20KBサイズのより低い範囲は、およそ~18.9KBである。上限サイドでは、プラットフォーム特有のサポートは、CLM内で要求され、2KBを単位として増加する。BIOSインタフェースが、SMBIOSを介してCLMを検出し、かつ、設定するためにアプリケーションプロトコルインタフェースAPIをあらわにする場合、2KBの可視的なROM切れ残りの要求は、緩やかとなる。エージェントは、それを取り除こうとすることが通常期待されているアクションにも関わらず、永続性を有する機能がある。エージェントのプログラマブル機能は、サーバドリブンコマンドに基づいてその機能を拡張することを可能にする。本発明は、そのデバイスのユーザのアクションにもかかわらず、展開したソフトウェアエージェントのための能力をアクティブに改良する。エージェントに関するユーザのアクションは、意図的又は偶然かもしれない。本発明は、エージェントを無効化する合法的な要求を許可する例えば、コンピュータ資源のライフの終わりに一方で、ソフトウェアエージェントの偶然の削除から認証ユーザを守る。本発明は、非認証ユーザが、エージェントソフトウェアを削除することを防ぐ。本発明の永続性属性は、セキュリティ及び資産管理アプリケーションの両方に価値がある。セキュア、内密なデバイス追跡ソフトウェアアプリケーションという状況において、本発明は、窃盗によってなされるアクションにもかかわらず、ソフトウェアは、存続し、遠隔監視センタへの接触を利用可能にし、価値のある資産の窃盗が偽装することをさらに困難にするので、極めて重要である。加えて、ソフトウェアエージェントの永続性の本質は、追跡エージェントが故意に取り除かれないという信用を提供するので、個人情報のセキュリティに対して安心感を提供する。セキュア資産管理アプリケーションと言う状況で、これは、そのライフサイクル全体を通して資産を追跡する継続性を確実にするので、さらなる価値を有する。IT管理者のための挑戦の鍵は、ライフサイクル全体を越えて資産を追跡する能力である。ライフサイクルの間に、デバイスは、しばしば、あるユーザからの別なユーザへ移転され、その間に、デバイスは、再イメージされ、再インストールの操作又は資産追跡を困難にする保守手続を課せられる。本発明のプロセス及びシステムは、ブロックダイアグラムフォーマットで機能モジュールに関して上述した。ここで正反対に別段述べられていないなら、1つ以上のファンクションが、離れた物理的デバイス、又は、1つの位置でのソフトウェアモジュール、又は、ネットワーク上を分散して、本発明の範囲と精神に放れることなく、実施される。各モジュールの実際の実施の詳細な議論は、本発明の理解を可能にするためには必要では無いということが評価される。実際の実装は、プログラマー及びシステムエンジニアの日常のスキル内で良く、システムの属性、機能性、システム内の様々な機能モジュールの内部関係というここで開示されたもので与えられる。通常のスキルを有する当業者は、過度の経験無しで本発明を実施することが可能である。本発明は、発明とともにここで記述された実施例に関して述べられた一方、当業者は、本発明の範囲及び精神から離れることなく様々な修正及び改良を行うことは明らかである。例えば、情報抽出アプリケーションは、ウェブブラウジングのためのユーザの追加的柔軟性を提供するために、異種又は追加のプロセスを適合するように容易に修正される。したがって、本発明は、添付した請求の範囲のみに制限されず、かつ、説明した特有の実施例に制限されないことが理解されるべきである。"