JP2005078368A - ファイル制御プログラム、ファイル制御装置及びファイル制御方法 - Google Patents

ファイル制御プログラム、ファイル制御装置及びファイル制御方法 Download PDF

Info

Publication number
JP2005078368A
JP2005078368A JP2003307793A JP2003307793A JP2005078368A JP 2005078368 A JP2005078368 A JP 2005078368A JP 2003307793 A JP2003307793 A JP 2003307793A JP 2003307793 A JP2003307793 A JP 2003307793A JP 2005078368 A JP2005078368 A JP 2005078368A
Authority
JP
Japan
Prior art keywords
file
data
backup
flag
name
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2003307793A
Other languages
English (en)
Inventor
Yoshihiko Motohashi
良彦 本橋
Norihisa Matsumoto
範久 松本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2003307793A priority Critical patent/JP2005078368A/ja
Publication of JP2005078368A publication Critical patent/JP2005078368A/ja
Withdrawn legal-status Critical Current

Links

Abstract

【課題】 ファイルを保存する記憶装置とは別の記憶装置を用いずに、ファイルの更新を不可分に行う。
【解決手段】 更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを作成し、バックアップファイルにデータファイルのデータをコピーし、バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、データフラグファイルを削除し、データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、バックアップファイル及びバックアップフラグファイルを削除するデータファイル更新部142と、データファイル、データフラグファイル、バックアップファイル及びバックアップフラグファイルの存在パターンからデータファイルの復旧処理を行うデータファイル復旧部143とを備える。
【選択図】 図1

Description

