(57)【要約】【課題】モバイルコンピューティングデバイスによるファイル管理のシステムおよび方法を提供すること。【解決手段】モバイルコンピューティングデバイスによるファイル管理のシステムおよび方法。コンピュータシステムによって実行される例の方法は、コンピュータシステムによって、メモリ内に、第1のサイズを有する第1のファイルを記憶するステップと、メモリ内に、第1のファイルから導出された第2のファイルを記憶するステップであって、第2のファイルは、第2のサイズを有し、第2のサイズは、第1のサイズより小さい、記憶するステップと、メモリがメモリ書込動作を実行するのに不十分であると判定するステップと、第4のファイルを関連付けられた第3のファイルを選択するステップであって、第4のファイルは、第3のファイルから導出される、選択するステップと、第3のファイルをメモリから除去するステップとを含むことができる。【選択図】図１
2019083016.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータシステムによって、複数の画像ファイルをメモリ内に記憶するステップと、
前記メモリ内に、それぞれが前記複数の画像ファイルのうちの画像ファイルに対応する複数のプレビューファイルを記憶するステップと、
前記メモリがメモリ書込動作を実行するのに不十分であると判定するステップと、
前記複数の画像ファイルのうちの画像ファイルを選択するステップと、
前記選択された画像ファイルに関連するプレビューファイルを前記メモリから除去するステップと
を含む方法。
【請求項２】
前記メモリ書込動作を実行するステップをさらに含む、請求項1に記載の方法。
【請求項３】
第1のファイルは、静止画像ファイル、ビデオファイル、オーディオファイル、または文書ファイルのうちの1つによって提供される、請求項1に記載の方法。
【請求項４】
第2のファイルは、第1のファイルのプレビュー、前記第1のファイルの少なくとも一部、または前記第1のファイルの説明のうちの1つによって提供される、請求項1に記載の方法。
【請求項５】
第3のファイルを選択するステップは、最も以前に獲得されたファイルを選択するステップ、最も少なくアクセスされたファイルを選択するステップ、または最も長くアクセスされていないファイルを選択するステップのうちの1つを含む、請求項1に記載の方法。
【請求項６】
第3のファイルを選択するステップは、前記メモリ書込動作を実行するのに必要なメモリのサイズ以上のサイズを有するファイルを選択するステップを含む、請求項1に記載の方法。
【請求項７】
第3のファイルを選択するステップは、複数のファイルを選択するステップを含む、請求項1に記載の方法。
【請求項８】
静止画像カメラ、ビデオカメラ、マイクロホン、またはネットワークインターフェースのうちの1つを介して第1のファイルを受け取るステップをさらに含む、請求項1に記載の方法。
【請求項９】
第3のファイルに対してファイル動作を実行するユーザインターフェースコマンドを受け取るステップと、
通信インターフェースを介して前記第3のファイルのコピーを取り出すステップと
をさらに含む、請求項1に記載の方法。
【請求項１０】
前記ファイル動作は、第3のファイルを表示するステップまたは前記第3のファイルを再生するステップのうちの1つを含む、請求項8に記載の方法。
【請求項１１】
前記メモリ書込動作は、ユーザインターフェースコマンドによって要求される、請求項1に記載の方法。
【請求項１２】
前記メモリ書込動作は、前記コンピュータシステムによって受け取られる第5のファイルを前記メモリ内に記憶することによって表される、請求項1に記載の方法。
【請求項１３】
第5のファイルは、静止画像ファイル、ビデオファイル、オーディオファイル、または文書ファイルのうちの1つによって提供される、請求項11に記載の方法。
【請求項１４】
第2のファイルを記憶するステップは、第1のファイルを外部コンピュータに送信することに応答して通信インターフェースを介して前記第2のファイルを受信するステップを含む、請求項11に記載の方法。
【請求項１５】
入出力インターフェースを介して第1のファイルを受信するステップをさらに含む、請求項11に記載の方法。
【請求項１６】
第1のファイルを外部コンピュータに送信するステップをさらに含む、請求項11に記載の方法。
【請求項１７】
メモリと、
前記メモリに結合されたプロセッサであって、
前記メモリ内に、第1のサイズを有する第1のファイルを記憶し、
前記メモリ内に、前記第1のファイルから導出された第2のファイルを記憶し、前記第2のファイルは、第2のサイズを有し、前記第2のサイズは、前記第1のサイズより小さく、
前記メモリがメモリ書込動作を実行するのに不十分であると判定し、
第4のファイルを関連付けられた第3のファイルを選択し、前記第4のファイルは、前記第3のファイルから導出され、
前記第3のファイルを前記メモリから除去する
ように構成される、プロセッサと
を含むシステム。
【請求項１８】
前記プロセッサは、入出力インターフェースを介して前記第1のファイルを受信するようにさらに構成される、請求項16に記載のシステム。
【請求項１９】
前記プロセッサは、前記第1のファイルを外部コンピュータに送信するようにさらに構成される、請求項16に記載のシステム。
【請求項２０】
コンピュータシステムによって実行された時に、前記コンピュータシステムに、
メモリ内に、第1のサイズを有する第1のファイルを記憶させ、
前記メモリ内に、前記第1のファイルから導出された第2のファイルを記憶させ、前記第2のファイルは、第2のサイズを有し、前記第2のサイズは、前記第1のサイズより小さく、
前記メモリがメモリ書込動作を実行するのに不十分であると判定させ、
第4のファイルを関連付けられた第3のファイルを選択させ、前記第4のファイルは、前記第3のファイルから導出され、
前記第3のファイルを前記メモリから除去させる
実行可能命令を含むコンピュータ可読非一時的記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、全般的にはコンピュータシステムに関し、より具体的にはモバイルコンピューティングデバイスによるファイル管理のシステムおよび方法に関する。
【背景技術】
【０００２】
モバイルコンピューティングデバイスは、多数の入出力(I/O)インターフェースならびに/またはたとえば静止画像カメラ、ビデオカメラ、および/もしくはマイクロホンなどの周辺デバイスを有する場合がある。上記および他の入出力インターフェースを介してモバイルコンピューティングデバイスによって獲得されるファイルは、モバイルコンピューティングデバイスのローカルメモリ内に記憶され得る。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２０９１３１号公報
【特許文献２】特開２００７−３２３３７８号公報
【特許文献３】特開２００３−８５００８号公報
【特許文献４】特開２０１１−２５７９９０号公報
【特許文献５】特開２００６−６０６３０号公報
【発明の概要】
【課題を解決するための手段】
【０００４】
本開示は、限定によるのではなく例によって示され、図面に関連して検討される時に、下の詳細な説明を参照することによってより十分に理解され得る。
【図面の簡単な説明】
【０００５】
【図１】本開示の1つまたは複数の態様による、ファイル管理を実行するモバイルコンピューティングデバイスの1つの例示的な実施形態を示すネットワークレベルの図である。
【図２】本開示の1つまたは複数の態様による、モバイルコンピューティングデバイス上に記憶されたファイルへのアクセスを追跡するデータ構造を概略的に示す図である。
【図３】本開示の1つまたは複数の態様による、ファイル管理方法の例を概略的に示す図である。
【図４】本開示の1つまたは複数の態様による、カレンダアプリケーションを実行するコンピュータシステムによってサポートされる複数のデータ構造を概略的に示す図である。
【図５ａ】本開示の1つまたは複数の態様による、カレンダアプリケーションを実行するコンピュータシステムによってレンダリングされるカレンダビューの例を概略的に示す図である。
【図５ｂ】本開示の1つまたは複数の態様による、カレンダアプリケーションを実行するコンピュータシステムによってレンダリングされるカレンダビューの例を概略的に示す図である。
【図６ａ】本開示の1つまたは複数の態様による、カレンダアプリケーションを実行するコンピュータシステムによってレンダリングされるノートブックビューの例を概略的に示す図である。
【図６ｂ】本開示の1つまたは複数の態様による、カレンダアプリケーションを実行するコンピュータシステムによってレンダリングされるノートブックビューの例を概略的に示す図である。
【図７】本開示の1つまたは複数の態様による、ファイル管理方法を示す流れ図である。
【図８】本開示の例に従って動作する例示的なコンピュータシステムを示すブロック図である。
【発明を実施するための形態】
【０００６】
本明細書で説明されるのは、モバイルコンピューティングデバイスによるファイル管理の方法およびシステムである。「モバイルコンピューティングデバイス」は、本明細書では、少なくとも1つのプロセッサ、メモリ、および少なくとも1つの通信インターフェースを有するポータブルデバイスを指す。しかし、本明細書で説明されるシステムおよび方法が、たとえばデスクトップコンピュータなどの非ポータブルコンピュータシステムに同等に適用可能である可能性があることに留意されたい。
モバイルコンピューティングデバイスは、たとえば、キーボード、タッチスクリーン、ネットワークインターフェース、マイクロホン、ビデオカメラ、静止画像カメラ、および/またはマイクロホンを含むさまざまなインターフェースを介して情報を入力することができる。そのようなモバイルコンピューティングデバイスは、静止画像ファイル、ビデオストリームファイル、オーディオストリームファイル、および/または文書ファイル(たとえば、テキストファイル)を入力できるものとすることができる。
【０００７】
いくつかの実施態様では、モバイルコンピューティングデバイスは、ファイル(たとえば、静止画像ファイル)の獲得に応答して、獲得されたファイルをそのローカルメモリ内に記憶することができる。「メモリ」は、本明細書では、ランダムアクセスメモリ(RAM)および/またはストレージメモリを指す。後者は、EEPROM、フラッシュメモリ、ディスクメモリ、その他などの不揮発性メモリ内に存在する1つまたは複数のファイルシステムによって表され得る。
【０００８】
ファイルの獲得に応答して、モバイルコンピューティングデバイスは、たとえば無線通信インターフェースを介して、獲得されたファイルのコピーをファイルサーバに送信することもできる。モバイルコンピューティングデバイスは、さらに、獲得された画像ファイルから導出されたプレビューファイルをローカルメモリ内に記憶することができる。プレビューファイルは、たとえば、サムネイル画像もしくは他の縮小されたサイズの画像または下げられた解像度の画像の形とすることができる。
【０００９】
モバイルコンピューティングデバイスは、さらに、メモリ書込動作(たとえば、新たに獲得された画像ファイルのローカルファイルシステム内での記憶)を試みることができる。モバイルコンピューティングデバイスのローカルファイルシステム内で使用可能な空間が、試みられたメモリ書込動作の完了を可能にするのに不十分である場合には、モバイルコンピューティングデバイスは、ローカルファイルシステムから除去し、したがって、新たに獲得されたファイルを記憶するのに必要な空間を解放するために、1つまたは複数の以前に獲得されたファイルを選択することができる。1つの例示的な例では、モバイルコンピューティングデバイスは、ファイルアクセス動作の回数によって最も少なくアクセスされたファイルを除去することができる。別の例では、モバイルコンピューティングデバイスは、最も長くアクセスされていない(least recently accessed)ファイルを除去することができる。さらなる例では、モバイルコンピューティングデバイスは、最も以前に獲得された(least recently acquired)ファイルを除去することができる。
【００１０】
1つまたは複数の選択されたファイルの除去に応答して、モバイルコンピューティングデバイスは、試みられたメモリ書込動作(たとえば、ローカルファイルシステム内での新たに獲得された画像ファイルの記憶)を完了することができる。その後、以前にローカルメモリから除去されたファイルを要求するユーザインターフェースコマンドの最終的な受取に応答して、このシステムは、対応するプレビューファイルを提示することができる。フルサイズファイルを明示的に対象とするユーザインターフェースコマンドの受取に応答して、このシステムは、そのファイルが当初に記憶されたサーバからフルサイズファイルを取り出すことができる。
【００１１】
したがって、モバイルコンピューティングデバイスは、モバイルコンピューティングデバイスによって獲得されたファイルのうちの少なくともいくつかのプレビューファイルを記憶することができ、さらに、フルサイズファイルをモバイルコンピューティングデバイスのファイルシステム内に収容できる範囲で、獲得されたファイルのサブセットについてファイルのフルサイズバージョンを記憶することができる。フルサイズファイルは、新たに獲得されたファイルを収容するためにファイルシステムから除去される場合があり、プレビューファイルが、ユーザインターフェースコマンドに応答してユーザに提示される場合がある。フルサイズファイルは、フルサイズファイルを明示的に対象とするユーザインターフェースコマンドの受取に応答してファイルサーバから取り出され得る。
【００１２】
いくつかの実施態様では、上で説明されたファイル管理方法は、モバイルコンピューティングデバイスによって実行されるカレンダアプリケーションによるファイル添付の処理を容易にするために実施され得る。「カレンダアプリケーション」は、本明細書では、個々のユーザおよび/またはユーザのグループに関するイベントのスケジューリングおよび追跡を提供するアプリケーションを指す。
【００１３】
上で言及されたシステムおよび方法のさまざまな態様を、限定によるのではなく例によって、本明細書で下で詳細に説明する。
【００１４】
図1に、本開示の1つまたは複数の態様による、コンピュータシステム1000の1つの例示的な実施形態のネットワークレベルの図を示す。コンピュータシステム1000は、ファイル管理アプリケーション(たとえば、カレンダアプリケーション)のサーバ側部分120を実行する1つまたは複数のサーバ110を含むことができる。ファイル管理アプリケーションのクライアント側部分125を実行する1つまたは複数のクライアントコンピュータ130を、複数の相互接続するネットワーク115を介してサーバコンピュータ110に接続することができる。
【００１５】
「コンピュータ」は、本明細書では、プロセッサ、メモリ、および少なくとも1つのI/Oインターフェースを含む装置を指す。コンピュータは、たとえば、サーバ、ホストコンピュータシステム上で動作する仮想マシン、ポータブルパーソナルコンピュータ(PC)もしくはデスクトップパーソナルコンピュータ(PC)、タブレットコンピュータ、またはスマートフォンによって表され得る。さらに、用語「コンピュータ」は、本明細書で説明される方法の任意の1つまたは複数を実行するために命令のセット(または複数のセット)を個別にまたは合同で実行するコンピュータのすべての集合を含まなければならない。
【００１６】
「ネットワーク」は、本明細書では、複数のコンピュータを相互接続する分散通信システムを指す。ネットワークは、たとえばローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、または仮想プライベートネットワーク(VPN)によって表され得る。いくつかの実施態様では、複数の相互接続するネットワーク115は、インターネットを含むことができる。
【００１７】
コンピュータシステム1000の諸機能を、たとえばポータブルパーソナルコンピュータ(PC)もしくはデスクトップパーソナルコンピュータ(PC)、タブレットコンピュータ、またはスマートフォンなどの1つまたは複数のクライアントデバイス130を介してエンドユーザに配送することができる。一例では、1つまたは複数のクライアントデバイス130は、ユーザインターフェース機能を提供し、1つまたは複数のサーバ110に通信し、このサーバ110が、クライアント要求処理、負荷平衡化、クライアント認証、認可、ファイルの記憶および検索、請求、ならびに他の機能を実行することができる。上記および他の機能を、1つまたは複数の物理施設内に存在する1つまたは複数のサーバ110の間で分散させることができる。
【００１８】
別の例では、上でリストされたサーバ側機能の少なくとも一部を、1つまたは複数のクライアントデバイス130によって実行することができる。いくつかの実施態様では、クライアントデバイス130は、サーバ110に接続されていない間に、少なくともその機能のサブセットを実行することができる。この処理モードを、オフラインクライアント動作モードとも言われる。
【００１９】
たとえばクライアント要求処理、負荷平衡化、クライアント認証、認可、ファイルの記憶および検索、ならびに/または請求などの上にリストした機能の一部は、サーバ側機能性に関係すると言われる場合がある。たとえばユーザ入力の受入、1つまたは複数の通信インターフェースを介するファイルの獲得、および/またはディスプレイ上の情報のレンダリングなどの他の機能は、クライアント側機能性に関係すると言われる場合がある。しかし、いくつかの実施態様では、コンピュータシステム1000が、サーバ側機能性に関係するサーバ側機能性の少なくとも一部とクライアント側機能性に関係する機能の少なくとも一部とを実行する1つまたは複数のコンピュータを含む場合がある。したがって、本明細書で言及される可能性があるクライアント側機能性およびサーバ側機能性の指定は、コンピュータシステム1000のコンポーネントに動作には何の関係もない、例示のためのものであることを意図されている。
【００２０】
いくつかの実施態様では、コンピュータシステム1000を、モバイルコンピューティングデバイス130の1つまたは複数の通信インターフェースを介してさまざまなタイプのファイルを獲得するように構成することができる。1つの例示的な例では、モバイルコンピューティングデバイス130は、静止画像ファイルを獲得するのに使用され得る静止画像カメラを備えることができる。別の例では、モバイルコンピューティングデバイス130は、ビデオストリームを獲得するのに使用され得るビデオカメラを備えることができる。さらなる例では、モバイルコンピューティングデバイス130は、オーディオストリームを獲得するのに使用され得るマイクロホンを備えることができる。さらなる例では、モバイルコンピューティングデバイス130は、テキストファイルを獲得するのに使用され得るキーボードまたはタッチスクリーンを備えることができる。
【００２１】
ファイルの獲得に応答して、モバイルコンピューティングデバイス130は、モバイルコンピューティングデバイスのローカルメモリ内にファイルを記憶することができる。1つの例示的な例では、モバイルコンピューティングデバイス130は、ローカル不揮発性メモリ内に存在するローカルファイルシステム内にファイルを記憶することができる。別の例では、モバイルコンピューティングデバイス130は、ローカル不揮発性メモリ内に存在するデータベース内にファイルを記憶することができる。
【００２２】
ファイルの獲得にさらに応答して、モバイルコンピューティングデバイス130は、ファイル管理アプリケーションのサーバ側部分120を実行する1つまたは複数のサーバ110にファイルのコピーを送信することができる。1つまたは複数のサーバ110は、ファイルシステム、データベース、および/または適切なアーキテクチャの任意の他のリポジトリ内に、受信されたファイルを記憶することができる。
【００２３】
ファイルの獲得にさらに応答して、モバイルコンピューティングデバイス130は、獲得されたファイルから導出されたプレビューファイルを作ることができる。プレビューファイルは、ベースファイルのサイズより小さいサイズを有することができる。プレビューファイルは、モバイルコンピューティングデバイスのスクリーン上でベースファイルをレンダリングするためのベースファイルの代理として働くことを意図され、プレビューファイルではなくベースファイルを表示することがユーザによって特に要求されない限り、モバイルコンピューティングデバイスは、1つまたは複数のファイルを表示するユーザインターフェースコマンドの受取に応答して、ユーザによって要求されたファイルに対応する1つまたは複数のプレビューファイルを表示することができる。
【００２４】
画像ファイルについて、プレビューファイルを、たとえばサムネイル画像もしくは他の縮小されたサイズの画像または下げられた解像度の画像によって提供することができる。ビデオファイルについて、プレビューファイルを、たとえばベースビデオファイルのフレームのサブセットを含む「トレイラ」によって提供することができる。オーディオファイルについて、プレビューファイルを、たとえばベースオーディオファイルの1つまたは複数の部分によって提供することができる。テキストファイルについて、プレビューファイルを、要約、梗概、またはベーステキストファイルの他の説明によって提供することができる。
【００２５】
いくつかの実施態様では、モバイルコンピューティングデバイスは、プレビューファイルをローカルに作ることができる。代替案では、モバイルコンピューティングデバイスは、獲得されたファイルを処理のために外部サーバに送信することができ、その後、その外部サーバからプレビューファイルを受信することができる。1つの例示的な例では、サーバ110は、サーバベースのデータリポジトリへの記憶のためにモバイルコンピューティングデバイス130からベースファイルを受信することに応答して、プレビューファイルを作るためにそのファイルを処理し、プレビューファイルをモバイルコンピューティングデバイス130に送り返すことができる。
【００２６】
モバイルコンピューティングデバイス130は、モバイルコンピューティングデバイスおよび/またはサーバ110上に記憶されたファイルへのアクセスを追跡することができる。1つの例示的な例では、モバイルコンピューティングデバイス130は、モバイルコンピューティングデバイスによって獲得された複数のファイルのファイルごとに、図2によって概略的に示されるデータ構造200をメモリ内に記憶することができる。データ構造200は、ファイル識別子210、ファイル作成タイムスタンプ212、ファイルアクセスタイムスタンプ214、および/またはファイルアクセス動作の総数216を含むことができる。このデータ構造内に記憶される情報は、本明細書で下でより詳細に説明されるように、モバイルコンピューティングデバイス130のローカルメモリから除去される候補ファイルを識別する際に使用され得る。
【００２７】
モバイルコンピューティングデバイス130は、1つまたは複数の入出力インターフェースを介してモバイルコンピューティングデバイスによって獲得されたファイルを記憶するために、ローカルメモリ内で(たとえば、1つまたは複数のローカルファイルシステム内で)クォータを割り振ることができる。モバイルコンピューティングデバイス130は、モバイルコンピューティングデバイスの使用可能なローカルメモリが試みられたメモリ書込動作(たとえば、ローカルファイルシステム内での新たに獲得されたファイルの記憶)に対処するのに不十分であると最終的に判定する可能性がある。試みられたメモリ書込動作を完了するために、モバイルコンピューティングデバイス130は、事前定義の選択判断基準に基づいて、ファイルシステムから除去し、したがって、新たに獲得されたファイルを記憶するのに必要なメモリを解放するために、以前に獲得されたファイルのうちの1つを選択することができる。
【００２８】
1つの例示的な例では、モバイルコンピューティングデバイスは、ファイルアクセス動作の総数216に基づいて、それに関連する最小回数のファイルアクセス動作を有するファイルを選択するために、モバイルコンピューティングデバイスのローカルメモリ内に記憶された複数のファイルについてデータ構造200の配列を分析することができる。別の例では、モバイルコンピューティングデバイスは、ファイルアクセスタイムスタンプ214に基づいて、最も長くアクセスされていないファイルを選択するために、モバイルコンピューティングデバイスのローカルメモリ内に記憶された複数のファイルについてデータ構造200の配列を分析することができる。さらなる例では、モバイルコンピューティングデバイスは、ファイル作成タイムスタンプ212に基づいて、最も以前に獲得されたファイルを選択するために、モバイルコンピューティングデバイスのローカルメモリ内に記憶された複数のファイルについてデータ構造200の配列を分析することができる。さらなる例では、モバイルコンピューティングデバイスは、たとえば所与の日付までに作成された最も少なくアクセスされたファイルなど、複数の条件を満足するファイルを選択するために、モバイルコンピューティングデバイスのローカルメモリ内に記憶された複数のファイルについてデータ構造200の配列を分析することができる。
【００２９】
いくつかの実施態様では、モバイルコンピューティングデバイス130は、新たに獲得されたファイルと同一のタイプのファイルの中で除去されるファイルを選択することができる。代替案では、モバイルコンピューティングデバイス130は、新たに獲得されたファイルのサイズ以上のサイズを有するファイルの中で除去されるファイルを選択することができる。いくつかの実施態様では、モバイルコンピューティングデバイス130は、新たに獲得されたファイルの総サイズ以上の総サイズを有する、除去される複数のファイルを選択することができる。
【００３０】
1つまたは複数の選択されたファイルの除去に応答して、モバイルコンピューティングデバイスは、試みられたメモリ書込動作(たとえば、ローカルメモリ内での新たに獲得されたファイルの記憶)を完了することができる。モバイルコンピューティングデバイスは、さらに、新たに獲得されたファイルの作成タイムスタンプおよびアクセスタイムスタンプならびに/またはアクセスカウンタを記憶するデータ構造を含めるために、データ構造200の配列を付加することができる。モバイルコンピューティングデバイスは、さらに、本明細書で上でより詳細に説明されたように、新たに獲得されたファイルに対応するプレビューファイルを作成し、ローカルメモリ内に記憶することができる。
【００３１】
モバイルコンピューティングデバイスは、以前にローカルメモリから除去されたファイルに対する動作を実行することを要求するユーザインターフェースコマンドを最終的に受け取る場合がある。その後、モバイルコンピューティングデバイスは、対応するプレビューファイルを提示し、かつ/またはベースファイルを明示的に対象とするユーザインターフェースコマンドの受取に応答して、ファイルが以前に記憶されたサーバからベースファイルを取り出すことができる。ローカルファイルシステムが、サーバから取り出されたフルサイズファイルを収容するのに十分な使用可能空間を有しない場合には、モバイルコンピューティングデバイスは、本明細書で上でより詳細に説明されたように、1つまたは複数の最も少なくアクセスされたファイルまたは最も長くアクセスされていないファイルを選択し、それらのファイルをローカルファイルシステムから除去することができる。
【００３２】
したがって、図3によって概略的に示されているように、モバイルコンピューティングデバイス130は、ローカルメモリ(たとえば、ローカルファイルシステム310)内に、モバイルコンピューティングデバイスによって獲得されたファイル314のうちの少なくともいくつかのプレビューファイル312を記憶することができる。モバイルコンピューティングデバイスは、さらに、フルサイズファイルをモバイルコンピューティングデバイスのローカルメモリ内に収容できる範囲で、ファイル314の少なくともいくつかのフルサイズバージョンを記憶することができる。1つの例示的な例では、モバイルコンピューティングデバイスは、ローカルファイルシステム310内の事前定義のクォータ316内に、ベースファイル314に対応する複数のプレビューファイル312を記憶することができる。モバイルコンピューティングデバイスは、さらに、ローカルファイルシステム310内の事前定義のクォータ316内に、プレビューファイル312-2に対応するベースファイルをローカルファイルシステム310内の事前定義のクォータ316に収容できないので、対応するベースファイルを有しない複数のプレビューファイル312-2を記憶することができる。
【００３３】
ベースファイル314-1を、新たに獲得されたファイル318を収容するためにファイルシステムから除去することができ、対応するプレビューファイル312-1を、ユーザインターフェースコマンドに応答してユーザに提示することができる。フルサイズファイル314-1は、フルサイズファイル314-1を明示的に対象とするユーザインターフェースコマンドに応答して、ファイルサーバから取り出され得る。
【００３４】
いくつかの実施態様では、コンピュータシステム1000は、個々のユーザおよび/またはユーザのグループに関するイベントのスケジューリングおよび追跡を容易にするカレンダアプリケーションを実行することができる。ユーザは、モバイルコンピューティングデバイス130を含むさまざまなクライアントデバイスによってカレンダアプリケーションにアクセスすることができる。
【００３５】
一例では、コンピュータシステム1000は、図4によって概略的に示されるように、カレンダ項目およびメモを含むデータモデルをサポートすることができる。カレンダ項目は、識別子412と時刻414とを含むデータ構造410によって表され得る。いくつかの実施態様では、識別子412を、カレンダ項目のタイトルおよび/または説明を含む英数字文字の人間可読シーケンスによって提供することができる。代替案では、カレンダ項目識別子を、人間可読であることを意図されていない英数字識別子または非英数字識別子によって提供することができる。
【００３６】
いくつかの実施態様では、時刻414を、カレンダ項目によって識別されるイベントの開始時刻とそのイベントの持続時間とによって表すことができる。代替案では、時刻414を、イベントの開始時刻と終了時刻とによって表すことができる。イベントの開始時刻および/または終了時刻を、日付(たとえば、日、月、および年を含む)と時刻(たとえば、時、分、および秒を含む)とによって表すことができる。時刻414は、タイムゾーン識別子をさらに含むことができる。
【００３７】
データ構造410は、カレンダ項目タイトル416、説明418、位置420、カレンダ項目によって識別されるイベントの創始者の識別子422、イベントの参加者のリスト424、再発するスケジュール426、および/または他のフィールドをさらに含むことができる。いくつかの実施態様では、データ構造410は、カレンダ項目のタイプ識別子411を含むことができる。データ構造410によって表されるカレンダ項目の例は、面会予約、会議要求、リマインダなどを含むことができる。いくつかの実施態様では、データ構造410は、添付ファイルと言われる場合もあるデータセットへの1つまたは複数のポインタ428を含むことができる。一例では、添付ファイルを、テキスト、オーディオストリーム、ビデオストリーム、静止画像、その他など、任意のタイプのファイルによって提供することができる。
【００３８】
メモを、メモテキスト448を含むデータ構造440によって表すことができる。いくつかの実施態様では、データ構造440は、タイプ識別子441、メモ識別子442、メモの作成および/もしくは変更の時刻444、ならびに/またはメモのタイトル446をさらに含むことができる。時刻444を、日付(たとえば、日、月、および年を含む)と時刻(たとえば、時、分、および秒を含む)とによって表すことができる。時刻444は、タイムゾーン識別子をさらに含むことができる。
【００３９】
いくつかの実施態様では、データ構造440は、添付ファイルと言われる場合もあるデータセットへの1つまたは複数のポインタ450を含むことができる。一例では、添付ファイルを、テキスト、オーディオストリーム、ビデオストリーム、静止画像、その他など、任意のタイプのファイルによって提供することができる。
【００４０】
いくつかの実施態様では、コンピュータシステム1000は、1つもしくは複数のサーバ110および/または1つもしくは複数のクライアントデバイス130を含む1つまたは複数のコンピュータ上に存在するリレーショナルデータベース内に、上で言及されたファイルおよび/またはデータ構造を記憶することができる。いくつかの実施態様では、たとえば階層データベース、または1つもしくは複数のフラットファイルなど、上で説明されたデータモデルを実施するファイルおよび/またはデータ構造を記憶する他の方法を、コンピュータシステム1000によって使用することができる。
【００４１】
いくつかの実施態様では、コンピュータシステム1000は、Lightweight Directory Access Protocol (LDAP)サーバなどのディレクトリサーバ内に、カレンダシステムに関連するユーザディレクトリを記憶することができる。いくつかの実施態様では、たとえばサーバ110のオペレーティングシステムによって提供されるネイティブユーザディレクトリを含むユーザディレクトリを記憶する他の方法を、コンピュータシステム1000によって使用することができる。
【００４２】
ユーザインターフェースコマンドを受け取る時に、コンピュータシステム1000は、クライアントデバイス上で、たとえばカレンダビューおよびノートブックビューを含むさまざまなビューを介して1つまたは複数のカレンダ項目および/またはメモをレンダリングすることができる。
【００４３】
カレンダビューは、1つまたは複数の時刻インジケータへの視覚的参照と共にスクリーン上にレンダリングされる1つまたは複数のカレンダ項目を含むことができる。一例では、図5aによって概略的に示されるように、カレンダビュー500は、1つまたは複数の週ビュー510を含むことができる。週ビュー510は、曜日に対応する7つまでの視覚的に別個のスクリーン領域(日ビュー512)を含むことができる。各日ビューは、時刻に対応する複数のスクリーン領域514に視覚的に分割され得る。1つまたは複数の時刻値を、1つの日ビュー内に配置することができる。1つまたは複数のカレンダ項目516を、日ビュー512内に示すことができる。別の例では、図5bによって概略的に示されるように、カレンダビュー500は、1つまたは複数の月ビュー520を含むことができる。月ビュー520は、複数の週ビュー510を含むことができる。週ビュー510は、曜日に対応する7つまでの視覚的に別個のスクリーン領域(日ビュー512)を含むことができる。各日ビューは、時刻に対応する複数のスクリーン領域514に視覚的に分割され得る。1つまたは複数の時刻値を、1つの日ビュー内に配置することができる。1つまたは複数のカレンダ項目516を、日ビュー512内に示すことができる。さらなる例では、カレンダビューは、四半期ビュー、年ビュー、および/または他のビューを含むことができる。
【００４４】
ノートブックビューは、スクリーン上にレンダリングされた1つまたは複数のメモを含むことができる。一例では、図6aによって概略的に示されるように、ノートブックビュー600内にレンダリングされた1つまたは複数のメモ610を、タイトル/主題によってアルファベット順にソートすることができる。別の例では、図6bによって概略的に示されるように、ノートブックビュー600内にレンダリングされた1つまたは複数のメモを、メモの作成または変更の時刻の日付によって年代順にソートすることができる。
【００４５】
いくつかの実施態様では、コンピュータシステム1000は、たとえば、タイトル、キーワード、作成者、および/またはカレンダイベントもしくはメモの作成もしくは変更の日時によってカレンダイベントおよびメモを選択することおよび/またはソートすることによって、1つまたは複数のカレンダイベントおよび1つまたは複数のメモを混合ビュー内でレンダリングすることができる。
【００４６】
いくつかの実施態様では、コンピュータシステム1000は、既存のカレンダ項目または既存のメモを編集するユーザ入力を受け入れることができる。一例では、メモを編集するユーザ入力の受入に応答して、コンピュータシステム1000は、新たに追加されたテキストが時刻参照を含むことを判定することができる。そのような判定の後に、本明細書で上でより詳細に説明されたように、コンピュータシステム1000は、メモをカレンダ項目に変換し、カレンダ項目データ構造に、0個以上のオプションフィールドと一緒に時刻参照によって識別される時刻を記憶することができる。
【００４７】
図7に、モバイルコンピューティングデバイスによるファイル管理の方法700の一実施形態の流れ図を示す。方法700を、ハードウェア(たとえば、回路網、専用論理、および/またはプログラム可能論理)、ソフトウェア(たとえば、ハードウェアシミュレーションを実行するためにコンピュータシステム上で実行可能な命令)、またはその組合せを含むことができるコンピュータシステムによって実行することができる。方法700および/またはその個々の関数、ルーチン、サブルーチン、または動作を、この方法を実行するコンピュータシステムの1つまたは複数の物理プロセッサによって実行することができる。方法700の複数の関数、ルーチン、サブルーチン、または動作を、並列にまたは上で説明された順序とは異なってもよい順序で実行することができる。
【００４８】
処理は、ブロック710で、モバイルコンピューティングデバイスがモバイルコンピューティングデバイスの1つまたは複数の入出力インターフェースを介してファイルを受信することによって開始され得る。いくつかの実施態様では、モバイルコンピューティングデバイスは、さまざまなタイプのファイルを獲得するように構成され得、1つの例示的な例では、モバイルコンピューティングデバイスは、静止画像ファイルを獲得するのに使用され得る静止画像カメラを備えることができ、別の例では、モバイルコンピューティングデバイスは、ビデオストリームを獲得するのに使用され得るビデオカメラを備えることができ、さらなる例では、モバイルコンピューティングデバイスは、オーディオストリームを獲得するのに使用され得るマイクロホンを備えることができ、さらなる例では、モバイルコンピューティングデバイスは、テキストファイルを獲得するのに使用され得るキーボードまたはタッチスクリーンを備えることができる。
【００４９】
ブロック715では、モバイルコンピューティングデバイスが、モバイルコンピューティングデバイスのローカルメモリ内にファイルを記憶することができる。1つの例示的な例では、モバイルコンピューティングデバイス130は、ローカル不揮発性メモリ内に存在するローカルファイルシステム内にファイルを記憶することができる。別の例では、モバイルコンピューティングデバイスは、ローカル不揮発性メモリ内に存在するデータベース内にファイルを記憶することができる。
【００５０】
ブロック720では、モバイルコンピューティングデバイスは、1つまたは複数の外部コンピュータ(たとえば、ファイル管理アプリケーションのサーバ側部分を実行するファイルサーバ)にファイルのコピーを送信することができる。
【００５１】
ブロック725では、モバイルコンピューティングデバイスが、第1のファイルから導出された第2のファイル(「プレビュー」ファイルとも称する)をローカルメモリ内に記憶することができる。プレビューファイルのサイズは、第1のファイルのサイズより小さいものとすることができる。画像ファイルについて、プレビューファイルを、たとえばサムネイル画像もしくは他の縮小されたサイズの画像または下げられた解像度の画像によって提供することができる。ビデオファイルについて、プレビューファイルを、たとえばベースビデオファイルのフレームのサブセットを含む「トレイラ」によって提供することができる。オーディオファイルについて、プレビューファイルを、たとえばベースオーディオファイルの1つまたは複数の部分によって提供することができる。テキストファイルについて、プレビューファイルを、要約、梗概、またはベーステキストファイルの他の説明によって提供することができる。いくつかの実施態様では、モバイルコンピューティングデバイスは、プレビューファイルをローカルに作ることができる。代替案では、モバイルコンピューティングデバイスは、獲得されたファイルを処理のために外部サーバに送信することができ、その後、その外部サーバからプレビューファイルを受信することができる。
【００５２】
ブロック730での、ローカルメモリが試みられたメモリ書込動作を実行するのに不十分であるとの判定に応答して、処理は、ブロック735で継続され得、そうでない場合には、この方法は、終了することができる。いくつかの実施態様では、モバイルコンピューティングデバイスは、1つまたは複数の入出力インターフェースを介してモバイルコンピューティングデバイスによって獲得されるファイルを記憶するために、ローカルメモリ内に(たとえば、1つまたは複数のローカルファイルシステム内に)クォータを割り振ることができる。モバイルコンピューティングデバイスは、モバイルコンピューティングデバイスの使用可能ローカルメモリが、試みられたメモリ書込動作(たとえば、ローカルファイルシステム内での新たに獲得されたファイルの記憶)に対処するのに不十分であると最終的に判定する可能性がある。
【００５３】
ブロック735では、第3のファイルが、それに関連する第4のファイルを有し、第4のファイルが、第3のファイルから導出されたものになるように、モバイルコンピューティングデバイスは、第3のファイルを選択することができる。試みられたメモリ書込動作を完了するために、モバイルコンピューティングデバイスは、ファイルシステムから除去し、したがって新たに獲得されたファイルを記憶するのに必要なメモリを解放するために、事前定義の選択判断基準に基づいて、以前に獲得されたファイルのうちの1つを選択することができる。1つの例示的な例では、モバイルコンピューティングデバイスは、それに関連する最小回数のファイルアクセス動作を有するファイルを選択することができる。別の例では、モバイルコンピューティングデバイスは、最も長くアクセスされていないファイルを選択することができる。さらなる例では、モバイルコンピューティングデバイスは、最も以前に獲得されたファイルを選択することができる。さらなる例では、モバイルコンピューティングデバイスは、たとえば所与の日付までに作成された最も少なくアクセスされたファイルなど、複数の条件を満足するファイルを選択することができる。いくつかの実施態様では、モバイルコンピューティングデバイスは、新たに獲得されたファイルと同一のタイプのファイルの中で除去されるファイルを選択することができる。代替案では、モバイルコンピューティングデバイスは、新たに獲得されたファイルのサイズ以上のサイズを有するファイルの中で除去されるファイルを選択することができる。いくつかの実施態様では、モバイルコンピューティングデバイスは、新たに獲得されたファイルの総サイズ以上の総サイズを有する、除去される複数のファイルを選択することができる。
【００５４】
ブロック740では、モバイルコンピューティングデバイスは、選択されたファイルをローカルメモリから除去することができる。
【００５５】
ブロック745では、モバイルコンピューティングデバイスは、試みられたメモリ書込動作を完了することができる。
【００５６】
ブロック750では、モバイルコンピューティングデバイスは、第3のファイルに対する動作を実行することを要求するユーザインターフェースコマンドを受け取ることができる。
【００５７】
ブロック755では、モバイルコンピューティングデバイスは、ファイルが以前に記憶されたサーバから第3のファイルのコピーを取り出すことができる。ローカルファイルシステムが、サーバから取り出されたフルサイズファイルを収容するのに十分な使用可能空間を有しない場合には、モバイルコンピューティングデバイスは、本明細書で上でより詳細に説明されたように、1つまたは複数の最も少なくアクセスされたファイルまたは最も長くアクセスされていないファイルを選択し、それらのファイルをローカルファイルシステムから除去することができる。ブロック755によって参照される動作の完了に応答して、この方法は、終了することができる。
【００５８】
図8に、本明細書で説明される方法のうちの1つまたは複数をコンピュータに実行させる命令を実行することができる例のコンピュータシステム100を示す。いくつかの実施形態では、コンピュータシステム100は、図1の1つまたは複数のサーバ110および/またはクライアントデバイスに対応することができる。
【００５９】
いくつかの実施形態では、コンピュータシステム100を、他のコンピュータシステムに接続する(たとえば、ローカルエリアネットワーク(LAN)、イントラネット、エクストラネット、またはインターネットなどのネットワークを介して)ことができる。コンピュータシステム100は、クライアント-サーバ環境内のサーバまたはクライアントコンピュータの資格で、またはピアツーピア環境もしくは分散ネットワーク環境内のピアコンピュータとして、動作することができる。コンピュータシステム100は、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、携帯情報端末(PDA)、セルラ電話、ウェブ機器、サーバ、ネットワークルータ、スイッチもしくはブリッジ、またはそのデバイスによって行われるべきアクションを指定する命令のセットを実行することができる(順次または他の形で)任意のデバイスによって提供され得る。
【００６０】
さらなる態様では、コンピュータシステム100は、バス1008を介してお互いと通信することができる、プロセッサ1002、揮発性メモリ1004(たとえば、ランダムアクセスメモリ(RAM))、不揮発性メモリ1006(たとえば、読取専用メモリ(ROM)または電気的消去可能プログラム可能ROM(EEPROM))、および2次メモリ1016(たとえば、データストレージデバイス)を含むことができる。プロセッサ1002は、汎用プロセッサ(たとえば、複合命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、他のタイプの命令セットを実施するマイクロプロセッサ、または命令セットのタイプの組合せを実施するマイクロプロセッサなど)または特殊化されたプロセッサ(たとえば、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディジタル信号プロセッサ(DSP)、またはネットワークプロセッサなど)などの1つまたは複数のプロセッサによって提供され得る。
【００６１】
コンピュータシステム100は、さらに、ネットワークインターフェースデバイス1022を含むことができる。コンピュータシステム100は、ビデオディスプレイユニット1010(たとえば、LCD)、英数入力デバイス1012(たとえば、キーボード)、ポインティングデバイス1014(たとえば、マウス)、およびオーディオ出力デバイス1020(たとえば、スピーカ)をも含むことができる。
【００６２】
2次メモリ1016は、その上にファイル管理アプリケーション120、125の命令を記憶することができる非一時的コンピュータ可読記憶媒体1024を含むことができる。ファイル管理アプリケーション120、125の命令は、コンピュータシステム1000によるその実行中にメインメモリ1004内および/またはプロセッサ1002内に完全にまたは部分的に存在することもでき、したがって、メインメモリ1004およびプロセッサ1002も、機械可読記憶媒体を構成することができる。コンピュータ可読記憶媒体1024は、図示の実施形態では単一の媒体として図示されているが、用語「コンピュータ可読記憶媒体」は、実行可能命令の1つまたは複数のセットを記憶する、単一の媒体または複数の媒体(たとえば、集中化されたもしくは分散されたデータベース、ならびに/または関連するキャッシュおよびサーバ)を含まなければならない。用語「コンピュータ可読記憶媒体」は、コンピュータに本明細書で説明される方法のうちの任意の1つまたは複数を実行させる、コンピュータによる実行のための命令のセットを記憶しまたは符号化することのできるすべての非一時的媒体をも含まなければならない。用語「コンピュータ可読記憶媒体」は、ソリッドステートメモリ、光学媒体、および磁気媒体を含まなければならないが、これらに限定はされない。
【００６３】
本明細書で説明される方法、コンポーネント、および特徴を、ディスクリートハードウェアコンポーネントによって実施することができ、あるいは、ASIC、FPGA、DSP、または類似するデバイスなどの他のハードウェアコンポーネントの機能性に一体化することができる。さらに、方法、コンポーネント、および特徴を、ハードウェアデバイス内のファームウェアモジュールまたは機能回路網によって実施することができる。さらに、方法、コンポーネント、および特徴を、ハードウェアデバイスとソフトウェアコンポーネントとの任意の組合せで、またはソフトウェアのみにおいて実施することができる。
【００６４】
そうではない特に述べられない限り、「更新」、「識別」、「判定」、「送出」、「割当」、または類似物などの用語は、コンピュータシステムのレジスタおよびメモリ内の物理(電子)量として表されたデータを操作し、コンピュータシステムのメモリもしくはレジスタまたは他のそのような情報記憶デバイス、情報伝送デバイス、もしくは情報表示デバイス内の物理量として同様に表される他のデータに変換する、コンピュータシステムによって実行されまたは実施されるアクションおよびプロセスを指す。
【００６５】
本明細書で説明される実施形態は、本明細書で説明される方法を実行する装置にも関する。この装置は、要求される目的のために特に構成されるものとすることができ、あるいは、コンピュータシステム内に記憶されたコンピュータプログラムによって選択的にプログラムされた汎用コンピュータシステムを含むことができる。そのようなコンピュータプログラムを、コンピュータ可読非一時的記憶媒体内に記憶することができる。
【００６６】
本明細書で説明される方法および例示的な例は、どの特定のコンピュータまたは他の装置にも固有には関係しない。さまざまな汎用システムを、本明細書で説明される教示に従って使用することができ、あるいは、要求される方法の関数、ルーチン、サブルーチン、または動作を実行するために、より特殊化された装置を構成することが、より便利である場合がある。さまざまなこれらのシステムの要求される構造は、上の説明に示されるもののように見える。
【００６７】
上の説明は、制限的ではなく例示的であることを意図されたものである。本開示を、特定の例示的な例および実施形態を参照して説明したが、本開示が、説明された実施形態に限定されないことが認められる。本開示の範囲は、特許請求の範囲が資格を与えられる同等物のすべての範囲と一緒に、以下の特許請求の範囲を参照することによって判定されなければならない。
【符号の説明】
【００６８】
100  コンピュータシステム
110  サーバ
115  複数の相互接続するネットワーク
120  サーバ側部分
125  クライアント側部分
130  クライアントコンピュータ、クライアントデバイス、モバイルコンピューティングデバイス
200  データ構造
210  ファイル識別子
212  ファイル作成タイムスタンプ
214  ファイルアクセスタイムスタンプ
216  ファイルアクセス動作の総数
310  ローカルファイルシステム
312  プレビューファイル
312-1  プレビューファイル
312-2  プレビューファイル
314  ベースファイル
314-1  ベースファイル
316  事前定義のクォータ
318  新たに獲得されたファイル
410  データ構造
411  タイプ識別子
412  識別子
414  時刻
416  カレンダ項目タイトル
418  説明
420  位置
422  イベントの創始者の識別子
424  イベントの参加者のリスト
426  再発するスケジュール
428  ポインタ
440  データ構造
441  タイプ識別子
442  メモ識別子
444  メモの作成および/もしくは変更の時刻
446  メモのタイトル
448  メモテキスト
450  ポインタ
500  カレンダビュー
510  週ビュー
512  日ビュー
514  スクリーン領域
516  カレンダ項目
520  月ビュー
600  ノートブックビュー
610  メモ
700  方法
1000  コンピュータシステム
1002  プロセッサ
1004  揮発性メモリ
1006  不揮発性メモリ
1008  バス
1010  ビデオディスプレイユニット
1012  英数字入力デバイス
1014  ポインティングデバイス
1016  2次メモリ
1020  オーディオ出力デバイス
1022  ネットワークインターフェースデバイス
1024  非一時的コンピュータ可読記憶媒体
【図１】
2019083016.tif 000003
【図２】
2019083016.tif 000004
【図３】
2019083016.tif 000005
【図４】
2019083016.tif 000006
【図５ａ】
2019083016.tif 000007
【図５ｂ】
2019083016.tif 000008
【図６ａ】
2019083016.tif 000009
【図６ｂ】
2019083016.tif 000010
【図７】
2019083016.tif 000011
【図８】
2019083016.tif 000012
【手続補正書】
【提出日】平成30年12月21日(2018.12.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータシステムによって、複数のベースファイルを前記コンピュータシステムのローカルメモリ内に記憶するステップと、
リモートサーバに前記複数のベースファイルのコピーを記憶させるステップと、
前記ローカルメモリ内に、それぞれが前記複数のベースファイルのうちの対応するベースファイルから導出された複数のプレビューファイルを記憶するステップであって、各プレビューファイルのサイズは、前記対応するベースファイルのサイズより小さく、各プレビューファイルは、ビデオファイルについて、前記ベースファイルのフレームのサブセット、オーディオファイルについて、前記ベースファイルの１つまたは複数の部分、および、テキストファイルについて、要約または梗概、のうちの１つによって提供される、記憶するステップと、
前記ローカルメモリがメモリ書込動作を実行するのに不十分であるとの判定に応答して、
コピーが前記リモートサーバによって記憶されている前記複数のベースファイルのうちの第１のベースファイルを選択するステップと、
前記第１のベースファイルを前記ローカルメモリから除去するステップと、
前記メモリ書込動作を完了するステップと、
前記第１のベースファイルを要求する第１のユーザインターフェースコマンドを受信することに応答して、前記第１のベースファイルに対応するプレビューファイルを提示するステップと、
前記第１のベースファイルに対応するフルサイズファイルを明示的に要求する第２のユーザインターフェースコマンドを受信することに応答して、
前記複数のベースファイルのうちの第２のベースファイルを選択するステップと、
前記第２のベースファイルを前記ローカルメモリから除去するステップと、
前記第１のベースファイルのコピーを前記リモートサーバから取り出すステップと
を含む方法。
【請求項２】
各ベースファイルは、静止画像ファイル、ビデオファイル、オーディオファイル、または文書ファイルのうちの1つによって提供される、請求項1に記載の方法。
【請求項３】
前記第１のベースファイルを選択するステップは、最も以前に獲得されたファイルを選択するステップ、最も少なくアクセスされたファイルを選択するステップ、または最も長くアクセスされていないファイルを選択するステップのうちの1つを含む、請求項1に記載の方法。
【請求項４】
前記第１のベースファイルを選択するステップは、前記メモリ書込動作を実行するのに必要なメモリのサイズ以上のサイズを有するファイルを選択するステップを含む、請求項1に記載の方法。
【請求項５】
前記第１のベースファイルを選択するステップは、複数のファイルを選択するステップを含む、請求項1に記載の方法。
【請求項６】
静止画像カメラ、ビデオカメラ、マイクロホン、またはネットワークインターフェースのうちの1つを介して前記複数のベースファイルを受け取るステップをさらに含む、請求項1に記載の方法。
【請求項７】
前記メモリ書込動作は、ユーザインターフェースコマンドによって要求される、請求項1に記載の方法。
【請求項８】
前記メモリ書込動作は、前記コンピュータシステムによって受け取られる新たに獲得されたベースファイルを前記メモリ内に記憶することによって表される、請求項1に記載の方法。
【請求項９】
前記新たに獲得されたベースファイルは、静止画像ファイル、ビデオファイル、オーディオファイル、または文書ファイルのうちの1つによって提供される、請求項8に記載の方法。
【請求項１０】
各プレビューファイルを記憶するステップは、対応するベースファイルを外部コンピュータに送信することに応答して通信インターフェースを介して前記プレビューファイルを受信するステップを含む、請求項1に記載の方法。
【請求項１１】
入出力インターフェースを介して前記新たに獲得されたベースファイルを受信するステップをさらに含む、請求項8に記載の方法。
【請求項１２】
前記新たに獲得されたベースファイルを外部コンピュータに送信するステップをさらに含む、請求項8に記載の方法。
【請求項１３】
メモリと、
前記メモリに結合されたプロセッサであって、
前記メモリ内に、複数のベースファイルを記憶し、
リモートサーバに複数のベースファイルのコピーを記憶させ、
前記メモリ内に、それぞれが前記複数のベースファイルのうちの対応するベースファイルから導出された複数のプレビューファイルを記憶し、各プレビューファイルのサイズは、前記対応するベースファイルのサイズより小さく、各プレビューファイルは、ビデオファイルについて、前記ベースファイルのフレームのサブセット、オーディオファイルについて、前記ベースファイルの１つまたは複数の部分、および、テキストファイルについて、要約または梗概、のうちの１つによって提供され、
前記メモリがメモリ書込動作を実行するのに不十分であるとの判定に応答して、
コピーが前記リモートサーバによって記憶されている前記複数のベースファイルのうちの第１のベースファイルを選択し、
前記第１のベースファイルを前記メモリから除去し、
前記メモリ書込動作を完了し、
前記第１のベースファイルを要求する第１のユーザインターフェースコマンドを受信することに応答して、前記第１のベースファイルに対応するプレビューファイルを提示し、
前記第１のベースファイルに対応するフルサイズファイルを明示的に要求する第２のユーザインターフェースコマンドを受信することに応答して、
前記複数のベースファイルのうちの第２のベースファイルを選択し、
前記第２のベースファイルをローカルメモリから除去し、
前記第１のベースファイルのコピーを前記リモートサーバから取り出す
ように構成される、プロセッサと
を含むシステム。
【請求項１４】
前記プロセッサは、入出力インターフェースを介して前記複数のベースファイルのうちのベースファイルを受信するようにさらに構成される、請求項13に記載のシステム。
【請求項１５】
前記プロセッサは、前記複数のベースファイルのうちのベースファイルを外部コンピュータに送信するようにさらに構成される、請求項13に記載のシステム。
【請求項１６】
コンピュータシステムによって実行された時に、前記コンピュータシステムに、
メモリ内に、複数のベースファイルを記憶させ、
リモートサーバに複数のベースファイルのコピーを記憶させるようにさせ、
前記メモリ内に、それぞれが前記複数のベースファイルのうちの対応するベースファイルから導出された複数のプレビューファイルを記憶させ、各プレビューファイルのサイズは、前記対応するベースファイルのサイズより小さく、各プレビューファイルは、ビデオファイルについて、前記ベースファイルのフレームのサブセット、オーディオファイルについて、前記ベースファイルの１つまたは複数の部分、および、テキストファイルについて、要約または梗概、のうちの１つによって提供され、
前記メモリがメモリ書込動作を実行するのに不十分であるとの判定に応答して、
コピーが前記リモートサーバによって記憶されている前記複数のベースファイルのうちの第１のベースファイルを選択させ、
前記第１のベースファイルを前記メモリから除去させ、
前記メモリ書込動作を完了させ、
前記第１のベースファイルを要求する第１のユーザインターフェースコマンドを受信することに応答して、前記第１のベースファイルに対応するプレビューファイルを提示させ、
前記第１のベースファイルに対応するフルサイズファイルを明示的に要求する第２のユーザインターフェースコマンドを受信することに応答して、
前記複数のベースファイルのうちの第２のベースファイルを選択させ、
前記第２のベースファイルをローカルメモリから除去させ、
前記第１のベースファイルのコピーを前記リモートサーバから取り出させる
実行可能命令を含むコンピュータ可読非一時的記憶媒体。
【請求項１７】
前記コンピュータシステムに各プレビューファイルを記憶させる実行可能命令は、前記コンピュータシステムに、対応するベースファイルを外部コンピュータに送信することに応答して通信インターフェースを介して前記プレビューファイルを受信させる実行可能命令をさらに含む、請求項16に記載のコンピュータ可読非一時的記憶媒体。
【外国語明細書】
2019083016000001.pdf