(57)【要約】【課題】  書き換え回数に制限のある記録媒体のＦＡＴ部分の書き換え回数が制限回数に達したことを簡便に検出してＦＡＴを移動することで記録媒体の長寿命化を図る。【解決手段】  記録媒体２０５には、ＦＡＴ（ファイル割り当てテーブル）２２３の場所を指すポインタ２２１が記録され、また、ＦＡＴ２２３内の先頭箇所にＦＡＴ２２３の書き換え回数２２２が記録される。デバイスドライバ２１０のファイル更新手段２１２は、要求されたファイルに対する処理でＦＡＴ２２３の更新が必要になる場合、ポインタ２２１が指す場所に置かれたＦＡＴ２２３内の書き換え回数２２２が、予め定められた回数に達しているかどうかを判定する。そして、予め定められた回数に達しているときは、ＦＡＴ２２３を空いている別の場所に移動し、ポインタ２２１を更新すると共に移動後のＦＡＴ２２３内の書き換え回数２２２を１回書き換えられた値に設定し直す。【選択図】 図２
2005227919.tif 000002
【特許請求の範囲】
【請求項１】
書き換え回数に制限のある記録媒体にファイルを記録する方法において、
ファイル割り当てテーブルが置かれている場所を指し示すポインタを前記記録媒体の所定の位置に記録すると共に、前記ファイル割り当てテーブル内の所定の箇所に前記ファイル割り当てテーブルの書き換え回数を記録し、
前記ファイル割り当てテーブルを更新する毎に前記書き換え回数を更新し、予め定められた回数に達したときに、前記ファイル割り当てテーブルを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ファイル割り当てテーブル内の前記書き換え回数を初期化することを特徴とするファイル記録方法。
【請求項２】
前記ファイル割り当てテーブルを移動させる場所を前記ファイル割り当てテーブルで管理されている空き領域から検索することを特徴とする請求項１記載のファイル記録方法。
【請求項３】
書き換え回数に制限のある記録媒体にファイルを記録するファイルシステムにおいて、
前記記録媒体は、ファイル割り当てテーブルが置かれている場所を指し示すポインタが所定の位置に記録されていると共に、前記ポインタが指し示す場所に置かれた前記ファイル割り当てテーブル内の所定の箇所に前記ファイル割り当てテーブルの書き換え回数が記録されており、かつ、
前記ファイル割り当てテーブルを更新する毎に前記書き換え回数を更新し、予め定められた回数に達したときに、前記ファイル割り当てテーブルを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ファイル割り当てテーブル内の前記書き換え回数を初期化するデバイスドライバを備えることを特徴とするファイルシステム。
【請求項４】
書き換え回数に制限のある記録媒体にファイルを記録するファイルシステムにおいて、
ボリューム初期化手段とファイル更新手段とを有するデバイスドライバを備え、
前記ボリューム初期化手段は、前記記録媒体の所定の位置に記録されているポインタが指し示す場所に置かれたファイル割り当てテーブル内の所定の箇所に記録されている前記ファイル割り当てテーブルの書き換え回数が、予め定められた回数に達しているかどうかを判定し、前記書き換え回数が前記予め定められた回数に達しているときに、前記ファイル割り当てテーブルを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ファイル割り当てテーブル内の前記書き換え回数を初期化し且つファイルに対するクラスタチェーンが無い状態に初期設定するものであり、
前記ファイル更新手段は、要求されたファイルに対する処理でファイル割り当てテーブルの更新が必要になる場合、前記記録媒体の所定の位置に記録されているポインタが指し示す場所に置かれた前記ファイル割り当てテーブル内の所定の箇所に記録されている前記ファイル割り当てテーブルの書き換え回数が、予め定められた回数に達しているかどうかを判定し、前記書き換え回数が前記予め定められた回数に達しているときに、前記ファイル割り当てテーブルを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ファイル割り当てテーブル内の前記書き換え回数を１回書き換えられた値に設定するものであることを特徴とするファイルシステム。
【請求項５】
ファイル割り当てテーブルを移動させる場所を前記ファイル割り当てテーブルで管理されている空き領域から検索することを特徴とする請求項３または４記載のファイルシステム。
【請求項６】
書き換え回数に制限のある記録媒体の記憶域を初期化するボリューム初期化方法において、
前記記録媒体の所定の位置に記録されているポインタが指し示す場所に置かれたファイル割り当てテーブル内の所定の箇所に記録されている前記ファイル割り当てテーブルの書き換え回数が、予め定められた回数に達しているかどうかを判定し、
前記書き換え回数が前記予め定められた回数に達しているときに、前記ファイル割り当てテーブルを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ファイル割り当てテーブル内の前記書き換え回数を初期化し且つファイルに対するクラスタチェーンが無い状態に初期設定することを特徴とするボリューム初期化方法。
【請求項７】
前記ファイル割り当てテーブルを移動させる場所を前記ファイル割り当てテーブルで管理されている空き領域から検索することを特徴とする請求項６記載のボリューム初期化方法。
【請求項８】
書き換え回数に制限のある記録媒体の記憶域に記録されたファイルを更新するファイル更新方法において、
要求されたファイルに対する処理でファイル割り当てテーブルの更新が必要になる場合、前記記録媒体の所定の位置に記録されているポインタが指し示す場所に置かれた前記ファイル割り当てテーブル内の所定の箇所に記録されている前記ファイル割り当てテーブルの書き換え回数が、予め定められた回数に達しているかどうかを判定し、
前記書き換え回数が前記予め定められた回数に達しているときに、前記ファイル割り当てテーブルを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ファイル割り当てテーブル内の前記書き換え回数を１回書き換えられた値に設定することを特徴とするファイル更新方法。
【請求項９】
前記ファイル割り当てテーブルを移動させる場所を前記ファイル割り当てテーブルで管理されている空き領域から検索することを特徴とする請求項８記載のファイル更新方法。
【請求項１０】
書き換え回数に制限のある記録媒体にファイルを記録するコンピュータを、ボリューム初期化手段とファイル更新手段とを有するデバイスドライバとして機能させるプログラムであり、
前記ボリューム初期化手段は、前記記録媒体の所定の位置に記録されているポインタが指し示す場所に置かれたファイル割り当てテーブル内の所定の箇所に記録されている前記ファイル割り当てテーブルの書き換え回数が、予め定められた回数に達しているかどうかを判定し、前記書き換え回数が前記予め定められた回数に達しているときに、前記ファイル割り当てテーブルを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ファイル割り当てテーブル内の前記書き換え回数を初期化し且つファイルに対するクラスタチェーンが無い状態に初期設定するものであり、
前記ファイル更新手段は、要求されたファイルに対する処理でファイル割り当てテーブルの更新が必要になる場合、前記記録媒体の所定の位置に記録されているポインタが指し示す場所に置かれた前記ファイル割り当てテーブル内の所定の箇所に記録されている前記ファイル割り当てテーブルの書き換え回数が予め定められた回数に達しているかどうかを判定し、前記書き換え回数が前記予め定められた回数に達しているときに、前記ファイル割り当てテーブルを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ファイル割り当てテーブル内の前記書き換え回数を１回書き換えられた値に設定するものであることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はファイル記録方法およびファイルシステムに関し、特に書き換え回数に制限のある記録媒体にファイルを記録する方法とシステムに関する。
【背景技術】
【０００２】
ファイル割り当てテーブル（File Allocation Table：以下、ＦＡＴと称す）を用いて記録媒体上のファイルを管理するファイルシステムにおいては、図９に示すように、記録媒体９００の固定的な位置にＦＡＴ９０１を配置し、ボリュームの初期化時やファイルの作成、更新、削除時に、ＦＡＴ９０１を更新している。ＦＡＴ９０１には、記録媒体９００の記憶域９０４の空き状況やファイル本体９０３の連鎖状況が記録されている。記憶域の基本単位はブロックあるいはクラスタと呼ばれ、１つ以上のセクタから構成される。記憶域９０４の空き状況はクラスタ単位で管理される。また、ファイル本体９０３の連鎖状況は、ファイルに対するクラスタチェーン９０２によって管理される。
【０００３】
このようなＦＡＴを用いたファイルシステムにおいて、記録媒体９００として、フラッシュメモリやＣＤ−ＲＷなどのように書き換え回数に制限のある記録媒体を使用した場合、ファイル本体９０３に比べてＦＡＴ９０１に対する書き換え頻度が格段に高くなり、その結果としてＦＡＴ９０１部分の寿命が他の領域より早く尽き、記録媒体９００を長期間使用することができなくなる問題がある。そこで、このような記録媒体の寿命を延ばす方法が特許文献１に提案されている。
【０００４】
特許文献１に記載される方法では、現在使用しているＦＡＴが書き換え制限回数に達したかどうかを、ＦＡＴブロックを再生してエラー訂正検出符号から生成したエラーシンドロームによって検出したエラー情報が所定の基準値以上かどうか、すなわちＦＡＴブロックが不良かどうかによって判定し、ＦＡＴブロックが不良であれば、未使用領域に新たにＦＡＴを作成して利用するようにしている。また、最新のＦＡＴがどれであるかは、データ領域の前端から順にサーチする、或いは古いＦＡＴには特定パターンを記録しておいて特定パターンの検出されないＦＡＴをサーチするといった方法を採用している。
【特許文献１】特開昭６３−３０４４６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載される従来技術では、現在使用しているＦＡＴが書き換え制限回数に達したかどうかを、ＦＡＴブロックを再生してエラー訂正検出符号から生成したエラーシンドロームによって検出したエラー情報が所定の基準値以上に達するほどにＦＡＴブロックが不良になっているかどうかによって判定している。これは、できるだけ長い時間にわたり同じＦＡＴを使い続けようとするものであるが、処理が複雑になり、通常のファイル更新処理の速度が低下する。また不良を検出してからでは手遅れになる危険性が高く、最悪の場合にはシステムダウンを招いてしまう。さらに、最新のＦＡＴがどれであるかを、データ領域の前端から順にサーチする、或いは古いＦＡＴには特定パターンを記録しておいて特定パターンの検出されないＦＡＴをサーチするといった方法で検出するため、最新のＦＡＴにたどり着くまでに時間がかかり、これもファイル更新の処理速度を低下させる要因となる。
【０００６】
そこで本発明の目的は、書き換え回数に制限のある記録媒体に記録されたＦＡＴ部分の書き換え回数が制限回数に達したことを簡便に検出して別の領域にＦＡＴを移動することで記録媒体の長寿命化を図り、かつ、移動後のＦＡＴの位置を即検出できるようにすることにある。
【課題を解決するための手段】
【０００７】
本発明のファイル記録方法は、書き換え回数に制限のある記録媒体にファイルを記録する方法において、
ＦＡＴが置かれている場所を指し示すポインタを前記記録媒体の所定の位置に記録すると共に、前記ＦＡＴ内の所定の箇所に前記ＦＡＴの書き換え回数を記録し、
前記ＦＡＴを更新する毎に前記書き換え回数を更新し、予め定められた回数に達したときに、前記ＦＡＴを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ＦＡＴ内の前記書き換え回数を初期化することを特徴とする。
【０００８】
本発明の第１のファイルシステムは、書き換え回数に制限のある記録媒体にファイルを記録するファイルシステムにおいて、
前記記録媒体は、ＦＡＴが置かれている場所を指し示すポインタが所定の位置に記録されていると共に、前記ポインタが指し示す場所に置かれた前記ＦＡＴ内の所定の箇所に前記ＦＡＴの書き換え回数が記録されており、かつ、
前記ＦＡＴを更新する毎に前記書き換え回数を更新し、予め定められた回数に達したときに、前記ＦＡＴを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ＦＡＴ内の前記書き換え回数を初期化するデバイスドライバを備えることを特徴とする。
【０００９】
本発明の第２のファイルシステムは、書き換え回数に制限のある記録媒体にファイルを記録するファイルシステムにおいて、
ボリューム初期化手段とファイル更新手段とを有するデバイスドライバを備え、
前記ボリューム初期化手段は、前記記録媒体の所定の位置に記録されているポインタが指し示す場所に置かれたＦＡＴ内の所定の箇所に記録されている前記ＦＡＴの書き換え回数が、予め定められた回数に達しているかどうかを判定し、前記書き換え回数が前記予め定められた回数に達しているときに、前記ＦＡＴを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ＦＡＴ内の前記書き換え回数を初期化し且つファイルに対するクラスタチェーンが無い状態に初期設定するものであり、
前記ファイル更新手段は、要求されたファイルに対する処理でＦＡＴの更新が必要になる場合、前記記録媒体の所定の位置に記録されているポインタが指し示す場所に置かれた前記ＦＡＴ内の所定の箇所に記録されている前記ＦＡＴの書き換え回数が、予め定められた回数に達しているかどうかを判定し、前記書き換え回数が前記予め定められた回数に達しているときに、前記ＦＡＴを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ＦＡＴ内の前記書き換え回数を１回書き換えられた値に設定するものであることを特徴とする。
【００１０】
本発明のボリューム初期化方法は、書き換え回数に制限のある記録媒体の記憶域を初期化するボリューム初期化方法において、
前記記録媒体の所定の位置に記録されているポインタが指し示す場所に置かれたＦＡＴ内の所定の箇所に記録されている前記ＦＡＴの書き換え回数が、予め定められた回数に達しているかどうかを判定し、
前記書き換え回数が前記予め定められた回数に達しているときに、前記ＦＡＴを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ＦＡＴ内の前記書き換え回数を初期化し且つファイルに対するクラスタチェーンが無い状態に初期設定することを特徴とする。
【００１１】
本発明のファイル更新方法は、書き換え回数に制限のある記録媒体の記憶域に記録されたファイルを更新するファイル更新方法において、
要求されたファイルに対する処理でＦＡＴの更新が必要になる場合、前記記録媒体の所定の位置に記録されているポインタが指し示す場所に置かれた前記ＦＡＴ内の所定の箇所に記録されている前記ＦＡＴの書き換え回数が、予め定められた回数に達しているかどうかを判定し、
前記書き換え回数が前記予め定められた回数に達しているときに、前記ＦＡＴを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ＦＡＴ内の前記書き換え回数を１回書き換えられた値に設定することを特徴とする。
【００１２】
本発明のプログラムは、書き換え回数に制限のある記録媒体にファイルを記録するコンピュータを、ボリューム初期化手段とファイル更新手段とを有するデバイスドライバとして機能させるプログラムであり、
前記ボリューム初期化手段は、前記記録媒体の所定の位置に記録されているポインタが指し示す場所に置かれたＦＡＴ内の所定の箇所に記録されている前記ＦＡＴの書き換え回数が、予め定められた回数に達しているかどうかを判定し、前記書き換え回数が前記予め定められた回数に達しているときに、前記ＦＡＴを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ＦＡＴ内の前記書き換え回数を初期化し且つファイルに対するクラスタチェーンが無い状態に初期設定するものであり、
前記ファイル更新手段は、要求されたファイルに対する処理でＦＡＴの更新が必要になる場合、前記記録媒体の所定の位置に記録されているポインタが指し示す場所に置かれた前記ＦＡＴ内の所定の箇所に記録されている前記ＦＡＴの書き換え回数が予め定められた回数に達しているかどうかを判定し、前記書き換え回数が前記予め定められた回数に達しているときに、前記ＦＡＴを別の場所に移動し、前記ポインタを更新すると共に移動後の前記ＦＡＴ内の前記書き換え回数を１回書き換えられた値に設定するものであることを特徴とする。
【００１３】
ここで、ＦＡＴを移動させる場所は、ＦＡＴで管理されている空き領域から検索するようにして良い。
【発明の効果】
【００１４】
本発明によれば、書き換え回数に制限のある記録媒体に記録されたＦＡＴ部分の書き換え回数が制限回数に達したことを簡便に検出して、記録媒体の長寿命化を図るために別の場所に移動することが可能である。その理由は、ＦＡＴの書き換え毎に更新される書き換え回数がＦＡＴ内に記録されているため、その書き換え回数を制限回数と比較するだけで、書き換え回数が制限回数に達しているかどうか検出できるからである。
【００１５】
また本発明によれば、ＦＡＴを移動させても最新のＦＡＴの位置を即検出することができ、ＦＡＴをアクセスする際の処理速度の低下を防止できる。その理由は、最新のＦＡＴが置かれている場所を指し示すポインタが、記録媒体の所定の位置に記録されており、そのポインタを辿れば良いからである。
【発明を実施するための最良の形態】
【００１６】
図１を参照すると、本実施の形態のファイルシステムで使用する記録媒体１００は、フラッシュメモリやＣＤ−ＲＷ等に代表されるような書き換え回数に制限のある記録媒体であり、記憶領域１０２の先頭にＦＡＴ先頭ポインタ１０１を持つ。ＦＡＴ先頭ポインタ１０１は、ＦＡＴ１０４を指す。ＦＡＴ１０４の先頭には、書き換え回数１０３が記録されている。
【００１７】
本実施の形態のファイルシステムは、ＦＡＴ１０４を更新する毎に書き換え回数１０３をインクリメントする。そして書き換え回数１０３が、記録媒体１００の特性により決定される書き換え回数の上限値に応じて予め定められた閾値に達すると、ＦＡＴ１０４を記憶領域１０２の別の領域に移動させ、移動後のＦＡＴ１０４の先頭に記録される書き換え回数１０３を初期化すると共に、移動後のＦＡＴの位置を示すようにＦＡＴ先頭ポインタ１０１を更新する。
【００１８】
このようにして、更新の集中するＦＡＴを書き換え回数に応じて動的に移動することにより、書き換え回数が高々数千回といった特性を持つ記録媒体１００であっても、その寿命を実質的に延ばすことが可能となる。また、現在のＦＡＴ１０４の書き換え回数が制限を越えたかどうかは、ＦＡＴを更新する毎に書き換え回数１０３を更新して閾値と比較する単純な処理であるため、通常のファイルアクセスの処理にほとんど影響がなく、処理速度の低下を防止できる。また、ファイル１０４が別の場所に移動しても、ＦＡＴ先頭ポインタ１０１によってその位置を即認識できる。
【実施例１】
【００１９】
図２を参照すると、本発明を適用したコンピュータシステムの一例は、少なくともＣＰＵを有するコンピュータ２０１と、これに信号線２０３により接続された記憶装置２０２とを含んで構成され、記憶装置２０２には、書き換え回数に制限のある可搬型の記録媒体２０５が装填されており、コンピュータ２０１には、記憶装置２０２用のデバイスドライバ２１０が設けられている。
【００２０】
記録媒体２０５の記憶域２２０には、記憶域２２０全体の空き状況及びファイルの配置を示すＦＡＴ２２３、最新のＦＡＴ２２３の位置を示すＦＡＴ先頭ポインタ２２１、ＦＡＴ２２３により管理されるファイル本体２２５が記録されている。ＦＡＴ２２３には、その先頭部分に当該ＦＡＴ２２３の更新回数を示す書き換え回数２２２が記録される。また、ＦＡＴ２２３は、ファイルに対するクラスタチェーン２２４によって、ファイルのクラスタの連鎖を管理している。
【００２１】
デバイスドライバ２１０は、ボリューム初期化手段２１１とファイル更新手段２１２とを含んでいる。ボリューム初期化手段２１１は、記録媒体２０５の記憶域２２０全体を、本発明のファイルシステムに適合した形式に初期化する機能を有する。ファイル更新手段２１２は、図示しないオペレーティングシステムやアプリケーションプログラム等からの要求に従って、記録媒体２０５の記憶域２２０上にファイルを作成したり、作成したファイルを削除あるいは更新する機能に加えて、ＦＡＴ２２３を更新する毎に、書き換え回数２２２を１だけインクリメントし、書き換え回数２２２が予め定められた一定数に達した場合、ＦＡＴ２２３を記憶域２２０の別の場所へ移動し、ＦＡＴ先頭ポインタ２２１を更新する機能を有する。
【００２２】
プログラム記録媒体２０６は、磁気ディスクなどのコンピュータ可読記録媒体であり、制御プログラムが記録されている。プログラム記録媒体２０６に記録された制御プログラムは、コンピュータ２０１の起動時などにコンピュータ２０１に読み取られ、コンピュータ２０１の動作を制御することにより、コンピュータ２０１上にデバイスドライバ２１０を実現する。
【００２３】
次に、各図を参照して本実施例の動作について詳細に説明する。
【００２４】
記録媒体２０５の記憶域２２０全体をフォーマットする際には、デバイスドライバ２１０のボリューム初期化手段２１１が実行される。ボリューム初期化手段２１１の処理の詳細を図３のフローチャートに示す。
【００２５】
図３を参照すると、ボリューム初期化手段２１１は、まず記録媒体２０５の記憶域２２０の状態が本ファイルシステムのボリューム初期化手段２１１で初期化されているかどうかを判定する（ステップＡ１）。この判定は、例えば、状態を識別するシグネチャ等を記録媒体２０５の記憶域２２０のどこかに格納しておくことによって実現することができる。
【００２６】
記録媒体２０５の記憶域２２０が、ボリューム初期化手段２１１で初期化されたものでない場合、ＦＡＴ２２３を記憶域２２０における利用可能な最初のクラスタに設定する（ステップＡ１０）。次に、ＦＡＴ先頭ポインタ２２１にＦＡＴ２２３が設定された前記クラスタの番号を設定する（ステップＡ７）。次にＦＡＴ２２３の先頭にある書き換え回数２２２を０に初期化する（ステップＡ８）。最後に、ＦＡＴ２２３の残りの領域を未使用状態（ファイルに対するクラスタチェーン２２４がない状態）に初期化する（ステップＡ９）。この場合に作成される記録媒体の状態を図５に示す。この例では、ＦＡＴ２２３はＦＡＴ先頭ポインタ２２１の直後に設けられている。
【００２７】
また、ステップＡ１にて、記憶域２２０がボリューム初期化手段２１１で初期化されたものであると判定された場合、ボリューム初期化手段２１１は、ＦＡＴ先頭ポインタ２２１が指し示す先に位置するＦＡＴ２２３の先頭に記録された書き換え回数２２２を読み取り、規定回数に達しているかどうかを判定する（ステップＡ２）。事前に判定しておく理由は、以降のステップＡ９においてＦＡＴ２２３の書き換えが発生するためである。
【００２８】
書き換え回数２２２が規定回数に達していない場合、ボリューム初期化手段２１１は、書き換え回数２２２を１だけカウントアップし（ステップＡ５）、ＦＡＴ２２３の残りの領域を未使用状態（ファイルに対するクラスタチェーン２２４がない状態）に設定する（ステップＡ９）。この場合に作成される記録媒体の状態を図６に示す。図５との違いは、書き換え回数２２２の値が１になっている事のみである。
【００２９】
他方、書き換え回数２２２が規定回数に達していた場合、ボリューム初期化手段２１１は、ＦＡＴ２２３の移動先の空き領域（空きクラスタ）を、ＦＡＴ２２３自身で管理する未使用領域から検索する（ステップＡ３）。移動可能な未使用領域が存在しない場合、ボリューム初期化手段２１１は、今回のＦＡＴ２２３の移動を断念し、書き換え回数２２２をカウントアップし（ステップＡ５）、ＦＡＴ２２３の残りの領域を未使用状態（ファイルに対するクラスタチェーン２２４がない状態）に初期化する（ステップＡ９）。この結果、図６と同様、書き換え回数２２２の値がカウントアップされたＦＡＴ２２３が作成される。
【００３０】
移動可能な空き領域が存在する場合、ボリューム初期化手段２１１は、ＦＡＴ２２３を空き領域のクラスタに移動し（ステップＡ６）、移動先のクラスタ番号をＦＡＴ先頭ポインタ２２１に設定する（ステップＡ７）。次に、移動先のＦＡＴ２２３の先頭に記録されている書き換え回数２２２を０に初期化し（ステップＡ８）、ＦＡＴ２２３の残りの領域を未使用状態（ファイルに対するクラスタチェーン２２４がない状態）に設定する（ステップＡ９）。この結果作成される記録媒体の状態を図７に示す。
【００３１】
次に、デバイスドライバ２１０のファイル更新手段２１２の処理の詳細を図４のフローチャートを参照して説明する。
【００３２】
ファイル更新手段２１２は、記録媒体２０５の記憶域２２０上に、ファイルを作成する要求があった際、及び作成したファイルを更新あるいは削除する要求があった際に利用される。これらの要求が発生すると、まずファイル更新手段２１２は、その要求を処理することによってファイル２２３の内容に影響を与えるか否かを判断する（ステップＢ１）。影響を与えるかどうかの判断とは、その要求を処理するとＦＡＴ２２３の更新が必要になるかどうかを判断することであり、次のように判断される。ファイルの作成と削除は、ＦＡＴ２２３の更新が必ず必要である。ファイルの更新では、更新した結果のファイルが現在使用しているクラスタに収まらず、新たなクラスタを必要とする場合にＦＡＴ２２３の更新が必要となる。
【００３３】
判定の結果、ＦＡＴ２２３に影響を与えない場合、ファイル更新手段２１２は、通常のファイルの作成、更新、削除にかかる更新処理を実行し（ステップＢ９）、処理を終了する。ステップＢ１においてＦＡＴに影響を与えると判断された場合、このステップＢ９においてＦＡＴ２２３が更新されることになる。
【００３４】
ステップＢ１の判定の結果、ＦＡＴ２２３に影響を与えると判断した場合、ファイル更新手段２１２は、ＦＡＴ先頭ポインタ２２１が指し示す先に位置するＦＡＴ２２３の先頭に記録された書き換え回数２２２を読み取り、規定回数に達しているかどうかを判定する（ステップＢ２）。判定の結果、規定の回数に達していない場合、書き換え回数２２２を１だけカウントアップし（ステップＢ５）、通常のファイルの更新処理を実行し（ステップＢ９）、処理を終了する。
【００３５】
ステップＢ２の判定の結果、規定の回数に達していれば、ファイル更新手段２１２は、ＦＡＴ２２３の移動先の空き領域（空きクラスタ）を、ＦＡＴ２２３自身が管理する未使用領域から検索する（ステップＢ３）。そして、移動可能な空き領域（空きクラスタ）が存在しない場合、ファイル更新手段２１２は、今回のＦＡＴ２２３の移動を断念し、書き換え回数２２２を１だけカウントアップし（ステップＢ５）、通常のファイルの更新処理を実行し（ステップＢ９）、処理を終了する。
【００３６】
他方、移動可能な空き領域が存在する場合、ファイル更新手段２１２は、ＦＡＴ２２３を空き領域のクラスタに移動し（ステップＢ６）、移動先のクラスタ番号をＦＡＴ先頭ポインタ２２１に設定する（ステップＢ７）。次にファイル更新手段２１２は、移動先のＦＡＴ２２３の先頭に記録されている書き換え回数２２２を１に設定し（ステップＢ８）、通常のファイルの更新処理を実行し（ステップＢ９）、処理を終了する。
【００３７】
ファイルの更新において、ＦＡＴ２２３の移動が発生した場合の記録媒体２０５の記憶域２２０の状態の変化を図８に示す。同図（ａ）がＦＡＴ移動前の状態、同図（ｂ）がＦＡＴ移動後の状態である。ボリューム初期化時における図３のステップＡ９のようなファイルに対するクラスタチェーンの初期化処理は実行されないため、作成済のファイル本体２２５へのクラスタチェーンはＦＡＴ２２３移動前後にわたって維持される。
【００３８】
このように本実施例によれば、フラッシュメモリやＣＤ−ＲＷなどのように書き換え回数に制限のある可搬型記録媒体の寿命を延長することができる。その理由は、更新の集中するＦＡＴを更新回数に応じて動的に移動するためである。
【００３９】
また本実施例によれば、ＦＡＴの移動先となる空き領域をＦＡＴ自身で管理している空き領域から検索するため、ＦＡＴ移動用に特別な空き領域を確保しておく必要がない。但し、ＦＡＴ移動用に特別な空き領域を確保せず、ＦＡＴ自身で管理される空き領域からＦＡＴの移動先となる空き領域を確保すると、確保した空き領域が過去にファイル本体などに割り当てられて何度か書き換えられている可能性がある。しかし、一般にファイル本体の書き換え頻度はＦＡＴに比べて格段に少ないので、影響は小さいと考えられる。また、２度目以降のＦＡＴの移動時、過去にＦＡＴ領域として使用された領域が空いていると、その領域がＦＡＴの移動先に確保される可能性があるため、ＦＡＴ領域として使い終えたクラスタは不良クラスタとして割り当て対象から除外するか、ＦＡＴの移動先となる空き領域を現在のＦＡＴの後端以降から検索するなどの対策が講じることが望ましい。
【図面の簡単な説明】
【００４０】
【図１】本発明の実施の形態で使用する記録媒体の状態を示す図である。
【図２】本発明を適用したコンピュータシステムの一例のブロック図である。
【図３】本発明を適用したコンピュータシステムが備えるデバイスドライバのボリューム初期化手段の処理例を示すフローチャートである。
【図４】本発明を適用したコンピュータシステムが備えるデバイスドライバのファイル更新手段の処理例を示すフローチャートである。
【図５】本発明によって最初にボリューム初期化したときの記録媒体の状態を示す図である。
【図６】本発明によって２度目にボリューム初期化したときの記録媒体の状態を示す図である。
【図７】ボリューム初期化時にＦＡＴの移動が発生したときの記録媒体の状態を示す図である。
【図８】ファイル更新時にＦＡＴの移動が発生したときのＦＡＴ移動前後の記録媒体の状態を示す図である。
【図９】ＦＡＴを有する従来の記録媒体の状態を示す図である。
【符号の説明】
【００４１】
１００…記録媒体
１０１…ＦＡＴ先頭ポインタ
１０２…記憶域
１０３…書き換え回数
１０４…ＦＡＴ
２０１…コンピュータ
２０２…記憶装置
２０３…信号線
２０５…記録媒体
２０６…プログラム記録媒体
２１０…デバイスドライバ
２１１…ボリューム初期化手段
２１２…ファイル更新手段
２２０…記憶域
２２１…ＦＡＴ先頭ポインタ
２２２…書き換え回数
２２３…ＦＡＴ
２２４…ファイルに対するクラスタチェーン
２２５…ファイル本体
【図１】
2005227919.tif 000003
【図２】
2005227919.tif 000004
【図３】
2005227919.tif 000005
【図４】
2005227919.tif 000006
【図５】
2005227919.tif 000007
【図６】
2005227919.tif 000008
【図７】
2005227919.tif 000009
【図８】
2005227919.tif 000010
【図９】
2005227919.tif 000011