(57)【要約】【課題】正当性が確保された更新後のデータをNOR型フラッシュメモリに記憶させておくことができるようにする。【解決手段】更新後の管理領域が生成されたとき、更新前の管理領域のコピーがバックアップセクタに書き込まれる。更新前の管理領域のコピーがバックアップセクタに書き込まれたとき、シグネチャ領域Ａ1に書き込まれているシグネチャを構成する全てのビットの値が「０」で上書きされることによって、更新前の管理領域に付加されているシグネチャが無効化される。シグネチャが無効化された後、管理領域セクタに書き込まれている更新前の管理領域が消去され、更新後の管理領域が管理領域セクタに書き込まれる。本発明は、NOR型のフラッシュメモリを有する装置に適用することができる。【選択図】図２
2008071223.tif 000002
【特許請求の範囲】
【請求項１】
ファイルシステムを管理するデータであって、認証用のデータが付加されている管理領域と、ファイルデータ本体とを含むファイルシステムを有する情報処理装置において、
前記管理領域が書き込まれる記録領域である第１のセクタと、前記管理領域のコピーが書き込まれる記録領域である第２のセクタが形成されるNOR型フラッシュメモリと、
前記第１のセクタに書き込まれている前記管理領域を更新した更新後の前記管理領域を生成する生成手段と、
前記第１のセクタに書き込まれている更新前の前記管理領域のコピーを前記第２のセクタに書き込み、更新前の前記管理領域に付加されている前記認証用のデータを無効化してから、更新前の前記管理領域を消去し、前記生成手段により生成された更新後の前記管理領域を前記第１のセクタに書き込む書き込み制御手段と
を備える情報処理装置。
【請求項２】
前記第１のセクタに書き込まれている更新後の前記管理領域に付加されている前記認証用のデータの正当性を装置の起動時に検証する検証手段と、
前記認証用のデータの正当性が前記検証手段により検証されたとき、前記書き込み制御手段により前記第１のセクタに書き込まれた更新後の前記管理領域によってファイルシステムを管理し、所定の処理を行う処理手段と
をさらに備える請求項１に記載の情報処理装置。
【請求項３】
前記処理手段は、さらに、前記認証用のデータの正当性が前記検証手段により検証されなかったとき、前記書き込み制御手段により前記第２のセクタに書き込まれた更新前の前記管理領域のコピーによってファイルシステムを管理し、所定の処理を行う
請求項１に記載の情報処理装置。
【請求項４】
ファイルシステムを管理するデータであって、認証用のデータが付加されている管理領域と、ファイルデータ本体とを含むファイルシステムを有し、前記管理領域が書き込まれる記録領域である第１のセクタと、前記管理領域のコピーが書き込まれる記録領域である第２のセクタが形成されるNOR型フラッシュメモリを備える情報処理装置の情報処理方法において、
前記第１のセクタに書き込まれている前記管理領域を更新した更新後の前記管理領域を生成し、
前記第１のセクタに書き込まれている更新前の前記管理領域のコピーを前記第２のセクタに書き込み、更新前の前記管理領域に付加されている前記認証用のデータを無効化してから、更新前の前記管理領域を消去し、生成した更新後の前記管理領域を前記第１のセクタに書き込む
ステップを含む情報処理方法。
【請求項５】
ファイルシステムを管理するデータであって、認証用のデータが付加されている管理領域と、ファイルデータ本体とを含むファイルシステムを有し、前記管理領域が書き込まれる記録領域である第１のセクタと、前記管理領域のコピーが書き込まれる記録領域である第２のセクタが形成されるNOR型フラッシュメモリを備える情報処理装置の情報処理をコンピュータに実行させるプログラムにおいて、
前記第１のセクタに書き込まれている前記管理領域を更新した更新後の前記管理領域を生成し、
前記第１のセクタに書き込まれている更新前の前記管理領域のコピーを前記第２のセクタに書き込み、更新前の前記管理領域に付加されている前記認証用のデータを無効化してから、更新前の前記管理領域を消去し、生成した更新後の前記管理領域を前記第１のセクタに書き込む
ステップを含むプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、およびプログラムに関し、特に、正当性が確保された更新後のデータをNOR型フラッシュメモリに記憶させておくことができるようにした情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
NAND型フラッシュメモリより１回の読み出しの対象となるデータの量が小さく、データの読み出しが容易であることなどから、装置の起動時に実行されるプログラムコードなどの各種のデータの記録媒体としてNOR型フラッシュメモリが用いられることがある。
【０００３】
起動時に実行するプログラムコードがNOR型フラッシュメモリに書き込まれていることにより、CPU(Central Processing Unit)は、起動時に実行するプログラムコードをNOR型フラッシュメモリから直接読み出すことができ、NAND型フラッシュメモリに書き込まれているプログラムコードをRAM(Random Access Memory)に１度展開し、それを実行することによって起動する場合に較べて、装置の起動を容易に行うことができる。
【０００４】
特許文献１には、電源の遮断などのトラブルが発生したときにFAT(File Allocation Table)が破壊されることを防ぐことができるようにした技術が開示されている。
【特許文献１】特開２００５−６０３４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このようなNOR型フラッシュメモリ上に構築されたFATファイルシステムによってファイルを管理する場合、NOR型フラッシュメモリに形成された記録領域の単位であるセクタのサイズは比較的大きいため、FATファイルシステムを管理するデータである管理領域は１つのセクタ内に書き込まれていることが多い。
【０００６】
管理情報には、MBR(Master Boot Record)、PBR(Partition Boot Record)、FATなどが含まれる。MBRは、NOR型フラッシュメモリのセクタの位置、サイズを表すテーブルや、起動時に読み出されるIPL(Initial Program Loader)などを含むデータであり、PBRは、IPLによって読み出され、実行されるデータである。FATは、ファイル（クラスタ）の使用状態を記録、管理するためのテーブルである。
【０００７】
従って、電源ケーブルがユーザにより抜かれるなどして、１つのセクタに書き込まれている管理領域の消去／更新中に電源の遮断が発生した場合、管理領域全体が破損してしまう可能性が高い。
【０００８】
管理領域を更新する場合、更新前の管理領域を消去してから更新後の管理領域を書き込むことになるが、NOR型フラッシュメモリには、データの消去はセクタ単位で行わなければならないといった制約があることから、管理領域全体が１つのセクタに書き込まれているものとすると、更新時には、１度、管理領域全体が消去されることになる。例えば、このように管理領域全体が消去されているときに電源の遮断などが発生すると、管理領域全体が破損してしまい、この場合、ファイルシステム全体を初期化しなければ正常な動作を確保することができなくなる。
【０００９】
本発明はこのような状況に鑑みてなされたものであり、正当性が確保された更新後のデータをNOR型フラッシュメモリに記憶させておくことができるようにするものである。
【課題を解決するための手段】
【００１０】
本発明の一側面の情報処理装置は、ファイルシステムを管理するデータであって、認証用のデータが付加されている管理領域と、ファイルデータ本体とを含むファイルシステムを有する情報処理装置において、前記管理領域が書き込まれる記録領域である第１のセクタと、前記管理領域のコピーが書き込まれる記録領域である第２のセクタが形成されるNOR型フラッシュメモリと、前記第１のセクタに書き込まれている前記管理領域を更新した更新後の前記管理領域を生成する生成手段と、前記第１のセクタに書き込まれている更新前の前記管理領域のコピーを前記第２のセクタに書き込み、更新前の前記管理領域に付加されている前記認証用のデータを無効化してから、更新前の前記管理領域を消去し、前記生成手段により生成された更新後の前記管理領域を前記第１のセクタに書き込む書き込み制御手段とを備える。
【００１１】
前記第１のセクタに書き込まれている更新後の前記管理領域に付加されている前記認証用のデータの正当性を装置の起動時に検証する検証手段と、前記認証用のデータの正当性が前記検証手段により検証されたとき、前記書き込み制御手段により前記第１のセクタに書き込まれた更新後の前記管理領域によってファイルシステムを管理し、所定の処理を行う処理手段とをさらに設けることができる。
【００１２】
前記処理手段には、さらに、前記認証用のデータの正当性が前記検証手段により検証されなかったとき、前記書き込み制御手段により前記第２のセクタに書き込まれた更新前の前記管理領域のコピーによってファイルシステムを管理させ、所定の処理を行わせることができる。
【００１３】
本発明の一側面の情報処理方法またはプログラムは、第１のセクタに書き込まれている管理領域を更新した更新後の管理領域を生成し、前記第１のセクタに書き込まれている更新前の管理領域のコピーを第２のセクタに書き込み、更新前の前記管理領域に付加されている認証用のデータを無効化してから、更新前の前記管理領域を消去し、生成した更新後の前記管理領域を前記第１のセクタに書き込むステップを含む。
【００１４】
本発明の一側面においては、第１のセクタに書き込まれている管理領域を更新した更新後の管理領域が生成され、前記第１のセクタに書き込まれている更新前の管理領域のコピーが第２のセクタに書き込まれる。また、更新前の前記管理領域に付加されている認証用のデータが無効化されてから、更新前の前記管理領域が消去され、生成された更新後の前記管理領域が前記第１のセクタに書き込まれる。
【発明の効果】
【００１５】
本発明の一側面によれば、正当性が確保された更新後のデータをNOR型フラッシュメモリに記憶させておくことができる。
【発明を実施するための最良の形態】
【００１６】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。従って、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外には対応しないものであることを意味するものでもない。
【００１７】
本発明の一側面の情報処理装置（例えば、図１の記録再生装置１）は、ファイルシステムを管理するデータであって、認証用のデータが付加されている管理領域と、ファイルデータ本体とを含むファイルシステムを有する情報処理装置において、前記管理領域が書き込まれる記録領域である第１のセクタと、前記管理領域のコピーが書き込まれる記録領域である第２のセクタが形成されるNOR型フラッシュメモリ（例えば、図１のフラッシュメモリ１３）と、前記第１のセクタに書き込まれている前記管理領域を更新した更新後の前記管理領域を生成する生成手段（例えば、図３の更新データ生成部３１）と、前記第１のセクタに書き込まれている更新前の前記管理領域のコピーを前記第２のセクタに書き込み、更新前の前記管理領域に付加されている前記認証用のデータを無効化してから、更新前の前記管理領域を消去し、前記生成手段により生成された更新後の前記管理領域を前記第１のセクタに書き込む書き込み制御手段（例えば、図３の読み書き制御部３２）とを備える。
【００１８】
この情報処理装置には、前記第１のセクタに書き込まれている更新後の前記管理領域に付加されている前記認証用のデータの正当性を装置の起動時に検証する検証手段（例えば、図３のシグネチャ管理部３３）と、前記認証用のデータの正当性が前記検証手段により検証されたとき、前記書き込み制御手段により前記第１のセクタに書き込まれた更新後の前記管理領域によってファイルシステムを管理し、所定の処理を行う処理手段（例えば、図３の処理部３４）とをさらに設けることができる。
【００１９】
本発明の一側面の情報処理方法またはプログラムは、第１のセクタに書き込まれている管理領域を更新した更新後の管理領域を生成し、前記第１のセクタに書き込まれている更新前の管理領域のコピーを第２のセクタに書き込み、更新前の前記管理領域に付加されている認証用のデータを無効化してから、更新前の前記管理領域を消去し、生成した更新後の前記管理領域を前記第１のセクタに書き込むステップ（例えば、図４のステップＳ６）を含む。
【００２０】
以下、本発明の実施の形態について図を参照して説明する。
【００２１】
図１は、本発明の一実施形態に係る記録再生装置１のハードウェア構成例を示すブロック図である。
【００２２】
記録再生装置１は、BS(Broadcasting Satellite)／CS(Communications Satellite)デジタルテレビジョン放送、地上波デジタルテレビジョン放送、またはインターネットを介した放送によって提供される番組を受信し、受信した番組の映像や音声を、ケーブルなどを介して接続されるTV（テレビジョン受像機）から出力させる機能を有する装置である。記録再生装置１には、ハードディスクなどの記録媒体も内蔵されており、そこに番組のデータを記録（録画）することができるようになされている。
【００２３】
図１に示されるように、記録再生装置１は、CPU(Central Processing Unit)１１、RAM(Random Access Memory)１２、フラッシュメモリ１３、ハードディスク１４、バス１５、チューナ１６、復調器１７、TSデコーダ１８、AV(Audio Visual)デコーダ１９、MUX(multiplexer)２０，２１、および、表示コントローラ２２から構成される。
【００２４】
CPU１１は、フラッシュメモリ１３に記憶されたプログラムや、ハードディスク１４からRAM１２にロードされたプログラムを実行し、バス１５を介して接続される各部の動作を制御する。
【００２５】
RAM１２は、CPU１１によって実行されるプログラムや、プログラムの実行に必要な一時的なデータなどを記憶する。
【００２６】
フラッシュメモリ１３はNOR型のフラッシュメモリであり、RAM１２にロードされることなくCPU１１により直接読み出され、実行されるプログラムコードや、ユーザにより設定された録画予約の内容を表すファイルなどの各種のデータを記憶する。
【００２７】
また、フラッシュメモリ１３は、ファイルシステムを管理するデータである管理領域を記憶する。ファイルシステムは、この管理領域とファイルデータ本体から構成される。フラッシュメモリ１３に記憶されている管理領域には、記録再生装置１の起動時にその正当性を検証するために用いられる認証用のデータであるシグネチャが付加されている。
【００２８】
後述するように、フラッシュメモリ１３には複数のセクタが形成されており、そのうちの１つのセクタは、管理領域全体を書き込んでおくためのセクタとして割り当てられる。また、他の１つのセクタは、管理領域を更新するときのバックアップ用のセクタとして割り当てられる。バックアップ用のセクタには、管理領域の更新時に、更新前の管理領域のコピーが書き込まれる。管理領域の更新は、記録再生装置１において各種の処理が行われることによってファイルデータ本体が新たに生成されたときや、ファイルデータ本体が更新されたときなどに行われる。
【００２９】
ハードディスク１４は、TSデコーダ１８からバス１５を介して供給された、録画の対象になっている番組のデータやEPG(Electronic Program Guide)を記録する。
【００３０】
チューナ１６は、CPU１１による制御に従って、アンテナからの放送信号を受信し、受信信号を復調器１７に出力する。
【００３１】
復調器１７は、チューナ１６から供給された受信信号を復調し、所定のチャンネルで放送されるトランスポートストリームをTSデコーダ１８に出力する。
【００３２】
TSデコーダ１８は、CPU１１による制御に従って、復調器１７から供給されたトランスポートストリームから所定のストリームを抽出し、抽出したストリームを構成するパケットをバス１５上に、または、AVデコーダ１９に出力する。バス１５上に出力されたパケット（番組のデータ）はハードディスク１４に供給され、記録される。TSデコーダ１８により得られたEPGも、適宜、ハードディスク１４に供給され、記録される。
【００３３】
AVデコーダ１９は、TSデコーダ１８から供給されたビデオパケットとオーディオパケットをデコードし、デコードして得られたオーディオデータをMUX２０に、ビデオデータをMUX２１にそれぞれ出力する。また、AVデコーダ１９は、録画済みの番組のデータがハードディスク１４から読み出され、供給されたとき、それをデコードし、デコードして得られたオーディオデータをMUX２０に、ビデオデータをMUX２１にそれぞれ出力する。
【００３４】
MUX２０は、AVデコーダ１９から供給されたオーディオデータとCPU１１から供給されたデータに基づいて、対応する音声をTVのスピーカから出力させる。
【００３５】
MUX２１は、AVデコーダ１９から供給されたビデオデータと表示コントローラ２２から供給されたビデオデータに基づいて、番組の映像などをTVに表示させる。表示コントローラ２２からは、例えば、録画済みの番組のリストの表示に用いられるデータが供給される。
【００３６】
表示コントローラ２２は、CPU１１による制御に従って、TVに表示させる画像のデータを生成し、生成したデータをMUX２１に出力する。
【００３７】
図２は、図１のフラッシュメモリ１３の記録領域の例を示す図である。
【００３８】
上述したように、フラッシュメモリ１３には複数のセクタが形成されており、図２にはセクタ１とセクタ２の２つのセクタが示されている。セクタ１とセクタ２は、それぞれ、６４kbyteなどの同じサイズを有するセクタである。
【００３９】
図２の例においては、セクタ１は管理領域用のセクタとして割り当てられ、そこには管理領域全体が書き込まれている。セクタ１には、そこに書き込まれている管理領域の正当性を検証するために用いられるシグネチャが書き込まれる領域であるシグネチャ領域Ａ1も確保されている。
【００４０】
シグネチャは、所定の値を表す所定の数のビットからなり、全てが「０」を表すビットからなるもの以外の固定のデータである。シグネチャは、管理領域の書き込みが完了した後、セクタ１のシグネチャ領域Ａ1に最後に書き込まれる。
【００４１】
また、図２の例においては、セクタ２は管理領域の更新時のバックアップ用のセクタとして割り当てられている。セクタ２にも、シグネチャが書き込まれる領域であるシグネチャ領域Ａ2が確保されている。
【００４２】
以下、適宜、管理領域用のセクタとして割り当てられているセクタ１を管理領域セクタともいい、バックアップ用のセクタとして割り当てられているセクタ２をバックアップセクタともいう。
【００４３】
このように、複数のセクタが形成されるNOR型フラッシュメモリに記憶された管理領域などのデータの消去はセクタ単位で行われる。記憶されているデータを消去することは、１度、セクタに含まれる全てのビットの値を「０」にしてから「１」にすることであり、このようにしてビットの値を書き換えることは、セクタの先頭の位置のビットからアドレス順に進められるといったように決まった順番で行われるものではなく、ランダムに進められる。
【００４４】
従って、データの消去が開始された直後では、既に書き換えられて「１」の値を表すものになっているビットと、消去が開始される前と同じ「０」、「１」の値を表すビットが含まれることになる。
【００４５】
セクタに書き込まれている管理領域の更新は、このように、セクタに含まれる全てのビットの値を「０」にしてから「１」にすることによって更新前の管理領域を消去し、その後、更新後の管理領域を構成するビットと同じ「０」、「１」の値を表すものとなるように、セクタに含まれる各ビットを書き換えることによって行われる。
【００４６】
なお、「１」の値を表すビットを「０」を表すものにすることは、セクタ全体を消去してからでなくても、対象とするビットを指定してビット単位で行うことが可能とされる。
【００４７】
図３は、記録再生装置１の機能構成例を示すブロック図である。図３に示す機能部のうちの少なくとも一部は、図１のCPU１１により所定のプログラムが実行されることによって実現される。
【００４８】
図３に示されるように、記録再生装置１においては、更新データ生成部３１、読み書き制御部３２、シグネチャ管理部３３、および処理部３４が実現される。
【００４９】
更新データ生成部３１は、処理部３４により所定の処理が行われることに応じて、フラッシュメモリ１３にいま書き込まれている管理領域を更新した更新後の管理領域を生成し、生成した管理領域を、固定のデータであるシグネチャとともに読み書き制御部３２に出力する。例えば、録画予約の設定が処理部３４により行われ、録画予約の内容を表すファイルデータ本体が生成されたとき、更新データ生成部３１は、それに応じて更新後の管理領域を生成する。
【００５０】
読み書き制御部３２は、フラッシュメモリ１３に書き込まれているデータの読み出しと、フラッシュメモリ１３に対するデータの書き込みを制御する。
【００５１】
例えば、読み書き制御部３２は、更新後の管理領域と、それに付加するシグネチャが更新データ生成部３１から供給されたとき、更新後の管理領域によって、フラッシュメモリ１３の管理領域セクタに書き込まれている更新前の管理領域を更新し、新たに供給されたシグネチャを付加する。
【００５２】
また、読み書き制御部３２は、記録再生装置１の起動時等の所定のタイミングでシグネチャ管理部３３により行われるシグネチャの正当性の検証の結果に基づいて、正当性が検証されたシグネチャが付加されている管理領域をフラッシュメモリ１３から読み出し、読み出した管理領域を処理部３４に出力する。
【００５３】
例えば、読み書き制御部３２は、シグネチャ領域Ａ1に書き込まれているシグネチャの正当性が検証されたときには、更新後の管理領域を管理領域セクタから読み出して処理部３４に出力し、一方、更新後の管理領域に付加されているシグネチャの正当性が検証されずに、シグネチャ領域Ａ2に書き込まれているシグネチャの正当性が検証されたときには、更新前の管理領域をバックアップセクタから読み出して処理部３４に出力する。
【００５４】
読み書き制御部３２は、管理領域に付加されているシグネチャをフラッシュメモリ１３から読み出し、読み出したシグネチャをシグネチャ管理部３３に出力して、シグネチャの正当性の検証を行わせる。
【００５５】
シグネチャ管理部３３は、読み書き制御部３２によりフラッシュメモリ１３から読み出され、供給されたシグネチャの正当性を検証し、検証の結果を読み書き制御部３２に出力する。シグネチャの正当性の検証は、シグネチャが書き込まれる領域として確保されたシグネチャ領域Ａ1またはＡ2に書き込まれているデータが、あらかじめ設定された固定のデータと一致するか否かに基づいて行われる。
【００５６】
シグネチャは最後に書き込まれるため、あらかじめ設定された固定のデータと一致するデータが、確保された領域にシグネチャとして存在することは、最後まで、書き込みが正常に終了したこと、すなわち、電源が遮断されるなどして、書き込みが最後まで行われなかったという状態にはなっていないことを表す。
【００５７】
処理部３４は、読み書き制御部３２によりフラッシュメモリ１３から読み出され、供給された管理領域に基づいてファイルシステムを管理し、記録再生装置１の機能を実現するための各種の処理を行う。
【００５８】
次に、図４のフローチャートを参照して、管理領域を更新する記録再生装置１の処理について説明する。適宜、図５乃至図８を参照し、それぞれの処理が行われているときのフラッシュメモリ１３の状態についても説明する。
【００５９】
図４の処理は、図５に示されるように、フラッシュメモリ１３の状態が、管理領域セクタとバックアップセクタのいずれのセクタを対象としてもデータの消去／書き込みが行われていない正常の状態にあるときに開始される。図５乃至図８において、斜線が付されている領域は、データの消去が行われている領域か、その領域に対するデータの書き込みが行われている領域である。
【００６０】
ステップＳ１において、更新データ生成部３１は、所定の処理が処理部３４により行われることに応じて、フラッシュメモリ１３に書き込まれている管理領域を更新した更新後の管理領域を生成し、生成した管理領域を、固定のデータであるシグネチャとともに読み書き制御部３２に出力する。
【００６１】
ステップＳ２において、読み書き制御部３２は、バックアップセクタに含まれる全てのビットの値を「０」にしてから「１」にすることによって、バックアップセクタに書き込まれているデータを消去する。
【００６２】
ステップＳ３において、読み書き制御部３２は、バックアップセクタに含まれる各ビットを、管理領域セクタに書き込まれている、更新前の管理領域を構成するビットと同じ「０」、「１」の値を表すものとなるように書き換えることによって、更新前の管理領域のコピーをバックアップセクタに書き込む。バックアップセクタを対象としたデータの書き込みは、シグネチャがシグネチャ領域Ａ2に書き込まれたときに終了される。
【００６３】
図６は、ステップＳ２，Ｓ３の処理が行われているときのフラッシュメモリ１３の状態を示す図である。データの消去と、更新前の管理領域のコピーの書き込みは、図６に示されるようにバックアップセクタを対象として行われる。
【００６４】
図４の説明に戻り、ステップＳ４において、読み書き制御部３２は、シグネチャ領域Ａ1に書き込まれているシグネチャを構成する全てのビットの値を「０」で上書きすることによって、更新前の管理領域に付加されているシグネチャをクリア（無効化）する。
【００６５】
上述したように、「１」の値を表すビットを「０」を表すものにすることはビット単位で行うことが可能であるから、読み書き制御部３２は、シグネチャを構成する全てのビットのうち、「１」の値のビットを「０」の値のビットとして書き換えることによって、全てのビットの値を「０」とし、シグネチャを無効化する。シグネチャは、全てが「０」を表すビットからなるもの以外の固定のデータであるとしてあらかじめ設定されているから、上書きすることによって得られた全てが「０」を表すビットからなるデータは、正当性を検証するためのデータとしては無効なデータである。
【００６６】
管理領域セクタに書き込まれている管理領域は後に消去されるが、その消去は、上述したように、管理領域セクタに含まれる全てのビットの値を、ランダムに「０」にしてから「１」にすることによって進められるから、仮に、全てのビットの値を「０」で上書きするといったようなシグネチャの無効化を行わないとした場合、管理領域セクタに書き込まれている管理領域の消去が途中まで進められ、管理領域は一部破損しているものの、シグネチャがなお、管理領域が正しいデータであることを表しているといった状態になるのを防ぐことができる。
【００６７】
すなわち、シグネチャの無効化を行わずに管理領域セクタの消去が開始された場合、シグネチャのビットは１ビットも消去されることなく、管理領域のビットだけ、消去が進められたような状態で電源の遮断が発生したとき、管理領域セクタの消去は中断されることになるが、その状態のときの管理領域セクタのシグネチャ領域Ａ1に書き込まれているシグネチャは、実際には管理領域は既に一部消去されているのにもかかわらず、管理領域が正しいデータであることを表すことになる。
【００６８】
図７は、ステップＳ４の処理が行われているときのフラッシュメモリ１３の状態を示す図である。シグネチャの無効化は、図７に示されるようにシグネチャ領域Ａ1を対象として行われる。
【００６９】
図４の説明に戻り、ステップＳ５において、読み書き制御部３２は、管理領域セクタに含まれる全てのビットの値を「０」にしてから「１」にすることによって、管理領域セクタに書き込まれている更新前の管理領域を消去する。すなわち、更新前の管理領域の消去は、それに付加されているシグネチャが無効化されてから行われる。これにより、上述したように、実際には管理領域は一部消去されているのにもかかわらず、シグネチャが、管理領域が正しいデータであることを表すといった状態になることを防ぐことができる。
【００７０】
管理領域セクタの消去が完了したとき、読み書き制御部３２は、ステップＳ６において、管理領域セクタに含まれる各ビットを、ステップＳ１で生成された、更新後の管理領域を構成するビットと同じ「０」、「１」の値を表すものとなるように書き換えることによって、更新後の管理領域を管理領域セクタに書き込む。
【００７１】
図８は、ステップＳ５，Ｓ６の処理が行われているときのフラッシュメモリ１３の状態を示す図である。更新前の管理領域の消去と、更新後の管理領域の書き込みは、図８に示されるように管理領域セクタを対象として行われる。管理領域セクタを対象としたデータの書き込みは、シグネチャがシグネチャ領域Ａ1に書き込まれたときに終了される。
【００７２】
これにより、電源の遮断が発生したりすることなく処理が正常に進められた場合には、更新後の管理領域が管理領域セクタに書き込まれ、更新前の管理領域がバックアップセクタに書き込まれた状態になる。起動時には、更新後の管理領域が優先的に用いられるようにすることによって、更新後の管理領域を用いたファイルシステムの管理が可能となる。
【００７３】
また、バックアップセクタに更新前の管理領域のコピーが書き込まれてから更新前の管理領域が消去され、更新後の管理領域が管理領域セクタに書き込まれるから、更新前の管理領域を管理領域セクタから消去している途中や、更新後の管理領域を管理領域セクタに書き込んでいる途中で電源の遮断などが発生し、それらの処理が中断されたとしても、バックアップセクタにコピーが書き込まれている、更新前の管理領域を用いてファイルシステムを管理することが可能となる。
【００７４】
次に、図９のフローチャートを参照して、シグネチャをチェックする記録再生装置１の起動時の処理について説明する。
【００７５】
ステップＳ１１において、シグネチャ管理部３３は、あらかじめ設定されている固定のデータと一致するか否かに基づいて、管理領域セクタに書き込まれている更新後の管理領域に付加されているシグネチャが正しいか否かを判定する。記録再生装置１の起動時には、シグネチャ領域Ａ1に書き込まれているシグネチャが読み書き制御部３２により読み出され、シグネチャ管理部３３に供給される。
【００７６】
シグネチャ管理部３３は、ステップＳ１１において、あらかじめ設定されている固定のデータと一致することから、管理領域セクタに書き込まれている更新後の管理領域に付加されているシグネチャが正しいと判定した場合、処理を終了させる。
【００７７】
このとき、更新後の管理領域に付加されているシグネチャの正当性を検証することができたことがシグネチャ管理部３３から読み書き制御部３２に通知され、読み書き制御部３２により、更新後の管理領域がフラッシュメモリ１３の管理領域セクタから読み出される。読み出された更新後の管理領域は、読み書き制御部３２から処理部３４に供給され、各種の処理に用いられる。
【００７８】
一方、ステップＳ１１において、シグネチャ管理部３３は、あらかじめ設定されている固定のデータと一致しないことから、管理領域セクタに書き込まれている更新後の管理領域に付加されているシグネチャが正しくないと判定した場合、ステップＳ１２に進む。このとき、更新後の管理領域に付加されているシグネチャが正しくないことがシグネチャ管理部３３から読み書き制御部３２に通知される。
【００７９】
ステップＳ１２において、シグネチャ管理部３３は、あらかじめ設定されている固定のデータと一致するか否かに基づいて、バックアップセクタに書き込まれている更新前の管理領域に付加されているシグネチャが正しいか否かを判定する。更新後の管理領域に付加されているシグネチャが正しくないことがシグネチャ管理部３３から通知されたとき、読み書き制御部３２においては、次に、バックアップセクタのシグネチャ領域Ａ2に書き込まれているシグネチャが読み出され、シグネチャ管理部３３に出力される。
【００８０】
シグネチャ管理部３３は、ステップＳ１２において、あらかじめ設定されている固定のデータと一致することから、バックアップセクタに書き込まれている更新前の管理領域に付加されているシグネチャが正しいと判定した場合、そのことを読み書き制御部３２に通知し、ステップＳ１３に進む。
【００８１】
ステップＳ１３において、読み書き制御部３２は、管理領域セクタに書き込まれているデータは書き込みが正常に行われなかった管理領域のデータであるとし、管理領域セクタに含まれる全てのビットの値を「０」にしてから「１」にすることによって、管理領域セクタに書き込まれているデータを消去する。
【００８２】
読み書き制御部３２は、ステップＳ１４において、管理領域セクタに含まれる各ビットを、バックアップセクタに書き込まれている、更新前の管理領域を構成するビットと同じ「０」、「１」の値を表すものとなるように書き換えることによって、更新前の管理領域を管理領域セクタに書き込む。また、読み書き制御部３２は、管理領域セクタのシグネチャ領域Ａ1にシグネチャを書き込む。
【００８３】
その後、処理は終了され、更新前の管理領域に付加されているシグネチャの正当性を検証することができたことがシグネチャ管理部３３から読み書き制御部３２に通知される。読み書き制御部３２においては、ステップＳ１４において書き込まれた更新前の管理領域がフラッシュメモリ１３の管理領域セクタから読み出され、処理部３４により各種の処理に用いられる。
【００８４】
一方、ステップＳ１２において、シグネチャ管理部３３は、あらかじめ設定されている固定のデータと一致しないことから、バックアップセクタに書き込まれている更新前の管理領域に付加されているシグネチャも正しくないと判定した場合、そのことを読み書き制御部３２に通知し、ステップＳ１５に進む。フラッシュメモリ１３がハードウエア的に破損しているときなどに、このような判定がなされる。
【００８５】
ステップＳ１５において、読み書き制御部３２は、ファイルシステムがエラーであるときのエラー処理を行い、その後、処理を終了させる。エラー処理においては、例えば、ファイルシステムを初期化することなどが行われる。
【００８６】
以上の処理により、図４を参照して説明した処理によって更新後の管理領域が正常に書き込まれている場合には、その更新後の管理領域に基づいて各種の処理が行われ、また、更新後の管理領域が正常に書き込まれていない場合には、バックアップとして保存されていた、更新前の管理領域に基づいて各種の処理が行われるようにすることが可能になる。
【００８７】
以上においては、管理領域セクタとバックアップセクタとして、連続した位置にあるセクタが確保されるものとしたが、互いに離れた位置にあるセクタが確保されるといったように、それぞれのセクタの位置は任意である。
【００８８】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【００８９】
図１０は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。
【００９０】
CPU５１は、ROM５２、または記憶部５８に記憶されているプログラムに従って各種の処理を実行する。RAM５３には、CPU５１が実行するプログラムやデータなどが適宜記憶される。これらのCPU５１、ROM５２、およびRAM５３は、バス５４により相互に接続されている。
【００９１】
CPU５１にはまた、バス５４を介して入出力インタフェース５５が接続されている。入出力インタフェース５５には、キーボード、マウス、マイクロホンなどよりなる入力部５６、ディスプレイ、スピーカなどよりなる出力部５７が接続されている。CPU５１は、入力部５６から入力される指令に対応して各種の処理を実行する。そして、CPU５１は、処理の結果を出力部５７に出力する。
【００９２】
入出力インタフェース５５に接続されている記憶部５８は、例えばハードディスクからなり、CPU５１が実行するプログラムや各種のデータを記憶する。通信部５９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【００９３】
入出力インタフェース５５に接続されているドライブ６０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア６１が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部５８に転送され、記憶される。
【００９４】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図１０に示すように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory)，DVD(Digital Versatile Disc)を含む）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア６１、または、プログラムが一時的もしくは永続的に格納されるROM５２や、記憶部５８を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部５９を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【００９５】
なお、本明細書において、プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【００９６】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【００９７】
【図１】本発明の一実施形態に係る記録再生装置のハードウェア構成例を示すブロック図である。
【図２】フラッシュメモリの記録領域の例を示す図である。
【図３】記録再生装置の機能構成例を示すブロック図である。
【図４】記録再生装置の管理領域更新処理について説明するフローチャートである。
【図５】フラッシュメモリの状態を示す図である。
【図６】フラッシュメモリの他の状態を示す図である。
【図７】フラッシュメモリのさらに他の状態を示す図である。
【図８】フラッシュメモリの状態を示す図である。
【図９】記録再生装置の起動時チェック処理について説明するフローチャートである。
【図１０】パーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【００９８】
１  記録再生装置，  １１  CPU，  １２  RAM，  １３  フラッシュメモリ，  １４  ハードディスク，  １５  バス，  １６  チューナ，  １７  復調器，  １８  TSデコーダ，  １９  AVデコーダ，  ２０，２１  MUX，  ２２  表示コントローラ，  ３１  更新データ生成部，  ３２  読み書き制御部，  ３３  シグネチャ管理部，  ３４  処理部
【図１】
2008071223.tif 000003
【図２】
2008071223.tif 000004
【図３】
2008071223.tif 000005
【図４】
2008071223.tif 000006
【図５】
2008071223.tif 000007
【図６】
2008071223.tif 000008
【図７】
2008071223.tif 000009
【図８】
2008071223.tif 000010
【図９】
2008071223.tif 000011
【図１０】
2008071223.tif 000012