(57)【要約】      （修正有）【課題】モデルとビューとから構成される表示用データを効率的にキャッシュする。【解決手段】情報処理装置２００は、他の情報処理装置から、第１の面積を有する仮想領域にレイアウトされ得る複数の画像データと、当該複数の画像データのツリー構造を示す第１のツリー情報と、当該複数の画像データのレイアウトを示すレイアウト情報とを受信可能な通信部１９と、上記受信された複数の画像データの少なくとも一部をキャッシュ可能なキャッシュメモリ２０と、上記第１の面積よりも小さい第２の面積を有する表示領域を有し、上記キャッシュされた複数の画像データの一部を当該表示領域に表示可能な表示部１６と、上記仮想領域を複数の領域に分割し、当該複数の領域に応じて、上記複数の画像データのツリー構造を示す第２のツリー情報を生成し、当該第２のツリー情報を基に、上記キャッシュメモリを制御する制御部とを具備する。【選択図】図２
2013020395.tif 000002
【特許請求の範囲】
【請求項１】
他の情報処理装置から、第１の面積を有する仮想領域にレイアウトされ得る複数の画像データと、当該複数の画像データのツリー構造を示す第１のツリー情報と、当該複数の画像データのレイアウトを示すレイアウト情報とを受信可能な通信部と、
前記受信された複数の画像データの少なくとも一部をキャッシュ可能なキャッシュメモリと、
前記第１の面積よりも小さい第２の面積を有する表示領域を有し、前記キャッシュされた複数の画像データの一部を当該表示領域に表示可能な表示部と、
前記第２の面積と、前記受信されたレイアウト情報とを基に、前記仮想領域を複数の領域に分割し、当該複数の領域に応じて、前記複数の画像データのツリー構造を示す第２のツリー情報を生成し、当該第２のツリー情報を基に前記少なくとも一部の画像データをキャッシュするように前記キャッシュメモリを制御可能な制御部と
を具備する情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記制御部は、前記複数の領域にそれぞれポイントを付与し、所定値以上のポイントを付与された領域にレイアウトされる画像データを前記キャッシュメモリにキャッシュし、当該所定値未満のポイントを付与された領域にレイアウトされる画像データを前記キャッシュメモリから消去するように前記キャッシュメモリを制御する
情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
前記制御部は、前記表示領域に表示される画像データが変更された場合に、当該変更後の画像データを基に、前記第２のツリー情報を再生成し、前記各領域に付与されるポイントを再計算する
情報処理装置。
【請求項４】
請求項２に記載の情報処理装置であって、
前記制御部は、前記複数の領域のうち、前記表示領域に表示されている画像データがレイアウトされている領域と他の領域との距離が小さいほど前記ポイントが高くなるように、前記複数の領域に付与されるポイントを計算する
情報処理装置。
【請求項５】
請求項４に記載の情報処理装置であって、
前記制御部は、前記表示領域に表示されている画像データがレイアウトされている領域には、前記距離に応じたポイントに加えて別途ポイントを付与する
情報処理装置。
【請求項６】
他の情報処理装置から、第１の面積を有する仮想領域にレイアウトされ得る複数の画像データと、当該複数の画像データのツリー構造を示す第１のツリー情報と、当該複数の画像データのレイアウトを示すレイアウト情報とを受信し、
前記第１の面積よりも小さい第２の面積を有する表示領域を有する表示部に、前記受信された複数の画像データの一部を表示し、
前記第２の面積と、前記受信されたレイアウト情報とを基に、前記仮想領域を複数の領域に分割し、当該複数の領域に応じて、前記複数の画像データのツリー構造を示す第２のツリー情報を生成し、
前記第２のツリー情報を基に前記少なくとも一部の画像データをキャッシュする
情報処理方法。
【請求項７】
情報処理装置に、
他の情報処理装置から、第１の面積を有する仮想領域にレイアウトされ得る複数の画像データと、当該複数の画像データのツリー構造を示す第１のツリー情報と、当該複数の画像データのレイアウトを示すレイアウト情報とを受信するステップと、
前記第１の面積よりも小さい第２の面積を有する表示領域を有する表示部に、前記受信された複数の画像データの一部を表示するステップと、
前記第２の面積と、前記受信されたレイアウト情報とを基に、前記仮想領域を複数の領域に分割し、当該複数の領域に応じて、前記複数の画像データのツリー構造を示す第２のツリー情報を生成するステップと、
前記第２のツリー情報を基に前記少なくとも一部の画像データをキャッシュするステップと
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、キャッシュメモリを有する情報処理装置、当該情報処理装置における情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、クライアント端末がネットワーク経由でウェブブラウザによりアプリケーションを実行するようになり、またクライアント端末の種類が増加したことに伴い、サーバでは、クライアント端末の画面への表示内容を構成要素データ（モデル）と表示方法データ（ビュー）とに分けて保持しておくことが一般的になっている。例えば、サーバはウェブページをＨＴＭＬ（HyperText Markup Language）とＣＳＳ（Cascading Style Sheets）とに分けてクライアント端末へ送信し表示させている。これにより、クライアント端末におけるロード時間が短縮し、処理効率が向上することから、表示処理の見かけ上の実行速度が向上する。
【０００３】
一方、ブラウザによる表示処理を高速化する別の手法として、クライアント側で、必要となるデータを事前にキャッシュしておくことも行われている。例えば下記特許文献１には、選択操作、戻る操作、スクロール操作等のユーザ入力を検知しながらデータを先読みして画面遷移を快適に行う情報処理装置が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１６０４４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１に記載の技術は、表示されるデータのレイアウトが予め固定されていることを前提にしている。したがって当該技術は、上述のように、画面の表示内容がモデルとビューとに分かれたデータを扱う場合には実現が困難である。
【０００６】
以上のような事情に鑑み、本技術の目的は、モデルとビューとから構成される表示用データを効率的にキャッシュすることが可能な情報処理装置、情報処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上述の課題を解決するため、本技術の一形態に係る情報処理装置は、通信部と、キャッシュメモリと、表示部と、制御部とを有する。上記通信部は、他の情報処理装置から、第１の面積を有する仮想領域にレイアウトされ得る複数の画像データと、当該複数の画像データのツリー構造を示す第１のツリー情報と、当該複数の画像データのレイアウトを示すレイアウト情報とを受信可能である。上記キャッシュメモリは、上記受信された複数の画像データの少なくとも一部をキャッシュ可能である。上記表示部は、上記第１の面積よりも小さい第２の面積を有する表示領域を有し、上記キャッシュされた複数の画像データの一部を当該表示領域に表示可能である。上記制御部は、上記第２の面積と、上記受信されたレイアウト情報とを基に、上記仮想領域を複数の領域に分割可能である。また制御部は、当該複数の領域に応じて、上記複数の画像データのツリー構造を示す第２のツリー情報を生成可能である。さらに制御部は、当該第２のツリー情報を基に上記少なくとも一部の画像データをキャッシュするように上記キャッシュメモリを制御可能である。
【０００８】
これにより情報処理装置は、キャッシュ用の第２のツリー情報を生成することで、モデル（複数の画像データまたは第１のツリー情報）とビュー（レイアウト情報）とから構成される表示用データを効率的にキャッシュすることができる。
【０００９】
上記制御部は、上記複数の領域にそれぞれポイントを付与し、所定値以上のポイントを付与された領域にレイアウトされる画像データを上記キャッシュメモリにキャッシュし、当該所定値未満のポイントを付与された領域にレイアウトされる画像データを上記キャッシュメモリから消去するように上記キャッシュメモリを制御可能であってもよい。
【００１０】
これにより情報処理装置は、各領域にポイントを付与することで、次に表示される可能性の高い領域の画像データをキャッシュし、表示される可能性が低い領域の画像データをキャッシュから消去できる。
【００１１】
上記制御部は、上記表示領域に表示される画像データが変更された場合に、当該変更後の画像データを基に、上記第２のツリー情報を再生成し、上記各領域に付与されるポイントを再計算してもよい。
【００１２】
これにより情報処理装置は、表示領域の画像データが変更されるたびに、キャッシュする、またはキャッシュから消去する画像データを変更し、最適なキャッシュ状態を維持することができる。ここで、画像データの変更は、ユーザのスクロール操作のような画面遷移以外にも、例えば情報処理装置の位置や、情報処理装置が有する各種センサの出力によっても生じ得る。
【００１３】
上記制御部は、上記複数の領域のうち、上記表示領域に表示されている画像データがレイアウトされている領域と他の領域との距離が小さいほど上記ポイントが高くなるように、上記複数の領域に付与されるポイントを計算してもよい。
【００１４】
これにより情報処理装置は、現在表示中の画像データの領域からの距離が近い画像データをキャッシュし、距離が遠い画像データをキャッシュから消去することができる。
【００１５】
上記制御部は、上記表示領域に表示されている画像データがレイアウトされている領域には、上記距離に応じたポイントに加えて別途ポイントを付与してもよい。
【００１６】
これにより情報処理装置は、現在表示されている画像データを確実にキャッシュしておくことができる。
【００１７】
本技術の他の形態に係る情報処理方法は、他の情報処理装置から、第１の面積を有する仮想領域にレイアウトされ得る複数の画像データと、当該複数の画像データのツリー構造を示す第１のツリー情報と、当該複数の画像データのレイアウトを示すレイアウト情報とを受信することを含む。上記第１の面積よりも小さい第２の面積を有する表示領域を有する表示部に、上記受信された複数の画像データの一部が表示される。上記第２の面積と、上記受信されたレイアウト情報とを基に、上記仮想領域を複数の領域に分割される。当該複数の領域に応じて、上記複数の画像データのツリー構造を示す第２のツリー情報が生成される。当該第２のツリー情報を基に前記少なくとも一部の画像データがキャッシュされる。
【００１８】
本技術の他の形態に係るプログラムは、情報処理装置に、受信ステップと、表示ステップと、生成ステップと、キャッシュステップとを実行させる。上記受信ステップでは、他の情報処理装置から、第１の面積を有する仮想領域にレイアウトされ得る複数の画像データと、当該複数の画像データのツリー構造を示す第１のツリー情報と、当該複数の画像データのレイアウトを示すレイアウト情報とが受信される。上記表示ステップでは、上記第１の面積よりも小さい第２の面積を有する表示領域を有する表示部に、上記受信された複数の画像データの一部が表示される。上記生成ステップでは、上記第２の面積と、上記受信されたレイアウト情報とを基に、上記仮想領域が複数の領域に分割され、当該複数の領域に応じて、上記複数の画像データのツリー構造を示す第２のツリー情報が生成される。上記キャッシュ／消去ステップでは、上記第２のツリー情報を基に上記少なくとも一部の画像データがキャッシュされる。
【発明の効果】
【００１９】
以上のように、本技術によれば、モデルとビューとから構成される表示用データを効率的にキャッシュすることができる。
【図面の簡単な説明】
【００２０】
【図１】本技術の一実施形態における画像表示システムの構成を示す図である。
【図２】上記画像表示システムにおけるユーザ端末のハードウェア構成を示した図である。
【図３】上記ユーザ端末が有するソフトウェアを示した機能ブロック図である。
【図４】上記ユーザ端末がサーバから受信するツリー情報の例を示した図である。
【図５】図４のツリー情報に基づいて描画されるビューの例を示した図である。
【図６】上記ユーザ端末がサーバから受信するレイアウト情報の例を示した図である。
【図７】上記ユーザ端末がサーバから受信するレイアウト情報の例を示した図である。
【図８】ユーザ端末によるキャッシュ処理の流れを示したフローチャートである。
【図９】上記ユーザ端末により生成される仮想的なツリー情報の例を示した図である。
【図１０】図９の仮想的なツリー情報に基づいて描画される画面の例を示した図である。
【図１１】ユーザ端末が仮想的なツリー情報を生成する処理の流れを示したフローチャートである。
【図１２】ユーザ端末がリージョンごとにポイントを設定してキャッシュを管理する処理の流れを示したフローチャートである。
【図１３】リージョンごとにポイントが設定される例を示した図である。
【図１４】ポイント設定処理に関するキャッシュメモリ内部のメタデータの例を示した図である。
【発明を実施するための形態】
【００２１】
以下、本技術に係る実施形態を、図面を参照しながら説明する。
【００２２】
［システムの概要］
図１は、本技術の一実施形態における画像表示システムの構成を示す図である。
【００２３】
同図に示すように、このシステムは、サーバ１００とユーザ端末２００とで構成される。両者はインターネット５０等のネットワークにより互いに通信可能とされている。
【００２４】
ユーザ端末２００は複数存在しうる。ユーザ端末２００は、典型的には、例えばスマートフォン、携帯電話機、タブレットＰＣ等の携帯端末であるが、デスクトップ型やノートブック型のＰＣ、電子書籍リーダー、携帯型ＡＶ（Audio/Visual）機器等、あらゆる情報処理装置でありうる。
【００２５】
ユーザ端末２００は、サーバ１００から大量の画像をダウンロードして、それらをユーザインタフェースにより表示する。本実施形態では、特に、モデルとビューとが分離されたユーザインタフェースのアーキテクチャが対象とされている。モデルとビューとが分離されたユーザインタフェースでは、サーバ１００ではモデル情報を管理し、クライアント側のユーザ端末２００は、その機器属性やユーザ入力等に応じてビューを変化させる。これにより、様々な種別のユーザ端末２００に対応可能な柔軟システムが実現される。ここで、モデル情報とは、ページデータや画像データのデータベースを指し、ビュー情報は描画用のツリー構造、レイアウト情報、デザインテンプレート等が想定される。より広い意味では、ツリー構造もモデル情報と見なし得る。
【００２６】
ユーザ端末２００は、サーバ１００へ、ウェブブラウザ（以下、単にブラウザと称する）のユーザインタフェースを介して、複数の画像ファイルを含むウェブページをリクエストする。サーバ１００は当該リクエストに応じて、ウェブページ及び画像ファイルを、当該画像ファイルのツリー構造を示すツリー情報（例えば、ＤＯＭ（Document Object Model）ツリー）や画像ファイルのレイアウト情報と共にユーザ端末２００へ送信する。
【００２７】
［ユーザ端末のハードウェア構成］
図２は、上記ユーザ端末２００のハードウェア構成を示した図である。同図に示すように、ユーザ端末２００は、ＣＰＵ（Central Processing Unit）１１、ＲＯＭ（Read Only Memory）１２、ＲＡＭ（Random Access Memory）１３、入出力インタフェース１５、及び、これらを互いに接続するバス１４を備える。
【００２８】
ＣＰＵ１１は、必要に応じてＲＡＭ１３等に適宜アクセスし、各種演算処理を行いながらユーザ端末２００の各ブロック全体を統括的に制御する。ＲＯＭ１２は、ＣＰＵ１１に実行させるＯＳ、プログラムや各種パラメータなどのファームウェアが固定的に記憶されている不揮発性のメモリである。ＲＡＭ１３は、例えばＤＲＡＭ（Dynamic RAM）であり、ユーザ端末２００のメインメモリとして用いられる。ＲＡＭ１３は、ＣＰＵ１１の作業用領域として、ＯＳ、実行中の各種アプリケーション、処理中の各種データを一時的に保持する。
【００２９】
また、ＣＰＵ１１の内部には、キャッシュメモリ２０が設けられている。キャッシュメモリ２０は、サーバ１００から受信した画像データをキャッシュする。キャッシュメモリ２０は例えばＳＲＡＭ（Static RAM）であるが、高速な読み書きが可能な一次記憶装置として用いることができればどのような記憶素子であっても構わない。キャッシュメモリ２０の内部では、キーと値のペアによりデータが保持される。
【００３０】
入出力インタフェース１５には、表示部１６、操作受付部１７、記憶部１８、通信部１９等が接続される。
【００３１】
表示部１６は、例えばＬＣＤ、ＯＥＬＤ、ＣＲＴ（Cathode Ray Tube）等を用いた表示デバイスであり、サーバ１００から受信した画像データを表示する。
【００３２】
操作受付部１７は、例えばマウス等のポインティングデバイス、キーボード、タッチパネル、その他の入力装置である。操作受付部１７がタッチパネルである場合、そのタッチパネルは表示部１６と一体となり得る。
【００３３】
記憶部１８は、例えばＨＤＤ（Hard Disk Drive）や、フラッシュメモリ（ＳＳＤ；Solid State Drive）、その他の固体メモリ等の不揮発性メモリである。当該記憶部１８には、上記ＯＳや各種アプリケーション、各種データが記憶される。
【００３４】
通信部１９は、インターネット５０やＬＡＮに有線接続するためのＮＩＣ等であり、サーバ１００との間の通信処理（リクエストの送信やレスポンスの受信）を担う。
【００３５】
［ユーザ端末のソフトウェア構成］
図４は、上記ユーザ端末２００が有するソフトウェアモジュールを示した機能ブロック図である。当該ソフトウェアモジュールは、例えば、時系列で並んだ大量の画像（写真）データを一覧表示するアプリケーションの機能として設けられるが、これに限られない。
【００３６】
同図に示すように、ユーザ端末２００は、データ取得部３１、データ構造変換部３２、表示制御部３３、表示領域判定部３４、キャッシュ制御部３５及びデータベース３６を有する。
【００３７】
データ取得部３１は、サーバ１００から、画像データ、ツリー情報（第１のツリー情報）、レイアウト情報をネットワーク経由で取得し、データ構造変換部３２へ引き渡す。
【００３８】
データ構造変換部３２は、データ取得部３１で取得されたデータを、キャッシュメモリ２０によるキャッシュ用のツリー構造（第２のツリー情報）に変換し、それをデータベース３６に格納する。
【００３９】
表示制御部３３は、データベース３６に格納された画像データを、レイアウト情報を基に表示部１６に表示するとともに、ユーザの入力やコンテクストの変化により表示内容を変化させる。
【００４０】
表示領域判定部３４は、サーバ１００から受信されたデータのレイアウト領域の中で、現在表示部１６に表示されている画像が、どの部分のデータであるかを判定する。
【００４１】
キャッシュ制御部３５は、上記表示領域判定部３４が判定した表示内容に応じて、キャッシュメモリ２０へのデータの挿入またはキャッシュメモリ２０からのデータの削除を実行する。
【００４２】
［ツリー情報］
図４は、上記サーバ１００から受信されるツリー情報を示した図である。同図に示す各ノード（Ａ〜Ｊ）が、例えば１つのＨＴＭＬのＩＭＧタグに相当する。
【００４３】
図５は、上記ツリー情報に基づいて描画されるビューの例を示した図である。
【００４４】
同図において、仮想領域Ｖは、上記レイアウト情報により示される画像データのレイアウト可能領域を示しており、画面表示領域Ｄは、上記表示部１６の有する表示領域を示している。通常、画面表示領域Ｄの面積は、仮想領域Ｖのそれよりも小さい。
【００４５】
仮想領域Ｖは、例えば５つのリージョンＲ１〜Ｒ５に分割されており、各リージョンには、それぞれ、上記ツリー情報にしたがって画像データＡ〜Ｊが表示される。リージョンは、例えば作成日時等の画像データの属性によって分けられる。同図の例は、表示部１６に、画像データＡ、Ｂ及びＤのみが表示されている状態を示している。
【００４６】
この例のように、ツリー情報と画面表示領域Ｄとが単純に対応している場合には、キャッシュメモリ２０に保持しておくべきデータを予測するのは比較的容易である。しかしながら、昨今では、端末ごとに多彩な表示態様が可能になってきており、ツリー構造と画面表示領域Ｄとが一致していない場合も多い。本実施形態では、このような場合でも効率的なキャッシュ利用が行える仕組みが提供される。
【００４７】
［レイアウト情報］
図６及び図７は、上記サーバ１００から受信されるレイアウト情報の例を示した図である。
【００４８】
図６は、表示部１６上の画像ファイルの描画位置情報とアドレス情報とを示したものである。同図の例では、仮想領域Ｖが３つのリージョンＲ１〜Ｒ３に分割され、画像ファイルがレイアウトされる位置（１−１、１−２、...、３−３、３−４）が、各リージョンの上部（Ｎ）と下部（Ｓ）とにそれぞれ２つずつ割り当てられている。
【００４９】
図７は、レイアウトファイルとしてサーバ１００で管理されているファイルを示したものである。当該レイアウトファイル上では、画像ファイル名と、表示上のアドレス情報（上記レイアウト位置）とが格納されている。
【００５０】
［ユーザ端末の動作］
次に、以上のように構成された画像表示システムにおけるユーザ端末２００の動作を説明する。この動作は、上記ユーザ端末２００のＣＰＵ１１の制御下において、他のハードウェア及びソフトウェア（ブラウザ）と協働して行われる。
【００５１】
図８は、ユーザ端末２００による画像データのキャッシュ処理の流れを示したフローチャートである。
【００５２】
同図に示すように、まずＣＰＵ１１は、サーバ１００から画像データ、ツリー情報（第１のツリー情報）及びレイアウト情報を取得する（ステップ８１）。そしてＣＰＵ１１は、当該取得した画像データを、レイアウト情報を基に表示部１６に表示する（ステップ８２）。
【００５３】
続いてＣＰＵ１１は、上記レイアウト情報を基に、上記サーバ１００から受信したツリー情報（第１のツリー情報）とは別に、キャッシュ用に仮想的なツリー情報（第２のツリー情報）を生成する（ステップ８３）。
【００５４】
図９は、当該生成される仮想的なツリー情報の例を示した図である。また図１０は、図９の仮想的なツリー情報に基づいて描画される画面の例を示した図である。
【００５５】
図９に示すように、当該ツリー構造においては、画像ファイルが複数のグループ（Ｇ１〜Ｇ３）に分類される。１つのグループは、表示可能領域Ｄに対応している。
【００５６】
図１０に示すように、仮想領域Ｖは、表示部１６の表示可能領域Ｄの３倍に相当する面積を有している。同図では、この３画面分のグループのうち、左側のグループＧ１が表示対象となっている。上記サーバ１００から受信したツリー情報（図４参照）に基づけば、画像ファイルＡ，Ｂ，Ｃの隣は画像ファイルＤ，Ｅ，Ｆ，Ｇであるべきであるが、レイアウト情報によって、画像ファイルＨ，Ｉ，Ｊがその位置にレイアウトされている。
【００５７】
このように、レイアウト情報が複雑になると、論理的なツリー構造と画面表示とが一致しない例が多く見られるようになる。
【００５８】
図８に戻り、ＣＰＵ１１は、続いて、画像ファイルの、仮想領域Ｖ内の表示領域の位置が変更されたか否かを判断する（ステップ８４）。変更がない場合には（Ｎｏ）、変更がされるまで待機する（ステップ８５）。
【００５９】
表示領域の位置に変更があった場合（Ｙｅｓ）、ＣＰＵ１１は、キャッシュ用の仮想的なツリー情報を再構成する（ステップ８６）。
【００６０】
そしてＣＰＵ１１は、ツリー情報を再構成した状態で、現在の表示領域の位置との関係に応じて、各リージョンにポイントを設定する（ステップ８７）。当該リージョンへのポイント設定処理については後述する。
【００６１】
図１１は、当該仮想的なツリー情報の生成処理の詳細を示した図である。
【００６２】
同図に示すように、ＣＰＵ１１は、まず表示領域に関する情報を取得する（ステップ１１１）。表示領域の情報とは、表示部１６の表示可能領域Ｄのサイズ（面積）や解像度である。
【００６３】
続いてＣＰＵ１１は、上記仮想領域Ｖを、表示可能領域Ｄの面積分ずつの領域に分割する（ステップ１１２）。例えば上記図９及び図１０の例では、仮想領域Ｖが３つの領域（Ｇ１〜Ｇ３）に分割されている。
【００６４】
続いてＣＰＵ１１は、各領域（に属する画像ファイル）を表示可能性が高い順にグループ分けする（ステップ１１３）。上記図９及び図１０の例では、現在の表示領域からの距離の近さに応じてグループ分けがなされる。
【００６５】
そしてＣＰＵ１１は、各グループに上記順番に応じた番号を付与し、当該グループに属する画像ファイルを、仮想的なツリーに追加する（ステップ１１４）。距離以外にも、例えば、画像ファイルについてのユーザの嗜好度（再生頻度）や画像ファイルの作成日時等に基づいてグループ分けがなされてもよい。
【００６６】
図９及び図１０の例では、ツリーはフラットな構成となっているが、ツリーは、表示領域に応じて親子関係を持つものであってもよい。例えば、ズームインやズームアウトによって表示領域に変更がある場合には、ズームイン前またはズームアウト前の画像ファイルと、ズームイン後またはズームアウト後の画像ファイルとが親子関係を有するファイルとしてツリー上で管理されることになる。
【００６７】
図１２は、ユーザ端末２００がリージョンごとにポイントを設定してキャッシュを管理する処理の流れを示したフローチャートである。
【００６８】
同図に示すように、まずＣＰＵ１１は、例えばユーザの操作等により、上記仮想領域Ｖ内での表示領域が変更されたか否かを判断する（ステップ１２１）。
【００６９】
表示領域に変更がないと判断した場合（Ｎｏ）、ＣＰＵ１１は、サーバ１００から送信されるデータの変更通知があったか否かを判断する（ステップ１２２）。
【００７０】
サーバ１００からの変更通知がないと判断した場合（Ｎｏ）、ＣＰＵ１１は、画像データのキャッシュから所定時間が経過したか否かを判断する（ステップ１２３）。
【００７１】
上記ステップ１２１、１２２及び１２３でＹｅｓと判断した場合、ＣＰＵ１１は、キャッシュのタイムアウト処理を実行する（ステップ１２４）。すなわち、キャッシュメモリ２０が、キャッシュ開始からの経過時間による自動削除機能を有している場合、一定時間が経過するごとにキャッシュメモリ２０から、当該一定時間参照されなかったデータを消去する。
【００７２】
続いてＣＰＵ１１は、分割された全てのリージョンについて、それらに付与されているポイントを例えば１０ポイント減算する（ステップ１２４）。
【００７３】
続いてＣＰＵ１１は、現在の表示領域からの距離に応じて、各リージョンにポイントを加算する（ステップ１２６）。すなわち、例えば、現在の表示領域からの距離が近いリージョンほど高いポイントが付与される。またＣＰＵ１１は、現在の表示領域については特別に例えば２０ポイントを加算する（ステップ１２７）。
【００７４】
例えば、１回の画面遷移（例えば１フリック操作）により移動可能な位置が距離１とされ、例えば距離が１の場合は２０ポイント、距離が２の場合は１０ポイントといったように、距離に応じてポイントが付与される。
【００７５】
図１３は、リージョンごとにポイントが設定される例を示した図である。同図に示すように、現在の表示領域Ｄには５０ポイントが付与されており、そこから距離が離れるにしたがってポイントが小さくなっているのが分かる。
【００７６】
図１２に戻り、続いてＣＰＵ１１は、一定ポイント以上のリージョンに属する画像データを先読みしてキャッシュメモリ２０に格納する（ステップ１２８）。一方、ＣＰＵ１１は、一定ポイント未満のリージョンに属する画像データがキャッシュメモリ２０に格納されていれば、それを削除する（ステップ１２９）。例えば一定ポイントは１０ポイントとされるが、これに限られない。
【００７７】
これにより、次に表示領域となりそうなリージョンの画像データが常にキャッシュメモリ２０に格納されることとなる。
【００７８】
キャッシュメモリ２０では、上記ポイント設定処理に関するメタデータをその内部に保持する。図１４は、当該メタデータの例を示した図である。同図に示すように、ポイントが１０ポイント未満の画像ファイルＬとＭとがキャッシュメモリ２０から削除されているのが分かる。
【００７９】
［まとめ］
以上のように、本実施形態によれば、ユーザ端末２００は、サーバ１００から送信されるツリー情報とは別に、キャッシュ用の仮想的なツリー情報を生成し、当該ツリー情報を基に、リージョン単位でキャッシュメモリ２０を管理する。これによりユーザ端末２００は、モデルとビューとから構成されるコンテンツ（画像データ）を事前にキャッシュし、不要になりそうなコンテンツをキャッシュから追い出すことで、効率的なキャッシュ管理を実行できる。
【００８０】
［変形例］
本技術は上述の実施形態にのみ限定されるものではなく、本開示の要旨を逸脱しない範囲内において種々変更され得る。
【００８１】
上述の実施形態においては、例えばユーザの操作により表示領域が変更される例が示された。しかし、ユーザの操作を伴わない場合でも、様々なコンテクストの変化に基づいてキャッシュが変更されてもよい。例えば、ユーザ端末２００がＧＰＳセンサや地磁気センサ等を有し、ユーザ端末２００の位置情報に応じて表示領域が変わるような写真表示アプリケーションを有している場合、当該位置情報の変化に応じて仮想的なツリー情報が生成され、キャッシュに格納されるコンテンツが変更されてもよい。その他、気候情報の変化等の他のセンサ情報や、他のユーザ端末２００の状況の変化、コンテンツの人気度の変化等に応じて、キャッシュに格納されるコンテンツが変更されてもよい。
【００８２】
また、ユーザ端末２００がイメージ検索アプリケーションを実行可能な場合、ユーザ端末２００は、人気度の高いキーワードと、その検索結果としての画像データとの対応関係に応じて、キャッシュ用の仮想的なツリー情報を生成し、検索結果として表示される可能性の高い画像データをキャッシュメモリ２０に格納していてもよい。
【００８３】
上述の実施形態においては、クライアントとしてのユーザ端末２００がサーバ１００から画像ファイルを取得する例を示した。しかし、ユーザ端末２００の機能とサーバ１００の機能とは、物理的に離れたそれぞれの装置で実行される必要はない。すなわち、ユーザ端末２００の機能とサーバ１００の機能とが１つの機器内で論理的に役割分担されてもよい。
【００８４】
例えば、ユーザ端末２００の機能がブラウザとして提供され、サーバ１００の機能がデーモンとして提供されてもよい。この装置における動作は、上述した実施形態における動作と比較して、サーバ１００とユーザ端末２００との間のネットワークを介した通信処理が、装置内部におけるブラウザとデーモンとの信号処理に替わる以外は同様となる。
【００８５】
上述の実施形態においては、本技術がユーザ端末２００に適用された例を示した。しかし、本技術は、オーディオプレイヤー、テレビジョン装置、ゲーム機器、カーナビゲーション装置、記録再生装置等、他のあらゆる情報処理装置に適用可能である。
【００８６】
［その他］
本技術は以下のような構成をとることもできる。
（１）他の情報処理装置から、第１の面積を有する仮想領域にレイアウトされ得る複数の画像データと、当該複数の画像データのツリー構造を示す第１のツリー情報と、当該複数の画像データのレイアウトを示すレイアウト情報とを受信可能な通信部と、
前記受信された複数の画像データの少なくとも一部をキャッシュ可能なキャッシュメモリと、
前記第１の面積よりも小さい第２の面積を有する表示領域を有し、前記キャッシュされた複数の画像データの一部を当該表示領域に表示可能な表示部と、
前記第２の面積と、前記受信されたレイアウト情報とを基に、前記仮想領域を複数の領域に分割し、当該複数の領域に応じて、前記複数の画像データのツリー構造を示す第２のツリー情報を生成し、当該第２のツリー情報を基に前記少なくとも一部の画像データをキャッシュするように前記キャッシュメモリを制御可能な制御部と
を具備する情報処理装置。
（２）上記（１）に記載の情報処理装置であって、
前記制御部は、前記複数の領域にそれぞれポイントを付与し、所定値以上のポイントを付与された領域にレイアウトされる画像データを前記キャッシュメモリにキャッシュし、当該所定値未満のポイントを付与された領域にレイアウトされる画像データを前記キャッシュメモリから消去するように前記キャッシュメモリを制御する
情報処理装置。
（３）上記（２）に記載の情報処理装置であって、
前記制御部は、前記表示領域に表示される画像データが変更された場合に、当該変更後の画像データを基に、前記第２のツリー情報を再生成し、前記各領域に付与されるポイントを再計算する
情報処理装置。
（４）上記（２）または（３）に記載の情報処理装置であって、
前記制御部は、前記複数の領域のうち、前記表示領域に表示されている画像データがレイアウトされている領域と他の領域との距離が小さいほど前記ポイントが高くなるように、前記複数の領域に付与されるポイントを計算する
情報処理装置。
（５）上記（４）に記載の情報処理装置であって、
前記制御部は、前記表示領域に表示されている画像データがレイアウトされている領域には、前記距離に応じたポイントに加えて別途ポイントを付与する
情報処理装置。
【符号の説明】
【００８７】
１１…ＣＰＵ
１６…表示部
１７…操作受付部
１９…通信部
２０…キャッシュメモリ
３１…データ取得部
３２…データ構造変換部
３３…表示制御部
３４…表示領域判定部
３５…キャッシュ制御部
３６…データベース
５０…インターネット
１００…サーバ
２００…ユーザ端末
【図１】
2013020395.tif 000003
【図２】
2013020395.tif 000004
【図３】
2013020395.tif 000005
【図４】
2013020395.tif 000006
【図５】
2013020395.tif 000007
【図６】
2013020395.tif 000008
【図７】
2013020395.tif 000009
【図８】
2013020395.tif 000010
【図９】
2013020395.tif 000011
【図１０】
2013020395.tif 000012
【図１１】
2013020395.tif 000013
【図１２】
2013020395.tif 000014
【図１３】
2013020395.tif 000015
【図１４】
2013020395.tif 000016