説明

管理装置、管理方法、およびプログラム

【課題】複数のアプリケーションが順次に実行される場合において、効率的なメモリ管理を行うことが可能な、管理装置、管理方法、およびプログラムを提供する。
【解決手段】複数のアプリケーションの実行順序を示す実行制御情報に基づいて、アプリケーションが実行されるときにアプリケーションが一時的に記憶される記録媒体における、実行領域と、キャッシュ領域とを管理する管理部を備える、管理装置が提供される。

【発明の詳細な説明】
【技術分野】
【0001】
本開示は、管理装置、管理方法、およびプログラムに関する。
【背景技術】
【0002】
メモリ管理は、例えば、限られた計算資源を有効に利用する上や、実行される処理の効率化を図る上で、ますます重要となっている。このような中、メモリ管理に関する様々な技術が開発されている。例えば、メモリ管理に係る技術としては、特許文献1に記載の技術が挙げられる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010−282252号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、複数のアプリケーション(ソフトウェア)が順次に実行され、実行されたアプリケーションにより処理が順次に行われる場合には、例えば、処理の効率化を図るために、また、実行されるアプリケーションの切り替えをより高速化するために、効率的なメモリ管理を行うことが望まれる。
【0005】
ここで、例えば特許文献1に示すようなメモリ管理に係る技術(以下、「従来の技術」と示す場合がある。)を用いる装置は、MMU(Memory Management Unit)を備え、MMUが用いるテーブルに対し、アプリケーションの動作に必要な全てのページおいてページフォルトが発生するようにテーブルエントリを書き換える。そして、従来の技術を用いる装置は、上記アプリケーションが起動するときに、ページテーブルエントリでページフォルトを発生させ、ページフォルトが発生したページを順次に読み出す。よって、従来の技術を用いる場合には、不要なページの読み込みが行われないので、不要なページの読み込みが行われない分、アプリケーションの起動時間を短縮することができる可能性はある。
【0006】
しかしながら、例えば、ページフォルトの概念を有するOS(Operating System)のような、ページフォールトを処理することが可能なソフトウェアがなければ、上記従来の技術を用いることはできない。よって、従来の技術は汎用性が高いとはいえないことから、従来の技術を用いたとしても、複数のアプリケーションが順次に実行される場合において、効率的なメモリ管理を行うことができるとは、限られない。
【0007】
本開示では、複数のアプリケーションが順次に実行される場合において、効率的なメモリ管理を行うことが可能な、新規かつ改良された管理装置、管理方法、およびプログラムを提案する。
【課題を解決するための手段】
【0008】
本開示によれば、複数のアプリケーションの実行順序を示す実行制御情報に基づいて、アプリケーションが実行されるときにアプリケーションが一時的に記憶される記録媒体における、実行領域と、キャッシュ領域とを管理する管理部を備える、管理装置が提供される。
【0009】
また、本開示によれば、複数のアプリケーションの実行順序を示す実行制御情報に基づいて、アプリケーションが実行されるときにアプリケーションが一時的に記憶される記録媒体における、実行領域と、キャッシュ領域とを管理するステップを有する、管理方法が提供される。
【0010】
また、本開示によれば、複数のアプリケーションの実行順序を示す実行制御情報に基づいて、アプリケーションが実行されるときにアプリケーションが一時的に記憶される記録媒体における、実行領域と、キャッシュ領域とを管理する機能、をコンピュータに実現させるためのプログラムが提供される。
【発明の効果】
【0011】
本開示によれば、複数のアプリケーションが順次に実行される場合において、効率的なメモリ管理を行うことができる。
【図面の簡単な説明】
【0012】
【図1】本実施形態に係る管理装置が管理する、アプリケーションなどが一時的に記憶される記録媒体の構成の一例を示す説明図である。
【図2】本実施形態に係る管理装置における管理方法に係る処理の一例を示す説明図である。
【図3】本実施形態に係る管理装置における管理方法に係る処理の一例を示す説明図である。
【図4】本実施形態に係る管理装置における管理方法に係る処理の一例を示す説明図である。
【図5】本実施形態に係る管理装置における管理方法に係る処理の一例を示す説明図である。
【図6】本実施形態に係る管理装置における管理方法に係る処理の一例を示す説明図である。
【図7】本実施形態に係る管理装置における管理方法に係る処理の一例を示す説明図である。
【図8】本実施形態に係る管理装置の構成の一例を示すブロック図である。
【図9】本実施形態に係る管理装置のハードウェア構成の一例を示す説明図である。
【発明を実施するための形態】
【0013】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0014】
また、以下では、下記に示す順序で説明を行う。
1.本実施形態に係る管理方法
2.本実施形態に係る管理装置
3.本実施形態に係るプログラム
【0015】
(本実施形態に係る管理方法)
本実施形態に係る管理装置の構成について説明する前に、本実施形態に係る管理方法について説明する。また、以下では、本実施形態に係る管理装置(以下、「管理装置100」と示す場合がある。)が、本実施形態に係る管理方法に係る処理を行うものとして説明する。
【0016】
[本実施形態に係る管理方法の概要]
本実施形態に係る管理装置100は、複数のアプリケーションが順次に実行される場合において効率的なメモリ管理を行うために、実行制御情報に基づいて、アプリケーションが実行される順序を特定する。そして、管理装置100は、アプリケーションが実行されるときにアプリケーションが一時的に記憶される記録媒体における、実行領域と、キャッシュ領域とを管理する(管理処理)。ここで、本実施形態に係る実行領域とは、実行するアプリケーションが配置されるメモリ領域である。また、本実施形態に係るキャッシュ領域とは、複数のアプリケーションを切り替えて実行する際に、切り替えの高速化、効率化を図るためにアプリケーションが記憶されるメモリ領域である。
【0017】
より具体的には、管理装置100は、例えば、NANDフラッシュメモリ(flash memory)などの不揮発性メモリ(nonvolatile memory)や、ハードディスク(Hard Disk)などの磁気記録媒体から、実行制御情報が示すアプリケーションを適宜読み出し、管理対象の記録媒体に記録する。なお、管理装置100は、例えば、ネットワークを介して(または、直接的に)接続された外部装置に記憶されているアプリケーションを読み出してもよい。そして、管理装置100は、記録媒体における実行領域とキャッシュ領域との管理を、論理アドレス−物理アドレス変換を行うことによって管理する。ここで、管理装置100は、例えば、論理アドレス−物理アドレス変換テーブルを更新することによって、論理アドレス−物理アドレス変換を実現する。なお、本実施形態に係る管理装置100における管理処理の詳細については、具体例を挙げて後述する。
【0018】
ここで、本実施形態に係る実行制御情報とは、例えば、複数のアプリケーションの実行順序を示すデータである。実行制御情報としては、例えば、アプリケーションを示す識別子(例えば、アプリケーションID)と、実行順序を示す番号とが対応付けられたデータが挙げられるが、本実施形態に係る実行制御情報は、上記に限られない。例えば、実行制御情報には、アプリケーションが記憶されている場所を示すデータ(例えば、ハイパーリンクなどのリンクやファイルパスを示すデータ)が含まれていてもよい。
【0019】
管理装置100は、例えば、外部装置から送信された実行制御情報に基づいて、アプリケーションが実行される順序を特定する。ここで、上記外部装置としては、例えば、アプリケーションの実行を行わせるための処理実行要求を送信する装置、すなわち、アプリケーションの実行を実質的に制御する装置が挙げられる。アプリケーションの実行を実質的に制御する装置としては、例えば、サービスを管理するサーバや、POS(Point of sale system)装置などが挙げられる。
【0020】
なお、本実施形態に係る管理装置100は、外部装置から送信された実行制御情報に基づいて、アプリケーションが実行される順序を特定することに限られない。例えば、管理装置100は、操作部(後述する)などを用いたユーザ操作に基づいて実行制御情報を生成し、生成した実行制御情報に基づいて、アプリケーションが実行される順序を特定することも可能である。
【0021】
また、本実施形態に係る記録媒体としては、例えば、RAM(Random Access Memory)が挙げられる。なお、本実施形態に係る記録媒体は、上記に限られず、例えば、RAMと同様に、例えばNANDフラッシュメモリやハードディスクなどと比較して、高速にデータの読み書きを行うことが可能な、任意のデバイスであってもよい。また、本実施形態に係る記録媒体は、例えば、管理装置100が備えているものであってもよいし、管理装置100の外部に設けられる外部記録媒体であってもよい。
【0022】
また、本実施形態に係る管理装置100は、さらに、記録媒体の実行領域に記憶されているアプリケーションを実行し、実行されたアプリケーションに処理を行わせることも可能である(実行処理)。ここで、本実施形態に係る記録媒体の実行領域に記憶されているアプリケーションとは、例えば、記録媒体の実行領域に対応する論理アドレスに配置されているアプリケーションを意味する。
【0023】
より具体的には、管理装置100は、例えば、実行制御情報を送信した外部装置から送信された処理実行要求や、ユーザ操作に基づいて生成される処理実行要求に基づいて、アプリケーションに処理を行わせる。ここで、本実施形態に係る処理実行要求は、実行制御情報が示す順序で、アプリケーションごとに順次送信または生成される。また、管理装置100は、上記管理処理において、実行制御情報に基づいて、実行されるアプリケーションを記録媒体の実行領域に配置する。よって、管理装置100は、処理実行要求に対応するアプリケーションをより高速に実行して、当該アプリケーションに処理を行わせることができる。
【0024】
本実施形態に係る管理装置100は、例えば、(I)の処理(管理処理)、または、(I)の処理(管理処理)および(II)の処理(実行処理)を、本実施形態に係る管理方法に係る処理として行う。
【0025】
[本実施形態に係る管理方法に係る処理の具体例]
次に、本実施形態に係る管理装置100における管理方法に係る処理について、より具体的に説明する。以下では、管理装置100が、管理装置100が備えるRAM(実行されるアプリケーションが一時的に記憶される記録媒体の一例)を管理し、また、管理装置100が備える不揮発性メモリからアプリケーションを適宜読み出す場合を例に挙げて説明する。
【0026】
図1は、本実施形態に係る管理装置100が管理する、アプリケーションなどが一時的に記憶される記録媒体の構成の一例を示す説明図である。ここで、図1では、アプリケーションが一時的に記憶される記録媒体であるRAM(図1に示すA)と、アプリケーションが適宜読み出される不揮発性メモリ(図1に示すB)とを示している。
【0027】
RAMは、例えば、システムプログラム用のヒープ領域と、実行領域AR1と、キャッシュ領域AR2とを有する。図1では、実行領域AR1とキャッシュ領域AR2とが、それぞれ512[Kbyte]である場合を示している。なお、本実施形態に係る実行領域AR1は、アプリケーションのヒープ領域としての役目を果たしてもよい。
【0028】
また、図1に示すRAMが有するシステムプログラム用のヒープ領域は、例えば、管理装置100が備えるROM(Read Only Memory。図示せず)に記憶されているシステムプログラムによって用いられる。ここで、本実施形態に係るシステムプログラムは、例えば、管理装置100全体の制御に用いられるソフトウェアである。管理装置100は、実行されているシステムプログラムを介して、アプリケーションの不揮発性メモリへのインストールなどを行う。例えばシステムプログラムを介してアプリケーションの不揮発性メモリへのインストールが行われることによって、管理装置100は、実行制御情報が示すアプリケーションを、不揮発性メモリにおいて一意に特定することができる。なお、例えば実行制御情報が示すアプリケーションが、不揮発性メモリに記憶されていない場合に、管理装置100が、サーバなどの外部装置から当該アプリケーションを取得して、記憶させることが可能であることは、言うまでもない。
【0029】
以下では、管理装置100が、実行制御情報に基づいて、図1に示すRAMの実行領域AR1とキャッシュ領域AR2とを管理し、また、外部装置から送信される処理実行要求に基づいて、実行領域AR1に配置されたアプリケーションを実行する場合を例に挙げて、本実施形態に係る管理方法に係る処理について説明する。なお、本実施形態に係る管理装置100における管理方法に係る処理は、上記に限られない。例えば、本実施形態に係る管理装置100が、実行制御情報に基づいて、図1に示すRAMの実行領域AR1とキャッシュ領域AR2とを管理し、外部装置が、実行領域AR1に配置されたアプリケーションを実行することも可能である。
【0030】
また、以下では、下記に示すアプリケーション1〜アプリケーション3という3つのアプリケーションが実行されて、電子マネー(電子バリューの一例)を用いた決済に係る処理が行われる場合を例に挙げて、本実施形態に係る管理方法に係る処理について説明する。以下では、実行制御情報が、アプリケーション1、アプリケーション2、アプリケーション3の順序を示す場合、すなわち、アプリケーション1、アプリケーション2、アプリケーション3の順番で順次に実行される場合を例に挙げる。
【0031】
・アプリケーション1
アプリケーション1は、電子マネーを用いた決済を行うためのアプリケーションである。アプリケーション1のプログラムサイズ(データサイズ)は、384[Kbyte]とする。
・アプリケーション2
アプリケーション2は、電子マネーによる決済に対応するポイント(サービスの一例)を付与するアプリケーションであり、例えば、当該ポイントを、IC(Integrated Circuit)カードなどが備えるICチップ内部の内部記録媒体に記録させる。アプリケーション2のプログラムサイズ(データサイズ)は、64[Kbyte]とする。
・アプリケーション3
アプリケーション3は、電子マネーによる決済が行われた店舗に対応するポイント(店舗側が提供するサービスの一例)であり、例えば、当該ポイントを、ICカードなどが備えるICチップ内部の内部記録媒体に記録させる。アプリケーション3のプログラムサイズ(データサイズ)は、256[Kbyte]とする。
【0032】
図2〜図7は、本実施形態に係る管理装置100における管理方法に係る処理の一例を示す説明図である。ここで、図2〜図7は、図1に示すRAMの実行領域AR1とキャッシュ領域AR2との状態の一例を示している。以下、図2〜図7を適宜参照しつつ、管理装置100における管理方法に係る処理の一例について説明する。なお、以下に示す管理装置100における処理のうち、アプリケーションを実行する処理が(II)の処理(実行処理)に該当し、管理装置100におけるそれ以外の処理が、(I)の処理(管理処理)に該当する。
【0033】
(1)アプリケーション1の実行領域AR1への配置(図2)
管理装置100は、実行制御情報に基づいて、1番目に実行されるアプリケーション1を不揮発性メモリから読み出し、RAMの実行領域AR1に記録する。ここで、管理装置100は、図3に示すように、アプリケーション1を実行領域AR1の先頭の物理アドレスを記録開始位置として記録する。なお、図3では、RAMにおける物理アドレスと論理アドレスとは、一致しているものとする。また、管理装置100は、アプリケーション1に対応する処理実行要求が受信されるまで、実行領域AR1に配置されたアプリケーション1を実行しない。
【0034】
(2)アプリケーション2のキャッシュ領域AR2への配置(図3)
実行領域AR1へのアプリケーション1の配置が完了すると、管理装置100は、実行制御情報に基づいて、2番目に実行されるアプリケーション2を不揮発性メモリから読み出し、RAMのキャッシュ領域AR2に記録する。ここで、管理装置100は、図4に示すように、アプリケーション2をキャッシュ領域AR2の先頭の物理アドレスを記録開始位置として記録する。
【0035】
なお、キャッシュ領域AR2へのアプリケーション2の記録を行っている最中に、アプリケーション1に対応する処理実行要求が受信された場合には、管理装置100は、実行領域AR1に配置されているアプリケーション1を実行して、アプリケーション1に対応する処理を行わせる。また、管理装置100は、キャッシュ領域AR2へのアプリケーション2の記録を、例えば、バックグラウンドで継続する。
【0036】
(3)アプリケーション3のキャッシュ領域AR2への配置(図4)
キャッシュ領域AR2へのアプリケーション2の配置が完了すると、管理装置100は、実行制御情報に基づいて、3番目に実行されるアプリケーション3を不揮発性メモリから読み出し、RAMのキャッシュ領域AR2に記録する。ここで、管理装置100は、アプリケーション1(1番目に実行されるアプリケーション)のデータサイズと、アプリケーション2(2番目に実行されるアプリケーション)のデータサイズとの比較し、比較結果に基づいて、アプリケーション3(3番目に実行されるアプリケーション)をキャッシュ領域AR2に記録する記録開始位置を決定する。そして、管理装置100は、キャッシュ領域AR2における決定された記録開始位置から、アプリケーション3を記録する。
【0037】
より具体的には、管理装置100は、例えば、アプリケーション2のデータサイズよりも、アプリケーション1のデータサイズの方が大きい場合には、キャッシュ領域AR2の先頭の物理アドレスにアプリケーション1のデータサイズ分加えた物理アドレスを、記録開始位置として決定する。また、管理装置100は、例えば、アプリケーション1のデータサイズよりも、アプリケーション2のデータサイズの方が大きい場合には、キャッシュ領域AR2の先頭の物理アドレスにアプリケーション2のデータサイズ分加えた物理アドレスを、記録開始位置として決定する。
【0038】
ここで、アプリケーション1のデータサイズは、384[Kbyte]であり、アプリケーション2のデータサイズは、64[Kbyte]である。よって、管理装置100は、キャッシュ領域AR2の先頭の物理アドレスにアプリケーション1のデータサイズ分加えた物理アドレスを記録開始位置として、当該記録開始位置からアプリケーション3を記録する。
【0039】
また、キャッシュ領域AR2のサイズは512[Kbyte]であり、アプリケーション3のデータサイズは、256[Kbyte]である。そのため、管理装置100が、キャッシュ領域AR2の先頭の物理アドレスにアプリケーション1のデータサイズ分加えた物理アドレスを記録開始位置とした場合には、アプリケーション3のデータサイズがキャッシュ領域AR2を上回ってしまう。そこで、管理装置100は、記録開始位置からアプリケーション3を記録したときにキャッシュ領域AR2のサイズを超える場合には、図4に示すように、アプリケーション3のうちの、キャッシュ領域AR2に記録可能な一部のデータを、決定された記録開始位置から記録する。図4の例では、管理装置100が、アプリケーション3の前半の128[Kbyte]のデータをキャッシュ領域AR2に記録している例を示している。
【0040】
(4)アプリケーション2の実行領域AR1への配置(図5)
アプリケーション2に対応する処理実行要求が受信された場合には、管理装置100は、所定の領域範囲について論理アドレス−物理アドレス変換(「アドレス論物変換」と示す場合がある。)を行うことによって、キャッシュ領域AR2に記憶されているアプリケーション2を実行領域AR1の先頭の論理アドレスに移す。ここで、本実施形態に係る所定の領域範囲としては、例えば、キャッシュ領域AR2の先頭の物理アドレスから、アプリケーション1(1番目に実行されるアプリケーション)またはアプリケーション2(2番目に実行されるアプリケーション)のうちの、データサイズが大きいアプリケーションのデータサイズ分加えた物理アドレスまでの範囲が挙げられる。つまり、本実施形態に係る所定の領域範囲は、例えば、キャッシュ領域AR2の先頭の物理アドレスから、キャッシュ領域AR2におけるアプリケーション3(3番目に実行されるアプリケーション)が記録される記録開始位置に対応する物理アドレスまでの範囲に相当する。
【0041】
よって、管理装置100は、図5に示すように、キャッシュ領域AR2の先頭の物理アドレスから384[Kbyte]の領域範囲について論理アドレス−物理アドレス変換することによって、キャッシュ領域AR2に記憶されているアプリケーション2を実行領域AR1の先頭の論理アドレスに移す。
【0042】
上記のように、論理アドレス−物理アドレス変換を用いることによって、管理装置100は、データのコピーを行うことなく、アプリケーション2を実行領域AR1に移すことができる。
【0043】
また、管理装置100は、3番目に実行されるアプリケーション3をキャッシュ領域AR2に記録する記録開始位置を、上記所定の領域範囲に含めない。よって、管理装置100は、RAMにおけるメモリの断片化を防止することができる。
【0044】
実行領域AR1へのアプリケーション2の配置が完了すると、管理装置100は、実行領域AR1に配置されているアプリケーション2を実行して、アプリケーション2に対応する処理を行わせる。
【0045】
また、管理装置100は、例えば、所定の領域範囲について論理アドレス−物理アドレス変換を行った場合には、実行領域AR1に記憶されている、実行領域AR1の先頭の論理アドレスから記憶されているアプリケーション以外のデータを消去してもよい(いわゆる、メモリ領域の初期化。)。
【0046】
ここで、消去されるデータは、例えば、実行されたアプリケーションの一部のデータ(データの残骸)や、処理の実行時にヒープ領域に記憶されたデータなどのように、実行されるアプリケーションと無関係なデータである可能性が高い。上記データの消去を行うことによって、新たに実行されるアプリケーションが、実行領域AR1に記憶されている無関係なデータを参照することが防止される。よって、上記データの消去を行うことによって、管理装置100は、例えば、セキュリティをより向上させることができる。
【0047】
また、管理装置100が、データの消去を行うタイミングとしては、例えば、アプリケーションの実行の前が挙げられる。図5では、管理装置100が、アプリケーション2の実行の前に、論理アドレス0x40010000から0x4017FFFFまでを初期化した例を示している。
【0048】
(5)アプリケーション3の実行領域AR1への配置の準備(図6)
上記所定の領域範囲についての論理アドレス−物理アドレス変換が行われると、管理装置100は、アプリケーション3の実行領域AR1への配置の準備を行う。
【0049】
より具体的には、管理装置100は、上記所定の領域範囲についての論理アドレス−物理アドレス変換が行われた後に、キャッシュ領域AR2に記憶されているアプリケーション3を、キャッシュ領域AR2の先頭の論理アドレスにコピーする(図6のS100)。図6の例では、管理装置100は、論理アドレス−物理アドレス変換によってキャッシュ領域AR2の先頭の論理アドレスに配置されていたアプリケーション1を、キャッシュ領域AR2に記憶されているアプリケーション3によって上書きする。
【0050】
ここで、RAMのキャッシュ領域AR2には、上記(3)の処理によって、アプリケーション3が128[Kbyte]分記録されている。そのため、図6のステップS100の処理によって、キャッシュ領域AR2に記憶されていたアプリケーション3をキャッシュ領域AR2の先頭の論理アドレスにコピーした場合には、アプリケーション3の一部のデータしかキャッシュ領域AR2に配置されないこととなる。
【0051】
よって、上記のように、キャッシュ領域AR2の先頭の論理アドレスから記憶されているアプリケーション3が、アプリケーション3の一部のデータである場合には、管理装置100は、図6に示すように、アプリケーション3の残りのデータ(後半の128[Kbyte]のデータ)を不揮発性メモリから読み出す。そして、管理装置100は、読み出したデータを、上記一部のデータと連続するようにキャッシュ領域AR2に記録する(図6のS102)。
【0052】
(6)アプリケーション3の実行領域AR1への配置(図7)
アプリケーション3に対応する処理実行要求が受信された場合には、管理装置100は、上記所定の領域範囲について再度論理アドレス−物理アドレス変換を行うことによって、キャッシュ領域AR2に記憶されているアプリケーション3を実行領域AR1の先頭の論理アドレスに移す。ここで、上記(4)の処理において上記所定の領域範囲について論理アドレス−物理アドレス変換が行われた後に、再度、上記所定の領域範囲について論理アドレス−物理アドレス変換が行われることによって、RAMにおける物理アドレスと論理アドレスとは、再度一致することとなる。
【0053】
実行領域AR1へのアプリケーション3の配置が完了すると、管理装置100は、実行領域AR1に配置されているアプリケーション3を実行して、アプリケーション3に対応する処理を行わせる。
【0054】
また、管理装置100は、例えば、所定の領域範囲について論理アドレス−物理アドレス変換を行った場合には、上記(4)の処理と同様に、実行領域AR1におけるメモリ領域の初期化を行ってもよい。図7の例では、管理装置100は、例えば、アプリケーション3の実行の前に、論理アドレス0x40140000〜0x4017FFFFまでを初期化する。
【0055】
なお、上記所定の領域範囲について再度論理アドレス−物理アドレス変換を行う場合において、上記(5)の処理によりキャッシュ領域AR2に配置されるアプリケーション3のデータサイズが、上記所定の領域範囲に対応するデータサイズよりも大きいことがありうる。ここで、アプリケーション3のデータサイズが上記所定の領域範囲に対応するデータサイズよりも大きい場合には、上記所定の領域範囲について論理アドレス−物理アドレス変換を行ったとしても、アプリケーション3全体は、実行領域AR1に移らない。そこで、アプリケーション3のデータサイズが上記所定の領域範囲に対応するデータサイズよりも大きい場合には、管理装置100は、例えば、実行領域AR1に配置されていない部分のデータを、不揮発性メモリから読み出して、実行領域AR1に配置されているデータと連続する実行領域AR1の物理アドレスに記録する。
【0056】
管理装置100は、例えば上記(1)の処理〜(6)の処理を行うことによって、実行制御情報に基づいてRAMの実行領域AR1とキャッシュ領域AR2とを管理し(管理処理)、また、処理実行要求に基づいて、実行領域AR1に配置されたアプリケーション1〜アプリケーション3を順次に実行することができる(実行処理)。
【0057】
なお、上記では、アプリケーション1、アプリケーション2、アプリケーション3の順番で、3つのアプリケーションが順次に実行される例を挙げて、本実施形態に係る管理装置100における管理方法に係る処理の一例を示したが、本実施形態に係る管理装置100における管理方法に係る処理は、上記に限られない。例えば、管理装置100は、上記(1)の処理、(2)の処理、(4)の処理、および(6)の処理を行うことによって、2つのアプリケーションを順次に実行させることが可能である。また、管理装置100は、例えば、上記(1)の処理〜(6)の処理を行った後に、再度上記(2)の処理から開始することによって、4つのアプリケーションを順次に実行させることができる。
【0058】
また、上記では、電子マネー(電子バリューの一例)を用いた決済に係る処理が行われる場合を例に挙げて、本実施形態に係る管理方法に係る処理の一例を説明したが、本実施形態に係る管理方法に係る処理が適用可能な処理は、決済に係る処理に限られない。例えば、本実施形態に係る管理方法に係る処理は、複数のアプリケーションが順次に実行されることにより実現される、任意の処理に適用することができる。
【0059】
本実施形態に係る管理装置100は、本実施形態に係る管理方法に係る処理として、例えば、(I)の処理(管理処理)、または、(I)の処理(管理処理)および(II)の処理(実行処理)を行う。管理装置100は、(I)の処理(管理処理)において、実行制御情報に基づいて、例えばNANDフラッシュメモリなどの不揮発性メモリなどから適宜アプリケーションを読み出して、実行される順にRAMの実行領域AR1に配置する。ここで、NANDフラッシュメモリなどの不揮発性メモリは、RAMなどの本実施形態に係る記録媒体と比較して読み出し速度が遅い。しかしながら、管理装置100は、実行される順にRAMの実行領域AR1にアプリケーションを配置するので、実行される複数のアプリケーションがNANDフラッシュメモリなどの不揮発性メモリに記憶されている場合であっても、管理装置100は、実行されるアプリケーションの切り替え処理を、より高速に行うことができる。
【0060】
したがって、管理装置100は、本実施形態に係る管理方法に係る処理を行うことによって、複数のアプリケーションが順次に実行される場合において、効率的なメモリ管理を行うことができる。
【0061】
また、実行されるアプリケーションの切り替え処理の高速化を図る他の方法としては、例えば、ROM上にアプリケーションを展開しておき、展開されているアプリケーションを実行することや、RAM上にアプリケーションを予め展開しておくことが考えられる。しかしながら、ROMやRAMのコストは、NANDフラッシュメモリなどの不揮発性メモリと比較すると高価である。よって、上記他の方法を用いる場合には、本実施形態に係る管理方法を用いる場合よりも、管理装置により管理される記録媒体を備える装置のコストが上昇する可能性が高い。
【0062】
本実施形態に係る管理方法が用いられる場合には、上記のように、順次に実行されるアプリケーションがNANDフラッシュメモリなどの不揮発性メモリに記憶されていても、効率的なメモリ管理を行うことが可能である。したがって、本実施形態に係る管理方法を用いることによって、管理装置100により管理される記録媒体を備える装置のコストをより低減することができる。
【0063】
また、一般的に、MMUにより論理アドレス−物理アドレス変換を行ってメモリ管理を行う場合には、例えば、メモリの断片化や、メモリ不足などが発生しうることから、メモリ管理が複雑となる恐れがある。
【0064】
本実施形態に係る管理方法が用いられる場合には、上記のように、RAM(実行されるアプリケーションが一時的に記憶される記録媒体の一例)におけるメモリの断片化が防止される。また、本実施形態に係る管理方法を用いる場合には、上記所定の領域範囲に対して論理アドレス−物理アドレス変換を2度行うことによって、物理アドレスと論理アドレスとを一致させることが可能であるので、アドレス管理がより簡単化される。よって、例えば実装コストを低減することが可能であるので、本実施形態に係る管理方法に係る処理を行うことが可能な、本実施形態に係る管理装置を、より容易に実現することができる。
【0065】
(本実施形態に係る管理装置)
次に、上述した本実施形態に係る管理方法に係る処理を行うことが可能な、本実施形態に係る管理装置100の構成の一例について、説明する。
【0066】
図8は、本実施形態に係る管理装置100の構成の一例を示すブロック図である。管理装置100は、例えば、通信部102と、RAM104と、記憶部106と、制御部108とを備える。
【0067】
また、管理装置100は、例えば、ROM(図示せず)や、ユーザが操作可能な操作部(図示せず)、様々な画面を表示画面に表示する表示部(図示せず)などを備えていてもよい。管理装置100は、例えば、データの伝送路としてのバス(bus)により上記各構成要素間を接続する。
【0068】
ここで、ROM(図示せず)は、例えば、システムプログラムなどの制御部108が使用するプログラムや、演算パラメータなどの制御用データを記憶する。
【0069】
操作部(図示せず)としては、例えば、ボタンや、方向キー、ジョグダイヤルなどの回転型セレクター、あるいは、これらの組み合わせなどが挙げられる。また、管理装置100は、例えば、管理装置100の外部装置としての操作入力デバイス(例えば、キーボードやマウスなど)と接続することもできる。
【0070】
表示部(図示せず)としては、例えば、液晶ディスプレイ(Liquid Crystal Display;LCD)や有機ELディスプレイ(organic ElectroLuminescence display。または、OLEDディスプレイ(Organic Light Emitting Diode display)ともよばれる。)などが挙げられる。なお、表示部(図示せず)は、例えばタッチスクリーンなどのように、表示とユーザ操作とが可能なデバイスであってもよい。また、管理装置100は、表示部(図示せず)の有無に関わらず、管理装置100の外部装置としての表示デバイス(例えば、外部ディスプレイなど)と接続することもできる。
【0071】
[管理装置100のハードウェア構成例]
図9は、本実施形態に係る管理装置100のハードウェア構成の一例を示す説明図である。管理装置100は、例えば、MPU150と、ROM152と、RAM154と、記録媒体156と、入出力インタフェース158と、操作入力デバイス160と、表示デバイス162と、通信インタフェース164とを備える。また、管理装置100は、例えば、データの伝送路としてのバス166で各構成要素間を接続する。
【0072】
MPU150は、例えば、MPU(Micro Processing Unit)や、MMUなどの各種処理回路などで構成され管理装置100全体を制御する制御部108として機能する。また、MPU150は、管理装置100において、例えば、後述する管理部110、および処理部112の役目を果たす。
【0073】
ROM152は、例えば、システムプログラムなどの制御部108が使用するプログラムや、演算パラメータなどの制御用データなどを記憶する。
【0074】
RAM154は、例えば、MPU150により実行されるプログラムやアプリケーションなどを一時的に記憶する。また、RAM154は、管理装置100が上記(1)の処理(管理処理)によって実行領域AR1とキャッシュ領域AR2とを管理する、管理対象の記録媒体に該当する。
【0075】
記録媒体156は、記憶部106として機能し、例えば、アプリケーションなど様々なデータを記憶する。ここで、記録媒体156としては、例えば、ハードディスクなどの磁気記録媒体や、フラッシュメモリなどの不揮発性メモリが挙げられる。また、記録媒体156は、管理装置100から着脱可能であってもよい。
【0076】
入出力インタフェース158は、例えば、操作入力デバイス160や、表示デバイス162を接続する。操作入力デバイス160は、操作部(図示せず)として機能し、また、表示デバイス162は、表示部(図示せず)として機能する。ここで、入出力インタフェース158としては、例えば、USB(Universal Serial Bus)端子や、DVI(Digital Visual Interface)端子、HDMI(High-Definition Multimedia Interface)端子、各種処理回路などが挙げられる。また、操作入力デバイス160は、例えば、管理装置100上に備えられ、管理装置100の内部で入出力インタフェース158と接続される。操作入力デバイス160としては、例えば、ボタン、方向キー、ジョグダイヤルなどの回転型セレクター、あるいは、これらの組み合わせなどが挙げられる。また、表示デバイス162は、例えば、管理装置100上に備えられ、管理装置100の内部で入出力インタフェース158と接続される。表示デバイス162としては、例えば、液晶ディスプレイや有機ELディスプレイなどが挙げられる。
【0077】
なお、入出力インタフェース158が、管理装置100の外部装置としての操作入力デバイス(例えば、キーボードやマウスなど)や、表示デバイスなどの外部デバイスと接続することもできることは、言うまでもない。また、表示デバイス162は、例えばタッチスクリーンなど、表示とユーザ操作とが可能なデバイスであってもよい。
【0078】
通信インタフェース164は、管理装置100が備える通信手段であり、ネットワークを介して(あるいは、直接的に)、外部装置と無線/有線で通信を行うための通信部102として機能する。ここで、通信インタフェース164としては、例えば、通信アンテナおよびRF(Radio Frequency)回路(無線通信)や、IEEE802.15.1ポートおよび送受信回路(無線通信)、IEEE802.11bポートおよび送受信回路(無線通信)、あるいはLAN(Local Area Network)端子および送受信回路(有線通信)などが挙げられる。
【0079】
管理装置100は、例えば図9に示す構成によって、本実施形態に係る管理方法に係る処理を行う。なお、本実施形態に係る管理装置100のハードウェア構成は、図9に示す構成に限られない。
【0080】
例えば、管理装置100は、13.56[MHz]など所定の周波数の搬送波を通信に用いるNFC(Near Field Communication)によって形成される通信路によって、外部装置と通信を行うための、無線通信アンテナ回路および搬送波送信回路を、さらに備えていてもよい。
【0081】
ここで、無線通信アンテナ回路は、例えば、送受信アンテナとしての所定のインダクタンスをもつコイルおよび所定の静電容量をもつキャパシタからなる共振回路と、復調回路とから構成される。また、搬送波送信回路は、例えば、ASK変調(Amplitude Shift Keying)を行う変調回路と、変調回路の出力を増幅する増幅回路とから構成され、無線通信アンテナ回路の送受信アンテナから搬送波信号をのせた搬送波を送信する。
【0082】
例えば上記のような無線通信アンテナ回路および搬送波送信回路を備えることによって、管理装置100は、いわゆるリーダ/ライタ機能を有することができる。また、管理装置100は、リーダ/ライタと非接触式に通信可能なICチップを備えていてもよい。
【0083】
また、管理装置100が、スタンドアロンで処理を行う構成である場合には、通信デバイス164を備えていなくてもよい。さらに、管理装置100は、例えば、RAM154や、記録媒体156、操作デバイス160、表示デバイス162を備えない構成をとることも可能である。
【0084】
また、管理装置100は、本実施形態に係る管理方法に係る処理を行う機能(例えば、後述する管理部110、または、後述する管理部110および処理部112が有する機能)を実現するためのICであってもよい。
【0085】
再度図8を参照して、管理装置100の構成の一例について説明する。通信部102は、管理装置100が備える通信手段であり、ネットワークを介して(あるいは、直接的に)、外部装置と無線/有線で通信を行う。また、通信部102は、例えば制御部108により通信が制御される。通信部102を備えることによって、管理装置100は、外部装置から送信された実行制御情報や、処理実行要求に基づいて、本実施形態に係る管理方法に係る処理を行うことができる。
【0086】
ここで、通信部102としては、例えば、通信アンテナおよびRF回路や、LAN端子および送受信回路などが挙げられるが、通信部102の構成は、上記に限られない。例えば、通信部102は、USB端子および送受信回路など通信を行うことが可能な任意の規格に対応する構成や、ネットワークに対応する構成をとることができる。
【0087】
RAM104は、例えば、実行されるプログラムやアプリケーションなどが一時的に記憶される記録媒体である。RAM104は、例えば図1のAに示す構成を有し、RAM104を構成する実行領域AR1とキャッシュ領域AR2とは、後述する管理部110によって管理される。
【0088】
記憶部106は、管理装置100が備える記憶手段であり、例えば、アプリケーションなど様々なデータを記憶する。ここで、記憶部(図示せず)としては、例えば、ハードディスクなどの磁気記録媒体や、フラッシュメモリなどの不揮発性メモリなどが挙げられる。また、記憶部(図示せず)は、管理装置100から着脱可能であってもよい。
【0089】
制御部108は、例えばMPUなどで構成され、管理装置100全体を制御する役目を果たす。また、制御部108は、例えば、管理部110と、処理部112とを備え、本実施形態に係る管理方法に係る処理を主導的に行う役目を果たす。
【0090】
管理部110は、(I)の処理(管理処理)を主導的に行う役目を果たし、実行制御情報に基づいて、RAM104における実行領域AR1とキャッシュ領域AR2とを管理する。より具体的には、管理部110は、例えば、図2〜図7を参照して説明した本実施形態に係る管理方法に係る処理のうち、アプリケーションを実行する処理以外の処理を主導的に行う。
【0091】
処理部112は、(II)の処理(実行処理)を主導的に行う役目を果たし、RAM104の実行領域AR1に記憶されているアプリケーションを実行して、実行されたアプリケーションに処理を行わせる。より具体的には、管理部110は、例えば、図2〜図7を参照して説明した本実施形態に係る管理方法に係る処理のうち、アプリケーションを実行する処理を主導的に行う。
【0092】
制御部108は、例えば、管理部110、および処理部112を備えることによって、本実施形態に係る管理方法に係る処理を主導的に行う。
【0093】
なお、本実施形態に係る管理方法に係る処理を実現するための構成は、図8に示す制御部108の構成に限られない。例えば、本実施形態に係る制御部108は、処理部112を備えない構成をとってもよい。処理部112を備えない構成をとる場合には、例えば、RAM104の実行領域AR1に記憶されているアプリケーションが、外部装置によって実行される。ここで、処理部112を備えない構成をとる場合であっても、本実施形態に係る管理装置100は、本実施形態に係る管理方法に係る、(I)の処理(管理処理)を行うことが可能である。よって、処理部112を備えない構成をとる場合であっても、本実施形態に係る管理装置100は、複数のアプリケーションが順次に実行される場合において、効率的なメモリ管理を行うことができる。
【0094】
管理装置100は、例えば図8に示す構成によって、本実施形態に係る管理方法に係る処理(例えば、(I)の処理(管理処理))を行う。したがって、管理装置100は、例えば図8に示す構成によって、複数のアプリケーションが順次に実行される場合において、効率的なメモリ管理を行うことができる。
【0095】
また、管理装置100は、例えば図8に示す構成によって、さらに(II)の処理(実行処理)を行う。したがって、管理装置100は、例えば図2〜図7を参照して説明した本実施形態に係る管理方法に係る処理の一例のように、処理実行要求に基づいて、RAM104の実行領域AR1に記憶されているアプリケーションを実行して、当該アプリケーションに処理を行わせることができる。
【0096】
なお、本実施形態に係る管理装置の構成は、図8に示す構成に限られない。例えば、本実施形態に係る管理装置がスタンドアロンで処理を行う構成である場合には、本実施形態に係る管理装置は、通信部102を備えていなくてもよい。
【0097】
また、本実施形態に係る管理方法に係る(I)の処理(管理処理)を主導的に行う管理部110が、例えば、本実施形態に係る管理装置の外部に設けられる外部記録媒体を管理する場合には、本実施形態に係る管理装置は、RAM104(実行されるプログラムやアプリケーションが一時的に記憶される記録媒体の一例)を備えていなくてもよい。
【0098】
さらに、本実施形態に係る管理装置は、記憶部106を備えない構成をとることも可能である。記憶部106を備えない場合、本実施形態に係る管理装置は、例えば、ネットワークを介して(あるいは、直接的に)接続された外部装置からアプリケーションを取得する。
【0099】
以上のように、本実施形態に係る管理装置100は、本実施形態に係る管理方法に係る処理として、例えば、(I)の処理(管理処理)、または、(I)の処理(管理処理)および(II)の処理(実行処理)を行う。管理装置100は、(I)の処理(管理処理)において、実行制御情報に基づいて、例えば不揮発性メモリなどから適宜アプリケーションを読み出して、実行される順にRAM(実行されるプログラムやアプリケーションが一時的に記憶される記録媒体の一例)の実行領域AR1に配置する。管理装置100は、実行される順にRAMの実行領域AR1にアプリケーションを配置するので、実行される複数のアプリケーションが、RAMと比較して読み出し速度が遅いNANDフラッシュメモリなどの不揮発性メモリに記憶されている場合であっても、管理装置100は、実行されるアプリケーションの切り替え処理を、より高速に行うことができる。
【0100】
したがって、管理装置100は、複数のアプリケーションが順次に実行される場合において、効率的なメモリ管理を行うことができる。
【0101】
また、本実施形態に係る管理方法を用いることによって、順次に実行されるアプリケーションがNANDフラッシュメモリなどの不揮発性メモリに記憶されていても、効率的なメモリ管理を行うことが可能である。したがって、本実施形態に係る管理方法を用いることによって、管理装置100により管理される記録媒体を備える装置のコストをより低減することができる。
【0102】
また、本実施形態に係る管理方法が用いられる場合には、RAMにおけるメモリの断片化が防止される。また、本実施形態に係る管理方法を用いる場合には、上記所定の領域範囲に対して論理アドレス−物理アドレス変換を2度行うことによって、物理アドレスと論理アドレスとを一致させることが可能であるので、アドレス管理がより簡単化される。よって、例えば実装コストを低減することが可能であるので、本実施形態に係る管理方法に係る処理を行うことが可能な、本実施形態に係る管理装置を、より容易に実現することができる。
【0103】
以上、本実施形態として管理装置100を挙げて説明したが、本実施形態は、かかる形態に限られない。本実施形態は、例えば、PC(Personal Computer)やサーバなどのコンピュータ、テレビ受像機などの表示装置、携帯電話やスマートフォンなどの通信装置、映像/音楽再生装置(または映像/音楽記録再生装置)、ゲーム機など、様々な機器に適用することができる。また、本実施形態は、例えば、上記のような様々な機器に組み込むことが可能な、記録媒体の制御ICに適用することもできる。
【0104】
(本実施形態に係るプログラム)
コンピュータを、本実施形態に係る管理装置として機能させるためのプログラム(例えば、“(I)の処理(管理処理)”や、“(I)の処理、および(II)の処理(実行処理)”など、本実施形態に係る管理方法に係る処理を実行することが可能なプログラム)によって、複数のアプリケーションが順次に実行される場合において、効率的なメモリ管理を行うことができる。
【0105】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【0106】
例えば、上記では、コンピュータを、本実施形態に係る管理装置として機能させるためのプログラム(コンピュータプログラム)が提供されることを示したが、本実施形態は、さらに、上記プログラムをそれぞれ記憶させた記録媒体も併せて提供することができる。
【0107】
上述した構成は、本実施形態の一例を示すものであり、当然に、本開示の技術的範囲に属するものである。
【0108】
なお、以下のような構成も本開示の技術的範囲に属する。
(1)
複数のアプリケーションの実行順序を示す実行制御情報に基づいて、アプリケーションが実行されるときにアプリケーションが一時的に記憶される記録媒体における、実行領域と、キャッシュ領域とを管理する管理部を備える、管理装置。
(2)
前記管理部は、
前記実行領域の先頭の物理アドレスを記録開始位置として、1番目に実行されるアプリケーションを記録し、
前記キャッシュ領域の先頭の物理アドレスを記録開始位置として、2番目に実行されるアプリケーションを記録し、
前記2番目に実行されるアプリケーションを実行させる場合には、所定の領域範囲について論理アドレス−物理アドレス変換を行うことによって、前記キャッシュ領域に記憶されている前記2番目に実行されるアプリケーションを前記実行領域の先頭の論理アドレスに移し、
前記所定の領域範囲は、前記キャッシュ領域の先頭の物理アドレスから、前記1番目に実行されるアプリケーションまたは前記2番目に実行されるアプリケーションのうちの、データサイズが大きいアプリケーションのデータサイズ分加えた物理アドレスまでの範囲である、(1)に記載の管理装置。
(3)
前記管理部は、3番目に実行されるアプリケーションがある場合には、
前記1番目に実行されるアプリケーションのデータサイズと、前記2番目に実行されるアプリケーションのデータサイズとの比較結果に基づいて、前記3番目に実行されるアプリケーションを前記キャッシュ領域に記録する記録開始位置を決定し、
前記キャッシュ領域における決定された記録開始位置から、前記3番目に実行されるアプリケーションを記録する、(2)に記載の管理装置。
(4)
前記管理部は、
前記2番目に実行されるアプリケーションのデータサイズよりも、前記1番目に実行されるアプリケーションのデータサイズの方が大きい場合には、前記キャッシュ領域の先頭の物理アドレスに前記1番目に実行されるアプリケーションのデータサイズ分加えた物理アドレスを、記録開始位置として決定し、
前記1番目に実行されるアプリケーションのデータサイズよりも、前記2番目に実行されるアプリケーションのデータサイズの方が大きい場合には、前記キャッシュ領域の先頭の物理アドレスに前記2番目に実行されるアプリケーションのデータサイズ分加えた物理アドレスを、記録開始位置として決定する、(3)に記載の管理装置。
(5)
前記管理部は、決定された記録開始位置から前記3番目に実行されるアプリケーションを記録したときに、前記キャッシュ領域のサイズを超える場合には、前記3番目に実行されるアプリケーションのうちの、前記キャッシュ領域に記録可能な一部のデータを、決定された前記記録開始位置から記録する、(4)に記載の管理装置。
(6)
前記管理部は、前記所定の領域範囲についての論理アドレス−物理アドレス変換が行われた後に、前記キャッシュ領域において決定された記録開始位置から記憶されている前記3番目に実行されるアプリケーションを、前記キャッシュ領域の先頭の論理アドレスにコピーする、(4)または(5)に記載の管理装置。
(7)
前記管理部は、
前記キャッシュ領域の先頭の論理アドレスから記憶されている前記3番目に実行されるアプリケーションが、前記3番目に実行されるアプリケーションの一部のデータである場合には、前記3番目に実行されるアプリケーションの残りのデータを、前記一部のデータと連続するように前記キャッシュ領域に記録する、(6)に記載の管理装置。
(8)
前記管理部は、前記3番目に実行されるアプリケーションを実行させる場合には、前記所定の領域範囲について論理アドレス−物理アドレス変換を行うことによって、前記実行領域に移された前記2番目に実行されるアプリケーションを、前記キャッシュ領域の先頭の論理アドレスに移す、(6)または(7)に記載の管理装置。
(9)
前記管理部は、前記所定の領域範囲について論理アドレス−物理アドレス変換を行った場合には、前記実行領域に記憶されている、前記実行領域の先頭の論理アドレスから記憶されているアプリケーション以外のデータを消去する、(2)〜(8)のいずれか1つに記載の管理装置。
(10)
外部装置と通信を行う通信部をさらに備え、
前記管理部は、外部装置から送信される前記実行制御情報に基づいて、前記記録媒体における前記実行領域と前記キャッシュ領域とを管理する、(1)〜(9)のいずれか1つに記載の管理装置。
(11)
前記実行領域に記憶されているアプリケーションに処理を行わせる処理部をさらに備える、(1)〜(10)のいずれか1つに記載の管理装置。
(12)
外部装置と通信を行う通信部をさらに備え、
前記処理部は、外部装置から送信された処理実行要求に基づいて、前記アプリケーションに処理を行わせる、(11)に記載の管理装置。
(13)
前記記録媒体を備える、(1)〜(12)のいずれか1つに記載の管理装置。
(14)
前記記録媒体は、外部に設けられる外部記録媒体である、(1)〜(12)のいずれか1つに記載の管理装置。
(15)
複数のアプリケーションの実行順序を示す実行制御情報に基づいて、アプリケーションが実行されるときにアプリケーションが一時的に記憶される記録媒体における、実行領域と、キャッシュ領域とを管理するステップを有する、管理方法。
(16)
複数のアプリケーションの実行順序を示す実行制御情報に基づいて、アプリケーションが実行されるときにアプリケーションが一時的に記憶される記録媒体における、実行領域と、キャッシュ領域とを管理する機能、
をコンピュータに実現させるためのプログラム。
【符号の説明】
【0109】
100 管理装置
102 通信部
104、154 RAM
106 記憶部
108 制御部
110 管理部
112 処理部