本発明はフラッシュメモリやハードディスク等の記憶装置に作成されたファイルを制御する技術に関する。
ハードディスク等の記憶装置にファイルを記憶させてファイルを管理するコンピュータ等の情報機器では、ファイルへのデータの更新中に、停電やコンセント抜け等の予期せぬ電源断が発生することがある。この場合、例えば、ファイルの先頭は更新後のデータに書き換わっているが、それ以外の部分は更新前のデータのままというような、ファイルが部分的に更新された状態になるおそれがある。かかる状態が発生すると、情報機器は正しく動作することができなくなってしまう。したがって、かかる情報機器では、ファイル更新中に予期せぬ電源断が発生しても、電源復旧時には、ファイルの更新が全く行われていないか、あるいは、更新が完全に終了しているか、のいずれかの状態にされること、すなわち、ファイルの更新が不可分に行なわれることが要求される。特に家庭用の情報機器は、専門的な知識に乏しいユーザが使用することが一般的であるため、停電やコンセント抜け等による予期せぬ電源断が発生する確率が高く、ファイル更新中における電源断対策は重要な課題である。
そこで、上記問題を解決するために、更新前にバックアップファイルを作成し、ファイルが保存されている記憶装置とは別の記憶装置にファイルが更新中であることを表すフラグをセットし、更新完了後に記憶装置上のフラグをクリアし、バックアップファイルを削除することで、ファイルを不可分に更新する方法が開示されている(特許文献1)。この方法は、不揮発性メモリが、フラグの更新を不可分に行うことができる特性を利用したものである。
特開平2001−67256号公報
しかしながら、前記従来の構成では、フラグを保存するための記憶装置(不揮発性メモリなど)を、ファイルを保存する記憶装置とは別に用意する必要があり、製品のコストに上昇させる一因となる。
本発明は、前記従来の課題を解決するもので、ファイルを保存する記憶装置とは別の不揮発性メモリなどの記憶装置を用いなくとも、ファイルの更新を不可分に行うことが可能なファイル制御プログラム、ファイル制御装置及びファイル制御方法を提供することを目的とする。
上記課題を解決するために、本発明にかかるファイル制御プログラムは、種々のファイルを記憶する記憶手段と、記憶対象のデータからなるデータファイルを前記記憶手段に作成し、当該データファイルとファイル名によって関連付けられデータフラグファイルを前記記憶手段に作成するデータファイル作成手段と、更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを前記記憶手段に作成し、当該バックアップファイルに前記データファイルのデータをコピーし、前記バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、前記データフラグファイルを削除し、前記データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップファイル及び前記バックアップフラグファイルを削除するデータファイル更新手段と、前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧手段としてコンピュータを機能させることを特徴とする。
また、前記データ復旧手段は、前記データファイル及び前記データフラグファイルの両ファイルが前記記憶手段に存在する場合、前記バックアップファイル及び前記バックアップフラグファイルを前記記憶手段から削除することが好ましい。
さらに、前記データ復旧手段は、前記データファイル及び前記データフラグファイルの少なくともいずれか一方が前記記憶手段に存在せず、かつ、前記バックアップファイル及び前記バックアップフラグファイルの両ファイルが前記記憶手段に存在する場合は、前記データファイル及び前記データフラグファイルを前記記憶手段から削除し、新規のデータファイルを前記記憶手段に作成し、前記バックアップファイルのデータを、作成された新規のデータファイルにコピーし、当該データファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップフラグファイル及び前記バックアップファイルを削除することが好ましい。
さらに、前記データ復旧手段は、前記データファイル及び前記データフラグファイルの少なくともいずれか一方が前記記憶手段に存在せず、かつ、前記バックアップファイル及び前記バックアップフラグファイルの少なくともいずれか一方が前記記憶手段に存在しない場合は、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルを削除することが好ましい。
本発明にかかるファイル制御装置は、種々のファイルを記憶する記憶手段と、記憶対象のデータからなるデータファイルを前記記憶手段に作成し、当該データファイルとファイル名によって関連付けられデータフラグファイルを前記記憶手段に作成するデータファイル作成手段と、更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを前記記憶手段に作成し、当該バックアップファイルに前記データファイルのデータをコピーし、前記バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、前記データフラグファイルを削除し、前記データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップファイル及び前記バックアップフラグファイルを削除するデータファイル更新手段と、前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧手段とを備えることを特徴とする。
本発明にかかるファイル制御方法は、コンピュータが、種々のファイルを記憶する記憶手段に、記憶対象のデータからなるデータファイルを作成し、当該データファイルとファイル名によって関連付けられデータフラグファイルを前記記憶装置に作成するデータファイル作成ステップと、前記コンピュータが、更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを前記記憶手段に作成し、当該バックアップファイルに前記データファイルのデータをコピーし、前記バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、前記データフラグファイルを削除し、前記データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップファイル及び前記バックアップフラグファイルを削除するデータファイル更新ステップと、前記コンピュータが、前記データファイル更新ステップによるデータ更新処理が中断された場合、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧ステップとを備えることを特徴とする。
本発明にかかる別のファイル制御プログラムは、種々のファイルを記憶する記憶手段と、記憶対象のデータからなるデータファイルを前記記憶手段に作成するデータファイル作成手段と、更新対象のデータファイルのファイル名を、当該データファイルとファイル名により関連付けられたバックアップファイルのファイル名に変更し、前記データファイルとファイル名により関連付けられた一時ファイルを前記記憶手段に作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、前記一時ファイルを更新対象のデータで更新し、前記一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除するデータ更新手段と、前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル及び前記バックアップファイルの存在のパターンを基に、前記データファイルを復旧するデータファイル復旧手段としてコンピュータを機能させることを特徴とする。
また、上記別の発明にかかる制御プログラムにおいて、前記データファイル復旧手段は、前記記憶手段に前記データファイルが存在する場合、当該データファイルとファイル名によって関連付けられたバックアップファイルを削除することが好ましい。
さらに、上記別の発明にかかる制御プログラムにおいて、前記データファイル復旧手段は、前記データファイルが存在せず、前記バックアップファイルが存在する場合は、前記データファイルに関連付けられたファイル名を有する一時ファイルを作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、当該一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除することが好ましい。
さらに、上記別の発明にかかるファイル制御プログラムにおいて、前記データファイル復旧手段は、前記データファイル及び前記バックアップファイルのいずれも前記記憶手段に存在しない場合は、前記一時ファイルを削除することが好ましい。
本発明にかかる別のファイル制御装置は、種々のファイルを記憶する記憶手段と、記憶対象のデータからなるデータファイルを前記記憶手段に作成するデータファイル作成手段と、更新対象のデータファイルのファイル名を、当該データファイルにファイル名により関連付けられたバックアップファイルのファイル名に変更し、前記データファイルとファイル名により関連付けられた一時ファイルを前記記憶手段に作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、前記一時ファイルを更新対象のデータで更新し、前記一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除するデータ更新手段と、前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル及び前記バックアップファイルの存在のパターンを基に、前記データファイルを復旧するデータファイル復旧手段とを備えることを特徴とする。
本発明にかかる別のファイル制御方法は、コンピュータが、記憶対象のデータからなるデータファイルを種々のファイルを記憶する前記記憶手段に作成するデータファイル作成ステップと、前記コンピュータが、更新対象のデータファイルのファイル名を、当該データファイルにファイル名により関連付けられたバックアップファイルのファイル名に変更し、前記データファイルとファイル名により関連付けられた一時ファイルを前記記憶手段に作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、前記一時ファイルを更新対象のデータで更新し、前記一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除するデータ更新ステップと、前記コンピュータが、前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル及び前記バックアップファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧ステップとを備えることを特徴とする。
請求項1、5及び6記載の発明によれば、記憶手段に記憶対象のデータからなる新規のデータファイルを作成する場合、当該データファイルとファイル名によって関連付けられ、当該データファイルが更新処理中でないことを示すデータフラグファイルが作成される。
また、データファイルを更新する場合、バックアップファイルが作成され、データファイルのデータがバックアップファイルにコピーされて当該データがバックアップされ、当該バックアップファイルが更新処理中でないことを示すバックアップフラグファイルが作成される。そして、データフラグファイルが削除され、データファイルが更新対象のデータで更新され、再度データフラグファイルが作成される。
そして、データファイルの更新処理途中で、処理が中断されると、データファイル、フラグファイル、バックアップファイル及びバックアップフラグファイルの存在パターンより、データファイルへの復旧処理が行われる。すなわち、データファイル更新手段による更新処理中に適宜作成及び削除される上記4種のファイルの存在パターンから、更新処理がどの段階で中断されたかを特定することが可能となり、特定した段階に応じた復旧処理を行うことで、データファイルを不可分に復旧することができる。そして、データフラグファイル及びバックアップフラグファイルを用いているため、従来の装置のようにフラグを記憶するための記憶装置を別途用いる必要がなくなり、コストダウンを図ることができる。
請求項2記載の発明によれば、データファイル更新手段によるデータ更新処理が、データフラグファイルの作成直後に中断された場合、データファイルを不可分に復旧することができる。
請求項3記載の発明によれば、データファイル更新手段によるデータ更新処理が、例えばデータファイルへの更新対象データの書き込み処理中に中断された場合、データファイルを不可分に復旧することができる。
請求項4記載の発明によれば、データファイル更新手段によるデータ更新処理が、例えば、バックアップファイル作成直後に中断され、ファイルシステム破壊によりデータフラグファイルが消失した場合、データファイル作成以前の状態に復旧することができる。
請求項7、11及び12記載の発明によれば、データファイルを更新する場合、更新対象のデータファイルのファイル名が、バックアップファイルのファイル名に変更されてデータファイルがバックアップファイルとされる。そして、一時ファイルが作成され、当該一時ファイルにバックアップファイルのデータがコピーされる。そして、一時ファイルが、更新対象のデータにより更新され、当該一時ファイルのファイル名が、データファイルのファイル名に変更され、当該一時ファイルがデータファイルとされる。そして、不要となったバックアップファイルが削除され、データファイル及びバックアップフラグファイルの存在パターンによりデータファイルへの復旧処理が行われる。すなわち、データファイル更新手段によるデータ更新処理において適宜作成及び削除される一時ファイル、バックアップファイル及びデータファイルの存在パターンから、データ更新処理がどの段階で中断されたかを特定することが可能となり、特定した段階に応じた復旧処理を行うことにより、データファイルを不可分に復旧することができる。そして、一時ファイルを用いているため、従来の装置のようにフラグを記憶するための記憶装置を別途設ける必要がなく、コストダウンを図ることができる。
請求項8記載の発明によれば、データファイル更新手段による更新処理が、一時ファイルのファイル名をデータファイルのファイル名に変更した直後に中断された場合、データファイルを不可分に復旧することができる。
請求項9記載の発明によれば、データファイル更新手段による更新処理が、例えば、更新対象のデータを一時ファイルに書き込む処理中に中断された場合、更新データファイルを不可分に復旧することができる。
請求項10記載の発明によれば、データファイル更新手段による更新処理が、例えば、一時ファイルを作成した直後に中断し、ファイルシステム破壊によってバックアップファイルが消失した場合、データファイル作成以前の状態に復旧することができる。
(第1実施形態)
以下本発明の第1実施形態に係るファイル制御装置の実施形態について、図面を参照しながら説明する。図1は、ファイル制御装置100のブロック構成図を示している。ファイル制御装置100は、CPU(中央処理装置)と、CPUの作業領域として用いられるRAM(ランダムアクセスメモリ)と、BIOS(Basic Input Output System)等の基本プログラムを記憶するROM(リードオンリーメモリ)と、オペレーティングシステム及び本発明にかかるファイル制御プログラムを記憶するハードディスク等からなる一般的なコンピュータから構成されている。そして、CPUは、オペレーティングシステム及びファイル制御プログラムを実行することにより、プログラム実行部120として機能するとともに、ハードディスクを記憶部110として機能させる。なお、ファイル制御プログラムがCD−ROM等のコンピュータ読み取り可能な記録媒体に記録されて、提供される場合は、コンピュータが備える記録媒体駆動装置からインストールすることにより、ファイル制御プログラムを、ハードディスクに格納してもよい。また、ファイル制御プログラムが、コンピュータとインターネット等の通信回線を介して接続されたサーバに記憶されている場合、このサーバからダウンロードすることにより、ファイル制御プログラムをハードディスクに格納してもよい。
記憶部110は、データファイル111、データフラグファイル112、バックアップファイル113、バックアップフラグファイル114を記憶する。データファイル111は、記憶対象となるデータから構成されるファイルであり、1又は複数個存在する。
データフラグファイル112は、各データファイル111と関連づけられて存在し、その存在の有無により、関連づけられたデータファイル111が、現在、書き込み中であるか否かを示すフラグとして機能する。すなわち、データフラグファイル112が記憶部110に存在すれば、現在、関連づけられたデータファイル111は、書き込み処理中ではないことが示され、データフラグファイル112が記憶部110に存在しなければ、現在、関連づけられたデータファイル111は、書き込み処理中であることが示される。なお、データフラグファイル112は、例えば、ファイル名がAであるデータファイル111に対し、「.v」なる拡張子が付けられたファイル名とされるように(すなわち、「A.v」)、ファイル名によってデータファイル111と関連づけられる。この場合、データフラグファイル112は、ファイル名が重要であり、ファイルの中身のデータはどのようなデータ(空のデータを含む)であってもよい。
バックアップファイル113は、各データファイル111と関連づけられて存在し、関連づけられたデータファイル111のデータをバックアップするファイルである。なお、バックアップファイルは、例えば、ファイル名がAであるデータファイル111に対し、「.bak」なる拡張子が付けられたファイル名とされ(すなわち、A.bak)、ファイル名によってデータファイル111と関連づけられる。
バックアップフラグファイル114は、各バックアップファイル113と関連づけられて存在し、データフラグファイル112と同様に、その存在の有無により、関連づけられたバックアップファイル113が、現在、書き込み中であるか否かを示すフラグとして機能する。なお、バックアップフラグファイル114は、例えば「.bakv」なる拡張子が付され、データフラグファイル112と同様に、ファイル名によって、バックアップファイル113と関連づけられる。なお、上記拡張子を用いたファイル名による各種ファイルの関連付けは一例にすぎず、他の手法を用いてファイル名を関連づけてもよい。
プログラム実行部120は、管理部130及びファイル制御部140を備えている。管理部130は、ファイル作成部131、ファイル削除部132、ファイル書き込み部133及びファイル読み出し部134を備え、これらの機能は、オペレーティングシステムが予め備えている機能である。
ファイル作成部131は、種々のファイルを記憶部110に作成する。ここで、ファイル作成部131は、ファイル作成中に予期せぬ電源断が発生しても、電源復旧時には、ファイルの更新が全く行われていないか、あるいは、作成が完全に終了しているか、のいずれかの状態にするというように、ファイルの作成を不可分に行う。
ファイル削除部132は、記憶部110に記憶されている種々のファイルを削除する。ここで、ファイル削除部132は、ファイル作成部131同様、ファイルの削除を不可分に行う。
ファイル書き込み部133は、記憶部110に記憶されている種々のファイルに対し、データを書き込む。ファイル読み出し部134は、記憶部110に記憶されている種々のファイルからデータを読み出す。なお、ファイル作成部131〜ファイル読み出し部134の処理は、実行順に記憶部110に反映される。例えば、ファイル作成部131でファイルAを作成し、ファイル作成部131でファイルBを作成し、電源断が発生すると、ファイルAのファイルBの両方が存在するか、ファイルAのみ存在するか、ファイルAもファイルBも存在しないかのいずれかの状態になり、ファイルBのみが存在すると状態が生じない。不可分の処理及び各処理が実行順に記憶部110に反映される特性は、公知のJFFS2(Journaling Flash File System 2)ファイルシステムやext3ファイルシステム等のジャーナリングファイルシステムを備えるオペレーティングシステムを導入することで容易に実現可能である。
ファイル制御部140は、データファイル作成部141、データファイル更新部142及びデータファイル復旧部143を備えている。
データファイル作成部141は、ファイル作成部131を制御することにより、記憶部110に新規のデータファイルを作成する。データファイル更新部142は、ファイル作成部131〜ファイル読み出し部134を制御することにより、記憶部110に記憶された更新対象のデータファイル111を更新する。データファイル復旧部143は、ファイル作成部131〜ファイル読み出し部134を制御することにより、データファイル更新部142による更新処理が中断されたデータファイル111に対する復旧処理を行う。これらデータファイル作成部141〜データファイル復旧部143の処理の詳細については後述する。
図2は、データファイル作成部141の処理手順を示すフローチャートである。まず、ファイル作成部131を用いて、データファイル111及びデータフラグファイル112を作成する(S210)。
図3は、データファイル更新部142の処理手順を示すフローチャートである。まず、ファイル作成部131を用いて、更新対象のデータファイル111と関連づけられたバックアップファイル113を記憶部110に作成する(S310)。次に、ファイル読み出し部134及びファイル書き込み部133を用いて、更新対象のデータファイル111をバックアップファイル113にコピーする(S320)。本明細書では、「コピー」とは、あるファイルに記憶されたデータを別のファイルに格納することを示し、「ファイルを作成する」とは、ファイル名のみが付与され、データが空のファイルを作成することを示している。
コピー完了後に、ファイル作成部131を用いて、バックアップフラグファイル114を記憶部110に作成し(S330)、ファイル削除部132を用いて、データフラグファイル112を削除する(S340)。次に、ファイル書き込み部133を用いて、データファイル111のデータを更新対象のデータで更新する(S350)。更新が完了すれば、ファイル作成部131を用いて、データフラグファイル112を作成し(S360)、ファイル削除部132を用いて、バックアップフラグファイル114及びバックアップファイル113を削除する(S370)。
図4は、データファイル復旧部143の処理手順を示すフローチャートである。記憶部110に、データファイル111及びデータフラグファイル112が存在すれば(S410)、データファイル111が正しいデータからなることが分かる。したがって、バックアップファイル113及びバックアップフラグファイル114は不要となるため、ファイル削除部132を用いてバックアップフラグファイル114とバックアップファイル113を記憶部110から削除する(S415)。
データファイル111あるいはデータフラグファイル112のいずれか一方、又は、両方が存在しないときは(S410でNO)、バックアップファイル113及びバックアップフラグファイル114の存在を確認する(S420)。バックアップファイル113とバックアップフラグファイル114の両方が存在すれば(S420でYES)、S430以降のバックアップファイル113からデータファイル111を復元する処理を実行する。すなわち、ファイル削除部132を用いて、データファイル111及びデータフラグファイル112を削除し(S430)、ファイル作成部131を用いて、データファイル111を作成し(S440)、ファイル読み出し部134及びファイル書き込み部133を用いて、バックアップファイル113のデータをデータファイル111にコピーし(S450)、ファイル作成部131を用いて、データフラグファイル112を記憶部110に作成し(S460)、ファイル削除部132を用いて、バックアップファイル113及びバックアップフラグファイル114を削除する(S470)。
一方、ステップS420でNOの場合、ファイル削除部132を用いて、データファイル111及びデータフラグファイル112を削除する(S480)。
図3に示すフローチャートのデータファイル書き込み処理中(S350)に電源断が発生すると、電源が回復した直後の状態では、データファイル111が部分的に更新された状態で存在し、バックアップファイル113及びバックアップフラグファイル114が存在する状態になる。この場合、データファイル復旧部143は、S410でNOかつS420でYESと判定し、S410、S420、S430、S440、S450、S460及びS470の処理を実行し、バックアップファイル113から更新処理前のデータファイル111を復元する。
また、図3に示すフローチャートのデータフラグファイル作成(S360)の直後で電源断が発生すると、電源が回復したとき、データファイル111、データフラグファイル112、バックアップファイル113及びバックアップフラグファイル114が存在するため、データファイル復旧部143は、S410でYESと判定し、S415を実行する。これにより、データファイル111及びデータフラグファイル112が残り、データファイル更新完了後の状態になる。
さらに、電源断によってファイルシステムが破壊され、ファイルが消失することもまれにある。図3に示すフローチャートで示すデータフラグファイル作成(S360)の直後で電源断が発生し、電源が復旧したときに、データファイル111が消失していたとする。この場合、データファイル復旧部143は、データフラグファイル112、バックアップファイル113及びバックアップフラグファイル114が存在するため、S410でNO、S420でYESと判定し、S430、S450、S460、S470の処理を実行する。これにより、バックアップファイル113からファイル更新前のデータファイル111が復元される。
また、図3に示すフローチャートで示すバックアップファイル113作成(S310)直後で電源断が発生し、電源が復旧したときに、データフラグファイル112が消失していたとする。この場合、データファイル復旧部143は、データファイル111とバックアップファイル113が存在するが、データフラグファイル112もバックアップフラグファイル114も存在しないため、S410でNO、S420でNOと判定し、S480の処理を実行する。これにより、データファイル111とバックアップファイル113が削除されデータファイル111作成以前の状態が復旧される。
以上説明したように、ファイル制御装置100によれば、データファイル111の更新が電源断などによって中断されたり、データファイル111の更新中にデータファイル111が消失されたりしても、データフラグファイル112及びバックアップフラグファイル114等を用いた上記更新処理及び復旧処理が実行されるため、データファイル111は、更新処理前あるいは更新処理完了後のいずれかの状態とされ、フラグを記憶するための記憶装置を別途設けることなく、データファイル111の更新を不可分に行うことができる。その結果、装置の低コスト化を図ることができる。
(第2実施形態)
図5は、本発明の第2実施形態にかかるファイル制御装置500のブロック図を示している。ファイル制御装置500は、データフラグファイル112及びバックアップフラグファイル114を用いる代わりに、一時ファイル513を用いて、データファイルの更新処理を不可分に行なうものである。なお、ファイル制御装置100と機能が同一のブロックについては、同一の名称を付し説明を省略する。ファイル名変更部535は、記憶部510に記憶された種々のファイルのファイル名を変更する。
図6は、データファイル作成部541がデータファイル511を作成するときの処理手順を示したフローチャートである。データファイル511をファイル作成部531を用いて作成する(S610)。
図7は、データファイル更新部542が、更新対象のデータファイル511を更新するときの処理手順を示すフローチャートである。まず、ファイル名変更部535を用いてデータファイル511のファイル名をバックアップファイル512のファイル名に変更する(S710)。次に、データファイルのファイル名に関連付けられたファイル名を持つ一時ファイルをファイル作成部531を用いて作成する(S720)。一時ファイルのファイル名はデータファイル511の名前の後ろに、例えば「.tmp」という拡張子が付けられる。データファイル511のファイル名がAであれば一時ファイル513のファイル名はA.tmpとされる。次に、ファイル読み出し部534及びファイル書き込み部533を用いて、バックアップファイルのデータを一時ファイルにコピーする(S730)。次に、ファイル書き込み部533を用いて、更新対象のデータを書込むことにより一時ファイルを更新し(S740)、ファイル名変更部535を用いて、一時ファイル513のファイル名をデータファイル511のファイル名に変更する(S750)。最後に、バックアップファイル512を削除する(S760)。
図8は、データファイル更新部542によるデータファイル更新処理が電源断等により中断され、復旧時にデータファイル復旧部543によって実行される復旧処理手順を示したフローチャートである。更新処理が中断されたデータファイル511が存在すれば(S810でYES)、バックアップファイル512は不要となるため、ファイル削除部532を用いて、バックアップファイル512を削除する(S815)。
一方、データファイル511がないときは(S810でNO)、バックアップファイル512の存在を確認する(S820)。バックアップファイル512が存在すれば(S820でYES)、バックアップファイル512からデータファイル511を回復するために、ファイル削除部532を用いて、一時ファイル513を削除し(S830)、ファイル作成部531を用いて、一時ファイル513を作成し(S840)、ファイル読み出し部534及びファイル書き込み部533を用いて、バックアップファイル512のデータを一時ファイル513にコピーし(S850)、ファイル名変更部535を用いて、一時ファイル513のファイル名をデータファイル511のファイル名に変更し、ファイル削除部532を用いて、バックアップファイル512を削除する(S870)。
一方、S820でNOの場合、ファイル削除部532を用いて、一時ファイル513を削除する(S880)。
データファイル更新部542の一時ファイルの更新中(S740)に電源断が発生し、電源が回復した直後の状態では、一時ファイル513が部分的に更新された状態で存在し、バックアップファイル512が存在する状態になる。この場合、データファイル復旧部543は、S810でNO、S820でYESと判定し、S830、S840、S850、S860、S870の処理を実行し、バックアップファイル512から更新処理前のデータファイル511を復元する。
また、データファイル更新部542の一時ファイルのファイル名をデータファイルのファイル名に変更した(S750)直後で電源断が発生し、電源が回復した直後の状態は、データファイル511、バックアップファイル512が存在する。この場合、データファイル復旧部543は、S810でYESと判定し、S815の処理を実行し、データファイル511が残り、データファイル更新完了後の状態になる。
電源断によってファイルシステムが破壊され、ファイルが消失することもまれにある。データファイル更新部542の一時ファイルのファイル名をデータファイルのファイル名に変更した(S750)直後で電源断が発生し、電源が復旧したときに、データファイル511が消失していたとする。この場合、バックアップファイル512が存在する。データファイル復旧部543は、S810でNO、S820でYESと判定し、S830、S850、S860及びS870の処理を実行し、バックアップファイル512からファイル更新前のデータファイル511を復元する。
以上説明したように、ファイル制御装置500によれば、データファイルの更新処理が電源断などによって中断されたり、データファイルの更新中にデータファイルが消失されたりしても、一時ファイル等を用いた上記更新処理及び復旧処理が実行されるため、データファイル511は、更新処理前あるいは更新処理完了後のいずれかの状態とされ、フラグを記憶するための記憶装置を別途設けることなく、データファイルの更新を不可分に行うことができる。その結果、装置の低コスト化を図ることができる。
なお、上記実施形態では、ファイル制御部140及び540は、管理部130及び530の各ブロックを利用するものであったが、これに限定されず、ファイル制御部140及び540が管理部を含むものであってもよい。
また、記憶部110及び510は、ハードディスクから構成されるとしたが、これに限定されず、フラッシュメモリ、フレキシブルディスク等、ファイル形式でデータを記憶する記憶装置であれば、本発明に適用することができる。
また、上記説明では、本発明をコンピュータに適用した場合を示したが、これに限定されず、設定情報などを設定ファイルに保存し、使用者の入力等にしたがって設定ファイルを更新する家電製品に適用してもよい。また、ネット家電製品に適用してもよい。ここで、ネット家電製品とは、ネットワーク上のサーバと通信可能に接続され、当該サーバから、例えば種々のコンテンツファイルをダウンロードし、自己のファイルを書き換えることができる電子レンジや洗濯機等の家電製品およびこのような家電製品のコントローラが該当する。
本発明のファイル更新方法は、電源断が発生しやすいネット家電製品におけるファイル更新の電源断対策として有用である。また、コンピュータなどの情報機器のファイル書き込み方法としても適用可能である。
本発明にかかる第1実施形態のファイル制御装置のブロック図である。 第1実施形態にかかるファイル制御装置のデータファイル作成処理を示すフローチャートである。 第1実施形態にかかるファイル制御装置のデータファイル更新処理を示すフローチャートである。 第1実施形態にかかるファイル制御装置のデータファイル復旧処理を示すフローチャートである。 本発明にかかる第2実施形態のファイル制御装置のブロック図である。 第2実施形態にかかるファイル制御装置のデータファイル作成処理を示すフローチャートである。 第2実施形態にかかるファイル制御装置のデータファイル更新処理を示すフローチャートである。 第2実施形態にかかるファイル制御装置のデータファイル復旧処理を示すフローチャートである。
符号の説明
100 ファイル制御装置
110 記憶部
111 データファイル
112 データフラグファイル
113 バックアップファイル
114 バックアップフラグファイル
120 プログラム実行部
130 管理部
131 ファイル作成部
132 ファイル削除部
133 ファイル書き込み部
134 ファイル読み出し部
140 ファイル制御部
141 データファイル作成部
142 データファイル更新部
143 データファイル復旧部
500 ファイル制御装置
510 記憶部
511 データファイル
512 バックアップファイル
513 一時ファイル
531 ファイル作成部
532 ファイル削除部
533 ファイル書き込み部
534 ファイル読み出し部
535 ファイル名変更部
541 データファイル作成部
542 データファイル更新部
543 データファイル復旧部

