(57)【特許請求の範囲】
【請求項１】
データに関連するデータレコードを複数の種別毎に管理するデータベースシステムを備える携帯通信端末において、
記憶手段と、
前記記憶手段の単位記録領域に１以上のデータレコードを記録し、前記データレコードを複数の種別毎に管理ファイルとして記録する記録手段と、
前記記録手段とで記録する管理ファイルのデータレコードの削除指示に応じて、当該データレコードを無効とする無効手段と、
前記複数の種別毎の管理ファイルについて、前記無効手段により無効にされたデータレコードのみを含む単位記録領域を計数する計数手段と、
前記計数手段により計数された数が所定数を超えたときに、管理ファイルを再編成する再編成手段とを
備えることを特徴とする携帯通信端末。
【請求項２】
前記記録手段は、前記複数の種別ごとの管理ファイルのデータレコードの総数が一定数以下のとき、データレコードの追加指示に応じて、前記記憶手段に当該データレコードを記録することを特徴とする請求項１記載の携帯通信端末。
【請求項３】
前記記録手段は、前記追加指示で追加されるデータレコードの種別に対応する管理ファイルにおいて、前記無効手段により無効にされたデータレコードがあるとき、当該データレコードに前記追加されるデータレコードを記録することを特徴とする請求項２記載の携帯通信端末。
【請求項４】
前記記録手段は、前記追加指示で追加されるデータレコードの種別に対応する管理ファイルにおいて、前記無効手段により無効にされたデータレコードを含む単位記録領域がないとき、新たな単位記録領域に前記追加されるデータレコードを記録することを特徴とする請求項２記載の携帯通信端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数種類のデータを格納可能な携帯通信端末に関し、特に、複数種類のデータを管理するための記録領域の大きさを制限する技術に関する。
【背景技術】
【０００２】
従来、通信相手を登録するためのアドレス帳機能を有する携帯電話機が知られている（例えば、特許文献１参照）。
アドレス帳機能を実現するために携帯電話機は、各通信相手についての名称、電話番号、メールアドレス等のデータからデータレコードを構成して、１以上のデータレコードを含むテーブルを記録保持する。そして、そのうちいずれかのデータレコードの内容をユーザ指示に応じて検索して表示し得るように管理する。
【０００３】
アドレス帳に利用可能な記録媒体上の記録容量を一定範囲内に制限するためには、例えば、アドレス帳に登録可能な通信相手の数の上限を定めることが考えられる。
ところで、近年、カメラ撮影機能や音楽プレーヤとしての機能等、様々な機能を有する携帯電話機が開発されている。このような多機能な携帯電話機は、フラッシュメモリ等の記録媒体に、アドレス帳のデータ、メール文書のデータ、着信報知用の音声データに加えて、静止画像データ、動画像データ、音楽データ等の各種データを記録保存することができる。
【０００４】
これらのデータについて、ユーザ指示により指示されたデータを検索する時間を短くすることが望ましい。そのために記録保存された各種データの種別毎について、その種別の各データを管理する管理用データをデータレコードとして、１以上のデータレコードを含む管理用テーブルを記録保持している。
この場合、各種データ毎、つまり、管理用テーブル毎に、その管理用テーブルのために使用される記録媒体上の記録容量を一定範囲内に制限するためには、例えば、各種データ毎に登録可能なデータの件数の上限を定める方式が考えられる。この場合に、必要となり得る最大記録容量は、データの種別毎に定められた件数と１つのデータレコードのデータ容量とに基づいて最大サイズを算出し、その全ての最大サイズの合計をすることで算定できる。
【０００５】
例えば、静止画像データと動画像データと音楽データとを管理する場合には、静止画像データを５０００件まで、動画像データを５０００件まで、音楽データを５０００件までというように上限を定めるとする。すると、これらの種別のデータを管理するために必要な記録領域は、静止画像データを管理するデータレコード５０００件分と動画像データを管理するデータレコード５０００件分と音楽データを管理するデータレコード５０００件分との和により算定できる。この算定された量の記録領域が、これらのデータの管理のために確保されなければならない。
【特許文献１】特開２００７−２７４５００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、多機能な携帯電話機のユーザが主に利用する機能は、ユーザ毎に異なるはずであり、いずれの種別のデータについても上述の上限件数に近づくほど記録しているようなユーザは稀かもしれない。上述の方式では、いずれの種別のデータについても上限件数に近づくほど記録していない場合には、データの管理のために確保される記録領域の多くが無駄となってしまうことが問題となる。
【０００７】
そこで、本願発明は、上記問題に鑑みてなされたものであり、管理するデータの件数に関する上限を定める仕様に対応し、上述の方式よりもデータの管理のために確保される記録領域が無駄になる可能性を抑え得るように、データ管理に必要な記録領域の大きさを制限する携帯電話機等の携帯通信端末を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明に係る携帯通信端末は、データに関連するデータレコードを複数の種別毎に管理するデータベースシステムを備える携帯通信端末において、記憶手段と、前記記憶手段の単位記録領域に１以上のデータレコードを記録し、前記データレコードを複数の種別毎に管理ファイルとして記録する記録手段と、前記記録手段とで記録する管理ファイルのデータレコードの削除指示に応じて、当該データレコードを無効とする無効手段と、前記複数の種別毎の管理ファイルについて、前記無効手段により無効にされたデータレコードのみを含む単位記録領域を計数する計数手段と、前記計数手段により計数された数が所定数を超えたときに、管理ファイルを再編成する再編成手段とを備えることを特徴とする。
【発明の効果】
【０００９】
この発明によれば、携帯通信端末の内蔵されるメモリにおけるデータベースシステムが占める容量を縮小することができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明に係る携帯通信端末の一実施形態である携帯電話機について図面を用いて説明する。
＜概要＞
本実施形態に係る携帯電話機は、画像、音楽、文書等の各種データを管理するためのデータベースシステムを備えている。データの種別毎に管理するために必要なデータレコードの項目は異なるため、このデータベースシステムは、データの種別毎に別個のテーブルを定めている。そして、このテーブル１つ１つを、別個の管理用ファイルの内容として、携帯電話機におけるファイルシステムで管理された記録媒体に記録している。このデータベースシステムにおいては、各テーブルのデータレコード削除等のデータ操作の処理性能の低下を防ぐために、一定のタイミングでその解放を実行するための処理であるガーベジコレクションを行う。つまり、テーブル内のデータレコード数が減少した都度、管理用ファイルに記録媒体上で割り当てられた領域の一部を解放することはしない。
【００１１】
このデータベースシステムは、特に、データの管理のために確保することとなる記録領域の量を一定以下に抑制することを保障することを目的としている。そのために、後述する空ページ数に応じて決定されたタイミングでガーベジコレクションを実行することを特徴とする。なお、本実施形態においては、ガーベジコレクションと記載するが、これは、一般には、ガベージコレクション、ガベジコレクションと記載されることもある。ガーベジコレクションを実行することで、テーブル内のデータレコードのファイル編成を編成しなおすことができる。よって、データレコードが削除されたままの状態の編成時に比してテーブル自体のデータ量を小さくすることができる。
＜構成＞
図１は、携帯電話機１００の外観図を示しており、そのディスプレイには、データベースシステムで運用される各フォルダのデータの件数や、全データ件数が表示されている状態の一例を示している。
【００１２】
図２は、携帯電話機１００の機能構成を示した機能ブロック図である。
図２に示すように、携帯電話機１００は、通信部１１０と、操作部１２０と、音声処理部１３０と、表示部１４０と、記憶部１５０と、制御部１６０とを含んで構成される。
ここで各部の説明に先んじて、本実施形態で用いる用語について図３を用いて説明しておく。まず、本実施形態のデータベースシステムでは、画像や、音楽などの実際のデータに関連する属性情報を管理するものである。属性情報とは、画像ファイルや音楽ファイルなどの、ファイル名や、実際のデータサイズ、記憶部１５０に記憶された日時などのことをいう。
【００１３】
一つのデータに対応する属性情報を本実施形態ではデータレコードと呼称する。データベースシステムでは、その種別、つまり、画像データのデータレコードや音楽データのデータレコードなどの種別に関係なく、全ての種別のデータレコードの合計数の上限が定められており、ここではその上限を５０００件とする。データレコードは、その種別（例えば音楽、画像、文書など）、に分けてテーブルで管理される。
【００１４】
テーブルは、１つの種別のデータレコードを管理するための管理用ファイルの内容である。そして、テーブルは、記憶部１５０においてデータベースシステム用に確保した記録領域を所定の単位記録領域であるページ単位に論理的に分割されており、本実施形態では、１ページの記録容量は２ＫＢであるとする。
１つのページには、１以上のデータレコードが記録可能であるが、データレコードは、その種別に応じてデータ量が異なるため、１つのページに記録可能なデータレコード数は、テーブル毎に異なり得る。また、１つのデータレコードが２つのページに跨って記録されることはないように設計される。つまり、１つのページに１つのデータレコードが記録され、データレコードが例えば１．５ＫＢの容量を有していた場合、残り０．５ＫＢ分は空き容量となり、その空き容量に別のデータレコードが記録されることはない。また、１データレコードのデータ量が１ページ分の容量、即ち２ＫＢを超えることもない。
【００１５】
図３は、上記説明を模式的に示したものであるが、データレコードが削除された場合、データレコードそのものが削除されるわけではなく、無効化されるのみである。データレコードが無効化された領域を空スペースと呼称する。テーブルの最後尾のページに新たなデータレコードを追加することができる領域がある場合にも、当該領域を空スペースと呼称する。図面上においては、有効であるデータレコードには、Ｐ１、Ｐ２、Ｍ１、Ｍ２など便宜上識別できるように記載し、無効であるデータレコードは、その部分を×印で示している。データレコードが無効化された場合、ガーベジコレクションを実行するとき以外にはデータレコードが前詰め、即ちテーブルが再編成されることはない。図３の２つ目のページに示されるように、ページ中の全データレコードが無効化された場合に、そのページを本実施形態では、空ページと呼称する。本データベースシステムは、この空ページの総数に基づいてガーベジコレクションを実行するタイミングを決定することが特徴となっている。
【００１６】
以下、携帯電話機１００を構成する各部について説明していく。
通信部１１０は、アンテナ１１１から受け取った受信信号を受話音声信号及び受信データ信号に復調し、復調した受話音声信号や、受信データ信号を制御部１６０に出力する機能を有する。また、通信部１１０は、音声処理部１３０でＡ／Ｄ変換された送話音声信号、及び制御部１６０から与えられる電子メールなどの送信データ信号を変調し、通信用アンテナ１１１から出力する機能を有する。
【００１７】
操作部１２０は、テンキー群、オンフックキー、オフフックキー、方向キー、決定キー、メールキー、サイドキーなどを含み、ユーザの操作を受け付け、受け付けた操作内容を制御部１６０に出力する機能を有する。
音声処理部１３０は、通信部１１０から出力された受話音声信号をＤ／Ａ変換してスピーカ１３２に出力する機能と、マイク１３１から取得した送話音声信号をＡ／Ｄ変換し、変換された信号を制御部１６０に出力する機能を有する。
【００１８】
表示部１４０は、ＬＣＤ（Liquid Crystal Display）などによって実現されるディスプレイを含み、制御部１６０の指示による画像をディスプレイに表示する機能を有する。
記憶部１５０は、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）を含んで構成され、小型ハードディスクや不揮発性メモリなどによって実現される。記憶部１５０は、携帯電話機１００の動作上必要な各種データやプログラムの他、音楽データや画像データなどを記憶する機能を有する。音楽データは、例えば、通信部１１０を介して、ネットからダウンロードされたコンテンツであり、操作部１２０でユーザからの指示を受け付けて、スピーカ１３２からその音声が出力される。また、画像データは、例えば、携帯電話機１００に備えられたカメラ（図示せず）により撮影された画像であり、画像データの内容が表示部１４０において表示されたり、画像データがメールに添付されて通信部１１０を介して通信先に送信されたりする。
【００１９】
また、記憶部１５０は、データベースシステム運用上必要となる各種のデータを記憶している。図２に示すように、記憶部１５０は、データベースシステムに必要な各種テーブル１５１と、データレコード容量表１５２と、データレコード件数表１５３と、空ページ管理表１５４とを記憶している。また、各データレコードの内容と、ガーベジコレクションを実行するか否かを判定するための空ページの閾値とを記憶している。ここで閾値は１００ページであるとする。
【００２０】
各種テーブル１５１は、データベースシステム上の各データレコードの種別に応じたテーブル群のことであり、ここでは、画像テーブル、着メロテーブル、フラッシュコンテンツテーブル、文書テーブル、Ｅメールテーブルがある。
データレコード容量表１５２は、データレコードの各種別に応じて、その種別のデータレコードのデータ量を示す表である。制御部１６０は、データレコード容量表１５２を参照することで、各テーブルにおける各データレコードの先頭を容易に検出することができる。
【００２１】
データレコード件数表１５３は、各テーブルに所属するデータレコードの数を示す表である。制御部１６０は、データレコード件数表１５３を参照することで、データベースシステムに登録されているデータレコードの総数を容易に認識することができる。
空ページ管理表１５４は、各テーブルにおいて、それぞれどれだけの空ページ数があるかを示す表である。制御部１６０は、空ページ管理表１５４を参照することにより、空ページの合計数を容易に算出することができる。
【００２２】
各表の詳細については後述する。
制御部１６０は、ＣＰＵ（Central Processing Unit）であり、携帯電話機１００の各部を制御する機能を有し、通常の携帯電話機が保持する機能の他、以下の機能を有する。
制御部１６０は、記憶部１５０が保持するデータを運用、管理する機能を有し、データベースシステムの内容を操作部１２０でユーザから受け付けた操作内容に従って表示部１４０に表示させる機能を有する。制御部１６０は、データベースシステムが管理するデータレコードやテーブルに関する内容を表示部１４０に表示させることができる。一例として制御部１６０は、図１の外観図で示した、総データレコード件数や、各テーブルにおけるデータレコード件数などを表示させることができる。
【００２３】
また、制御部１６０は、操作部１２０で受け付けたユーザからの指示に従い、新たなデータレコードをその種別を判別し、判別した種別に対応するテーブルにデータレコードを追加する。このとき、データレコードを追加するテーブルに空スペースがある場合には、テーブルの一番先頭に近い空スペースに追加する。データレコードを追加するテーブルの先頭のページから最後尾のページまでと最後尾のページに空スペースがない場合には、テーブルの最後尾に新たなページを確保し、確保したページに追加する。そして、そのテーブルの総データレコード数を１加算してデータレコード件数表１５３を更新する。なお、追加する時点でデータレコード件数表１５３に記録されているデータレコードの総数が５０００件に達している場合には、制御部１６０は、表示部１４０に、データレコードを追加できない旨を示すエラー情報を表示させる。
【００２４】
さらに、制御部１６０は、操作部１２０で受け付けたユーザからの指示に従い削除されたデータに対応するデータレコードを無効化する機能を有する。各データレコードは、データベースシステム上において、自データレコードが有効であるか無効であるかを示すフラグを有しており、無効化とは、そのフラグを無効である情報に書き換えることをいう。そして、このとき、データレコードの無効化に伴い、当該データレコードが記録されていたページから、全てのデータレコードが無効化された状態になった場合に、制御部１６０は、空ページ管理表１５４の対応するテーブルの空ページ数を１加算して空ページ管理表１５４を更新する。そして、このとき空ページ数が１０１に達する場合に、制御部１６０は、データベースシステムのガベージコレクションを全テーブルを対象に実行し、再編成された各テーブルを記録する。
【００２５】
以上が携帯電話機１００の各機能部の説明である。
＜データ＞
ここから、携帯電話機１００に実装されるデータベースシステムで扱うデータについて説明する。なお、データベースシステムで扱うデータとは、画像や着メロなどのデータの実体ではなく、その管理情報のことであり、当該管理情報が項目としてデータレコードを構成している。
【００２６】
図４は各種テーブル１５１におけるデータレコード格納イメージである。図４に示すように、各種テーブル１５１には、画像テーブルと、着メロテーブルと、フラッシュコンテンツテーブルと、文書テーブルと、Ｅメールテーブルとがある。なお、図中において各テーブルに添えた数値は、データベースシステムの管理上用いるそれぞれのテーブルナンバーを示している。
【００２７】
図４に示すように、各テーブルは、ページ単位で区切られている。そして、それぞれのページには、１つのデータレコードのデータ量に応じて、１以上のデータレコードが記録されている。例えば画像テーブルの場合には、１ページに２つのデータレコードが、文書テーブルの場合には、１ページに３つのデータレコードが記録されている。また、データレコードのデータ量が大きい、着メロやフラッシュコンテンツの場合には、１ページに１データレコードのみが記録されている。
【００２８】
図５は、データレコードの実際のデータ構成例の概念図である。一例として、図５（ａ）に画像のデータレコードの構成例を、図５（ｂ）に着メロのデータレコードの構成例を示した。
画像のデータレコードの場合、図５（ａ）に示すように、その先頭に管理情報を含み、以下、Ｘサイズ、Ｙサイズ、タイトル、日付、ファイルＩＤの情報が含まれる。
【００２９】
管理情報は、本データレコードとそれ以外のデータレコードとの関連性を管理するための情報であり、データレコードが有効であるか無効であるかを示すフラグを含む。また、前後のデータレコードを示すポインタなどの情報を含んでいてもよい。
Ｘサイズは、対応する画像のＸ軸方向の画素数を示す情報である。
Ｙサイズは、対応する画像のＹ軸方向の画素数を示す情報である。
【００３０】
タイトルは、対応する画像データに付されたタイトル名である。
日付は、対応する画像データが撮影された日付、あるいは、携帯電話機１００に記録された日付を示す。
ファイルＩＤは対応する画像データそのものを指定するポインタである。
着メロのデータレコードの場合、図５（ｂ）に示すように、その先頭に管理情報を含み、以下、ファイルＩＤ、タイトル、歌手名、コンテンツ著作権、日付、サイズの情報が含まれる。
【００３１】
管理情報は、本データレコードとそれ以外のデータレコードとの関連性を管理するための情報であり、データレコードが有効であるか無効であるかを示すフラグを含む。また、前後のデータレコードを示すポインタなどの情報を含んでいてもよい。
ファイルＩＤは対応する着メロデータそのものを指定するポインタである。
タイトルは、対応する着メロデータに付されたタイトル名であり、通常は曲のタイトルである。
【００３２】
歌手名は、着メロの歌い手を示す情報である。
コンテンツ著作権は、着メロの著作権がいずれの団体もしくは個人に所属するかを示す情報である。
日付は、対応する着メロが携帯電話機１００に記録された日付を示す。
サイズは、対応する着メロの実際のデータ量を示す情報である。
【００３３】
図５（ａ）と（ｂ）との違いをみれば、データレコードの種別が異なれば、そのデータレコードのデータ量も異なることが認識できる。
図６は、データレコード容量表１５２の構成例を示したデータ概念図である。
データレコード容量表１５２は、データレコード種別欄６０１と、データレコード容量欄６０２とを含んで構成される。
【００３４】
データレコード種別欄６０１は、データベースシステムで扱うデータレコードの種別を示す情報を含む。
データレコード容量欄６０２は、各データレコードに対応して、それぞれの１つ分のデータレコードのデータ量を示す情報を含む。
例えば、着メロのデータレコードのデータ量は、１．８ＫＢとなっている。
【００３５】
次に図７は、データレコード件数表１５３の構成例を示したデータ概念図である。
データレコード件数表１５３は、テーブル種別欄７０１と、データレコード件数欄７０２とを含んで構成される。
テーブル種別欄７０１は、データベースシステムで扱うテーブルの種別を示す情報を含む。
【００３６】
データレコード件数欄７０２は、各テーブルに含まれるデータレコードの件数を示す情報を含む。
例えば、文書テーブルに含まれるデータレコードの件数は３８となっている。制御部１６０は、データレコード件数表１５３を参照することで記録されている総データレコード数を算出できる。
【００３７】
図８は、空ページ数管理表１５４の構成例を示したデータ概念図である。
空ページ数管理表１５４は、テーブル種別欄８０１と、空ページ件数欄８０２とを含んで構成される。
テーブル種別欄８０１は、データベースシステムで扱うテーブルの種別を示す情報を含む。
【００３８】
空ページ件数欄８０２は、各テーブルに含まれる空ページ数を示す情報を含む。
例えば、着メロテーブルに含まれる空ページ数は２３となっている。制御部１６０は、空ページ管理表１５４を参照することにより、空ページ数の総数を算出できる。
以上が、各表の説明である。
＜動作＞
次に、本実施形態の動作を図９〜図１１に示すフローチャートを用いて説明する。
【００３９】
まず、図９に示すフローチャートを用いて、データレコード追加時の携帯電話機１００の動作を説明する。
制御部１６０は、データレコードの追加を実行する指示を受け付ける（ステップＳ９０１）。
制御部１６０は、データレコード件数表１５３を参照し、記録されているデータレコード件数の総件数を算出する。そして算出した総数が５０００であるか否かを判定する（ステップＳ９０３）。
【００４０】
データレコード総件数が５０００でない場合には（ステップＳ９０３のＮＯ）、制御部１６０は、追加するデータレコードが対応するテーブルに空スペースがあるか否かを検索する（ステップＳ９０５）。
空スペースがある場合には（ステップＳ９０５のＹＥＳ）、テーブルの一番先頭に近い空スペースにデータレコードを追加する（ステップＳ９０７）。このとき制御部１６０は、データレコードを追加したことにより、空ページが減少したか否かを、各が保持するデータレコードの有無を示す情報に基づいて検出する（ステップＳ９１３）。
【００４１】
空ページが減少していた場合には（ステップＳ９１３のＹＥＳ）、制御部１６０は、空ページ管理表１５４の追加したデータレコードが属するテーブルの空ページ数を１減算して、空ページ管理表１５４を更新して（ステップＳ９１５）、処理を終了する。空ページが減少していなかった場合には（ステップＳ９１３のＮＯ）、そのまま処理を終了する。
空スペースがない場合には（ステップＳ９０５のＮＯ）、テーブルの最後尾に新たなページを確保して、データレコードを追加して（ステップＳ９０９）、処理を終了する。
【００４２】
ステップＳ９０３において、データレコード総件数が５０００件であった場合には（ステップＳ９０３のＹＥＳ）、制御部１６０は、表示部１４０にデータレコードが追加不可能であることを示すエラー情報を表示させて（ステップＳ９１１）、処理を終了する。
以上が、データレコードを追加する場合の携帯電話機１００の動作である。
ここから図１０に示すフローチャートを用いてデータレコードを削除するときの携帯電話機１００の動作を説明する。上述したようにデータレコードの削除とはテーブル上におけるデータレコードの無効化を指す。
【００４３】
制御部１６０は、データレコードを対応するテーブルの所属するページから無効化する（ステップＳ１００１）。
そして、制御部１６０は、無効化されたデータレコードの所属ページに含まれるデータレコードの全てが無効化されているか否かを、当該所属ページのデータレコードの管理情報を検出することで判定する（ステップＳ１００３）。
【００４４】
所属ページの全データレコードが無効化されていない場合には（ステップＳ１００３のＮＯ）、処理を終了する。
所属ページから全データレコードが無効化された場合には（ステップＳ１００３のＹＥＳ）、制御部１６０は、空ページ管理表１５４の対応するテーブルの空ページ数を１加算する（ステップＳ１００５）。
【００４５】
そして制御部１６０は、空ページ管理表１５４に記録されている空ページ数から空ページ数の総ページ数を算出する。そして合計空ページ数が１０１以上になっているか否かを判定する（ステップＳ１００７）。
合計空ページ数が１０１以上でない、即ち、１０１未満である場合には（ステップＳ１００７のＮＯ）、処理を終了する。
【００４６】
合計空ページ数が１０１以上である場合には、制御部１６０は、ガーベジコレクションを実行して（ステップＳ１００９）、処理を終了する。ガーベジコレクションの処理内容については後述する。
以上が携帯電話機１００のデータレコード無効化時の動作である。
最後に図１１に示すフローチャートを用いてガーベジコレクション実行時の携帯電話機１００の動作を説明する。
【００４７】
制御部１６０は、テーブルナンバー０１、即ち画像テーブルを対象にガーベジコレクションを実行する（ステップＳ１１０１）。
制御部１６０は、全テーブルにおいてガーベジコレクションを実行したか否かを検出する（ステップＳ１１０３）。これは、最後にガーベジコレクションの対象となったテーブルのテーブルナンバーが、データベースシステムに存在するテーブルの最高値になっているか否かによって検出できる。
【００４８】
全テーブルのガーベジコレクションを実行していない場合には（ステップＳ１１０３のＮＯ）、制御部１６０は、処理対象とするテーブルナンバーに１加算する（ステップＳ１１０５）。
そして加算して得られたテーブルナンバーを有するテーブルを対象にガーベジコレクションを実行して（ステップＳ１１０７）、ステップＳ１１０３の処理に戻る。
【００４９】
全テーブルのガーベジコレクションを実行していた場合には（ステップＳ１１０３のＹＥＳ）、処理を終了する。
最後にガーベジコレクションにおける再編成の一手順について図１２を用いて説明する。図１２にガーベジコレクションを実行前のテーブルと、ガーベジコレクションを実行後のテーブルとを示している。
【００５０】
本実施形態におけるガーベジコレクションでは、空ページを詰める処理を実行して、テーブルを再編成している。なお、空ページを詰める処理とは、空ページに属していたデータレコードのデータリンクを削除することであり、これにより、テーブルのデータ量としては小さくなり、その分だけメモリの容量を解放することができる。
以上、本実施形態に係る携帯電話機１００について説明してきたが、上述の構成を備えることにより、携帯電話機１００が搭載するデータベースシステムでは、通常のデータベースシステムで最初に確保されるデータ容量よりも少なくすることができる。というのも、従来においては各テーブルにデータベースシステムに記録可能な全データレコードを占有した場合に必要とするページ分の記憶容量を全テーブル分確保していたのに対し、本発明では、各テーブルについて、記録可能な全データレコードを占有した場合に必要とするページ数で、最も多くなるページ数分の記憶容量と閾値（本実施形態では１００ページ）ページ分の記憶容量とを確保するだけで済む。また、ガーベジコレクションをデータレコードを無効化するごとに行うのではなく、空ページ数が一定数以上に達したときにのみ実行することから、テーブルの再編成によるデータの書き換え頻度を抑制することができることから、メモリの耐用年数をより長くすることができる。
＜補足＞
上記実施形態において、本発明の実施の手法について説明してきたが、本発明の実施形態がこれに限られないことは勿論である。以下、上記実施形態以外に本発明の思想として含まれる各種の変形例について説明する。
（１）上記実施形態では、本発明に係る携帯通信端末として、携帯電話機を例に説明したが、携帯通信端末は、複数種類のデータの全データ件数を共有するデータベースシステムを実装可能な機器であればよく、例えばPDA（Personal Digital Assistants)などであってもよい。
（２）上記実施形態では、データレコードを追加する場合に、空スペースがあれば、そこに追加することとしたが、単純にテーブルの最後尾にデータレコードを追加する構成としてもよい。
（３）上記実施形態では、ガーベジコレクションを実行した場合の変化を図１２を用いて説明したが、これ以外の手法を用いてもよい。例えば、図１３の状態のようになるようにガーベジコレクションを実行してもよい。
【００５１】
図１２では、空ページには後続するデータレコードから順に前に詰めていく形でテーブルを再編成した場合を示したのに対し、図１３では、空ページには、最後尾のデータレコードから詰めていく形でテーブルを再編成した場合を示した。
（４）本実施形態において、説明に用いた数値は、一例であり、その他の数値であってもよい。例えば、データレコード総件数は、メモリ容量が十分にあるならば、１万件であってもよい。また、１ページの容量を２ＫＢとして説明したが、これも例えば４ＫＢであってもよい。
（５）上記実施形態において示したデータレコードの構成例は一例であり、その他の情報を含んでいてもよいし、あるいは、重要性の低い日付などの情報なしで構成してもよい。
（６）上記実施形態において、各データレコードの先頭に、データレコードが有効であるか否かを示すフラグを保持することとしたが、これは、各ページの先頭に、格納されているデータレコードが有効であるか否かを示すビットマップを保持する構成にしてもよい。
（７）上記実施形態において、テーブルの種別として、画像テーブル、着メロテーブル、フラッシュコンテンツテーブル、文書テーブル、Ｅメールテーブルの５種類を例示したが、テーブルの種別は、この５種に限定されない。その他のテーブル、例えば、ボイスレコーダテーブル、音楽テーブル、ムービーテーブルなど、携帯電話機１００で管理するデータに応じて、テーブルがあってよい。
（８）上記実施形態における制御部１６０は、ユーザ操作等に従ってデータレコードの追加や削除を行う際の制御を行うものであり、１データレコードの追加や削除の際に空ページ管理表１５４における空ページ件数を１減少又は１増加させておき、データ削除の際にその空ページ数管理表に基づいてガーベジコレクションを実行するか否かの判断を行ったが、空ページ数の計数結果を空ページ管理表１５４に保持していなくても、データ追加又は削除の都度、管理対象の全種類の管理用ファイルについて、空ページ数の合計値を算出して、この合計値が所定数を超えたならガーベジコレクションを実行するようにしてもよい。
（９）上記実施の形態において、ガーベジコレクションの実行のトリガとしての閾値を空ページ数１００ページとしたが、これは１００ページでなくともよく、例えば２００ページであってもよい。実際には、携帯通信端末の動作仕様に応じて、ガーベジコレクションを実行しても、通信機能など各種機能の動作に支障がでないようなページ数に設定される。
（１０）上記実施の形態の図９のステップＳ９０３において、データレコード総件数が既に５０００件になっていた場合にデータレコードを追加できない旨を示すエラー表示をする構成とした。しかし、データベースシステムにおいて同時に複数のデータレコードを登録することが可能であった場合には、以下に示す構成にしてもよい。
【００５２】
即ち、追加するデータレコードの件数と追加前のデータレコード総件数との和が５０００件を超える場合には、データレコードを追加できない旨を示すエラー表示を実行し、追加するデータレコードの件数と追加前のデータレコード総件数との和が５０００件を超えない場合には、データレコードを追加する構成としてもよい。また、追加するデータレコードの件数と追加前のデータレコード総件数との和が５０００件を超える場合であっても、追加可能な分のデータレコードについて、追加するデータレコードの中からユーザに必要なものを選択させてデータレコード総件数が５０００になるようにデータレコードを追加してもよい。
（１１）上述の実施形態で示したにガーベジコレクションの実行に係る動作、その開始処理等を携帯電話機等のプロセッサ、及びそのプロセッサに接続された各種回路に実行させるためのプログラムコードからなる制御プログラムを、記録媒体に記録すること、又は各種通信路等を介して流通させ頒布させることもできる。このような記録媒体には、ＩＣカード、ハードディスク、光ディスク、フレキシブルディスク、ＲＯＭ等がある。流通、頒布された制御プログラムはプロセッサに読み出され得るメモリ等に格納されることにより利用に供され、そのプロセッサがその制御プログラムを実行することにより、実施形態で示したような各種機能が実現されるようになる。
（１２）ここで、本発明に係る携帯通信端末が奏し得る効果について具体例を交えて説明する。
【００５３】
まず、データレコードの追加制御について、個々のデータを管理するためのデータレコードについて、データ種別を跨って、管理対象の複数のデータ種別の全てのデータレコードの総数が一定数以下である限りにおいて、データレコードが追加されるので、データ総件数について上限が定められた仕様が実現される。なお、一定数は設計に際して定められる値である。
【００５４】
また、複数のテーブルを有することについて、データ種別毎にデータレコードを構成する管理項目のサイズや数等が異なり得ること、つまりデータ種別毎にデータレコードのデータ構造が異なり得ることを前提としているため、データ種別毎に１つの管理用ファイルを有することは、データレコードの検索、追加、削除等の処理性能の向上に貢献している。
【００５５】
従って、例えば、上述のデータレコードの総数を定める一定数が５０００であるとし、所定数を１００とし、単位記録領域のサイズが例えば２キロバイト(ＫＢ)であって、この２ＫＢには、各データ種別のデータレコードのうち最大サイズのものなら、１個だけ格納できるとしたならば、各管理用ファイル用として確保が必要な単位記録領域の全体での総サイズは、およそ２ＫＢ×５０００＋２ＫＢ×１００あれば足りることが保証されるようになる。
【００５６】
なお、静止画像データの管理用ファイルと動画像データの管理用ファイルと音楽データの管理用ファイルとが管理対象であると仮定すると、例えば携帯通信端末に静止画像データを４９００件、動画像データを５０件、音楽データを５０件、記録させるユーザや、静止画像データを５０件、動画像データを５０件、音楽データを４９００件記録させるユーザや様々なユーザがいることが想定される。このことに対応するために、携帯通信端末において各種データの管理のために、例えば各々について想定される最大件数である４９００件分のデータレコードを静止画像データ、動画像データ、音楽データのそれぞれ用に記録、つまり４９００件の３倍分を記録するための記録領域を確保する方式も考えられる。このような方式に比べて、本発明に係る携帯通信端末は、ユーザの利用するデータが様々であることに鑑みれば、データの管理をするために比較的少ない記録領域の確保で足りるという効果を奏する。つまり、本発明に係る携帯通信端末では、各種データを管理するために、各種データの合計として想定される最大件数である５０００件分のデータレコードを記録するための記録容量と、上述の削除を高速化する等のために無効なデータレコードに対応付けられることとなる記録容量とに相当する記録領域だけでデータを管理することができる。
【００５７】
また、データレコードの追加と削除の及びガーベジコレクションの実行制御において、無効であることが示されているデータレコードが記録された記録部分へ追加すべきデータレコードを上書きすることなく、新たにファイルとして使用されていない状態の単位記録領域を管理用ファイルの内容を記録するために確保して当該単位記録領域へ追加すべきデータレコードを記録する方式と比べれば、データレコードの追加と削除とが何度も繰り返される場合において、ファイルの再編成を行う頻度を下げることができ、この結果、ファイルの再編成が頻発することによる処理性能の低下を防止し、また、ファイルの再編成処理の実行回数を削減することにより携帯通信端末の電力消費を抑制することができるようになる。
【産業上の利用可能性】
【００５８】
本発明に係る携帯通信端末は、各種データを記録し管理するための携帯電話機として活用することができる。
【図面の簡単な説明】
【００５９】
【図１】携帯電話機１００の外観図である。
【図２】携帯電話機１００の機能構成を示した機能ブロック図である。
【図３】本実施形態において用いる用語の説明のための図である。
【図４】データベースシステムにおける各テーブルへのデータレコード格納イメージである。
【図５】（ａ）は、画像データレコードの内容を説明するための図である。（ｂ）は、着メロデータレコードの内容を説明するための図である。
【図６】各データレコードの１データレコード分の容量を示すデータレコード容量表１５２である。
【図７】各テーブルにおける全データレコード件数を示すデータレコード件数表１５３である。
【図８】各テーブルにおける空ページ数を示す空ページ管理表１５４である。
【図９】データレコードを追加したときの携帯電話機１００の動作を示すフローチャートである。
【図１０】データレコードを無効化したときの携帯電話機１００の動作を示すフローチャートである。
【図１１】ガーベジコレクションを全テーブルを対象として実行する携帯電話機１００の動作を示すフローチャートである。
【図１２】ガーベジコレクションを実行したときのテーブルの変化を示す一具体例である。
【図１３】ガーベジコレクションを実行したときのテーブルの変化を示す一具体例である。
【符号の説明】
【００６０】
１００  携帯電話機
１１０  通信部
１１１  アンテナ
１２０  操作部
１３０  音声処理部
１３１  マイク
１３２  スピーカー
１４０  表示部
１５０  記憶部
１５１  各種テーブル
１５２  データレコード容量表
１５３  データレコード件数表
１５４  空ページ管理表
１６０  制御部
【図１】
0005213466.tif 000002
【図２】
0005213466.tif 000003
【図３】
0005213466.tif 000004
【図４】
0005213466.tif 000005
【図５】
0005213466.tif 000006
【図６】
0005213466.tif 000007
【図７】
0005213466.tif 000008
【図８】
0005213466.tif 000009
【図９】
0005213466.tif 000010
【図１０】
0005213466.tif 000011
【図１１】
0005213466.tif 000012
【図１２】
0005213466.tif 000013
【図１３】
0005213466.tif 000014