(57)【要約】【課題】  ファイルを保存する記憶装置とは別の記憶装置を用いずに、ファイルの更新を不可分に行う。【解決手段】  更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを作成し、バックアップファイルにデータファイルのデータをコピーし、バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、データフラグファイルを削除し、データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、バックアップファイル及びバックアップフラグファイルを削除するデータファイル更新部１４２と、データファイル、データフラグファイル、バックアップファイル及びバックアップフラグファイルの存在パターンからデータファイルの復旧処理を行うデータファイル復旧部１４３とを備える。【選択図】      図１
2005078368.tif 000002
【特許請求の範囲】
【請求項１】
種々のファイルを記憶する記憶手段と、
記憶対象のデータからなるデータファイルを前記記憶手段に作成し、当該データファイルとファイル名によって関連付けられデータフラグファイルを前記記憶手段に作成するデータファイル作成手段と、
更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを前記記憶手段に作成し、当該バックアップファイルに前記データファイルのデータをコピーし、前記バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、前記データフラグファイルを削除し、前記データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップファイル及び前記バックアップフラグファイルを削除するデータファイル更新手段と、
前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧手段としてコンピュータを機能させることを特徴とするファイル制御プログラム。
【請求項２】
前記データ復旧手段は、前記データファイル及び前記データフラグファイルの両ファイルが前記記憶手段に存在する場合、前記バックアップファイル及び前記バックアップフラグファイルを前記記憶手段から削除することを特徴とする請求項１記載のファイル制御プログラム。
【請求項３】
前記データ復旧手段は、前記データファイル及び前記データフラグファイルの少なくともいずれか一方が前記記憶手段に存在せず、かつ、前記バックアップファイル及び前記バックアップフラグファイルの両ファイルが前記記憶手段に存在する場合は、前記データファイル及び前記データフラグファイルを前記記憶手段から削除し、新規のデータファイルを前記記憶手段に作成し、前記バックアップファイルのデータを、作成された新規のデータファイルにコピーし、当該データファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップフラグファイル及び前記バックアップファイルを削除することを特徴とする請求項１又は２記載のファイル制御プログラム。
【請求項４】
前記データ復旧手段は、前記データファイル及び前記データフラグファイルの少なくともいずれか一方が前記記憶手段に存在せず、かつ、前記バックアップファイル及び前記バックアップフラグファイルの少なくともいずれか一方が前記記憶手段に存在しない場合は、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルを削除することを特徴とする請求項１〜３のいずれかに記載のファイル制御プログラム。
【請求項５】
種々のファイルを記憶する記憶手段と、
記憶対象のデータからなるデータファイルを前記記憶手段に作成し、当該データファイルとファイル名によって関連付けられデータフラグファイルを前記記憶手段に作成するデータファイル作成手段と、
更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを前記記憶手段に作成し、当該バックアップファイルに前記データファイルのデータをコピーし、前記バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、前記データフラグファイルを削除し、前記データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップファイル及び前記バックアップフラグファイルを削除するデータファイル更新手段と、
前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧手段とを備えることを特徴とするファイル制御装置。
【請求項６】
コンピュータが、種々のファイルを記憶する記憶手段に、記憶対象のデータからなるデータファイルを作成し、当該データファイルとファイル名によって関連付けられデータフラグファイルを前記記憶装置に作成するデータファイル作成ステップと、
前記コンピュータが、更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを前記記憶手段に作成し、当該バックアップファイルに前記データファイルのデータをコピーし、前記バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、前記データフラグファイルを削除し、前記データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップファイル及び前記バックアップフラグファイルを削除するデータファイル更新ステップと、
前記コンピュータが、前記データファイル更新ステップによるデータ更新処理が中断された場合、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧ステップとを備えることを特徴とするファイル制御方法。
【請求項７】
種々のファイルを記憶する記憶手段と、
記憶対象のデータからなるデータファイルを前記記憶手段に作成するデータファイル作成手段と、
更新対象のデータファイルのファイル名を、当該データファイルとファイル名により関連付けられたバックアップファイルのファイル名に変更し、前記データファイルとファイル名により関連付けられた一時ファイルを前記記憶手段に作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、前記一時ファイルを更新対象のデータで更新し、前記一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除するデータ更新手段と、
前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル及び前記バックアップファイルの存在のパターンを基に、前記データファイルを復旧するデータファイル復旧手段としてコンピュータを機能させることを特徴とするファイル制御プログラム。
【請求項８】
前記データファイル復旧手段は、前記記憶手段に前記データファイルが存在する場合、当該データファイルとファイル名によって関連付けられたバックアップファイルを削除することを特徴とする請求項７記載のファイル制御プログラム。
【請求項９】
前記データファイル復旧手段は、前記データファイルが存在せず、前記バックアップファイルが存在する場合は、前記データファイルに関連付けられたファイル名を有する一時ファイルを作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、当該一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除することを特徴とする請求項７又は８記載のファイル制御プログラム。
【請求項１０】
前記データファイル復旧手段は、前記データファイル及び前記バックアップファイルのいずれも前記記憶手段に存在しない場合は、前記一時ファイルを削除することを特徴とする請求項７〜９のいずれかに記載のファイル制御プログラム。
【請求項１１】
種々のファイルを記憶する記憶手段と、
記憶対象のデータからなるデータファイルを前記記憶手段に作成するデータファイル作成手段と、
更新対象のデータファイルのファイル名を、当該データファイルにファイル名により関連付けられたバックアップファイルのファイル名に変更し、前記データファイルとファイル名により関連付けられた一時ファイルを前記記憶手段に作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、前記一時ファイルを更新対象のデータで更新し、前記一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除するデータ更新手段と、
前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル及び前記バックアップファイルの存在のパターンを基に、前記データファイルを復旧するデータファイル復旧手段とを備えることを特徴とするファイル制御装置。
【請求項１２】
コンピュータが、記憶対象のデータからなるデータファイルを種々のファイルを記憶する前記記憶手段に作成するデータファイル作成ステップと、
前記コンピュータが、更新対象のデータファイルのファイル名を、当該データファイルにファイル名により関連付けられたバックアップファイルのファイル名に変更し、前記データファイルとファイル名により関連付けられた一時ファイルを前記記憶手段に作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、前記一時ファイルを更新対象のデータで更新し、前記一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除するデータ更新ステップと、
前記コンピュータが、前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル及び前記バックアップファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧ステップとを備えることを特徴とするファイル制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はフラッシュメモリやハードディスク等の記憶装置に作成されたファイルを制御する技術に関する。
【背景技術】
【０００２】
ハードディスク等の記憶装置にファイルを記憶させてファイルを管理するコンピュータ等の情報機器では、ファイルへのデータの更新中に、停電やコンセント抜け等の予期せぬ電源断が発生することがある。この場合、例えば、ファイルの先頭は更新後のデータに書き換わっているが、それ以外の部分は更新前のデータのままというような、ファイルが部分的に更新された状態になるおそれがある。かかる状態が発生すると、情報機器は正しく動作することができなくなってしまう。したがって、かかる情報機器では、ファイル更新中に予期せぬ電源断が発生しても、電源復旧時には、ファイルの更新が全く行われていないか、あるいは、更新が完全に終了しているか、のいずれかの状態にされること、すなわち、ファイルの更新が不可分に行なわれることが要求される。特に家庭用の情報機器は、専門的な知識に乏しいユーザが使用することが一般的であるため、停電やコンセント抜け等による予期せぬ電源断が発生する確率が高く、ファイル更新中における電源断対策は重要な課題である。
【０００３】
そこで、上記問題を解決するために、更新前にバックアップファイルを作成し、ファイルが保存されている記憶装置とは別の記憶装置にファイルが更新中であることを表すフラグをセットし、更新完了後に記憶装置上のフラグをクリアし、バックアップファイルを削除することで、ファイルを不可分に更新する方法が開示されている（特許文献１）。この方法は、不揮発性メモリが、フラグの更新を不可分に行うことができる特性を利用したものである。
【特許文献１】特開平２００１−６７２５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、前記従来の構成では、フラグを保存するための記憶装置(不揮発性メモリなど)を、ファイルを保存する記憶装置とは別に用意する必要があり、製品のコストに上昇させる一因となる。
【０００５】
本発明は、前記従来の課題を解決するもので、ファイルを保存する記憶装置とは別の不揮発性メモリなどの記憶装置を用いなくとも、ファイルの更新を不可分に行うことが可能なファイル制御プログラム、ファイル制御装置及びファイル制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明にかかるファイル制御プログラムは、種々のファイルを記憶する記憶手段と、記憶対象のデータからなるデータファイルを前記記憶手段に作成し、当該データファイルとファイル名によって関連付けられデータフラグファイルを前記記憶手段に作成するデータファイル作成手段と、更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを前記記憶手段に作成し、当該バックアップファイルに前記データファイルのデータをコピーし、前記バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、前記データフラグファイルを削除し、前記データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップファイル及び前記バックアップフラグファイルを削除するデータファイル更新手段と、前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧手段としてコンピュータを機能させることを特徴とする。
【０００７】
また、前記データ復旧手段は、前記データファイル及び前記データフラグファイルの両ファイルが前記記憶手段に存在する場合、前記バックアップファイル及び前記バックアップフラグファイルを前記記憶手段から削除することが好ましい。
【０００８】
さらに、前記データ復旧手段は、前記データファイル及び前記データフラグファイルの少なくともいずれか一方が前記記憶手段に存在せず、かつ、前記バックアップファイル及び前記バックアップフラグファイルの両ファイルが前記記憶手段に存在する場合は、前記データファイル及び前記データフラグファイルを前記記憶手段から削除し、新規のデータファイルを前記記憶手段に作成し、前記バックアップファイルのデータを、作成された新規のデータファイルにコピーし、当該データファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップフラグファイル及び前記バックアップファイルを削除することが好ましい。
【０００９】
さらに、前記データ復旧手段は、前記データファイル及び前記データフラグファイルの少なくともいずれか一方が前記記憶手段に存在せず、かつ、前記バックアップファイル及び前記バックアップフラグファイルの少なくともいずれか一方が前記記憶手段に存在しない場合は、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルを削除することが好ましい。
【００１０】
本発明にかかるファイル制御装置は、種々のファイルを記憶する記憶手段と、記憶対象のデータからなるデータファイルを前記記憶手段に作成し、当該データファイルとファイル名によって関連付けられデータフラグファイルを前記記憶手段に作成するデータファイル作成手段と、更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを前記記憶手段に作成し、当該バックアップファイルに前記データファイルのデータをコピーし、前記バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、前記データフラグファイルを削除し、前記データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップファイル及び前記バックアップフラグファイルを削除するデータファイル更新手段と、前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧手段とを備えることを特徴とする。
【００１１】
本発明にかかるファイル制御方法は、コンピュータが、種々のファイルを記憶する記憶手段に、記憶対象のデータからなるデータファイルを作成し、当該データファイルとファイル名によって関連付けられデータフラグファイルを前記記憶装置に作成するデータファイル作成ステップと、前記コンピュータが、更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを前記記憶手段に作成し、当該バックアップファイルに前記データファイルのデータをコピーし、前記バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、前記データフラグファイルを削除し、前記データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップファイル及び前記バックアップフラグファイルを削除するデータファイル更新ステップと、前記コンピュータが、前記データファイル更新ステップによるデータ更新処理が中断された場合、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧ステップとを備えることを特徴とする。
【００１２】
本発明にかかる別のファイル制御プログラムは、種々のファイルを記憶する記憶手段と、記憶対象のデータからなるデータファイルを前記記憶手段に作成するデータファイル作成手段と、更新対象のデータファイルのファイル名を、当該データファイルとファイル名により関連付けられたバックアップファイルのファイル名に変更し、前記データファイルとファイル名により関連付けられた一時ファイルを前記記憶手段に作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、前記一時ファイルを更新対象のデータで更新し、前記一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除するデータ更新手段と、前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル及び前記バックアップファイルの存在のパターンを基に、前記データファイルを復旧するデータファイル復旧手段としてコンピュータを機能させることを特徴とする。
【００１３】
また、上記別の発明にかかる制御プログラムにおいて、前記データファイル復旧手段は、前記記憶手段に前記データファイルが存在する場合、当該データファイルとファイル名によって関連付けられたバックアップファイルを削除することが好ましい。
【００１４】
さらに、上記別の発明にかかる制御プログラムにおいて、前記データファイル復旧手段は、前記データファイルが存在せず、前記バックアップファイルが存在する場合は、前記データファイルに関連付けられたファイル名を有する一時ファイルを作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、当該一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除することが好ましい。
【００１５】
さらに、上記別の発明にかかるファイル制御プログラムにおいて、前記データファイル復旧手段は、前記データファイル及び前記バックアップファイルのいずれも前記記憶手段に存在しない場合は、前記一時ファイルを削除することが好ましい。
【００１６】
本発明にかかる別のファイル制御装置は、種々のファイルを記憶する記憶手段と、記憶対象のデータからなるデータファイルを前記記憶手段に作成するデータファイル作成手段と、更新対象のデータファイルのファイル名を、当該データファイルにファイル名により関連付けられたバックアップファイルのファイル名に変更し、前記データファイルとファイル名により関連付けられた一時ファイルを前記記憶手段に作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、前記一時ファイルを更新対象のデータで更新し、前記一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除するデータ更新手段と、前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル及び前記バックアップファイルの存在のパターンを基に、前記データファイルを復旧するデータファイル復旧手段とを備えることを特徴とする。
【００１７】
本発明にかかる別のファイル制御方法は、コンピュータが、記憶対象のデータからなるデータファイルを種々のファイルを記憶する前記記憶手段に作成するデータファイル作成ステップと、前記コンピュータが、更新対象のデータファイルのファイル名を、当該データファイルにファイル名により関連付けられたバックアップファイルのファイル名に変更し、前記データファイルとファイル名により関連付けられた一時ファイルを前記記憶手段に作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、前記一時ファイルを更新対象のデータで更新し、前記一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除するデータ更新ステップと、前記コンピュータが、前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル及び前記バックアップファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧ステップとを備えることを特徴とする。
【発明の効果】
【００１８】
請求項１、５及び６記載の発明によれば、記憶手段に記憶対象のデータからなる新規のデータファイルを作成する場合、当該データファイルとファイル名によって関連付けられ、当該データファイルが更新処理中でないことを示すデータフラグファイルが作成される。
【００１９】
また、データファイルを更新する場合、バックアップファイルが作成され、データファイルのデータがバックアップファイルにコピーされて当該データがバックアップされ、当該バックアップファイルが更新処理中でないことを示すバックアップフラグファイルが作成される。そして、データフラグファイルが削除され、データファイルが更新対象のデータで更新され、再度データフラグファイルが作成される。
【００２０】
そして、データファイルの更新処理途中で、処理が中断されると、データファイル、フラグファイル、バックアップファイル及びバックアップフラグファイルの存在パターンより、データファイルへの復旧処理が行われる。すなわち、データファイル更新手段による更新処理中に適宜作成及び削除される上記４種のファイルの存在パターンから、更新処理がどの段階で中断されたかを特定することが可能となり、特定した段階に応じた復旧処理を行うことで、データファイルを不可分に復旧することができる。そして、データフラグファイル及びバックアップフラグファイルを用いているため、従来の装置のようにフラグを記憶するための記憶装置を別途用いる必要がなくなり、コストダウンを図ることができる。
【００２１】
請求項２記載の発明によれば、データファイル更新手段によるデータ更新処理が、データフラグファイルの作成直後に中断された場合、データファイルを不可分に復旧することができる。
【００２２】
請求項３記載の発明によれば、データファイル更新手段によるデータ更新処理が、例えばデータファイルへの更新対象データの書き込み処理中に中断された場合、データファイルを不可分に復旧することができる。
【００２３】
請求項４記載の発明によれば、データファイル更新手段によるデータ更新処理が、例えば、バックアップファイル作成直後に中断され、ファイルシステム破壊によりデータフラグファイルが消失した場合、データファイル作成以前の状態に復旧することができる。
【００２４】
請求項７、１１及び１２記載の発明によれば、データファイルを更新する場合、更新対象のデータファイルのファイル名が、バックアップファイルのファイル名に変更されてデータファイルがバックアップファイルとされる。そして、一時ファイルが作成され、当該一時ファイルにバックアップファイルのデータがコピーされる。そして、一時ファイルが、更新対象のデータにより更新され、当該一時ファイルのファイル名が、データファイルのファイル名に変更され、当該一時ファイルがデータファイルとされる。そして、不要となったバックアップファイルが削除され、データファイル及びバックアップフラグファイルの存在パターンによりデータファイルへの復旧処理が行われる。すなわち、データファイル更新手段によるデータ更新処理において適宜作成及び削除される一時ファイル、バックアップファイル及びデータファイルの存在パターンから、データ更新処理がどの段階で中断されたかを特定することが可能となり、特定した段階に応じた復旧処理を行うことにより、データファイルを不可分に復旧することができる。そして、一時ファイルを用いているため、従来の装置のようにフラグを記憶するための記憶装置を別途設ける必要がなく、コストダウンを図ることができる。
【００２５】
請求項８記載の発明によれば、データファイル更新手段による更新処理が、一時ファイルのファイル名をデータファイルのファイル名に変更した直後に中断された場合、データファイルを不可分に復旧することができる。
【００２６】
請求項９記載の発明によれば、データファイル更新手段による更新処理が、例えば、更新対象のデータを一時ファイルに書き込む処理中に中断された場合、更新データファイルを不可分に復旧することができる。
【００２７】
請求項１０記載の発明によれば、データファイル更新手段による更新処理が、例えば、一時ファイルを作成した直後に中断し、ファイルシステム破壊によってバックアップファイルが消失した場合、データファイル作成以前の状態に復旧することができる。
【発明を実施するための最良の形態】
【００２８】
（第１実施形態）
以下本発明の第１実施形態に係るファイル制御装置の実施形態について、図面を参照しながら説明する。図１は、ファイル制御装置１００のブロック構成図を示している。ファイル制御装置１００は、ＣＰＵ（中央処理装置）と、ＣＰＵの作業領域として用いられるＲＡＭ（ランダムアクセスメモリ）と、ＢＩＯＳ（Basic Input Output System）等の基本プログラムを記憶するＲＯＭ（リードオンリーメモリ）と、オペレーティングシステム及び本発明にかかるファイル制御プログラムを記憶するハードディスク等からなる一般的なコンピュータから構成されている。そして、ＣＰＵは、オペレーティングシステム及びファイル制御プログラムを実行することにより、プログラム実行部１２０として機能するとともに、ハードディスクを記憶部１１０として機能させる。なお、ファイル制御プログラムがＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体に記録されて、提供される場合は、コンピュータが備える記録媒体駆動装置からインストールすることにより、ファイル制御プログラムを、ハードディスクに格納してもよい。また、ファイル制御プログラムが、コンピュータとインターネット等の通信回線を介して接続されたサーバに記憶されている場合、このサーバからダウンロードすることにより、ファイル制御プログラムをハードディスクに格納してもよい。
【００２９】
記憶部１１０は、データファイル１１１、データフラグファイル１１２、バックアップファイル１１３、バックアップフラグファイル１１４を記憶する。データファイル１１１は、記憶対象となるデータから構成されるファイルであり、１又は複数個存在する。
【００３０】
データフラグファイル１１２は、各データファイル１１１と関連づけられて存在し、その存在の有無により、関連づけられたデータファイル１１１が、現在、書き込み中であるか否かを示すフラグとして機能する。すなわち、データフラグファイル１１２が記憶部１１０に存在すれば、現在、関連づけられたデータファイル１１１は、書き込み処理中ではないことが示され、データフラグファイル１１２が記憶部１１０に存在しなければ、現在、関連づけられたデータファイル１１１は、書き込み処理中であることが示される。なお、データフラグファイル１１２は、例えば、ファイル名がＡであるデータファイル１１１に対し、「．ｖ」なる拡張子が付けられたファイル名とされるように（すなわち、「Ａ．ｖ」）、ファイル名によってデータファイル１１１と関連づけられる。この場合、データフラグファイル１１２は、ファイル名が重要であり、ファイルの中身のデータはどのようなデータ（空のデータを含む）であってもよい。
【００３１】
バックアップファイル１１３は、各データファイル１１１と関連づけられて存在し、関連づけられたデータファイル１１１のデータをバックアップするファイルである。なお、バックアップファイルは、例えば、ファイル名がＡであるデータファイル１１１に対し、「．ｂａｋ」なる拡張子が付けられたファイル名とされ（すなわち、Ａ．ｂａｋ）、ファイル名によってデータファイル１１１と関連づけられる。
【００３２】
バックアップフラグファイル１１４は、各バックアップファイル１１３と関連づけられて存在し、データフラグファイル１１２と同様に、その存在の有無により、関連づけられたバックアップファイル１１３が、現在、書き込み中であるか否かを示すフラグとして機能する。なお、バックアップフラグファイル１１４は、例えば「．ｂａｋｖ」なる拡張子が付され、データフラグファイル１１２と同様に、ファイル名によって、バックアップファイル１１３と関連づけられる。なお、上記拡張子を用いたファイル名による各種ファイルの関連付けは一例にすぎず、他の手法を用いてファイル名を関連づけてもよい。
【００３３】
プログラム実行部１２０は、管理部１３０及びファイル制御部１４０を備えている。管理部１３０は、ファイル作成部１３１、ファイル削除部１３２、ファイル書き込み部１３３及びファイル読み出し部１３４を備え、これらの機能は、オペレーティングシステムが予め備えている機能である。
【００３４】
ファイル作成部１３１は、種々のファイルを記憶部１１０に作成する。ここで、ファイル作成部１３１は、ファイル作成中に予期せぬ電源断が発生しても、電源復旧時には、ファイルの更新が全く行われていないか、あるいは、作成が完全に終了しているか、のいずれかの状態にするというように、ファイルの作成を不可分に行う。
【００３５】
ファイル削除部１３２は、記憶部１１０に記憶されている種々のファイルを削除する。ここで、ファイル削除部１３２は、ファイル作成部１３１同様、ファイルの削除を不可分に行う。
【００３６】
ファイル書き込み部１３３は、記憶部１１０に記憶されている種々のファイルに対し、データを書き込む。ファイル読み出し部１３４は、記憶部１１０に記憶されている種々のファイルからデータを読み出す。なお、ファイル作成部１３１〜ファイル読み出し部１３４の処理は、実行順に記憶部１１０に反映される。例えば、ファイル作成部１３１でファイルＡを作成し、ファイル作成部１３１でファイルＢを作成し、電源断が発生すると、ファイルＡのファイルＢの両方が存在するか、ファイルＡのみ存在するか、ファイルＡもファイルＢも存在しないかのいずれかの状態になり、ファイルＢのみが存在すると状態が生じない。不可分の処理及び各処理が実行順に記憶部１１０に反映される特性は、公知のＪＦＦＳ２（Journaling Flash File System 2）ファイルシステムやｅｘｔ３ファイルシステム等のジャーナリングファイルシステムを備えるオペレーティングシステムを導入することで容易に実現可能である。
【００３７】
ファイル制御部１４０は、データファイル作成部１４１、データファイル更新部１４２及びデータファイル復旧部１４３を備えている。
【００３８】
データファイル作成部１４１は、ファイル作成部１３１を制御することにより、記憶部１１０に新規のデータファイルを作成する。データファイル更新部１４２は、ファイル作成部１３１〜ファイル読み出し部１３４を制御することにより、記憶部１１０に記憶された更新対象のデータファイル１１１を更新する。データファイル復旧部１４３は、ファイル作成部１３１〜ファイル読み出し部１３４を制御することにより、データファイル更新部１４２による更新処理が中断されたデータファイル１１１に対する復旧処理を行う。これらデータファイル作成部１４１〜データファイル復旧部１４３の処理の詳細については後述する。
【００３９】
図２は、データファイル作成部１４１の処理手順を示すフローチャートである。まず、ファイル作成部１３１を用いて、データファイル１１１及びデータフラグファイル１１２を作成する(Ｓ２１０)。
【００４０】
図３は、データファイル更新部１４２の処理手順を示すフローチャートである。まず、ファイル作成部１３１を用いて、更新対象のデータファイル１１１と関連づけられたバックアップファイル１１３を記憶部１１０に作成する(Ｓ３１０)。次に、ファイル読み出し部１３４及びファイル書き込み部１３３を用いて、更新対象のデータファイル１１１をバックアップファイル１１３にコピーする（Ｓ３２０）。本明細書では、「コピー」とは、あるファイルに記憶されたデータを別のファイルに格納することを示し、「ファイルを作成する」とは、ファイル名のみが付与され、データが空のファイルを作成することを示している。
【００４１】
コピー完了後に、ファイル作成部１３１を用いて、バックアップフラグファイル１１４を記憶部１１０に作成し（Ｓ３３０）、ファイル削除部１３２を用いて、データフラグファイル１１２を削除する（Ｓ３４０）。次に、ファイル書き込み部１３３を用いて、データファイル１１１のデータを更新対象のデータで更新する（Ｓ３５０）。更新が完了すれば、ファイル作成部１３１を用いて、データフラグファイル１１２を作成し（Ｓ３６０）、ファイル削除部１３２を用いて、バックアップフラグファイル１１４及びバックアップファイル１１３を削除する（Ｓ３７０）。
【００４２】
図４は、データファイル復旧部１４３の処理手順を示すフローチャートである。記憶部１１０に、データファイル１１１及びデータフラグファイル１１２が存在すれば（Ｓ４１０）、データファイル１１１が正しいデータからなることが分かる。したがって、バックアップファイル１１３及びバックアップフラグファイル１１４は不要となるため、ファイル削除部１３２を用いてバックアップフラグファイル１１４とバックアップファイル１１３を記憶部１１０から削除する（Ｓ４１５）。
【００４３】
データファイル１１１あるいはデータフラグファイル１１２のいずれか一方、又は、両方が存在しないときは（Ｓ４１０でＮＯ）、バックアップファイル１１３及びバックアップフラグファイル１１４の存在を確認する（Ｓ４２０）。バックアップファイル１１３とバックアップフラグファイル１１４の両方が存在すれば（Ｓ４２０でＹＥＳ）、Ｓ４３０以降のバックアップファイル１１３からデータファイル１１１を復元する処理を実行する。すなわち、ファイル削除部１３２を用いて、データファイル１１１及びデータフラグファイル１１２を削除し（Ｓ４３０）、ファイル作成部１３１を用いて、データファイル１１１を作成し（Ｓ４４０）、ファイル読み出し部１３４及びファイル書き込み部１３３を用いて、バックアップファイル１１３のデータをデータファイル１１１にコピーし（Ｓ４５０）、ファイル作成部１３１を用いて、データフラグファイル１１２を記憶部１１０に作成し（Ｓ４６０）、ファイル削除部１３２を用いて、バックアップファイル１１３及びバックアップフラグファイル１１４を削除する（Ｓ４７０）。
【００４４】
一方、ステップＳ４２０でＮＯの場合、ファイル削除部１３２を用いて、データファイル１１１及びデータフラグファイル１１２を削除する（Ｓ４８０）。
【００４５】
図３に示すフローチャートのデータファイル書き込み処理中（Ｓ３５０）に電源断が発生すると、電源が回復した直後の状態では、データファイル１１１が部分的に更新された状態で存在し、バックアップファイル１１３及びバックアップフラグファイル１１４が存在する状態になる。この場合、データファイル復旧部１４３は、Ｓ４１０でＮＯかつＳ４２０でＹＥＳと判定し、Ｓ４１０、Ｓ４２０、Ｓ４３０、Ｓ４４０、Ｓ４５０、Ｓ４６０及びＳ４７０の処理を実行し、バックアップファイル１１３から更新処理前のデータファイル１１１を復元する。
【００４６】
また、図３に示すフローチャートのデータフラグファイル作成（Ｓ３６０）の直後で電源断が発生すると、電源が回復したとき、データファイル１１１、データフラグファイル１１２、バックアップファイル１１３及びバックアップフラグファイル１１４が存在するため、データファイル復旧部１４３は、Ｓ４１０でＹＥＳと判定し、Ｓ４１５を実行する。これにより、データファイル１１１及びデータフラグファイル１１２が残り、データファイル更新完了後の状態になる。
【００４７】
さらに、電源断によってファイルシステムが破壊され、ファイルが消失することもまれにある。図３に示すフローチャートで示すデータフラグファイル作成（Ｓ３６０）の直後で電源断が発生し、電源が復旧したときに、データファイル１１１が消失していたとする。この場合、データファイル復旧部１４３は、データフラグファイル１１２、バックアップファイル１１３及びバックアップフラグファイル１１４が存在するため、Ｓ４１０でＮＯ、Ｓ４２０でＹＥＳと判定し、Ｓ４３０、Ｓ４５０、Ｓ４６０、Ｓ４７０の処理を実行する。これにより、バックアップファイル１１３からファイル更新前のデータファイル１１１が復元される。
【００４８】
また、図３に示すフローチャートで示すバックアップファイル１１３作成（Ｓ３１０）直後で電源断が発生し、電源が復旧したときに、データフラグファイル１１２が消失していたとする。この場合、データファイル復旧部１４３は、データファイル１１１とバックアップファイル１１３が存在するが、データフラグファイル１１２もバックアップフラグファイル１１４も存在しないため、Ｓ４１０でＮＯ、Ｓ４２０でＮＯと判定し、Ｓ４８０の処理を実行する。これにより、データファイル１１１とバックアップファイル１１３が削除されデータファイル１１１作成以前の状態が復旧される。
【００４９】
以上説明したように、ファイル制御装置１００によれば、データファイル１１１の更新が電源断などによって中断されたり、データファイル１１１の更新中にデータファイル１１１が消失されたりしても、データフラグファイル１１２及びバックアップフラグファイル１１４等を用いた上記更新処理及び復旧処理が実行されるため、データファイル１１１は、更新処理前あるいは更新処理完了後のいずれかの状態とされ、フラグを記憶するための記憶装置を別途設けることなく、データファイル１１１の更新を不可分に行うことができる。その結果、装置の低コスト化を図ることができる。
【００５０】
（第２実施形態）
図５は、本発明の第２実施形態にかかるファイル制御装置５００のブロック図を示している。ファイル制御装置５００は、データフラグファイル１１２及びバックアップフラグファイル１１４を用いる代わりに、一時ファイル５１３を用いて、データファイルの更新処理を不可分に行なうものである。なお、ファイル制御装置１００と機能が同一のブロックについては、同一の名称を付し説明を省略する。ファイル名変更部５３５は、記憶部５１０に記憶された種々のファイルのファイル名を変更する。
【００５１】
図６は、データファイル作成部５４１がデータファイル５１１を作成するときの処理手順を示したフローチャートである。データファイル５１１をファイル作成部５３１を用いて作成する(Ｓ６１０)。
【００５２】
図７は、データファイル更新部５４２が、更新対象のデータファイル５１１を更新するときの処理手順を示すフローチャートである。まず、ファイル名変更部５３５を用いてデータファイル５１１のファイル名をバックアップファイル５１２のファイル名に変更する（Ｓ７１０）。次に、データファイルのファイル名に関連付けられたファイル名を持つ一時ファイルをファイル作成部５３１を用いて作成する（Ｓ７２０）。一時ファイルのファイル名はデータファイル５１１の名前の後ろに、例えば「．ｔｍｐ」という拡張子が付けられる。データファイル５１１のファイル名がＡであれば一時ファイル５１３のファイル名はＡ．ｔｍｐとされる。次に、ファイル読み出し部５３４及びファイル書き込み部５３３を用いて、バックアップファイルのデータを一時ファイルにコピーする（Ｓ７３０）。次に、ファイル書き込み部５３３を用いて、更新対象のデータを書込むことにより一時ファイルを更新し（Ｓ７４０）、ファイル名変更部５３５を用いて、一時ファイル５１３のファイル名をデータファイル５１１のファイル名に変更する（Ｓ７５０）。最後に、バックアップファイル５１２を削除する（Ｓ７６０）。
【００５３】
図８は、データファイル更新部５４２によるデータファイル更新処理が電源断等により中断され、復旧時にデータファイル復旧部５４３によって実行される復旧処理手順を示したフローチャートである。更新処理が中断されたデータファイル５１１が存在すれば（Ｓ８１０でＹＥＳ）、バックアップファイル５１２は不要となるため、ファイル削除部５３２を用いて、バックアップファイル５１２を削除する（Ｓ８１５）。
【００５４】
一方、データファイル５１１がないときは（Ｓ８１０でＮＯ）、バックアップファイル５１２の存在を確認する（Ｓ８２０）。バックアップファイル５１２が存在すれば（Ｓ８２０でＹＥＳ）、バックアップファイル５１２からデータファイル５１１を回復するために、ファイル削除部５３２を用いて、一時ファイル５１３を削除し（Ｓ８３０）、ファイル作成部５３１を用いて、一時ファイル５１３を作成し（Ｓ８４０）、ファイル読み出し部５３４及びファイル書き込み部５３３を用いて、バックアップファイル５１２のデータを一時ファイル５１３にコピーし（Ｓ８５０）、ファイル名変更部５３５を用いて、一時ファイル５１３のファイル名をデータファイル５１１のファイル名に変更し、ファイル削除部５３２を用いて、バックアップファイル５１２を削除する（Ｓ８７０）。
【００５５】
一方、Ｓ８２０でＮＯの場合、ファイル削除部５３２を用いて、一時ファイル５１３を削除する（Ｓ８８０）。
【００５６】
データファイル更新部５４２の一時ファイルの更新中（Ｓ７４０）に電源断が発生し、電源が回復した直後の状態では、一時ファイル５１３が部分的に更新された状態で存在し、バックアップファイル５１２が存在する状態になる。この場合、データファイル復旧部５４３は、Ｓ８１０でＮＯ、Ｓ８２０でＹＥＳと判定し、Ｓ８３０、Ｓ８４０、Ｓ８５０、Ｓ８６０、Ｓ８７０の処理を実行し、バックアップファイル５１２から更新処理前のデータファイル５１１を復元する。
【００５７】
また、データファイル更新部５４２の一時ファイルのファイル名をデータファイルのファイル名に変更した（Ｓ７５０）直後で電源断が発生し、電源が回復した直後の状態は、データファイル５１１、バックアップファイル５１２が存在する。この場合、データファイル復旧部５４３は、Ｓ８１０でＹＥＳと判定し、Ｓ８１５の処理を実行し、データファイル５１１が残り、データファイル更新完了後の状態になる。
【００５８】
電源断によってファイルシステムが破壊され、ファイルが消失することもまれにある。データファイル更新部５４２の一時ファイルのファイル名をデータファイルのファイル名に変更した（Ｓ７５０）直後で電源断が発生し、電源が復旧したときに、データファイル５１１が消失していたとする。この場合、バックアップファイル５１２が存在する。データファイル復旧部５４３は、Ｓ８１０でＮＯ、Ｓ８２０でＹＥＳと判定し、Ｓ８３０、Ｓ８５０、Ｓ８６０及びＳ８７０の処理を実行し、バックアップファイル５１２からファイル更新前のデータファイル５１１を復元する。
【００５９】
以上説明したように、ファイル制御装置５００によれば、データファイルの更新処理が電源断などによって中断されたり、データファイルの更新中にデータファイルが消失されたりしても、一時ファイル等を用いた上記更新処理及び復旧処理が実行されるため、データファイル５１１は、更新処理前あるいは更新処理完了後のいずれかの状態とされ、フラグを記憶するための記憶装置を別途設けることなく、データファイルの更新を不可分に行うことができる。その結果、装置の低コスト化を図ることができる。
【００６０】
なお、上記実施形態では、ファイル制御部１４０及び５４０は、管理部１３０及び５３０の各ブロックを利用するものであったが、これに限定されず、ファイル制御部１４０及び５４０が管理部を含むものであってもよい。
【００６１】
また、記憶部１１０及び５１０は、ハードディスクから構成されるとしたが、これに限定されず、フラッシュメモリ、フレキシブルディスク等、ファイル形式でデータを記憶する記憶装置であれば、本発明に適用することができる。
【００６２】
また、上記説明では、本発明をコンピュータに適用した場合を示したが、これに限定されず、設定情報などを設定ファイルに保存し、使用者の入力等にしたがって設定ファイルを更新する家電製品に適用してもよい。また、ネット家電製品に適用してもよい。ここで、ネット家電製品とは、ネットワーク上のサーバと通信可能に接続され、当該サーバから、例えば種々のコンテンツファイルをダウンロードし、自己のファイルを書き換えることができる電子レンジや洗濯機等の家電製品およびこのような家電製品のコントローラが該当する。
【産業上の利用可能性】
【００６３】
本発明のファイル更新方法は、電源断が発生しやすいネット家電製品におけるファイル更新の電源断対策として有用である。また、コンピュータなどの情報機器のファイル書き込み方法としても適用可能である。
【図面の簡単な説明】
【００６４】
【図１】本発明にかかる第１実施形態のファイル制御装置のブロック図である。
【図２】第１実施形態にかかるファイル制御装置のデータファイル作成処理を示すフローチャートである。
【図３】第１実施形態にかかるファイル制御装置のデータファイル更新処理を示すフローチャートである。
【図４】第１実施形態にかかるファイル制御装置のデータファイル復旧処理を示すフローチャートである。
【図５】本発明にかかる第２実施形態のファイル制御装置のブロック図である。
【図６】第２実施形態にかかるファイル制御装置のデータファイル作成処理を示すフローチャートである。
【図７】第２実施形態にかかるファイル制御装置のデータファイル更新処理を示すフローチャートである。
【図８】第２実施形態にかかるファイル制御装置のデータファイル復旧処理を示すフローチャートである。
【符号の説明】
【００６５】
１００  ファイル制御装置
１１０  記憶部
１１１  データファイル
１１２  データフラグファイル
１１３  バックアップファイル
１１４  バックアップフラグファイル
１２０  プログラム実行部
１３０  管理部
１３１  ファイル作成部
１３２  ファイル削除部
１３３  ファイル書き込み部
１３４  ファイル読み出し部
１４０  ファイル制御部
１４１  データファイル作成部
１４２  データファイル更新部
１４３  データファイル復旧部
５００  ファイル制御装置
５１０  記憶部
５１１  データファイル
５１２  バックアップファイル
５１３  一時ファイル
５３１  ファイル作成部
５３２  ファイル削除部
５３３  ファイル書き込み部
５３４  ファイル読み出し部
５３５  ファイル名変更部
５４１  データファイル作成部
５４２  データファイル更新部
５４３  データファイル復旧部
【図１】
2005078368.tif 000003
【図２】
2005078368.tif 000004
【図３】
2005078368.tif 000005
【図４】
2005078368.tif 000006
【図５】
2005078368.tif 000007
【図６】
2005078368.tif 000008
【図７】
2005078368.tif 000009
【図８】
2005078368.tif 000010