Claims (12)

  1. 種々のファイルを記憶する記憶手段と、
    記憶対象のデータからなるデータファイルを前記記憶手段に作成し、当該データファイルとファイル名によって関連付けられデータフラグファイルを前記記憶手段に作成するデータファイル作成手段と、
    更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを前記記憶手段に作成し、当該バックアップファイルに前記データファイルのデータをコピーし、前記バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、前記データフラグファイルを削除し、前記データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップファイル及び前記バックアップフラグファイルを削除するデータファイル更新手段と、
    前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧手段としてコンピュータを機能させることを特徴とするファイル制御プログラム。
  2. 前記データ復旧手段は、前記データファイル及び前記データフラグファイルの両ファイルが前記記憶手段に存在する場合、前記バックアップファイル及び前記バックアップフラグファイルを前記記憶手段から削除することを特徴とする請求項1記載のファイル制御プログラム。
  3. 前記データ復旧手段は、前記データファイル及び前記データフラグファイルの少なくともいずれか一方が前記記憶手段に存在せず、かつ、前記バックアップファイル及び前記バックアップフラグファイルの両ファイルが前記記憶手段に存在する場合は、前記データファイル及び前記データフラグファイルを前記記憶手段から削除し、新規のデータファイルを前記記憶手段に作成し、前記バックアップファイルのデータを、作成された新規のデータファイルにコピーし、当該データファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップフラグファイル及び前記バックアップファイルを削除することを特徴とする請求項1又は2記載のファイル制御プログラム。
  4. 前記データ復旧手段は、前記データファイル及び前記データフラグファイルの少なくともいずれか一方が前記記憶手段に存在せず、かつ、前記バックアップファイル及び前記バックアップフラグファイルの少なくともいずれか一方が前記記憶手段に存在しない場合は、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルを削除することを特徴とする請求項1〜3のいずれかに記載のファイル制御プログラム。
  5. 種々のファイルを記憶する記憶手段と、
    記憶対象のデータからなるデータファイルを前記記憶手段に作成し、当該データファイルとファイル名によって関連付けられデータフラグファイルを前記記憶手段に作成するデータファイル作成手段と、
    更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを前記記憶手段に作成し、当該バックアップファイルに前記データファイルのデータをコピーし、前記バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、前記データフラグファイルを削除し、前記データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップファイル及び前記バックアップフラグファイルを削除するデータファイル更新手段と、
    前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧手段とを備えることを特徴とするファイル制御装置。
  6. コンピュータが、種々のファイルを記憶する記憶手段に、記憶対象のデータからなるデータファイルを作成し、当該データファイルとファイル名によって関連付けられデータフラグファイルを前記記憶装置に作成するデータファイル作成ステップと、
    前記コンピュータが、更新対象のデータファイルとファイル名によって関連付けられたバックアップファイルを前記記憶手段に作成し、当該バックアップファイルに前記データファイルのデータをコピーし、前記バックアップファイルとファイル名によって関連付けられたバックアップフラグファイルを作成し、前記データフラグファイルを削除し、前記データファイルを更新対象のデータで更新し、更新されたデータファイルとファイル名によって関連付けられたデータフラグファイルを作成し、前記バックアップファイル及び前記バックアップフラグファイルを削除するデータファイル更新ステップと、
    前記コンピュータが、前記データファイル更新ステップによるデータ更新処理が中断された場合、前記データファイル、前記データフラグファイル、前記バックアップファイル及び前記バックアップフラグファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧ステップとを備えることを特徴とするファイル制御方法。
  7. 種々のファイルを記憶する記憶手段と、
    記憶対象のデータからなるデータファイルを前記記憶手段に作成するデータファイル作成手段と、
    更新対象のデータファイルのファイル名を、当該データファイルとファイル名により関連付けられたバックアップファイルのファイル名に変更し、前記データファイルとファイル名により関連付けられた一時ファイルを前記記憶手段に作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、前記一時ファイルを更新対象のデータで更新し、前記一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除するデータ更新手段と、
    前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル及び前記バックアップファイルの存在のパターンを基に、前記データファイルを復旧するデータファイル復旧手段としてコンピュータを機能させることを特徴とするファイル制御プログラム。
  8. 前記データファイル復旧手段は、前記記憶手段に前記データファイルが存在する場合、当該データファイルとファイル名によって関連付けられたバックアップファイルを削除することを特徴とする請求項7記載のファイル制御プログラム。
  9. 前記データファイル復旧手段は、前記データファイルが存在せず、前記バックアップファイルが存在する場合は、前記データファイルに関連付けられたファイル名を有する一時ファイルを作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、当該一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除することを特徴とする請求項7又は8記載のファイル制御プログラム。
  10. 前記データファイル復旧手段は、前記データファイル及び前記バックアップファイルのいずれも前記記憶手段に存在しない場合は、前記一時ファイルを削除することを特徴とする請求項7〜9のいずれかに記載のファイル制御プログラム。
  11. 種々のファイルを記憶する記憶手段と、
    記憶対象のデータからなるデータファイルを前記記憶手段に作成するデータファイル作成手段と、
    更新対象のデータファイルのファイル名を、当該データファイルにファイル名により関連付けられたバックアップファイルのファイル名に変更し、前記データファイルとファイル名により関連付けられた一時ファイルを前記記憶手段に作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、前記一時ファイルを更新対象のデータで更新し、前記一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除するデータ更新手段と、
    前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル及び前記バックアップファイルの存在のパターンを基に、前記データファイルを復旧するデータファイル復旧手段とを備えることを特徴とするファイル制御装置。
  12. コンピュータが、記憶対象のデータからなるデータファイルを種々のファイルを記憶する前記記憶手段に作成するデータファイル作成ステップと、
    前記コンピュータが、更新対象のデータファイルのファイル名を、当該データファイルにファイル名により関連付けられたバックアップファイルのファイル名に変更し、前記データファイルとファイル名により関連付けられた一時ファイルを前記記憶手段に作成し、前記バックアップファイルのデータを前記一時ファイルにコピーし、前記一時ファイルを更新対象のデータで更新し、前記一時ファイルのファイル名を前記データファイルのファイル名に変更し、前記バックアップファイルを削除するデータ更新ステップと、
    前記コンピュータが、前記データファイル更新手段によるデータ更新処理が中断された場合、前記データファイル及び前記バックアップファイルの存在パターンを基に、前記データファイルを復旧するデータファイル復旧ステップとを備えることを特徴とするファイル制御方法。
