ポータブル電子デバイスの実施形態は、通常の動作モードにある間、オリジナル・スクリーン・モードから調整スクリーン・モードに切り替わることにより、電力を節約することができる。調整スクリーン・モードにある間、デバイス・ディスプレイは、少なくとも1つのアクティブ表示エリア及び少なくとも1つの非アクティブ表示エリアを含み得る。ユーザ・インタフェースからの抜粋(extract)が、アクティブ表示エリア内に表示され得、調整可能な表示エリアが、ディスプレイ・スクリーン全体よりも小さな領域を占有するよう調整され得る。したがって、調整された表示エリアの境界の少なくとも一部分が、ディスプレイ・スクリーンの外縁まで及び得る非アクティブ表示エリアに隣接し得る。したがって、非アクティブ表示エリアは、ディスプレイ・スクリーンの、調整可能な表示エリア内のユーザ・インタフェースの抜粋を表示するためには使用されていない部分を埋め得る。非アクティブ表示エリアは、調整可能な表示エリア等のアクティブ・エリア又はフルサイズのディスプレイ・スクリーンよりも少ない電力しか使用しないことが可能である。したがって、調整スクリーン・モードにある間、ディスプレイは、電力を節約するために、オフにされなくてもよいし、完全に暗くされなくてもよく、これにより、ユーザは、調整された表示エリア内で元のインタフェースの少なくとも一部分を見ること及び/又は使用することがなお可能である。
実施形態は、表示されるコンテンツに基づいて低減された電力モードになるよう制御する適切な表示エリアを自動的に判定するために、さらに使用され得る。すなわち、ディスプレイ上での情報の通常の表示中、ディスプレイのいくつかの部分は、コンテンツを提供すること又はユーザ入力を受け取ることに関連しない。したがって、そのようなディスプレイの部分は、電力供給が下げられるように、すなわち、より少ない電力量しか消費しないように制御され得る。例えば、デスクトップ・スクリーン上において、アイコン/ショートカットのみが関連するものであり得、バックグラウンドは、電力消費を低減するよう適切に制御され得る。実施形態は、どの表示エリアが現在使用されていないか、あるいはあまり使用されていないかを自動的に判定して、そのような表示エリアを適切に制御するために使用され得る。この自動判定は、情報の表示を要求するアプリケーションからの電力管理のインジケーション又は他の情報に依存するものではないことに留意されたい。その代わりに、以下でさらに十分に説明するように、表示オペレーション自体に関連付けられたイベント登録(event registration)が、ディスプレイ電力管理を導くために使用され得る。異なる実施形態において、この制御は、これらのエリアを(ディスプレイ・デバイスのタイプに応じて)黒色又は白色とすること、輝度及び/又は解像度を低減すること等を含み得る。実施形態は、通常の使用中に機能を犠牲にすることなく電力を節約するために、そのようなエリアを自動的に検出して表示エリアを調整することができる。
本発明の範囲は、この点において限定されるものではないが、一実施形態において、本明細書で表示エリア自動調整モード(DAAM:display area auto-adjustment mode)と呼ばれるオペレーティング・システム(OS)機能を使用して、この自動制御を実行することができる。このモードは、適切なユーザ選択によりトリガされ得る。DAAMにおいて、OSは、以下の原理に基づいてディスプレイを動的に解析することにより、電力節約のために、ディスプレイのいくつかの部分を自動的に検出及び調整する。所与の表示エリアに関して登録されている表示/応答関連イベント(display/response-related event)(例えば、ペインティング・イベント、タッチ・イベント等)が存在しない場合、OSは、画素をオフにすること又は電力節約のために表示エリアを直接的に調整することにより、表示エリアを直接的に制御することができる。電力を節約するために画素をオフにすることにより制御する場合、表示エリアに関して登録されている、限定された数の表示/応答イベント又はバックグラウンド関連イベント(background-related event)(例えば、スライド、ショートカットの長い保持等)が存在すれば、予め定められたサブエリアが、そのような機能のために割り当てられ、表示エリアの残りの部分は、電力節約のために制御される。
様々な実施形態において、DAAMは、いずれの電力モードによっても影響されない。例えば、システムがスリープ状態に入る場合、又はシステムが再起動を実行する場合、このモードはそれでも機能する。このように、システム・リブート又は電力状態変化の後でさえも、ユーザは、電力節約を保つことができる。任意的に、OSにより提供される自動フィルタリングが適切でないとユーザが考えた場合にユーザが特定のスクリーンのアクティブ表示エリアを変更することを可能にする追加の機能が追加されてもよい。OSは、この変更を記憶することができるので、その特定のスクリーンが次回表示されるとき、その特定のスクリーンは、ユーザにより変更されたように現れることになる。また、ユーザは、必要に応じて、自動フィルタリングに再度戻るようにモードを再設定することができる。DAAMにおいて、OSは、ディスプレイが変化するたびに、自動フィルタリングを動的に実行することができる。いくつかの実施形態において、アイコン又はステータス・バーを使用して、DAAMモードの存在をユーザに示すことができる。本発明の一実施形態に従ったDAAMを用いると、ディスプレイの関連部分に対してのみ電力供給され得る。そして、この制御は、表示されている現在の画像に基づいて、自動的に実行され得る。また、DAAMは、大きなユーザ・エクスペリエンス犠牲(user experience sacrifice)を伴うことなく必要なスクリーン・エリアのみが自動的に表示される大きなディスプレイ電力節約の機能を提供するので、バッテリは、より長い時間持続することができる。
図1を参照すると、ディスプレイ102を有するポータブル電子デバイス(PED)100が示されている。PED100は、携帯電話機(例えば、スマートフォン)、タブレット・コンピュータ、ラップトップ・コンピュータ、ウルトラブック(登録商標)・コンピュータ、電子リーダ、ゲーム・システム、音楽プレーヤ、カメラ、ビデオ・レコーダ、スキャナ、プリンタ、ツール(例えば、ダイカット・マシン、又は、関連付けられたディスプレイ・スクリーンを有する他のマシン若しくはツール)、及び同様のもの等の任意のタイプのポータブル電子デバイスとすることができる。同様に、ディスプレイ102は、少しの一般的な例を挙げると、液晶ディスプレイ(LCD)、発光ダイオード(LED)・ディスプレイ、及び/又は有機発光ダイオード(OLED)・ディスプレイ等の任意のタイプのディスプレイとすることができる。さらに、ディスプレイ102は、シングル・タッチ及び2以上の同時タッチの両方を検知できるタッチ・スクリーンを含み得る。タッチ・スクリーンは、抵抗式若しくは静電容量式(例えば、自己方式、相互方式、投影型)、音響波検知式及び/若しくは赤外線(IR)検知式、又はタッチ・センサを有するもの等の任意のタイプのタッチ・スクリーンとすることができる。
図1に見られるように、ロック・スクリーン画像が提示されている。PED100が、デバイスのさらなるオペレーションを可能にするためのスライド・ジェスチャによるもの等のユーザ入力を待つ待機モードにあるときに、このロック・スクリーンは表示され得る。本発明の実施形態を用いると、DAAMモードにおいて、ディスプレイ102の表示エリアの大部分、すなわち、表示エリア110が、使用されないエリアとして自動的に識別され得、それに応じて、電力供給が切られた状態になるよう制御され得るので、ディスプレイの電力消費を低減させることができる。ディスプレイ102の他のエリア、すなわち、表示エリア104a〜104eは、アクティブ状態であり得る。すなわち、これらの表示エリアは、自身に対して登録されている、表示イベント又は応答イベント等のイベントを有し得る。詳細には、表示エリア104a〜104dは、DAAMモードにおいて見ることができるステータス情報を提供するのに対し、表示エリア104eは、ディスプレイ102上に重ね合わされたタッチ・スクリーンを介するもの等のユーザ入力の位置を示す。アクティブ表示エリア内に存在する各画像は、テキスト、又は、アイコン、タイル、ボタン、メニュー・アイテム、写真等のグラフィックの一方であってよいことに留意されたい。
非アクティブ表示エリア110は、ディスプレイ・スクリーンの、アクティブ表示エリアではない部分に対応する。非アクティブ表示エリア110は、作動していないときに(at rest)オフにされてもよいし、あるいは、別の形で、アクティブな使用のために利用可能でなくてもよい。一例では、一実施形態において、非アクティブ表示エリア110は、黒色であり得る。しかしながら、非アクティブ表示エリア110の実際の外観は、ディスプレイ・タイプ(例えば、LCD、OLED)、ディスプレイ設計、非アクティブ表示エリア110がどのように作成されるか、及びこれらの組合せに依存し得る。
例えば、一実施形態において、ディスプレイ102は、薄膜トランジスタ(TFT)液晶ディスプレイ(LCD)技術及び/又は面内スイッチング(IPS)LCD技術等のLCD技術を含み得る。液晶は光を発しないので、LCDディスプレイ102は、バックライト又はエッジライト等の光源を含み得る。バックライトは、ランプ(例えば、熱陰極蛍光ランプ又は冷陰極蛍光ランプ)等の1以上のディスプレイ・ライト又は発光ダイオード(LED)を含み得る。一実施形態において、バックライトのディスプレイ・ライトは、ディスプレイ・スクリーンの後面の全て(例えば、フル・アレイ)又は一部分(例えば、スパース・アレイ)をカバーすることができる。一実施形態において、1以上のディスプレイ・ライトは、エッジライトを生成するために、ディスプレイのエッジに配置され得る。エッジライトは、バックライトの代わりに、あるいはバックライトに加えて、使用され得る。
一般に、非常に高いレベルで、液晶は、ディスプレイ・ライトからの光がサブ画素(例えば、1つのサブ画素は、それぞれ、赤、緑、及び青用である)を通過するのを防止し得る、あるいは、ディスプレイ・ライトからの光がサブ画素を通過するのを可変的に可能にし得るゲートとして機能する。光が、作動していない状態の(at rest)サブ画素(例えば、サブ画素トランジスタに印加される電荷が全くない、あるいはほとんど変化しない)を通過するか否かは、LCDの設計に依存し得る。
一実施形態において、非アクティブ表示エリア110内の画素及び/又はサブ画素は、電荷があってもほとんど受け入れない、作動していない状態であり得る。したがって、画素/サブ画素が作動していない状態である間ディスプレイ・ライトからの光がブロックされる場合、非アクティブ表示エリア110は暗いものであり得る。あるいは、サブ画素が作動していない状態である間ディスプレイ・ライトからの光がブロックされない場合、非アクティブ表示エリア110は、白色又は別の色であり得る(サブ画素に印加される電荷の量によって決まる)。したがって、実施形態は、非アクティブ表示エリア110の特定の色に限定されるべきではない。参照のしやすさのために、図1において、非アクティブ表示エリア110は、空白である(unfilled)/白色である。
さらに、一実施形態において、LCDディスプレイ・ライトは、非アクティブ表示エリア110を生成又は拡張するために、選択的に、暗くされ得る、あるいはオフにされ得る。そのような暗くすること/オフにすることは、非アクティブ表示エリア110の色に影響を及ぼし得、非アクティブ表示エリア110を暗く、あるいは黒色にさえ見えさせる。例えば、一実施形態において、LCDディスプレイ・ライトは、フル・アレイのLED又は散在アレイ(scattered array)のLEDとすることができる。コントローラは、非アクティブ表示エリア110に近接するLEDを選択的に暗くして、あるいは選択的にオフにして、非アクティブ表示エリア110を、アクティブ表示エリア104a〜104eよりも暗くすることができる。しかしながら、アクティブ表示エリアに近接するLEDは、非電力節約モードにおける強度と同じであってもよいし、同様の強度であってもよい。したがって、非アクティブ表示エリア110を画定する画素に近接するディスプレイ・ライトが、暗くされる、あるいはオフにされる場合、作動していない画素/サブ画素が光をブロックしないとしても、非アクティブ表示エリア110は暗いものであり得る。
全てのディスプレイが外部光源を使用するわけではない。例えば、有機発光ダイオード(OLED)技術を用いたディスプレイは、バックライト又はエッジライトを使用しない。OLEDは、蛍光型、アクティブ・マトリックス型、リン光型、透過型、及びこれらの組合せとすることができる。一般に、非常に高いレベルで、OLED画素は、電荷を受け入れたことに応答して光子を発する。これが、OLEDディスプレイのために外部光源が必要とされない理由である。したがって、一実施形態において、非アクティブ表示エリア110は、電荷があってもほとんど受け入れない、作動していない状態であるOLED画素から生じ得る。非アクティブ表示エリア110の外観は、OLED画素が作動していない状態であるときにディスプレイ・スクリーンが何に見えるかの関数(function)であり得る。光子が発せられない場合、非アクティブ表示エリア110は暗いものであり得る。一実施形態において、有機材料は、リン光有機材料(例えば、PHOLED)とすることができる。PHOLEDディスプレイは、LCDディスプレイよりも少ない電力しか消費しないことが可能であり、鮮明な色(intense color)を生成することが可能である。
前述のことをまとめると、ディスプレイ102は、PED100が、標準的な通常使用の動作モードにあるときよりもDAAMにあるときの方が、バッテリ電力を含め、少ない電力しか使用しないことが可能である。さらに、電力が節約される程度は、ディスプレイ・タイプ(例えば、LCD、OLED)、外部ディスプレイ・ライト(例えば、タイプ、配光、選択的使用)、及び非アクティブ表示エリア110のサイズ等の複数のファクタに依存し得る。
一般に、ディスプレイ102上にレンダリングされる画像又はグラフィックは、ディスプレイ・アダプタ、グラフィックス・アダプタ、グラフィックス・アクセラレータ、グラフィックス・エンジン、グラフィックス・コプロセッサ、デジタル信号プロセッサ(DSP)、中央プロセッサ、グラフィックス処理装置(GPU)、及び/又は、任意の他のグラフィックス・ハードウェア若しくはグラフィックス・ソフトウェア、並びに、これらの組合せにより処理され得る。例えば、ディスプレイ・アダプタは、1以上のGPU及び/又は1以上のコントローラを含み得る。ディスプレイ・アダプタは、グラフィックス・レンダリングのためにデータを処理することができ、レンダリング・パターン(例えば、ビットマップ)をディスプレイ・スクリーン用の信号に変換することができる。しかしながら、これは、画像がディスプレイ・スクリーン上にどのようにレンダリングされ得るかの1つの高レベルの例であり、実施形態は、画像がディスプレイ102上にどのようにレンダリングされるかによって限定されるものではない。
ディスプレイ102は、タッチ・スクリーン、加速度計、又はジャイロスコープから受信される入力等のユーザ・コマンドに応答して、DAAMに切り替えられ得る。このモードへの切り替えは、キーボード、メニュー選択、マウス・クリック、及び同様のものから受信されるユーザ入力に応答するものであってもよい。
一実施形態において、ディスプレイ102はまた、例えば、デフォルトの表示モードとしてユーザにより選択されている場合、あるいは、バッテリが予め定められた閾値に到達したのを検出したことに応答して、DAAMに自動的に切り替えられ得る。例えば、バッテリが、総バッテリ容量の所定のパーセンテージ(例えば、30%、25%、20%、15%、10%、5%)以下である容量に到達した場合、ディスプレイ102は、バッテリ電力の残りを節約するために、DAAMに自動的に切り替えられ得る。さらに、ディスプレイ102は、ユーザになお利点を提供するとともに最小量のバッテリを使用するよう決定されたDAAM構成(例えば、低減されたサイズの表示エリア及び非アクティブ表示エリアのサイズ/配置)になるよう制御され得る。一実施形態において、低バッテリの判定に応じたディスプレイ・スクリーン構成は、デフォルトの構成又はユーザにより予め設定されている構成であり得る。さらに、ディスプレイ102がDAAMに切り替えられる閾バッテリ・レベルは、デフォルトの値又はユーザにより指定された値であり得る。
次に図2を参照すると、本発明の一実施形態に従ったディスプレイを提供する別のポータブル・デバイス200の図が示されている。図2に示されるように、コンピューティング・デバイス200は、ディスプレイ202を有する、タブレット・コンピュータ又は他のポータブル電子デバイスであり得る。
図2に示される例において、複数のアクティブ表示エリア204a〜204dを含むデスクトップ・スクリーンが提示されている。図示されるように、これらアクティブ表示エリアの各々は、アプリケーション又は他の機能のユーザ選択を可能にするアイコンに対応する。さらなる表示エリア205は、種々の選択可能な機能又はユーザ通知を提示するために使用される。加えて、表示エリア208が、DAAMにおいて提供され得る。このエリアは、非DAAMオペレーションにおいて見えるであろう所与のユーザ・インタフェースのものではなく、代わりに、低減された表示エリア内で所定の機能を提供するためにDAAMにおいて生成されるものであり、これは、電力節約機会を増大させる。
示される実施形態において、表示エリア208は、ユーザが、例えば、左移動ボタン208a及び右移動ボタン208b、並びにショートカット・コマンド・ボタン208cを介して、様々なバックグラウンド・タッチ機能を実行することを可能にする。本明細書でさらに説明するように、表示エリア208は、非DAAMオペレーションにおいてディスプレイのこの部分又は別の部分に配置されるであろう他のコンテンツの代わりに表示される。結果として、ディスプレイ202の残りの部分、すなわち、非アクティブ表示エリア210は、電力供給が下げられた状態又は電力消費を低減させるための他の状態で維持され得る。したがって、限定された量のイベントが、特定の表示エリア内の動作(activity)に関して登録されている場合、この低減されたサブ表示エリア208は、そうでなければ存在する表示情報を積極的に変更することにより、より大きな電力節約を可能にし得る。
非アクティブ・エリア210は、オフにされ(電力節約のために調整され)、アクティブ表示エリアのみがタッチ操作に応答することになる。したがって、バックグラウンドに対する従来のタッチ操作に取って代わるために、いくつかの仮想ボタンを含む表示エリア208が、(例えば、OSにより)提供される。このように、OSは、使用されない表示エリア又は無用な表示エリアを自動的に調整して、通常の使用中に大きな電力節約を実現することができる。この自動調整機能は、OSの他の機能(例えば、ライトの調整、音声量の調整等)に加えられるものであることにも留意されたい。
次に図3を参照すると、本発明の一実施形態に従った、自動表示調整を実行するための方法のフロー図が示されている。図3に示されるように、方法300は、システムの様々なハードウェアを用いて実行され得る。例えば、中央処理装置(CPU)等のプロセッサを使用して、この方法を実行することができる。より詳細には、CPU上で実行されるオペレーティング・システム(OS)が、方法300の一部又は全てを実行し得る。
図示されるように、方法300は、表示エリア自動調整モード(DAAM)のユーザ選択を受信する(ブロック310)ことにより開始する。この選択は、多くの異なる電力管理設定又は表示設定のうちの1つであり得る設定可能なプラットフォーム設定のユーザ選択によるものであり得る。次いで、制御はブロック320に移り、ディスプレイが、この表示モード用に構成され得る。一実施形態において、この構成は、ディスプレイがこのモードに従って動作すべきであることを示す、構成ストレージ(configuration storage)内の有効フラグ又は他のインジケータを設定することを含み得る。
引き続き図3を参照すると、次いで、制御はブロック330に移り、ユーザ・インタフェース情報が、OSにおいて受信され得る。このユーザ・インタフェース情報は、所与のユーザ・インタフェースに関してディスプレイ上に表示される情報に関する詳細に対応し得る。このようなインタフェース情報は、例えば、表示される情報のインジケーション、若しくは、ロック・スクリーン、ホーム・スクリーン、又はディスプレイ上に提示される別のグラフィカル・ユーザ・インタフェースを含み得る。さらに、このユーザ・インタフェース情報は、表示イベント、ユーザ応答イベント等を示すイベント登録を含み得る。一例として、このようなイベントは、グラフィカル・ユーザ・インタフェースを表示させるソフトウェアにより、OSに対して登録される、あるいは呼び出される。タッチ・イベント、(ユーザ・インタフェースをリフレッシュする)ペインティング・イベント等の様々なイベントが登録され得る。登録された/呼び出されたこれらイベントから、OSは、ユーザ・インタフェースのどの1以上の部分が、所与の種類のイベント(例えば、タッチ入力)の応答を待っているかを判定することができる、あるいは、ユーザ・インタフェースの所与の部分に関してディスプレイをリフレッシュすることができる。
引き続き図3を参照すると、制御はブロック340に移り、ディスプレイが、複数の表示エリアに分割され得る。より詳細には、ディスプレイの異なる領域が、所与の領域内に提示される情報に基づいて識別され得る。図3に示されるように、ディスプレイは、表示(又は、ユーザ入力)が生じることがない1以上の使用されない表示エリア、バックグラウンド情報又は限定された量の情報が表示されることになる1以上の最小限使用される表示エリア、及び、コンテンツを表示するために、あるいは、例えば、ディスプレイ上に構成されたタッチ・スクリーンを介したユーザ入力の受け取りを可能にするために、エリアの全て又は大部分がアクティブであることになる1以上のアクティブ表示エリアに分割され得る。ディスプレイを、3つの1以上の異なる表示エリアに分割した後、制御はブロック350に移り、使用されない表示エリアが、第1の技術に従って電力管理され得る。異なる技術が可能であり、異なる技術は、電力消費を低減させるための適切な技術のユーザ選択に基づき得ることに留意されたい。異なる技術の例は、数あるオペレーションの中でもとりわけ、そのような使用されない表示エリアへの電力供給を切ること、そのような表示エリアの輝度及び/又は解像度を低減することを含む。説明の目的上、第1の技術は、使用されない表示エリアへの電力供給を切ることであると仮定する。このような使用されない表示エリアの電力管理をすることにより、システムの著しい電力節約が実現され得る。
次いで、制御はブロック360に移り、最小限使用される表示エリアが、この第1の技術又は第2の技術に従って電力管理され得る。ここでも、第1の技術は電力供給を切る技術であると仮定する。この例において、第2の技術は、そのような表示エリアの輝度及び/又は解像度を低減すること、又は、そのような表示エリア内に提示される情報の量を低減することを含み得る。最後にブロック370において、アクティブ表示エリア内のコンテンツが、ユーザに対して完全に可視であり続けるように、これらアクティブ表示エリアは、完全に電力供給された状態であり続けることができる。図3の実施形態では、この高いレベルで示されているが、本発明の範囲は、この点において限定されるものではないことを理解されたい。
次に図4を参照すると、本発明の一実施形態に従った、表示エリアを自動的に調整するための詳細な方法のフロー図が示されている。図4の方法400もまた、上述したように、OSにより実行され得る。図示されるように、方法400は、ブロック410において、OSにおいてユーザ・インタフェース情報を受信することにより開始する。このユーザ・インタフェース情報は、上述したものであり得る。
次いで、菱形415において、さらなる表示エリアが解析されるべきであるかどうかが判定され得る。この判定は、ディスプレイが異なる表示エリアに分割される実装に基づき得、例えば、ディスプレイの様々な規則的領域(regular region)又は不規則的領域(irregular region)に基づき得る。いくつかの実施形態において、この分割は、表示されるコンテンツに基づく表示領域のグループ化に基づき得る。次いで、制御は菱形420に移り、表示イベント及び/又は応答イベントが、この表示エリアに関して登録されているかどうかが判定され得る。表示イベントの登録は、コンテンツがこの表示エリア内にレンダリングされるべきであるという、グラフィカル情報若しくはテキスト情報等のインジケーション、アイコン、又は他のユーザ選択インジケータに対応する。応答イベントの登録は、タッチ・スクリーン又は他のヒューマン・インタフェース・デバイスが、この表示エリア内でのユーザ入力を受け取ることが可能であるというインジケーションに対応する。菱形420において、そのようなイベントが、この表示エリアに関して登録されていないと判定された場合、制御はブロック425に移り、この表示エリアが直接的に調整され得る。選択される特定のモードに応じて、この直接的な制御は、この表示エリアへの電力供給を切ることによるものであってもよいし、この表示エリアの輝度、解像度、又は他のパラメータを低減することによるものであってもよい。
そうではなく、1以上のイベントが、この表示エリアに関して登録されている場合、制御は菱形430に移り、1以上のバックグラウンド・イベントが、この表示エリアに関して登録されているかどうかが判定される。1以上のバックグラウンド・イベントが、この表示エリアに関して登録されていない場合、制御は菱形435に移り、この表示エリアに関する表示/応答イベントの数が、所与の閾値未満であるかどうかが判定される。この閾値は、この表示エリア、この表示エリアの予め定められた部分等に関するイベントの予め定められた数であり得ることに留意されたい。菱形435において、この表示エリアに関する表示/応答イベントの数が、所与の閾値未満でないと判定された場合、制御はブロック440に移り、この表示エリアが、電力供給された状態で維持され得、この表示エリアの大部分が、コンテンツを表示するために、且つ/あるいは、ユーザ入力を受け取るために使用されることになる。
引き続き図4を参照すると、菱形430において、1以上のバックグラウンド・イベントが、この表示エリアに関して登録されていると判定された場合、又は、菱形435において、この表示エリアに関する表示/応答イベントの数が、所与の閾値未満であると判定された場合、制御は菱形450に移り、自動表示調整モードが、適切な表示エリアへの電力供給を切るよう構成されているかどうかが判定される。自動表示調整モードが、適切な表示エリアへの電力供給を切るよう構成されていない場合、制御はブロック455に移り、この表示エリアの解像度、輝度、及び/又は他のそのようなパラメータを制御すること等により、この表示エリアが直接的に調整され得る。
そうではなく、自動表示調整モードが、適切な領域への電力供給を切るよう構成されている場合、次いで、制御は菱形460に移り、有効なイベントを有するこの表示エリアの部分が、閾面積よりも大きいかどうかが判定される。有効なイベントを有するこの表示エリアの部分が、閾面積よりも大きい場合、制御はブロック440に移り、表示が維持されることが可能にされる。有効なイベントを有するエリアが、閾面積よりも大きくない場合、サブ表示エリアが画定され得、そうでなければ存在する情報の表示を生じさせるユーザ選択を可能にするコントロール・パネルが、このエリア内に維持され得る。したがって、ここでは、この方法は、選択可能なコントロール・パネルのサブ表示を提供するとともに、この表示エリアの残りの部分を、電力供給が切られた状態で維持するよう機能する(ブロック465)。したがって、この方法は、そうでなければ非DAAMオペレーションにおいてこの表示エリア内に表示されるであろう情報を変更するよう機能する。図4の実施形態ではこの高レベルにおいて図示されているが、本発明の範囲はこの点において限定されるものではないことを理解されたい。
次に図5を参照すると、本発明の一実施形態に従った、自動表示調整を実行するための方法の高レベル・ビューのフロー図が示されている。図5に示されるように、方法470は、例えば、OS命令に応答して、プロセッサ又は他のハードウェアにおいて実行され得る。方法470は、ブロック475において、DAAMモードに入るためのユーザ入力を受信することにより開始する。一実施形態において、この選択は、例えば、コントロール・パネル又は他の構成設定メニューの一部としてのDAAMモード・ボタンのユーザ選択によるものであり得る。それに応じて制御はブロック480に移り、使用されない表示エリアが、登録されているイベントに基づいて検出され得る。すなわち、ユーザ・インタフェース等の所与のディスプレイ・スクリーンについて上述したように、OS又は他のロジックは、表示イベント(例えば、ペインティング・イベント)、応答イベント(例えば、タッチ・イベント)、又は、特定の表示エリア内の動作を示す任意の他のそのようなイベント等の登録されているイベントがないことに基づいて、使用されない表示エリアを検出することができる。一実施形態において、ディスプレイ・ドライバ又は他のインタフェース機構が、このようなイベント登録をOSに提供し、次いで、OSは、複数のエントリを含む表示エリア・テーブルを生成することができる。ここで、複数のエントリの各エントリは、ディスプレイ上の特定の表示エリアのアイデンティフィケーション(識別情報)と、上述したように、この表示エリアが、アクティブなものであるか、最小限使用されるものであるか、あるいは使用されない表示エリアであるかのインジケーションと、を有する。
次いで、制御はブロック485に移り、使用されない表示エリアが、電力節約のために調整され得る。この調整は、そのような表示エリアへの電力供給を切ることによるものであってもよいし、電力消費を低減させるための他の制御によるものであってもよい。最小限使用される表示エリア又は使用されない表示エリア等の表示エリアのタイプに応じて、ロジックは、さらに任意的に、この表示エリア内に特定のサブ表示エリアを割り当て、その後ディスプレイ上のさらなる情報にアクセスするために、例えばユーザ入力を可能にするコントロール・パネルにより機能サマリ(function summary)を提供してもよい。
異なるユーザ・インタフェース又は他のディスプレイ・スクリーンが表示のために選択されるので、方法470は、ブロック480とブロック485との間を繰り返すことに留意されたい。加えて、ユーザがDAAMモードを終了することを選択すべき場合、制御はブロック490に移り、このモードを終了するためのユーザ入力が、再度構成設定又は他のメニュー設定の選択により受信され得る。それに応じて方法470は終了し、ユーザ・インタフェース及び他のディスプレイ・スクリーンが、編集されていない元の形で、電力節約されることなく、ディスプレイ上に提示され得る。
図6は、一実施形態に従ったプロセッサ・コア500を示している。プロセッサ・コア500は、マイクロプロセッサ、組み込みプロセッサ、デジタル信号プロセッサ(DSP)、ネットワーク・プロセッサ、又はコードを実行する他のデバイス等の任意のタイプのプロセッサ用のコアであり得る。図6において、1つのプロセッサ・コア500しか示されていないが、処理エレメントは、代替的に、図6に示されるプロセッサ・コア500を2以上含んでもよい。プロセッサ・コア500は、シングルスレッド型コアであってもよいが、少なくとも1つの実施形態において、プロセッサ・コア500は、コア当たり2以上のハードウェア・スレッド・コンテキスト(すなわち、「論理プロセッサ」)を含み得るマルチスレッド型であってもよい。
図6はまた、プロセッサ500に接続されたメモリ570も示している。メモリ570は、当業者に知られている、あるいは他の形で当業者が利用可能な多様なメモリ(メモリ階層の様々なレイヤを含む)のうちのいずれかであり得る。メモリ570は、プロセッサ500により実行される1以上のコード命令513を含み得る。プロセッサ・コア500は、コード513により指示される命令のプログラム・シーケンスに従う。各命令は、フロント・エンド部510に入力され、1以上のデコーダ520により処理される。デコーダは、その出力として、予め定められたフォーマットの固定幅のマイクロ・オペレーション等のマイクロ・オペレーションを生成することができる、あるいは、元のコード命令を反映した他の命令、マイクロ命令、又は制御信号を生成することができる。フロント・エンド510はまた、概してリソースを割り当てるとともに実行される変換命令に対応するオペレーションを待ち行列に入れるレジスタ改名ロジック525及びスケジューリング・ロジック510も含む。
プロセッサ500は、実行ユニット555−1〜555−Nのセットを有する実行ロジック550を含むものとして示されている。いくつかの実施形態は、特定の機能又は機能セットに専用の複数の実行ユニットを含み得る。他の実施形態は、特定の機能を実行することができる1つの実行ユニットのみを含み得る。実行ロジック550は、コード命令により指定されるオペレーションを実行する。
コード命令により指定されるオペレーションの実行の完了後、バック・エンド・ロジック560が、コード513の命令を回収する(retire)。一実施形態において、プロセッサ・コア500は、命令のアウト・オブ・オーダ実行(out of order execution)を可能にするが、命令のイン・オーダ回収(in order retirement)を必要とする。回収ロジック565は、当業者に知られている様々な形態(例えば、リオーダ・バッファ(re-order buffer)又は同様のもの)を取り得る。このようにして、プロセッサ・コア500は、少なくとも、デコーダにより生成される出力、レジスタ改名ロジック525により使用されるハードウェア・レジスタ及びテーブル、並びに実行ロジック550により変更されるレジスタ(図示せず)に関して、コード513の実行中に変換される。
図6には示されていないが、処理エレメントは、プロセッサ・コア500を有するチップ上に他のエレメントを含んでもよい。例えば、処理エレメントは、プロセッサ・コア500とともにメモリ制御ロジックを含んでもよい。処理エレメントは、I/O制御ロジックを含んでもよいし、且つ/あるいは、メモリ制御ロジックと統合されたI/O制御ロジックを含んでもよい。処理エレメントはまた、1以上のキャッシュを含んでもよい。
実施形態は、多くの異なるシステム・タイプにより実装され得る。次に図7を参照すると、本発明の一実施形態に従ったシステムのブロック図が示されている。図7に示されるように、マルチプロセッサ・システム600は、ポイントツーポイント相互接続システムであり、ポイントツーポイント相互接続650を介して接続された第1のプロセッサ670及び第2のプロセッサ680を含む。図7に示されるように、プロセッサ670及び680の各々は、第1のプロセッサ・コア及び第2のプロセッサ・コア(すなわち、プロセッサ・コア674a及び674bと、プロセッサ・コア684a及び684b)を含むマルチコア・プロセッサであり得るが、潜在的により多くのコアがプロセッサ内に存在してもよい。プロセッサの各々は、本明細書で説明したDAAMオペレーションを実行するOS又は他のロジックを実行することができる。
引き続き図7を参照すると、第1のプロセッサ670は、メモリ・コントローラ・ハブ(MCH)672とポイントツーポイント(P−P)・インタフェース676及び678とをさらに含む。同様に、第2のプロセッサ680は、MCH682とP−Pインタフェース686及び688とを含む。図7に示されるように、MCH672及び682は、プロセッサを、それぞれのメモリ、すなわち、メモリ632及びメモリ634に接続する。これらのメモリは、それぞれのプロセッサに局所的に取り付けられたシステム・メモリ(例えば、DRAM)の一部であり得る。第1のプロセッサ670及び第2のプロセッサ680は、P−P相互接続662及び664をそれぞれ介してチップセット690に接続され得る。図7に示されるように、チップセット690は、P−Pインタフェース694及び698を含む。
さらに、チップセット690は、インタフェース692を含み、インタフェース692は、P−P相互接続639を介してチップセット690を高性能グラフィックス・エンジン638に接続する。同様に、チップセット690は、インタフェース696を介して第1のバス616に接続され得る。図7に示されるように、様々な入力/出力(I/O)デバイス614は、第1のバス616を第2のバス620に接続するバス・ブリッジ618とともに、第1のバス616に接続され得る。例えば、キーボード/マウス622、通信デバイス626、及び、一実施形態においてコード630を含み得る、ディスク・ドライブ又は他の大容量記憶デバイス等のデータ記憶ユニット628を含む様々なデバイスが、第2のバス620に接続され得る。さらに、オーディオI/O624が第2のバス620に接続され得る。実施形態は、スマート・セルラ電話機、タブレット・コンピュータ、ネットブック、ウルトラブック(登録商標)等のモバイル・デバイスを含む他のタイプのシステムに組み込むことができる。
図8の図は、システムの一実施形態の機能コンポーネントを示している。いくつかの場合において、コンポーネントは、ハードウェア・コンポーネント、ソフトウェア・コンポーネント、又はハードウェアとソフトウェアとの組合せであってよい。コンポーネントのうちのいくつかは、アプリケーション・レベルのソフトウェアであり得るのに対し、他のコンポーネントは、オペレーティング・システム・レベルのコンポーネントであり得る。いくつかの場合において、1つのコンポーネントと別のコンポーネントとの接続は、2以上のコンポーネントが単一のハードウェア・プラットフォーム上で動作している近接接続(close connection)であり得る。他の場合において、接続は、長距離に及ぶネットワーク接続を介してなされ得る。各実施形態は、説明した機能を実現するために、異なるハードウェア、ソフトウェア、及び相互接続アーキテクチャを使用することができる。
図8に示されるように、システム700は、様々なレイヤで実装される。高レベルにおいて、ユーザがシステムの様々な機能とインタフェースをとることを可能にするユーザ・エクスペリエンス710が提供される。この目的のために、アプリケーション・フレームワーク7150〜715nのセットが提供される。これらアプリケーション・フレームワークの各々は、特定のタイプのプラットフォーム向けに最適化されているアプリケーションに対応し得る。例えば、アプリケーション・フレームワーク7150は、ウルトラブック(登録商標)・システム向けに最適化されており、ハンドセット・アプリケーション・フレームワーク7151は、スマートフォン等のハンドセットベースのシステム向けに最適化されており、アプリケーション・フレームワーク715nは、タブレット・コンピュータ又は他のタイプのシステム等の他のタイプのプラットフォーム向けに最適化されている。もちろん、多くの他のタイプのアプリケーション・フレームワークが提供されてもよいことを理解されたい。
これらフレームワークとコアOS730との間のインタラクションを可能にするために、アプリケーション・プログラミング・インタフェース(API)・レイヤ720が提供される。図8に見られるように、コアOS730は、様々なコンポーネント7340〜734nを含む。これらコンポーネントの各々は、システムの様々な機能に対するサポートを提供する。ここでは、本発明の一実施形態に従ったDAAMを実装することができるグラフィックス・コンポーネントを特定的に参照する。図8にさらに示されるように、ハードウェア740が提供される。ハードウェア740は、プラットフォームのベア・メタル・ハードウェアを構成することができ、高レベルにおいて、1以上のプロセッサ、1以上のメモリ(揮発性メモリ及び不揮発性メモリを含む)、大容量ストレージ、1以上のディスプレイ、ユーザ・インタフェース、及び他の典型的なシステム・ハードウェアを含み得る。図8の実施形態ではこの高レベルにおいて図示されているが、本発明の範囲はこの点において限定されるものではないことを理解されたい。
図9は、本発明の一実施形態において情報がコンピュート・ノードのユーザに対してどのように表示され得るかを示す概略ブロック図800である。例えば、オペレーティング・システム856は、本明細書で説明したDAAMオペレーションの実行を含め、ユーザへの表示のためにディスプレイ・デバイス848に提供される情報を制御することができるディスプレイ・マネージャ864を含み得る。グラフィカル・ユーザ・インタフェース866は、情報をディスプレイ・デバイス848上に提示するためにディスプレイ・マネージャ864とインタラクトする、オペレーティング・システム856の別のコンポーネントである。例えば、グラフィカル・ユーザ・インタフェース866は、ウィンドウ、アイコン、コントロール・エレメント、及び同様のタイプのユーザ・インタフェース・オブジェクトの外観及び位置を特徴付けるデータを、ディスプレイ・マネージャ864に提供することができる。グラフィカル・ユーザ・インタフェース866は、この情報をディスプレイ・マネージャ864に直接的に提供してもよいし、ウィンドウ・マネージャ868を介して提供してもよい。ウィンドウ・マネージャ868は、データが本明細書で説明したDAAM技術に従ってユーザに提示されるウィンドウの表示を制御することができる。そのようなデータは、アプリケーション・プログラム862により生成されるドキュメントであってもよいし、ファイル・システム858、記憶デバイス860、又はそれら両方のコンテンツであってもよい。
図10は、本明細書で説明した実施形態を実施するために使用され得る例示的なシステム・レイヤ構造900のブロック図である。しかしながら、他のシステム・レイヤ実装が使用されてもよい。いくつかの実装において、ユーザ・インタフェース(UI)・エンジン902、又は、3次元ユーザ・インタフェース環境を生成できる別のUIエンジン等のUIエンジンは、アプリケーション・レベルで動作し、アプリケーション・プログラム・インタフェース(API)・レイヤ904を通じて利用可能なグラフィカル機能及び特徴を実装する。例示的なグラフィカル機能及び特徴は、グラフィックスAPI910によりサポートされるグラフィカル処理、イメージングAPI912によりサポートされる画像処理、及びビデオAPI914によりサポートされるビデオ処理を含む。APIレイヤ904は、同様に、グラフィックス・ライブラリ・レイヤ906とインタフェースをとる。グラフィックス・ライブラリ・レイヤ904は、OpenGL(登録商標)仕様の実装等、例えば、グラフィックス・ハードウェアに対するソフトウェア・インタフェースとして実装され得る。ドライバ/ハードウェア・レイヤ908は、グラフィックス・カード及び関連するドライバ等のドライバ及び関連するグラフィックス・ハードウェアを含む。
一実施形態において、用語「制御ロジック」の使用は、トランジスタ、レジスタ、又は、プログラマブル・ロジック・デバイス等の他のハードウェア等のハードウェアを含む。制御ロジックはまた、ファームウェア又はマイクロコード等の、ハードウェアと統合され得るソフトウェア又はコードを含んでもよい。プロセッサ又はコントローラは、当分野において知られている多様な制御ロジックのいずれかを表すよう意図されている制御ロジックを含み得、そのようなものとして、マイクロプロセッサ、マイクロコントローラ、フィールド・プログラマブル・ゲート・アレイ(FPGA)、特定用途向け集積回路(ASIC)、プログラマブル・ロジック・デバイス(PLD)、及び同様のものとしてうまく実装され得る。
以下の例は、さらなる実施形態に関する。以下の例における詳細は、1以上の実施形態においてどこでも使用することができる。
一例において、システムは、命令を実行するプロセッサであって、ディスプレイを、ディスプレイが複数の表示エリアに分割される第1のモード用に構成し、ディスプレイ上に表示される第1のユーザ・インタフェースに関するイベント登録情報に基づいて、第1の電力消費レベルで動作するように少なくとも1つの第1の表示エリアを制御するとともに、第2の電力消費レベルで動作するように少なくとも1つの第2の表示エリアを制御するロジックを含むプロセッサを備える。当該システムは、第1のユーザ・インタフェースと、ディスプレイに関連付けられたHIDと、を表示するディスプレイをさらに備える。
一実施形態において、少なくとも1つの第1の表示エリアは、第1のモードにおいて第1の電力消費レベルで動作するとともに、第2のモードにおいて第2の電力消費レベルで動作し、第1の電力消費レベルは、第2の電力消費レベルよりも低い。第1の電力消費レベルでは、少なくとも1つの第1の表示エリアへの電力供給が切られ得る。少なくとも1つの第2の表示エリアは、アクティブ表示エリアを含み、少なくとも1つの第1の表示エリアは、使用されない表示エリアを含む。
一実施形態において、ロジックは、第1の表示エリアのサブ表示部分内にコントロール・パネルを維持するとともに、第1の表示エリアの残りの部分への電力供給を切り、コントロール・パネルは、第1の選択ボタン及び第2の選択ボタンを含む。少なくとも1つの第1の表示エリアは、第1のモードにおいて、低減された輝度及び低減された解像度のうちの少なくとも一方を有するように制御され得る。
上記プロセッサは、様々な手段を用いて実装され得ることに留意されたい。
一例において、プロセッサは、ユーザ機器タッチ対応デバイス内に組み込まれるシステム・オン・チップ(SoC)を備える。
別の例において、システムは、ディスプレイ及びメモリを備え、上記例のうちの1以上のプロセッサを備える。
別の例として、ディスプレイを制御するための装置は、ディスプレイ上に表示されるユーザ・インタフェースに関するユーザ・インタフェース情報を受信する手段と、ユーザ・インタフェース情報に基づいて、表示イベント又は応答イベントが、ディスプレイの第1の表示エリアに関して登録されているかどうかを判定する手段と、第1の表示エリアの電力消費を低減させるように第1の表示エリアを調整する手段と、を含む。
一実施形態において、当該装置は、バックグラウンド関連イベントが、ディスプレイの第2の表示エリアに関して登録されているかどうかを判定する手段をさらに含む。
一実施形態において、当該装置は、第2の表示エリアにおけるイベントの数を閾値と比較する手段をさらに含む。
一実施形態において、当該装置は、イベントを有する第2の表示エリアの部分が、閾面積よりも大きいかどうかを判定し、この部分が閾面積よりも大きい場合、第2の表示エリアのサブ表示部分内にコントロール・パネルを維持するとともに、第2の表示エリアの残りの部分への電力供給を切る手段をさらに含む。
一例として、コントロール・パネルは、ユーザがさらなる選択されたアイテムにアクセスすることを可能にする第1の選択ボタン及び第2の選択ボタンを少なくとも含み得る。
異なる実施形態において、表示エリアの調整は、第1の表示エリアの輝度を制御すること及び/又は第1の表示エリアへの電力供給を下げることを含む。
一実施形態において、当該装置は、表示エリア調整モードのユーザ選択を受信し、表示エリア調整モードのユーザ選択の受信に応じて、ディスプレイを表示エリア調整モード用に構成する手段をさらに含む。
一実施形態において、当該装置は、例えば、ユーザ・インタフェース情報に基づいて、ディスプレイを、第1の複数の表示エリア及び第2の複数の表示エリアに分割し、第1の複数の表示エリアを有効にするとともに、第2の複数の表示エリアへの電力供給を下げる手段をさらに含む。
別の例は、システムの第1のロジックにおいて、システムのディスプレイ上に表示されるユーザ・インタフェースに関するイベント登録を含むユーザ・インタフェース情報を受信するステップと、イベント登録に基づいて、ディスプレイを、少なくとも1つの使用されない表示エリア及び少なくとも1つのアクティブ表示エリアに分割するステップと、少なくとも1つの使用されない表示エリアの電力管理をするステップと、少なくとも1つのアクティブ表示エリアを、完全に電力供給された状態で維持するステップと、を含む方法を対象とする。
一実施形態において、当該方法は、少なくとも1つの最小限使用される表示エリアの電力管理をするステップであって、少なくとも1つの最小限使用される表示エリアは、少なくとも1つの使用されない表示エリアとは異なる形で電力管理される、ステップを含む。
一実施形態において、当該方法は、少なくとも1つの最小限使用される表示エリアの輝度を調整することにより、少なくとも1つの最小限使用される表示エリアの電力管理をするステップを含む。
一実施形態において、当該方法は、少なくとも1つの最小限使用される表示エリアの第1の部分内にコントロール・パネルを表示することにより、少なくとも1つの最小限使用される表示エリアの電力管理をするとともに、少なくとも1つの最小限使用される表示エリアの第2の部分への電力供給を下げるステップをさらに含む。
一実施形態において、当該方法は、表示エリア自動調整モードのユーザ選択を受信し、表示エリア自動調整モードのユーザ選択の受信に応じて、ディスプレイを表示エリア自動調整モード用に構成するステップをさらに含む。
一実施形態において、当該方法は、表示イベントが、第1の表示エリアに関して登録されていない場合、第1の表示エリアを少なくとも1つの使用されない表示エリアに分割するステップと、バックグラウンド関連イベントが、第2の表示エリアに関して登録されている場合、第2の表示エリアを少なくとも1つの最小限使用される表示エリアに分割するステップと、をさらに含む。
一例において、機械読み取り可能媒体はコードを含み、コードが実行されると、コードは、機械に、上述の例のいずれかの方法を実行させる。
別の例において、装置は、上述の例のいずれかの方法を実行する手段を備える。
別の例において、少なくとも1つの記憶媒体は命令を記憶しており、命令は、システムに、システムのディスプレイ上に表示されるユーザ・インタフェースに関するユーザ・インタフェース情報を受信させ、ユーザ・インタフェース情報に基づいて、表示イベント又は応答イベントが、ディスプレイの第1の表示エリアに関して登録されているかどうかを判定させ、表示イベント又は応答イベントが登録されていない場合、第1の表示エリアの電力消費を低減させるように第1の表示エリアを調整させる。
一例において、当該少なくとも1つの記憶媒体は、バックグラウンド関連イベントが、ディスプレイの第2の表示エリアに関して登録されているかどうかを判定するための命令をさらに含む。
一例において、当該少なくとも1つの記憶媒体は、第2の表示エリアにおけるイベントの数を閾値と比較するための命令をさらに含む。
一例において、当該少なくとも1つの記憶媒体は、イベントを有する第2の表示エリアの部分が、閾面積よりも大きいかどうかを判定し、この部分が閾面積よりも大きい場合、第2の表示エリアのサブ表示部分内にコントロール・パネルを維持するとともに、第2の表示エリアの残りの部分への電力供給を切るための命令をさらに含む。
一例において、当該少なくとも1つの記憶媒体は、表示エリア調整モードのユーザ選択を受信し、表示エリア調整モードのユーザ選択の受信に応じて、ディスプレイを表示エリア調整モード用に構成するための命令をさらに含む。
一例において、当該少なくとも1つの記憶媒体は、ディスプレイを、第1の複数の表示エリア及び第2の複数の表示エリアに分割し、第1の複数の表示エリアを有効にするとともに、第2の複数の表示エリアへの電力供給を下げるための命令をさらに含む。
一例において、当該少なくとも1つの記憶媒体は、ユーザ・インタフェース情報に基づいてディスプレイを分割するための命令をさらに含む。
上記例の様々な組合せが可能であることを理解されたい。
実施形態は、多くの異なるタイプのシステムにおいて使用され得る。例えば、一実施形態において、通信デバイスが、本明細書で説明した様々な方法及び技術を実行するよう構成され得る。もちろん、本発明の範囲は、通信デバイスに限定されるものではなく、代わりに、他の実施形態は、命令を処理する他のタイプの装置、又は、コンピューティング・デバイス上での実行に応じて、コンピューティング・デバイスに、本明細書で説明した方法及び技術のうちの1以上を実行させる命令を含む1以上の機械読み取り可能媒体を対象としてもよい。
一実施形態は、プログラム・コード又は命令により実装され得る。プログラム・コード又は命令は、例えば、記憶デバイス、及び/又は、関連する機械読み取り可能媒体若しくは機械アクセス可能媒体(フロッピ・ディスク、光ストレージ、ソリッドステート・メモリ、ハードドライブ、テープ、フラッシュ・メモリ、メモリ・スティック、デジタル・ビデオ・ディスク、デジタル多用途ディスク(DVD)等を含むが、これらに限定されるものではない)、並びに、機械アクセス可能な生物状態保持ストレージ等のより特殊な媒体等の揮発性メモリ及び/又は不揮発性メモリに記憶され得る。機械読み取り可能媒体は、機械により読み取り可能な形で情報を記憶、送信、又は受信するためのいかなる機構を含んでもよく、機械読み取り可能媒体は、アンテナ、光ファイバ、通信インタフェース等といった、プログラム・コードが通過し得る媒体を含んでもよい。プログラム・コードは、パケット、シリアル・データ、パラレル・データ等の形で送信されてもよく、圧縮フォーマット又は暗号化フォーマットで使用されてもよい。
限定された数の実施形態を参照して本発明について説明したが、当業者は、これら実施形態からの多数の変更形態及び変形形態を理解するであろう。添付の請求項は、本発明の真の主旨及び範囲内に属する全てのそのような変更形態及び変形形態をカバーすることが意図されている。