(57)【要約】      （修正有）【課題】複数の管理情報を保持してデータの断片化解消処理を実行することが可能な情報処理装置、情報処理方法、およびコンピュータプログラムを提供する。【解決手段】情報処理装置は、使用ブロック又は未使用ブロックを示すブロック情報を生成するブロック情報生成部と、各ブロックと各ブロック情報とが一対一に対応するテーブル情報を記録する管理領域と、有効な第１の管理領域からテーブル情報を取得するテーブル情報取得部（１２２）と、テーブル情報を基にして、断片ページであるか判定する断片ページ判定部（１２４）と、断片ページのデータをメモリ上のバッファ領域に記録するデータ記録部と、テーブル情報更新部（１２８）と、第１の管理領域を無効にするとともに第２の管理領域を有効にする管理領域設定部（１３２）と、更新されたテーブル情報を第２の管理領域に記録するテーブル情報記録部とを備える。【選択図】図２
2008152676.tif 000002
【特許請求の範囲】
【請求項１】
データ領域に割り当てられたブロックにデータが存在する使用ブロック、又は、該ブロックにデータが存在しない未使用ブロックのいずれかを示すブロック情報を生成するブロック情報生成部と；
前記各ブロックと前記各ブロック情報とが一対一に対応するテーブル情報を記録する管理領域と；
有効な管理領域として設定された第１の前記管理領域から前記テーブル情報を取得するテーブル情報取得部と；
前記テーブル情報取得部により取得されたテーブル情報を基にして、複数の前記ブロックの集まりであるページが、断片化された断片ページであるか否かを判定する断片ページ判定部と；
前記断片ページに構成される複数の前記ブロックのうち前記使用ブロックに該当するブロックのデータをメモリ上のバッファ領域に記録するデータ記録部と；
少なくとも前記断片ページ判定部による判定結果を基にして、前記テーブル情報取得部が取得したテーブル情報を更新するテーブル情報更新部と；
前記有効な管理領域として設定された第１の管理領域を無効な管理領域として設定するとともに、無効な管理領域として設定された第２の管理領域を有効な管理領域として設定する管理領域設定部と；
前記テーブル情報更新部により更新されたテーブル情報を、前記有効な管理領域として設定された第２の管理領域に記録するテーブル情報記録部と；
を備えることを特徴とする、情報処理装置。
【請求項２】
前記管理領域設定部は、割り込みが発生した場合、該管理領域設定部により有効な管理領域として設定された前記第２の管理領域を無効に設定するとともに、無効な管理領域として設定された前記第１の管理領域を再び有効に設定することを特徴とする、請求項１に記載の情報処理装置。
【請求項３】
前記管理領域設定部は、前記第１の管理領域又は前記第２の管理領域のいずれかを交互に前記有効な管理領域として設定することを特徴とする、請求項１に記載の情報処理装置。
【請求項４】
前記テーブル情報更新部は、前記断片ページに構成されるブロックのうち前記使用ブロックに該当するブロックの前記ブロック情報を、前記未使用ブロックに設定することを特徴とする、請求項１に記載の情報処理装置。
【請求項５】
前記テーブル情報更新部は、前記ブロックから前記バッファ領域に記録されたデータ数に応じて、前記テーブル情報に構成されるブロック情報のうち前記未使用ブロックを示すブロック情報を前記使用ブロックに設定することを特徴とする、請求項１に記載の情報処理装置。
【請求項６】
前記未使用ブロックから使用ブロックに設定されたブロック情報の並びは、連続していることを特徴とする、請求項５に記載の情報処理装置。
【請求項７】
断片化を解消する処理を抑制するための実行抑制フラグを参照し、該実行抑制フラグがオンに設定されている場合、前記テーブル情報取得部、前記断片ページ判定部、前記データ記録部、前記テーブル情報更新部、前記管理領域設定部、または前記テーブル情報記録部のうち少なくとも１つについて処理を実行させない実行抑制部を備えることを特徴とする、請求項１に記載の情報処理装置。
【請求項８】
データ領域に割り当てられたブロックにデータが存在する使用ブロック、又は、該ブロックにデータが存在しない未使用ブロックのいずれかを示すブロック情報から前記各ブロックと前記各ブロック情報とが一対一に対応するテーブル情報が生成され管理領域に記録されており、そのテーブル情報を有効な管理領域として設定された第１の前記管理領域から取得するテーブル情報取得ステップと；
前記テーブル情報取得ステップで取得したテーブル情報を基にして、複数の前記ブロックの集まりであるページが、断片化された断片ページであるか否かを判定する断片ページ判定ステップと；
前記断片ページに構成される複数の前記ブロックのうち前記使用ブロックに該当するブロックのデータをメモリ上のバッファ領域に記録するデータ記録ステップと；
少なくとも前記断片ページ判定ステップでの判定結果を基にして、前記テーブル情報取得ステップで取得したテーブル情報を更新するテーブル情報更新ステップと；
前記有効な管理領域として設定された第１の管理領域を無効な管理領域として設定するとともに、無効な管理領域として設定された第２の管理領域を有効な管理領域として設定する管理領域設定ステップと；
前記テーブル情報更新ステップで更新したテーブル情報を、前記有効な管理領域として設定された第２の管理領域に記録するテーブル情報記録ステップと；
を含むことを特徴とする、情報処理方法。
【請求項９】
コンピュータを情報処理装置として機能させるコンピュータプログラムであって：
データ領域に割り当てられたブロックにデータが存在する使用ブロック、又は、該ブロックにデータが存在しない未使用ブロックのいずれかを示すブロック情報から前記各ブロックと前記各ブロック情報とが一対一に対応するテーブル情報が生成され管理領域に記録されており、そのテーブル情報を有効な管理領域として設定された第１の前記管理領域から取得するテーブル情報取得ステップと；
前記テーブル情報取得ステップで取得したテーブル情報を基にして、複数の前記ブロックの集まりであるページが、断片化された断片ページであるか否かを判定する断片ページ判定ステップと；
前記断片ページに構成される複数の前記ブロックのうち前記使用ブロックに該当するブロックのデータをメモリ上のバッファ領域に記録するデータ記録ステップと；
少なくとも前記断片ページ判定ステップでの判定結果を基にして、前記テーブル情報取得ステップで取得したテーブル情報を更新するテーブル情報更新ステップと；
前記有効な管理領域として設定された第１の管理領域を無効な管理領域として設定するとともに、無効な管理領域として設定された第２の管理領域を有効な管理領域として設定する管理領域設定ステップと；
前記テーブル情報更新ステップで更新したテーブル情報を、前記有効な管理領域として設定された第２の管理領域に記録するテーブル情報記録ステップと；
を備えることを特徴とする、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ領域の断片化を解消する情報処理装置、情報処理方法、およびコンピュータプログラムに関する。
【背景技術】
【０００２】
現在、メモリースティック（登録商標）等に代表されるように、電源を切ってもデータが失われずに記憶可能な不揮発性メモリが、携帯電話、ディジタルカメラなど多種の電化製品等に用いられている。
【０００３】
一般的に、不揮発性メモリのデータ領域には、複数の物理ブロックが割り当てられており、その物理ブロックを複数ブロック集めたページの単位で、データの読み書き等が行われている。
【０００４】
不揮発性メモリに読み書き等する際には、データが未だ格納され使用されていない空きページが数多いほど迅速に読み書き等の処理を実行できるが、データの書き込みや削除等を何度も繰り返し行うと、データ領域に格納されたデータが断片化された状態になってしまい、データを読む処理が遅くなったり、データを書き込めなくなったりしてしまう。
【０００５】
かかるデータの断片化を解消するために、データの断片化解消処理（又は、ガーベッジコレクション処理ともいう）を行い、データ領域中、データがとびとびに離散していたのを、連続するようにデータを並べ替えることが従来から知られている（例えば、特許文献１参照）。
【０００６】
【特許文献１】特開２００５−２０２９４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、データの断片化解消処理を実行する際に用いられるデータ領域の管理情報が一つに一元化されている、という問題があった。
【０００８】
データ領域の管理情報が一元化されていると、例えば、データの断片化解消処理の実行中にデータの書き込み等の処理を実行する等の割り込みが発生した場合、データの断片化解消処理の実行を取り消すことができず、データの書き込み等の処理を迅速に実行できなかった。
【０００９】
例えば、データの断片化解消処理前後の管理情報を保持すれば、データの断片化解消処理の実行中に割り込みが発生した場合でも、管理情報を断片化解消処理前の状態に戻し、データの書き込み等の処理を迅速に実行できるため、複数の管理情報の保持を可能とすることが望まれている。
【００１０】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、複数の管理情報を保持してデータの断片化解消処理を実行することが可能な、新規かつ改良された情報処理装置、情報処理方法、およびコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明の第１の観点によれば、データ領域に割り当てられたブロックにデータが存在する使用ブロック、又は、該ブロックにデータが存在しない未使用ブロックのいずれかを示すブロック情報を生成するブロック情報生成部と、上記各ブロックと上記各ブロック情報とが一対一に対応するテーブル情報を記録する管理領域と、有効な管理領域として設定された第１の上記管理領域から上記テーブル情報を取得するテーブル情報取得部と、上記テーブル情報取得部により取得されたテーブル情報を基にして、複数の上記ブロックの集まりであるページが、断片化された断片ページであるか否かを判定する断片ページ判定部と、上記断片ページに構成される複数の上記ブロックのうち上記使用ブロックに該当するブロックのデータをメモリ上のバッファ領域に記録するデータ記録部と、少なくとも上記断片ページ判定部による判定結果を基にして、上記テーブル情報取得部が取得したテーブル情報を更新するテーブル情報更新部と、上記有効な管理領域として設定された第１の管理領域を無効な管理領域として設定するとともに、無効な管理領域として設定された第２の管理領域を有効な管理領域として設定する管理領域設定部と、上記テーブル情報更新部により更新されたテーブル情報を、上記有効な管理領域として設定された第２の管理領域に記録するテーブル情報記録部と、を備えることを特徴とした情報処理装置が提供される。
【００１２】
本発明によれば、有効である第１の管理領域に記録されたテーブル情報を基にして断片化を解消するために断片ページであるか否かを判定し、断片ページに存在するデータを断片化解消するために移動すると、移動後の状態をテーブル情報に反映するため、テーブル情報を更新して、その更新後のテーブル情報を、第２の管理領域に記録している。したがって、管理領域には、２つのテーブル情報が管理されており、それらのテーブル情報が更新されることで、断片化を解消することができる。
【００１３】
上記管理領域設定部は、割り込みが発生した場合、当該管理領域設定部により有効な管理領域として設定された上記第２の管理領域を無効に設定するとともに、無効な管理領域として設定された上記第１の管理領域を再び有効に設定するようにしてもよい。かかる構成により、直近の更新がされ確定した状態にある第１の管理領域に記録されたテーブル情報に戻すことで、割り込み処理を迅速に実行することができる。
【００１４】
上記管理領域設定部は、上記第１の管理領域又は上記第２の管理領域のいずれかを交互に上記有効な管理領域として設定するようにしてもよい。かかる構成により、更新されたテーブル情報を時系列的に残せるため、割り込み等のタイミング問わずに、直近の更新されたテーブル情報にロールバックできる。
【００１５】
上記テーブル情報更新部は、上記断片ページに構成されるブロックのうち上記使用ブロックに該当するブロックの上記ブロック情報を、上記未使用ブロックに設定するようにしてもよい。かかる構成により、テーブル情報を更新することができる。
【００１６】
上記テーブル情報更新部は、上記ブロックから上記バッファ領域に記録されたデータ数に応じて、上記テーブル情報に構成されるブロック情報のうち上記未使用ブロックを示すブロック情報を上記使用ブロックに設定するようにしてもよく、上記未使用ブロックから使用ブロックに設定されたブロック情報の並びは、連続してもよい。かかる構成により、テーブル情報を更新することができる。
【００１７】
断片化を解消する処理を抑制するための実行抑制フラグを参照し、該実行抑制フラグがオンに設定されている場合、上記テーブル情報取得部、上記断片ページ判定部、上記データ記録部、上記テーブル情報更新部、上記管理領域設定部、または上記テーブル情報記録部のうち少なくとも１つについて処理を実行させない実行抑制部を備えるように攻勢してもよい。かかる構成により、不用意に断片化を解消する処理が実行されてしまうのを防ぐことができる。
【００１８】
上記断片ページ判定部による断片ページであるか否かの判定が上記データ領域の全てのページに対して終了するまで、上記データ記録部によるデータのバッファ領域への記録処理と、上記テーブル情報更新部による上記テーブル情報の更新処理と、上記管理領域設定部による有効な管理領域の設定処理と、上記テーブル情報記録部によるテーブル情報の記録処理とからなる一連の処理が繰り返して行われるようにしてもよい。かかる構成により、データ領域が断片化した状態を完全に解消することができる。
【００１９】
上記データ記録部のデータ記録処理により上記バッファ領域が一杯になるたびに、上記テーブル情報更新部による上記テーブル情報の更新処理と、上記管理領域設定部による有効な管理領域の設定処理と、上記テーブル情報記録部によるテーブル情報の記録処理とからなる一連の処理が行われるようにしてもよい。
【００２０】
上記課題を解決するために、本発明の別の観点によれば、データ領域に割り当てられたブロックにデータが存在する使用ブロック、又は、該ブロックにデータが存在しない未使用ブロックのいずれかを示すブロック情報から上記各ブロックと上記各ブロック情報とが一対一に対応するテーブル情報が生成され管理領域に記録されており、そのテーブル情報を有効な管理領域として設定された第１の上記管理領域から取得するテーブル情報取得ステップと、上記テーブル情報取得ステップで取得したテーブル情報を基にして、複数の上記ブロックの集まりであるページが、断片化された断片ページであるか否かを判定する断片ページ判定ステップと、上記断片ページに構成される複数の上記ブロックのうち上記使用ブロックに該当するブロックのデータをメモリ上のバッファ領域に記録するデータ記録ステップと、少なくとも上記断片ページ判定ステップでの判定結果を基にして、上記テーブル情報取得ステップで取得したテーブル情報を更新するテーブル情報更新ステップと、上記有効な管理領域として設定された第１の管理領域を無効な管理領域として設定するとともに、無効な管理領域として設定された第２の管理領域を有効な管理領域として設定する管理領域設定ステップと、上記テーブル情報更新ステップで更新したテーブル情報を、上記有効な管理領域として設定された第２の管理領域に記録するテーブル情報記録ステップと、を含むことを特徴とした情報処理方法が提供される。
【００２１】
上記課題を解決するために、本発明の別の観点によれば、コンピュータを情報処理装置として機能させるコンピュータプログラムが提供される。上記コンピュータプログラムは、データ領域に割り当てられたブロックにデータが存在する使用ブロック、又は、該ブロックにデータが存在しない未使用ブロックのいずれかを示すブロック情報から上記各ブロックと上記各ブロック情報とが一対一に対応するテーブル情報が生成され管理領域に記録されており、そのテーブル情報を有効な管理領域として設定された第１の上記管理領域から取得するテーブル情報取得ステップと、上記テーブル情報取得ステップで取得したテーブル情報を基にして、複数の上記ブロックの集まりであるページが、断片化された断片ページであるか否かを判定する断片ページ判定ステップと、上記断片ページに構成される複数の上記ブロックのうち上記使用ブロックに該当するブロックのデータをメモリ上のバッファ領域に記録するデータ記録ステップと、少なくとも上記断片ページ判定ステップでの判定結果を基にして、上記テーブル情報取得ステップで取得したテーブル情報を更新するテーブル情報更新ステップと、上記有効な管理領域として設定された第１の管理領域を無効な管理領域として設定するとともに、無効な管理領域として設定された第２の管理領域を有効な管理領域として設定する管理領域設定ステップと、上記テーブル情報更新ステップで更新したテーブル情報を、上記有効な管理領域として設定された第２の管理領域に記録するテーブル情報記録ステップと、を備えている。
【発明の効果】
【００２２】
以上説明したように、本発明によれば、データ領域のブロックを管理する複数のテーブル情報を管理領域に記録した上で、データの断片化解消処理を実行することができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の好適な実施の形態について、添付図面を参照しながら詳細に説明する。なお、以下の説明及び添付図面において、略同一の機能及び構成を有する構成要素については、同一符号を付することにより、重複説明を省略する。
【００２４】
まず、本実施形態にかかる情報処理装置の構成について順に説明する。なお、本実施形態においては、情報処理装置は、外部と無線通信可能な通信装置の場合を例に挙げて説明するが、本発明に係る情報処理装置は、かかる例に限定されず、例えば、ＰＣ（パーソナル・コンピュータ）、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）、携帯電話、情報家電等、データを記憶可能な任意のデバイスの場合であってもよい。
【００２５】
また、以降の本明細書においては、上記情報処理装置の通信方式として非接触型ＩＣカードによる通信方式の場合を例に挙げて説明するが、かかる例に限定されず、例えば、非接触型ＩＣチップによる通信方式や、接触型ＩＣカードによる通信方式等の場合でもよい。
【００２６】
（情報処理装置の構成）
まず、図１を参照しながら、本実施形態に係る無線通信可能な情報処理装置の構成について説明する。図１は、本実施の形態にかかる無線通信可能な情報処理装置の概略的な構成を示すブロック図である。
【００２７】
図１に示すように、情報処理装置１０１は、主に、アンテナ１０２と、フロントエンド部１０４と、電源再生部１０６と、メモリ管理部１０８と、メモリ１１０と、を備えている。
【００２８】
上記アンテナ１０２は、非接触ＩＣカード用のリーダ／ライタ（図示せず。）との間でデータを送受信するための手段を提供する。例えば、アンテナ１０２は、ループ・アンテナにより構成され、電磁誘導を利用して、上記リーダ／ライタとの間でデータの送受信を行うと共に、上記リーダ／ライタから電力の供給を受ける。
【００２９】
上記フロントエンド部１０４は、上記リーダ／ライタから送出された搬送波を分周してロジック制御部（図示せず。）やメモリ管理部１０８等を駆動するクロックを再生する。上記電源再生部１０６は、アンテナ１０２で受信した搬送波から電源を再生し、情報処理装置１０１内の各部に電力を供給する。
【００３０】
上記メモリ管理部１０８は、フロントエンド部１０４から伝送されたデータをメモリ１１０に書き込む際に、メモリ１１０内のデータ領域に区画された物理ブロック及び管理領域を指定してデータ等を記録すると共に、各領域の有効又は無効を制御する。
【００３１】
また、上記メモリ管理部１０８は、所定時間ごとに又はＯＳ（オペレーティングシステム）のアイドリング時間等を利用して、上記データ領域に記録されたデータのうち断片化されたデータに対して、断片化を解消する断片化解消処理を実行する。なお、断片化解消処理については後ほど詳述する。
【００３２】
上記メモリ１１０は、情報処理装置１０１の動作用のプログラム（ＯＳなど）や、上記のリーダ／ライタから受信したデータを記録する。
【００３３】
また、上記メモリ１１０には、データが記録される複数のデータ領域と、当該複数のデータ領域のうち、管理情報として有効なデータ領域のアドレス情報やテーブル情報などを記憶する為の管理領域とが割り当てられているが、かかるメモリ１１０の構成については後ほど詳述する。
【００３４】
なお、上記データ領域には、リーダ／ライタ（図示せず。）から受信したユーザデータを記録してもよいし、管理領域には、複数のデータ領域のうち、現在有効なデータ領域を示すアドレス情報や断片化解消処理に用いるテーブル情報等が記録されてもよい。
【００３５】
次に、図２を参照しながら、メモリ管理部１０８の構成について説明する。図２は、本実施の形態にかかるメモリ管理部１０８の概略的な構成を示すブロック図である。
【００３６】
図２に示すように、メモリ管理部１０８は、制御部１１６と、ブロック情報生成部１２０と、テーブル情報取得部１２２と、断片ページ判定部１２４と、データ記録部１２６と、テーブル情報更新部１２８と、テーブル情報記録部１３０と、管理領域設定部１３２と、実行抑制部１３４とを備えている。
【００３７】
制御部１１６は、メモリ１１０のデータ領域又は管理領域に各種のデータを記録するなど、ブロック情報生成部１２０、テーブル情報取得部１２２、断片ページ判定部１２４、データ記録部１２６、テーブル情報更新部１２８、テーブル情報記録部１３０、管理領域設定部１３２、および実行抑制部１３４の各部が実行する処理を制御する。
【００３８】
また、制御部１１６は、メモリ１１０内の管理領域に対し、更新したテーブル情報を書き込む際に、書き込むべき管理領域を選択して書込み処理を実行する。特に、制御部１１６は、管理領域に記録されたテーブル情報を更新する際、割り込み等が発生しても、更新前のテーブル情報により、元の状態に戻れるように各部を制御する。
【００３９】
ブロック情報生成部１２０は、メモリ１１０のデータ領域に割り当てられている各物理ブロックを参照することで、物理ブロックにデータが存在する場合には使用ブロックを示すブロック情報を生成し、物理ブロックにデータが存在しない場合には未使用ブロックを示すブロック情報を生成する。
【００４０】
また、上記ブロック情報生成部１２０は、生成したブロック情報と物理ブロックとが一対一に対応するテーブル情報を生成する。生成されたテーブル情報は、メモリ１１０の有効な管理領域に記録される。
【００４１】
上記テーブル情報取得部１２２は、メモリ１１０に存在する管理領域のうち有効な管理領域に記録されたテーブル情報を取得する。その取得されたテーブル情報は、例えば、バッファ上に退避される。
【００４２】
断片ページ判定部１２４は、上記テーブル情報取得部１２２により取得されたテーブル情報を基にして、ページ内のブロックに断片化されたデータが存在する断片ページであるか否かを判定する。ページとは、上記物理ブロックが複数ブロック集まった単位をいう。
【００４３】
上記データ記録部１２６は、上記断片ページ判定部１２４により、断片ページであると判定されたページに構成される物理ブロックに存在するデータをメモリ１１０上のワークバッファにコピーする。
【００４４】
上記テーブル情報更新部１２８は、ワークバッファにコピーしたデータの存在元の物理ブロックに対応するブロック情報や、断片ページでないページ（未使用ページ）に関する情報（未使用ページ番号、未使用ページ数）や、断片ページ判定部１２４による判定結果等を基にして、上記退避されたテーブル情報を更新する。
【００４５】
上記管理領域設定部１３２は、メモリ１１０内の複数の管理領域のいずれかを有効な管理領域として設定する。上記断片化解消処理において、第１の管理領域に更新前のテーブル情報が記録された状態で、第２の管理領域に更新されたテーブル情報が記録される場合を考えると、テーブル情報の更新処理が正常に完了したならば、第２の管理領域が有効に設定され、第２の管理領域には更新後のテーブル情報が記録される。
【００４６】
テーブル情報記録部１３０は、上記管理領域設定部１３２により設定された有効な管理領域に、上記テーブル情報更新部１２８によって更新されたテーブル情報を記録する。したがって、有効な管理領域に既記録されたテーブル情報は新たに更新される。
【００４７】
実行抑制部１３４は、メモリ１１０上に存在する実行抑制フラグ２０４を参照し、その実行抑制フラグ２０４がオンであった場合、テーブル情報の取得や断片ページの判定等からなる断片化解消処理を実行させないよう制御部１１６に指示する。
【００４８】
以上、第１の管理領域と第２の管理領域とを例に挙げて、メモリ管理部１０８について説明したが、かかる例に限定されない。例えば、メモリ１１０に３以上の管理領域が存在する場合でもメモリ管理部１０８により断片化解消処理を実行することは可能である。
【００４９】
（メモリ１１０の構成）
次に、図３を参照しながら、メモリ１１０の構成について、詳細に説明する。なお、図３は、本実施の形態にかかるメモリ１１０の概略的な構成を示すメモリマップである。
【００５０】
上述の通り、図３に示すメモリ１１０には、管理領域１４０と、データ領域１４５と、が割り当てられている。
【００５１】
また、図３に示すように、管理領域１４０には、さらに複数の管理領域が区分されている（例えば、管理領域Ａ、管理領域Ｂ）。なお、管理領域Ａはグレー色のハッチングがされているが、これは上述の管理領域設定部１３２により管理領域Ａが有効な管理領域として設定されていることを示している。
【００５２】
図３に示す管理領域Ａと管理領域Ｂには、上述の通りテーブル情報が記録されており、更新されたテーブル情報は、有効である管理領域（図３では、管理領域Ａ）に記録される。なお、上記有効である管理領域は、管理領域設定部１３２により管理領域Ａ又は管理領域Ｂのいずれかに随時設定される。
【００５３】
データ領域１４５には、図３に示すように、複数の物理ブロック（物理ブロック１、物理ブロック２、…）に区切られている。これらの区切られた物理ブロックは、データ（データＤ１、データＤ２、…）が格納される単位領域及び／又は当該物理ブロックに格納されたデータである。以降、ブロックは、上記物理ブロック、当該物理ブロックに格納された固定長のデータ、若しくは当該物理ブロック及びそれに格納されたデータを示すものとする。
【００５４】
上記物理ブロック（物理ブロック１、物理ブロック２、物理ブロック３…）が複数ブロック集まったのがページである。かかるページ単位でデータの読み込み又は書込みが行われるため、ページ内の１つの物理ブロックだけにデータが存在しているなど、ページが断片化していると、データを効率的に記録等することができない。
【００５５】
したがって、ページに構成される物理ブロックにはデータが全て存在するか（全て使用ブロック）若しくは全て存在しないか（全て未使用ブロック）のいずれかの状態が望ましい。かかる状態にするために断片化解消処理（又は、ガーベージコレクション処理）が行われる。以下、断片化解消処理について図を参照しながら説明する。
【００５６】
（断片化解消処理について）
次に、図４〜図１２を参照しながら、本実施の形態にかかる断片化解消処理の概略について説明する。
【００５７】
まず、図４に示すように、メモリ１１０には、管理領域１４０（管理領域Ａ、管理領域Ｂ）と、実行抑制フラグ２０４と、割り込みフラグ２０５と、ワークバッファ２０７と、データ領域１４５とが割り当てられている。なお、図５以降のメモリ１１０についても上記と同様に割り当てられている。
【００５８】
図４に示す管理領域１４０には、管理領域Ａと、管理領域Ｂとが存在し、管理領域Ａには、テーブル情報２０１が記録され、管理領域Ｂには、テーブル情報２０１ａが記録されている。
【００５９】
さらに、図４に示すように、管理領域Ａと管理領域Ｂのうち有効な管理領域として設定されているのは、現時点では、ハッチングが施された管理領域Ａとなっている。したがって、管理領域Ｂに記録されているテーブル情報２０１ａは、更新以前のテーブル情報である。なお、上記のように、管理領域１４０のうちハッチングが施された管理領域が有効な管理領域であるとして以降説明する。
【００６０】
データ領域１４５には、図４に示すように、物理ブロック１、物理ブロック２、…物理ブロック２５と２５個の物理ブロックが区分されている。そして、５個の物理ブロックから構成されるページがページ１〜ページ５の５ページ存在している。
【００６１】
なお、図４等に示すように、本実施の形態に係るデータ領域１４５には、５×５の２５個の物理ブロックが存在する場合を例に挙げて説明するが、かかる例に限定されず、１又は２以上の物理ブロックがデータ領域１４５に存在すればよい。
【００６２】
図４に示すように、物理ブロック１や、物理ブロック４などには数字が記載されているが、これは、かかる物理ブロック内にはデータが格納された使用ブロックであることを示している。反対に、図４に示す物理ブロック内に数字が記載されていない場合には（例えば、物理ブロック２など）、それらの物理ブロックは、未使用ブロックであることを示している。以降の図面等についても上記と同様である。
【００６３】
また、本実施の形態にかかるページは５個の物理ブロックから構成される場合を例に挙げて説明したが、ページが２以上の物理ブロックから構成される場合であれば、かかる例に限定されない。
【００６４】
図４に示すデータ領域１４５では、データが格納された物理ブロック（使用ブロック）の配置状況をみると、例えば、物理ブロック１や、物理ブロック４のように、使用ブロックが飛び飛びに点在するなどデータが断片化しているのが分かる。
【００６５】
したがって、断片化を解消するために、所定時間ごとに、若しくは、ＯＳのアイドリング時間等ごとに、制御部１１６の指示で断片化解消処理が実行開始されると、まず、テーブル情報取得部１２２は、有効な管理領域に設定された管理領域Ａからテーブル情報２０１を取得し、ワークバッファ２０７若しくは他のバッファ領域に退避する。
【００６６】
なお、テーブル情報取得部１２２が取得するテーブル情報は、ブロック情報生成部１２０により予め生成されたブロック情報を基にして、生成される。そして、生成されたテーブル情報は、例えば、取得前には管理領域に予め記録されているものとする。
【００６７】
ここで、テーブル情報について説明する。図５には、上記テーブル情報取得部１２２が取得したテーブル情報２０１の概略が示されている。
【００６８】
ブロック情報生成部１２０は、まず、図４に示すデータ領域１４５の各物理ブロック１〜２５を参照し、未使用ブロック（０）又は使用ブロック（１）のブロック情報を生成する。
【００６９】
なお、図５に示すように、本実施の形態にかかるブロック情報は、「０」が未使用ブロックを示し、「１」が使用ブロックを示す場合を例に挙げて説明するが、かかる例に限定されず、「１」が未使用ブロック、「０」が使用ブロックを示す場合でも良い。
【００７０】
次に、ブロック情報生成部１２０は、物理ブロックとそのブロック情報とを対応付けることにより、ブロック情報生成部１２０は、図５に示すような、テーブル情報２０１を生成することができる。
【００７１】
物理ブロックとその物理ブロックに係るブロック情報との対応として、例えば、図５に示すように、物理ブロック１と当該物理ブロック１に係るブロック情報（使用ブロック（１））とが対応付けられる。その他の物理ブロックについても同様である。
【００７２】
なお、図５に示すように、テーブル情報２０１は、表形式に構成される場合を例に挙げて説明したが、例えば、ブロック情報としてのビットを１又は２以上含んで成るビットマップ等、物理ブロックとブロック情報とが対応付けられていれば、かかる例に限定されない。図５以降のテーブル情報についても同様である。
【００７３】
テーブル情報取得部１２２によりテーブル情報２０１が取得されると、断片ページ判定部１２４は、その退避されたテーブル情報２０１を基にして各ページ（ページ１〜５）について断片ページであるか否かを判定する。
【００７４】
断片ページか否かの判定について、例えば、図５に示すように、ページ１では、使用ブロックが連続して存在していないため、ページ１は、断片ページと判定される。ページ２、ページ３についても同様に断片ページと判定される。
【００７５】
ページ４については、連続して使用ブロックが存在しているが、ページ内の全ての物理ブロックが使用ブロックではないため断片ページと判定される。一方、ページ５については、全ての物理ブロックが未使用ブロックであるため断片ページとは判定されない。
【００７６】
断片ページ判定部１２４により、ページ１が断片ページであると判定されると、データ記録部１２６は、図６に示すように、ページ１内の物理ブロック１と物理ブロック４に記録されていたデータをワークバッファ２０７にコピーする。
【００７７】
上記と同様に、断片ページ判定部１２４により、ページ２が断片ページであると判定されると、データ記録部１２６は、ページ２内の物理ブロック６と物理ブロック８に記録されていたデータをワークバッファ２０７にコピーする。
【００７８】
ページ３も断片ページであると判定されると、データ記録部１２６は、ページ３内の物理ブロックに記録されていたデータをワークバッファ２０７にコピーするが、ページ３内の物理ブロック１２に記録されていたデータをワークバッファ２０７にコピーした時点でワークバッファ２０７の記憶領域が一杯となるため、データ記録部１２６は、処理を中断する。
【００７９】
なお、本実施の形態にかかるワークバッファ２０７に記憶可能なデータは、５ブロック分のデータである場合を例に挙げて説明したが、１又は２ブロック分以上に相当するデータを記憶可能なワークバッファ２０７であれば、かかる例に限定されず、例えば、ワークバッファ２０７の記憶領域を小さくして、ワークバッファ２０７の記憶領域を抑えることも可能である。
【００８０】
データ記録部１２６によりワークバッファ２０７の記憶領域が一杯になるまでデータがコピーされると、次に、テーブル情報更新部１２８は、断片ページ判定部１２４の判定結果や、未使用ページに関する情報等を基にして、バッファ上等に退避されているテーブル情報２０１をテーブル情報２０１ｂに更新する。
【００８１】
ここで、図６の物理ブロック１２のデータがワークバッファ２０７に記録されてワークバッファ２０７が一杯になった状態の下、テーブル情報２０１の更新について、図７、図８を参照しながら、説明する。
【００８２】
図７に示すように、まず、テーブル情報更新部１２８は、ワークバッファ２０７に記録されたデータのコピー元となる物理ブロック（図６に示す物理ブロック１、４、６、８、１２）と一対一に対応するテーブル情報２０１のブロック情報について全て未使用ブロックに無効化する（１→０）。例えば、図７に示すテーブル情報２０１のうち物理ブロック１、４、６、８、１２に対応するブロック情報を未使用ブロックにする。
【００８３】
次に、図７に示すように、テーブル情報更新部１２８は、断片ページではないページ５の物理ブロック２１〜２５に対応するブロック情報を使用ブロックに有効化する（０→１）。例えば、テーブル情報２０１のうち物理ブロック２１、２２、２３、２４、２５に対応するブロック情報が未使用ブロックから使用ブロックに変更される。
【００８４】
なお、断片ページではないページ（未使用ページ）に関する情報（未使用ページ番号、未使用ページ数等）は、予めメモリ１１０上に記録されている場合を例に挙げて説明するが、かかる例に限定されず、例えば、断片化解消処理実行中に断片ページ判定部１２４により生成されても良い。
【００８５】
ワークバッファ２０７上に記録されたデータについてもデータ領域１４５のページ５内の各物理ブロック２１〜２５に各々記録されるとともに、ワークバッファ２０７に記録される前のコピー元の各物理ブロック１、４、６、８、１２に格納されたデータが削除される。
【００８６】
以上、上記テーブル情報更新部１２８により、断片ページ判定部１２４の判定結果や未使用ページに関する情報等を基にして、図７に示すテーブル情報２０１が更新されると、図８に示すテーブル情報２０１ｂとなる。
【００８７】
上記テーブル情報更新部１２８によりテーブル情報２０１ｂに更新されると、次に、管理領域設定部１３２は、図９に示すように、有効な管理領域を管理領域Ａから管理領域Ｂに設定する。
【００８８】
図９に示すように、ワークバッファ２０７に記録されたデータは、ページ５に構成される物理ブロック２１〜２５に各々格納され、元の物理ブロック１、４、６、８、１２に格納されていたデータは削除されている。したがって、ページ１及びページ２の断片化は解消している。
【００８９】
なお、図９に示す物理ブロック１〜２５に格納されたデータの有無の状況は、図８に示す更新後のテーブル情報２０１ｂに構成されるブロック情報（使用ブロック、未使用ブロック）の並びと同期するように一致している。
【００９０】
管理領域設定部１３２により管理領域Ｂに有効な管理領域が設定されると、次に、テーブル情報記録部１３０は、図９に示すように、有効である管理領域Ｂに、テーブル情報更新部１２８により更新されたテーブル情報２０１ｂを記録する。
【００９１】
したがって、管理領域Ａに記録されたテーブル情報２０１は、管理領域Ｂに記録されたテーブル情報２０１ｂと比べて相対的に過去のテーブル情報となる。
【００９２】
以上で、１回目の断片化解消処理が終了するが、図９に示すように、未だ断片化されたデータが存在するため、完全には断片化解消処理が終了していない。したがって、次に、２回目の断片化解消処理が実行される。以下、２回目の断片化解消処理について説明する。
【００９３】
再び２回目の断片化解消処理がページ１から順に行われる。まず、テーブル情報取得部１２２により図９に示す管理領域Ｂからテーブル情報２０１ｂが取得され、断片ページ判定部１２４により断片ページか否かの判定が行われる。
【００９４】
次に、データ記録部１２６は、ページ３が断片化されたデータを含む断片ページであるため、そのページ３内の物理ブロック１５に格納されたデータをワークバッファ２０７にコピーする（図示なし）。
【００９５】
同様に、データ記録部１２６は、ページ４が断片ページであるため、そのページ４内の物理ブロック１６〜１８に格納されたデータをワークバッファ２０７にコピーする（図示なし）。
【００９６】
なお、２回目の断片化解消処理においても、ページ１から順に行う場合を例に挙げて説明したが、かかる例に限定されず、例えば、図９に示すように、既に断片化が解消したページ１とページ２を飛ばして、ページ３から開始する場合などでも良い。
【００９７】
次に、ワークバッファ２０７の記憶領域が一杯になってないが、データ領域１４５内に区分される全てのページに渡って断片ページであるか否かの判定が終了しているため、テーブル情報更新部１２８は、バッファに退避したテーブル情報２０１ｂを更新する。
【００９８】
テーブル情報更新部１２８は、図１０に示すように、ワークバッファ２０７に記録されたデータのコピー元となる物理ブロック（図９に示す物理ブロック１５、１６、１７、１８）と一対一に対応するテーブル情報２０１ｂのブロック情報について全て未使用ブロックに無効化する（１→０）。例えば、図１０に示すテーブル情報２０１ｂのうち物理ブロック１５、１６、１７、１８に対応するブロック情報を未使用ブロック情報にする。
【００９９】
次に、図１０に示すように、テーブル情報更新部１２８は、断片ページではないページ１の物理ブロック１〜４に対応するブロック情報を使用ブロックに有効化する（０→１）。例えば、テーブル情報２０１ｂのうち物理ブロック１、２、３、４に対応するブロック情報を未使用ブロックから使用ブロックにする。
【０１００】
なお、断片ページではないページ（未使用ページ）に関する情報（未使用ページ番号、未使用ページ数等）は、予めメモリ１１０上に記録されている場合を例に挙げて説明するが、かかる例に限定されず、例えば、断片化解消処理実行中に断片ページ判定部１２４により生成されても良い。
【０１０１】
ワークバッファ２０７上に記録されたデータについてもデータ領域１４５のページ１内の各物理ブロック１〜４に各々記録されるとともに、ワークバッファ２０７に記録される前のコピー元の各物理ブロック１５、１６、１７、１８に格納されたデータが削除される。
【０１０２】
以上、上記テーブル情報更新部１２８により、断片ページ判定部１２４の判定結果や、断片化されていないページ（未使用ページ）に関する情報等を基にして、図１０に示すテーブル情報２０１ｂが更新されると、図１１に示すテーブル情報２０１ｃとなる。
【０１０３】
テーブル情報２０１ｃに更新されると、次に、管理領域設定部１３２は、図１２に示すように、これまで無効な管理領域であった管理領域Ａを有効な管理領域として設定する。
【０１０４】
図１２に示すように、ワークバッファ２０７に記録されたデータは、ページ１に構成される物理ブロック１〜４に各々格納され、元の物理ブロック１５、１６、１７、１８に格納されていたデータは削除されている。したがって、ページ３及びページ４の断片化は解消している。
【０１０５】
管理領域設定部１３２により管理領域Ａに有効な管理領域が設定されると、次に、テーブル情報記録部１３０は、図１２に示すように、有効である管理領域Ａに、テーブル情報更新部１２８により更新されたテーブル情報２０１ｃを記録する。
【０１０６】
したがって、管理領域Ｂに記録されたテーブル情報２０１ｂは、管理領域Ａに記録されたテーブル情報２０１ｃと比べて相対的に過去のテーブル情報となる。
【０１０７】
なお、図１２に示すように、ワークバッファ２０７に記録されたデータが、断片化されていないページのうち最もページ番号が小さいページ１に構成される物理ブロック１〜４に格納される場合を例に挙げて説明したが、かかる例に限定されず、例えば、上記データが断片ページではないページ（未使用ページ）のうち最もページ番号が大きいページに記録される場合等でもよい。
【０１０８】
以上で、データ領域１４５に存在する全てのページについて断片化解消処理が行われたため、断片化解消処理が完全に終了する。
【０１０９】
なお、断片化解消処理が完全に終了した時点で、実行抑制部１３４が、図１２に示すように、実行抑制フラグ２０４をオンに設定しても良い。当該実行抑制フラグ２０４がオンに設定されることで、その後の断片化解消処理を実行させないようにすることができる。
【０１１０】
上記実行抑制フラグ２０４がオンに設定される状況としては、例えば、メモリ１１０にデータを記録している等、ハードウェアが使用中の状況の場合に実行抑制フラグ２０４がオンに設定され、断片化解消処理の実行が抑制されるが、かかる例に限定されない。
【０１１１】
ここで、図１３を参照しながら、本実施の形態にかかる断片化解消処理の詳細について説明する。なお、図１３は、本実施の形態にかかる断片化解消処理の構成を示すフローチャートである。
【０１１２】
図１３に示すように、制御部１１６は、実行抑制部１３４により実行抑制フラグ２０４がオンに設定されているか否かを確認し（Ｓ１３０１）、実行抑制フラグ２０４がオフであれば、各部に断片化解消処理を実行させる。
【０１１３】
次に、テーブル情報取得部１２２は取得したテーブル情報２０１のＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）を行う（Ｓ１３０３）。
【０１１４】
上記ＣＲＣ検査結果が正常であった場合、データ領域１４５に存在する全てのページについて断片化解消処理が終了していなければ（Ｓ１３０５）、断片ページであるか否かの判定が行われる（Ｓ１３０７）。なお、上記断片ページの判定処理（Ｓ１３０７）は、上述したものと実質的に同一であるため詳細な説明は省略する。
【０１１５】
次に、断片ページ判定部１２４により断片ページと判定されると（Ｓ１３０７）、その断片ページに構成される物理ブロックに格納されたデータは、ワークバッファ２０７にコピーされる（Ｓ１３０９）。
【０１１６】
次に、データ記録部１２６は、ワークバッファ２０７にコピーされたデータについてＣＲＣ検査を行い（Ｓ１３１１）、当該ＣＲＣの検査結果が正常であった場合、テーブル情報更新部１２８は、ワークバッファ２０７の記憶領域が一杯か否かを確認する（Ｓ１３１３）。
【０１１７】
ワークバッファ２０７が一杯である場合（Ｓ１３１３）、テーブル情報更新部１２８は、物理ブロックに対応するブロック情報を使用ブロック又は未使用ブロックに変更することでテーブル情報２０１を更新する（Ｓ１３１５）。なお、テーブル情報２０１の更新処理は、上述した処理と実質的に同一であるため詳細な説明は省略する。
【０１１８】
なお、ワークバッファ２０７が一杯でなくても（Ｓ１３１３）、全てのページについて断片ページの判定が終了していた場合、テーブル情報更新部１２８は、テーブル情報２０１の更新を行っても良いし（Ｓ１３１５）、断片化解消処理を終了してもよい（ＥＮＤ）。
【０１１９】
テーブル情報の更新が行われると（Ｓ１３１５）、データ記録部１２６は、ワークバッファ２０７にコピーされたデータを断片ページではない未使用ページに構成される物理ブロックに記録する（Ｓ１３１７）。
【０１２０】
次に、データ記録部１２６は、断片化されていない未使用のページを特定する未使用ページ番号と、その未使用ページの数を更新する（Ｓ１３１９）。
【０１２１】
例えば、図６の場合、未使用ページ番号は、ページ「５」であり、未使用ページ数は、１ページであるが、図９に示す状態になると、未使用ページ番号は、ページ「１」及びページ「２」であり、未使用ページ数は、２ページとなる。したがって、データ記録部１２６は、図６から図９に変更するにあたって、未使用ページ番号を「５」から「１、２」に、未使用ページ数を「１ページ」から「２ページ」に更新する（Ｓ１３１９）。
【０１２２】
なお、上記未使用ページ番号と、未使用ページ数は、例えば、メモリ１１０上の有効な管理領域１４０に記録されるが、未使用ページ番号及び未使用ページ数を記憶可能であれば、かかる例に限定されない。
【０１２３】
次に、制御部１１６は、割り込みフラグ２０５がオンに設定されているか否かを確認することで、割り込み発生したか否かを判断する（Ｓ１３２１）。
【０１２４】
割り込みフラグ２０５がオフに設定されていた場合、管理領域設定部１３２は、有効な管理領域を再設定し、その有効な管理領域として設定された管理領域１４０にテーブル情報記録部１３０は、ステップＳ１３１５で更新されたテーブル情報を記録する（Ｓ１３２３）。
【０１２５】
一方、受信処理等のため割り込みフラグ２０５がオンに設定されていた場合（Ｓ１３２１）、制御部１１６は、ロールバック処理を実行するよう管理領域設定部１３２に指示する。
【０１２６】
管理領域設定部１３２は、制御部１１６からロールバック処理の実行命令があると、現時点で有効な管理領域として設定されている管理領域を無効とし、無効な管理領域として設定されていた管理領域を有効とすることで、ロールバック処理を実行する（Ｓ１３２５）。
【０１２７】
例えば、図１２に示す割り込みフラグ２０５がオンに設定されていた場合、管理領域設定部１３２は、現時点で有効な管理領域として設定されていた管理領域Ａを無効とし、無効な管理領域として設定されていた管理領域Ｂを有効にする。
【０１２８】
図１２に示すように、管理領域Ａに記録されているテーブル情報２０１ｃは最新のデータ領域１４５のデータ有無状況を示しているのに対して、管理領域Ｂに記録されているテーブル情報２０１ｂは、テーブル情報２０１ｃに更新される以前のデータ領域１４５のデータ有無状況を示している。
【０１２９】
したがって、ロールバック処理により管理領域Ｂが有効な管理領域に設定されると、直近の更新が確定したテーブル情報２０１ｂが有効となるため、以前のテーブル情報２０１ｂの状態に戻すことができる。
【０１３０】
上記ロールバック処理（Ｓ１３２５）によりテーブル情報２０１が元の状態に戻るが、断片化解消処理のためワークバッファ２０７から新たな物理ブロックに移動されたデータは、例えば、空き領域として使用されるために、元の状態に戻らずそのままであるが、かかる例に限定されず、当該移動されたデータについても元の状態に戻しても良い。
【０１３１】
上記のように、例えば、ワークバッファ２０７に記憶するデータが一杯になる等のタイミングで、管理領域Ａ又は管理領域Ｂに切り替えて、管理領域Ａと管理領域Ｂのテーブル情報２０１を交互に更新しながら、管理領域Ａ又は管理領域Ｂにテーブル情報２０１の履歴を残すことができるため、一つ前の状態のテーブル情報２０１に戻すことができる。
【０１３２】
なお、上述した一連の断片化解消処理は、専用のハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。上記一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータやマイクロコンピュータ等の情報処理装置にインストールされ、上記情報処理装置を断片化解消処理を実行可能な装置として機能させる。
【０１３３】
なお、プログラムは、ダウンロードサイトから情報処理装置に無線で転送したり、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介して、情報処理装置に有線で転送し、当該情報処理装置では、そのようにして転送されてくるプログラムを、受信し、内蔵するハードディスクやメモリ等にインストールすることができる。
【０１３４】
ここで、本明細書において、情報処理装置に各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）も含むものである。
【０１３５】
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例を想定し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【産業上の利用可能性】
【０１３６】
本発明は、データ領域の断片化を解消することが可能な情報処理装置、情報処理方法、コンピュータプログラムに適用可能である。
【図面の簡単な説明】
【０１３７】
【図１】本実施の形態にかかる無線通信可能な情報処理装置の概略的な構成を示すブロック図である。
【図２】本実施の形態にかかるメモリ管理部の概略的な構成を示すブロック図である。る
【図３】本実施の形態にかかるメモリマップを概略的に示す説明図である。
【図４】本実施の形態にかかる断片化解消処理におけるメモリマップを概略的に示す説明図である。
【図５】本実施の形態にかかる断片化解消処理におけるテーブル情報の概略を示す説明図である。
【図６】本実施の形態にかかる断片化解消処理におけるメモリマップを概略的に示す説明図である。
【図７】本実施の形態にかかる断片化解消処理におけるテーブル情報の概略を示す説明図である。
【図８】本実施の形態にかかる断片化解消処理におけるテーブル情報の概略を示す説明図である。
【図９】本実施の形態にかかる断片化解消処理におけるメモリマップを概略的に示す説明図である。
【図１０】本実施の形態にかかる断片化解消処理におけるテーブル情報の概略を示す説明図である。
【図１１】本実施の形態にかかる断片化解消処理におけるテーブル情報の概略を示す説明図である。
【図１２】本実施の形態にかかる断片化解消処理におけるメモリマップを概略的に示す説明図である。
【図１３】本実施の形態にかかる断片化解消処理の概略を示すフローチャートである。
【符号の説明】
【０１３８】
１０１      情報処理装置
１０８      メモリ管理部
１１０      メモリ
１１６      制御部
１２０      ブロック情報生成部
１２２      テーブル情報取得部
１２４      断片ページ判定部
１２６      データ記録部
１２８      テーブル情報更新部
１３０      テーブル情報記録部
１３２      管理領域設定部
１３４      実行抑制部
【図１】
2008152676.tif 000003
【図２】
2008152676.tif 000004
【図３】
2008152676.tif 000005
【図４】
2008152676.tif 000006
【図５】
2008152676.tif 000007
【図６】
2008152676.tif 000008
【図７】
2008152676.tif 000009
【図８】
2008152676.tif 000010
【図９】
2008152676.tif 000011
【図１０】
2008152676.tif 000012
【図１１】
2008152676.tif 000013
【図１２】
2008152676.tif 000014
【図１３】
2008152676.tif 000015