JP2003307793A 2003-08-29 2003-08-29 ファイル制御プログラム、ファイル制御装置及びファイル制御方法 Withdrawn JP2005078368A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003307793A JP2005078368A (ja) 2003-08-29 2003-08-29 ファイル制御プログラム、ファイル制御装置及びファイル制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003307793A JP2005078368A (ja) 2003-08-29 2003-08-29 ファイル制御プログラム、ファイル制御装置及びファイル制御方法

Publications (1)

Publication Number Publication Date
JP2005078368A true JP2005078368A (ja) 2005-03-24

Family

ID=34410478

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003307793A Withdrawn JP2005078368A (ja) 2003-08-29 2003-08-29 ファイル制御プログラム、ファイル制御装置及びファイル制御方法

Country Status (1)

Country Link
JP (1) JP2005078368A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007316944A (ja) * 2006-05-25 2007-12-06 Toshiba Corp データ処理装置、データ処理方法、およびデータ処理プログラム
JP2012008997A (ja) * 2010-05-26 2012-01-12 Sanyo Electric Co Ltd ファイルデータ保護機能を備えた電子装置及びファイル保護方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007316944A (ja) * 2006-05-25 2007-12-06 Toshiba Corp データ処理装置、データ処理方法、およびデータ処理プログラム
JP2012008997A (ja) * 2010-05-26 2012-01-12 Sanyo Electric Co Ltd ファイルデータ保護機能を備えた電子装置及びファイル保護方法

