(57)【要約】  端末デバイスの表示システムがVsync期間内に並行して3つの手順を処理するので、端末デバイスのCPU電力消費が比較的高いという従来技術の問題を解決するために、表示方法および端末デバイスが提供される。方法は、端末デバイスの表示システムにより、第MのVsync期間内の第1の手順の第1の処理継続時間に応じて、第（M＋1）のVsync期間内の第1の手順の開始時期を決定することであり、その結果、表示システムは、第1の手順の実行を開始する前にデバイス表示手順の実行を開始し、表示システムは、第（M＋1）のVsync期間内の第1の手順の実行を遅延させ、その結果、表示システムにより第（M＋1）のVsync期間内に並行して3つの手順を処理するために必要な時間が短縮され、端末デバイスのCPU電力消費が削減される。
2019509568.tif 000002
【特許請求の範囲】
【請求項１】
表示方法であって、前記方法が端末デバイスの表示システムに適用され、前記表示システムが、1つの垂直同期（Vsync）期間内にデバイス表示手順、アプリケーション描画手順、および面（surfaceflinger）合成手順を実行するために使用され、前記方法が、
前記表示システムにより、前記表示システムが第MのVsync期間内に第1の手順を実行する第1の処理継続時間を取得するステップであって、前記第1の手順が前記アプリケーション描画手順または前記surfaceflinger合成手順であり、Mが1以上の正の整数である、ステップと、
前記表示システムにより、前記第1の処理継続時間に応じて第（M＋1）のVsync期間内の前記第1の手順の開始時期を決定するステップであって、前記第（M＋1）のVsync期間内の前記第1の手順の前記開始時期が、前記デバイス表示手順の開始時期の後であり、前記第1の処理継続時間および前記第1の手順の前記開始時期と前記第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、前記第（M＋1）のVsync期間の継続時間以下である、ステップと、
前記第（M＋1）のVsync期間内で、前記表示システムにより、前記デバイス表示手順の前記開始時期において前記表示手順の実行を開始し、前記表示システムにより、前記第1の手順の前記開始時期において前記第1の手順の実行を開始するステップと
を有する、方法。
【請求項２】
前記第（M＋1）のVsync期間内の前記デバイス表示手順の前記開始時期が、前記第（M＋1）のVsync期間の前記開始時期である、請求項1に記載の方法。
【請求項３】
前記表示システムにより、前記第1の処理継続時間に応じて第（M＋1）のVsync期間内の前記第1の手順の開始時期を決定する前記ステップが、
前記表示システムにより、前記表示システムが前記第MのVsync期間内に前記デバイス表示手順を実行する第2の処理継続時間を取得するステップと、
前記表示システムにより、前記第1の処理継続時間および前記第2の処理継続時間に応じて前記第（M＋1）のVsync期間内の前記第1の手順の前記開始時期を決定するステップであって、前記第1の手順の前記開始時期が、第1の時期であるか、または前記第1の時期の後であり、前記第1の時期が前記第2の処理継続時間だけ前記デバイス表示手順の前記開始時期より遅い時期であり、前記第1の処理継続時間および前記第1の手順の前記開始時期と前記第（M＋1）のVsync期間の前記開始時期との間の前記シフト継続時間の前記合計が、前記第（M＋1）のVsync期間の前記継続時間以下である、ステップと
を含む、請求項1または2に記載の方法。
【請求項４】
前記方法が、
前記表示システムにより、前記表示システムが前記第MのVsync期間内に第2の手順を実行する第3の処理継続時間を取得するステップであって、前記第2の手順が、前記第1の手順とは異なる前記アプリケーション描画手順および前記surfaceflinger合成手順のうちの別の1つである、ステップと、
前記表示システムにより、前記第3の処理継続時間に応じて前記第（M＋1）のVsync期間内の前記第2の手順の開始時期を決定するステップであって、前記第（M＋1）のVsync期間内の前記第2の手順の前記開始時期が前記デバイス表示手順の前記開始時期の後であり、前記第3の処理継続時間および前記第2の手順の前記開始時期と前記第（M＋1）のVsync期間の前記開始時期との間のシフト継続時間の合計が、前記第（M＋1）のVsync期間の前記継続時間以下である、ステップと、
前記表示システムにより、前記第（M＋1）のVsync期間内の前記第2の手順の前記開始時期において前記第2の手順の実行を開始するステップと
をさらに有する、請求項1から3のいずれか一項に記載の方法。
【請求項５】
前記表示システムにより、前記第3の処理継続時間に応じて前記第（M＋1）のVsync期間内の前記第2の手順の開始時期を決定する前記ステップが、
前記表示システムにより、前記表示システムが前記第MのVsync期間内に前記デバイス表示手順を実行する前記第2の処理継続時間を取得するステップと、
前記表示システムにより、前記第2の処理継続時間および前記第3の処理継続時間に応じて前記第（M＋1）のVsync期間内の前記第2の手順の前記開始時期を決定するステップであって、前記第2の手順の前記開始時期が、第2の時期であるか、または前記第2の時期の後であり、前記第2の時期が前記第2の処理継続時間だけ前記デバイス表示手順の前記開始時期より遅い時期であり、前記第3の処理継続時間および前記第2の手順の前記開始時期と前記第（M＋1）のVsync期間の前記開始時期との間の前記シフト継続時間の前記合計が、前記第（M＋1）のVsync期間の前記継続時間以下である、ステップと
を含む、請求項4に記載の方法。
【請求項６】
前記表示システムが、前記第1の処理継続時間、前記第2の処理継続時間、および前記第3の処理継続時間の合計が前記第（M＋1）のVsync期間の前記継続時間以下であると判断すると、前記第1の手順の前記開始時期と前記第2の手順の前記開始時期との間の継続時間が、前記第1の処理継続時間または前記第3の処理継続時間以上である、請求項4または5に記載の方法。
【請求項７】
前記第1の処理継続時間および前記第1の手順の前記開始時期と前記第（M＋1）のVsync期間の前記開始時期との間の前記シフト継続時間の前記合計が、前記第（M＋1）のVsync期間の前記継続時間と第1のプリセット継続時間との間の差以下である、請求項1から6のいずれか一項に記載の方法。
【請求項８】
前記第3の処理継続時間および前記第2の手順の前記開始時期と前記第（M＋1）のVsync期間の前記開始時期との間の前記シフト継続時間の前記合計が、前記第（M＋1）のVsync期間の前記継続時間と第2のプリセット継続時間との間の差以下である、請求項4から6のいずれか一項に記載の方法。
【請求項９】
前記方法が、
前記表示システムにより、第（M＋P）のVsync期間内の前記第1の手順の前記開始時期を前記第（M＋P）のVsync期間の開始時期として設定するステップであって、Pが1より大きい事前設定された正の整数である、ステップ
をさらに有する、請求項1から8のいずれか一項に記載の方法。
【請求項１０】
前記方法が、
前記表示システムにより、第（M＋Q）のVsync期間内の前記第2の手順の前記開始時期を前記第（M＋Q）のVsync期間の開始時期として設定するステップであって、Qが1より大きい事前設定された正の整数である、ステップ
をさらに有する、請求項4から6および8のいずれか一項に記載の方法。
【請求項１１】
端末デバイスであって、前記端末デバイスが、1つの垂直同期（Vsync）期間内にデバイス表示手順、アプリケーション描画手順、および面（surfaceflinger）合成手順を実行するように構成され、前記端末デバイスが、
動作ユニットが第MのVsync期間内に第1の手順を実行する第1の処理継続時間を取得するように構成された取得ユニットであって、前記第1の手順が前記アプリケーション描画手順または前記surfaceflinger合成手順であり、Mが1以上の正の整数である、取得ユニットと、
前記第1の処理継続時間に応じて第（M＋1）のVsync期間内の前記第1の手順の開始時期を決定するように構成された処理ユニットであって、前記第（M＋1）のVsync期間内の前記第1の手順の前記開始時期が、前記デバイス表示手順の開始時期の後であり、前記第1の処理継続時間および前記第1の手順の前記開始時期と前記第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、前記第（M＋1）のVsync期間の継続時間以下である、処理ユニットと、
前記第（M＋1）のVsync期間内で、前記デバイス表示手順の前記開始時期において前記表示手順の実行を開始し、前記第1の手順の前記開始時期において前記第1の手順の実行を開始するように構成された前記動作ユニットと
を備える、端末デバイス。
【請求項１２】
前記第（M＋1）のVsync期間内の前記デバイス表示手順の前記開始時期が、前記第（M＋1）のVsync期間の前記開始時期である、請求項11に記載の端末デバイス。
【請求項１３】
前記取得ユニットが、前記動作ユニットが前記第MのVsync期間内に前記デバイス表示手順を実行する第2の処理継続時間を取得するようにさらに構成され、
前記処理ユニットが、前記第1の処理継続時間および前記第2の処理継続時間に応じて前記第（M＋1）のVsync期間内の前記第1の手順の前記開始時期を決定するように具体的に構成され、前記第1の手順の前記開始時期が、第1の時期であるか、または前記第1の時期の後であり、前記第1の時期が前記第2の処理継続時間だけ前記デバイス表示手順の前記開始時期より遅い時期であり、前記第1の処理継続時間および前記第1の手順の前記開始時期と前記第（M＋1）のVsync期間の前記開始時期との間の前記シフト継続時間の前記合計が、前記第（M＋1）のVsync期間の前記継続時間以下である、請求項11または12に記載の端末デバイス。
【請求項１４】
前記取得ユニットが、前記動作ユニットが前記第MのVsync期間内に第2の手順を実行する第3の処理継続時間を取得するようにさらに構成され、前記第2の手順が、前記第1の手順とは異なる前記アプリケーション描画手順および前記surfaceflinger合成手順のうちの別の1つであり、
前記処理ユニットが、前記第3の処理継続時間に応じて前記第（M＋1）のVsync期間内の前記第2の手順の開始時期を決定するようにさらに構成され、前記第（M＋1）のVsync期間内の前記第2の手順の前記開始時期が前記デバイス表示手順の前記開始時期の後であり、前記第3の処理継続時間および前記第2の手順の前記開始時期と前記第（M＋1）のVsync期間の前記開始時期との間のシフト継続時間の合計が、前記第（M＋1）のVsync期間の前記継続時間以下であり、
前記動作ユニットが、前記第（M＋1）のVsync期間内の前記第2の手順の前記開始時期において前記第2の手順の実行を開始するようにさらに構成される、請求項11から13のいずれか一項に記載の端末デバイス。
【請求項１５】
前記取得ユニットが、前記動作ユニットが前記第MのVsync期間内に前記デバイス表示手順を実行する前記第2の処理継続時間を取得するようにさらに構成され、
前記処理ユニットが、前記第2の処理継続時間および前記第3の処理継続時間に応じて前記第（M＋1）のVsync期間内の前記第2の手順の前記開始時期を決定するように具体的に構成され、前記第2の手順の前記開始時期が、第2の時期であるか、または前記第2の時期の後であり、前記第2の時期が前記第2の処理継続時間だけ前記デバイス表示手順の前記開始時期より遅い時期であり、前記第3の処理継続時間および前記第2の手順の前記開始時期と前記第（M＋1）のVsync期間の前記開始時期との間の前記シフト継続時間の前記合計が、前記第（M＋1）のVsync期間の前記継続時間以下である、請求項14に記載の端末デバイス。
【請求項１６】
前記処理ユニットが、
前記第1の処理継続時間、前記第2の処理継続時間、および前記第3の処理継続時間の合計が前記第（M＋1）のVsync期間の前記継続時間以下であると判断されると、前記第（M＋1）のVsync期間内の前記第1の手順の前記開始時期および前記第（M＋1）のVsync期間内の前記第2の手順の前記開始時期が以下の条件：
前記第1の手順の前記開始時期と前記第2の手順の前記開始時期との間の継続時間が、前記第1の処理継続時間または前記第3の処理継続時間以上であること
を満たすと設定するように構成される、請求項14または15に記載の端末デバイス。
【請求項１７】
前記第1の処理継続時間および前記第1の手順の前記開始時期と前記第（M＋1）のVsync期間の前記開始時期との間の前記シフト継続時間の前記合計が、前記第（M＋1）のVsync期間の前記継続時間と第1のプリセット継続時間との間の差以下である、請求項11から16のいずれか一項に記載の端末デバイス。
【請求項１８】
前記第3の処理継続時間および前記第2の手順の前記開始時期と前記第（M＋1）のVsync期間の前記開始時期との間の前記シフト継続時間の前記合計が、前記第（M＋1）のVsync期間の前記継続時間と第2のプリセット継続時間との間の差以下である、請求項14から16のいずれか一項に記載の端末デバイス。
【請求項１９】
前記処理ユニットが、
第（M＋P）のVsync期間内の前記第1の手順の前記開始時期を前記第（M＋P）のVsync期間の開始時期として設定するようにさらに構成され、Pが1より大きい事前設定された正の整数である、請求項11から18のいずれか一項に記載の端末デバイス。
【請求項２０】
前記処理ユニットが、
第（M＋Q）のVsync期間内の前記第2の手順の前記開始時期を前記第（M＋Q）のVsync期間の開始時期として設定するようにさらに構成され、Qが1より大きい事前設定された正の整数である、請求項14から16および18のいずれか一項に記載の端末デバイス。
【請求項２１】
端末デバイスであって、前記端末デバイスが、1つの垂直同期（Vsync）期間内にデバイス表示手順、アプリケーション描画手順、および面（surfaceflinger）合成手順を実行するように構成され、前記端末デバイスが、プロセッサと、バスと、メモリと、表示パネルとを備え、前記プロセッサ、前記メモリ、および前記表示パネルが、前記バスを使用して接続され、
前記プロセッサが、前記メモリ内の命令を呼び出して、請求項1から10のいずれか一項に記載の方法を実行し、
前記表示パネルが、前記プロセッサが各Vsync期間内に前記デバイス表示手順を実行した後、前記プロセッサが前記デバイス表示手順を実行した後に生成された画像を表示するように構成される、端末デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、表示システム技術の分野に関し、詳細には、表示方法および端末デバイスに関する。
【背景技術】
【０００２】
現在、コンピュータ、携帯電話、タブレットコンピュータ、販売時点管理（Point of Sales、POS）、および車載コンピュータなどの多様な端末デバイスは、各々、ユーザインターフェース（User Interface、UI）を提示し、人間と機械の対話を実現するために使用される内蔵表示システムを含む。表示システムに含まれる表示パネルは、液晶ディスプレイ（Liquid Crystal Display、LCD）、有機発光ダイオード（Organic Light-Emitting Diode、OLED）などの形態で構成されてもよい。
【０００３】
端末デバイスのスムーズな表示を保証し、フレーム損失、フレームスキップなどを回避するために、表示システムは、通常、垂直同期（Vertical Synchronization、Vsync）技術を使用する。Vsync技術の基本原理は、表示システムが、Vsync期間をトリガするために、指定された継続時間の間隔で制御信号を生成することである。指定された継続時間は、Vsync期間の値、たとえば、16ミリ秒（ms）である。1つのVsync期間がトリガされると、表示システムは、以下の3つの手順：アプリケーション描画手順、面（surfaceflinger）合成手順、およびデバイス表示手順を並行して処理することを開始する。surfaceflinger合成手順で合成される必要がある元のデータは、前のVsync期間内のアプリケーション描画手順で取得された描画結果であり、デバイス表示手順で表示される必要があるデータは、前のVsync期間内のsurfaceflinger合成手順で取得された合成結果である。
【０００４】
しかしながら、従来のVsync技術が端末デバイスの表示システムに適用され、各Vsync期間がトリガされるとき、表示システムは、アプリケーション描画手順、surfaceflinger合成手順、およびデバイス表示手順を並行して処理する必要がある。その結果、端末デバイスの中央処理装置（Central Processing Unit、CPU）の一時的な電力消費が比較的高くなり、CPU周波数が過度に高くなり、CPUの動作性能が低下する。
【発明の概要】
【課題を解決するための手段】
【０００５】
本出願の実施形態は、端末デバイスの表示システムがVsync期間内に並行して3つの手順を処理するので、端末デバイスのCPU電力消費が比較的高いという従来技術の問題を解決するために、表示方法および端末デバイスを提供する。
【０００６】
第1の態様によれば、本出願の一実施形態は表示方法を提供し、表示方法は端末デバイスの表示システムに適用可能であり、表示システムは、各Vsync期間内にデバイス表示手順、アプリケーション描画手順、および面（surfaceflinger）合成手順を実行し、方法は、以下のステップ：
表示システムにより、表示システムが第MのVsync期間内に第1の手順を実行する第1の処理継続時間を取得するステップであって、第1の手順がアプリケーション描画手順またはsurfaceflinger合成手順であり、Mが1以上の正の整数である、ステップと、
表示システムにより、第1の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定するステップであって、第（M＋1）のVsync期間内の第1の手順の開始時期が、デバイス表示手順の開始時期の後であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、第（M＋1）のVsync期間の継続時間以下である、ステップと、
第（M＋1）のVsync期間内で、表示システムにより、デバイス表示手順の開始時期において表示手順の実行を開始し、表示システムにより、第1の手順の開始時期において第1の手順の実行を開始するステップと
を含む。
【０００７】
前述の方法を使用することにより、第（M＋1）のVsync期間内で、表示システムは、アプリケーション描画手順またはsurfaceflinger合成手順のいずれかの実行を遅延させ、その結果、端末デバイスの表示システムにより第（M＋1）のVsync期間内で並行して3つの手順を処理するために必要な時間が短縮され、端末デバイスのCPU電力消費が削減される。
【０００８】
可能な設計では、第（M＋1）のVsync期間内のデバイス表示手順の開始時期は、第（M＋1）のVsync期間の開始時期である。
【０００９】
可能な設計では、表示システムにより、第1の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定するステップは、
表示システムにより、表示システムが第MのVsync期間内にデバイス表示手順を実行する第2の処理継続時間を取得するステップと、
表示システムにより、第1の処理継続時間および第2の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定するステップであって、第1の手順の開始時期が、第1の時期であるか、または第1の時期の後であり、第1の時期が第2の処理継続時間だけデバイス表示手順の開始時期より遅い時期であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、第（M＋1）のVsync期間の継続時間以下である、ステップと
を含む。
【００１０】
前述の方法を使用することにより、表示システムは、第（M＋1）のVsync期間内の第1の手順の開始時期が第1の時期であるか、または第1の時期の後である、すなわち、表示システムが第（M＋1）のVsync期間内のデバイス表示手順の実行を完了するとき、または完了した後に、第1の手順の実行を開始すると設定する。このようにして、表示システムがデバイス表示手順および第1の手順を連続して実行すること、および表示システムが1つのVsync期間内に並行して3つの手順を処理しないことを保証することができ、その結果、端末デバイスのCPU電力消費がさらに削減される。
【００１１】
可能な設計では、表示システムは、表示システムが第MのVsync期間内に第2の手順を実行する第3の処理継続時間を取得し、第2の手順は、第1の手順とは異なるアプリケーション描画手順およびsurfaceflinger合成手順のうちの別の1つである、
【００１２】
表示システムは、第3の処理継続時間に応じて第（M＋1）のVsync期間内の第2の手順の開始時期を決定し、第（M＋1）のVsync期間内の第2の手順の開始時期は、デバイス表示手順の開始時期の後であり、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間以下である。
【００１３】
表示システムは、第（M＋1）のVsync期間内の第2の手順の開始時期において第2の手順の実行を開始する。
【００１４】
前述の方法を使用することにより、表示システムは、第（M＋1）のVsync期間内の第2の手順の開始時期もシフトし、その結果、第2の手順の実行も遅延し、表示システムにより第（M＋1）のVsync期間内に並行して3つの手順を処理するために必要な時間も短縮することができ、端末デバイスのCPU電力消費も削減することができる。
【００１５】
可能な設計では、第（M＋1）のVsync期間内の第1の手順の開始時期と第（M＋1）のVsync期間内の第2の手順の開始時期は異なり、第1の手順の開始時期および第2の手順の開始時期は、表示システムによって決定される。このようにして、表示システムにより第（M＋1）のVsync期間内に並行して3つの手順を処理するために必要な時間を短縮することができるだけでなく、表示システムにより第（M＋1）のVsync期間内に並行して第1の手順および第2の手順を処理するために必要な時間を短縮することもでき、その結果、端末デバイスのCPU電力消費がさらに削減される。
【００１６】
可能な設計では、表示システムにより、第3の処理継続時間に応じて第（M＋1）のVsync期間内の第2の手順の開始時期を決定するステップは、
表示システムにより、表示システムが第MのVsync期間内にデバイス表示手順を実行する第2の処理継続時間を取得するステップと、
表示システムにより、第2の処理継続時間および第3の処理継続時間に応じて第（M＋1）のVsync期間内の第2の手順の開始時期を決定するステップであって、第2の手順の開始時期が、第2の時期であるか、または第2の時期の後であり、第2の時期が第2の処理継続時間だけデバイス表示手順の開始時期より遅い時期であり、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、第（M＋1）のVsync期間の継続時間以下である、ステップと
を含む。
【００１７】
前述の方法を使用することにより、表示システムは、第（M＋1）のVsync期間内の第2の手順の開始時期が第2の時期であるか、または第2の時期の後である、すなわち、表示システムが第（M＋1）のVsync期間内のデバイス表示手順の実行を完了するとき、または完了した後に、第2の手順の実行を開始すると設定する。このようにして、表示システムがデバイス表示手順および第2の手順を連続して実行すること、および表示システムが1つのVsync期間内に並行して3つの手順を処理しないことを保証することができ、その結果、端末デバイスのCPU電力消費がさらに削減される。
【００１８】
可能な設計では、表示システムが、第1の処理継続時間、第2の処理継続時間、および第3の処理継続時間の合計が第（M＋1）のVsync期間の継続時間以下であると判断すると、第1の手順の開始時期と第2の手順の開始時期との間の継続時間は、第1の処理継続時間または第3の処理継続時間以上である。
【００１９】
前述の方法を使用することにより、第1の処理継続時間、第2の処理継続時間、および第3の処理継続時間の合計が第（M＋1）のVsync期間の継続時間以下であると判断すると、表示システムは、第（M＋1）のVsync期間内の第1の手順の開始時期と、第（M＋1）のVsync期間内の第2の手順の開始時期との間の継続時間が、第1の処理継続時間または第3の処理継続時間以上であると設定する。このようにして、表示システムは、第（M＋1）のVsync期間内に連続して3つの手順を実行し、その結果、端末デバイスのCPU電力消費が最大限まで削減される。
【００２０】
可能な設計では、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間と第1のプリセット継続時間との間の差以下である。
【００２１】
このようにして、第（M＋1）のVsync期間内に第1の手順を実行するために必要な処理継続時間が第1の処理継続時間より大きいときでも、表示システムが第（M＋1）のVsync期間内に第1の手順を実際に実行するときに必要な処理継続時間から第1の処理継続時間を減算することによって取得された処理時間差が、第1のプリセット継続時間より小さいという条件で、表示システムは、依然として第（M＋1）のVsync期間が終了する前に第1の手順の実行を完了することができ、その結果、表示システム内の画像表示ヒステリシスの確率が低減される。
【００２２】
可能な設計では、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間と第2のプリセット継続時間との間の差以下である。
【００２３】
このようにして、第（M＋1）のVsync期間内に第2の手順を実行するために必要な処理継続時間が第3の処理継続時間より大きいときでも、表示システムが第（M＋1）のVsync期間内に第2の手順を実際に実行するときに必要な処理継続時間から第3の処理継続時間を減算することによって取得された処理時間差が、第2のプリセット継続時間より小さいという条件で、表示システムは、依然として第（M＋1）のVsync期間が終了する前に第2の手順の実行を完了することができ、その結果、表示システム内の画像表示ヒステリシスの確率が低減される。
【００２４】
可能な設計では、前述の方法に基づいて、表示システムは、第（M＋1）のVsync期間から第（M＋P−1）のVsync期間までのVsync期間の各々の中の第1の手順の開始時期が、対応するVsync期間内のデバイス表示手順の開始時期の後であると設定する、すなわち、第1の手順の開始時期をシフトする。加えて、表示システムは、第（M＋P）のVsync期間内の第1の手順の開始時期を第（M＋P）のVsync期間の開始時期として設定し、Pは1より大きい事前設定された正の整数である。たとえば、P＝11のとき、第（M＋1）のVsync期間から始まる10個の連続するVsync期間において、表示システムは、各Vsync期間内の第1の手順の開始時期が対応するVsync期間内のデバイス表示手順の開始時期の後であると設定する、すなわち、第1の手順の開始時期をシフトし、第（M＋11）のVsync期間内の第1の手順の開始時期を第（M＋11）のVsync期間の開始時期として設定する、すなわち、その後、10個のVsync期間の間隔で、10個のVsync期間に続くVsync期間内の第1の手順の開始時期を対応するVsync期間の開始時期として設定する。
【００２５】
このようにして、表示システムは、表示システムにより複数のVsync期間内に並行して3つの手順を処理するために必要な時間を短縮し、表示プロセス全体における端末デバイスのCPU電力消費を削減するために、複数の連続するVsync期間内の第1の手順の開始時期をシフトする。加えて、P−1個の連続するVsync期間内の第1の手順の開始時期をシフトした後、表示システムは、第（M＋P）のVsync期間内の第1の手順の開始時期を第（M＋P）のVsync期間の開始時期として設定し、その結果、表示システムの画像表示において表示遅延およびフレーム損失が発生する確率を低減することができる。
【００２６】
可能な設計では、前述の方法に基づいて、表示システムは、第（M＋1）のVsync期間から第（M＋Q−1）のVsync期間までのVsync期間の各々の中の第2の手順の開始時期が、対応するVsync期間内のデバイス表示手順の開始時期の後であると設定する、すなわち、第2の手順の開始時期をシフトする。加えて、表示システムは、第（M＋Q）のVsync期間内の第2の手順の開始時期を第（M＋Q）のVsync期間の開始時期として設定し、Qは1より大きい事前設定された正の整数である。たとえば、P＝21のとき、第（M＋1）のVsync期間から始まる20個の連続するVsync期間において、表示システムは、各Vsync期間内の第2の手順の開始時期が対応するVsync期間内のデバイス表示手順の開始時期の後であると設定する、すなわち、第2の手順の開始時期をシフトし、第（M＋21）のVsync期間内の第2の手順の開始時期を第（M＋21）のVsync期間の開始時期として設定する、すなわち、その後、20個のVsync期間の間隔で、20個のVsync期間に続くVsync期間内の第2の手順の開始時期を対応するVsync期間の開始時期として設定する。
【００２７】
このようにして、表示システムは、表示システムにより複数のVsync期間内に並行して3つの手順を処理するために必要な時間を短縮し、表示プロセス全体における端末デバイスのCPU電力消費を削減するために、複数の連続するVsync期間内の第1の手順の開始時期をシフトする。加えて、Q−1個の連続するVsync期間内の第2の手順の開始時期をシフトした後、表示システムは、第（M＋Q）のVsync期間内の第2の手順の開始時期を第（M＋Q）のVsync期間の開始時期として設定し、その結果、表示システムの画像表示において表示遅延およびフレーム損失が発生する確率を低減することができる。
【００２８】
別の態様によれば、本発明の一実施形態は端末デバイスを提供し、端末デバイスは、前述の方法実施形態における端末デバイスの動作を実現する機能を有し、機能は、ハードウェアを使用して実現されてもよいし、ハードウェアにより対応するソフトウェアを実行することによって実現されてもよい。ハードウェアまたはソフトウェアは、前述の機能に対応する1つまたは複数のモジュールを含む。
【００２９】
可能な設計では、端末デバイスの構造は、取得ユニット、処理ユニット、および動作ユニットを含む。これらのユニットは、前述の方法例の対応する機能を実行することができる。詳細については、方法例の詳細な説明を参照されたい。詳細は繰り返し記載されない。
【００３０】
別の可能な設計では、端末デバイスの構造は、プロセッサ、バス、メモリ、および表示パネルを含む。プロセッサ、メモリ、および表示パネルは、バスを使用して接続される。プロセッサは、メモリ内の命令を呼び出して、前述の方法設計における機能を実行する。表示パネルは、プロセッサが各Vsync期間内にデバイス表示手順を実行した後、プロセッサがデバイス表示手順を実行した後に生成された画像を表示するように構成される。
【００３１】
本発明の実施形態では、第MのVsync期間内に第1の手順を実行する第1の処理継続時間を取得した後、端末デバイスの表示システムは、第1の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定する。第1の手順は、アプリケーションの描画手順またはsurfaceflinger合成手順である。第（M＋1）のVsync期間内の第1の手順の開始時期はデバイス表示手順の開始時期の後であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間以下である。第（M＋1）のVsync期間内で、表示システムは、デバイス表示手順の開始時期においてデバイス表示手順の実行を開始し、第1の手順の開始時期において第1の手順の実行を開始する。このようにして、第（M＋1）のVsync期間内で、表示システムは、アプリケーション描画手順またはsurfaceflinger合成手順のいずれかの実行を遅延させ、その結果、端末デバイスの表示システムにより第（M＋1）のVsync期間内で並行して3つの手順を処理するために必要な時間が短縮され、端末デバイスのCPU電力消費が削減される。
【図面の簡単な説明】
【００３２】
【図１】本発明の一実施形態による、表示システムのアーキテクチャの概略図である。
【図２】本発明の一実施形態による、画像の1フレームを表示する概略フローチャートである。
【図３】従来技術における画像表示の概略フローチャートである。
【図４】本発明の一実施形態による、端末デバイスの概略構造図である。
【図５】本発明の一実施形態による、表示方法のフローチャートである。
【図６Ａ】本発明の一実施形態による、表示例のフローチャートである。
【図６Ｂ】本発明の一実施形態による、表示例のフローチャートである。
【図７Ａ】本発明の一実施形態による、表示例のフローチャートである。
【図７Ｂ】本発明の一実施形態による、表示例のフローチャートである。
【図８】本発明の一実施形態による、表示例のフローチャートである。
【図９】本発明の一実施形態による、表示例のフローチャートである。
【図１０Ａ】本発明の一実施形態による、表示例のフローチャートである。
【図１０Ｂ】本発明の一実施形態による、表示例のフローチャートである。
【図１１】本発明の一実施形態による、フレーム損失が発生する表示手順の概略図である。
【図１２】本発明の一実施形態による、表示遅延が発生する表示手順の概略図である。
【図１３】本発明の一実施形態による、端末デバイスのCPU周波数エミュレーションの図である。
【図１４】本発明の一実施形態による、端末デバイスの概略構造図である。
【図１５】本発明の一実施形態による、端末デバイスの概略構造図である。
【発明を実施するための形態】
【００３３】
本発明の目的、技術的解決策、および利点をより明確にするために、以下で、添付の図面を参照して、本発明を詳細にさらに記載する。当然ながら、記載される実施形態は、本発明の実施形態のすべてではなく、いくつかにすぎない。創造的な努力なしに、本発明の実施形態に基づいて当業者によって取得されるすべての他の実施形態は、本発明の保護範囲内に入るべきである。
【００３４】
本発明の実施形態は、端末デバイスの表示システムがVsync期間内に並行して3つの手順を処理するので、端末デバイスのCPU電力消費が比較的高いという従来技術の問題を解決するために、表示方法および端末デバイスを提供する。方法および装置は、同じ発明概念に基づく。方法および装置の問題解決原理は類似しているので、装置およぶ方法の実装形態については、装置および方法を相互に参照されたい。繰り返される説明は提供されない。
【００３５】
当業者の理解を容易にするために、以下で本出願におけるいくつかの用語を説明する。
【００３６】
本発明で使用される「端末デバイス」は、内蔵表示システムを含み、人間と機械の対話機能を実現することができるデバイスである。端末デバイスは、コンピュータ、携帯電話、タブレットコンピュータ、販売時点管理（Point of Sales、POS）、車載コンピュータなどであってもよい。本出願では、一例として携帯電話のみが使用される。
【００３７】
表示システムは、端末デバイスに内蔵され、インターフェースUIを提示し、人間と機械の対話を実現するために使用される。表示システムは、画像を処理し、表示システム内の表示パネルに画像を表示することができる。表示パネルは、LCD、OLEDなどの形態で構成されてもよい。
【００３８】
面は多くのピクセルを含み、画像を形成する基本単位である。画像の1フレームは1つの面であってもよいし、上下方向に複数の面を重ね合わせることによって形成されてもよい。面は、テキストまたはグラフィックなどの要素を含むフィルムのようなものであり、順番に従って1つずつ面を重ね合わせることによって画像の最終的な効果が得られる。
【００３９】
フレームレートは、一般に、1秒間に表示される画像のフレームの数である。本発明の実施形態では、フレームレート＝1秒／Vsync期間の継続時間である。
【００４０】
さらに、本出願の説明において、「第1の」および「第2の」などの単語は、区別の説明のためにのみ使用され、相対的な重要性の指示もしくは示唆、または順番の指示もしくは示唆として理解されるべきではない。
【００４１】
本発明の実施形態で提供される表示方法は、図1に示された表示システムのアーキテクチャに適用可能である。表示システムのアーキテクチャは、制御モジュール101、アプリケーション描画モジュール102、surfaceflinger合成モジュール103、メモリ104、デバイス表示モジュール105、表示パネル106、およびクロックモジュール107を含む。
【００４２】
制御モジュール101は、表示システム内のアプリケーション描画モジュール102、surfaceflinger合成モジュール103、およびデバイス表示モジュール105に制御信号を送って前述のモジュールを制御し、その結果、アプリケーション描画モジュール102、surfaceflinger合成モジュール103、およびデバイス表示モジュール105は、画像データを処理する。
【００４３】
制御モジュール101から制御信号を受け取った後、アプリケーション描画モジュール102は、端末デバイスによって表示される必要がある複数のアプリケーション（たとえば、図中のアプリケーション1〜アプリケーションn）の表示対象面データを取得し、取得された複数の表示対象面データに応じて描画処理を実行して複数の面を生成し、複数の生成された面をメモリ104に送る。
【００４４】
制御モジュール101から制御信号を受け取った後、surfaceflinger合成モジュール103は、メモリ104から複数の面を取得し、面合成を実行して画像の最終フレームを生成し、生成された画像をメモリ104に送る。surfaceflinger合成モジュール103は、面合成の間にハードウェアコンポーザ（Hardware Compose、HWC）プロセスをさらに含む。
【００４５】
メモリ104は、一般にバッファであり、アプリケーション描画モジュール102によって生成された複数の面、およびsurfaceflinger合成モジュール103によって生成された画像を記憶する。
【００４６】
制御モジュール101から制御信号を受け取った後、デバイス表示モジュール105は、メモリ104内の画像を取得し、表示パネル106に画像をプッシュする。
【００４７】
表示パネル106は、デバイス表示モジュール105によって送られた画像を直ちに表示するように構成される。
【００４８】
クロックモジュール107は、Vsync期間をトリガし、制御信号を生成し、アプリケーション描画モジュール102、surfaceflinger合成モジュール103、およびデバイス表示モジュール105に同時に制御信号を送って、対応する手順を実行するように各モジュールに指示するように、制御モジュール101に指示するために、クロックに関する統計データを収集し、指定された継続時間（Vsync期間）の間隔で制御モジュール101にクロック信号を送るように構成される。
【００４９】
したがって、従来は、図2に示されたように、図1に示された表示システムを使用して実現される画像表示手順は、以下の手順を含む。
【００５０】
アプリケーション描画処理では、複数のアプリケーションのものであり、表示される必要がある複数の表示対象面データが取得され、複数の表示対象面データに対して描画処理が実行されて、複数の面が生成され、
surfaceflinger合成手順では、アプリケーション描画手順で生成された複数の面に対してsurfaceflinger処理およびHWC処理が実行されて、表示対象画像の1フレームが生成され、
デバイス表示手順では、surfaceflinger合成手順で生成された表示対象画像に対してデバイス表示処理が行われ、表示対象画像が表示パネルにプッシュされる。
【００５１】
表示システムおよび画像表示手順の説明によれば、表示システムは、1つのVsync期間内に1回、アプリケーション描画手順、surfaceflinger合成手順、またはデバイス表示手順を実行できることが分かる。しかしながら、画像の1フレームは、前述の3つの手順を処理することによって表示される必要がある。したがって、画像の1フレームを表示するために、3つのVsync期間が必要である。画像表示が過度に遅いケースを回避するために、表示システムは、各Vsync期間内に並行して以下の3つの手順：アプリケーション描画手順、surfaceflinger合成手順、およびデバイス表示手順を処理する。surfaceflinger合成手順で合成される必要がある元のデータは、前のVsync期間内のアプリケーション描画手順で取得された描画結果であり、デバイス表示手順で表示される必要があるデータは、前のVsync期間内のsurfaceflinger合成手順で取得された合成結果である。加えて、従来は、図3に示されたように、1つのVsync期間がトリガされたときに、前述の3つの手順の実行が同時に開始される。
【００５２】
3つの手順は、第mのVsync期間の開始時期において同時に開始される。画像の第1のフレームのデータは、デバイス表示手順で処理される。処理が完了すると、表示パネルは画像の第1のフレームを表示する。画像の第2のフレームのデータは、surfaceflinger合成手順で処理される。画像の第3のフレームのデータは、アプリケーション描画手順で処理される。
【００５３】
3つの手順は、第（m＋1）のVsync期間の開始時期において同時に開始される。画像の第2のフレームのデータは、デバイス表示手順で処理される。処理が完了すると、表示パネルは画像の第2のフレームを表示する。画像の第3のフレームのデータは、surfaceflinger手順で処理される。画像の第4のフレームのデータは、アプリケーション描画手順で処理される。
【００５４】
3つの手順は、第（m＋2）のVsync期間の開始時期において同時に開始される。画像の第3のフレームのデータは、デバイス表示手順で処理される。処理が完了すると、表示パネルは画像の第3のフレームを表示する。画像の第4のフレームのデータは、surfaceflinger手順で処理される。画像の第5のフレームのデータは、アプリケーション描画手順で処理される。
【００５５】
3つの手順は、第（m＋3）のVsync期間の開始時期において同時に開始される。画像の第4のフレームのデータは、デバイス表示手順で処理される。処理が完了すると、表示パネルは画像の第4のフレームを表示する。画像の第5のフレームのデータは、surfaceflinger手順で処理される。画像の第6のフレームのデータは、アプリケーション描画手順で処理される。
【００５６】
デバイス表示手順では、表示システムは、バッファ内のデータを読み取り、表示パネルにデータを表示するだけでよい。したがって、手順の処理継続時間は、各Vsync期間内で比較的一定であり、通常、数ミリ秒である。したがって、表示パネルが通常画像の1フレームを表示する時間期間は、通常、Vsync期間内のデバイス表示手順の終了から次のVsync期間内のデバイス表示手順の終了までであり、総継続時間はVsync期間の継続時間とほぼ同じである。
【００５７】
本発明の実施形態における表示方法は、表示システムを含み、Vsync技術をサポートする様々な端末デバイスに適用可能である。たとえば、コンピュータ、携帯電話、POS等の画面が画像を表示するとき、本発明の実施形態で提供される表示方法が使用されてもよい。
【００５８】
本発明の技術的解決策を使用することにより、第MのVsync期間内に第1の手順を実行する第1の処理継続時間を取得した後、端末デバイスの表示システムは、第1の処理継続時間に応じて次のVsync期間（第（M＋1）のVsync期間）内の第1の手順の開始時期を決定する。第1の手順は、アプリケーションの描画手順またはsurfaceflinger合成手順である。第（M＋1）のVsync期間内の第1の手順の開始時期はデバイス表示手順の開始時期の後であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間以下である。第（M＋1）のVsync期間内で、表示システムは、デバイス表示手順の開始時期においてデバイス表示手順の実行を開始し、第1の手順の開始時期において第1の手順の実行を開始する。このようにして、第（M＋1）のVsync期間内で、表示システムは、アプリケーション描画手順またはsurfaceflinger合成手順のいずれかの実行を遅延させ、その結果、端末デバイスの表示システムにより第（M＋1）のVsync期間内に並行して3つの手順を処理するために必要な時間が短縮され、端末デバイスのCPU電力消費が削減される。
【００５９】
本発明の実施形態は、表示方法および端末デバイスを提供する。表示方法は端末デバイスに適用可能であり、本発明の実施形態において使用される端末デバイスは、コンピュータ、携帯電話、タブレットコンピュータ、携帯情報端末（Personal Digital Assistant、PDA）、販売時点管理（Point of Sales、POS）、または車載コンピュータなどのデバイスであってもよい。
【００６０】
一例として、端末デバイスが携帯電話であることが使用される。図4は、本発明の一実施形態に関連する携帯電話400の部分的な構造のブロック図である。図4を参照すると、携帯電話400は、無線周波数（Radio Frequency、RF）回路410、電源420、プロセッサ430、メモリ440、入力ユニット450、表示ユニット460、センサ470、オーディオ周波数回路480、およびワイヤレスフィデリティ（wireless fidelity、WiFi）モジュール490などの構成要素を含む。当業者なら、図4に示された携帯電話の構造は携帯電話に対する制限を構成せず、図に示された構成要素よりも多いかもしくは少ない構成要素を含んでもよく、またはいくつかの構成要素を組み合わせるか、もしくは異なる構成要素の配置を有してもよい。
【００６１】
以下で、図4を参照して、携帯電話400の各構成要素を詳細に記載する。
【００６２】
RF回路410は、情報を受信し送信するか、または呼処理において信号を受信し送信するように構成されてもよい。詳細には、基地局のダウンリンク情報を受信した後、RF回路410は、処理のためにダウンリンク情報をプロセッサ430に送り、加えて、設計されたアップリンクデータを基地局に送信する。一般に、RF回路410は、限定はしないが、アンテナ、少なくとも1つの増幅器、トランシーバ、カプラ、低雑音増幅器（Low Noise Amplifier、LNA）、およびデュプレクサを含む。加えて、RF回路410は、ワイヤレス通信によってネットワークおよび別のデバイスとさらに通信することができる。ワイヤレス通信には、限定はしないが、モバイル通信用グローバルシステム（Global System of Mobile communication、GSM（登録商標））、汎用パケット無線サービス（General Packet Radio Service、GPRS）、符号分割多元接続（Code Division Multiple Access、CDMA）、広帯域符号分割多元接続（Wideband Code Division Multiple Access、WCDMA（登録商標））、ロングタームエボリューション（Long Term Evolution、LTE）、電子メール、およびショートメッセージングサービス（Short Messaging Service、SMS）を含む、任意の通信規格または通信プロトコルが使用されてもよい。
【００６３】
メモリ440は、ソフトウェアプログラムおよびモジュールを記憶するように構成されてもよい。メモリ440に記憶されたソフトウェアプログラムおよびモジュールを実行することにより、プロセッサ430は、携帯電話400の様々な機能アプリケーションを実行し、データ処理を実施する。メモリ440は、主に、プログラム記憶領域およびデータ記憶領域を含んでもよい。プログラム記憶領域は、オペレーティングシステム、および（音声再生機能または画像再生機能などの）少なくとも1つの機能によって必要とされるアプリケーションプログラムなどを記憶することができる。データ記憶領域は、携帯電話400の使用に応じて作成された（音声データまたは電話帳などの）データなどを記憶することができる。加えて、メモリ440は、高速ランダムアクセスメモリを含んでもよいし、少なくとも1つの磁気ディスクストレージコンポーネント、フラッシュメモリコンポーネントなどの不揮発性メモリ、または別の揮発性半導体ストレージコンポーネントをさらに含んでもよい。
【００６４】
入力ユニット450は、入力された数字または文字の情報を受け取り、携帯電話400のユーザ設定および機能制御に関連するキー信号入力を生成するように構成されてもよい。具体的には、入力ユニット450は、タッチパネル451および別の入力デバイス452を含んでもよい。タッチパネル451はタッチスクリーンとも呼ばれ、タッチパネル上またはその近くでユーザによって行われる（指またはスタイラスなどの任意の適切な物体またはアクセサリを使用して、タッチパネル451上またはタッチパネル451の近くでユーザによって行われる操作などの）タッチ操作を収集し、事前設定されたプログラムに従って対応する接続装置を駆動することができる。場合によっては、タッチパネル451は、2つの部分：タッチ検出装置およびタッチコントローラを含んでもよい。タッチ検出装置は、ユーザのタッチ位置を検出し、タッチ操作によって起こされた信号を検出し、タッチコントローラに信号を転送する。タッチコントローラは、タッチ検出装置からタッチ情報を受け取り、タッチ情報をタッチポイント座標に変換し、プロセッサ430にタッチポイント座標を送り、プロセッサ430から送られたコマンドを受け取り実行することができる。加えて、タッチパネル451は、抵抗型、容量型、赤外線型、および表面弾性波型などの複数のタイプを使用して実装されてもよい。入力ユニット450は、タッチパネル451に加えて、別の入力デバイス452をさらに含んでもよい。具体的には、別の入力デバイス452には、限定はしないが、物理キーボード、（音量制御キーまたはオン／オフキーなどの）ファンクションキー、トラックボール、マウス、またはジョイスティックのうちの1つまたは複数が含まれてもよい。
【００６５】
表示ユニット460は、ユーザによって入力された情報またはユーザに提供された情報、および携帯電話400の様々なメニューを表示するように構成されてもよい。表示ユニット460は、携帯電話400の表示システムであり、表示システムは、インターフェースUIを提示し、人間と機械の対話を実現するために使用される。表示ユニット460は表示パネル461を含んでもよい。場合によっては、表示パネル461は、LCD、OLEDなどの形態で構成されてもよい。さらに、タッチパネル451は表示パネル461を覆ってもよい。タッチパネル451上またはその近くのタッチ操作を検出すると、タッチパネル451は、タッチイベントのタイプを特定するためにプロセッサ430にタッチ操作を転送し、次いで、プロセッサ430は、タッチイベントのタイプ応じて表示パネル461に対応する視覚出力を提供する。図4のタッチパネル451および表示パネル451は、携帯電話400の入力機能および入力機能を実現する2つの独立した構成要素として使用されるが、いくつかの実施形態では、タッチパネル451および表示パネル461は、携帯電話400の入力機能および出力機能を実現するために一体化されてもよい。
【００６６】
携帯電話400は、光センサ、動きセンサ、または別のセンサなどの少なくとも1つのセンサ470をさらに含んでもよい。具体的には、光センサには、周囲光センサおよび近接センサが含まれてもよい。周囲光センサは、周囲光の明るさまたは暗さに応じて表示パネル461の輝度を調整することができる。近接センサは、携帯電話400がユーザの耳に移動すると、表示パネル461および／またはバックライトをオフにすることができる。動きセンサの一タイプとして、加速度センサは、各方向（一般に、3軸）の加速度値を検出し、加速度センサが静止しているときには重力の値および方向を検出することができ、携帯電話の姿勢（たとえば、横向きと縦向きとの間の切替え、関連ゲーム、および磁力計の姿勢較正）を認識するためのアプリケーション、（歩数計またはノックなどの）振動認識に関連する機能などにおいて使用されてもよい。携帯電話400に配置されてもよいジャイロスコープ、気圧計、湿度計、温度計、または赤外線センサなどの別のセンサについては、詳細は本明細書では記載されない。
【００６７】
オーディオ周波数回路480、スピーカ481、およびマイクロフォン482は、ユーザと携帯電話400との間のオーディオインターフェースを提供することができる。オーディオ周波数回路480は、受信されたオーディオデータを電気信号に変換し、スピーカ481に電気信号を送信することができ、スピーカ481は、電気信号を出力用の音響信号に変換する。加えて、マイクロフォン482は、集音された音響信号を電気信号に変換し、オーディオ周波数回路480は、電気信号を受信し、電気信号をオーディオデータに変換し、次いで、たとえば、別の携帯電話にオーディオデータを送信するか、またはさらなる処理のためにオーディオデータをメモリ440に出力するために、RF回路410にオーディオデータを出力する。
【００６８】
WiFiは短距離ワイヤレス伝送技術である。WiFiモジュール490を使用することにより、携帯電話400は、ユーザが電子メールを受信および送信し、ウェブページを閲覧し、ストリーミングメディアにアクセスすることなどを助けることができる。WiFiモジュールは、ワイヤレスブロードバンドインターネットアクセスをユーザに提供する。図4はWiFiモジュール490を示しているが、WiFiモジュール490は、携帯電話400の必須の構成要素ではなく、本発明の本質を変更することなく、必要に応じて完全に省略されてもよいことが理解されよう。
【００６９】
プロセッサ430は携帯電話400の制御センターであり、様々なインターフェースおよびラインを使用して携帯電話全体のすべての部品を接続し、携帯電話に基づく複数のサービスを実現するために、メモリ440に記憶されたソフトウェアプログラムおよび／またはモジュールを起動または実行し、メモリ440に記憶されたデータを呼び出すことにより、携帯電話400の様々な機能を実行し、データを処理する。場合によっては、プロセッサ430は、1つまたは複数の処理ユニットを含んでもよい。好ましくは、アプリケーションプロセッサおよびモデムプロセッサは、プロセッサ430に統合されてもよい。アプリケーションプロセッサは、主にオペレーティングシステム、ユーザインターフェース、アプリケーションプログラムなどを処理し、モデムプロセッサは、主にワイヤレス通信を処理する。前述のモデムプロセッサはプロセッサ430に統合されていなくてもよいことが理解されよう。
【００７０】
携帯電話400は、各構成要素に電力を供給する（バッテリなどの）電源420をさらに含む。好ましくは、電源は、電源管理システムを使用してプロセッサ430に論理的に接続され、その結果、充放電管理および電力消費管理などの機能が電源管理システムを使用して実現される。
【００７１】
携帯電話400は、図に示されていないが、カメラ、ブルートゥース（登録商標）モジュールなどをさらに含んでもよい。詳細は本明細書には記載されない。
【００７２】
本発明の一実施形態は表示方法を提供する。方法は端末デバイスの表示システムに適用される。表示システムは、各Vsync期間内にデバイス表示手順、アプリケーション描画手順、および面（surfaceflinger）合成手順を実行するために使用される。端末デバイスは、コンピュータ、タブレットコンピュータ、図4に示された携帯電話などであってもよい。図5を参照すると、方法の具体的な手順は以下のステップを含む。
【００７３】
ステップ501：表示システムは、表示システムが第MのVsync期間内に第1の手順を実行する第1の処理継続時間を取得し、第1の手順は、アプリケーション描画手順またはsurfaceflinger合成手順であり、Mは1以上の正の整数である。
【００７４】
従来、端末デバイスの表示システムがVsync技術を使用するとき、表示システムは、各Vsync期間の開始時期において、アプリケーション描画手順、surfaceflinger合成手順、およびデバイス表示手順を並行して処理する必要がある。一般に、画像表示ヒステリシスを回避するために、1つのVsync期間内の各手順は、Vsync期間が終了する前または終了するときに完了しなければならない。前述の3つの手順のうちのデバイス表示手順では、表示システムは、バッファ内のデータを読み出し、端末デバイスの表示パネルにデータを表示するだけでよい。したがって、他の2つの手順と比較すると、その手順は、通常数ミリ秒である比較的短い処理継続時間を有し、他の2つの手順はより長い時間を消費する。
【００７５】
ステップ502：表示システムは、第1の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定し、第（M＋1）のVsync期間内の第1の手順の開始時期は、デバイス表示手順の開始時期の後であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間以下である。
【００７６】
第（M＋1）のVsync期間内のデバイス表示手順の開始時期は、第（M＋1）のVsync期間の開始時期である。加えて、ステップ502において、表示システムは、第（M＋1）のVsync期間内の第1の手順の開始時期がデバイス表示手順の開始時期の後であると設定する、すなわち、第1の手順の開始時期をシフトするので、第1の手順の実行が遅延する。
【００７７】
表示システムは、第（M＋1）のVsync期間内の第1の手順の実行を遅延させる必要がある。第（M＋1）のVsync期間内の第1の手順の開始時期を決定するとき、表示システムはさらに、第（M＋1）のVsync期間が終了するときに表示システムが第1の手順の実行を完了しないために発生する画像表示ヒステリシスをできるだけ回避する必要がある。  したがって、第（M＋1）のVsync期間内の第1の手順の開始時期を決定するとき、表示システムは、表示システムが現在のVsync期間内に第1の手順を実行する処理継続時間を推定する必要がある。一般に、画像の2つの隣接するフレームは比較的類似しており、2つの隣接するVsync期間の各々の中のアプリケーション描画手順で表示システムによって処理されたデータは、画像の2つの隣接するフレームのデータに属する。同様に、2つの隣接するVsync期間の各々の中のsurfaceflinger合成手順で表示システムによって処理されたデータは、画像の2つの隣接するフレームのデータに属し、2つの隣接するVsync期間の各々の中のデバイス表示手順で処理されたデータも、画像の2つの隣接するフレームのデータに属する。したがって、表示システムが第MのVsync期間内にアプリケーション描画手順、surfaceflinger合成手順、およびデバイス表示手順の各々を実行する処理継続時間は、表示システムが第（M＋1）のVsync期間内に対応する手順を実行する処理継続時間と同様である。
【００７８】
前述の結論に基づいて、本発明のこの実施形態では、第MのVsync期間内の第1の手順の第1の処理継続時間は、表示システムによって推定された、表示システムが第（M＋1）のVsync期間内に第1の手順を実行する処理継続時間として使用される。
【００７９】
第1の処理継続時間および第（M＋1）のVsync期間内の第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間以下であり、第1の手順の開始時期は表示システムによって決定され、その結果、第（M＋1）のVsync期間が終了すると、表示システムが予測されたように第1の手順の実行を完了することができ、画像表示ヒステリシスが回避されることが保証される。
【００８０】
ステップ502を使用することにより、表示システムは、第（M＋1）のVsync期間内の第1の手順の開始時期をシフトして、第1の手順の実行を遅延させ、その結果、端末デバイスの表示システムにより第（M＋1）のVsync期間内に並行して3つの手順を処理するために必要な時間が短縮され、端末デバイスのCPU電力消費が削減される。たとえば、図6Aは、第1の手順がsurfaceflinger合成手順であるときの表示例の図である。図に示されたように、表示システムは、surfaceflinger合成手順の開始時期が第（M＋1）のVsync期間内のデバイス表示時期の後であると設定し、表示システムはsurfaceflinger合成手順の実行を遅延させ、その結果、表示システムにより第（M＋1）のVsync期間内に並行して3つの手順を処理するために必要な時間が短縮され、端末デバイスのCPU電力消費が削減される。同様に、図6Bに示されたように、第1の手順がアプリケーション描画手順であるとき、表示システムにより第（M＋1）のVsync期間内のより短い時間内に並行して3つの手順を処理するために必要な時間も短縮することができ、端末デバイスのCPU電力消費も削減することができる。
【００８１】
場合によっては、表示システムにより、第1の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定するステップは、
表示システムにより、表示システムが第MのVsync期間内にデバイス表示手順を実行する第2の処理継続時間を取得するステップと、
表示システムにより、第1の処理継続時間および第2の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定するステップであって、第1の手順の開始時期が、第1の時期であるか、または第1の時期の後であり、第1の時期が第2の処理継続時間だけデバイス表示手順の開始時期より遅い時期であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、第（M＋1）のVsync期間の継続時間以下である、ステップと
を含む。
【００８２】
画像表示ヒステリシスを回避するために、第（M＋1）のVsync期間内の第1の手順の開始時期が第1の時期であるか、または第1の時期の後であると設定する前に、表示システムは、第（M＋1）のVsync期間の継続時間と、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計との間の関係を特定する必要がある。第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、第（M＋1）のVsync期間の継続時間以下であると判断すると、表示システムは、第（M＋1）のVsync期間内の第1の手順の開始時期が第1の時期であるか、または第1の時期の後であると設定することができる。
【００８３】
前述の方法を使用することにより、表示システムは、第（M＋1）のVsync期間内の第1の手順の開始時期が第1の時期であるか、または第1の時期の後である、すなわち、表示システムが第（M＋1）のVsync期間内のデバイス表示手順の実行を完了するとき、または完了した後に、第1の手順の実行を開始すると設定する。このようにして、表示システムがデバイス表示手順および第1の手順を連続して実行すること、および表示システムが1つのVsync期間内に並行して3つの手順を処理しないことを保証することができ、その結果、端末デバイスのCPU電力消費がさらに削減される。
【００８４】
図7Aは、第1の手順がsurfaceflinger合成手順であるときの表示例の図である。表示システムが第（M＋1）のVsync期間内にsurfaceflinger合成手順を実行する開始時期は、表示システムがデバイス表示手順の実行を完了した、すなわち表示システムがデバイス表示手順およびsurfaceflinger合成手順を連続して実行した後であり、その結果、表示システムが第（M＋1）のVsync期間内に3つの手順を並行して処理しないことが保証され、端末デバイスのCPU電力消費が削減される。
【００８５】
図7Bは、第1の手順がアプリケーション描画手順であるときの表示例の図である。表示システムが第（M＋1）のVsync期間内にアプリケーション描画手順を実行する開始時期は、表示システムがデバイス表示手順の実行を完了した、すなわち表示システムがデバイス表示手順およびアプリケーション描画手順を連続して実行した後であり、その結果、表示システムが第（M＋1）のVsync期間内に3つの手順を並行して処理しないことが保証され、端末デバイスのCPU電力消費が削減される。
【００８６】
前述の説明から、第（M＋1）のVsync期間内の第1の手順の開始時期を決定するとき、表示システムが、第MのVsync期間内に第1の手順を実行する第1の処理継続時間を、表示システムが第（M＋1）のVsync期間内に第1の手順を実際に実行する処理継続時間として推定することが分かる。しかしながら、第1の処理継続時間と、表示システムが第（M＋1）のVsync期間内に第1の手順を実際に実行するときに必要な処理継続時間との間に誤差がある場合があるので、表示システムが第（M＋1）のVsync期間内に第1の手順を実際に実行するときに必要な処理継続時間が、第1の処理継続時間より大きい場合、第1の処理継続時間および第（M＋1）のVsync期間内の第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間と等しく、表示システムは第（M＋1）のVsync期間内に第1の手順の実行を完了することができない。その結果、表示システム内で画像表示ヒステリシスが発生する。
【００８７】
したがって、場合によっては、前述の理由によって引き起こされる画像表示ヒステリシスの可能性を低減するために、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間と第1のプリセット継続時間との間の差以下であり、第1の手順の開始時期は表示システムによって決定される。このようにして、第（M＋1）のVsync期間内に第1の手順を実行するために必要な処理継続時間が第1の処理継続時間より大きいときでも、表示システムが第（M＋1）のVsync期間内に第1の手順を実際に実行するときに必要な処理継続時間から第1の処理継続時間を減算することによって取得された処理時間差が、第1のプリセット継続時間より小さいという条件で、表示システムは、依然として第（M＋1）のVsync期間が終了する前に第1の手順の実行を完了することができ、その結果、表示システム内の画像表示ヒステリシスの確率が低減される。
【００８８】
ステップ503：第（M＋1）のVsync期間内で、表示システムはデバイス表示手順の開始時期において表示手順の実行を開始し、表示システムは第1の手順の開始時期において第1の手順の実行を開始する。
【００８９】
第（M＋1）のVsync期間内のデバイス表示手順の開始時期は、第（M＋1）のVsync期間の開始時期である。したがって、表示システムは、第（M＋1）のVsync期間の開始時期においてデバイス表示手順の実行を開始する。
【００９０】
場合によっては、第（M＋1）のVsync期間内の第2の手順の開始時期も、第（M＋1）のVsync期間の開始時期であってもよい。第2の手順は、第1の手順とは異なるアプリケーション描画手順およびsurfaceflinger合成手順のうちの別の1つであり、すなわち、表示システムは、第（M＋1）のVsync期間の開始時期において同時に第2の手順およびデバイス表示手順の実行を開始する。表示システムによるアプリケーション描画手順およびsurfaceflinger合成手順の実行は、端末デバイスの比較的高いCPU電力消費を引き起こす。しかしながら、前述の2つの手順と比較して、表示システムがデバイス表示手順を実行するときの電力消費は比較的低い。したがって、表示システムは、第（M＋1）のVsync期間内の第1の手順の実行を遅延させ、第（M＋1）のVsync期間の開始時期において同時に第2の手順およびデバイス表示手順の実行を開始する。このようにして、表示システムにより第（M＋1）のVsync期間内に並行して3つの手順を処理するために必要な時間を短縮することができるだけでなく、表示システムにより第（M＋1）のVsync期間内に並行して第1の手順および第2の手順を処理するために必要な時間を短縮することもでき、その結果、端末デバイスのCPU電力消費がさらに削減される。
【００９１】
場合によっては、表示システムは第2の手順の実行を遅延させることもできる。具体的には、方法は、
表示システムにより、表示システムが第MのVsync期間内に第2の手順を実行する第3の処理継続時間を取得するステップであって、第2の手順が、第1の手順とは異なるアプリケーション描画手順およびsurfaceflinger合成手順のうちの別の1つである、ステップと、
表示システムにより、第3の処理継続時間に応じて第（M＋1）のVsync期間内の第2の手順の開始時期を決定するステップであって、第（M＋1）のVsync期間内の第2の手順の開始時期がデバイス表示手順の開始時期の後であり、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、第（M＋1）のVsync期間の継続時間以下である、ステップと、
表示システムにより、第（M＋1）のVsync期間内の第2の手順の開始時期において第2の手順の実行を開始するステップと
をさらに含む。
【００９２】
表示システムにより第（M＋1）のVsync期間内の第2の手順の開始時期を決定するプロセスおよび原則は、ステップ502において第（M＋1）のVsync期間内の第1の手順の開始時期を決定するプロセスおよび原則と同じである。詳細は本明細書では再び記載されない。
【００９３】
第（M＋1）のVsync期間内の第2の手順の開始時期を決定するとき、表示システムはまた、第MのVsync期間内の第2の手順の第3の処理継続時間を、表示システムによって推定された、表示システムが第（M＋1）のVsync期間内に第2の手順を実行する処理継続時間として使用する。
【００９４】
前述の方法を使用することにより、表示システムは、第（M＋1）のVsync期間内の第2の手順の開始時期もシフトし、その結果、第2の手順の実行も遅延し、表示システムにより第（M＋1）のVsync期間内に並行して3つの手順を処理するために必要な時間も短縮することができ、端末デバイスのCPU電力消費も削減することができる。図8に示された表示例の図では、第1の手順はsurfaceflinger合成手順であり、第2の手順はアプリケーション描画手順である。図に示されたように、表示システムは、第1の手順の開始時期および第2の手順の開始時期をシフトし、その結果、表示システムにより第（M＋1）のVsync期間内に並行して3つの手順を処理するために必要な時間が短縮され、端末デバイスのCPU電力消費が削減される。
【００９５】
場合によっては、図8に示されたように、第（M＋1）のVsync期間内の第1の手順の開始時期と第（M＋1）のVsync期間内の第2の手順の開始時期は異なり、第1の手順の開始時期および第2の手順の開始時期は、表示システムによって決定される。このようにして、表示システムにより第（M＋1）のVsync期間内に並行して3つの手順を処理するために必要な時間を短縮することができるだけでなく、表示システムにより第（M＋1）のVsync期間内に並行して第1の手順および第2の手順を処理するために必要な時間を短縮することもでき、その結果、端末デバイスのCPU電力消費がさらに削減される。
【００９６】
場合によっては、表示システムにより、第3の処理継続時間に応じて第（M＋1）のVsync期間内の第2の手順の開始時期を決定するステップは、
表示システムにより、表示システムが第MのVsync期間内にデバイス表示手順を実行する第2の処理継続時間を取得するステップと、
表示システムにより、第2の処理継続時間および第3の処理継続時間に応じて第（M＋1）のVsync期間内の第2の手順の開始時期を決定するステップであって、第2の手順の開始時期が、第2の時期であるか、または第2の時期の後であり、第2の時期が第2の処理継続時間だけデバイス表示手順の開始時期より遅い時期であり、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、第（M＋1）のVsync期間の継続時間以下である、ステップと
を含む。
【００９７】
画像表示ヒステリシスを回避するために、第（M＋1）のVsync期間内の第2の手順の開始時期が第2の時期であるか、または第2の時期の後であると設定する前に、表示システムは、第（M＋1）のVsync期間の継続時間と、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計との間の関係を特定する必要がある。第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、第（M＋1）のVsync期間の継続時間以下であると判断すると、表示システムは、第（M＋1）のVsync期間内の第2の手順の開始時期が第2の時期であるか、または第2の時期の後であると設定することができる。
【００９８】
前述の方法を使用することにより、表示システムは、第（M＋1）のVsync期間内の第2の手順の開始時期が第2の時期であるか、または第2の時期の後である、すなわち、表示システムが第（M＋1）のVsync期間内のデバイス表示手順の実行を完了するとき、または完了した後に、第2の手順の実行を開始すると設定する。このようにして、表示システムがデバイス表示手順および第2の手順を連続して実行すること、および表示システムが1つのVsync期間内に並行して3つの手順を処理しないことを保証することができ、その結果、端末デバイスのCPU電力消費がさらに削減される。
【００９９】
図9に示された表示例の図では、第1の手順はsurfaceflinger合成手順であり、第2の手順はアプリケーション描画手順である。第（M＋1）のVsync期間内で、表示システムがアプリケーション描画手順を実行する時期および表示システムがsurfaceflinger合成手順を実行する時期は、表示システムがデバイス表示手順の実行を完了した時期の後である。したがって、表示システムは、現在のVsync期間内にデバイス表示手順の実行を完了した後の時間期間内に、第1の手順および第2の手順を並行して処理することができる。表示システムが3つの手順を並行して実行する従来の解決策と比較して、端末デバイスのCPU電力消費が削減される。
【０１００】
画像表示ヒステリシスの可能性を低減するために、場合によっては、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間と第2のプリセット継続時間との間の差以下であり、第2の手順の開始時期は表示システムによって決定される。このようにして、第（M＋1）のVsync期間内に第2の手順を実行するために必要な処理継続時間が第3の処理継続時間より大きいときでも、表示システムが第（M＋1）のVsync期間内に第2の手順を実際に実行するときに必要な処理継続時間から第3の処理継続時間を減算することによって取得された処理時間差が、第2のプリセット継続時間より小さいという条件で、表示システムは、依然として第（M＋1）のVsync期間が終了する前に第2の手順の実行を完了することができ、その結果、表示システム内の画像表示ヒステリシスの確率が低減される。
【０１０１】
場合によっては、第2のプリセット継続時間および前述の第1のプリセット継続時間は、同じであってもよく、異なっていてもよい。本発明のこの実施形態はそれに対して限定しない。
【０１０２】
場合によっては、表示システムが、第1の処理継続時間、第2の処理継続時間、および第3の処理継続時間の合計が第（M＋1）のVsync期間の継続時間以下であると判断すると、第1の手順の開始時期と第2の手順の開始時期との間の継続時間は、第1の処理継続時間または第3の処理継続時間以上である。
【０１０３】
第1の手順の開始時期と第2の手順の開始時期との間の継続時間が第1の処理継続時間以上であるとき、表示システムは、第（M＋1）のVsync期間内にデバイス表示手順、第1の手順、および第2の手順を連続して実行する。第1の手順がsurfaceflinger合成手順であり、第2の手順がアプリケーション描画手順である場合、表示手順は図10Aに示されている。第1の手順がアプリケーション描画手順であり、第2の手順がsurfaceflinger合成手順である場合、表示手順は図10Bに示されている。
【０１０４】
第1の手順の開始時期と第2の手順の開始時期との間の継続時間が第3の処理継続時間以上であるとき、表示システムは、第（M＋1）のVsync期間内にデバイス表示手順、第2の手順、および第1の手順を連続して実行する。第1の手順がsurfaceflinger合成手順であり、第2の手順がアプリケーション描画手順である場合、表示手順は図10Bに示されている。第1の手順がアプリケーション描画手順であり、第2の手順がsurfaceflinger合成手順である場合、表示手順は図10Aに示されている。
【０１０５】
前述の方法を使用することにより、第1の処理継続時間、第2の処理継続時間、および第3の処理継続時間の合計が第（M＋1）のVsync期間の継続時間以下であると判断すると、表示システムは、第（M＋1）のVsync期間内の第1の手順の開始時期と、第（M＋1）のVsync期間内の第2の手順の開始時期との間の継続時間が、第1の処理継続時間または第3の処理継続時間以上であると設定する。このようにして、図10Aおよび図10Bに示されたように、表示システムは、第（M＋1）のVsync期間内に連続して3つの手順を実行し、その結果、端末デバイスのCPU電力消費が最大限まで削減される。
【０１０６】
場合によっては、画像ヒステリシスを回避するために、表示システムは、第3のプリセット継続時間を設定することができる。第1の処理継続時間、第2の処理継続時間、および第3の処理継続時間の合計が第（M＋1）のVsync期間の継続時間と第3のプリセット継続時間との間の差以下であると判断すると、表示システムはさらに、第（M＋1）のVsync期間内の第1の手順の開始時期と第（M＋1）のVsync期間内の第2の手順の開始時期との間の継続時間が、第1の処理継続時間または第3の処理継続時間以上であると設定する。
【０１０７】
場合によっては、表示システムは、表示システムにより各Vsync期間内に並行して3つの手順を処理するために必要な時間を短縮し、表示プロセス全体における端末デバイスのCPU電力消費を削減するために、各Vsync期間内の第1の手順の開始時期をシフトすることができる。同様に、さらに、表示システムは、表示システムにより各Vsync期間内に並行して3つの手順を処理するために必要な時間を短縮し、表示プロセス全体における端末デバイスのCPU電力消費を削減するために、各Vsync期間内の第2の手順の開始時期をシフトすることもできる。またさらに、表示システムは、表示システムにより各Vsync期間内に並行して第1の手順および第2の手順を処理するために必要な時間を短縮し、端末デバイスのCPU電力消費をさらに削減するために、各Vsync期間内の第1の手順の開始時期と各Vsync期間内の第2の手続の開始時期が異なる時期であると設定する。またさらに、各Vsync期間内の第1の手順の開始時期と各Vsync期間内の第2の手順の開始時期との間の継続時間が、第1の処理継続時間または第3の処理継続時間以上であると表示システムが設定した場合、表示システムは、各Vsync期間内に3つの手順を連続して実行することができ、その結果、表示プロセス全体における端末デバイスのCPU電力消費を最大限まで削減することができる。
【０１０８】
表示システムが各Vsync期間内の第1の手順の開始時期をシフトすることができる場合、表示遅延またはフレーム損失が発生する可能性がある。現在のVsync期間内のsurfaceflinger合成手順で表示システムによって合成される必要があるデータは、前のVsync期間内のアプリケーション描画手順で取得された描画結果であり、デバイス表示手順で表示される必要があるデータは、前のVsync期間内のsurfaceflinger合成手順で取得された合成結果である。表示システムが各Vsync期間内にsurfaceflinger合成手順の開始時期をシフトすると、surfaceflinger合成手順における合成がVsync期間内で過度に遅い場合、Vsync期間が終了したときsurfaceflinger合成手順は完了せず、アプリケーション描画手順は正常にまたは速く実行され、現在の期間内のsurfaceflinger合成手順における合成結果を次のVsync期間内のデバイス表示手順で表示することができない。その結果、表示遅延およびフレーム損失が発生する。
【０１０９】
たとえば、フレーム損失は、表示システムの、図11に示された表示手順で発生する。
【０１１０】
表示システムは、前のVsync期間内のsurfaceflinger手順の処理継続時間に応じて、第mのVsync期間内のsurfaceflinger合成手順の開始時期をシフトする。図に示されたように、Vsync期間内のデバイス表示手順で第1のフレームのデータが処理され、処理が完了すると表示パネルは画像の第1のフレームを表示する。surfaceflinger合成手順で第2のフレームのデータが処理される。アプリケーション描画手順で第3のフレームのデータが処理される。
【０１１１】
表示システムは、第mのVsync期間内のsurfaceflinger手順の処理継続時間に応じて、第（m＋1）のVsync期間内のsurfaceflinger合成手順の開始時期をシフトする。図に示されたように、Vsync期間内のデバイス表示手順で第2のフレームのデータが処理され、処理が完了すると表示パネルは画像の第2のフレームを表示する。surfaceflinger合成手順で第3のフレームのデータが処理される。アプリケーション描画で第4のフレームのデータが処理される。surfaceflinger合成手順は比較的長い処理時間期間を有するので、第（m＋1）のVsync期間が終了したとき、surfaceflinger合成手順の処理は完了していない。
【０１１２】
表示システムは、第（m＋1）のVsync期間内のsurfaceflinger手順の処理継続時間に応じて、第（m＋2）のVsync期間内のsurfaceflinger合成手順の開始時期をシフトする。図に示されたように、第（m＋1）のVsync期間内に開始されたsurfaceflinger合成手順は、デバイス表示手順を実行する開始時期において完了していないので、第3のフレームを表示することができない。したがって、表示パネルは依然として画像の第2のフレームを表示する。第（m＋1）のVsync期間内に開始されたsurfaceflinger合成手順の実行が完了した後、現在のVsync期間内のsurfaceflinger合成手順が開始される。surfaceflinger合成手順で第4のフレームのデータが処理される。アプリケーション描画で第5のフレームのデータが処理される。
【０１１３】
表示システムは、第（m＋2）のVsync期間内のsurfaceflinger手順の処理継続時間に応じて、第（m＋3）のVsync期間内のsurfaceflinger合成手順の開始時期をシフトする。図に示されたように、Vsync期間内のデバイス表示手順で第4のフレームのデータが処理され、処理が完了すると表示パネルは画像の第4のフレームを表示する。surfaceflinger合成手順で第5のフレームのデータが処理される。アプリケーション描画で第6のフレームのデータが処理される。
【０１１４】
図に示されたように、前述の手順の説明によれば、表示パネルは、2つのVsync期間内に画像の第2のフレームを続けて表示し、その後第4のフレームをすぐに表示し、第3のフレームを表示しない。その結果、フレーム損失が発生する。
【０１１５】
別の例を挙げると、表示遅延は、表示システムの、図12に示された表示手順で発生する。
【０１１６】
表示システムは、前のVsync期間内のsurfaceflinger手順の処理継続時間に応じて、第mのVsync期間内のsurfaceflinger合成手順の開始時期をシフトする。図に示されたように、Vsync期間内のデバイス表示手順で第1のフレームのデータが表示され、処理が完了すると表示パネルは画像の第1のフレームを表示する。surfaceflinger合成手順で第2のフレームのデータが処理される。アプリケーション描画手順で第3のフレームのデータが処理される。
【０１１７】
表示システムは、第mのVsync期間内のsurfaceflinger手順の処理継続時間に応じて、第（m＋1）のVsync期間内のsurfaceflinger合成手順の開始時期をシフトする。図に示されたように、Vsync期間内のデバイス表示手順で第2のフレームのデータが表示され、処理が完了すると表示パネルは画像の第2のフレームを表示する。surfaceflinger合成手順で第3のフレームのデータが処理される。その後画像が更新されないので、アプリケーション描画処理でデータは処理されない。surfaceflinger合成手順は比較的長い処理時間期間を有するので、第（m＋1）のVsync期間が終了したとき、surfaceflinger合成手順の処理は完了していない。
【０１１８】
表示システムは、第（m＋1）のVsync期間内のsurfaceflinger手順の処理継続時間に応じて、第（m＋2）のVsync期間内のsurfaceflinger合成手順の開始時期をシフトする。図に示されたように、第（m＋1）のVsync期間内に開始されたsurfaceflinger合成手順は、デバイス表示手順を実行する開始時期において完了していないので、第3のフレームを表示することができない。したがって、表示パネルは依然として画像の第2のフレームを表示する。第（m＋1）のVsync期間内に開始されたsurfaceflinger合成手順の実行が完了した後、現在のVsync期間内のsurfaceflinger合成手順が開始される。しかしながら、第（m＋1）のVsync期間内のアプリケーション描画手順でデータが処理されないので、現在のVsync期間内のsurfaceflinger合成手順でデータは処理されない。現在のVsync期間内のアプリケーション描画手順でも、データは処理されない。
【０１１９】
第（m＋3）のVsync期間内で、第（m＋1）のVsync期間内のsurfaceflinger合成手順の実行が完了しており、第（m＋2）のVsync期間内のsurfaceflinger合成手順でデータが処理されないので、第（m＋1）のVsync期間内のsurfaceflinger合成手順で生成されたデータは上書きされない。現在のVsync期間内で、デバイス表示手順で第3のフレームのデータが処理され、処理が完了すると表示パネルは画像の第3のフレームを表示する。
【０１２０】
図に示されたように、前述の手順の説明によれば、表示パネルは、2つのVsync期間内で画像の第2のフレームを続けて表示した後、画像の第3のフレームを表示する。したがって、画像の第3のフレームで表示遅延が発生する。
【０１２１】
表示システムが各Vsync期間内のsurfaceflinger合成手順の開始時期をシフトした場合、Vsync期間内のsurfaceflinger合成手順を実行する時間期間は、前のVsync期間内のsurfaceflinger合成手順よりも長い場合があり、表示遅延およびフレーム損失の可能性は比較的大きくなる。前述の表示遅延およびフレーム損失をできるだけ回避するために、連続する指定されたVsync期間内のsurfaceflinger合成手順の開始時期をシフトした後、表示システムは、指定されたVsync期間に続くVsync期間内のsurfaceflinger合成手順の開始時期をVsync期間内の開始時期として設定し、その結果、Vsync期間内のsurfaceflinger合成手順の開始時期はシフトされない。
【０１２２】
同様に、連続する指定されたVsync期間内のアプリケーション描画手順の開始時期をシフトした後、表示システムは、指定されたVsync期間に続くVsync期間内のアプリケーション描画手順の開始時期をVsync期間内の開始時期として設定し、その結果、Vsync期間内のsurfaceflinger合成手順の開始時期はシフトされない。
【０１２３】
上記に基づいて、表示システムは、第（M＋P）のVsync期間内の第1の手順の開始時期を第（M＋P）のVsync期間の開始時期として設定し、Pは1より大きい事前設定された正の整数である。
【０１２４】
表示システムは、第（M＋Q）のVsync期間内の第2の手順の開始時期を第（M＋Q）のVsync期間の開始時期として設定し、Qは1より大きい事前設定された正の整数である。
【０１２５】
PおよびQは、10または20などの同じ値であってもよく、異なる値であってもよい。本発明はそれに対して限定しない。
【０１２６】
端末デバイスのCPU周波数は、CPUの動作性能および電力消費を直接反映することができる。したがって、本発明のこの実施形態では、各Vsync期間内のアプリケーション描画手順またはsurfaceflinger合成手順のうちの少なくとも1つに対応するオフセットが設定された後に、CPUの電力消費および動作性能を削減することができるかどうかが、CPU周波数をエミュレートすることによって判定される。
【０１２７】
図13を参照すると、プログラムProcess0を実行するとき、端末デバイスの表示システムは、従来のVsync技術を使用することにより、各Vsync期間の開始時期において、アプリケーション描画手順、surfaceflinger合成手順、およびデバイス表示手順を並行して処理することを開始する。この場合、表示システムがプログラムProcess0を実行するプロセスでは、図の左側のエミュレーション結果1のcpufreqに、各時期におけるCPU周波数が示されている。
【０１２８】
同じプログラムProcess0を実行するが、各Vsync期間内のsurfaceflinger合成手順の開始時期をシフトするとき、端末デバイスの表示システムは、手順の実行を遅延させるが、各Vsync期間の開始時期において他の2つの手順の実行を開始する。この場合、表示システムがプログラムProcess0を実行するプロセスでは、図の右側のエミュレーション結果2のcpufreqに、各時期におけるCPU周波数が示されている。
【０１２９】
端末デバイスのCPU負荷に関する統計データが、前述の2つのエミュレーション結果に従って収集され、表1に示されている。
【０１３０】
【表１】
2019509568.tif 000003
【０１３１】
表1から、端末デバイスの表示内容が変更されない（表示内容のフレームレートが変更されない）とき、エミュレーション結果2の高周波数の数量がエミュレーション結果1の高周波数の数量よりも明らかに少ないことが分かる。明らかに、端末デバイスの表示システムが、各Vsync期間内のsurfaceflinger合成手順の開始時期をシフトして手順の実行を遅延させた場合、端末デバイスのCPU周波数を明らかに削減することができ、システム負荷が低減される、すなわち、CPUの電力消費および動作性能が削減され、その結果、かなりの効果が得られる。
【０１３２】
上記に基づいて、本発明のこの実施形態で提供される表示方法を使用することにより、第MのVsync期間内に第1の手順を実行する第1の処理継続時間を取得した後、端末デバイスの表示システムは、第1の処理継続時間に応じて次のVsync期間（第（M＋1）のVsync期間）内の第1の手順の開始時期を決定する。第1の手順は、アプリケーションの描画手順またはsurfaceflinger合成手順である。第（M＋1）のVsync期間内の第1の手順の開始時期はデバイス表示手順の開始時期の後であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間以下である。第（M＋1）のVsync期間内で、表示システムは、デバイス表示手順の開始時期においてデバイス表示手順の実行を開始し、第1の手順の開始時期において第1の手順の実行を開始する。このようにして、第（M＋1）のVsync期間内で、表示システムは、アプリケーション描画手順またはsurfaceflinger合成手順のいずれかの実行を遅延させ、その結果、端末デバイスの表示システムにより第（M＋1）のVsync期間内で並行して3つの手順を処理するために必要な時間が短縮され、端末デバイスのCPU電力消費が削減される。
【０１３３】
前述の実施形態に基づいて、本発明の一実施形態は端末デバイスをさらに提供する。端末デバイスは、1つのVsync期間内に、デバイス表示手順、アプリケーション描画手順、およびsurfaceflinger合成手順を実行するように構成される。図14を参照すると、端末デバイス1400は、取得ユニット1401と、処理ユニット1402と、動作ユニット1403とを含む。
【０１３４】
取得ユニット1401は、動作ユニット1403が第MのVsync期間内に第1の手順を実行する第1の処理継続時間を取得するように構成される。第1の手順はアプリケーション描画手順またはsurfaceflinger合成手順であり、Mは1以上の正の整数である。
【０１３５】
処理ユニット1402は、第1の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定するように構成される。第（M＋1）のVsync期間内の第1の手順の開始時期はデバイス表示手順の開始時期の後であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間以下である。
【０１３６】
動作ユニット1403は、第（M＋1）のVsync期間内で、デバイス表示手順の開始時期において表示手順の実行を開始し、第1の手順の開始時期において第1の手順の実行を開始するように構成される。
【０１３７】
場合によっては、第（M＋1）のVsync期間内のデバイス表示手順の開始時期は、第（M＋1）のVsync期間の開始時期である。
【０１３８】
場合によっては、取得ユニット1401は、動作ユニット1403が第MのVsync期間内にデバイス表示手順を実行する第2の処理継続時間を取得するようにさらに構成される。
【０１３９】
処理ユニット1402は、第1の処理継続時間および第2の処理継続時間に応じて、第（M＋1）のVsync期間内の第1の手順の開始時期を決定するように具体的に構成される。第1の手順の開始時期は、第1の時期であるか、または第1の時期の後である。第1の時期は、第2の処理継続時間だけデバイス表示手順の開始時期より遅い時期であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間以下である。
【０１４０】
場合によっては、取得ユニット1401は、動作ユニット1403が第MのVsync期間内に第2の手順を実行する第3の処理継続時間を取得するようにさらに構成される。第2の手順は、第1の手順とは異なるアプリケーション描画手順およびsurfaceflinger合成手順のうちの別の1つである。
【０１４１】
処理ユニット1402は、第3の処理継続時間に応じて第（M＋1）のVsync期間内の第2の手順の開始時期を決定するようにさらに構成される。第（M＋1）のVsync期間内の第2の手順の開始時期はデバイス表示手順の開始時期の後であり、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間以下である。
【０１４２】
動作ユニット1403は、第（M＋1）のVsync期間内の第2の手順の開始時期において第2の手順の実行を開始するようにさらに構成される。
【０１４３】
場合によっては、取得ユニット1401は、動作ユニット1403が第MのVsync期間内にデバイス表示手順を実行する第2の処理継続時間を取得するようにさらに構成される。
【０１４４】
処理ユニット1402は、第2の処理継続時間および第3の処理継続時間に応じて、第（M＋1）のVsync期間内の第2の手順の開始時期を決定するように具体的に構成される。第2の手順の開始時期は、第2の時期であるか、または第2の時期の後である。第2の時期は、第2の処理継続時間だけデバイス表示手順の開始時期より遅い時期であり、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間以下である。
【０１４５】
場合によっては、処理ユニット1402は、
第1の処理継続時間、第2の処理継続時間、および第3の処理継続時間の合計が第（M＋1）のVsync期間の継続時間以下であると判断されると、第（M＋1）のVsync期間内の第1の手順の開始時期、および第（M＋1）のVsync期間内の第2の手順の開始時期が、以下の条件：
第（M＋1）のVsync期間内の第1の手順の開始時期と、第（M＋1）のVsync期間内の第2の手順の開始時期との間の継続時間が、第1の処理継続時間または第3の処理継続時間以上であること
を満たすと設定するようにさらに構成される。
【０１４６】
場合によっては、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間と第1のプリセット継続時間との間の差以下である。
【０１４７】
場合によっては、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間と第2のプリセット継続時間との間の差以下である。
【０１４８】
場合によっては、処理ユニット1402は、
第（M＋P）のVsync期間内の第1の手順の開始時期を第（M＋P）のVsync期間の開始時期として設定するようにさらに構成され、Pは1より大きい事前設定された正の整数である。
【０１４９】
場合によっては、処理ユニット1402は、
第（M＋Q）のVsync期間内の第2の手順の開始時期を第（M＋Q）のVsync期間の開始時期として設定するようにさらに構成され、Qは1より大きい事前設定された正の整数である。
【０１５０】
本発明のこの実施形態で提供される端末デバイスによれば、第MのVsync期間内に第1の手順を実行する第1の処理継続時間を取得した後、端末デバイスは、第1の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定する。第1の手順は、アプリケーションの描画手順またはsurfaceflinger合成手順である。第（M＋1）のVsync期間内の第1の手順の開始時期はデバイス表示手順の開始時期の後であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間以下である。第（M＋1）のVsync期間内で、端末デバイスは、デバイス表示手順の開始時期においてデバイス表示手順の実行を開始し、第1の手順の開始時期において第1の手順の実行を開始する。このようにして、第（M＋1）のVsync期間内で、表示システムは、アプリケーション描画手順またはsurfaceflinger合成手順のいずれかの実行を遅延させ、その結果、端末デバイスにより第（M＋1）のVsync期間内に並行して3つの手順を処理するために必要な時間が短縮され、端末デバイスのCPU電力消費が削減される。
【０１５１】
本発明のこの実施形態におけるユニット分割は一例にすぎず、論理的な機能分割のみであり、実際の実装中は他の分割であってもよい。本出願のこの実施形態における機能ユニットは、1つの処理ユニットに統合されてもよく、または、ユニットの各々は物理的に単独で存在してもよく、または2つ以上のユニットは1つのユニットに統合されてもよい。統合ユニットは、ハードウェアの形態で実装されてもよく、ソフトウェア機能ユニットの形態で実装されてもよい。
【０１５２】
統合ユニットがソフトウェア機能ユニットの形態で実装され、独立した製品として販売または使用されるとき、統合ユニットはコンピュータ可読記憶媒体に記憶されてもよい。そのような理解に基づいて、本出願の技術的解決策は本質的に、または従来技術に寄与する部分は、または技術的解決策のうちのすべてもしくは一部は、ソフトウェア製品の形態で実装されてもよい。コンピュータソフトウェア製品は、記憶媒体に記憶され、本出願の実施形態に記載された方法のステップのすべてまたは一部を実行するように、（パーソナルコンピュータ、携帯電話、もしくはネットワークデバイスなどであってもよい）端末デバイスまたはプロセッサ（processor）に命令するためのいくつかの命令を含む。前述の記憶媒体には、USBフラッシュドライブ、リムーバブルハードディスク、読取り専用メモリ（Read-Only Memory、略してROM）、ランダムアクセスメモリ（Random Access Memory、略してRAM）、磁気ディスク、または光ディスクなどの、プログラムコードを記憶することができる任意の媒体が含まれる。
【０１５３】
前述の実施形態に基づいて、本発明の一実施形態は端末デバイスをさらに提供する。端末デバイスは、1つの垂直同期（Vsync）期間内に、デバイス表示手順、アプリケーション描画手順、および面（surfaceflinger）合成手順を実行するように構成される。図15を参照すると、端末デバイス1500は、プロセッサ1501と、バス1502と、メモリ1503と、表示パネル1504とを含む。
【０１５４】
プロセッサ1501、メモリ1503、および表示パネル1504は、バス1502を使用して接続される。バス1502は、周辺構成要素相互接続（peripheral component interconnect、略してPCI）バス、拡張業界標準アーキテクチャ（extended industry standard architecture、略してEISA）バスなどであってもよい。バスは、アドレスバス、データバス、制御バスなどに分類されてもよい。表示を容易にするために、バスは図15でただ1つの太線を使用することによって表されているが、それは、ただ1つのバスまたはただ1つのタイプのバスが存在することを示していない。
【０１５５】
プロセッサ1501は、図5に示された表示方法を実施するように構成され、方法は、以下のステップ：
プロセッサ1501が第MのVsync期間内に第1の手順を実行する第1の処理継続時間を取得するステップであって、第1の手順がアプリケーション描画手順またはsurfaceflinger合成手順であり、Mが1以上の正の整数である、ステップと、
第1の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定するステップであって、第（M＋1）のVsync期間内の第1の手順の開始時期が、デバイス表示手順の開始時期の後であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、第（M＋1）のVsync期間の継続時間以下である、ステップと、
第（M＋1）のVsync期間内で、デバイス表示手順の開始時期において表示手順の実行を開始し、第1の手順の開始時期において第1の手順の実行を開始するステップと
を含む。
【０１５６】
場合によっては、第（M＋1）のVsync期間内のデバイス表示手順の開始時期は、第（M＋1）のVsync期間の開始時期である。
【０１５７】
場合によっては、プロセッサ1501により、第1の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定するステップは、
プロセッサ1501が第MのVsync期間内にデバイス表示手順を実行する第2の処理継続時間を取得するステップと、
第1の処理継続時間および第2の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定するステップであって、第1の手順の開始時期が、第1の時期であるか、または第1の時期の後であり、第1の時期が第2の処理継続時間だけデバイス表示手順の開始時期より遅い時期であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、第（M＋1）のVsync期間の継続時間以下である、ステップと
を含む。
【０１５８】
場合によっては、プロセッサ1501は、
プロセッサ1501が第MのVsync期間内に第2の手順を実行する第3の処理継続時間を取得することであって、第2の手順が、第1の手順とは異なるアプリケーション描画手順およびsurfaceflinger合成手順のうちの別の1つである、取得することと、
第3の処理継続時間に応じて第（M＋1）のVsync期間内の第2の手順の開始時期を決定することであって、第（M＋1）のVsync期間内の第2の手順の開始時期がデバイス表示手順の開始時期の後であり、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、第（M＋1）のVsync期間の継続時間以下である、決定することと、
第（M＋1）のVsync期間内の第2の手順の開始時期において第2の手順の実行を開始することと
を行うようにさらに構成される。
【０１５９】
場合によっては、第3の処理継続時間に応じて第（M＋1）のVsync期間内の第2の手順の開始時期を決定するステップは、
プロセッサ1501が第MのVsync期間内にデバイス表示手順を実行する第2の処理継続時間を取得するステップと、
第2の処理継続時間および第3の処理継続時間に応じて第（M＋1）のVsync期間内の第2の手順の開始時期を決定するステップであって、第2の手順の開始時期が、第2の時期であるか、または第2の時期の後であり、第1の時期が第2の処理継続時間だけデバイス表示手順の開始時期より遅い時期であり、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計が、第（M＋1）のVsync期間の継続時間以下である、ステップと
を含む。
【０１６０】
場合によっては、プロセッサ1501が、第1の処理継続時間、第2の処理継続時間、および第3の処理継続時間の合計が第（M＋1）のVsync期間の継続時間以下であると判断すると、第1の手順の開始時期と第2の手順の開始時期との間の継続時間は、第1の処理継続時間または第3の処理継続時間以上である。
【０１６１】
場合によっては、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間と第1のプリセット継続時間との間の差以下である。
【０１６２】
場合によっては、第3の処理継続時間および第2の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間と第2のプリセット継続時間との間の差以下である。
【０１６３】
場合によっては、プロセッサ1501は、
第（M＋P）のVsync期間内の第1の手順の開始時期を第（M＋P）のVsync期間の開始時期として設定するようにさらに構成され、Pは1より大きい事前設定された正の整数である。
【０１６４】
場合によっては、プロセッサ1501は、
第（M＋Q）のVsync期間内の第2の手順の開始時期を第（M＋Q）のVsync期間の開始時期として設定するようにさらに構成され、Qは1より大きい事前設定された正の整数である。
【０１６５】
表示パネル1504は、プロセッサが各Vsync期間内にデバイス表示手順を実行した後、プロセッサがデバイス表示手順を実行した後に生成された画像を表示するように構成される。表示パネル1504は、LCD、OLEDなどの形態で構成されてもよい。
【０１６６】
上記に基づいて、本発明の実施形態で提供される表示方法および端末デバイスによれば、第MのVsync期間内に第1の手順を実行する第1の処理継続時間を取得した後、端末デバイスの表示システムは、第1の処理継続時間に応じて第（M＋1）のVsync期間内の第1の手順の開始時期を決定する。第1の手順は、アプリケーションの描画手順またはsurfaceflinger合成手順である。第（M＋1）のVsync期間内の第1の手順の開始時期はデバイス表示手順の開始時期の後であり、第1の処理継続時間および第1の手順の開始時期と第（M＋1）のVsync期間の開始時期との間のシフト継続時間の合計は、第（M＋1）のVsync期間の継続時間以下である。第（M＋1）のVsync期間内で、表示システムは、デバイス表示手順の開始時期においてデバイス表示手順の実行を開始し、第1の手順の開始時期において第1の手順の実行を開始する。このようにして、第（M＋1）のVsync期間内で、表示システムは、アプリケーション描画手順またはsurfaceflinger合成手順のいずれかの実行を遅延させ、その結果、端末デバイスの表示システムにより第（M＋1）のVsync期間内で並行して3つの手順を処理するために必要な時間が短縮され、端末デバイスのCPU電力消費が削減される。
【０１６７】
本発明の実施形態は、方法、システム、またはコンピュータプログラム製品として提供されてもよいことを当業者なら理解されよう。したがって、本発明は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、またはソフトウェアとハードウェアの組合せを有する実施形態の形態を使用してもよい。その上、本発明は、コンピュータ使用可能プログラムコードを含む、（限定はしないが、ディスクメモリ、CD-ROM、光メモリなどを含む）1つまたは複数のコンピュータ使用可能記憶媒体に実装されたコンピュータプログラム製品の形態を使用してもよい。
【０１６８】
本発明は、本発明の実施形態による、方法、デバイス（システム）、およびコンピュータプログラム製品のフローチャートおよび／またはブロック図を参照して記載されている。コンピュータプログラム命令は、フローチャートおよび／またはブロック図の各プロセスおよび／または各ブロック、ならびにフローチャートおよび／またはブロック図のプロセスおよび／またはブロックの組合せを実装するために使用されてもよいことを理解されたい。これらのコンピュータプログラム命令は、機械を生成するために、汎用コンピュータ、専用コンピュータ、組込み型プロセッサ、または任意の他のプログラマブルデータ処理デバイスのプロセッサに提供されてもよく、その結果、コンピュータまたは任意の他のプログラマブルデータ処理デバイスのプロセッサによって実行される命令は、フローチャートの1つもしくは複数のプロセス内、および／またはブロック図の1つもしくは複数のブロック内の特定の機能を実装するための装置を生成する。
【０１６９】
これらのコンピュータプログラム命令は、特定の方式で動作するようにコンピュータまたは任意の他のプログラマブルデータ処理デバイスに命令することができるコンピュータ可読メモリに記憶されてもよく、その結果、コンピュータ可読メモリに記憶された命令は、命令装置を含む人工物を生成する。命令装置は、フローチャートの1つもしくは複数のプロセス内、および／またはブロック図の1つもしくは複数のブロック内の特定の機能を実装する。
【０１７０】
これらのコンピュータプログラム命令は、コンピュータまたは別のプログラマブルデータ処理デバイスにロードされてもよく、その結果、一連の動作およびステップは、コンピュータまたは別のプログラマブルデータ処理デバイス上で実施され、それにより、コンピュータ実装処理が生成される。したがって、コンピュータまたは別のプログラマブルデータ処理デバイス上で実行される命令は、フローチャートの1つもしくは複数のプロセス内、および／またはブロック図の1つもしくは複数のブロック内の特定の機能を実装するためのステップを実現する。
【０１７１】
本発明のいくつかの好ましい実施形態が記載されたが、当業者は、基本的な本発明の概念を知ると、これらの実施形態に対して変更および修正を行うことができる。したがって、以下の特許請求の範囲は、本発明の範囲内に入る好ましい実施形態ならびにすべての変更および修正を包含するように解釈されるものである。
【０１７２】
当然ながら、当業者は、本発明の実施形態の趣旨および範囲から逸脱することなく、本発明の実施形態に対して様々な修正および変形を行うことができる。本発明は、以下の特許請求の範囲およびそれらの等価な技術によって定義される保護範囲内に入るという条件で、これらの修正および変形を包含するものである。
【符号の説明】
【０１７３】
101  制御モジュール
102  アプリケーション描画モジュール
103  surfaceflinger合成モジュール
104  メモリ
105  デバイス表示モジュール
106  表示パネル
107  クロックモジュール
400  携帯電話
410  RF回路
420  電源
430  プロセッサ
440  メモリ
450  入力ユニット
451  タッチパネル
452  別の入力デバイス
460  表示ユニット
461  表示パネル
470  センサ
480  オーディオ周波数回路
481  スピーカ
482  マイクロフォン
490  WiFiモジュール
1400  端末デバイス
1401  取得ユニット
1402  処理ユニット
1403  動作ユニット
1500  端末デバイス
1501  プロセッサ
1502  バス
1503  メモリ
1504  表示パネル
【図１】
2019509568.tif 000004
【図２】
2019509568.tif 000005
【図３】
2019509568.tif 000006
【図４】
2019509568.tif 000007
【図５】
2019509568.tif 000008
【図６Ａ】
2019509568.tif 000009
【図６Ｂ】
2019509568.tif 000010
【図７Ａ】
2019509568.tif 000011
【図７Ｂ】
2019509568.tif 000012
【図８】
2019509568.tif 000013
【図９】
2019509568.tif 000014
【図１０Ａ】
2019509568.tif 000015
【図１０Ｂ】
2019509568.tif 000016
【図１１】
2019509568.tif 000017
【図１２】
2019509568.tif 000018
【図１３】
2019509568.tif 000019
【図１４】
2019509568.tif 000020
【図１５】
2019509568.tif 000021
【国際調査報告】
2019509568.tif 000022
2019509568.tif 000023
2019509568.tif 000024
2019509568.tif 000025