(57)【要約】ワイヤレスネットワーキングシステムは、ネットワーク機器および少なくとも１つのモバイルデバイスを含む。該モバイルデバイスは、アプリケーションモジュールと、アプリケーションのコンテクスト内で実行可能であり、該アプリケーションの実行に関するデータを受信し、かつ、該データが監視されるべき種類のものかどうかを決定するように構成される、判別アプリケーションプログラミングインターフェース（ＡＰＩ）と、該アプリケーションのコンテクスト内で実行可能であり、判別ＡＰＩが、該データが監視されるべき種類であると決定した場合には、該データを抽出するように構成された、監視ＡＰＩとを備える。該モバイルデバイスは、さらに、ネットワーク機器に監視されたデータを抽出および送信するように構成されるワイヤレスエージェントを備える。
2008522509.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークの構成要素であるモバイルデバイスの中のアプリケーションを監視する方法であって、
該アプリケーションのコンテクスト内で実行可能なモジュールであり、データが監視されるべき種類かどうかを決定するように構成される、判別アプリケーションプログラミングインターフェース（ＡＰＩ）に、該アプリケーションの実行に関する該データを送るステップと、
該判別ＡＰＩが、該データが監視されるべき該種類であると決定した場合には、該アプリケーションのコンテクスト内で実行可能なモジュールである監視ＡＰＩを用いて、
該アプリケーションの実行に関する該データを監視するステップと
を包含する、方法。
【請求項２】
監視される前記データを、前記モバイルデバイスに含まれるメモリ内に格納するステップをさらに包含する、請求項１に記載の方法。
【請求項３】
前記判別ＡＰＩは、複数のアプリケーションによって共有され、該複数のアプリケーションのそれぞれのプロセス空間にマッピングされる、動的リンクライブラリである、請求項１に記載の方法。
【請求項４】
前記判別ＡＰＩが、前記データが監視されるべき前記種類であると決定した後に、前記監視ＡＰＩを用いて、前記メモリ内の前記アプリケーションの実行に関する追加のデータを自動的に格納するステップをさらに包含する、請求項１に記載の方法。
【請求項５】
前記判別ＡＰＩが、前記データが監視されるべき前記種類であると決定することに失敗した場合には、前記メモリ内の前記アプリケーションの実行に関する追加のデータの格納を自動的に終了するステップをさらに包含する、請求項３に記載の方法。
【請求項６】
一体型のワイヤレスマネージメントシステムとプロセッサとを含む、ネットワーク機器に、前記メモリから格納された前記データを送信するステップをさらに包含する、請求項２に記載の方法。
【請求項７】
前記ネットワーク機器プロセッサは、前記モバイルデバイスからの前記データの送信を自動的に要求するように構成される、請求項６に記載の方法。
【請求項８】
前記ネットワーク機器プロセッサは、ユーザー要求の受信と同時に、前記モバイルデバイスからの前記データの送信を要求するように構成される、請求項６に記載の方法。
【請求項９】
一体型のワイヤレスマネージメントシステムとプロセッサとを有するネットワーク機器、および少なくとも１つのモバイルデバイスを備えるワイヤレスネットワークシステムであって、
該モバイルデバイスは、
アプリケーションモジュールと、
該アプリケーションのコンテクスト内で実行可能なモジュールであり、該データが監視されるべき種類かどうかを決定するように構成される、判別アプリケーションプログラミングインターフェース（ＡＰＩ）と、
該アプリケーションのコンテクスト内で実行可能なモジュールであり、判別ＡＰＩが、該データが監視されるべき種類であると決定した場合には、該データを抽出するように構成される、監視ＡＰＩと、
該監視されるデータを抽出および該ネットワーク機器に送信するように構成されるワイヤレスエージェントを含む、少なくとも１つのモバイルデバイスと
を備える、ワイヤレスネットワーキングシステム。
【請求項１０】
前記モバイルデバイスは、前記アプリケーションと通信するメモリをさらに備え、前記監視ＡＰＩから前記監視されるデータを受信および格納するように構成される、請求項９に記載のワイヤレスネットワーキングシステム。
【請求項１１】
前記判別ＡＰＩは、複数のアプリケーションによって共有され、複数のアプリケーションのそれぞれのプロセス空間にマッピングされる、動的リンクライブラリである、請求項９に記載のワイヤレスネットワーキングシステム。
【請求項１２】
前記監視ＡＰＩは、前記判別ＡＰＩが、前記データが監視されるべき種類であると決定した後に、前記アプリケーションの実行に関する追加の継続的なデータを前記メモリ内に自動的に格納するように構成される、請求項１０に記載のワイヤレスネットワーキングシステム。
【請求項１３】
前記監視ＡＰＩは、前記判別ＡＰＩが、前記データが監視されるべき種類であると決定することに失敗した場合には、前記アプリケーションの実行に関するデータの前記メモリ内への格納を自動的に停止するようにさらに構成される、請求項１２に記載のワイヤレスネットワーキングシステム。
【請求項１４】
前記ネットワーク機器プロセッサは、前記モバイルデバイスからの前記データの送信を自動的に要求するように構成される、請求項９に記載のワイヤレスネットワーキングシステム。
【請求項１５】
前記ネットワーク機器プロセッサは、ユーザー要求の受信と同時に、前記モバイルデバイスからの前記データの送信を要求するように構成される、請求項９に記載のワイヤレスネットワーキングシステム。
【請求項１６】
一体型のワイヤレスマネージメントシステムとプロセッサとを有するネットワーク機器、および少なくとも１つのモバイルデバイスを備えるワイヤレスネットワーキングシステムであって、
該モバイルデバイスは、
該アプリケーションの実行に関するデータを受信して、該データが監視されるべき種類かどうかを決定する手段と、該データが監視されるべき該種類である場合には、該データを抽出する手段とを含む、アプリケーションモジュールと、
該監視されるデータを抽出および該ネットワーク機器に送信する手段と
を備える、ワイヤレスネットワーキングシステム。
【請求項１７】
ネットワークの構成要素であるモバイルデバイス内のアプリケーションを監視するプログラム製品であって、該プログラム製品は、該モバイルデバイスに格納されるコンピュータ読み取り可能な命令を備え、
該コンピュータ読み取り可能な命令は、
該アプリケーションのコンテクスト内で実行可能なモジュールであり、該データが監視されるべき種類かどうかを決定するように構成される、判別アプリケーションプログラミングインターフェース（ＡＰＩ）に、該アプリケーションの実行に関するデータを送るように実行可能であり、
該判別ＡＰＩが、該データが監視されるべき該種類であると決定した場合には、該アプリケーションのコンテクスト内で実行可能なモジュールである監視ＡＰＩを用いて、該データを監視することを実行可能である、
プログラム製品。
【請求項１８】
前記コンピュータ読み取り可能な命令は、前記モバイルデバイスに含まれるメモリに、監視されている前記データを格納することを、さらに実行可能である、請求項１７に記載のプログラム製品。
【請求項１９】
前記コンピュータ読み取り可能な命令は、前記判別ＡＰＩが、前記データが監視されるべき前記種類であると決定した後に、前記監視ＡＰＩを用いて、前記アプリケーションの実行に関する追加データを前記メモリ内に自動的に格納することを、さらに実行可能である、請求項１８に記載のプログラム製品。
【請求項２０】
前記コンピュータ読み取り可能な命令は、前記判別ＡＰＩが、前記データが監視されるべき前記種類であると決定することに失敗した場合には、前記アプリケーションの実行に関する追加データのメモリ内への格納を自動的に停止することを、さらに実行可能である、請求項１９に記載のプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、複数のモバイルサービスユニットのネットワーキングのためのシステムに関し、さらに具体的には、モバイルユニットで実行されるアプリケーションの監視に関する。
【背景技術】
【０００２】
ワイヤレスネットワークは、小売業、運送業、物流業務、製造業、倉庫業務、および他の多数の産業において展開されている。ワイヤレスネットワークは、しばしば、適切なアプリケーションを実行することによって多数の業務処理を実行するように構成された、多数のモバイルユニットを含む。実行された業務処理に属する情報は、検討またはさらなる処理のために、モバイルデバイスからネットワーク機器に直ちに送信され得る。あるいは、該情報は、モバイルデバイスに格納され得、後の時間にネットワーク機器に送信され得る。
【０００３】
前述されたように、モバイルデバイスは、一般的に、多数のアプリケーションを実行するように構成される。モバイルユニットを用いる仕事を割り当てられた労働者は、アプリケーションの実行を覚えること、またはアプリケーションの実行に関連する問題を解決することに困難を感じ得る。モバイルユニットは、しばしば、技術的な専門家が、困難に直面している労働者を直ちに助けられないような場所で利用される。労働者は、その結果として、専門家が助けとなるときには、モバイルユニットを用いて経験している問題を説明するのは困難であり得る。
【０００４】
また、モバイルデバイスによるアプリケーションの実行は、ビジネスにおいて有益となり得る重要な情報を生成し得るか、またはその重要な情報の所産となり得る。一例として、モバイルデバイスを用いて取引が実行される頻度は、ビジネスの効率および生産性を考慮するときに、ビジネスが反映し得るものである。モバイルデバイスは、時に簡単に監視がされない場所で用いられるので、取引の頻度に関する情報は、取得するのが困難であり得る。
【０００５】
従って、ワイヤレスネットワークにおけるモバイルデバイスの挙動を正確に監視する手段を提供することが所望される。さらに、モバイルデバイスによって実行される複数のアプリケーション、および該アプリケーションがどのように実行されたかを追跡し記録することが所望される。さらに、本発明の他の所望される機能および特徴は、添付の図面および前記の技術分野および背景技術とともに、以下の詳細な記述および特許請求の範囲によって明確になり得る。
【発明の開示】
【課題を解決するための手段】
【０００６】
一体型のワイヤレスマネージメントシステムとプロセッサを有するネットワーク機器、および少なくとも１つのモバイルデバイスを備える、ワイヤレスネットワーキングシステムが提供される。該モバイルデバイスは、アプリケーションモジュールと、アプリケーションのコンテクスト内で実行可能であり、該アプリケーションの実行に関するデータを受信するように構成され、かつ、該データが監視されるべき種類かどうかを決定する、判別アプリケーションプログラミングインターフェース（ＡＰＩ）と、該アプリケーションのコンテクスト内で実行可能であり、判別ＡＰＩが、該データが監視されるべき種類であると決定した場合には、該データを抽出するように構成される、監視ＡＰＩとを備える。該モバイルデバイスは、さらに、監視されたデータを抽出およびネットワーク機器に送信するように構成されるワイヤレスエージェントを備える。
【０００７】
ワイヤレスネットワークの構成要素であるモバイルデバイスのアプリケーションを監視する方法もまた、提供される。該方法は、アプリケーションのコンテクスト内で実行可能なモジュールであり、該データが監視されるべき種類かどうかを決定するように構成される、判別アプリケーションプログラミングインターフェース（ＡＰＩ）に、アプリケーションの実行に関するデータを送る第１ステップを包含する。該方法は、さらに、判別ＡＰＩが、該データが監視されるべき種類であると決定した場合には、アプリケーションのコンテクスト内で実行可能なモジュールである監視ＡＰＩを用いて、アプリケーションの実行に関するデータを監視するステップを含む。
【０００８】
ネットワーク構成要素であるモバイルデバイスの中のアプリケーションを監視するためのプログラム製品もまた提供される。プログラム製品は、モバイルデバイスに格納されるコンピュータ読み取り可能な命令を含む。コンピュータ読み取り可能な命令は、該アプリケーションのコンテクスト内で実行可能なモジュールであり、データが監視されるべき種類かどうかを決定するように構成される、判別アプリケーションプログラミングインターフェース（ＡＰＩ）に、該アプリケーションの実行に関するデータを送ることを実行可能である。該コンピュータ読み取り可能な命令は、さらに、判別ＡＰＩが、該データが監視されるべき種類であると決定した場合には、該アプリケーションのコンテクスト内で実行可能なモジュールである監視ＡＰＩを用いて、該データを監視することを実行可能である。
【発明を実施するための最良の形態】
【０００９】
本発明は、本明細書において、以下に図面とともに記述され、同じ番号は、同じ構成要素を意味する。
【００１０】
以下の詳細な記述は、本質的に単なる例示であり、本発明または本発明の適用および使用を限定する意図はない。さらに、本明細書中の技術分野、背景技術、課題を解決するための手段、または以下の実施形態に提示される、表現されたまたは必然的に含まれた任意の理論によって束縛される意図は全くない。
【００１１】
図１は、本発明の例示的な実施形態を実装し得る、例示的なワイヤレスネットワーク１００を示す、概略図である。ネットワーク１００は、ネットワーク機器１０、ネットワークサーバ２０、アクセスポイント３０、およびワイヤレススイッチ４０を含む。デバイス１０、２０、３０、４０のそれぞれは、ネットワーク１００の有線の部分を用いて、相互接続されているとして示されている。しかし、デバイス１０、２０、３０，４０もまた、ネットワーク１００とワイヤレスで接続され得るということが理解される。ネットワーク１００は、図１で示されていない、任意の数の追加ネットワークコンポーネントおよび／またはデバイスを含み得る。
【００１２】
複数のモバイルユニット３１〜３３は、アクセスポイント３０によってネットワーク１００にワイヤレスで接続される。モバイルユニット３１〜３３は、デスクトップまたはラップトップコンピュータ、携帯情報端末、携帯電話、ページャ、およびスキャナーを含む、任意の種類のコンピューティングまたはプロセッサベースのデバイスであり得る。モバイルユニット３１〜３３およびアクセスポイント３０は、ワイヤレスローカルエリアネットワーク（ＷＬＡＮ）およびワイヤレスワイドエリアネットワーク（ＷＷＡＮ）のような任意の種類のワイヤレスネットワーキング環境の中で動作し得る。モバイルユニット３１〜３３とアクセスポイント３０との間の通信は、ＩＥＥＥ  ８０２．１１およびＢｌｕｅｔｏｏｔｈのような任意のワイヤレスプロトコルを用いて達成され得る。同様に、モバイルユニット４１〜４３は、ワイヤレススイッチ４０を介して、ネットワーク１００にワイヤレスで接続される。ネットワーク１００は、任意のワイヤレスアレンジメントに実装され得る、例示的な一実施形態にすぎないということが理解される。
【００１３】
以下は、オンサイト倉庫を有する小売店のコンテクスト内での、ネットワーク１００の例示的な動作の簡単な記述である。この例は、様々なネットワークデバイス間の、例示的な相互作用の一般的な記述を提供する。アクセスポイント３０は、小売売場に位置して、モバイルユニット３１〜３３は、小売売場の店員によって用いられるポータブルチェックアウトデバイスである。ワイヤレススイッチ４０は、倉庫要員によって用いられるハンドヘルドコンピューティングデバイスであるモバイルユニット４１〜４３とともに倉庫空間に位置する。
【００１４】
本実施形態によれば、ネットワークサーバ２０は、小売店によって販売される製品についての情報を含む。ネットワークサーバ２０は、モバイルユニット３１〜３３およびモバイルユニット４１〜４３と接触し情報を最新のものに保つ。例えば、ネットワークサーバは、小売売場にある製品Ａの現在の数量、および、小売売場にある製品Ａに対する最小数量について記載する在庫管理ルールを含み得る。店員が、購入された製品Ａの数量を識別するためにモバイルユニット３１を用いるときには、モバイルユニット３１は、アクセスポイント３０に、製品Ａのその数量が販売されたということを示すメッセージを送信する。アクセスポイント３０は、次いで、ネットワークサーバ２０にこのメッセージを中継し、ネットワークサーバ２０は、小売売場にある製品の現在の数量からその数量を取り除くことによってその記録を更新する。
【００１５】
その記録を更新した後に、ネットワークサーバ２０は、現在の数量と在庫管理ルールからの最小数量とを比較する。現在の数量が最小数量よりも少ない場合には、ネットワークサーバ２０は、ワイヤレススイッチ４０を介してモバイルユニット３１にメッセージをフォーマットし、送る。該メッセージは、モバイルユニット３１のユーザーに、製品Ａの追加数量が倉庫から小売売場に移動させられる必要があるということを示す。モバイルユニット３１のユーザーは、倉庫から小売売場に製品Ａの追加数量を動かした後に、メッセージに確認応答を送る。ネットワークサーバ２０は、次いで小売売場および倉庫空間の両方にある製品Ａの数量に関する情報を更新する。再び、これらのネットワーク機能は単に例示的なものであり、ネットワーク制御およびマネージメントを含む単なる一構成のみに提示され得る一連の問題を説明するために記述されるということが理解される。
【００１６】
前述されたように、ネットワークユーザーは時々、局所的に、または遠隔でネットワーク問題を診断および解決できるということから利益を受け得る。追加的な利益は、ネットワークを用いて問題を予期し、その結果として問題が発生することを防ぐためのステップを操る能力から生じる。別の例示的な実施形態は、ネットワークユーザーにネットワークの完全な終端間のビューを提供する、ワイヤレスネットワークマネジメントアプリケーションと、関連する機器およびモジュールとを含む。
【００１７】
図２は、図１を参照して記述されるネットワーク１００からの、例示的なモバイルユニット３１を説明するブロック図である。モバイルユニット３１は、アプリケーション５１、ワイヤレスプロトコル５３、およびワイヤレスエージェント５５を含む、様々なソフトウエアコンポーネントを含む。オペレーティングシステムのような、他のソフトウエアコンポーネントもまた、モバイルユニット３１に含まれ得る。アプリケーション５１は、モバイルユニット３１が、前述の例からのチェックアウトアプリケーションのような所望される機能を行うことを可能にする、ソフトウエアコンポーネントである。ワイヤレスプロトコル５３は、モバイルユニット３１が、アクセスポイント３０または他のモバイルユニットと通信することを可能にする、ソフトウエアコンポーネントである。
【００１８】
ワイヤレスエージェント５５は、本発明に従った、一体型のワイヤレスデバイスおよびネットワークマネジメントシステムのための機能性を含む、ソフトウエアコンポーネントである。ワイヤレスエージェント５５は、ネットワーク１００の中のそれぞれのモバイルユニット上に存在して、モバイルユニット３１およびその挙動についての情報を収集する。ワイヤレスエージェント５５は、情報を収集するためにモバイルユニット３１の中の様々な情報源から入力を受信し得る。一例において、ワイヤレスエージェント５５は、オペレーティングシステムに問い合わせることによってか、またはオペレーティングシステムから入力を受信することによって、バッテリレベルを監視して、電池寿命の現在の状態を決定する。さらなる例において、ワイヤレスエージェント５５は、モバイルユニット３１の現在の送信帯域幅を示す入力を、ワイヤレスプロトコル５３から問い合わせるか、または受信する。ワイヤレスエージェント５５は、結果的に、全ての監視される属性に対する、モバイルユニット３１にある中央情報コンジット（ｃｏｎｄｕｉｔ）である。
【００１９】
図３は、ネットワークデバイスの間の例示的な通信パスを説明するブロック図である。この例において、通信パスは、モバイルユニット３１、アクセスポイント３０、およびネットワーク機器１０の間にある。前述されたように、通信パスは、双方向に動作し、その結果として、メッセージがネットワーク機器１０とモバイルユニット３１との間を両方向に送られ得る。
【００２０】
ネットワーク機器１０は、一体型のワイヤレスマネージメント（ＩＷＭ）システム６０を含み得、その特徴および機能は、ここで詳細に記述される。例示的な実施形態によれば、ワイヤレスエージェント５５によって収集される情報は、ネットワーク機器１０上のＩＷＭシステム６０に通信される。送信される情報の頻度は、送信される情報に基づいて変わり得る。例えば、監視される属性のうちの１つは、モバイルユニット３１上に存在する各ソフトウエアアプリケーション５１のバージョンであり得、そのような情報は、バージョン番号に変更があったときのみに送信される必要があり得る。バッテリレベルおよび送信帯域幅のような他の属性に関する情報は、一般的にはより頻繁に変化し、ワイヤレスエージェント５５は、その結果としてＩＷＭシステム６０に、そのような情報をほとんど連続的に送信し得る。
【００２１】
各デバイスの中に含まれるワイヤレスエージェント５５は、いつ属性がＩＷＭシステム６０に送信されるかを決定する一連のポリシーを含む。各ポリシーは、現在のＡＣパワーライン状態、メインバッテリレベル、メインバッテリ状態、バックアップバッテリレベル、バックアップバッテリ状態、デバイスＩＰアドレス、デバイスＭＡＣアドレス、ＤＨＣＰサーバアドレス、ゲートウェイアドレス、ネットワークヘルス（ｎｅｔｗｏｒｋ  ｈｅａｌｔｈ）、ネットワーク状態、メモリーロード、フリープログラムメモリ、トータルプログラムメモリ、フリーストレージメモリ、およびトータルストレージメモリなどの、収集される特定の属性を示し得る。ポリシーはまた、モバイルデバイス３１から収集される静的な情報を示し得る。静的な情報の例は、ブートローダバージョン、ホスト名、ＯＥＭモデル、ＯＥＭバージョン、ＯＳビルド番号、ＯＳバージョン、オーナー、プラットフォームＯＳモデル、およびデバイスユニット識別子を含む。ポリシーはまた、ブート回数、合計のデバイスオン時間、ＣＰＵ使用率、挙動測定間隔、挙動サンプル、平均スレッド待ち時間、および平均ＵＩスレッド待ち時間などの、収集されるシステムブート、および挙動情報を示し得る。ポリシーは、また、ワイヤレスＢＳＳＩＤ、ワイヤレスチャネル、ワイヤレスＥＳＳＩＤ、およびワイヤレス関連状態などの、ワイヤレス関連の情報を示し得る。これらは、単なる例示的なポリシーであり、任意の数のポリシーが、どのような種類の情報を収集するか、および各収集のための頻度を示すために実装され得る。
【００２２】
さらに、モバイルユニット３１〜３３およびモバイルユニット４１〜４３は、ネットワーク１００に断続的な接続性のみを有し得る。断続的な接続性は、アクセスポイントまたはワイヤレススイッチの圏外でのモバイルユニットの使用、帯域幅制限、またはモバイルデバイスの電力損失を含む、様々な要因の結果であり得る。モバイルユニット３１がネットワーク１００との接触を失うときには、ワイヤレスエージェント５５は、モバイルユニット３１がネットワーク１００との接続を再確立した後の通信のために、バッファまたは他の格納機構に属性を格納し得る。
【００２３】
ＩＷＭシステム６０は、モバイルユニット３１上に存在するワイヤレスエージェント５５から通信を受信し、ネットワーク機器１０上に、通信からの情報を格納する。ＩＷＭシステム６０は、ネットワーク機器内のメモリに、モバイルユニット３１〜３３およびモバイルユニット４１〜４３を含む、ネットワーク上の全てのワイヤレスデバイスのための情報を格納する。プロセッサがまた、ネットワーク機器１０に含まれており、情報をコンパイルし、自動的にまたは促されたときには、ユーザーに情報を提示するように構成され得る。
【００２４】
前述されたように、ワイヤレスエージェント５５は、監視される全てのモバイルユニット属性に対するモバイルユニット３１の中の中央の貯蔵所（ｒｅｐｏｓｉｔｏｒｙ）であり、そのような属性は、モバイルデバイスの状態、ヘルス、および挙動に関する様々なデータから決定される。図４は、モバイルユニット３１の中のワイヤレスエージェント５５とアプリケーション５１との間の、２つの情報収集パスウェイを説明するブロック図である。アプリケーションは、監視がなされるまたは望まれ得る機能を実行する、任意のモジュールであり得る。例示的なアプリケーションは、品目出荷確認、品目受領確認、在庫チェック、および価格チェックを含む。アプリケーション内で実行しているサブシステムもまた、監視され得、各サブシステムはより特定された機能を実行し、これらの機能に属するデータを生成する。例示的なサブシステムは、バーコードシンボル読取り機モジュール、スマートカード読取り機モジュール、デジタルセンサモジュール、生体測定センサモジュール、磁気符号化データ読取り機モジュール、ＲＦＩＤ読取り機モジュール、および光コード読取り機モジュールを含む。
【００２５】
第１の情報収集パスウェイにおいて、監視される情報の各集合に対して、デバイスドライバＡＰＩのような、システムレベルのアプリケーションプログラミングインターフェース（ＡＰＩ）３２は、ワイヤレスエージェント５５にシステムレベルの情報を配送する。ワイヤレスエージェントは、モジュールユニット３１に属する情報を収集および解釈するために、かつ、ネットワーク機器１０との間で往復するその情報および他の情報を翻訳および通信するために構成され、あるいは様々なプラグインモジュール３４を追加される。
【００２６】
第１のパスウェイの重要な特徴は、大域でプロセス独立型の情報が、ワイヤレスエージェント５５に伝達されるということである。これは、なぜならばシステムレベルのＡＰＩとネットワーク機器とは、モバイルユニット内のアプリケーション５１とは別個のプロセス空間にて通信するからである。アプリケーション活動に関するサマリー情報は、ワイヤレスエージェント５５に伝達され得るが、該情報は、主にシステムレベルであり、アプリケーション５１内で実行しているモジュールによって行われる個々のステップは報告しない。ワイヤレスエージェント５５によって収集され得る属性の、多数の例があり、それらは、バッテリレベル、利用可能なメモリ、受信／送信帯域幅、ワイヤレス信号属性（例えば、信号品質、信号強度）、およびワイヤレス処理能力属性（例えば、平均リンク速度、送られたバイト、受信されたバイト、現在のリンク速度）を含むが、これらに限定はされない。これらの属性は、単なる例示であり、第１の情報収集パスウェイを用いて任意の所定のデバイスのために収集され得る他の多数のシステムベースの属性があるということが理解される。
【００２７】
デバイスドライバＡＰＩおよび他のシステムレベルのＡＰＩもまた、第１の情報パスウェイを用いてアプリケーション内で実行される、より特定の機能を監視するように構成され得る。スキャニング属性（例えば、良い解読の数、悪い解読の数、最も新しいスキャン、最も新しいスキャンの長さ）およびユーザー認証属性（例えば、ログイン回数、ログイン失敗）は、バーコードスキャナアプリケーションが実行する、一部の例示的な機能であり、これらの特定の機能は、第１の情報収集パスウェイを用いて監視され得る。しかし、これらの種類の監視を助長するプロセス独立型のフックは、この精密な尺度の監視が実行される場合には、下位のデバイスドライバおよびシステムレベルのＡＰＩに対する更新としてロードされなくてはならず、そのような更新は、相対的に時間がかかり、厄介なプロセスであり得る。更新デバイスドライバは、配備に先立って、広範囲な試験を必要とする。さらに、デバイスドライバまたはシステムレベルのＡＰＩを変更することは、関連するコンポーネントを不安定にするという危険をもたらす。
【００２８】
第２の情報収集パスウェイは、アプリケーション内で実行される特定の機能の監視をイネーブル化し、そのようなパスウェイの例は、図４で示される。例示的な実施形態において、監視がなされる、または所望され得る各アプリケーションに対するソフトウエアに、判別ＡＰＩ３８および監視ＡＰＩ３９を実装することによって、情報は収集される。さらに具体的には、機能がアプリケーション５１内で実行されるときには、アプリケーションコード３６は、実行されたアプリケーションに関するデータを用いて判別ＡＰＩ３８を呼び出す。判別ＡＰＩ３８は、アプリケーション５１内で実行可能なモジュールであり、監視されるべきデータの種類を認識するように構成される。判別ＡＰＩは、例えばモバイルデバイスオペレータまたはＩＷＭオペレータによって、予めデータを認識するように構成される。判別ＡＰＩ３８がデータを認識するときには、それは、アプリケーション５１が監視されるべきことを決定する。さらに具体的には、アプリケーション内で実行された機能によって生成された、認識されたデータが、監視されるべきデータの種類またはクラスであるということを、判別ＡＰＩ３８は決定する。例示的な実施形態において、判別ＡＰＩ３８は、共用コードで、かつ、多重アプリケーションのプロセス空間の中にマッピングされる、動的なリンクライブラリ（ＤＬＬ）である。言い換えれば、多数のアプリケーションのうちの任意の１つは、判別ＡＰＩ３８を呼び出し得、判別ＡＰＩコードは、呼び出しをしたアプリケーションのコンテクスト内で実行される。
【００２９】
判別ＡＰＩ３８が、データが監視され得ると決定した場合には、監視ＡＰＩ３９は、モバイルデバイス５１のメモリ４４にデータを格納する。ＡＰＩ３８は、判別ＡＰＩ３８のように、アプリケーション５１内で実行可能なモジュールである。メモリ４４は、多数のアプリケーションから監視される、アプリケーション特有の情報の全ての属性に対する、モバイルユニット３１にある中央情報貯蔵所である。任意の特定の、監視されたデータセットは、メモリ４４から収集され得、ワイヤレスエージェント５５を用いてネットワーク機器１０に伝達され得る。ワイヤレスエージェント５５は、メモリ４４から情報を収集および解釈するために、かつ、その情報を翻訳してネットワーク機器１０に通信するために構成され、あるいは様々なプラグインモジュール４６を追加される。ユーザーは、特定の１つのアプリケーションの実行程度の少ない検討しか所望し得ないので、全てのアプリケーション特有のデータを自動的にネットワーク機器に伝達させるよりも、監視ＡＰＩ３９と直接通信するモバイルデバイス３１内に配置されるメモリ４４を有することが有益である。
【００３０】
第２の収集パスウェイを用いた、アプリケーション監視の例示的な方法は、ここで図５を参照しながら記述される。該方法は、アプリケーション機能の実行とともに、ステップ６２で開始される。該機能は、監視される可能性があるように予め決定される、どのようなものでもあり得、機能の実行はうまく行われる必要はない。例えば、該機能は、磁気ストリップを読み取る、成功または不成功の試みを含み得る。
【００３１】
アプリケーション機能が実行された後に、アプリケーション内のモジュールである判別ＡＰＩは、アプリケーションがアプリケーションの実行に関するＡＰＩデータを送るときに、ステップ６４で呼び出される。前述されたように、判別ＡＰＩは、監視されるべきデータを認識するように構成される。
【００３２】
ステップ６６において、判別ＡＰＩは、監視が行われるべきであることを決定する。データがＡＰＩによって認識されない場合には、該方法は停止する。そうでなければ、ＡＰＩは、ステップ６８で、これまたアプリケーション内におけるモジュールである、監視ＡＰＩにデータを提示する。監視ＡＰＩは、次いでステップ７０で、メモリ内にデータを格納する。前述されたように、メモリは、多数のアプリケーションから監視される、全てのアプリケーション特有の情報に対するモバイルユニットの中央情報貯蔵所である。
【００３３】
監視されるデータがメモリ内に格納された後に、ステップ７２に示されるように、ネットワーク機器がデータの送信を要求するまで、該方法は停止される。ネットワーク機器は、モバイルユニットメモリから所定のデータセットを自動的に検索するようにプログラムされ得、または、ユーザーは、必要に応じて、データを検索するようにネットワーク機器を促し得る。
【００３４】
ネットワーク機器がデータの送信を要求する場合には、ワイヤレスエージェント５５は、ステップ７４で、メモリからデータを抽出する。前述されたように、ワイヤレスエージェントは、メモリから情報を収集および解釈するために、かつ、ステップ７６でその譲歩を翻訳し、ネットワーク機器にその情報を通信するために構成され、あるいは様々なプラグインモジュールを追加される。ネットワークにデータが送信された後に、該方法は停止する。
【００３５】
例示的な実施形態において、監視ＡＰＩ３９は、判別ＡＰＩ３８が、アプリケーション５１が監視されるべきであると決定した後に、アプリケーション５１の実行に関する継続的なデータをメモリ４４に自動的に格納するように構成され得る。特に、判別ＡＰＩ３８が、アプリケーションが監視されるべきであると決定した後に、監視ＡＰＩ３９は、判別ＡＰＩ３８によってデータを処理することなく、直接アプリケーションコードから、自動的にデータを検索する。判別ＡＰＩ３８が、監視されるべきデータの検知を失敗することによって、監視は継続されないと決定するまで、監視ＡＰＩ３９は、アプリケーションデータを格納し続け得る。
【００３６】
図５を参照して記述される監視方法は、デバイスドライバＡＰＩのようなシステムレベルのＡＰＩ３２を用いることなく例示的な実施形態において実行されるということが、再び強調される。プロセス独立型の方法を用いたシステムレベルの監視は、多くの目的で有益であるが、監視されている情報は、本質的に、情報を処理しているか、またはそうでなければ使用している、システムレベルのアプリケーションへの接続から抜粋されたものである。結果的に、システムレベルの監視は、特定のアプリケーションがどのように行っているかというような、特定のまたは文脈上の情報ではなく、一般的に包括的な情報を提供する。対照的に、図５で概説される例示的な方法は、監視ＡＰＩをアプリケーションに組み込むことによって、かつアプリケーションコードから直接抽出することによって情報を収集するので、詳細な情報のセットが、モバイルデバイスメモリ４４内で利用可能となり、必要に応じて、最終的にはネットワーク機器１０で利用可能となる。システムレベルの監視と組み合わされるときには、アプリケーションレベルの監視は、モバイルデバイスの動作に対して最大限の視認性を提供し得る。
【００３７】
少なくとも１つの例示的な実施形態が、前記の詳細な記述の中で提示されたが、莫大な数のバリエーションが存在するということが認識されるべきである。１つまたは複数の該例示的な実施形態は、単なる例であり、いかなる場合にも本発明の範囲、適用性、または形態を限定することを意図しないことが、また認識されるべきである。むしろ、前記の詳細な記述は、当業者に１つまたは複数の例示的な実施形態を実装するためのロードマップを提供し得る。特許請求の範囲およびその合法な均等物によって示される本発明の範囲から逸脱することなく、機能および構成要素の配置において様々な変更がなされ得ることが理解されるべきである。
【図面の簡単な説明】
【００３８】
【図１】図１は、ワイヤレスネットワークを概略的に説明する、図である。
【図２】図２は、ワイヤレスネットワークの構成要素である、例示的なモバイルユニットを示す、ブロック図である。
【図３】図３は、ネットワークデバイス間の例示的な通信パスを示す、ブロック図である。
【図４】図４は、本発明の実施形態に従った、モバイルユニットの中のワイヤレスエージェントとアプリケーションとの間の２つの情報収集パスウェイを示す、ブロック図である。
【図５】図５は、本発明の実施形態に従った、アプリケーションを監視するための例示的な方法を示す、流れ図である。
【図１】
2008522509.tif 000003
【図２】
2008522509.tif 000004
【図３】
2008522509.tif 000005
【図４】
2008522509.tif 000006
【図５】
2008522509.tif 000007
【国際調査報告】
2008522509.tif 000008
2008522509.tif 000009