Similar Documents

Publication Publication Date Title
JP5346253B2 (ja) ファームウェア更新システム、及び情報機器、並びにプログラム
JP6064608B2 (ja) ストレージ装置、バックアッププログラム、およびバックアップ方法
US8229892B2 (en) Storage apparatus and data restoring method used therein
JP4940599B2 (ja) 情報処理装置、情報処理装置制御プログラム、情報処理装置制御方法
JP2007034487A (ja) 情報処理装置及びその制御方法、コンピュータプログラム
JP4937863B2 (ja) 計算機システム、管理計算機及びデータ管理方法
JP2010282586A (ja) ファイル管理装置、ファイル管理方法、ファイル管理プログラム及び情報システム
JP2000020367A (ja) 情報記憶方法および情報記憶装置および記録媒体
JP2005078368A (ja) ファイル制御プログラム、ファイル制御装置及びファイル制御方法
JP3037183B2 (ja) ハードディスク装置管理方式および方法
JP2010009553A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
US11269739B2 (en) Method and system for managing backup data
JP2005506632A (ja) 大容量記憶装置用セキュリティ装置
KR20010070803A (ko) 복구 및 백업 시스템과 그 방법
JP3818130B2 (ja) データ管理方法及び装置及びデータ管理プログラム及びデータ管理プログラムを格納した記憶媒体
JP2002023964A (ja) コンピュータ・システムにおける記録媒体に記憶された情報の制御方法
KR101969799B1 (ko) 전자 장치 및 제어 방법
JP5974620B2 (ja) バックアップ方法、プログラムおよびバックアップ装置
JP2005222531A (ja) データ記録装置及びデータ記録方法
JP5086540B2 (ja) ファイル管理方法、ファイル管理プログラムおよびファイル管理装置
JP2007102649A (ja) アプリケーションのファイル保存方法
JP2005293272A (ja) データ管理システム、データ管理方法、データ管理プログラム、およびファイル管理プログラム
JP5718746B2 (ja) メモリシステム、セキュリティメモリおよび情報保護方法
JP2005227983A (ja) 情報記憶装置
JP2004005524A (ja) データ記録装置、データ記録方法、当該方法を実行するためのプログラム及びプログラム記録媒体

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20061107