一つ以上の資源を備える処理システムの現在の動作モードでアクティブになることが予測される少なくとも一つのプロセスを特定する段階と、前記現在の動作モードとアクティブになることが予測される前記少なくとも一つのプロセスとに基づいて、前記処理システムの前記一つ以上の資源の予測アクティビティレベルを算出する段階と、前記一つ以上の資源の実際のアクティビティレベルを判定する段階と、前記予測アクティビティレベルと前記実際のアクティビティレベルとの間に偏差が検出された場合に、予測されないアクティビティのソースを前記偏差の潜在的原因として特定する段階と、ポリシーガイドラインを使用して、前記予測されないアクティビティが合法であるかを判定する段階と、前記予測されないアクティビティが合法でない場合、前記予測されないアクティビティの前記ソースをマルウェアとして分類する段階とを備えるコンピュータ実装される方法。前記処理システムのスナップショットを遠隔のサーバに送信する段階をさらに備え、前記遠隔のサーバは、前記スナップショットの検証を行う請求項1に記載の方法。前記処理システムのスナップショットを遠隔のサーバに送信する段階をさらに備え、前記遠隔のサーバは、前記スナップショットをウィルスシグネチャに関して分析する請求項1または2に記載の方法。前記予測されないアクティビティの前記ソースを終了させる段階をさらに備える請求項1から3のいずれか1項に記載の方法。前記処理システムの前記現在の動作モードから新しい動作モードへの変化を識別する段階と、少なくとも一つのプロセスがアクティブになると予測される瞬間を特定する段階と、前記新しい動作モードと、少なくとも一つのプロセスがアクティブになると予測される前記瞬間とに基づいて、前記予測アクティビティレベルを調整する段階とをさらに備える請求項1から4のいずれか1項に記載の方法。前記ポリシーガイドラインを使用して、前記予測されないアクティビティが合法であるかを判定する段階は、前記ソースが署名されているかを判定する段階を有する請求項1から5のいずれか1項に記載の方法。前記ポリシーガイドラインを使用して、前記予測されないアクティビティが合法であるかを判定する段階は、前記予測されないアクティビティをユーザに警告する段階と、前記予測されないアクティビティについて前記ユーザからフィードバックを取得する段階とを有する請求項1から6のいずれか1項に記載の方法。少なくとも一つのプロセッサと、前記少なくとも一つのプロセッサに結合されたメモリとを備え、前記メモリは、実行されると前記プロセッサに、一つ以上の資源を備える処理システムの現在の動作モードでアクティブになると予測される少なくとも一つのプロセスを特定する手順と、前記現在の動作モードと、アクティブになると予測される前記少なくとも一つのプロセスとに基づいて、前記処理システムの前記一つ以上の資源の予測アクティビティレベルを算出する手順と、前記一つ以上の資源の実際のアクティビティレベルを判定する手順と、前記予測アクティビティレベルと前記実際のアクティビティレベルとの間に偏差が検出された場合に、予測されないアクティビティのソースを前記偏差の潜在的原因として特定する手順と、ポリシーガイドラインを使用して、前記予測されないアクティビティが合法であるかを判定する手順と、前記予測されないアクティビティが合法でない場合、前記予測されないアクティビティの前記ソースをマルウェアとして分類する手順とを実行させる命令を有するシステム。前記命令は、実行されると、前記プロセッサに、前記処理システムのスナップショットを遠隔のサーバに送信する手順をさらに実行させ、前記遠隔のサーバは、前記スナップショットの検証を行う請求項8に記載のシステム。前記命令は、実行されると、前記プロセッサに、前記処理システムのスナップショットを遠隔のサーバに送信する手順をさらに実行させ、前記遠隔のサーバは、前記スナップショットをウィルスシグネチャに関して分析する請求項8または9に記載のシステム。前記命令は、実行されると、前記プロセッサに、前記予測されないアクティビティの前記ソースを終了させる手順をさらに実行させる請求項8から10のいずれか1項に記載のシステム。前記命令は、実行されると、前記プロセッサに、前記処理システムの前記現在の動作モードから新しい動作モードへの変化を識別する手順と、少なくとも一つのプロセスがアクティブになると予測される瞬間を特定する手順と、前記新しい動作モードと、少なくとも一つのプロセスがアクティブになると予測される前記瞬間とに基づいて、前記予測アクティビティレベルを調整する手順とをさらに実行させる請求項8から11のいずれか1項に記載のシステム。前記ポリシーガイドラインを使用して前記予測されないアクティビティが合法であるかを判定する手順は、前記ソースが署名されているかを判定する手順を有する請求項8から12のいずれか1項に記載のシステム。前記ポリシーガイドラインを使用して前記予測されないアクティビティが合法であるかを判定する手順は、前記予測されないアクティビティをユーザに警告する手順と、前記予測されないアクティビティについて前記ユーザからフィードバックを取得する手順とを有する請求項8から13のいずれか1項に記載のシステム。処理システムで実行されると、前記処理システムに、一つ以上の資源を備える処理システムの現在の動作モードでアクティブになると予測される少なくとも一つのプロセスを特定する手順と、前記現在の動作モードとアクティブになると予測される前記少なくとも一つのプロセスとに基づいて、前記処理システムの前記一つ以上の資源の予測アクティビティレベルを算出する手順と、前記一つ以上の資源の実際のアクティビティレベルを判定する手順と、前記予測アクティビティレベルと前記実際のアクティビティレベルとの間に偏差が検出された場合、予測されないアクティビティのソースを前記偏差の潜在的原因として特定する手順と、ポリシーガイドラインを使用して、前記予測されないアクティビティが合法であるかを判定する手順と、前記予測されないアクティビティが合法でない場合、前記予測されないアクティビティの前記ソースをマルウェアとして分類する手順とを実行させる命令を備えるコンピュータプログラム。前記命令は、実行されると、前記処理システムに、前記処理システムのスナップショットを遠隔のサーバに送信する手順をさらに実行させ、前記遠隔のサーバは、前記スナップショットの検証を行う請求項15に記載のコンピュータプログラム。前記命令は、実行されると、前記処理システムに、前記処理システムのスナップショットを遠隔のサーバに送信する手順をさらに実行させ、前記遠隔のサーバは、前記スナップショットをウィルスシグネチャに関して分析する請求項15または16に記載のコンピュータプログラム。前記命令は、実行されると、前記処理システムに、前記予測されないアクティビティの前記ソースを終了させる手順をさらに実行させる請求項15から17のいずれか1項に記載のコンピュータプログラム。前記命令は、実行されると、前記処理システムに、前記処理システムの前記現在の動作モードから新しい動作モードへの変更を識別する手順と、少なくとも一つのプロセスがアクティブになると予測される瞬間を特定する手順と、前記新しい動作モードと、少なくとも一つのプロセスがアクティブになると予測される前記瞬間とに基づいて、前記予測アクティビティレベルを調整する手順とをさらに実行させる請求項15から18のいずれか1項に記載のコンピュータプログラム。前記ポリシーガイドラインを使用して前記予測されないアクティビティが合法であるかを判定する手順は、前記ソースが署名されているかを判定する手順を有する請求項15から19のいずれか1項に記載のコンピュータプログラム。前記ポリシーガイドラインを使用して前記予測されないアクティビティが合法であるかを判定する手順は、前記予測されないアクティビティをユーザに警告する手順と、前記予測されないアクティビティについて前記ユーザからフィードバックを取得する手順とを有する請求項15から20のいずれか1項に記載のコンピュータプログラム。本発明の実施形態は、シグネチャとは無関係に、システム挙動に基づいて、マルウェア検出を実行する方法、システム、およびコンピュータプログラムプロダクトを提供する。一実施形態では、この方法は、一つ以上の資源を有する処理システムの現在の動作モードでアクティブになることが予測される少なくとも一つのプロセスを特定する段階と、現在の動作モードとアクティブになることが予測される少なくとも一つのプロセスとに基づいて、処理システムの一つ以上の資源の予測されるアクティビティレベルを算出する段階と、複数の資源の実際のアクティビティレベルを判定する段階と、予測アクティビティレベルと実際のアクティビティレベルとの間に偏差がある場合、予測されないアクティビティのソースを偏差の潜在的原因として特定する段階と、ポリシーガイドラインを使用して、予測されないアクティビティが合法であるかを判定する段階と、予測されないアクティビティが合法でない場合、予測されないアクティビティのソースをマルウェアに分類する段階とを備える。この方法は、処理システムのスナップショットを遠隔のサーバに送信する段階をさらに備えてよく、遠隔のサーバは、ウィルスシグネチャを調べるべく、スナップショットを検証し、および/または、スナップショットを分析する。この方法は、予測されないアクティビティのソースを終了させる段階をさらに備えてよい。一実施形態では、この方法は、処理システムの現在の動作モードから新しい動作モードへの変更を識別する段階と、少なくとも一つのプロセスがアクティブになると予測される瞬間秒を特定する段階と、新しい動作モードと少なくとも一つのプロセスがアクティブになると予測される瞬間秒とに基づいて、予測アクティビティレベル調整する段階とを備える。一実施形態では、ポリシーガイドラインを使用して、予測されないアクティビティが合法であるかを判定する段階は、ソースに署名が施されているかを判定する段階を有する。ポリシーガイドラインを使用して、予測されないアクティビティが合法であるかを判定する段階は、予測されないアクティビティのユーザに警告を発して、予測されないアクティビティについてのユーザからのフィードバックを得る段階をさらに有してよい。本明細書において、本発明の一実施形態またはある実施形態と言及する場合、当該実施形態に関連して記載される特定の特性、構造、または特徴が、本発明の少なくとも一つの実施形態に含まれるということが意図される。したがって、本明細書の全体を通して各所に記載される一実施形態では、一実施形態によると等の表現は、必ずしも全てが同一の実施形態を示すのではない。説明の便宜を図るべく、特定の構成および詳細を述べることで、本発明の完全な理解を促す。しかし、本明細書に提示される特定の詳細がなくても、本発明の実施形態は実施可能であることが当業者には明らかとなるであろう。さらに、本発明が曖昧とならないように、周知の特性を省略または簡略化する場合がある。この記載を通して、多様な例を提示する。これらは、本発明の特定の実施形態を単に記載するものである。本発明の範囲は、提示される例に限定されない。従来のデスクトップシステムでは、コンピュータが実行ファイルをダウンロードまたは実行開始した後、多くのユーザは、周知のウィルスを検出して除去することができるウィルス対策ソフトウェアをインストールする。ウィルス対策ソフトウェアアプリケーションがウィルスを検出するのに使用する一般的な方法が二つある。一番目の最も一般的なウィルス検出方法は、ウィルスシグネチャ定義のリストの使用である。この方法では、コンピュータのメモリRAMおよびブートセクター並びに固定または取り外し可能ドライブハードドライブおよびフロッピー登録商標ドライブに格納されたファイルの内容を調べて、これらのファイルを周知のウィルスシグネチャのデータベースと比較する。この検出方法の欠点の一つは、ユーザは、最後にウィルス定義を更新した時点より以前から存在するウィルスからしか保護されないことである。別の欠点は、何百万ものエントリを保存することとなりうるウィルスシグネチャデータベースを格納するのにかなりの資源が必要となり、移動体デバイス上で確保できる記憶容量を超えてしまうことである。ウィルス検出の二番目の方法は、ウィルスソフトウェアが示す共通の挙動に基づいてウィルスを発見する発見的アルゴリズムheuristicaltorithmの使用である。この方法では、シグネチャがまだ定義されていない新種のウィルスを検出することができるが、ウィルスソフトウェアが示す共通の挙動を前もって特定する必要がある。この方法にも、共通の挙動を特定および追跡するべく膨大なコンピューティング資源が必要であり、このような膨大なコンピューティング資源は移動体デバイス上では確保できないという欠点がある。図1は、本発明の一実施形態に係る、シグネチャとは無関係に、システム挙動に基づいてマルウェアを検出するシステムのブロック図である。移動体コンピュータシステムおよび/または携帯電話に対応するプラットフォーム100は、チップセット120に接続されたプロセッサ110を備える。プロセッサ110は、プラットフォーム100の処理機能であり、シングルコアまたはマルチコアのプロセッサであってよく、2つ以上のプロセッサをプラットフォーム100に設けてよい。プロセッサ110は、一つ以上のシステムバス、通信経路、または通信媒体不図示を介してプラットフォーム100のその他のコンポーネントに接続されてよい。プロセッサ110は、相互接続151を介してネットワーク150でエンタプライズサーバ170と通信するホストアプリケーション112等のホストアプリケーションを実行する。ホストアプリケーション112は、ホストオペレーティングシステム105の制御下で動作する。チップセット120は、プロセッサ110から独立して動作し、プラットフォーム100のセキュリティを管理する組み込みマイクロプロセッサとして実装してよいセキュリティエンジン130を有する。セキュリティエンジン130は、暗号化機能およびその他のユーザ認証機能を提供する。一実施形態では、プロセッサ110は、ホストオペレーティングシステム105の命令により動作するが、セキュリティエンジン130は、ホストオペレーティングシステム105によってアクセスできないセキュアで隔離された環境を提供する。このセキュアな環境を、本明細書では、セキュアパーティションと呼ぶ。セキュアな環境には、セキュアストレージ132も存在する。一実施形態では、ホストアプリケーション112は、セキュリティエンジン130内で動作する挙動分析モジュール140を使用して、シグネチャとは無関係の、システム挙動に基づいたマルウェア検出を実行する。ホストアプリケーション112は、シグネチャとは無関係のシステム挙動に基づいたマルウェア検出を含むセキュリティエンジン130のサービスを、セキュリティエンジンインターフェースSEI114を介して要求する。挙動分析モジュール140は、セキュリティエンジン130によって実行されるファームウェアとして実装してよい。セキュリティエンジン130とエンタプライズサーバ170との通信は、帯域外通信チャネル152を介して実行される。一実施形態では、帯域外通信チャネル152は、ホストシステムのセキュリティエンジン130とエンタプライズサーバ170との間のセキュアな通信チャネルである。帯域外通信チャネル152によって、セキュリティエンジン130は、プラットフォーム100のホストオペレーティングシステム105から独立して、外部のサーバと通信可能である。図2は、図1のシステムのコンポーネントをより詳細に表した図である。図2に示す実施形態では、挙動分析モジュールユーザインターフェース212は、モバイルオペレーティングシステムOS205によって構築される環境で動作するホストアプリケーションである。挙動分析モジュールユーザインターフェース212は、挙動分析モジュール240を呼び出して、シグネチャとは無関係のシステム挙動に基づいたマルウェア検出を提供する。挙動分析モジュールユーザインターフェース212と挙動分析モジュール240とのやり取りは、実施例ごとに特定であり、直接、またはモバイルOS205を介して、実行してよい。一実施形態では、挙動分析モジュールユーザインターフェース212は、挙動分析モジュール240の動的設定をオーバーライドすることもできる。モバイルOS205は、アイドル期間にプラットフォーム200のサブシステムを一時停止させ、プロセッサ210が低電力状態で動作する時間長を増加させる電力管理器207を有する。電力管理器207は、可能な最小電力状態にプロセッサ210を維持し、移動体デバイス200の節電量を増大させる。挙動分析モジュール240はセキュリティエンジン230内で動作するので、挙動分析モジュール240は、セキュリティエンジンインターフェースSEI214を介してアクセスされる。挙動分析モジュール240は、プロセッサモニタ241、バッテリモニタ242、覚醒イベントモニタ243、および通信/ログエージェント244を含むいくつかのサブモジュールを含む。プロセッサモニタ241は、プロセッサ利用情報を挙動分析モジュール240に提供する。プロセッサモニタ241は、カーネル制御器/メニュー不図示とやり取りすることにより、プロセッサ利用を監視する。プロセッサモニタ241は、特権および/または周波数を制限した状態でプロセスが実行されるようにすることもできる。バッテリモニタ242は、バッテリ利用情報を挙動分析モジュール240に提供する。バッテリの利用を監視して、プロセッサ以外の資源の過度の利用を検出する。たとえば、バッテリモニタ242は、グラフィックスエンジン資源またはオーディオサブシステムの過度の利用を検出してよい。バッテリモニタ242は、バッテリ250のドライバ不図示とやり取りすることにより、バッテリ利用を監視する。覚醒イベントモニタ243は、システム制御ユニットSCU208と協働して覚醒イベントを監視する。覚醒イベントモニタ243は、所定の動作モードにおいて予測されない覚醒イベントをフィルターするようSCU208のレジスタを設定する。システム制御ユニットSCU208は、きめ細やかなプラットフォーム電力管理支援を実行する。プラットフォーム200の覚醒イベントは、SCU208を介して覚醒イベントモニタ243にルーティングされる。挙動分析モジュール240は、呼び出されると、セキュアストレージ232からポリシー設定をロードする。挙動分析モジュール240は、モバイルOS205の電力管理器207から、プラットフォームの現在の動作モードを取得する。プラットフォームの動作モードの例としては、ブラウジング、映像/音声の再生、カメラ、電話等がある。現在の動作モードに基づいて、挙動分析モジュール240は、アクティブになることが予測される少なくとも一つのプロセスを特定する。たとえば、音声再生モードでは、オーディオサブシステムのプロセスがアクティブになることが予測され、プロセッサは、バッファの設定消去のためだけに起動されることが予測される。挙動分析モジュール240は、プラットフォーム200の資源のアクティビティレベルを監視し、実際のアクティビティレベルを予測アクティビティレベルと比較する。予測アクティビティレベルは、システムの動作モードと、その動作モードでアクティブになることが予測されるプロセスとに基づいて決定される。たとえば、プロセッサモニタ241は、カーネルプロセッサメニュー/制御器不図示とやり取りして、現在の動作モードでのプロセッサ210およびバッテリ250の予測アクティビティレベルを決定する。次に、プロセッサ210およびバッテリ250の実際のアクティビティレベルと、システム制御ユニットSCU208が扱う覚醒イベントの数および種類とを監視する。実際のアクティビティレベルと予測アクティビティレベルとに偏差が発見された場合、予測されないアクティビティのソースを偏差の潜在的原因として特定する。挙動分析モジュール240は、カーネルスケジューラ不図示と協働してシステムで現在アクティブとなっているプロセスを特定することにより、予測されないアクティビティのソースを特定する。現在アクティブとなっているこれらのプロセスを、プラットフォームの現在の動作モードで起動されていると現在予測されているアプリケーションにマッピングする。アクティブとなっているプロセスを現在の動作モードで予測されるアプリケーションにマッピングできない場合、アクティブとなっているそのプロセスおよびそれに対応付けられたアプリケーションを予測されないアクティビティのソースとして特定する。予測されないアクティビティのソースを特定すると、挙動分析モジュール240は、ポリシーガイドラインを使用して、予測されないアクティビティが合法であるかを判定する。たとえば、ポリシーガイドラインは、アプリケーションが合法であると認められるには署名されていなければならない旨を規定してよい。ポリシーガイドラインは、予測されないアクティビティについてユーザに警告を発し、ユーザのフィードバックを取得して、アプリケーションが合法であるかを判定する旨を規定してよい。予測されないアクティビティが合法でないと判定されたら、予測されないアクティビティのソースをマルウェアとして分類してよい。ポリシーガイドラインを使用して、マルウェアの対処策を決定してよく、たとえば、予測されないアクティビティのソースを終了してよく、および/または、さらに分析するべくシステムのスナップショットを取ってよい。たとえば、システムのスナップショットを遠隔のサーバに送信して分析させてよい。遠隔のサーバは、スナップショットの検証および/またはスナップショットをウィルスシグネチャに関して分析してよい。挙動分析モジュール240は、プラットフォーム200の動作モードが変更された場合、モバイルOS205の電力管理器207から通知を受けてよい。たとえば、プラットフォーム200が当初は音声再生モードであった場合にユーザがブラウザを起動させると、システムは、ブラウザ音声再生動作モードに変化する。モバイルOS205の電力管理器207から通知を受けると、挙動分析モジュール240は、自身の設定および予測アクティビティレベルを調整して、虚偽の警告のトリガを回避する。通信/ログエージェント244は、システム状態のスナップショットを定期的にログして、当該情報を図1のエンタプライズサーバ170等の遠隔のサーバに送信して、検証および/または分析させてよい。ログした情報を送信する際、通信/ログエージェント244は、エンタプライズサーバ170とのセキュアな通信チャネルを構築する。スナップショットに取る情報は、実施例ごとに特定であり、検出された異常アクティビティの統計、実行されている非署名アプリケーションの識別情報および/またはコード、ユーザのデバイス使用パターン、特権設定のオーバーライド試行のログ、及び珍しい挙動パターンのログを含んでよい。プラットフォーム200は、メモリ204およびセキュアストレージ232等のメモリ装置をさらに備える。これらのメモリ装置は、ランダムアクセスメモリRAMおよび読み出し専用メモリROMを含んでよい。本発明においては、通常、消去可能プログラム可能ROMEPROM、電気的消去可能プログラム可能ROMEEPROM、フラッシュROM、フラッシュメモリ等の不揮発性メモリ装置を指して、ROMという用語を使用する。セキュアストレージ232は、統合デバイスエレクトロニクスIDEハードドライブ等の大容量記憶装置、および/または、たとえば、フロッピー登録商標ディスク、光学式記憶装置、テープ、フラッシュメモリ、メモリスティック、デジタルビデオディスク、生物学的記憶装置等のその他の装置または媒体を含んでよい。一実施形態では、セキュアストレージ232は、モバイルOS205から隔離されたチップセット220内に組み込まれたeMMCNANDフラッシュメモリである。プロセッサ210は、ディスプレイコントローラ202、小型コンピュータ用周辺機器インターフェースSCSIコントローラ、通信コントローラ206等のネットワークコントローラ、ユニバーサルシリアルバスUSBコントローラ、キーボードおよびマウス等の入力装置等のさらなるコンポーネントに通信可能に結合されてもよい。プラットフォーム200は、多様なシステムコンポーネントを通信可能に結合するべく、メモリコントローラハブ、入出力I/Oコントローラハブ、PCIルートブリッジ等の一つ以上のブリッジまたはハブをさらに備えてよい。本明細書で使用されるバスという用語は、共有の通信経路およびポイントツーポイント経路を指すべく使用される場合がある。たとえば、通信コントローラ206等のいくつかのコンポーネントは、バスと通信するためのインターフェースたとえば、PCIコネクタを有するアダプタカードとして実装してよい。一実施形態では、プログラム可能またはプログラム不可能な論理デバイスまたはアレイ、特定用途向け集積回路ASICs、組み込みコンピュータ、スマートカード等を使用して、一つ以上の装置を組み込みコントローラとして実装してよい。本明細書で使用される処理システムおよびデータ処理システムという用語は、単一の機械、または、通信可能に結合されて協働する複数の機械または装置から構成されるシステムを広範に包含することが意図される。処理システムの例としては、分散コンピューティングシステム、スーパーコンピュータ、高性能コンピューティングシステム、コンピューティングクラスタ、メインフレームコンピュータ、ミニコンピュータ、クライアント-サーバシステム、パーソナルコンピュータ、ワークステーション、サーバ、携帯型コンピュータ、ラップトップコンピュータ、タブレット、電話、携帯情報端末PDA、ハンドヘルドデバイス、音声および/または映像端末等の娯楽端末、情報を処理または送信するためのその他の装置等があるが、これらに限定されない。キーボード、マウス、タッチスクリーン、音声作動式装置、ジェスチャ作動式装置等の従来の入力装置からの入力、および/または、別の装置から受信したコマンド、生体認証機能からのフィードバック、もしくはその他の入力ソース/信号によって、少なくとも部分的にプラットフォーム200を制御してよい。プラットフォーム200は、たとえば、通信コントローラ206、モデム、またはその他の通信ポートもしくは通信結合部を介して、図1のエンタプライズサーバ170等の一つ以上の遠隔データ処理システムへの一つ以上の接続を活用してよい。ローカルエリアネットワークLAN、ワイドエリアネットワークWAN、イントラネット、インターネット等の物理的および/または論理的なネットワークを介して、プラットフォーム200をその他の処理システム不図示に相互接続してよい。ネットワークを介した通信は、無線周波数RF、衛星、マイクロ波、電気電子技術者協会IEEE802.11、ブルートゥース登録商標、光、赤外線、ケーブル、レーザ等を含む多様な有線および/または無線の短距離または長距離キャリアおよびプロトコルを利用してよい。図3は、本発明の一実施形態に係る、シグネチャとは無関係のシステム挙動に基づいたマルウェア検出を実行する方法のフローチャートである。図3に示す本方法の段階は、図1および図2に示すシステムのコンポーネントによって実行されるものとして記載する。本方法は、302のプラットフォームで挙動分析モジュールが起動されたかの判定点から始まる。プラットフォーム200で挙動分析モジュール240が起動されていない場合、処理は終了する。挙動分析モジュール240が起動されると、制御は、段階304のセキュアストレージからポリシー設定をロードするに進む。プロセッサ210およびバッテリ250等の各資源の予測アクティビティレベルについてのポリシー設定が、動作モードごとに確立され、セキュアストレージ232のポリシーデータベースに保存される。これらのポリシー設定は、メモリにロードされ、挙動分析モジュール240は、段階306のプラットフォームの現在の動作モードを電力管理器から取得するに進む。挙動分析モジュール240は、モバイルOS205の電力管理器207から現在の動作モードを取得する。継続的に、モバイルOS205の電力管理器207は、段階308のプラットフォームの動作モードが変更されたら、電力管理器は挙動分析モジュールに通知するに示すように、プラットフォームの動作モードに変更があった場合に、挙動分析モジュール240に通知する。段階306のプラットフォームの現在の動作モードを電力管理器から取得するから、制御は、段階310の動作モードに基づいて、対応するモードでアクティブになることが予測されるプロセスを判定するに進み、挙動分析モジュール240は、プラットフォーム200の現在の動作モードに基づいて、アクティブになることが予測される少なくとも一つのプロセスを特定する。制御は、段階312の現在の動作モードの予測アクティビティレベルを算出するプロセッサ周波数およびバッテリ消費を概算するに進み、挙動分析モジュール240は、現在の動作モードの場合のプラットフォーム200の資源の予測アクティビティレベルを算出する。たとえば、概算的なプロセッサ周波数およびバッテリ消費レベルを算出してよい。次に、制御は、段階314の予測アクティビティレベルに対する実際のアクティビティレベルの偏差を監視するに進む。段階314で、挙動分析モジュール240は、実際のアクティビティレベルが予測アクティビティレベルに対して偏差を有するか監視する。たとえば、プロセッサモニタ241は、予測アクティビティレベルに対するプロセッサ周波数、特権期間privilegeduration、および使用期間usagedurationの偏差を監視する。バッテリモニタ242は、予測バッテリ消費量に対するバッテリ使用の偏差を監視する。覚醒イベントモニタ243は、現在の動作モードの場合の覚醒イベントの予測数を、システム制御ユニットSCU208を使用して監視する。制御は、段階314の予測アクティビティレベルに対する実際のアクティビティレベルの偏差を監視するから316の偏差が検出されたかの判定点に進む。偏差が検出されなかった場合、制御は、段階322のシステムのスナップショットを取って、スナップショットをログするに進み、通信/ログエージェント244は、システムのスナップショットを取ってログに書き込む。スナップショットに収集されるデータ量およびスナップショットを取る周期は、実施例ごとに特定であり、相手先商標製品製造業者/相手先商標機器製造業者OEM/ODMによって決定してよい。一実施形態では、システムのスナップショットを遠隔のサーバが分析して、ウィルスシグネチャマッチングを遠隔のサーバで実行し、クライアント処理システムで要求されるシグネチャ処理用資源を少なくしてよい。316の偏差が検出されたかの判定点で偏差が検出されると、制御は、段階318の予測されないアクティビティレベルのソースを特定するに進む。段階318では、予測されないプロセッサ周波数のソース等の予測されないアクティビティレベルのソースを偏差の潜在的ソースとして特定する。次に、制御は、段階320のポリシーガイドラインを使用して予測されないアクティビティが合法であるかを判定するに進む。上記したように、予測されないアクティビティのソースを特定すると、挙動分析モジュール240は、ポリシーガイドラインを使用して予測されないアクティビティが合法であるかを判定する。たとえば、ポリシーガイドラインは、アプリケーションは、合法であると認められるには、署名されていなければならない旨を規定してよい。ポリシーガイドラインは、アプリケーションが合法であるかを判定するには、予測されないアクティビティについてユーザに警告を発して、ユーザからのフィードバックを取得する旨を規定してよい。制御は、322のアクティビティは合法であるかの判定点に進む。予測されないアクティビティが合法であると判定されれば、制御は、段階326のポリシー設定にしたがって行動をとるに進む。たとえば、さらなる監視ルーチンを呼び出して、予測されないアクティビティのソースであるアプリケーションを監視してよい。322のアクティビティは合法であるかの判定点で、予測されないアクティビティが合法でないと判定されると、制御は、段階324の予測されないアクティビティのソースをマルウェアとして分類するに進み、予測されないアクティビティのソースをマルウェアとして分類する。次に、制御は、段階326のポリシー設定にしたがって行動をとるに進み、マルウェアに対処するべく、予測されないアクティビティレベルのソースを終了させる、および/または、システムのスナップショットを遠隔のサーバに通知する等の適切な行動をとる。次に、制御は、段階328のシステムのスナップショットを取り、スナップショットをログするに進み、通信/ログエージェント244は、システムのスナップショットを取ってログに書き込む。図4は、システムが動作している間にユーザが呼び出した新しいアプリケーションを監視するための本発明の一実施形態に係る方法のフローチャートである。402のユーザが新しいアプリケーション/サービスを起動させたかの判定点で、挙動分析モジュール240は、プラットフォーム200のユーザが新しいアプリケーションまたはサービスを起動させたかを判定する。新しいアプリケーションまたはサービスが起動されていない場合、処理は終了する。新しいアプリケーションまたはサービスが起動されている場合、制御は、404のアプリケーション/サービスは署名されているかの判定点に進む。アプリケーションまたはサービスが署名されていれば、制御は、段階408のアプリケーション/サービスの起動を許可/拒否し、それにしたがって動作モードを更新するに進む。挙動分析モジュール240は、アプリケーションまたはサービスの起動を許可または拒否し、そのいずれであるかにしたがって動作モードを更新する。404のアプリケーション/サービスは署名されているかの判定点で、アプリケーションまたはサービスが署名されていなければ、制御は、段階406のユーザに警告して、ユーザからのフィードバックに基づいて調整するに進む。挙動分析モジュールユーザインターフェース212を介してユーザに警告を発し、挙動分析モジュール240は、ユーザからのフィードバックにしたがって自身の挙動を調整する。たとえば、ユーザは、全てのアプリケーションおよびサービスが署名されていなければならないという要件をオーバーライドして未署名であってもアプリケーションの起動を許可する命令を発行してよい。または、挙動分析モジュール240は、未署名のアプリケーションは許可できない旨をユーザに通知してよい。制御は、段階406のユーザに警告して、ユーザからのフィードバックに基づいて調整するから、段階408のアプリケーション/サービスの起動を許可/拒否し、それにしたがって動作モードを更新するに進む。挙動分析モジュール240は、アプリケーションまたはサービスの起動を許可または拒否し、それにしたがって動作モードを更新する。図4を参照して記載した処理は、新しいアプリケーションが起動されたとき、または予測アクティビティレベルに対する実際のアクティビティレベルの偏差が生じたかの判定を行ったごとに、実行してよい。図4を参照して記載した処理は、予測されないアクティビティが合法であるかを判定するべく使用してよい。本明細書においてシグネチャとは無関係のシステム挙動に基づいたマルウェア検出について記載した技術には、従来のマルウェア検出法と比較していくつかの利点がある。マルウェア検出の実行には、何百万ものマルウェアシグネチャを検出するべくソフトウェアプログラムを調べることが伴わないので、かなりのストレージおよびコンピューティング資源が節約される。本明細書に記載される挙動分析モジュールは、処理システムの動作モード並びにプロセッサおよびバッテリ等の資源のアクティビティレベルを活用して、積極的にマルウェアを特定する。挙動分析モジュールは、動作モードが変化したとき、動的に調整するので、虚偽の警告が回避される。挙動分析モジュールは、挙動を分析する際、アプリケーションまたはサービスが署名されているかも考慮する。本明細書に記載の挙動分析モジュールは、設定可能configurableでポリシーベースpolicy-basedである。挙動分析モジュールは、システムのスナップショットを取り、スナップショットを遠隔のエンタプライズサーバに提供し、検証させることができる。さらに、本明細書に記載の挙動分析モジュールは、処理システムのオペレーティングシステムから隔離されたセキュアな環境で動作する。これにより、挙動分析データは、ユーザ、オペレーティングシステム、ホストアプリケーション、およびマルウェアを含む信頼できない存在にアクセスされないようになる。さらに、ポリシー設定およびトランザクションログは、タンパープルーフのセキュアなストレージに記憶される。遠隔のエンタプライズサーバからポリシーおよび警告をセキュアに送信することができるので、挙動分析モジュールは、変化し続けるマルウェア環境に適合することが可能である。本明細書に記載のメカニズムの実施形態は、ハードウェア、ソフトウェア、ファームウェア、または、これらの実装法の組み合わせで実装してよい。本発明の実施形態は、少なくとも一つのプロセッサ、データストレージシステム揮発性および不揮発性のメモリ、および/またはストレージ要素を含む、少なくとも一つの入力装置、および少なくとも一つの出力装置を備えるプログラマブルシステムで実行されるコンピュータプログラムとして実装してよい。入力データにプログラムコードを適用して、本明細書に記載の機能を実行し、出力情報を生成してよい。本発明の実施形態は、本発明の動作を実行するための命令、または、本明細書に記載の構造、回路、装置、プロセッサ、および/またはシステム特性を定義するHDL等の設計データを含む機械アクセス可能媒体も含む。このような実施形態もプログラムプロダクトと呼んでよい。このような機械アクセス可能記憶媒体は、ハードディスク等の記憶媒体、フロッピー登録商標ディスク、光ディスク、読み出し専用コンパクトディスクメモリCD-ROMs、書き換え可能コンパクトディスクCD-RWs、もしくは磁気光ディスク等のその他の種類のディスク、読み出し専用メモリROMs、動的ランダムアクセスメモリDRAMsもしくは静的ランダムアクセスメモリSRAMs等のランダムアクセスメモリRAMs、消去可能プログラム可能読み出し専用メモリEPROMs、プログラム可能フラッシュメモリFLASH、もしくは電気的消去可能プログラム可能読み出し専用メモリEEPROMs等の半導体装置、磁気もしくは光カード、または、電子的命令を記憶するのに適したその他の任意の種類の媒体を含む、機械または装置により製造または形成された粒子の有形の配置tangiblearrangementsであってよいが、これに限定されない。出力情報は、周知の方法で、一つ以上の出力装置に適用してよい。本願の目的においては、処理システムは、たとえば、デジタルシグナルプロセッサDSP、マイクロコントローラ、特定用途向け集積回路ASIC、またはマイクロプロセッサ等のプロセッサを有する任意のシステムを含む。プログラムは、処理システムとやり取りするべく、高水準手続き型言語またはオブジェクト指向プログラミング言語で実装してよい。プログラムは、所望であれば、アセンブリ言語または機械言語で実装してもよい。実際、本明細書に記載のメカニズムの範囲は、特定のプログラミング言語に限定されない。いずれにせよ、言語は、コンパイルまたはインタープリットされた言語であってよい。本明細書には、シグネチャとは無関係のシステム挙動に基づいたマルウェア検出を実行する方法およびシステムの実施形態を提示した。本発明の特定の実施形態を示し記載したが、添付の特許請求の範囲から逸脱することなく、多くの変更、多様化、および改変を行うことができることが当業者には明らかとなろう。したがって、本発明から逸脱することなく、そのより広い観点において変更および改変を行うことができることは当業者であれば認識するであろう。添付の特許請求の範囲は、本発明の真の範囲および趣旨のうちにあるこのようなあらゆる変更、多様化、および改変を、その範囲に包含するものとする。