(57)【特許請求の範囲】
【請求項１】
部分的に電源の投入及び切断が可能である部分領域に区分けされており、電源の切断によって記憶されたデータが消失する第１の記憶部と、
電源が切断されても記憶されたデータを保持する第２の記憶部と、
起動されているタスクに関する使用データであって、前記第１の記憶部に記憶されている断片化された使用データを再配置する再配置部と、
前記再配置の結果、前記部分領域の一部に前記使用データが記憶されており、該部分領域の一部に記憶されている該使用データと同一のデータが前記第２の記憶部に記憶されている場合には、前記部分領域の該一部の該部分領域に占める割合に応じて、前記部分領域の該一部の解放及び前記部分領域の電源の切断の実行を判定し、該判定にしたがって、前記部分領域の該一部の解放及び前記部分領域の電源の切断を行う処理部と、
を備える情報処理装置。
【請求項２】
電源が切断された前記部分領域に電源が投入された場合には、電源の切断によって消失された前記部分領域の一部に記憶されていた使用データと同一のデータを、前記第２の記憶部から読み出して、前記第１の記憶部内の前記部分領域の一部に格納する読み出し部をさらに備える請求項１に記載の情報処理装置。
【請求項３】
前記処理部は、前記部分領域の電源を切断する場合に、前記部分領域の一部に含まれる使用データが記憶される前記第１の記憶部のアドレスと、該使用データと同一のデータが記憶される前記第２の記憶部のアドレスと、を保持し、
前記読み出し部は、前記部分領域の電源が投入された場合に、電源の切断によって消失された前記部分領域の一部に記憶されていた使用データと同一のデータを前記第２の記憶部のアドレスから読み出して、前記第１の記憶部のアドレスに格納する
請求項２に記載の情報処理装置。
【請求項４】
前記処理部は、該部分領域の一部に記憶されている使用データが、前記第２の記憶部に同一のデータが記憶されているデータであって、かつ、前記読み出し部のタスクの実行コードではない場合に、該部分領域電源を切断する
請求項２に記載の情報処理装置。
【請求項５】
前記再配置部は、使用データのうち、前記第２の記憶部に同一データが記憶されているデータであって、かつ、前記読み出し部のタスクの実行コードではない使用データが優先的に解放されるように再配置する
請求項２から４の何れか１項に記載の情報処理装置。
【請求項６】
部分的に電源の投入及び切断が可能である部分領域に区分けされており、電源の切断によって記憶されたデータが消失する第１の記憶部と、
電源が切断されても記憶されたデータを保持する第２の記憶部と、を備えるコンピュータに、
起動されているタスクに関する使用データであって、前記第１の記憶部に記憶されている断片化された使用データを再配置するステップと、
前記再配置の結果、前記部分領域の一部に前記使用データが記憶されており、該部分領域の一部に記憶されている該使用データと同一のデータが前記第２の記憶部に記憶されている場合には、前記部分領域の該一部の該部分領域に占める割合に応じて、前記部分領域の該一部の解放及び前記部分領域の電源の切断の実行を判定し、該判定にしたがって、前記部分領域の該一部の解放及び前記部分領域の電源の切断を行うステップと、
を実行させるためのプログラム。
【請求項７】
部分的に電源の投入及び切断が可能である部分領域に区分けされており、電源の切断によって記憶されたデータが消失する第１の記憶部と、
電源が切断されても記憶されたデータを保持する第２の記憶部と、を備えるコンピュータが、
起動されているタスクに関する使用データであって、前記第１の記憶部に記憶されている断片化された使用データを再配置するステップと、
前記再配置の結果、前記部分領域の一部に前記使用データが記憶されており、該部分領域の一部に記憶されている該使用データと同一のデータが前記第２の記憶部に記憶されている場合には、前記部分領域の該一部の該部分領域に占める割合に応じて、前記部分領域の該一部の解放及び前記部分領域の電源の切断の実行を判定し、該判定にしたがって、前記部分領域の該一部の解放及び前記部分領域の電源の切断を行うステップと、
を実行するメモリの電源制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、省電力状態に移行する場合に、主記憶装置の記憶領域の一部の電源を切断する情報処理装置に関する。
【背景技術】
【０００２】
携帯電話端末，ノート型パソコン，携帯ゲーム機，携帯音楽再生機などの持ち運び可能な携帯端末は、消費電力を抑えるために、例えば、一定時間使用されない場合には、省電力状態に移行する。省電力状態では、これらの携帯端末に搭載される各デバイスの電源が切断される、又は、各デバイスが待機状態になることによって、消費電力が抑えられる。携帯端末が省電力状態に移行する場合には、携帯端末に搭載される主記憶装置（メモリとも呼ばれる）も省電力状態に移行する。主記憶装置が省電力状態に移行する場合には、主記憶装置の未使用領域の電源が切断される。
【０００３】
主記憶装置が省電力状態に移行する場合には、断片的に使用される主記憶装置の領域を先頭から並び変えるデフラグメンテーションと呼ばれる整理処理が行われる。以降、デフラグメンテーションは、省略して、「デフラグ」と呼ばれる。
【０００４】
デフラグが実行された主記憶装置の記憶領域は、起動されているタスクによって使用される使用領域と使用領域以外の未使用領域とに分けられる。未使用領域に保持されているデータは消失しても起動されているタスクに影響がないので、未使用領域の電源は切断可能である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−３３３９９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
主記憶装置では、領域を２分の１、４分の１などに等分割したブロックごとに電源の投入及び切断が管理される。以降、電源の投入及び切断が管理されるブロックは電源領域と称される。
【０００７】
したがって、デフラグ処理後、未使用領域のみを含む電源領域は電源を切断することができるが、使用領域をわずかでも含む電源領域は起動されているタスクに影響するため電源を切断することができない。省電力状態において、使用領域がわずかに含まれるために、電源を切断することができない電源領域が存在する可能性がある。例えば、主記憶装置の領域が、２等分されたサイズの電源領域１と電源領域２とを有する場合を想定すると、デフラグ処理後、使用領域が電源領域１と、電源領域２にわずかに差し掛かる場合には、電源領域２の電源を切断することができない。このような場合、省電力状態に移行しても、主記憶装置の電源領域１及び電源領域２へ供給される電源をいずれも切断することができず、主記憶装置の消費電力の低減を図ることができない。
【０００８】
本発明の態様の一つは、消費電力を低減する情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の態様の一つは、情報処理装置である。この情報処理装置は、
部分的に電源の投入及び切断が可能である部分領域に区分けされており、電源の切断によって記憶されたデータが消失する第１の記憶部と、
電源が切断されても記憶されたデータを保持する第２の記憶部と、
起動中のタスクに関する使用データであって、前記第１の記憶部に記憶されている断片化された使用データを再配置する再配置部と、
前記再配置の結果、前記部分領域の一部に前記使用データが記憶されており、該部分領域の一部に記憶されている該使用データと同一のデータが前記第２の記憶部に記憶されている場合には、該部分領域の電源を切断する処理部と、
を備える。
【００１０】
本発明の他の態様の一つは、上述した情報処理装置が実行するメモリの電源制御方法である。また、本発明の他の態様は、情報処理装置にメモリの電源制御方法を実行させるためのプログラム、及び当該プログラムを記録したコンピュータ読み取り可能な記録媒体を含むことができる。
【発明の効果】
【００１１】
開示の情報処理装置によれば、消費電力を低減することができる。
【図面の簡単な説明】
【００１２】
【図１】携帯端末の構成例を示す図である。
【図２】主記憶装置の記憶領域の使用例を示す図である。
【図３】メモリ管理テーブルの例を示す図である。
【図４】主記憶装置のデフラグ処理の例について説明する図である。
【図５】図４に示される例の主記憶装置の解放されたコピー領域の復帰処理を説明する図である。
【図６】新たなタスクＸの起動時に、タスク起動時の実行コードが外部記憶装置から主記憶装置へコピーされる場合のメモリ管理テーブルのエントリ追加処理のフローの例を示す図である。
【図７】タスクＸの起動中に、外部記憶装置に保持されるデータが読み出され主記憶装置へコピーされる場合のメモリ管理テーブルのエントリ追加処理のフローの例を示す図である。
【図８Ａ】携帯端末が省電力状態に移行する処理のフローの例を示す図である。
【図８Ｂ】携帯端末が省電力状態から復帰する処理のフローの例を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面に基づいて、本発明の実施の形態を説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【００１４】
＜第１実施形態＞
第１実施形態では、メモリの電源制御を行う情報処理装置の一例として、携帯端末について説明される。
【００１５】
＜＜携帯端末の構成例＞＞
図１は、携帯端末の構成例を示す図である。携帯端末１は、プロセッサ２，外部記憶装置３，主記憶装置４，入力装置５，出力装置６，及びアンテナ７を備える。また、プロセッサ２，外部記憶装置３，主記憶装置４，入力装置５，出力装置６，及びアンテナ７は、バス８によって互いに接続されている。
【００１６】
外部記憶装置３は、オペレーティングシステム（以降、「ＯＳ」）、各デバイスのドライバ、各種アプリケーションプログラム、音楽データや画像データなどのデータファイル
等を保持する。外部記憶装置３は、例えば、フラッシュメモリ等の不揮発性メモリであり、ＮＯＲ型、ＮＡＮＤ型のメモリで実現される。
【００１７】
主記憶装置４は、外部記憶装置３からロードされたプログラムのコードやプログラムによって使用されるデータ（音楽データ、画像データなど）、起動中のプログラムの演算結果のデータ等を保持する。主記憶装置４は、例えば、ＳＤＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の揮発性メモリである。
【００１８】
主記憶装置４の情報を記憶する記憶領域は、起動されているプロセス及びタスクによって使用される使用領域と、それ以外の未使用領域とに分類される。
【００１９】
第１実施形態において、使用領域は、さらに、常駐タスク領域，処理領域，及びコピー領域に分類される。
【００２０】
常駐タスク領域には、常駐タスクに関連する、外部記憶装置３から読み出されるデータを格納する領域が分類される。常駐タスクは、携帯端末１が使用可能な状態になるために最低限必要となるプロセスおよびタスクであって、例えば、ＯＳ，デバイスドライバなどがある。また、常駐タスクは、携帯端末１の起動時（ＯＳ起動時）に起動されるように設定されたアプリケーションプログラムを含んでもよい。常駐タスク領域には、外部記憶装置３からコピーされた常駐タスクの実行コード，常駐タスクの実行中に外部記憶装置３から読み出されるデータ等を保持する領域が含まれる。
【００２１】
処理領域には、起動されているタスク（常駐タスクを含む）によって処理中のデータを格納する領域が分類される。処理領域には、例えば、編集中の電子メールの本文，編集中の電話張への登録内容など、外部記憶装置３に保存される前のタスクの処理中のデータを保持する領域が含まれる。また、タスクの実行中に外部記憶装置３からコピーされるデータ（音楽データ，画像データ，アドレス帳など）を保持する領域でも、ユーザからのボタン操作などによって編集され、外部記憶装置３に保持されるコピー元のデータから変更される場合には、該当領域は処理領域に含まれる。すなわち、処理領域に分類される領域は、主記憶装置４の電源が切断されるなどして一旦データが消失してしまうと、復元することができないデータを保持する領域である。
【００２２】
コピー領域は、常駐タスク以外のタスクに関する、外部記憶装置３にコピーがあるデータを格納する領域が分類される。コピー領域には、常駐タスク以外のタスクの実行コード、タスク実行中に外部記憶装置３から読み出されるデータ（音楽データ，画像データ，アドレス帳など）などを保持する領域が含まれる。また、処理領域に含まれる領域であっても、ユーザのボタン操作などによってその領域に記憶されている編集中のデータが外部記憶装置３に保存された場合には、そのデータのコピーが外部記憶装置に記憶されるため、その領域はコピー領域に分類される。その後、ユーザのボタン操作によってデータに変更が加えられると、外部記憶装置３に変更後のデータが保存されるまでは、変更後のデータが記憶されている領域は、処理領域に分類される。
【００２３】
使用領域に分類される領域に保持されるデータは、「使用データ」とも称される。すなわち、使用データは、起動されているタスクやプロセスに関するデータである。「或るタスクの使用データ」と用いられる場合には、「或るタスクの使用データ」はそのタスクに関するデータを指し、そのタスクの実行コード，処理中のデータ等を含む。
【００２４】
未使用領域は、データが保持されていない空の領域と、既に解放された実行コードやデータが残っている領域とを含む。
【００２５】
主記憶装置４の記憶領域は、所定のブロックごとに使用され、ブロックが全部使用されて埋まると、解放されたブロックの領域から順に次の新たなデータのために取得されていく。したがって、主記憶装置４では使用領域及び未使用領域が断片的に存在する。
【００２６】
図２は、主記憶装置４の記憶領域の使用例を示す図である。図２に示される例において、主記憶装置４の記憶領域は、ブロックＡ〜ブロックＦに区分けされた状態で使用される。使用領域は、ブロックＡ，ブロックＣ，およびブロックＥである。そのうち、常駐タスク領域はブロックＡである。処理領域はブロックＥである。コピー領域はブロックＣである。未使用領域は、ブロックＢ，ブロックＤ，およびブロックＦである。図２に示される例のように、主記憶装置４内の記憶領域は、使用領域と未使用領域とが断片化された状態で断片的存在する。
【００２７】
図２に示される例では、主記憶装置４の電源領域は、２等分された領域のブロックである。すなわち、主記憶装置４は、電源領域１と電源領域２とを有する。
【００２８】
入力装置５は、例えば、携帯端末１に備えられている操作ボタンである。出力装置６は、例えば、携帯端末１に備えられているディスプレイである。また、入力装置５は、マイクロフォン等の音声入力装置を含む。出力装置６は、スピーカ等の音声出力装置を含む。
【００２９】
プロセッサ２は、例えば、ＣＰＵ（Ｃｏｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）等で実現される。プロセッサ２は、外部記憶装置３からプログラムを主記憶装置４にロード（コピー）し、プログラムを実行することによって、オペレーティングシステム部２１及びデバイスドライバ部２２として動作する。
【００３０】
オペレーティングシステム部２１は、プロセッサ２がＯＳを実行することによって実現される。オペレーティングシステム部２１は、タスク制御部２１１と、デマンドページング制御部２１２と、メモリ管理部２１３と、ファイルシステム部２１４と、省電力制御部２１５とを含む。
【００３１】
タスク制御部２１１は、デマンドページング制御部２１２およびメモリ管理部２１３を介して、主記憶装置４にアクセスし、タスクの実行コードを読み出す。タスク制御部２１１は、主記憶装置４にコピーされた実行コードを順次読み出し、実行してタスクを制御する。タスク制御部２１１は、タスクの起動に際して、起動されるタスクの実行コードを格納するための主記憶装置４の領域の取得要求をデマンドページング制御部２１２を介してメモリ管理部２１３に出力する。タスク制御部２１１は、主記憶装置４の領域を取得すると、起動されるタスクの実行コードの取得要求をファイルシステム部２１４に出力する。タスク制御部２１１は、起動されるタスクの実行コードをファイルシステム部２１４から取得すると、デマンドページング制御部２１２を介して、起動されるタスクの実行コードの主記憶装置４の取得された領域へのコピーを要求する。タスクが起動されている間は、タスクとオペレーティングシステム部２１内の各処理部へのアクセスは、タスク制御部２１１によって中継される。タスク制御部２１１は、タスクの終了に際して、タスクの実行コードを保持する主記憶装置４の領域の解放要求を、デマンドページング制御部２１２を介して、メモリ管理部２１３に出力する。
【００３２】
デマンドページング制御部２１２は、各タスクのデマンドページングの制御を行う。デマンドページングは、或るプログラムの起動時に実行コード全てを外部記憶装置３から主記憶装置４にコピーせずに、実行コードの一部分のみを必要な時に外部記憶装置３から主記憶装置４にコピーする方式である。デマンドページング制御部２１２は、タスク制御部
２１１が主記憶装置４にアクセスする際に、タスク制御部２１１とメモリ管理部２１３との間に介在する。デマンドページング制御部２１２は、タスク制御部２１１からの実行コードの読み出しの要求に対して、メモリ管理部２１３から主記憶装置４内に要求された実行コードが保持されていない旨の応答がある場合に、デマンドページングを実行する。この場合、デマンドページング制御部２１２は、タスク起動時のタスク管理部２１１の処理と同様に、メモリ管理部２１３にメモリ取得要求を出力し、実行コードを格納する領域を取得する。デマンドページング制御部２１２は、主記憶装置４の領域を取得すると、実行コードの取得要求をファイルシステム２１４に出力し、実行コードを取得する。デマンドページング制御部２１２は、取得した実行コードをメモリ管理部２１３を介して取得された主記憶装置４の領域にコピーする。デマンドページング制御部２１２は、タスク制御部２１１から読み出しを要求された実行コードをメモリ管理部２１３から受け取り、タスク制御部２１１に渡す。
【００３３】
ファイルシステム部２１４は、外部記憶装置３に保持されるファイルの管理、及び、外部記憶装置３に保持されるファイルへのアクセスの制御などを行う。ファイルシステム部２１４は、外部記憶装置３に保持されるファイルの、ファイル名、ファイルが格納される位置を示す外部記憶装置格納領域情報、アクセス権などを含むファイル情報を管理する。ファイルシステム部２１４は、タスク制御部２１１，デマンドページング制御部２１２，及びタスク制御部２１１を介して各タスクから外部記憶装置３に保持されるファイルの情報が入力されると、外部記憶装置用ドライバ２２１を通じて該当するファイルを読み出す。ファイルシステム部２１４は、外部記憶装置用ドライバ２２１を通じて読み出されたファイルをファイルの情報の送信元に出力する。
【００３４】
省電力制御部２１５は、各タスク及びＯＳの状態を監視し、省電力状態の移行への判断と制御とを行う。省電力制御部２１５は、例えば、所定時間、操作ボタンのキー入力，呼の着信，電子メールの受信等がないなどの省電力状態へ移行するための条件が満たされた場合、携帯端末１を省電力状態に移行する。省電力制御部２１５は、携帯端末１に搭載されている各デバイスを省電力状態に移行させるために、デバイスドライバ部２２に、省電力移行要求を送信する。省電力制御部２１５は、省電力状態に移行する際に、メモリ管理部２１３にデフラグ処理要求を送信し、主記憶装置４内の記憶領域のデフラグ処理を要求する。
【００３５】
第１実施形態において、省電力状態とは、作業状態を主記憶装置４に保存した上で、外部記憶装置３，入力装置５，出力装置６など携帯端末１本体の電力消費を最小限にまで抑えることである。
【００３６】
メモリ管理部２１３は、主記憶装置４の記憶領域の管理，データの読み出し，データの書き込みを行う。メモリ管理部２１３は、主記憶装置４の記憶領域を物理アドレスと論理アドレスを用いて管理する。物理アドレスは主記憶装置４の記憶領域の実際のアドレスである。論理アドレスは、タスク制御部２１１及び各タスクが主記憶装置４に格納されたデータを扱うために認識している主記憶装置４の記憶領域のアドレスである。
【００３７】
メモリ管理部２１３は、タスク制御部２１１及びタスク制御部２１１を介した各タスクＡ〜Ｎの主記憶装置４へのアクセスに、デマンドページング制御部２１２とともに、介在する。
【００３８】
メモリ管理部２１３は、デマンドページング制御部２１２を介してタスク制御部２１１からデータの読み出し要求を受けると、アクセスされた論理アドレスを物理アドレスに変換する。メモリ管理部２１３は、変換された物理アドレスの領域からデータを読み出し、デマンドページング制御部２１２を介してタスク制御部２１１に読み出されたデータを送
信する。アクセスされた論理アドレスに物理アドレスが対応付けられていない場合には、主記憶装置４に要求されたデータが保持されていないので、メモリ管理部２１３は、データが保持されていない旨の通知を出力する。この通知をタスク制御部２１１へ中継するデマンドページング制御部２１２が受け取ると、デマンドページング制御部２１２はデータを外部記憶装置３から読み出すためにデマンドページングを実行する。
【００３９】
メモリ管理部２１３は、デマンドページング制御部２１３を介して、タスク制御部２１１から主記憶装置４へのデータの書き込み要求を受けると、アクセスされた論理アドレスを物理アドレスに変換する。メモリ管理部２１３は、変換された物理アドレスの領域にデータを書き込み、書き込み完了の通知をデマンドページング制御部２１２を介してタスク制御部２１１に出力する。
【００４０】
メモリ管理部２１３は、常駐タスク以外のタスクに関する主記憶装置４の使用領域，すなわち、処理領域とコピー領域とをメモリ管理テーブルで管理する。
【００４１】
図３は、メモリ管理テーブルの例を示す図である。メモリ管理部２１３は、タスク制御部２１１および各タスクから主記憶装置４の領域の取得要求又は解放要求がある場合に、メモリ管理テーブルを更新する。メモリ管理テーブルには、論理アドレス，物理アドレス，コピー領域フラグ，外部記憶装置格納領域情報がそれぞれ対応付けられたエントリが保持される。
【００４２】
コピー領域フラグは、該当する主記憶装置４の領域が外部記憶装置３にコピーがあるデータを保持する領域であるか否かを示すフラグである。メモリ管理テーブルには、処理領域とコピー領域とのいずれかの領域に分類される領域のエントリが格納されるため、コピー領域フラグは、領域が処理領域であるか、又は、コピー領域であるかを示す情報である。
【００４３】
コピー領域フラグが“１”の場合には、該当する主記憶装置４の領域が外部記憶装置３にコピーがあるデータを保持する領域、すなわち、コピー領域であることが示される。コピー領域フラグが“０”である場合には、該当する主記憶装置４の領域が外部記憶装置３にコピーがあるデータを格納する領域ではない、すなわち、処理領域であることが示される。
【００４４】
外部記憶装置格納領域情報は、該当するエントリの記憶領域に格納されるデータが外部記憶装置３にコピーがあるデータである場合に、そのデータのコピーの外部記憶装置３内の位置を示す情報である。外部記憶装置格納領域情報は、外部記憶装置３の種類によって異なった形式のデータとなる。例えば、外部記憶装置３がＮＯＲ型のメモリである場合には、外部記憶装置格納領域情報は物理アドレスである。例えば、外部記憶装置３がＮＡＮＤ型のメモリである場合には、外部記憶装置格納情報は物理セクタ番号である。
【００４５】
メモリ管理部２１３は、主記憶装置４の記憶領域が取得される場合に、論理アドレス，物理アドレス，コピー領域フラグ，外部記憶装置格納領域情報を対応付けたエントリをメモリ管理テーブルに追加する。また、取得されている領域に対してメモリ解放要求を受信する場合には、メモリ管理部２１３は、メモリ管理テーブルから該当するエントリを削除する。メモリ管理テーブルの更新処理の詳細は、後述される。メモリ管理部２１３は、主記憶装置４のデフラグや、タスクが処理中のデータが外部記憶装置３にコピーされるなど、エントリに変更があると、メモリ管理テーブルを更新する。
【００４６】
メモリ管理部２１３は、領域取得／解放部２１３ａとデフラグ制御部２１３ｂとを含む。領域取得／解放部２１３ａは、メモリ取得要求をタスク制御部２１１，デマンドページ
ング制御部２１２，およびタスク制御部２１１を介した各タスクＡ〜Ｎから入力されると、主記憶装置４内の領域の取得を行う。領域取得／解放部２１３ａは、主記憶装置４の領域の取得が終了すると、タスク制御部２１１に領域の取得の完了を通知する応答を出力する。
【００４７】
デフラグ制御部２１３ｂは、携帯端末１が省電力状態に移行する際に、省電力制御部２１５からデフラグ処理要求が入力されると、主記憶装置４のデフラグを実行する。デフラグ制御部２１３ｂは、主記憶装置４の領域を、使用領域である領域、及び、未使用領域である領域をそれぞれまとめるようにして領域の再配置を行う。デフラグ制御部２１３ｂは、先頭から使用領域を順に連続して配置する。デフラグ制御部２１３ｂは、使用領域をさらに、常駐タスク領域、処理領域、コピー領域の順で配置する。デフラグ制御部２１３ｂは、例えば、メモリ管理テーブル内のエントリの有無、コピー領域フラグ等を参照することによって、常駐タスク領域，処理領域，コピー領域の順番での使用領域の配置を行う。デフラグ制御部２１３ｂは、主記憶装置４のデフラグ処理が完了すると、省電力制御部２１５にデフラグ処理の完了の応答を出力する。
【００４８】
図４は、主記憶装置４のデフラグ処理の例について説明する図である。図４に示される例は、図２に示される主記憶装置４の記憶領域がデフラグ処理で再配置された後の状態を示す。
【００４９】
デフラグ制御部２１３ｂは、先頭から順に使用領域であるブロックを連続して配置し、使用領域のブロックを配置し終わると未使用領域であるブロックを順に配置して、デフラグ処理を行う。デフラグ制御部２１３ｂは、さらに、使用領域を、常駐タスク領域、処理領域、コピー領域の順に配置する。
【００５０】
図４に示される例では、使用領域であるブロックＡ，ブロックＥ，ブロックＣの合計がわずかに電源領域１を超えて電源領域２に差し掛かる。言い換えると、未使用領域であるブロックＢ，ブロックＤ，ブロックＦの合計が電源領域２にわずかに不足している。したがって、図４に示される例では、省電力状態に移行する場合でも、未使用領域がわずかに不足するために、主記憶装置４の電源領域２の電源を切断することができず、主記憶装置４全体の電源が入ったままの状態となる。
【００５１】
主記憶装置４のデフラグ処理が行われると、主記憶装置４の記憶領域内のブロックの配置変更により各領域の物理アドレスが変わるため、メモリ管理部２１３は、メモリ管理テーブルのエントリの物理アドレスを更新する。なお、論理アドレスはデフラグ処理では変更されないため、デフラグ処理によってタスク制御部２１１および各タスクの処理に影響が及ぶことはない。
【００５２】
デバイスドライバ部２２は、プロセッサ２がデバイスドライバを実行することによって実現される。デバイスドライバ部２２は、携帯端末１に搭載される，外部記憶装置３，入力装置５，出力装置６などの各デバイスとオペレーティングシステム部２１との間の相互アクセスを制御する。デバイスドライバ２２は、外部記憶装置用ドライバ２２１と省電力状態処理部２２２とを含む。外部記憶装置用ドライバ２２１は、オペレーティングシステム部２１の外部記憶装置３へのアクセスの制御を行う。
【００５３】
省電力状態処理部２２２は、オペレーティングシステム部２１の省電力制御部２１５から省電力移行の要求を受けたときに、携帯端末１に搭載されているデバイスの省電力状態への移行処理を行う。
【００５４】
省電力状態処理部２２２は、主記憶装置４の省電力状態の移行処理として、デフラグ処
理後の、主記憶装置４内の未使用領域のみを含む電源領域の電源を切断する。わずかに使用領域を含む電源領域が存在する場合には、省電力状態処理部２２２は、メモリ管理テーブルを参照し、コピー領域フラグが“１”である領域を、当該電源領域中に使用領域が含まれなくなるまで解放し、当該電源領域の電源を切断する。コピー領域フラグが“１”である領域とは、すなわち、コピー領域に分類される領域である。電源が切断された電源領域に記憶されていたデータ、すなわち、未使用領域に記憶されていたデータは消失される。したがって、メモリ管理テーブル内のコピー領域フラグは、主記憶装置４のデータを記憶する各領域について、省電力状態移行時におけるデータの消失の許可または不許可を示す情報である。
【００５５】
省電力状態処理部２２２は、領域を解放する際に、例えば、解放される領域のメモリ管理テーブルのエントリを主記憶装置４内に保持するなどして、解放される領域の情報を記録する。省電力状態から復帰する際に、主記憶装置４内を省電力状態になる前の状態に戻す、すなわち、解放された領域内のデータを再度外部記憶装置３から読み出すためである。なお、メモリ管理テーブルが記憶される領域、および、省電力状態処理部２２２が解放される領域の情報を記録する領域は、処理領域に分類される領域であるため、省電力状態でも主記憶装置４内に保持される。
【００５６】
主記憶装置４の記憶領域が図４に示される例の状態の場合には、ブロックＣがわずかに電源領域２に差し掛かっているので、省電力状態処理部２２２は、コピー領域であるブロックＣを解放する。図４に示される例では、ブロックＣが解放されることによって、未使用領域のブロックの合計が電源領域２より大きくなるので、電源領域２の電源が切断可能になる。省電力状態処理部２２２は、電源領域２の電源を切断して主記憶装置４の省電力状態の移行処理を終える。主記憶装置４は、揮発性のメモリであるため、電源が切断されることによって、電源領域２に記憶されていたデータは消失される。
【００５７】
省電力状態処理部２２２は、省電力状態時に、例えば、操作ボタンのキー入力，呼の着信，電子メールの受信等の復帰要因となる信号の入力を検知すると、各デバイスの復帰処理を実行する。省電力状態処理部２２２は、主記憶装置４の省電力状態からの復帰処理として、主記憶装置４を省電力状態移行処理の前の状態に復元する。具体的には、省電力状態処理部２２２は、省電力状態移行時に電源が切断された電源領域がある場合には、その領域の電源を投入する。省電力状態移行時に解放されたコピー領域がある場合には、省電力状態処理部２２２は、領域を解放した際に記録されたメモリ管理テーブルのエントリ等の情報を参照して、解放されたコピー領域に解放されたデータと同じデータを再度外部記憶装置３から読み出してコピーする。
【００５８】
図５は、図４に示される例における主記憶装置４の解放されたコピー領域の復帰処理を説明する図である。省電力状態処理部２２２は、図４に示される例において、省電力状態移行時に電源が切断された電源領域２の電源を投入する。次に、省電力状態処理部２２２は、図４に示される例において、省電力状態移行時にコピー領域であるブロックＣが解放されたので、ブロックＣに格納されていたデータを再度外部記憶装置３からコピーする。このとき、省電力状態処理部２２２は、メモリ管理テーブルを参照し、省電力状態移行前と同じ外部記憶装置３の格納領域から同じデータを読み出し、省電力状態移行前と同じ主記憶装置４の領域にコピーする。
【００５９】
主記憶装置４は、態様における第１の記憶部に相当する。外部記憶装置３は、態様における第２の記憶部に相当する。デフラグ制御部２１３ｂは、態様における再配置部に相当する。省電力状態制御部２２２は、態様における処理部に相当する。
【００６０】
＜＜メモリ管理テーブルのエントリ追加処理＞＞
図６は、携帯端末１の起動処理の終了後、新たなタスクＸの起動時に、タスクＸの実行コードが外部記憶装置３から主記憶装置４へコピーされる場合のメモリ管理テーブルのエントリ追加処理のフローの例を示す図である。なお、タスク制御部２１１とメモリ管理部２１３とのアクセスにはデマンドページング制御部２１２が介在するが、図６では、簡略化のため、デマンドページング制御部２１２は省略される。
【００６１】
入力装置５からのボタン操作などによるタスクＸの起動指示の入力を受けると、タスク制御部２１１は、タスクＸの実行コードを格納するための主記憶装置４の領域を取得する処理を実行する。タスク制御部２１１は、メモリ管理部２１３に主記憶装置４の領域の取得を要求するメモリ取得要求を送信する（ＯＰ１）。
【００６２】
メモリ管理部２１３は、タスク制御部２１１からデマンドページング制御部２１２を介してメモリ取得要求を受信すると、タスクＸの実行コードを格納するための主記憶装置４の領域を取得する（確保する）（ＯＰ２）。メモリ管理部２１３は、デマンドページング制御部２１２を介してタスク制御部２１１に、タスクＸの実行コードが格納される領域を取得したことを通知するメモリ取得完了を送信する。
【００６３】
メモリ管理部２１３は、メモリ管理テーブルに、タスクＸの実行コードを格納するために取得されたメモリの論理アドレスと物理アドレスとを書き込む（ＯＰ３）。
【００６４】
タスク制御部２１１は、デマンドページング制御部２１２を介してメモリ管理部２１３からメモリ取得完了を受信する（ＯＰ４）。次に、タスク制御部２１１は、タスクＸの実行コードを外部記憶装置３から取得するために、タスクＸの実行コードが格納されているファイル名をファイルシステム部２１４に送信する（ＯＰ５）。
【００６５】
ファイルシステム部２１４は、タスク制御部２１１からタスクＸの実行コードが格納されているファイル名を受信すると、受信したファイル名に対応するファイル情報から、外部記憶装置格納領域情報を取り出す（ＯＰ６）。ファイルシステム部２１４は、外部記憶装置用ドライバ２２１に、取り出された外部記憶装置格納領域情報を通知して、タスクＸの実行コードが格納されているファイルの外部記憶装置３からの読み出しを要求する（ＯＰ７）。
【００６６】
外部記憶装置用ドライバ２２１は、ファイルシステム部２１４から外部記憶装置格納情報を受信すると、外部記憶装置格納情報で指定される外部記憶装置３の格納領域からタスクＸの実行コードを読み出す（ＯＰ８）。外部記憶装置用ドライバ２２１は、外部記憶装置３から読み出されたタスクＸの実行コードと外部記憶装置格納領域情報とをファイルシステム部２１４に送信する。
【００６７】
ファイルシステム部２１４は、読み出されたタスクＸの実行コードと外部記憶装置格納領域情報とを外部記憶装置用ドライバ２２１から受信すると、それらをタスク制御部２１１に送信し、実行コードの読み出しを完了する（ＯＰ９）。
【００６８】
タスク制御部２１１は、読み出されたタスクＸの実行コードと外部記憶装置格納領域情報とをファイルシステム部２１４から受信すると、読み出されたタスクＸの実行コードの一部を主記憶装置４にコピーする（ＯＰ１０）。ＯＰ１０における処理の内容は、以下の通りである。タスク制御部２１１は、デマンドページング制御部２１２を介して、メモリ管理部２１３に取得された領域への実行コードの書き込み要求を送信する。メモリ管理部２１３は、主記憶装置４内の取得された領域に実行コードを書き込む。メモリ管理部２１３は、主記憶装置４への書き込みが完了すると、書き込み完了の通知を、デマンドページング制御部２１２を介して、タスク制御部２１１に出力する。
【００６９】
タスク制御部２１１は、外部記憶装置３から主記憶装置４への単純なコピー作業が行われたので、タスクＸの実行コードの一部を格納する領域のエントリのコピー領域フラグを“１”に設定するようにメモリ管理部２１３に要求する（ＯＰ１１）。このとき、タスク制御部２１１は、外部記憶装置格納領域情報も併せてメモリ管理部２１３に送信する。タスクＸの実行コードは外部記憶装置３に格納されているため、省電力状態移行時に主記憶装置４からタスクＸの実行コードが削除されても、省電力状態から復帰時に再現可能であるため、メモリ管理テーブル内のエントリのコピー領域フラグが“１”に設定される。
【００７０】
メモリ管理部２１３は、コピー領域フラグの設定要求と外部記憶装置格納領域情報とを受信すると、ＯＰ３において書き込んだ論理アドレスと物理アドレスとを含むエントリに、コピー領域フラグと外部記憶装置格納領域情報とを書き込む（ＯＰ１２）。
【００７１】
その後、タスク制御部２１１は、主記憶装置４にコピーされたタスクＸの実行コードを読み出して、タスクＸを起動する。タスク制御部２１１がタスクＸの実行コードを読み出すために主記憶装置４にアクセスした際に、タスクＸの実行コードが主記憶装置４内にない場合には、メモリ管理部２１３は主記憶装置４内に要求された実行コードが保持されていない旨の応答を出力する。タスク制御部２１１へと中継するデマンドページング制御部２１２がこの応答を受け取ると、デマンドページング制御部２１２はデマンドページングを実行する。
【００７２】
デマンドページング制御部２１２は、タスクＸの実行コードを格納するための主記憶装置４の領域取得処理を実行する。デマンドページング制御部２１２は、図６に示される例におけるタスク制御部２１１の処理と同様の処理を行って、タスクＸの実行コードを格納する主記憶装置４の領域を取得し、メモリ管理テーブルにエントリを追加する。
【００７３】
以上のようにして、新たなタスクＸの起動時、および、デマンドページング実行時には、メモリ管理テーブルにタスクＸの実行コードの一部を格納するための主記憶装置４の領域のエントリ追加処理が行われる。また、タスクＸの終了時およびデマンドページング終了時には、タスク制御部２１１からメモリ管理部２１３にタスクＸの実行コードを格納する主記憶装置４の領域の解放要求が送信される。メモリ管理部２１３は、メモリ管理テーブル中のタスクＸの実行コードを格納する領域のエントリを削除する。
【００７４】
図７は、タスクＸの起動中に、外部記憶装置３に保持されるデータが読み出され主記憶装置４へコピーされる場合のメモリ管理テーブルのエントリ追加処理のフローの例を示す図である。例えば、タスクＸは音楽再生プログラムであって、タスクＸが外部記憶装置３に保持される音楽データを読み出す場合のメモリ管理テーブルのエントリ追加処理である。以降、タスクＸは音楽再生プログラムであり、ユーザからのボタン操作などによって再生を指示された音楽データを外部記憶装置３から読み出す場合について説明される。なお、タスク制御部２１１とメモリ管理部２１３とのアクセスには、デマンド制御部２１２が介在するが、図７においては、簡略化のため、省略される。
【００７５】
入力装置５から音楽データの再生指示のボタン操作などの入力を受けると、タスクＸは、音楽データを格納するための主記憶装置４の領域を取得する処理を実行する。タスクＸは、メモリ管理部２１３に主記憶装置４の領域の取得を要求するメモリ取得要求を、タスク制御部２１１及びデマンドページング制御部２１２を介して、送信する（ＯＰ２１）。
【００７６】
メモリ管理部２１３は、タスク制御部２１１及びデマンドページング制御部２１２を介して、タスクＸからメモリ取得要求を受信すると、音楽データを格納するための主記憶装置４の領域を取得する（ＯＰ２２）。メモリ管理部２１３は、タスク制御部２１１及びデ
マンドページング制御部２１２を介して、タスクＸに、音楽データを格納するための領域を取得したことを通知するためのメモリ取得完了を送信する。
【００７７】
メモリ管理部２１３は、メモリ管理テーブルに音楽データを格納するために取得されたメモリの論理アドレスと物理アドレスとを書き込む（ＯＰ２３）。
【００７８】
タスクＸは、タスク制御部２１１及びデマンドページング制御部２１２を介して、メモリ管理部２１３からメモリ取得完了を受信する（ＯＰ２４）。次に、タスクＸは、再生指示された音楽データを外部記憶装置３から取得するために、タスク制御部２１１を介して、ファイルシステム部２１４に音楽データが格納されているファイル名を送信する（ＯＰ２５）。
【００７９】
ファイルシステム部２１４は、再生指示された音楽データが格納されているファイル名をタスク制御部２１１を介してタスクＸから受信すると、受信したファイル名に対応するファイル情報から、外部記憶装置格納領域情報を取り出す（ＯＰ２６）。ファイルシステム部２１４は、外部記憶装置用ドライバ２２１に、取り出された外部記憶装置格納領域情報を通知して、再生要求された音楽データが格納されているファイルの外部記憶装置３からの読み出しを要求する（ＯＰ２７）。
【００８０】
外部記憶装置用ドライバ２２１は、ファイルシステム部２１４から外部記憶装置格納情報を受信すると、外部記憶装置格納情報で指定される外部記憶装置３の領域から音楽データを読み出す（ＯＰ２８）。外部記憶装置用ドライバ２２１は、外部記憶装置３から読み出された音楽データと外部記憶装置格納領域情報とをファイルシステム部２１４に送信する。
【００８１】
ファイルシステム部２１４は、読み出された音楽データと外部記憶装置格納領域情報とを外部記憶装置用ドライバ２２１から受信すると、それらをタスク制御部２１１を介してタスクＸに送信し、音楽データの読み出しを完了する（ＯＰ２９）。
【００８２】
タスク制御部２１１は、タスクＸに先立って読み出された音楽データと外部記憶装置格納領域情報とをファイルシステム部２１４から受信する。タスク制御部２１１は、読み出された音楽データを主記憶装置４にコピーする（ＯＰ３０）。ＯＰ３０の処理は、図６におけるＯＰ１０の処理と同様である。
【００８３】
タスク制御部２１１は、外部記憶装置３から主記憶装置４への単純なコピー作業を行ったので、音楽データを格納する主記憶装置４の領域のエントリのコピー領域フラグを“１”に設定するようメモリ管理部２１３に要求する（ＯＰ３１）。このとき、タスク制御部２１１は、音楽データの外部記憶装置格納領域情報も併せてメモリ管理部２１３に送信する。なお、主記憶装置４にコピーされた音楽データは、主記憶装置４から削除されても外部記憶装置３に元のファイルが存在する。従って、音楽データは、省電力状態移行時に主記憶装置４から削除されても、省電力状態から復帰時に外部記憶装置３から再度読み出されるため、音楽データを格納する領域のエントリのコピー領域フラグは“１”に設定される。ただし、音楽データが再生されるだけではなく、ファイル名を変更されるなどの編集処理が行われると、変更後の音楽データが外部記憶装置３に保存されるまでは、音楽データを格納する領域のコピー領域フラグは“０”に設定される。外部記憶装置３に保存される前の、変更が加えられた音楽データは、省電力状態移行時に主記憶装置４から削除されてしまうと、省電力状態からの復帰時に再現することができなくなってしまうためである。このようなコピー領域フラグの変更が生じると、タスクＸからのメモリ管理部２１３へのアクセスを中継するタスク制御部２１１がメモリ管理部２１３にコピー領域フラグに設定要求を送信する。
【００８４】
メモリ管理部２１３は、コピー領域フラグの設定要求と外部記憶装置格納領域情報とを受信すると、ＯＰ２３において書き込んだ論理アドレスと物理アドレスを含むエントリに、コピー領域フラグと外部記憶装置格納領域情報とを書き込む（ＯＰ３２）。
【００８５】
その後、タスクＸは、タスク制御部２１１を介して音楽データを順次読み出して再生する。
【００８６】
以上のようにして、タスクＸが外部記憶装置３からデータを読み出す場合には、メモリ管理テーブルのエントリ追加処理が行われる。音楽データの再生が終わるなど、外部記憶装置３から読み出されたデータの使用が終了すると、タスクＸは、タスク制御部２１１を介してメモリ管理部２１３に音楽データの格納領域の解放要求を送信する。その後、メモリ管理部２１３によって、メモリ管理テーブルから音楽データの格納領域のエントリが削除される。
【００８７】
タスクＸの起動中に、タスクＸが主記憶装置４の記憶領域内に演算結果等を一時的に格納するための作業領域（例えば、バッファなど）を取得する場合には、図７におけるＯＰ２５からＯＰ３０のような外部記憶装置３からデータを読み出す処理は発生しない。この場合には、図７におけるＯＰ２１からＯＰ２３，ＯＰ３１，およびＯＰ３２のような、主記憶装置４の領域取得の処理がタスクＸ，タスク制御部２１１，メモリ管理２１３との間でなされ、メモリ管理テーブルに取得された領域のエントリが追加される。一時的な作業領域内のデータは、外部記憶装置３にコピーがあるデータではなく、主記憶装置４から一旦削除されてしまうと復元することができないため、一時的な作業領域のメモリ管理テーブルのエントリのコピー領域フラグは、“０”と設定される。
【００８８】
＜＜携帯端末の省電力状態移行のフロー＞＞
図８Ａは、携帯端末１が省電力状態に移行する際の処理のフローの例を示す図である。図８Ｂは、携帯端末１が省電力状態から復帰する際の処理のフローの例を示す図である。
【００８９】
オペレーティングシステム部２１の省電力制御部２１５は、各タスクＡ〜Ｎ及びＯＳの状態を監視し、省電力状態へ移行する条件が揃うと省電力状態への移行を開始する（ＯＰ４１）。省電力制御部２１５は、メモリ管理部２１３に主記憶装置４のデフラグ処理要求を送信する（ＯＰ４２）。
【００９０】
メモリ管理部２１３が主記憶装置４のデフラグ処理要求を受信すると、メモリ管理部２１３のデフラグ制御部２１３ｂは主記憶装置４のデフラグ処理を実行する（ＯＰ４３）。このとき、デフラグ制御部２１３ｂは、例えば、メモリ管理テーブルを参照して、領域の先頭から使用領域，未使用領域の順に領域を配置する。使用領域内は、さらに、常駐タスク領域，処理領域，コピー領域の順に配置されるようにデフラグが行われる。デフラグ処理が完了すると、メモリ管理部２１３は省電力制御部２１５にデフラグ処理完了の通知を送信する。
【００９１】
省電力制御部２１５は、デフラグ処理の完了の通知を受信すると（ＯＰ４４）、次に、省電力状態への移行要求を省電力状態処理部２２２に送信する（ＯＰ４５）。以降、ＯＳより上位のプログラムは省電力状態に移行し、省電力状態から復帰するまで動作を停止する。
【００９２】
省電力状態処理部２２２は、省電力制御部２１５から省電力状態への移行要求を受信すると、使用領域と未使用領域とを含む電源領域が存在するか否かを判定する（ＯＰ４６）。使用領域と未使用領域とを含む電源領域が存在しない場合には（ＯＰ４６：Ｎｏ）、省
電力状態処理部２２２は、処理をＯＰ４９に進める。
【００９３】
使用領域と未使用領域とを含む電源領域が存在する場合には（ＯＰ４６：Ｙｅｓ）、その電源領域の電源を切断できない。省電力状態処理部２２２は、使用領域と未使用領域とを含む電源領域を電源切断可能にするために、コピー領域の解放が必要か否かを判定する（ＯＰ４７）。使用領域と未使用領域とを含む電源領域内の使用領域がわずかである場合には、コピー領域の一部が解放され、その電源領域の電源が切断されることで主記憶装置の消費電力が抑えられるので、省電力状態処理部２２２は、コピー領域の一部の解放が必要と判断する。使用領域と未使用領域とを含む電源領域内の使用領域が大部分を占める場合には、省電力状態からの復帰後の、解放されたコピー領域のデータの再読み出しの処理に電力が消費されるので、省電力状態処理部２２２は、コピー領域の一部の解放は不要と判断する。例えば、省電力状態処理部２２２は、電源領域に含まれる使用領域の閾値を用いて、使用領域と未使用領域とを含む電源領域内の使用領域が所定の閾値未満の場合には、省電力状態処理部２２２は、コピー領域の解放が必要であると判断する。例えば、使用領域と未使用領域とを含む電源領域内の使用領域が所定の閾値以上の場合には、省電力状態処理部２２２は、コピー領域の解放は不要と判断する。
【００９４】
コピー領域の解放が不要であると判定された場合には（ＯＰ４７：Ｎｏ）、省電力状態処理部２２２は、処理をＯＰ５０に進める。コピー領域の解放が必要であると判定された場合には（ＯＰ４７：Ｙｅｓ）、省電力状態処理部２２２は、メモリ管理テーブルを参照してコピー領域フラグが“１”である領域（すなわち、コピー領域）の中から少なくとも１つを解放する（ＯＰ４８）。省電力状態処理部２２２は、使用領域と未使用領域とを含む電源領域内が未使用領域のみになるまでコピー領域を解放する。このとき、省電力状態処理部２２２は、解放されたコピー領域に関する情報、例えば、メモリ管理テーブルのエントリなどを、主記憶装置４に記憶する。解放されたコピー領域が記憶される領域は処理領域に分類されるため、省電力状態に移行した後でも、主記憶装置４内に保持される。省電力状態処理部２２２は、未使用領域のみを含む電源領域の電源を切断する（ＯＰ４９）。電源が切断された電源領域に記憶されていたデータは消失される。
【００９５】
省電力状態処理部２２２は、主記憶装置４以外の携帯端末１に搭載されているデバイスの省電力状態移行処理を行う（ＯＰ５０）。主記憶装置４以外の携帯端末１に搭載されているデバイスの省電力状態移行処理が完了すると（ＯＰ５１）、携帯端末１が省電力状態に移行完了する。
【００９６】
その後、操作ボタンが押下される、呼が着信されるなどの省電力状態からの復帰要因の発生による入力信号が検知されると、省電力状態処理部２２２は、省電力状態からの復帰処理を開始する（ＯＰ６１）。
【００９７】
省電力状態処理部２２２は、電源が切断されている主記憶装置４の電源領域の電源を入れる（ＯＰ６２）。省電力状態処理部２２２は、省電力状態移行時に、解放されたコピー領域があるか否かを判定する（ＯＰ６３）。省電力状態移行時にコピー領域が解放されていない場合には（ＯＰ６３：Ｎｏ）、省電力状態処理部２２２は、処理をＯＰ６８に進める。
【００９８】
省電力状態移行時に解放されたコピー領域がある場合には（ＯＰ６３：Ｙｅｓ）、省電力状態処理部２２２は、解放されたコピー領域に保持されていたデータの復帰処理を行う。省電力状態処理部２２２は、メモリ管理テーブルを参照し、解放されたコピー領域の外部記憶装置格納領域情報を外部記憶装置用ドライバ２２１に通知して、データの読み出しを要求する（ＯＰ６４）。
【００９９】
外部記憶装置用ドライバ２２１は、省電力状態処理部２２２から外部記憶装置格納領域情報を受信すると、該当する領域に格納されるデータを読み出し、省電力状態処理部２２２に送信する（ＯＰ６５）。
【０１００】
省電力状態処理部２２２は、外部記憶装置用ドライバ２２１から受信するデータを、メモリ管理テーブルを参照して、省電力状態移行前と同じ主記憶装置４の領域にコピーする（ＯＰ６６）。コピーが完了すると、コピー領域の復帰処理が完了する（ＯＰ６７）。
【０１０１】
次に、省電力状態処理部２２２は、主記憶装置４以外のデバイスの省電力状態からの復帰処理を行う（ＯＰ６８）。すべてのデバイスの省電力状態からの復帰処理が完了すると、携帯端末１の省電力状態からの復帰処理が完了する（ＯＰ６９）。省電力状態処理部２２２は、復帰処理の完了を省電力制御部２１５に通知する。省電力制御部２１５は、省電力状態処理部２２２から復帰処理の完了の通知を受信すると、携帯端末１の省電力状態からの復帰処理を終了する（ＯＰ７０）。
【０１０２】
＜＜第１実施形態の作用効果＞＞
第１実施形態では、携帯端末１が省電力状態に移行する際に、主記憶装置４の使用領域と未使用領域を含む電源領域内の使用領域がわずかである場合に、主記憶装置４内の外部記憶装置３にコピーがあるデータを保持するコピー領域を解放する。これによって、省電力状態移行時に、従来は電源を切断することができなかった、主記憶装置４の使用領域をわずかに含む電源領域の電源を切断することができ、主記憶装置４の消費電力を低減することができる。主記憶装置４の消費電力が低減されることによって、携帯端末１の消費電力が低減され、携帯端末１のバッテリー持続時間を長くすることができる。
【０１０３】
解放された領域に含まれるデータは、外部記憶装置３にコピーがあり、バックアップがされているので、省電力状態から復帰する際に、主記憶装置４から消失されても、外部記憶装置３から再度読み出すことが可能である。携帯端末１は、省電力状態から復帰する際に、解放された領域のデータを外部記憶装置３から読み出し主記憶装置４に格納することで、省電力状態に移行する前の主記憶装置４の状態に復元可能である。
【０１０４】
＜＜変形例＞＞
第１実施形態では、省電力状態からオペレーティングシステム部２１が復帰する前に、外部記憶装置用ドライバ２２１が動作可能な状態となっていた。省電力状態からオぺレーティングシステム部２１が復帰する前に外部記憶装置用ドライバ２２１が動作不可能である場合には、省電力状態処理部２２２に、外部記憶装置格納領域情報からデータを読み出すだけの単純な外部記憶装置３への簡易アクセス機能を備えさせればよい。
【０１０５】
第１実施形態では、コピー領域として、常駐タスク以外のタスクに関係する、外部記憶装置３にコピーがあるデータを格納する領域が分類され、そのコピー領域が解放対象とされた。しかしながら、常駐タスク領域に分類された、ＯＳの実行コードやＯＳが外部記憶装置３から読み出したデータを保持する領域もコピー領域に分類してもよい。この場合、ＯＳの実行コードやＯＳが外部記憶装置３から読み出したデータを保持する領域についても、メモリ管理テーブルにコピー領域フラグ“１”でエントリされる。
【０１０６】
ＯＳの実行コードなどであっても、外部記憶装置３にコピーが記憶されており、外部記憶装置３から再度読み出すことで復元可能だからである。ただし、外部記憶装置３から再度読み出すことで復元可能なデータであっても、主記憶装置の電源を投入するタスク、および、省電力状態から復帰する際に外部記憶装置３からデータを読み出すタスクの実行コードを格納する領域は常駐タスク領域に分類される。例えば、第１実施形態においては、省電力状態処理部２２２と外部記憶装置用ドライバ２１１との実行コードを格納する領域
は、コピー領域には分類されず、常駐タスク領域に分類される。これは、省電力状態からの復帰処理に必要なデータを格納する領域であって、省電力状態に移行時に解放されてしまうと、省電力状態からの復帰処理が実行されなくなってしまうからである。
【０１０７】
第１実施形態では、主記憶装置の電源制御を携帯端末が実行する例が説明された。第１実施形態で説明された主記憶装置の電源制御は、携帯端末の他にも、汎用のコンピュータや、特定の処理専用のコンピュータなど、省電力時に主記憶装置の一部の電源を切断する機能を備える装置に適用可能である。
【０１０８】
＜その他＞
以上の実施形態に関し、更に以下の付記を開示する。
【０１０９】
（付記１）
部分的に電源の投入及び切断が可能である部分領域に区分けされており、電源の切断によって記憶されたデータが消失する第１の記憶部と、
電源が切断されても記憶されたデータを保持する第２の記憶部と、
起動されているタスクに関する使用データであって、前記第１の記憶部に記憶されている断片化された使用データを再配置する再配置部と、
前記再配置の結果、前記部分領域の一部に前記使用データが記憶されており、該部分領域の一部に記憶されている該使用データと同一のデータが前記第２の記憶部に記憶されている場合には、該部分領域の電源を切断する処理部と、
を備える情報処理装置。
【０１１０】
（付記２）
電源が切断された前記部分領域に電源が投入された場合には、電源の切断によって消失された前記部分領域の一部に記憶されていた使用データと同一のデータを、前記第２の記憶部から読み出して、前記第１の記憶部内の前記部分領域の一部に格納する読み出し部をさらに備える付記１に記載の情報処理装置。
【０１１１】
（付記３）
使用データの前記第１の記憶部からの消失を許可するか否かを管理する管理部をさらに備え、
前記処理部は、前記部分領域の一部に記憶される使用データが、消失を許可されている場合に、前記部分領域の電源を切断する
付記１又は２に記載の情報処理装置。
【０１１２】
（付記４）
前記管理部は、使用データが、前記第２の記憶部に同一のデータが記憶されるデータであって、かつ、前記読み出し部に関する使用データではない場合に、該使用データの前記第１の記憶部からの消失を許可する
付記３に記載の情報処理装置。
【０１１３】
（付記５）
前記処理部は、前記部分領域の電源を切断する場合に、前記部分領域の一部に含まれる使用データが記憶される前記第１の記憶部のアドレスと、該使用データと同一のデータが記憶される前記第２の記憶部のアドレスと、を保持し、
前記読み出し部は、前記部分領域の電源が投入された場合に、電源の切断によって消失された前記部分領域の一部に記憶されていた使用データと同一のデータを前記第２の記憶部のアドレスから読み出して、前記第１の記憶部のアドレスに格納する
付記１から４の何れか１項に記載の情報処理装置。
【０１１４】
（付記６）
前記処理部は、該部分領域の一部に記憶されている使用データが、前記第２の記憶部に同一のデータが記憶されているデータであって、かつ、前記読み出し部に関する使用データではない場合に、該部分領域電源を切断する
付記２に記載の情報処理装置。
【０１１５】
（付記７）
前記再配置部は、使用データのうち、前記第２の記憶部に同一データが記憶されているデータであって、かつ、前記読み出し部に関する使用データではない使用データが優先的に解放されるように再配置する
付記２から６の何れか１項に記載の情報処理装置。
【０１１６】
（付記８）
部分的に電源の投入及び切断が可能である部分領域に区分けされており、電源の切断によって記憶されたデータが消失する第１の記憶部と、
電源が切断されても記憶されたデータを保持する第２の記憶部と、を備えるコンピュータに、
起動されているタスクに関する使用データであって、前記第１の記憶部に記憶されている断片化された使用データを再配置するステップと、
前記再配置の結果、前記部分領域の一部に前記使用データが記憶されており、該部分領域の一部に記憶されている該使用データと同一のデータが前記第２の記憶部に記憶されている場合には、該部分領域の電源を切断するステップと、
を実行させるためのプログラム。
【０１１７】
（付記９）
部分的に電源の投入及び切断が可能である部分領域に区分けされており、電源の切断によって記憶されたデータが消失する第１の記憶部と、
電源が切断されても記憶されたデータを保持する第２の記憶部と、を備えるコンピュータが、
起動されているタスクに関する使用データであって、前記第１の記憶部に記憶されている断片化された使用データを再配置するステップと、
前記再配置の結果、前記部分領域の一部に前記使用データが記憶されており、該部分領域の一部に記憶されている該使用データと同一のデータが前記第２の記憶部に記憶されている場合には、該部分領域の電源を切断するステップと、
を実行するメモリの電源制御方法。
【符号の説明】
【０１１８】
１      携帯端末
２      プロセッサ
３      外部記憶装置
４      主記憶装置
５      入力装置
６      出力装置
７      アンテナ
８      バス
２１    オペレーティングシステム部
２２    デバイスドライバ部
２１１  タスク制御部
２１２  デマンドページング制御部
２１３  メモリ管理部
２１３ａ  領域取得／解放部
２１３ｂ  デフラグ制御部
２１４  ファイルシステム部
２１５  省電力制御部
２２１  外部記憶装置用ドライバ
２２２  省電力状態処理部
【図１】
0005458749.tif 000002
【図２】
0005458749.tif 000003
【図３】
0005458749.tif 000004
【図４】
0005458749.tif 000005
【図５】
0005458749.tif 000006
【図６】
0005458749.tif 000007
【図７】
0005458749.tif 000008
【図８Ａ】
0005458749.tif 000009
【図８Ｂ】
0005458749.tif 000010