(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0019】
提案される発明は、ウェイクロックを管理し、適切と見なされたとき、アプリケーションに関するウェイクロックを解放するウェイクロックマネージャを実装するステップを必要とする。解放するためのウェイクロックを識別するための一般的な手法は、各ウェイクロックに関して、ウェイクロックが保持されている間、ウェイクロックを保持しているアプリケーションに関するアクティビティを周期的に測定、またはさもなければ決定するステップを必要とする。アプリケーションアクティビティを測定するために使用され得る基準の例には、プロセッサ(たとえば、中央処理装置(CPU)、グラフィックス処理ユニット(GPU)、デジタル信号プロセッサ(DSP)など)使用率/負荷(たとえば、使用されるクロックサイクル)、プロセスランタイム、サービスランタイム、プロセスの数、サービスの数、アプリケーションに関連するサービスによって保持されるカーネル空間ウェイクロックのインスタンス、スクリーン状態(たとえば、前景内のアプリケーション)、ディスクアクティビティ、ネットワークアクティビティ、センサー使用率、メモリ使用率/アクティビティなどがある。
【0020】
そのような基準は、アプリケーションに関連するプロセスおよび/もしくはサービスの各々に関して識別、決定、ならびに/または測定され得る。これらの基準を、たとえば、アプリケーションアクティビティスコアに達するように、重み付けされた線形結合の形で統合することができる。アプリケーションアクティビティスコアが所与のしきい値、たとえば、設定された測定サイクル数を下回る場合、ウェイクロックが解放され得る。測定間隔、アプリケーションアクティビティしきい値、および/または、対応するウェイクロックが解放される前にアプリケーションアクティビティスコアがしきい値を下回らなければならない測定間隔数に関して使用される値は、アプリケーションごとベースで(たとえば、特定のアプリケーションに少なくとも部分的に基づいて)識別、またはさもなければ決定され得る。ウェイクロックを要求するアプリケーションに基づいて、そのような値を設定するために、発見的アルゴリズムを使用することができ、たとえば、音楽再生アプリケーションは、銀行取引アプリケーションのウェイクロック監視パラメータと比べて異なるウェイクロック監視パラメータを有し得る。このようにして、延長されたウェイクロックを必要とすることが予想されないアプリケーションは、ウェイクロックをより早く解放することになる、比較的より積極的なパラメータを有することができ、両方の形の不適切なウェイクロック管理を軽減することに役立つ。不適切に保持されたウェイクロックを解放することは、かなりの電力節約につながる可能性がある。
【0021】
ユーザ空間ウェイクロックは、現在、Android(登録商標)オペレーティングシステムにおいてだけ存在するが、本発明の態様は、ユーザ空間アプリケーションがシステム電力状態を制御することを可能にするいずれのオペレーティングシステムにも適用可能であろう。
【0022】
以下の説明は例を提供するものであり、特許請求の範囲に記載した範囲、適用可能性、または構成を限定するものではない。本開示の趣旨および範囲から逸脱することなく、論じる要素の機能および構成において変更が行われ得る。様々な実施形態は、様々な手順または構成要素を、適宜に省略、置換、または追加することができる。たとえば、説明する方法は、説明する順序とは異なる順序で実行され得、様々なステップを追加、省略、または組み合わせることができる。また、いくつかの実施形態に関して説明する特徴は、他の実施形態において組み合わせられ得る。以下の説明は、DTXおよび間欠送信という用語を交換可能に使用する。
【0023】
最初に
図1を参照すると、本開示の様々な態様によるワイヤレス通信システム100の一例のブロック図を示す。ワイヤレス通信システム100は、複数のアクセスポイント(たとえば、基地局、eNB、WLANアクセスポイント)105と、いくつかのワイヤレス通信デイバスまたはユーザ機器(UE)115と、コアネットワーク130とを含む。アクセスポイント105のうちのいくつかは、基地局コントローラ(図示せず)の制御によりUE115と通信することができ、基地局コントローラは、様々な実施形態では、コアネットワーク130の一部であり得、またはある種のアクセスポイント105(たとえば、基地局もしくはeNB)であり得る。アクセスポイント105のうちのいくつかは、バックホール132を介してコアネットワーク130と制御情報および/またはユーザデータを通信することができる。いくつかの例では、アクセスポイント105のうちのいくつかは、バックホールリンク134を介して互いに、直接または間接的に通信することができ、バックホールリンク134は、ワイヤード通信リンクまたはワイヤレス通信リンクであり得る。ワイヤレス通信システム100は、複数のキャリア(異なる周波数の波形信号)上での動作をサポートし得る。マルチキャリア送信機は、複数のキャリア上で同時に変調信号を送信することができる。たとえば、各通信リンク125は、様々な無線技術に従って変調されたマルチキャリア信号であり得る。各変調信号は、異なるキャリア上で送信され得、制御情報(たとえば、基準信号、制御チャネルなど)、オーバヘッド情報、データなどを搬送することができる。
【0024】
アクセスポイント105は、1つまたは複数のアクセスポイントアンテナを介して、UE115とワイヤレス通信することができる。アクセスポイント105の各々は、それぞれのカバレージエリア110のための通信カバレージを提供し得る。いくつかの実施形態では、アクセスポイント105は、基地局、基地トランシーバ局(BTS:base transceiver station)、無線基地局、無線トランシーバ、基本サービスセット(BSS:basic service set)、拡張サービスセット(ESS:extended service set)、NodeB、進化型NodeB(eNB)、ホームNodeB、ホームeNodeB、WLANアクセスポイント、Wi-Fiノード、または何らかの他の適切な用語で呼ばれ得る。アクセスポイント用のカバレッジエリア110は、カバレッジエリアの一部分のみを構成するセクタ(図示されず)に分割され得る。ワイヤレス通信システム100は、異なるタイプのアクセスポイント(たとえば、マクロ基地局、マイクロ基地局、および/またはピコ基地局)105を含み得る。アクセスポイント105はまた、セルラー無線アクセス技術および/またはWLAN無線アクセス技術などの異なる無線技術を利用することができる。アクセスポイント105は、同じもしくは異なるアクセスネットワークまたはオペレータの配備に関連付けられ得る。同じもしくは異なるタイプのアクセスポイント105のカバレージエリアを含む、同じもしくは異なる無線技術を利用する、および/または同じもしくは異なるアクセスネットワークに属する異なるアクセスポイント105のカバレージエリアは、重複し得る。
【0025】
いくつかの実施形態では、ワイヤレス通信システム100は、LTE/LTE-A通信システム(または、ネットワーク)を含み得、LTE/LTE-A通信システムは、1つもしくは複数のLTE-U動作モードまたは展開シナリオをサポートし得る。他の実施形態では、ワイヤレス通信システム100は、無認可スペクトルおよびLTE-Uとは異なるアクセス技術、または認可スペクトルおよびLTE/LTE-Aとは異なるアクセス技術を使用してワイヤレス通信をサポートすることができる。LTE/LTE-A通信システムでは、発展型NodeB、すなわち、eNBという用語は、一般に、アクセスポイント105を記述するために使用され得る。ワイヤレス通信システム100は、異なるタイプのeNBがその中で様々な地理的領域に対するカバレッジを提供する異種LTE/LTE-A/LTE-E-Uネットワークであり得る。たとえば、各eNB105は、マクロセル、ピコセル、フェムトセル、および/または他のタイプのセルに通信カバレージを提供し得る。ピコセル、フェムトセル、および/または他のタイプのセルのような小さなセルは、低電力ノードすなわちLPNを含み得る。マクロセルは、一般に、比較的大きい地理的エリア(たとえば、半径数キロメートル)をカバーし、ネットワークプロバイダとのサービスに加入しているUEによる無制限アクセスを可能にし得る。ピコセルは、一般に、比較的小さい地理的エリアをカバーすることになり、ネットワークプロバイダとのサービスに加入しているUEによる無制限アクセスを可能にし得る。フェムトセルも、一般に、比較的小さい地理的エリア(たとえば、自宅)をカバーすることになり、無制限アクセスに加えて、フェムトセルとの関連付けを有するUE(たとえば、限定加入者グループ(CSG)中のUE、自宅の中のユーザのUEなど)による制限されたアクセスも実現することができる。マクロセルのためのeNBは、マクロeNBと呼ばれ得る。ピコセルのためのeNBは、ピコeNBと呼ばれ得る。また、フェムトセルのためのeNBは、フェムトeNBまたはホームeNBと呼ばれ得る。eNBは、1つまたは複数(たとえば、2つ、3つ、4つなど)のセルをサポートし得る。
【0026】
コアネットワーク130は、バックホール132(たとえば、S1アプリケーションプロトコルなど)を介してeNB105と通信することができる。eNB105はまた、たとえば、バックホールリンク134(たとえば、X2アプリケーションプロトコルなど)を介しておよび/またはバックホール132を介して(たとえば、コアネットワーク130を通して)、直接的または間接的に、互いに通信することができる。ワイヤレス通信システム100は同期動作または非同期動作をサポートし得る。同期動作では、eNBは類似するフレームタイミングおよび/またはゲーティングタイミングを有することがあり、異なるeNBからの送信は、時間的にほぼ揃えられ得る。非同期動作では、eNBは異なるフレームタイミングおよび/またはゲーティングタイミングを有することがあり、異なるeNBからの送信は、時間的に揃えられないことがある。本明細書で説明する技法は、同期動作または非同期動作のいずれかに使用され得る。
【0027】
UE115は、ワイヤレス通信システム100全体にわたって分散され得、各UE115は固定または移動であり得る。UE115はまた、当業者によって、モバイルデバイス、移動局、加入者局、モバイルユニット、加入者ユニット、ワイヤレスユニット、リモートユニット、ワイヤレス通信デバイス、リモートデバイス、移動加入者局、アクセス端末、モバイル端末、ワイヤレス端末、リモート端末、ハンドセット、ユーザエージェント、モバイルクライアント、クライアント、または何らかの他の適切な用語で呼ばれ得る。UE115は、セルラー電話、携帯情報端末(PDA)、ワイヤレスモデム、ワイヤレス通信デバイス、ハンドヘルドデバイス、タブレットコンピュータ、ラップトップコンピュータ、コードレス電話、腕時計または眼鏡などの着用可能なアイテム、ワイヤレスローカルループ(WLL:wireless local loop)局などであり得る。UE115は、マクロeNB、ピコeNB、フェムトeNB、リレーなどと通信することが可能であり得る。UE115はまた、セルラーアクセスネットワークもしくは他のWWANアクセスネットワーク、またはWLANアクセスネットワークなどの、異なるアクセスネットワークを介して通信することが可能であり得る。
【0028】
ワイヤレス通信システム100内に示す通信リンク125は、(たとえば、UE115からeNB105への)アップリンク(UL)送信を搬送するためのアップリンク、および/または(たとえば、eNB105からUE115への)ダウンリンク(DL)送信を搬送するためのダウンリンクチャネルを含み得る。UL送信は逆方向リンク送信と呼ばれることもあり、一方、DL送信は順方向リンク送信と呼ばれることもある。
【0029】
UE115のうちの1つまたは複数は、その上で実行しているアプリケーションに関するウェイクロックを実装するように構成され得る。したがって、そのようなUE115が基地局105のうちの1つまたは複数とアクティブに通信していないときですら、UE115上でアプリケーションに関するウェイクロックが保持されることによって、UE115がより低電力状態(たとえば、アイドル、中断、またはスリープのモードまたは状態)に入るのを防止することができる。したがって、たとえば、電力を節約するために、UE115に関するウェイクロックを管理することが望ましい場合がある。
【0030】
図2Aは、本開示の様々な態様による、ウェイクロックを管理するように構成されたワイヤレス通信デバイス115-aのブロック
図200-aを示す。いくつかの例では、ワイヤレス通信デバイス115-aは、
図1を参照して説明したワイヤレス通信デバイス115の1つまたは複数の態様の一例であり得る。ワイヤレス通信デバイス115-aはプロセッサでもあり得る。ワイヤレス通信デバイス115-aは、受信機モジュール205、送信機モジュール210、および/またはワイヤレス通信管理モジュール215を含み得る。これらの構成要素の各々は互いに通信することができる。
【0031】
ワイヤレス通信デバイス115-aの構成要素は、個別にまたは集合的に、適用可能な機能のうちのいくつかまたは全部をハードウェアで実行するように適合された1つもしくは複数の特定用途向け集積回路(ASIC)を使用して実装され得る。代替として、機能は、1つもしくは複数の集積回路上の1つもしくは複数の他の処理ユニット(またはコア)によって実行され得る。他の実施形態では、当技術分野で知られている任意の方法でプログラムされ得る他のタイプの集積回路(たとえば、ストラクチャード/プラットフォームASIC、フィールドプログラマブルゲートアレイ(FPGA)、および他のセミカスタムIC)が使用され得る。各ユニットの機能はまた、全体的または部分的に、1つもしくは複数の汎用プロセッサまたは特定用途向けプロセッサによって実行されるようにフォーマットされた、メモリ内で具体化された命令を用いて実装され得る。
【0032】
いくつかの実装形態では、受信機モジュール205は、セルラー受信機および/またはワイヤレスローカルエリアネットワーク(WLAN)受信機などのワイヤレス受信機であってよく、またはそのようなワイヤレス受信機を含み得る。受信機モジュール205は、2つ以上のワイヤレス受信機を含んでもよい。受信機モジュール205は、
図1を参照して説明したワイヤレス通信システム100の1つもしくは複数の通信リンク125などの、1つもしくは複数のワイヤレス通信システムの1つもしくは複数の通信リンク(たとえば、チャネル)を介して、様々なタイプのデータおよび/または制御信号(すなわち、送信)を受信するために使用され得る。
【0033】
いくつかの実装形態では、送信機モジュール210は、セルラー送信機および/またはWLAN送信機などのワイヤレス送信機であってよく、またはそのようなワイヤレス送信機を含み得る。送信機モジュール210は、2つ以上のワイヤレス送信機を含んでもよい。送信機モジュール210は、
図1を参照して説明したワイヤレス通信システム100の1つもしくは複数の通信リンク125などの、1つもしくは複数のワイヤレス通信システムの1つもしくは複数の通信リンク(たとえば、チャネル)を介して、様々なタイプのデータおよび/または制御信号(すなわち、送信)を送信するために使用され得る。
【0034】
いくつかの実施形態では、ワイヤレス通信管理モジュール215は、ワイヤレス通信デバイス115-aのワイヤレス通信を管理するために使用され得る。場合によっては、ワイヤレス通信の管理は、本明細書で説明する、ワイヤレス通信デバイス115-a上のアプリケーションに関するウェイクロックの管理を含み得る。
【0035】
図2Bは、本開示の様々な態様による、ウェイクロックを管理するように構成されたワイヤレス通信デバイス115-bのブロック
図200-bを示す。いくつかの例では、ワイヤレス通信デバイス115-bは、
図1および/または
図2Aを参照して説明したワイヤレス通信デバイス115の1つまたは複数の態様の一例であり得る。ワイヤレス通信デバイス115-bはプロセッサでもあり得る。ワイヤレス通信デバイス115-bは、受信機モジュール205、ワイヤレス通信管理モジュール215-a、および/または送信機モジュール210を含み得る。これらの構成要素の各々は互いに通信することができる。
【0036】
ワイヤレス通信デバイス115-bの構成要素は、個別にまたは集合的に、適用可能な機能のうちのいくつかまたは全部をハードウェアで実行するように適合された1つもしくは複数のASICを使用して実装され得る。代替として、機能は、1つもしくは複数の集積回路上の1つもしくは複数の他の処理ユニット(またはコア)によって実行され得る。他の実施形態では、当技術分野で知られている任意の方法でプログラムされ得る他のタイプの集積回路(たとえば、ストラクチャード/プラットフォームASIC、FPGA、および他のセミカスタムIC)が使用され得る。各ユニットの機能はまた、全体的または部分的に、1つもしくは複数の汎用プロセッサまたは特定用途向けプロセッサによって実行されるようにフォーマットされた、メモリ内で具体化された命令を用いて実装され得る。
【0037】
いくつかの実施形態では、受信機モジュール205および送信機モジュール210は、
図2Aを参照して説明した受信機モジュール205および送信機モジュール210と同様に構成され得る。
【0038】
いくつかの実施形態では、ワイヤレス通信管理モジュール215aは、
図2Aを参照して説明したワイヤレス通信管理モジュール215の一例であり得、ウェイクロック管理モジュール220を含み得る。これらの構成要素の各々は互いに通信することができる。
【0039】
ウェイクロック管理モジュール220は、本明細書で説明するウェイクロック管理のための様々な動作を実行するために使用され得る。ウェイクロック管理モジュール220は、適宜にまたは必要に応じて、ワイヤレス通信管理モジュール215の他の構成要素と協働して、または連携して、そのような動作を実行することができる。いくつかの実施形態では、ウェイクロック管理モジュール220は、1つのアプリケーション(または、複数のアプリケーション)のアクティビティを監視し、監視されたアクティビティを使用して、そのアプリケーションに関して保持されたウェイクロック(または、各アプリケーションに関するそれぞれのウェイクロック)を解放するかどうかを決定するように構成され得る。
【0040】
たとえば、アプリケーションに関してウェイクロックがデバイス上で保持されているとき、ウェイクロック管理モジュール220は、そのアプリケーションのアクティビティを監視することができる。ウェイクロック管理モジュール220は、そのアプリケーションのアクティビティが、1つまたは複数の監視間隔にわたってなど、ある時間量にわたって特定のしきい値を下回るかどうかを決定することができる。アプリケーションのアクティビティがある時間量にわたって(たとえば、所望の監視間隔数にわたって)特定のしきい値を下回る場合、ウェイクロック管理モジュール220は、そのアプリケーションに関連するウェイクロックが解放されるべきかどうかを決定することができる。ウェイクロック管理モジュール220は、その場合、ウェイクロック自体を解放することができるか、またはウェイクロックが解放されることを命令/要求することができる。
【0041】
図2Cは、本開示の様々な態様による、ウェイクロックを管理するように構成されたワイヤレス通信デバイス115-cのブロック
図200-cを示す。いくつかの例では、ワイヤレス通信デバイス115-cは、
図1、
図2A、および/または
図2Bを参照して説明したワイヤレス通信デバイス115の1つまたは複数の態様の一例であり得る。ワイヤレス通信デバイス115-cはプロセッサでもあり得る。デバイス115-cは、受信機モジュール205、ワイヤレス通信管理モジュール215-b、および/または送信機モジュール210を含み得る。これらの構成要素の各々は互いに通信することができる。
【0042】
ワイヤレス通信デバイス115-cの構成要素は、個別にまたは集合的に、適用可能な機能のうちのいくつかまたは全部をハードウェアで実行するように適合された1つもしくは複数のASICを使用して実装され得る。代替として、機能は、1つもしくは複数の集積回路上の1つもしくは複数の他の処理ユニット(またはコア)によって実行され得る。他の実施形態では、当技術分野で知られている任意の方法でプログラムされ得る他のタイプの集積回路(たとえば、ストラクチャード/プラットフォームASIC、FPGA、および他のセミカスタムIC)が使用され得る。各ユニットの機能はまた、全体的または部分的に、1つもしくは複数の汎用プロセッサまたは特定用途向けプロセッサによって実行されるようにフォーマットされた、メモリ内で具体化された命令を用いて実装され得る。
【0043】
いくつかの実施形態では、受信機モジュール205および送信機モジュール210は、
図2Aを参照して説明した受信機モジュール205および送信機モジュール210と同様に構成され得る。
【0044】
いくつかの実施形態では、ワイヤレス通信管理モジュール215-bは、
図2Aおよび/または
図2Bを参照して説明したワイヤレス通信管理モジュール215の一例であり得、ウェイクロック管理モジュール220、カウンターモジュール225、および/または監視モジュール230を含み得る。これらの構成要素の各々は互いに通信することができる。
【0045】
ウェイクロック管理モジュール220は、
図2Bを参照して説明したウェイクロック管理モジュール220の一例であり得、デバイス115-c上のアプリケーションに関する1つまたは複数のウェイクロックを管理するために使用され得る。したがって、ウェイクロック管理モジュール220は、本明細書で説明するウェイクロック管理のための様々な動作を実行するために使用され得る。ウェイクロック管理モジュール220は、適宜にまたは必要に応じて、ワイヤレス通信管理モジュール215-bの他の構成要素と協働して、または連携して、そのような動作を実行することができる。いくつかの実施形態では、ワイヤレス通信管理モジュール215-bは、カウンターモジュール225および/または監視モジュール230を含み得る。
【0046】
監視モジュール230は、1つのウェイクロック(または、複数のウェイクロック)が保持されるアプリケーション(または、複数のアプリケーション)のアクティビティを監視するように構成され得る。監視モジュール230は、ウェイクロック管理モジュール220が、監視されたアクティビティを使用してそのアプリケーションに関して保持されたウェイクロックを解放するかどうかを決定することができるように、アプリケーションのアクティビティに関する情報をウェイクロック管理モジュール220に提供することができる。
【0047】
カウンターモジュール225は、アプリケーションのアクティビティが特定のしきい値を下回る監視間隔数を追跡するように構成され得る。たとえば、ウェイクロック管理モジュール220は、アプリケーションのアクティビティが特定の監視間隔に関するしきい値を下回ると決定することができ、カウンターは増分され得る。増分された後のカウンターの値が所望の監視間隔数に等しい場合、ウェイクロック管理モジュール220は、そのアプリケーションに関するウェイクロックを解放すべきであると決定することができる。したがって、所望の監視間隔数が1よりも大きいとき、その所望の数は、アプリケーションのアクティビティが、ウェイクロック管理モジュール220がそのアプリケーションに関するウェイクロックを解放すべきであると決定するしきい値を下回る連続監視間隔数を示し得る。
【0048】
図2Dは、本開示の様々な態様による、ウェイクロックを管理するように構成されたワイヤレス通信デバイス115-dのブロック
図200-dを示す。いくつかの例では、ワイヤレス通信デバイス115-dは、
図1、
図2A、
図2B、および/または
図2Cを参照して説明したワイヤレス通信デバイス115の1つもしくは複数の態様の一例であり得る。ワイヤレス通信デバイス115-dはプロセッサでもあり得る。デバイス115-dは、受信機モジュール205、ワイヤレス通信管理モジュール215-c、および/または送信機モジュール210を含み得る。これらの構成要素の各々は互いに通信することができる。
【0049】
ワイヤレス通信デバイス115-dの構成要素は、個別にまたは集合的に、適用可能な機能のうちのいくつかまたは全部をハードウェアで実行するように適合された1つもしくは複数のASICを使用して実装され得る。代替として、機能は、1つもしくは複数の集積回路上の1つもしくは複数の他の処理ユニット(またはコア)によって実行され得る。他の実施形態では、当技術分野で知られている任意の方法でプログラムされ得る他のタイプの集積回路(たとえば、ストラクチャード/プラットフォームASIC、FPGA、および他のセミカスタムIC)が使用され得る。各ユニットの機能はまた、全体的または部分的に、1つもしくは複数の汎用プロセッサまたは特定用途向けプロセッサによって実行されるようにフォーマットされた、メモリ内で具体化された命令を用いて実装され得る。
【0050】
いくつかの実施形態では、受信機モジュール205および送信機モジュール210は、
図2Aを参照して説明した受信機モジュール205および送信機モジュール210と同様に構成され得る。
【0051】
いくつかの実施形態では、ワイヤレス通信管理モジュール215-cは、
図2Aおよび/または
図2Bを参照して説明したワイヤレス通信管理モジュール215の一例であり得、ウェイクロック管理モジュール220-a、カウンターモジュール225-a、および/または監視モジュール230を含み得る。これらの構成要素の各々は互いに通信することができる。
【0052】
ウェイクロック管理モジュール220-aは、
図2Bおよび/または
図2Cを参照して説明したウェイクロック管理モジュール220の一例であり得、デバイス115-d上のアプリケーションに関する1つまたは複数のウェイクロックを管理するために使用され得る。したがって、ウェイクロック管理モジュール220-aは、本明細書で説明するウェイクロック管理のための様々な動作を実行するために使用され得る。ウェイクロック管理モジュール220-aは、適宜にまたは必要に応じて、ワイヤレス通信管理モジュール215-cの他の構成要素と協働して、または連携して、そのような動作を実行することができる。
【0053】
いくつかの実施形態では、ウェイクロック管理モジュール220-aは、ウェイクロック決定モジュール235、メトリックモジュール240、および/または間隔/しきい値決定モジュール245を含み得る。ウェイクロック決定モジュール235は、デバイス115-d上のアプリケーションに関して保持されたウェイクロックを解放すべきかどうかを決定するように構成され得る。メトリックモジュール240は、アプリケーションのアクティビティに関する1つまたは複数の基準を識別するように構成され得る。たとえば、メトリックモジュール240は、プロセッサ使用率/負荷、プロセスランタイム、サービスランタイム、プロセスの数、サービスの数、アプリケーションに関連するサービスによって保持されるカーネル空間ウェイクロックのインスタンス、スクリーン状態、ディスクアクティビティ、ネットワークアクティビティ、メモリ使用率/アクティビティ、およびセンサー使用率のうちの1つまたは複数に対応する基準を識別するように構成され得る。いくつかの実施形態では、メトリックモジュール240(または、ウェイクロック管理モジュール220-a、もしくはワイヤレス通信管理モジュール215-c)は、(たとえば、その属性、その動作/機能、そのタイプまたはクラスなど)アプリケーションに少なくとも部分的に基づいて、その基準を識別するように構成され得る。メトリックモジュール240は、そのアプリケーションに関連する各プロセスおよび/または各サービスに関する少なくとも1つの基準を識別するように構成され得る。
【0054】
間隔/しきい値決定モジュール245は、アプリケーションの監視されたアクティビティに関するしきい値を識別、またはさもなければ決定するように構成され得る。いくつかの実施形態では、しきい値は、(たとえば、その属性、その動作/機能、そのタイプまたはクラスなど)アプリケーションに少なくとも部分的に基づいて決定され得る。代替または追加として、間隔/しきい値決定モジュール245は、アプリケーションに関する監視間隔を識別、またはさもなければ決定するように構成され得る。いくつかの実施形態では、監視間隔はまた、アプリケーションに少なくとも部分的に基づいて決定され得る。間隔/しきい値決定モジュール245はまた、アプリケーションのアクティビティが、ウェイクロックが解放されるべきであることを示す特定のしきい値を下回る監視間隔数を識別、またはさもなければ決定するように構成され得る。監視間隔数は、アプリケーションに少なくとも部分的に基づいて決定され得、上で論じた連続的な監視間隔数であり得る。
【0055】
カウンターモジュール225-aは、
図2Cを参照して説明したカウンターモジュール225の一例であり得、アプリケーションのアクティビティが特定のしきい値を下回る監視間隔数を追跡するために使用され得る。カウンターモジュール225-aは、カウンターコントローラ250および/またはカウンター255を含み得る。
【0056】
監視モジュール230は、
図2Cを参照して説明した監視モジュール230の一例であり得、1つのウェイクロック(または、複数のウェイクロック)が保持されるアプリケーション(または、複数のアプリケーション)のアクティビティを監視するように構成され得る。監視モジュール230は、アプリケーションのアクティビティに関する情報をメトリックモジュール240に提供することができる。メトリックモジュール240は、アプリケーションのアクティビティに関して提供された情報を使用して、1つまたは複数の基準を生成することができる。いくつかの実施形態では、メトリックモジュール240は、複数の基準を生成するように構成され得る。そのような場合、メトリックモジュール240は、現在の監視間隔にわたるアプリケーションのアクティビティスコアを取得するために、複数の基準を統合するように構成され得る。たとえば、複数の基準を重み付けされた線形結合の形で統合することができる。メトリックモジュール240は、各監視間隔に関するアクティビティスコアを生成することができる。ウェイクロック決定モジュール235(または、ウェイクロック管理モジュール220-a)は、アクティビティスコアをしきい値と比較し、アクティビティスコアが決定された監視間隔数に関するしきい値未満である場合、ウェイクロック決定モジュール235は、アプリケーションに関するウェイクロックを解放すべきであると決定することができる。
【0057】
アクティビティスコアが決定された監視間隔数に関するしきい値未満であるかどうかを決定するために、ウェイクロック決定モジュール235は、アクティビティスコアが現在の監視間隔に関するしきい値に満たないたびに、カウンター255を増分するようにカウンターコントローラ250に命令することができる。アクティビティスコアが現在の監視間隔に関するしきい値未満でない場合、ウェイクロック決定モジュール235は、カウンター255をリセットするようにカウンターコントローラ250に命令することができる。カウンター255の値は、カウンター値を決定された監視間隔数と比較することができるウェイクロック決定モジュール235によって提供または取得され得る。カウンター値が決定された監視間隔数に等しい場合、ウェイクロック管理モジュール235は、そのアプリケーションに関するウェイクロックを解放すべきであると決定することができる。
【0058】
代替で、メトリックモジュール240は基準を統合せずに、複数の基準を生成することが可能である。そのような場合、各基準は比較されることになる、対応するしきい値を有し得る。ウェイクロック決定モジュール235は、適切な比較を行うことができ、その比較の結果を使用して、ウェイクロックを解放すべきかどうかを決定することができる。たとえば、ウェイクロック決定モジュール235は、基準のすべて、ある数の基準、またはある割合の基準が現在の監視間隔に関する対応するしきい値、決定された監視間隔数、または決定された連続的な監視間隔数未満である場合、ウェイクロックを解放すべきであると決定することができる。
【0059】
図3は、本開示の様々な態様による、ウェイクロックを管理するように構成されたワイヤレス通信デバイス115-eのブロック
図300を示す。ワイヤレス通信デバイス115-eは、様々な構成を有し得、パーソナルコンピュータ(たとえば、ラップトップコンピュータ、ネットブックコンピュータ、タブレットコンピュータなど)、セルラー電話、PDA、デジタルビデオレコーダ(DVR:digital video recorder)、インターネットアプライアンス、ゲームコンソール、電子書籍リーダなどに含まれ得、またはそれらの一部であり得る。ワイヤレス通信デバイス115-eは、場合によっては、モバイル動作を容易にするために、小型バッテリーなどの内部電源(図示せず)を有し得る。いくつかの例では、ワイヤレス通信デバイス115-eは、
図1、
図2A、
図2B、
図2C、および/または
図2Dを参照して説明したワイヤレス通信デバイス115のうちの1つの1つもしくは複数の態様の一例であり得る。ワイヤレス通信デバイス115-eは、
図1、
図2A、
図2B、
図2C、および/または
図2Dを参照して説明した特徴ならびに機能のうちの少なくともいくつかを実装するように構成され得る。ワイヤレス通信デバイス115-eは、
図1を参照して説明した基地局/アクセスポイント105のうちの1つまたは複数と通信するように構成され得る。
【0060】
ワイヤレス通信デバイス115-eは、(アンテナ305によって表される)少なくとも1つのアンテナ、(トランシーバモジュール310によって表される)少なくとも1つのトランシーバモジュール、ワイヤレス通信管理モジュール315、プロセッサモジュール320、および/またはメモリモジュール325を含み得る。ワイヤレス通信デバイス115-eはまた、ウェイクロック管理モジュール335、カウンター340、および/またはタイマー345を含み得る。これらのコンポーネントの各々は、1つもしく複数のバス350を通じて、互いに、直接または間接的に通信することができる。
【0061】
メモリモジュール325は、ランダムアクセスメモリ(RAM)および/または読出し専用メモリ(ROM)を含み得る。メモリモジュール325は、実行されると、プロセッサモジュール320に、ウェイクロックを管理するための、本明細書で説明する様々な機能を実行させるように構成された命令を含むコンピュータ可読、コンピュータ実行可能ソフトウェア(SW)コード330を記憶することができる。代替として、ソフトウェアコード330は、プロセッサモジュール320によって直接実行可能ではなくてもよいが、(たとえばコンパイルされ実行されると)ワイヤレス通信デバイス115-eに本明細書で説明する様々な機能を実施させるように構成されてもよい。
【0062】
プロセッサモジュール320は、インテリジェントハードウェアデバイス、たとえば、CPU、マイクロコントローラ、ASICなどを含み得る。プロセッサモジュール320は、トランシーバモジュール310を介して受信された情報、および/または、アンテナ305を介して送信するためにトランシーバモジュール310に送られるべき情報を処理することができる。プロセッサモジュール320は、単独で、またはワイヤレス通信管理モジュール315、ウェイクロック管理モジュール335、カウンター340、および/またはタイマー345とともに、本明細書で説明するウェイクロックを管理する様々な態様を対処することができる。
【0063】
トランシーバモジュール310は、パケットを変調し、送信するためのアンテナ305に変調されたパケットを提供し、アンテナ305から受信されたパケットを復調するように構成されたモデムを含み得る。トランシーバモジュール310は、場合によっては、1つまたは複数の送信機モジュールおよび1つまたは複数の別個の受信機モジュールとして実装され得る。トランシーバモジュール310は、1つもしくは複数のアクセスポイント105または他のデバイスとアンテナ305を介して双方向に通信するように構成され得る。ワイヤレス通信デバイス115-eは、単一のアンテナ305を含み得るが、ワイヤレス通信デバイス115-eが複数のアンテナ305を含み得る実施形態が存在し得る。
【0064】
ワイヤレス通信管理モジュール315および/またはウェイクロック管理モジュール335は、
図2B、
図2C、および/または
図2Dを参照して説明した、ワイヤレス通信デバイス115-eに関するウェイクロック管理に関するモジュールのうちのいくつかもしくはすべてを実行および/または制御するように構成され得る。ワイヤレス通信管理モジュール315および/もしくはウェイクロック管理モジュール335またはそれらの一部はプロセッサを含むことが可能であり、かつ/あるいはワイヤレス通信管理モジュール315および/またはウェイクロック管理モジュール335の機能のうちのいくつかもしくはすべては、プロセッサモジュール320によって、かつ/またはプロセッサモジュール320とともに実行され得る。カウンター340は、ウェイクロック管理動作専用であってよく、または複数の用途のために利用可能であり得る、ワイヤレス通信デバイス115-eのいくつかのカウンターのうちの1つであってもよい。タイマー345は、所望の監視間隔を実行するために使用され得る。いくつかの実施形態では、タイマー345は、ワイヤレス通信デバイス115-eの内部クロックによって実装され得る。
【0065】
図4は、本開示の様々な態様による、ウェイクロックを管理するための方法400の一例を示すフローチャートである。明快のために、
図1、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信デバイス115のうちの1つもしくは複数の態様を参照して、方法400について以下で説明する。いくつかの実施形態では、ワイヤレス通信デバイス115のうちの1つのようなワイヤレスデバイスは、下で説明する機能を実行するために、ワイヤレス通信デバイス115の機能要素を制御するためにコードの1つまたは複数のセットを実行し得る。
【0066】
ブロック405で、ワイヤレス通信デバイス115上でウェイクロックが保持されるアプリケーションのアクティビティを監視することができる。そのような監視は、たとえば、アプリケーションに関するウェイクロックが設けられるときに開始し得る。ブロック405での動作は、
図2A、
図2B、
図2C、
図2D、および/もしくは
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/または監視モジュール230によって実行され得る。
【0067】
ブロック410で、アプリケーションの監視されたアクティビティを使用して、ウェイクロックを解放するかどうかを決定することができる。たとえば、アプリケーションの監視されたアクティビティがしきい値未満である場合、ワイヤレス通信デバイス115は、そのアプリケーションに関連するウェイクロックを解放すべきであると決定することができる。ブロック410での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/またはウェイクロック決定モジュール235によって実行され得る。
【0068】
したがって、方法400はワイヤレス通信デバイス内でウェイクロックを管理することを実現し得る。方法400は、単に1つの実装形態であること、および、方法400の動作は、他の実装形態が可能であるように再配置、またはさもなければ修正され得ることに留意されたい。
【0069】
図5は、本開示の様々な態様による、ウェイクロックを管理するための方法500の一例を示すフローチャートである。明快のために、
図1、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信デバイス115のうちの1つもしくは複数の態様を参照して、方法500について以下で説明する。いくつかの実施形態では、ワイヤレス通信デバイス115のうちの1つのようなワイヤレスデバイスは、下で説明する機能を実行するために、ワイヤレス通信デバイス115の機能要素を制御するためにコードの1つまたは複数のセットを実行し得る。
【0070】
ブロック505で、ウェイクロックが保持されるアプリケーションのアクティビティを監視することができる。上記のように、ブロック505での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/または監視モジュール230によって実行され得る。
【0071】
ブロック510で、アプリケーションのアクティビティに関する少なくとも1つの基準を識別することができる。上で論じたように、基準は、プロセッサ使用率/負荷、プロセスランタイム、サービスランタイム、プロセスの数、サービスの数、アプリケーションに関連するサービスに関して保持されるカーネル空間ウェイクロックのインスタンス、スクリーン状態、ディスクアクティビティ、ネットワークアクティビティ、メモリ使用率/アクティビティ、およびセンサー使用率のうちの1つまたは複数に対応し得る。アプリケーションに関連する各プロセスおよび/またはサービスに関する1つもしくは複数の基準を識別することができる。ブロック510での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/またはメトリックモジュール240によって実行され得る。
【0072】
ブロック515で、アプリケーションのアクティビティに関する少なくとも1つの基準をしきい値と比較することができる。上で論じたように、しきい値は、アプリケーションに少なくとも部分的に基づき得る。いくつかの実施形態では、複数の基準に対応する複数のしきい値を識別、またはさもなければ決定することができる。そのような実施形態では、各基準の値は対応するしきい値と比較され得る。ブロック515での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/またはウェイクロック決定モジュール235によって実行され得る。
【0073】
ブロック520で、比較の結果を使用して、ウェイクロックを解放するかどうかを決定することができる。単一の基準が単純な場合、すなわち、その単一の基準がしきい値未満である場合、ワイヤレス通信デバイス115は、そのアプリケーションに関連するウェイクロックを解放すべきであると決定することができる。複数の基準の場合、適宜にまたは必要に応じて、基準のうちの1つ、基準のうちのいくつか、または基準のすべてがしきい値未満である場合、ワイヤレス通信デバイス115はそのアプリケーションに関連するウェイクロックを解放すべきであると決定することができる。ブロック520での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/またはウェイクロック決定モジュール235によって実行され得る。
【0074】
したがって、方法500はワイヤレス通信デバイス内でウェイクロックを管理することを実現し得る。方法500は、単に1つの実装形態であること、および、方法500の動作は、他の実装形態が可能であるように再配置、またはさもなければ修正され得ることに留意されたい。
【0075】
図6は、本開示の様々な態様による、ウェイクロックを管理するための方法600の一例を示すフローチャートである。明快のために、
図1、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信デバイス115のうちの1つもしくは複数の態様を参照して、方法600について以下で説明する。いくつかの実施形態では、ワイヤレス通信デバイス115のうちの1つのようなワイヤレスデバイスは、下で説明する機能を実行するために、ワイヤレス通信デバイス115の機能要素を制御するためにコードの1つまたは複数のセットを実行し得る。
【0076】
ブロック605で、ウェイクロックが保持されるアプリケーションのアクティビティを監視することができる。上記のように、ブロック605での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/または監視モジュール230によって実行され得る。
【0077】
ブロック610で、アプリケーションのアクティビティに関する複数の基準を識別することができる。上で論じたように、基準は、プロセッサ使用率/負荷、プロセスランタイム、サービスランタイム、プロセスの数、サービスの数、アプリケーションに関連するサービスに関して保持されるカーネル空間ウェイクロックのインスタンス、スクリーン状態、ディスクアクティビティ、ネットワークアクティビティ、メモリ使用率/アクティビティ、およびセンサー使用率のうちの1つまたは複数に対応し得る。アプリケーションに関連する各プロセスおよび/またはサービスに関する1つもしくは複数の基準を識別することができる。ブロック610での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/またはメトリックモジュール240によって実行され得る。
【0078】
ブロック615で、アクティビティスコアを生成、またはさもなければ取得するために、アプリケーションのアクティビティに関する基準を統合することができる。上で論じたように、この統合は複数の基準の重み付けされた線形結合であり得る。ブロック615での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、ウェイクロック決定モジュール235、および/またはメトリックモジュール240によって実行され得る。
【0079】
ブロック620で、アプリケーションのアクティビティスコアをしきい値と比較することができる。上で論じたように、しきい値は、アプリケーションに少なくとも部分的に基づき得る。ブロック620での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、ウェイクロック決定モジュール235、および/またはメトリックモジュール240によって実行され得る。
【0080】
ブロック625で、比較の結果を使用して、ウェイクロックを解放するかどうかを決定することができる。アプリケーションスコアがしきい値未満である場合、ワイヤレス通信デバイス115は、そのアプリケーションに関連するウェイクロックを解放すべきであると決定することができる。ブロック625での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/またはウェイクロック決定モジュール235によって実行され得る。
【0081】
したがって、方法600はワイヤレス通信デバイス内でウェイクロックを管理することを実現し得る。方法600は、単に1つの実装形態であること、および、方法600の動作は、他の実装形態が可能であるように再配置、またはさもなければ修正され得ることに留意されたい。
【0082】
図7は、本開示の様々な態様による、ウェイクロックを管理するための方法700の一例を示すフローチャートである。明快のために、
図1、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信デバイス115のうちの1つもしくは複数の態様を参照して、方法700について以下で説明する。いくつかの実施形態では、ワイヤレス通信デバイス115のうちの1つのようなワイヤレスデバイスは、下で説明する機能を実行するために、ワイヤレス通信デバイス115の機能要素を制御するためにコードの1つまたは複数のセットを実行し得る。
【0083】
ブロック705で、ウェイクロックが保持されるアプリケーションを識別、またはさもなければ、決定することができる。これは、適宜にまたは必要に応じて、ウェイクロックが設けられるとき、またはアプリケーションがウェイクロックを要求するときに実行され得る。ブロック705での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/または間隔/しきい値決定モジュール245によって実行され得る。
【0084】
ブロック710で、監視間隔を識別、またはさもなければ決定することができる。上で論じたように、監視間隔は、アプリケーションに少なくとも部分的に基づき得る。これも、適宜にまたは必要に応じて、ウェイクロックが設けられるとき、またはアプリケーションがウェイクロックを要求するときに実行され得る。ブロック710での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/または間隔/しきい値決定モジュール245によって実行され得る。代替で、ブロック710での動作は、たとえば、監視間隔があらかじめ決定されているかまたはあらかじめ設定されている場合、省略されてよい。
【0085】
ブロック715で、しきい値を識別、またはさもなければ決定することができる。上で論じたように、しきい値はまた、アプリケーションに少なくとも部分的に基づき得る。これも、適宜にまたは必要に応じて、ウェイクロックが設けられるとき、またはアプリケーションがウェイクロックを要求するときに実行され得る。ブロック715での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/または間隔/しきい値決定モジュール245によって実行され得る。代替で、ブロック715での動作は、たとえば、しきい値があらかじめ決定されているかまたはあらかじめ設定されている場合、省略されてよい。
【0086】
ブロック720で、アプリケーションのアクティビティ(または、対応する表現)がしきい値を下回る監視間隔数は、ウェイクロックを解放すべきであること、識別、またはさもなければ決定され得ることを示すことができる。上で論じたように、監視間隔数は、アプリケーションに少なくとも部分的に基づき得る。これも、適宜にまたは必要に応じて、ウェイクロックが設けられるとき、またはアプリケーションがウェイクロックを要求するときに実行され得る。ブロック720での動作は、
図2A、
図2B、
図2C、
図2D、および/もしくは
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/または間隔/しきい値決定モジュール245によって実行され得る。代替で、ブロック720での動作は、たとえば、監視間隔数があらかじめ決定されているかまたはあらかじめ設定されている場合、省略されてよい。
【0087】
ブロック725で、アプリケーションのアクティビティに関する複数の基準を識別することができる。上で論じたように、基準は、プロセッサ使用率/負荷、プロセスランタイム、サービスランタイム、プロセスの数、サービスの数、アプリケーションに関連するサービスに関して保持されるカーネル空間ウェイクロックのインスタンス、スクリーン状態、ディスクアクティビティ、ネットワークアクティビティ、メモリ使用率/アクティビティ、およびセンサー使用率のうちの1つまたは複数に対応し得る。アプリケーションに関連する各プロセスおよび/またはサービスに関する1つもしくは複数の基準を識別することができる。これも、適宜にまたは必要に応じて、ウェイクロックが設けられるとき、またはアプリケーションがウェイクロックを要求するときに実行され得る。ブロック725での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/またはメトリックモジュール240によって実行され得る。代替で、ブロック725での動作は、たとえば、ウェイクロックを管理するために使用されることになる基準があらかじめ決定されているかまたはあらかじめ設定されている場合、省略されてよい。
【0088】
ブロック730で、ウェイクロックが保持されるアプリケーションのアクティビティを監視することができる。ブロック730での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、および/または監視モジュール230によって実行され得る。
【0089】
ブロック735で、監視された基準を使用して、アクティビティスコアを生成、決定、またはさもなければ取得することができる。いくつかの実施形態では、アクティビティスコアは、監視された基準を統合することによって取得され得る。上で論じたように、この統合は監視された基準の重み付けされた線形結合であり得る。ブロック735での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、ウェイクロック決定モジュール235、および/またはメトリックモジュール240によって実行され得る。
【0090】
ブロック740で、アプリケーションのアクティビティスコアを決定されたしきい値と比較することができる。ブロック740での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、ウェイクロック決定モジュール235、および/またはメトリックモジュール240によって実行され得る。
【0091】
ブロック745で、アクティビティスコアが決定されたしきい値未満であるかどうかを決定することができる。そうでない場合、本方法はブロック750に続くことができ、ここでカウンターをリセットすることができる。その後、本方法はブロック730に戻り、アプリケーションのアクティビティを監視し続けることができる。ブロック750での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、ウェイクロック決定モジュール235、カウンターモジュール225、カウンターコントローラ250、および/またはカウンター255/340によって実行され得る。
【0092】
アクティビティスコアが決定されたしきい値未満である場合、本方法はブロック755に飛び、ここでカウンターを増分することができる。ブロック755での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、ウェイクロック決定モジュール235、カウンターモジュール225、カウンターコントローラ250、および/またはカウンター255/340によって実行され得る。
【0093】
ブロック760で、(ブロック755で増分された)カウンターの現在の値が識別された監視間隔数(ブロック720)に等しいかどうかを決定することができる。示されていないが、この決定を可能にするための比較動作が生じ得る。カウンター値が識別された監視間隔数に等しくない場合、本方法はブロック730に戻り、アプリケーションのアクティビティを監視し続けることができる。ブロック760での動作は、
図2A、
図2B、
図2C、
図2D、および/または
図3を参照して説明したワイヤレス通信管理モジュール215/315、ウェイクロック管理モジュール220/335、ウェイクロック決定モジュール235、カウンターモジュール225、カウンターコントローラ250、および/またはカウンター255/340によって実行され得る。
【0094】
カウンター値が識別された監視間隔数に等しい場合、本方法はブロック765に続くことができ、ここでウェイクロックを解放することができる。したがって、ウェイクロックを解放するかどうかの決定は、カウンター値が識別された監視間隔数に等しいかどうかに少なくとも部分的に基づき得る。この例では、アプリケーションに関するアクティビティスコアがしきい値未満でない場合(たとえば、監視間隔の間、アプリケーションが十分にアクティブである場合)だけカウンターはリセットされ、はカウンター値が識別された監視間隔数に等しくなるまで(さもなければ、本方法が終了しない限り)アプリケーションのアクティビティの監視は続くため、アクティビティスコアは、ウェイクロックが解放されるために識別された連続監視間隔数に関して識別されたしきい値未満になる。
【0095】
したがって、方法700はワイヤレス通信デバイス内でウェイクロックを管理することを実現し得る。方法700は、単に1つの実装形態であること、および、方法700の動作は、他の実装形態が可能であるように再配置または他の方法で修正され得ることに留意されたい。
図7に示されていないが、方法700のブロック765に達する以外の何らかの理由でウェイクロックが解放される場合、所与のアプリケーションに関する方法を中止するために適切な機構を実装することができる。
【0096】
添付の図面に関連して上述した詳細な説明は、例示的な実施形態を説明し、特許請求の範囲内で実装され得る、または特許請求の範囲内にある実施形態のみを表してはいない。本明細書全体にわたって使用される「例示的」という用語は、「一例、実例、または例示として役立つ」ことを意味し、「好ましい」または「他の実施形態よりも有利な」を意味するものではない。詳細な説明は、説明した技術の理解を提供する目的のための具体的な詳細を含む。これらの技術は、しかしながら、これらの具体的な詳細なしに実施され得る。いくつかの例では、周知の構造およびデバイスは、説明した実施形態の概念を不明瞭にすることを避けるために、ブロック図形式で示されている。
【0097】
様々な異なる技術および技法のうちのいずれかを使用して、情報および信号が表され得る。たとえば、上の説明全体にわたって言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場もしくは磁性粒子、光学場もしくは光学粒子、またはそれらの任意の組合せによって表され得る。
【0098】
本明細書で説明する技法は、CDMA、TDMA、FDMA、OFDMA、SC-FDMA、および他のシステムなどの様々なワイヤレス通信システムに使用され得る。「システム」および「ネットワーク」という用語は、しばしば互換的に使用される。CDMAシステムは、CDMA2000、ユニバーサル地上無線アクセス(UTRA:Universal Terrestrial Radio Access)、などの無線技術を実装し得る。CDMA2000は、IS-2000規格、IS-95規格、およびIS-856規格をカバーする。IS-2000リリース0およびAは、通常、CDMA2000 1X、1Xなどと呼ばれる。IS-856(TIA-856)は、通常、CDMA2000 1xEV-DO、高速パケットデータ(HRPD)などと呼ばれる。UTRAは、広帯域CDMA(WCDMA(登録商標))と、CDMAの他の変形態とを含む。TDMAシステムは、モバイル通信用グローバルシステム(GSM(登録商標):Global System for Mobile Communications)などの無線技術を実装し得る。OFDMAシステムは、ウルトラモバイルブロードバンド(UMB:Ultra Mobile Broadband)、発展型UTRA(E-UTRA:Evolved UTRA)、IEEE802.11(Wi-Fi)、IEEE802.16(WiMAX)、IEEE802.20、Flash-OFDMなどの無線技術を実装し得る。UTRAおよびE-UTRAは、ユニバーサルモバイルテレコミュニケーションシステム(UMTS:Universal Mobile Telecommunication System)の一部である。3GPPロングタームエボリューション(LTE:Long Term Evolution)およびLTEアドバンスト(LTE-A:LTE-Advanced)は、E-UTRAを使用するUMTSの新しいリリースである。UTRA、E-UTRA、UMTS、LTE、LTE-A、およびGSM(登録商標)は、「第3世代パートナーシッププロジェクト(3GPP:3rd Generation Partnership Project)」という名称の組織からの文書に記載されている。CDMA2000およびUMBは、「第3世代パートナーシッププロジェクト2(3GPP2)」という名称の組織からの文書に記載されている。本明細書で説明した技法は、上述のシステムおよび無線技術、ならびに他のシステムおよび無線技術に使用され得る。ただし、上記の説明では、例としてLTEシステムについて説明し、上記の説明の大部分においてLTE用語が使用されるが、本技法はLTE適用例以外に適用可能である。
【0099】
本明細書における開示に関して説明した様々な例示的なブロックおよびモジュールは、本明細書で説明した機能を実行するように設計された、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス、ディスクリートゲートもしくはトランジスタロジック、ディスクリートハードウェア構成要素、またはそれらの組合せを用いて実装あるいは実行され得る。汎用プロセッサは、マイクロプロセッサであり得るが、代替では、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せとして、たとえば、DPSとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと組み合わせた1つもしくは複数のマイクロプロセッサ、または任意の他のそのような構成として実装され得る。
【0100】
本明細書で説明した機能は、ハードウェア、プロセッサによって実行されるソフトウェア、ファームウェア、またはそれらの任意の組合せにおいて実装され得る。プロセッサによって実行されるソフトウェアにおいて実装された場合、機能は、1つもしくは複数の命令またはコードとしてコンピュータ可読媒体上で記憶あるいは送信され得る。他の例および実装形態は、本開示および添付の特許請求の範囲の範囲および要旨内にある。たとえば、ソフトウェアの性質のため、上で説明した機能は、プロセッサによって実行されるソフトウェア、ハードウェア、ファームウェア、ハード配線、またはそれらのいずれかの組合せを使用して実装され得る。機能を実装する特徴はまた、機能の一部が異なる物理的ロケーションで実装されるように分散された状態を含む、様々な位置に物理的に位置していてもよい。また、特許請求の範囲を含めて本明細書で使用する場合、「のうちの少なくとも1つ」によって先行される項目の列挙で用いられる「または」は、たとえば、「A、B、またはCのうちの少なくとも1つ」という列挙が、AまたはBまたはCまたはABまたはACまたはBCまたはABC(すなわち、AおよびBおよびC)を意味するように、選言的な列挙を示す。
【0101】
コンピュータ可読媒体は、コンピュータ記憶媒体と、コンピュータプログラムの1つの場所から別の場所への転送を容易にする任意の媒体を含む通信媒体との両方を含む。記憶媒体は、汎用または専用のコンピュータによってアクセスされ得る任意の利用可能な媒体であり得る。限定ではなく例として、コンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または命令もしくはデータ構造の形態の所望のプログラムコード手段を搬送あるいは記憶するために使用され得、汎用もしくは専用のコンピュータまたは汎用もしくは専用のプロセッサによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用してウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ディスク(disk)およびディスク(disc)は、本明細書で使用する場合、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピーディスク(disk)、およびブルーレイディスク(disc)を含み、ディスク(disk)は通常、磁気的にデータを再生する一方、ディスク(disc)は、レーザーを用いてデータを光学的に再生する。上記の組合せも、コンピュータ可読媒体の範囲内に含まれる。
【0102】
本開示の上記の説明は、当業者が本開示を製作または使用することを可能にするために提供される。本開示に対する様々な修正は、当業者には容易に明らかになり、本明細書で定義された一般的な原理は、本開示の要旨または範囲から逸脱することなく他の変形形態に適用され得る。本開示全体にわたって、「例」または「例示的」という用語は、一例または実例を示し、言及する例についてのいかなる選好をも暗示または必要としない。したがって、本開示は、本明細書で説明した例および設計に限定されず、本明細書で開示した原理および新規な特徴と一定する最も広い範囲を与えられるべきである。