【特許請求の範囲】
【請求項1】
複数のアプリケーションの実行順序を示す実行制御情報に基づいて、アプリケーションが実行されるときにアプリケーションが一時的に記憶される記録媒体における、実行領域と、キャッシュ領域とを管理する管理部を備える、管理装置。
【請求項2】
前記管理部は、
前記実行領域の先頭の物理アドレスを記録開始位置として、1番目に実行されるアプリケーションを記録し、
前記キャッシュ領域の先頭の物理アドレスを記録開始位置として、2番目に実行されるアプリケーションを記録し、
前記2番目に実行されるアプリケーションを実行させる場合には、所定の領域範囲について論理アドレス−物理アドレス変換を行うことによって、前記キャッシュ領域に記憶されている前記2番目に実行されるアプリケーションを前記実行領域の先頭の論理アドレスに移し、
前記所定の領域範囲は、前記キャッシュ領域の先頭の物理アドレスから、前記1番目に実行されるアプリケーションまたは前記2番目に実行されるアプリケーションのうちの、データサイズが大きいアプリケーションのデータサイズ分加えた物理アドレスまでの範囲である、請求項1に記載の管理装置。
【請求項3】
前記管理部は、3番目に実行されるアプリケーションがある場合には、
前記1番目に実行されるアプリケーションのデータサイズと、前記2番目に実行されるアプリケーションのデータサイズとの比較結果に基づいて、前記3番目に実行されるアプリケーションを前記キャッシュ領域に記録する記録開始位置を決定し、
前記キャッシュ領域における決定された記録開始位置から、前記3番目に実行されるアプリケーションを記録する、請求項2に記載の管理装置。
【請求項4】
前記管理部は、
前記2番目に実行されるアプリケーションのデータサイズよりも、前記1番目に実行されるアプリケーションのデータサイズの方が大きい場合には、前記キャッシュ領域の先頭の物理アドレスに前記1番目に実行されるアプリケーションのデータサイズ分加えた物理アドレスを、記録開始位置として決定し、
前記1番目に実行されるアプリケーションのデータサイズよりも、前記2番目に実行されるアプリケーションのデータサイズの方が大きい場合には、前記キャッシュ領域の先頭の物理アドレスに前記2番目に実行されるアプリケーションのデータサイズ分加えた物理アドレスを、記録開始位置として決定する、請求項3に記載の管理装置。
【請求項5】
前記管理部は、決定された記録開始位置から前記3番目に実行されるアプリケーションを記録したときに、前記キャッシュ領域のサイズを超える場合には、前記3番目に実行されるアプリケーションのうちの、前記キャッシュ領域に記録可能な一部のデータを、決定された前記記録開始位置から記録する、請求項4に記載の管理装置。
【請求項6】
前記管理部は、前記所定の領域範囲についての論理アドレス−物理アドレス変換が行われた後に、前記キャッシュ領域において決定された記録開始位置から記憶されている前記3番目に実行されるアプリケーションを、前記キャッシュ領域の先頭の論理アドレスにコピーする、請求項4に記載の管理装置。
【請求項7】
前記管理部は、
前記キャッシュ領域の先頭の論理アドレスから記憶されている前記3番目に実行されるアプリケーションが、前記3番目に実行されるアプリケーションの一部のデータである場合には、前記3番目に実行されるアプリケーションの残りのデータを、前記一部のデータと連続するように前記キャッシュ領域に記録する、請求項6に記載の管理装置。
【請求項8】
前記管理部は、前記3番目に実行されるアプリケーションを実行させる場合には、前記所定の領域範囲について論理アドレス−物理アドレス変換を行うことによって、前記実行領域に移された前記2番目に実行されるアプリケーションを、前記キャッシュ領域の先頭の論理アドレスに移す、請求項6に記載の管理装置。
【請求項9】
前記管理部は、前記所定の領域範囲について論理アドレス−物理アドレス変換を行った場合には、前記実行領域に記憶されている、前記実行領域の先頭の論理アドレスから記憶されているアプリケーション以外のデータを消去する、請求項2に記載の管理装置。
【請求項10】
外部装置と通信を行う通信部をさらに備え、
前記管理部は、外部装置から送信される前記実行制御情報に基づいて、前記記録媒体における前記実行領域と前記キャッシュ領域とを管理する、請求項1に記載の管理装置。
【請求項11】
前記実行領域に記憶されているアプリケーションに処理を行わせる処理部をさらに備える、請求項1に記載の管理装置。
【請求項12】
外部装置と通信を行う通信部をさらに備え、
前記処理部は、外部装置から送信された処理実行要求に基づいて、前記アプリケーションに処理を行わせる、請求項11に記載の管理装置。
【請求項13】
前記記録媒体を備える、請求項1に記載の管理装置。
【請求項14】
前記記録媒体は、外部に設けられる外部記録媒体である、請求項1に記載の管理装置。
【請求項15】
複数のアプリケーションの実行順序を示す実行制御情報に基づいて、アプリケーションが実行されるときにアプリケーションが一時的に記憶される記録媒体における、実行領域と、キャッシュ領域とを管理するステップを有する、管理方法。
【請求項16】
複数のアプリケーションの実行順序を示す実行制御情報に基づいて、アプリケーションが実行されるときにアプリケーションが一時的に記憶される記録媒体における、実行領域と、キャッシュ領域とを管理する機能、
をコンピュータに実現させるためのプログラム。



【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2013−88968(P2013−88968A)
【公開日】平成25年5月13日(2013.5.13)
【国際特許分類】
【出願番号】特願2011−227957(P2011−227957)
【出願日】平成23年10月17日(2011.10.17)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】