JP2008071223A - 情報処理装置、情報処理方法、およびプログラム - Google Patents
情報処理装置、情報処理方法、およびプログラム Download PDFInfo
- Publication number
- JP2008071223A JP2008071223A JP2006250430A JP2006250430A JP2008071223A JP 2008071223 A JP2008071223 A JP 2008071223A JP 2006250430 A JP2006250430 A JP 2006250430A JP 2006250430 A JP2006250430 A JP 2006250430A JP 2008071223 A JP2008071223 A JP 2008071223A
- Authority
- JP
- Japan
- Prior art keywords
- management area
- sector
- written
- data
- updated
- 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
Links
Images
Abstract
【課題】正当性が確保された更新後のデータをNOR型フラッシュメモリに記憶させておくことができるようにする。
【解決手段】更新後の管理領域が生成されたとき、更新前の管理領域のコピーがバックアップセクタに書き込まれる。更新前の管理領域のコピーがバックアップセクタに書き込まれたとき、シグネチャ領域A1に書き込まれているシグネチャを構成する全てのビットの値が「0」で上書きされることによって、更新前の管理領域に付加されているシグネチャが無効化される。シグネチャが無効化された後、管理領域セクタに書き込まれている更新前の管理領域が消去され、更新後の管理領域が管理領域セクタに書き込まれる。本発明は、NOR型のフラッシュメモリを有する装置に適用することができる。
【選択図】図2
【解決手段】更新後の管理領域が生成されたとき、更新前の管理領域のコピーがバックアップセクタに書き込まれる。更新前の管理領域のコピーがバックアップセクタに書き込まれたとき、シグネチャ領域A1に書き込まれているシグネチャを構成する全てのビットの値が「0」で上書きされることによって、更新前の管理領域に付加されているシグネチャが無効化される。シグネチャが無効化された後、管理領域セクタに書き込まれている更新前の管理領域が消去され、更新後の管理領域が管理領域セクタに書き込まれる。本発明は、NOR型のフラッシュメモリを有する装置に適用することができる。
【選択図】図2
Description
本発明は、情報処理装置、情報処理方法、およびプログラムに関し、特に、正当性が確保された更新後のデータをNOR型フラッシュメモリに記憶させておくことができるようにした情報処理装置、情報処理方法、およびプログラムに関する。
NAND型フラッシュメモリより1回の読み出しの対象となるデータの量が小さく、データの読み出しが容易であることなどから、装置の起動時に実行されるプログラムコードなどの各種のデータの記録媒体としてNOR型フラッシュメモリが用いられることがある。
起動時に実行するプログラムコードがNOR型フラッシュメモリに書き込まれていることにより、CPU(Central Processing Unit)は、起動時に実行するプログラムコードをNOR型フラッシュメモリから直接読み出すことができ、NAND型フラッシュメモリに書き込まれているプログラムコードをRAM(Random Access Memory)に1度展開し、それを実行することによって起動する場合に較べて、装置の起動を容易に行うことができる。
特許文献1には、電源の遮断などのトラブルが発生したときにFAT(File Allocation Table)が破壊されることを防ぐことができるようにした技術が開示されている。
特開2005−60347号公報
このようなNOR型フラッシュメモリ上に構築されたFATファイルシステムによってファイルを管理する場合、NOR型フラッシュメモリに形成された記録領域の単位であるセクタのサイズは比較的大きいため、FATファイルシステムを管理するデータである管理領域は1つのセクタ内に書き込まれていることが多い。
管理情報には、MBR(Master Boot Record)、PBR(Partition Boot Record)、FATなどが含まれる。MBRは、NOR型フラッシュメモリのセクタの位置、サイズを表すテーブルや、起動時に読み出されるIPL(Initial Program Loader)などを含むデータであり、PBRは、IPLによって読み出され、実行されるデータである。FATは、ファイル(クラスタ)の使用状態を記録、管理するためのテーブルである。
従って、電源ケーブルがユーザにより抜かれるなどして、1つのセクタに書き込まれている管理領域の消去/更新中に電源の遮断が発生した場合、管理領域全体が破損してしまう可能性が高い。
管理領域を更新する場合、更新前の管理領域を消去してから更新後の管理領域を書き込むことになるが、NOR型フラッシュメモリには、データの消去はセクタ単位で行わなければならないといった制約があることから、管理領域全体が1つのセクタに書き込まれているものとすると、更新時には、1度、管理領域全体が消去されることになる。例えば、このように管理領域全体が消去されているときに電源の遮断などが発生すると、管理領域全体が破損してしまい、この場合、ファイルシステム全体を初期化しなければ正常な動作を確保することができなくなる。
本発明はこのような状況に鑑みてなされたものであり、正当性が確保された更新後のデータをNOR型フラッシュメモリに記憶させておくことができるようにするものである。
本発明の一側面の情報処理装置は、ファイルシステムを管理するデータであって、認証用のデータが付加されている管理領域と、ファイルデータ本体とを含むファイルシステムを有する情報処理装置において、前記管理領域が書き込まれる記録領域である第1のセクタと、前記管理領域のコピーが書き込まれる記録領域である第2のセクタが形成されるNOR型フラッシュメモリと、前記第1のセクタに書き込まれている前記管理領域を更新した更新後の前記管理領域を生成する生成手段と、前記第1のセクタに書き込まれている更新前の前記管理領域のコピーを前記第2のセクタに書き込み、更新前の前記管理領域に付加されている前記認証用のデータを無効化してから、更新前の前記管理領域を消去し、前記生成手段により生成された更新後の前記管理領域を前記第1のセクタに書き込む書き込み制御手段とを備える。
前記第1のセクタに書き込まれている更新後の前記管理領域に付加されている前記認証用のデータの正当性を装置の起動時に検証する検証手段と、前記認証用のデータの正当性が前記検証手段により検証されたとき、前記書き込み制御手段により前記第1のセクタに書き込まれた更新後の前記管理領域によってファイルシステムを管理し、所定の処理を行う処理手段とをさらに設けることができる。
前記処理手段には、さらに、前記認証用のデータの正当性が前記検証手段により検証されなかったとき、前記書き込み制御手段により前記第2のセクタに書き込まれた更新前の前記管理領域のコピーによってファイルシステムを管理させ、所定の処理を行わせることができる。
本発明の一側面の情報処理方法またはプログラムは、第1のセクタに書き込まれている管理領域を更新した更新後の管理領域を生成し、前記第1のセクタに書き込まれている更新前の管理領域のコピーを第2のセクタに書き込み、更新前の前記管理領域に付加されている認証用のデータを無効化してから、更新前の前記管理領域を消去し、生成した更新後の前記管理領域を前記第1のセクタに書き込むステップを含む。
本発明の一側面においては、第1のセクタに書き込まれている管理領域を更新した更新後の管理領域が生成され、前記第1のセクタに書き込まれている更新前の管理領域のコピーが第2のセクタに書き込まれる。また、更新前の前記管理領域に付加されている認証用のデータが無効化されてから、更新前の前記管理領域が消去され、生成された更新後の前記管理領域が前記第1のセクタに書き込まれる。
本発明の一側面によれば、正当性が確保された更新後のデータをNOR型フラッシュメモリに記憶させておくことができる。
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。従って、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外には対応しないものであることを意味するものでもない。
本発明の一側面の情報処理装置(例えば、図1の記録再生装置1)は、ファイルシステムを管理するデータであって、認証用のデータが付加されている管理領域と、ファイルデータ本体とを含むファイルシステムを有する情報処理装置において、前記管理領域が書き込まれる記録領域である第1のセクタと、前記管理領域のコピーが書き込まれる記録領域である第2のセクタが形成されるNOR型フラッシュメモリ(例えば、図1のフラッシュメモリ13)と、前記第1のセクタに書き込まれている前記管理領域を更新した更新後の前記管理領域を生成する生成手段(例えば、図3の更新データ生成部31)と、前記第1のセクタに書き込まれている更新前の前記管理領域のコピーを前記第2のセクタに書き込み、更新前の前記管理領域に付加されている前記認証用のデータを無効化してから、更新前の前記管理領域を消去し、前記生成手段により生成された更新後の前記管理領域を前記第1のセクタに書き込む書き込み制御手段(例えば、図3の読み書き制御部32)とを備える。
この情報処理装置には、前記第1のセクタに書き込まれている更新後の前記管理領域に付加されている前記認証用のデータの正当性を装置の起動時に検証する検証手段(例えば、図3のシグネチャ管理部33)と、前記認証用のデータの正当性が前記検証手段により検証されたとき、前記書き込み制御手段により前記第1のセクタに書き込まれた更新後の前記管理領域によってファイルシステムを管理し、所定の処理を行う処理手段(例えば、図3の処理部34)とをさらに設けることができる。
本発明の一側面の情報処理方法またはプログラムは、第1のセクタに書き込まれている管理領域を更新した更新後の管理領域を生成し、前記第1のセクタに書き込まれている更新前の管理領域のコピーを第2のセクタに書き込み、更新前の前記管理領域に付加されている認証用のデータを無効化してから、更新前の前記管理領域を消去し、生成した更新後の前記管理領域を前記第1のセクタに書き込むステップ(例えば、図4のステップS6)を含む。
以下、本発明の実施の形態について図を参照して説明する。
図1は、本発明の一実施形態に係る記録再生装置1のハードウェア構成例を示すブロック図である。
記録再生装置1は、BS(Broadcasting Satellite)/CS(Communications Satellite)デジタルテレビジョン放送、地上波デジタルテレビジョン放送、またはインターネットを介した放送によって提供される番組を受信し、受信した番組の映像や音声を、ケーブルなどを介して接続されるTV(テレビジョン受像機)から出力させる機能を有する装置である。記録再生装置1には、ハードディスクなどの記録媒体も内蔵されており、そこに番組のデータを記録(録画)することができるようになされている。
図1に示されるように、記録再生装置1は、CPU(Central Processing Unit)11、RAM(Random Access Memory)12、フラッシュメモリ13、ハードディスク14、バス15、チューナ16、復調器17、TSデコーダ18、AV(Audio Visual)デコーダ19、MUX(multiplexer)20,21、および、表示コントローラ22から構成される。
CPU11は、フラッシュメモリ13に記憶されたプログラムや、ハードディスク14からRAM12にロードされたプログラムを実行し、バス15を介して接続される各部の動作を制御する。
RAM12は、CPU11によって実行されるプログラムや、プログラムの実行に必要な一時的なデータなどを記憶する。
フラッシュメモリ13はNOR型のフラッシュメモリであり、RAM12にロードされることなくCPU11により直接読み出され、実行されるプログラムコードや、ユーザにより設定された録画予約の内容を表すファイルなどの各種のデータを記憶する。
また、フラッシュメモリ13は、ファイルシステムを管理するデータである管理領域を記憶する。ファイルシステムは、この管理領域とファイルデータ本体から構成される。フラッシュメモリ13に記憶されている管理領域には、記録再生装置1の起動時にその正当性を検証するために用いられる認証用のデータであるシグネチャが付加されている。
後述するように、フラッシュメモリ13には複数のセクタが形成されており、そのうちの1つのセクタは、管理領域全体を書き込んでおくためのセクタとして割り当てられる。また、他の1つのセクタは、管理領域を更新するときのバックアップ用のセクタとして割り当てられる。バックアップ用のセクタには、管理領域の更新時に、更新前の管理領域のコピーが書き込まれる。管理領域の更新は、記録再生装置1において各種の処理が行われることによってファイルデータ本体が新たに生成されたときや、ファイルデータ本体が更新されたときなどに行われる。
ハードディスク14は、TSデコーダ18からバス15を介して供給された、録画の対象になっている番組のデータやEPG(Electronic Program Guide)を記録する。
チューナ16は、CPU11による制御に従って、アンテナからの放送信号を受信し、受信信号を復調器17に出力する。
復調器17は、チューナ16から供給された受信信号を復調し、所定のチャンネルで放送されるトランスポートストリームをTSデコーダ18に出力する。
TSデコーダ18は、CPU11による制御に従って、復調器17から供給されたトランスポートストリームから所定のストリームを抽出し、抽出したストリームを構成するパケットをバス15上に、または、AVデコーダ19に出力する。バス15上に出力されたパケット(番組のデータ)はハードディスク14に供給され、記録される。TSデコーダ18により得られたEPGも、適宜、ハードディスク14に供給され、記録される。
AVデコーダ19は、TSデコーダ18から供給されたビデオパケットとオーディオパケットをデコードし、デコードして得られたオーディオデータをMUX20に、ビデオデータをMUX21にそれぞれ出力する。また、AVデコーダ19は、録画済みの番組のデータがハードディスク14から読み出され、供給されたとき、それをデコードし、デコードして得られたオーディオデータをMUX20に、ビデオデータをMUX21にそれぞれ出力する。
MUX20は、AVデコーダ19から供給されたオーディオデータとCPU11から供給されたデータに基づいて、対応する音声をTVのスピーカから出力させる。
MUX21は、AVデコーダ19から供給されたビデオデータと表示コントローラ22から供給されたビデオデータに基づいて、番組の映像などをTVに表示させる。表示コントローラ22からは、例えば、録画済みの番組のリストの表示に用いられるデータが供給される。
表示コントローラ22は、CPU11による制御に従って、TVに表示させる画像のデータを生成し、生成したデータをMUX21に出力する。
図2は、図1のフラッシュメモリ13の記録領域の例を示す図である。
上述したように、フラッシュメモリ13には複数のセクタが形成されており、図2にはセクタ1とセクタ2の2つのセクタが示されている。セクタ1とセクタ2は、それぞれ、64kbyteなどの同じサイズを有するセクタである。
図2の例においては、セクタ1は管理領域用のセクタとして割り当てられ、そこには管理領域全体が書き込まれている。セクタ1には、そこに書き込まれている管理領域の正当性を検証するために用いられるシグネチャが書き込まれる領域であるシグネチャ領域A1も確保されている。
シグネチャは、所定の値を表す所定の数のビットからなり、全てが「0」を表すビットからなるもの以外の固定のデータである。シグネチャは、管理領域の書き込みが完了した後、セクタ1のシグネチャ領域A1に最後に書き込まれる。
また、図2の例においては、セクタ2は管理領域の更新時のバックアップ用のセクタとして割り当てられている。セクタ2にも、シグネチャが書き込まれる領域であるシグネチャ領域A2が確保されている。
以下、適宜、管理領域用のセクタとして割り当てられているセクタ1を管理領域セクタともいい、バックアップ用のセクタとして割り当てられているセクタ2をバックアップセクタともいう。
このように、複数のセクタが形成されるNOR型フラッシュメモリに記憶された管理領域などのデータの消去はセクタ単位で行われる。記憶されているデータを消去することは、1度、セクタに含まれる全てのビットの値を「0」にしてから「1」にすることであり、このようにしてビットの値を書き換えることは、セクタの先頭の位置のビットからアドレス順に進められるといったように決まった順番で行われるものではなく、ランダムに進められる。
従って、データの消去が開始された直後では、既に書き換えられて「1」の値を表すものになっているビットと、消去が開始される前と同じ「0」、「1」の値を表すビットが含まれることになる。
セクタに書き込まれている管理領域の更新は、このように、セクタに含まれる全てのビットの値を「0」にしてから「1」にすることによって更新前の管理領域を消去し、その後、更新後の管理領域を構成するビットと同じ「0」、「1」の値を表すものとなるように、セクタに含まれる各ビットを書き換えることによって行われる。
なお、「1」の値を表すビットを「0」を表すものにすることは、セクタ全体を消去してからでなくても、対象とするビットを指定してビット単位で行うことが可能とされる。
図3は、記録再生装置1の機能構成例を示すブロック図である。図3に示す機能部のうちの少なくとも一部は、図1のCPU11により所定のプログラムが実行されることによって実現される。
図3に示されるように、記録再生装置1においては、更新データ生成部31、読み書き制御部32、シグネチャ管理部33、および処理部34が実現される。
更新データ生成部31は、処理部34により所定の処理が行われることに応じて、フラッシュメモリ13にいま書き込まれている管理領域を更新した更新後の管理領域を生成し、生成した管理領域を、固定のデータであるシグネチャとともに読み書き制御部32に出力する。例えば、録画予約の設定が処理部34により行われ、録画予約の内容を表すファイルデータ本体が生成されたとき、更新データ生成部31は、それに応じて更新後の管理領域を生成する。
読み書き制御部32は、フラッシュメモリ13に書き込まれているデータの読み出しと、フラッシュメモリ13に対するデータの書き込みを制御する。
例えば、読み書き制御部32は、更新後の管理領域と、それに付加するシグネチャが更新データ生成部31から供給されたとき、更新後の管理領域によって、フラッシュメモリ13の管理領域セクタに書き込まれている更新前の管理領域を更新し、新たに供給されたシグネチャを付加する。
また、読み書き制御部32は、記録再生装置1の起動時等の所定のタイミングでシグネチャ管理部33により行われるシグネチャの正当性の検証の結果に基づいて、正当性が検証されたシグネチャが付加されている管理領域をフラッシュメモリ13から読み出し、読み出した管理領域を処理部34に出力する。
例えば、読み書き制御部32は、シグネチャ領域A1に書き込まれているシグネチャの正当性が検証されたときには、更新後の管理領域を管理領域セクタから読み出して処理部34に出力し、一方、更新後の管理領域に付加されているシグネチャの正当性が検証されずに、シグネチャ領域A2に書き込まれているシグネチャの正当性が検証されたときには、更新前の管理領域をバックアップセクタから読み出して処理部34に出力する。
読み書き制御部32は、管理領域に付加されているシグネチャをフラッシュメモリ13から読み出し、読み出したシグネチャをシグネチャ管理部33に出力して、シグネチャの正当性の検証を行わせる。
シグネチャ管理部33は、読み書き制御部32によりフラッシュメモリ13から読み出され、供給されたシグネチャの正当性を検証し、検証の結果を読み書き制御部32に出力する。シグネチャの正当性の検証は、シグネチャが書き込まれる領域として確保されたシグネチャ領域A1またはA2に書き込まれているデータが、あらかじめ設定された固定のデータと一致するか否かに基づいて行われる。
シグネチャは最後に書き込まれるため、あらかじめ設定された固定のデータと一致するデータが、確保された領域にシグネチャとして存在することは、最後まで、書き込みが正常に終了したこと、すなわち、電源が遮断されるなどして、書き込みが最後まで行われなかったという状態にはなっていないことを表す。
処理部34は、読み書き制御部32によりフラッシュメモリ13から読み出され、供給された管理領域に基づいてファイルシステムを管理し、記録再生装置1の機能を実現するための各種の処理を行う。
次に、図4のフローチャートを参照して、管理領域を更新する記録再生装置1の処理について説明する。適宜、図5乃至図8を参照し、それぞれの処理が行われているときのフラッシュメモリ13の状態についても説明する。
図4の処理は、図5に示されるように、フラッシュメモリ13の状態が、管理領域セクタとバックアップセクタのいずれのセクタを対象としてもデータの消去/書き込みが行われていない正常の状態にあるときに開始される。図5乃至図8において、斜線が付されている領域は、データの消去が行われている領域か、その領域に対するデータの書き込みが行われている領域である。
ステップS1において、更新データ生成部31は、所定の処理が処理部34により行われることに応じて、フラッシュメモリ13に書き込まれている管理領域を更新した更新後の管理領域を生成し、生成した管理領域を、固定のデータであるシグネチャとともに読み書き制御部32に出力する。
ステップS2において、読み書き制御部32は、バックアップセクタに含まれる全てのビットの値を「0」にしてから「1」にすることによって、バックアップセクタに書き込まれているデータを消去する。
ステップS3において、読み書き制御部32は、バックアップセクタに含まれる各ビットを、管理領域セクタに書き込まれている、更新前の管理領域を構成するビットと同じ「0」、「1」の値を表すものとなるように書き換えることによって、更新前の管理領域のコピーをバックアップセクタに書き込む。バックアップセクタを対象としたデータの書き込みは、シグネチャがシグネチャ領域A2に書き込まれたときに終了される。
図6は、ステップS2,S3の処理が行われているときのフラッシュメモリ13の状態を示す図である。データの消去と、更新前の管理領域のコピーの書き込みは、図6に示されるようにバックアップセクタを対象として行われる。
図4の説明に戻り、ステップS4において、読み書き制御部32は、シグネチャ領域A1に書き込まれているシグネチャを構成する全てのビットの値を「0」で上書きすることによって、更新前の管理領域に付加されているシグネチャをクリア(無効化)する。
上述したように、「1」の値を表すビットを「0」を表すものにすることはビット単位で行うことが可能であるから、読み書き制御部32は、シグネチャを構成する全てのビットのうち、「1」の値のビットを「0」の値のビットとして書き換えることによって、全てのビットの値を「0」とし、シグネチャを無効化する。シグネチャは、全てが「0」を表すビットからなるもの以外の固定のデータであるとしてあらかじめ設定されているから、上書きすることによって得られた全てが「0」を表すビットからなるデータは、正当性を検証するためのデータとしては無効なデータである。
管理領域セクタに書き込まれている管理領域は後に消去されるが、その消去は、上述したように、管理領域セクタに含まれる全てのビットの値を、ランダムに「0」にしてから「1」にすることによって進められるから、仮に、全てのビットの値を「0」で上書きするといったようなシグネチャの無効化を行わないとした場合、管理領域セクタに書き込まれている管理領域の消去が途中まで進められ、管理領域は一部破損しているものの、シグネチャがなお、管理領域が正しいデータであることを表しているといった状態になるのを防ぐことができる。
すなわち、シグネチャの無効化を行わずに管理領域セクタの消去が開始された場合、シグネチャのビットは1ビットも消去されることなく、管理領域のビットだけ、消去が進められたような状態で電源の遮断が発生したとき、管理領域セクタの消去は中断されることになるが、その状態のときの管理領域セクタのシグネチャ領域A1に書き込まれているシグネチャは、実際には管理領域は既に一部消去されているのにもかかわらず、管理領域が正しいデータであることを表すことになる。
図7は、ステップS4の処理が行われているときのフラッシュメモリ13の状態を示す図である。シグネチャの無効化は、図7に示されるようにシグネチャ領域A1を対象として行われる。
図4の説明に戻り、ステップS5において、読み書き制御部32は、管理領域セクタに含まれる全てのビットの値を「0」にしてから「1」にすることによって、管理領域セクタに書き込まれている更新前の管理領域を消去する。すなわち、更新前の管理領域の消去は、それに付加されているシグネチャが無効化されてから行われる。これにより、上述したように、実際には管理領域は一部消去されているのにもかかわらず、シグネチャが、管理領域が正しいデータであることを表すといった状態になることを防ぐことができる。
管理領域セクタの消去が完了したとき、読み書き制御部32は、ステップS6において、管理領域セクタに含まれる各ビットを、ステップS1で生成された、更新後の管理領域を構成するビットと同じ「0」、「1」の値を表すものとなるように書き換えることによって、更新後の管理領域を管理領域セクタに書き込む。
図8は、ステップS5,S6の処理が行われているときのフラッシュメモリ13の状態を示す図である。更新前の管理領域の消去と、更新後の管理領域の書き込みは、図8に示されるように管理領域セクタを対象として行われる。管理領域セクタを対象としたデータの書き込みは、シグネチャがシグネチャ領域A1に書き込まれたときに終了される。
これにより、電源の遮断が発生したりすることなく処理が正常に進められた場合には、更新後の管理領域が管理領域セクタに書き込まれ、更新前の管理領域がバックアップセクタに書き込まれた状態になる。起動時には、更新後の管理領域が優先的に用いられるようにすることによって、更新後の管理領域を用いたファイルシステムの管理が可能となる。
また、バックアップセクタに更新前の管理領域のコピーが書き込まれてから更新前の管理領域が消去され、更新後の管理領域が管理領域セクタに書き込まれるから、更新前の管理領域を管理領域セクタから消去している途中や、更新後の管理領域を管理領域セクタに書き込んでいる途中で電源の遮断などが発生し、それらの処理が中断されたとしても、バックアップセクタにコピーが書き込まれている、更新前の管理領域を用いてファイルシステムを管理することが可能となる。
次に、図9のフローチャートを参照して、シグネチャをチェックする記録再生装置1の起動時の処理について説明する。
ステップS11において、シグネチャ管理部33は、あらかじめ設定されている固定のデータと一致するか否かに基づいて、管理領域セクタに書き込まれている更新後の管理領域に付加されているシグネチャが正しいか否かを判定する。記録再生装置1の起動時には、シグネチャ領域A1に書き込まれているシグネチャが読み書き制御部32により読み出され、シグネチャ管理部33に供給される。
シグネチャ管理部33は、ステップS11において、あらかじめ設定されている固定のデータと一致することから、管理領域セクタに書き込まれている更新後の管理領域に付加されているシグネチャが正しいと判定した場合、処理を終了させる。
このとき、更新後の管理領域に付加されているシグネチャの正当性を検証することができたことがシグネチャ管理部33から読み書き制御部32に通知され、読み書き制御部32により、更新後の管理領域がフラッシュメモリ13の管理領域セクタから読み出される。読み出された更新後の管理領域は、読み書き制御部32から処理部34に供給され、各種の処理に用いられる。
一方、ステップS11において、シグネチャ管理部33は、あらかじめ設定されている固定のデータと一致しないことから、管理領域セクタに書き込まれている更新後の管理領域に付加されているシグネチャが正しくないと判定した場合、ステップS12に進む。このとき、更新後の管理領域に付加されているシグネチャが正しくないことがシグネチャ管理部33から読み書き制御部32に通知される。
ステップS12において、シグネチャ管理部33は、あらかじめ設定されている固定のデータと一致するか否かに基づいて、バックアップセクタに書き込まれている更新前の管理領域に付加されているシグネチャが正しいか否かを判定する。更新後の管理領域に付加されているシグネチャが正しくないことがシグネチャ管理部33から通知されたとき、読み書き制御部32においては、次に、バックアップセクタのシグネチャ領域A2に書き込まれているシグネチャが読み出され、シグネチャ管理部33に出力される。
シグネチャ管理部33は、ステップS12において、あらかじめ設定されている固定のデータと一致することから、バックアップセクタに書き込まれている更新前の管理領域に付加されているシグネチャが正しいと判定した場合、そのことを読み書き制御部32に通知し、ステップS13に進む。
ステップS13において、読み書き制御部32は、管理領域セクタに書き込まれているデータは書き込みが正常に行われなかった管理領域のデータであるとし、管理領域セクタに含まれる全てのビットの値を「0」にしてから「1」にすることによって、管理領域セクタに書き込まれているデータを消去する。
読み書き制御部32は、ステップS14において、管理領域セクタに含まれる各ビットを、バックアップセクタに書き込まれている、更新前の管理領域を構成するビットと同じ「0」、「1」の値を表すものとなるように書き換えることによって、更新前の管理領域を管理領域セクタに書き込む。また、読み書き制御部32は、管理領域セクタのシグネチャ領域A1にシグネチャを書き込む。
その後、処理は終了され、更新前の管理領域に付加されているシグネチャの正当性を検証することができたことがシグネチャ管理部33から読み書き制御部32に通知される。読み書き制御部32においては、ステップS14において書き込まれた更新前の管理領域がフラッシュメモリ13の管理領域セクタから読み出され、処理部34により各種の処理に用いられる。
一方、ステップS12において、シグネチャ管理部33は、あらかじめ設定されている固定のデータと一致しないことから、バックアップセクタに書き込まれている更新前の管理領域に付加されているシグネチャも正しくないと判定した場合、そのことを読み書き制御部32に通知し、ステップS15に進む。フラッシュメモリ13がハードウエア的に破損しているときなどに、このような判定がなされる。
ステップS15において、読み書き制御部32は、ファイルシステムがエラーであるときのエラー処理を行い、その後、処理を終了させる。エラー処理においては、例えば、ファイルシステムを初期化することなどが行われる。
以上の処理により、図4を参照して説明した処理によって更新後の管理領域が正常に書き込まれている場合には、その更新後の管理領域に基づいて各種の処理が行われ、また、更新後の管理領域が正常に書き込まれていない場合には、バックアップとして保存されていた、更新前の管理領域に基づいて各種の処理が行われるようにすることが可能になる。
以上においては、管理領域セクタとバックアップセクタとして、連続した位置にあるセクタが確保されるものとしたが、互いに離れた位置にあるセクタが確保されるといったように、それぞれのセクタの位置は任意である。
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
図10は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。
CPU51は、ROM52、または記憶部58に記憶されているプログラムに従って各種の処理を実行する。RAM53には、CPU51が実行するプログラムやデータなどが適宜記憶される。これらのCPU51、ROM52、およびRAM53は、バス54により相互に接続されている。
CPU51にはまた、バス54を介して入出力インタフェース55が接続されている。入出力インタフェース55には、キーボード、マウス、マイクロホンなどよりなる入力部56、ディスプレイ、スピーカなどよりなる出力部57が接続されている。CPU51は、入力部56から入力される指令に対応して各種の処理を実行する。そして、CPU51は、処理の結果を出力部57に出力する。
入出力インタフェース55に接続されている記憶部58は、例えばハードディスクからなり、CPU51が実行するプログラムや各種のデータを記憶する。通信部59は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
入出力インタフェース55に接続されているドライブ60は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア61が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部58に転送され、記憶される。
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図10に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア61、または、プログラムが一時的もしくは永続的に格納されるROM52や、記憶部58を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部59を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
なお、本明細書において、プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
1 記録再生装置, 11 CPU, 12 RAM, 13 フラッシュメモリ, 14 ハードディスク, 15 バス, 16 チューナ, 17 復調器, 18 TSデコーダ, 19 AVデコーダ, 20,21 MUX, 22 表示コントローラ, 31 更新データ生成部, 32 読み書き制御部, 33 シグネチャ管理部, 34 処理部
Claims (5)
- ファイルシステムを管理するデータであって、認証用のデータが付加されている管理領域と、ファイルデータ本体とを含むファイルシステムを有する情報処理装置において、
前記管理領域が書き込まれる記録領域である第1のセクタと、前記管理領域のコピーが書き込まれる記録領域である第2のセクタが形成されるNOR型フラッシュメモリと、
前記第1のセクタに書き込まれている前記管理領域を更新した更新後の前記管理領域を生成する生成手段と、
前記第1のセクタに書き込まれている更新前の前記管理領域のコピーを前記第2のセクタに書き込み、更新前の前記管理領域に付加されている前記認証用のデータを無効化してから、更新前の前記管理領域を消去し、前記生成手段により生成された更新後の前記管理領域を前記第1のセクタに書き込む書き込み制御手段と
を備える情報処理装置。 - 前記第1のセクタに書き込まれている更新後の前記管理領域に付加されている前記認証用のデータの正当性を装置の起動時に検証する検証手段と、
前記認証用のデータの正当性が前記検証手段により検証されたとき、前記書き込み制御手段により前記第1のセクタに書き込まれた更新後の前記管理領域によってファイルシステムを管理し、所定の処理を行う処理手段と
をさらに備える請求項1に記載の情報処理装置。 - 前記処理手段は、さらに、前記認証用のデータの正当性が前記検証手段により検証されなかったとき、前記書き込み制御手段により前記第2のセクタに書き込まれた更新前の前記管理領域のコピーによってファイルシステムを管理し、所定の処理を行う
請求項1に記載の情報処理装置。 - ファイルシステムを管理するデータであって、認証用のデータが付加されている管理領域と、ファイルデータ本体とを含むファイルシステムを有し、前記管理領域が書き込まれる記録領域である第1のセクタと、前記管理領域のコピーが書き込まれる記録領域である第2のセクタが形成されるNOR型フラッシュメモリを備える情報処理装置の情報処理方法において、
前記第1のセクタに書き込まれている前記管理領域を更新した更新後の前記管理領域を生成し、
前記第1のセクタに書き込まれている更新前の前記管理領域のコピーを前記第2のセクタに書き込み、更新前の前記管理領域に付加されている前記認証用のデータを無効化してから、更新前の前記管理領域を消去し、生成した更新後の前記管理領域を前記第1のセクタに書き込む
ステップを含む情報処理方法。 - ファイルシステムを管理するデータであって、認証用のデータが付加されている管理領域と、ファイルデータ本体とを含むファイルシステムを有し、前記管理領域が書き込まれる記録領域である第1のセクタと、前記管理領域のコピーが書き込まれる記録領域である第2のセクタが形成されるNOR型フラッシュメモリを備える情報処理装置の情報処理をコンピュータに実行させるプログラムにおいて、
前記第1のセクタに書き込まれている前記管理領域を更新した更新後の前記管理領域を生成し、
前記第1のセクタに書き込まれている更新前の前記管理領域のコピーを前記第2のセクタに書き込み、更新前の前記管理領域に付加されている前記認証用のデータを無効化してから、更新前の前記管理領域を消去し、生成した更新後の前記管理領域を前記第1のセクタに書き込む
ステップを含むプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006250430A JP2008071223A (ja) | 2006-09-15 | 2006-09-15 | 情報処理装置、情報処理方法、およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006250430A JP2008071223A (ja) | 2006-09-15 | 2006-09-15 | 情報処理装置、情報処理方法、およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008071223A true JP2008071223A (ja) | 2008-03-27 |
Family
ID=39292736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006250430A Withdrawn JP2008071223A (ja) | 2006-09-15 | 2006-09-15 | 情報処理装置、情報処理方法、およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008071223A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011070675A (ja) * | 2009-09-28 | 2011-04-07 | Samsung Sdi Co Ltd | バッテリーパック、及びデータフラッシュの動作の制御方法 |
US8832537B2 (en) | 2009-12-22 | 2014-09-09 | Toyota Jidosha Kabushiki Kaisha | Information management apparatus and information managing method |
JP2019105940A (ja) * | 2017-12-11 | 2019-06-27 | 株式会社コンテック | ストレージ制御装置およびストレージ制御方法 |
-
2006
- 2006-09-15 JP JP2006250430A patent/JP2008071223A/ja not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011070675A (ja) * | 2009-09-28 | 2011-04-07 | Samsung Sdi Co Ltd | バッテリーパック、及びデータフラッシュの動作の制御方法 |
US8832537B2 (en) | 2009-12-22 | 2014-09-09 | Toyota Jidosha Kabushiki Kaisha | Information management apparatus and information managing method |
JP2019105940A (ja) * | 2017-12-11 | 2019-06-27 | 株式会社コンテック | ストレージ制御装置およびストレージ制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7730326B2 (en) | Method and system for updating firmware stored in non-volatile memory | |
US20110004871A1 (en) | Embedded electronic device and firmware updating method thereof | |
US20090320012A1 (en) | Secure booting for updating firmware over the air | |
JP4824657B2 (ja) | 保安データを管理する装置およびその方法 | |
JP2004310477A (ja) | メモリカード | |
US20080098388A1 (en) | Safe Flashing | |
JP2007233638A (ja) | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム | |
JP2008071223A (ja) | 情報処理装置、情報処理方法、およびプログラム | |
US8046529B2 (en) | Updating control information in non-volatile memory to control selection of content | |
JP5002944B2 (ja) | 情報処理装置、撮像装置、および情報処理方法、並びにコンピュータ・プログラム | |
JP2005078378A (ja) | データ記憶装置及び不揮発性メモリに対するデータ書き込み方法 | |
JP2003157204A (ja) | データ書き換え装置及びデータ書き換え方法並びに記憶媒体 | |
JP2000250817A (ja) | 記憶システム、記憶装置及び記憶データ保護方法 | |
JP2009059444A (ja) | 情報処理装置および情報処理方法 | |
US8312506B2 (en) | Digital television setting information storage apparatus and method for accessing digital television information | |
JP2002312186A (ja) | 情報処理機器、そのファームウェア及びそのファームウェア書き換え方法 | |
JP4680948B2 (ja) | 録画再生装置、記録装置、および、記録方法 | |
JP2010020845A (ja) | 記録媒体初期化方法及び記録媒体初期化装置 | |
JP2008071224A (ja) | 情報処理装置、情報処理方法、およびプログラム | |
US20040210683A1 (en) | Embedding driver patches | |
JP2008071059A (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP2004192529A (ja) | 情報処理装置及びコンピュータ・ソフトウェア | |
JP2006048227A (ja) | メモリ装置、メモリ装置の制御方法およびデータ処理システム | |
JP2005107608A (ja) | 電子機器、不揮発性メモリ及び不揮発性メモリのデータ書き換え方法 | |
JP2000330850A (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: 20091201 |