(57)【特許請求の範囲】
【請求項１】
データを格納する不揮発性の記録領域と、
データ処理装置から読み出し可能かつ書き込み不可である更新情報を保持する更新通知部と、
記録媒体の初期化処理後において、前記データ処理装置から受信したコマンドが最初の記録領域を更新するコマンドである場合、更新情報を更新する更新制御部と、
前記データ処理装置との通信を行うホストインターフェース部と、
前記記録領域にデータを読み書きすると共に、前記ホストインターフェース部を介して前記記録領域のデータ及び前記更新情報を前記データ処理装置に与える制御部と、を具備する記録媒体。
【請求項２】
請求項１記載の記録媒体であって、
前記記録領域は、１つ以上のデータを格納するデータ格納領域と、前記データ格納領域に格納された各データをデータ処理装置が取り出す際に必要となる検索情報を格納する検索情報格納領域とを備え、
前記データ格納領域のうち少なくとも１つは前記更新通知部の更新情報を格納するフィールドを有する記録媒体。
【請求項３】
請求項１記載の記録媒体であって、
前記記録領域は、１つ以上のデータを格納するデータ格納領域と、前記データ格納領域に格納された各データをデータ処理装置が取り出す際に必要となる検索情報を格納する検索情報格納領域とを備え、
前記検索情報格納領域は前記更新通知部の更新情報を格納するフィールドを有する記録媒体。
【請求項４】
データを格納する不揮発性の記録領域と、データ処理装置から読み出し可能かつ書き込み不可である更新情報を保持する更新通知部と、記録媒体の初期化処理後において、前記データ処理装置から受信したコマンドが最初の記録領域を更新するコマンドである場合、更新情報を更新する更新制御部と、前記データ処理装置との通信を行うホストインターフェース部と、前記記録領域にデータを読み書きすると共に、前記ホストインターフェース部を介して前記記録領域のデータ及び前記更新情報を前記データ処理装置に与える制御部と、を備えた記録媒体を装着するスロットと、
前記スロットに装着された記録媒体との入出力処理を行う入出力処理部と、
前記入出力処理部を介して前記記録媒体のデータを読み出し一時記憶すると共に、前記記録媒体から読み出した前記更新通知部の更新情報に基づいてデータ処理を行うデータ処理部と、を具備するデータ処理装置。
【請求項５】
記録媒体が、データを格納する不揮発性の記録領域と、データ処理装置から読み出し可能かつ書き込み不可の更新情報を保持する更新通知部と、記録媒体の初期化処理後において、前記データ処理装置から受信したコマンドが最初の記録領域を更新するコマンドである場合、更新情報を更新する更新制御部と、前記データ処理装置との通信を行うホストインターフェース部と、前記記録領域にデータを読み書きすると共に、前記ホストインターフェース部を介して前記記録領域のデータ及び前記更新情報を前記データ処理装置に与える制御部と、を備え、
前記データ処理装置が、前記記録媒体を装着するスロットと、前記スロットに装着された記録媒体との入出力処理を行う入出力処理部と、前記入出力処理部を介して前記記録媒体のデータを読み出し一時記憶すると共に、前記記録媒体から読み出した前記更新通知部の更新情報に基づいてデータ処理を行うデータ処理部と、を備える場合のデータ処理方法であって、
前記更新通知部の更新情報は前記記録媒体の初期化処理後、最初に前記記録領域のデータが更新される直前にのみ更新され、
前記記録媒体から読み出した記録領域におけるフィールドの更新情報と、前記記録媒体から読み出した前記更新通知部の更新情報とが一致するか否かを判別することにより、前記データが記録された後に前記記録媒体中の前記記録領域のデータが更新されたか否かを判定するデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、読み書き可能な記録媒体、及び記録媒体に格納されたデータの処理を行うデータ処理装置及びデータ処理方法に関するものである。
【背景技術】
【０００２】  近年、ディジタルデータを読み書き可能な記録媒体として、不揮発性半導体メモリを内蔵する様々なタイプのカード状の半導体メモリが普及してきている。これらの半導体メモリを使ってデータを処理するデータ処理装置は、パーソナルコンピュータ、音響機器、映像機器、携帯電話、デジタルカメラなどの電化製品を始め、多岐に渡って利用されている。【０００３】  半導体メモリ等の着脱可能で可搬性に優れた記録媒体は、データ処理装置間のデータのやり取りを担うブリッジメディアとして特に有用である。このため１つの記録媒体は装脱によって複数のデータ処理装置に使用されることが多い。従って、あるデータ処理装置が記録媒体に格納したデータは、他のデータ処理装置によって更新される可能性がある。そのため、データ処理装置は、一度抜去された記録媒体がもう一度装着された際に、記録媒体の内容が更新されているか否かを確認してから使用する必要がある。【０００４】  あるデータ処理装置において、記録媒体内のデータが他のデータ処理装置などによって更新された可能性があるか否かを判断するためには、記録媒体に記録されたデータを実際に読み出して内容を確認しなければならず、読み出すデータのサイズが大きくなるに伴い、処理時間がかかるという問題があった。【０００５】  データが記録媒体に書き込まれる度に更新される更新情報としては、記録媒体中のブロック毎の書き込み回数などがあり、その記録方法が例えば特開２０００−４５８５８号公報に開示されている。しかし、ブロック毎の書き込み回数は一般に、記録媒体の内部でのみ使用され、データ処理装置には開示されない。このため、記録媒体におけるデータの更新の有無を検出する用途には利用できなかった。【０００６】  従来の記録媒体では、着脱可能かつ読み書き可能な記録媒体に格納されたデータが、更新された可能性があるか否かをデータ処理装置において簡単に判別できないために、記録媒体内のデータの確認に要する時間が多くかかるという問題点があった。
【特許文献１】特開２０００−４５８５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】  本発明はこのような問題を解決するために、記録媒体内にデータが書き込み直前に、データが更新されていることを通知する更新通知部を設ける。そして更新通知部の更新情報をデータ処理装置から参照可能とし、さらに更新通知部の更新情報はデータ処理装置から更新不可とする。こうしてデータ処理装置に対して更新の可能性を確実に通知できるようにすることを、発明の主要な目的とする。
【課題を解決するための手段】
【０００８】
本発明の記録媒体は、データを格納する不揮発性の記録領域と、データ処理装置から読み出し可能かつ書き込み不可である更新情報を保持する更新通知部と、記録媒体の初期化処理後において、前記データ処理装置から受信したコマンドが最初の記録領域を更新するコマンドである場合、更新情報を更新する更新制御部と、前記データ処理装置との通信を行うホストインターフェース部と、前記記録領域にデータを読み書きすると共に、前記ホストインターフェース部を介して前記記録領域のデータ及び前記更新情報を前記データ処理装置に与える制御部と、を具備するものである。
【発明の効果】
【０００９】  このような記録媒体及びデータ処理方法を用いれば、記録媒体中のデータが他のデータ処理装置等によって更新された可能性があるか否かを簡単に判別できる。従って、データ処理装置において処理中に記録媒体が抜去された場合や、記録媒体の電源断が発生した場合に、記録媒体に格納されたデータが更新された可能性があるか否かを短時間で判別できる。データが更新されていない場合には、データ処理装置に蓄えていたキャッシュ情報をそのまま使用することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】第１図は本発明の実施例における記録媒体１００の構成図である。
【図２】第２図は本発明の実施例１における記録媒体１００のコマンド受信時の動作シーケンスを示すフローチャートである。
【図３】第３図は本発明の実施例におけるデータ処理装置２００の構成を示すブロック図である。
【図４】第４図は本発明の実施例１におけるデータ処理装置２００に記録媒体１００を装着した場合の動作シーケンスを示すフローチャートである。
【図５】第５図は本発明の実施例１におけるデータ処理装置２００が記録媒体１００のデータを読み出す場合の動作シーケンスを示すフローチャートである。
【図６】第６図は本発明の実施例１におけるデータ処理装置２００が記録媒体１００にデータを書き込む場合の動作シーケンスを示すフローチャートである。
【図７】第７図は本発明の実施例１におけるデータ処理装置２００の電源起動時の動作シーケンスを示すフローチャートである。
【図８】第８図は本発明の実施例２における記録領域１３０のデータ構造を示す説明図である。
【図９】第９図は本発明の実施例２におけるデータ処理装置２００に記録媒体１００を装着した場合の動作シーケンスを示すフローチャートである。
【図１０】第１０図は本発明の実施例２におけるインデックスファイル３００を作成する動作シーケンスを示すフローチャートである。
【図１１】第１１図は本発明の実施例２におけるデータ処理装置２００の電源起動時の動作シーケンスを示すフローチャートである。
【図１２】第１２図は本発明の実施例３における記録媒体１００のコマンド受信時の動作シーケンスを示すフローチャートである。
【図１３】第１３図は本発明の実施例３におけるインデックスファイル３００の作成の動作シーケンスを示すフローチャートである。
【符号の説明】
【００１１】  １００  記録媒体
１１０  ホストインターフェイス部
１２０  制御部
１３０  記録領域
１３１  データ格納領域
１３２  検索情報格納領域
１４０  更新通知部
１５０  媒体ＩＤ保持部
２００  データ処理装置
２１０  スロット
２２０  入出力処理部
２３０  データ処理部
２３１  更新情報格納領域
２３２  媒体固有ＩＤ格納領域
２３３  キャッシュ情報格納領域
２４０  ユーザ入力処理部
２５０  表示処理部
３００  インデックスファイル
【発明を実施するための最良の形態】
【００１２】  以下、本発明の実施例における記録媒体、データ処理装置、データ処理方法ついて、図面を用いて説明する。
【実施例１】  まず、本発明の実施例１による記録媒体について説明する。第１図は本発明の半導体メモリである記録媒体１００の構成図である。記録媒体１００は、ホストインターフェイス部１１０、制御部１２０、記録領域１３０、更新通知部１４０、媒体ＩＤ保持部１５０から構成される。このような記録媒体１００はデータ処理装置２００のスロットに挿入されてデータの読み書きが行われる。即ちデータ処理装置２００は記録媒体１００に対してデータを読み書きするホスト機器である。【００１３】  ホストインターフェイス部１１０は、データ処理装置２００とコマンドやデータ等の情報の受け渡しをするものである。制御部１２０は、記録媒体１００の記録領域１３０、更新通知部１４０、媒体ＩＤ保持部１５０の制御を行うことにより、記録領域１３０にデータを読み書きすると共に、ホストインターフェイス部１１０を介して記録領域１３０のデータ及び更新情報をホスト機器であるデータ処理装置２００に与えるものである。記録領域１３０は、ディジタルデータを格納する部分であり、データ処理装置２００から、任意のディジタルデータの読み書きが可能な領域である。【００１４】  更新通知部１４０は、記録領域１３０のどこか一部のデータが書き込み可能又は消去可能になったきに、更新情報が制御部１２０によって更新され、その値を保持するものである。更新通知部１４０は、更新情報が数値情報の場合、カウンタで構成することも可能である。また更新情報は記録領域１３０の一部に保持することも可能である。更新情報は制御部１２０及びホストインターフェイス部１１０を介してデータ処理装置２００で読み出すことが可能である。しかしながら、データ処理装置２００から更新情報を任意の値に設定することはできない。本実施例においては、更新通知部１４０に格納される更新情報のサイズは一例として６４ビットとする。【００１５】  また、更新通知部１４０の更新情報として記録媒体１００を製造したときに初期値である０が書き込まれ、それ以降はクリアされないものとする。すなわち、記録媒体１００の電源が切断されても、データ処理装置２００からリセットコマンドが発行されても、更新通知部１４０の値は初期値に戻らないものとする。【００１６】  媒体ＩＤ保持部１５０は、記録媒体毎に異なる媒体固有のＩＤを格納しているメモリである。媒体ＩＤ保持部１５０は必ずしも必要ではないが、本実施例では備えているものとする。本実施例においては、媒体ＩＤ保持部１５０のメモリサイズは一例として６４ビットとする。【００１７】  以下、記録媒体１００を構成している各部の動作について図面を用いて説明する。第２図は、記録媒体１００がデータ処理装置２００からコマンドを受信したときの一般的な動作シーケンスを示すフローチャートである。このコマンドとは、データのライトコマンド、リードコマンド、イレーズコマンド、初期化コマンドなどである。ステップＳ２０１において、ホストインターフェイス部１１０はデータ処理装置２００からのコマンドを受信すると、そのコマンドを制御部１２０に通知する。ステップＳ２０２で、制御部１２０はステップＳ２０１で通知されたコマンドの種別を判断し、そのコマンドが記録領域１３０のデータを更新するコマンドであるか否かを判断する。記録領域１３０を更新するコマンドとは、データの書き込みを行うライトコマンドや、データの消去を行うイレーズコマンドなどである。更新するコマンドである場合、ステップＳ２０３の処理に進む。それ以外のコマンドである場合、ステップＳ２０５の処理に進む。なお、それ以外のコマンドとは、例えばデータの読み出しを行うリードコマンドなどである。【００１８】  ステップＳ２０３で、制御部１２０は更新通知部１４０の更新情報の値をインクリメントする。本実施例においてインクリメントとは１を加算するものとするが、これに限定されるものではない。ステップＳ２０４で、制御部１２０は受信した更新コマンドを実行する。例えば、コマンドがライトコマンドである場合には記録領域１３０に対して、データ処理装置２００から受信したデータを書き込む。また、イレーズコマンドである場合には記録領域１３０の該当するアドレスのデータを消去する。処理が終了したらステップＳ２０６に進む。ステップＳ２０５で、受信したコマンド（リードコマンドなど）を実行してステップＳ２０６に進む。【００１９】  ステップＳ２０６では、受信したコマンドが記録媒体１００からデータ処理装置２００に応答値（ＡＣＫ）を返す必要があるものか否かを判断する。応答値（ＡＣＫ）に更新通知部１４０の更新情報を格納するフィールドが用意されている場合には、ステップＳ２０７に進み、そうでない場合は処理を終了する。ステップＳ２０７で、応答値（ＡＣＫ）に対して現在の更新通知部１４０の更新情報を埋め込み、データ処理装置２００に送信して処理を終了する。【００２０】  以上のように、本実施例による記録媒体１００は、記録領域１３０のデータが書き込み可能なときであって、データを更新する直前に更新通知部１４０の値を更新する。従って、コマンドの実行中に電源の遮断やカード（記録媒体）抜けなどが発生し、処理が中断した場合にも更新通知部１４０の更新情報は更新される。すなわち、更新通知部１４０の更新情報の値は記録媒体１００が実際に更新された回数ではなく、更新された可能性がある回数を表示することになる。このため、更新通知部１４０の更新情報の値が変更されていない場合には、記録領域１３０のデータが更新されていないことになる。【００２１】  なお、本実施例において、記録媒体１００はデータ処理装置２００が任意のタイミングで更新通知部１４０の値を読み出すためのコマンドを備えているものとする。【００２２】  次に、本実施例によるデータ処理装置２００について説明する。第３図はデータ処理装置２００の構成例を示すブロック図である。データ処理装置２００は、記録媒体１００を装着してデータ処理を行うもので、スロット２１０、入出力処理部２２０、データ処理部２３０、ユーザ入力処理部２４０、表示処理部２５０を含んで構成される。スロット２１０は記録媒体１００を装着するためのハードウェアである。入出力処理部２２０は、スロット２１０に装着された記録媒体１００に対してコマンドやデータ等の情報の受け渡しを行うものである。データ処理部２３０は、記録媒体１００に格納されたデータもしくはこれから格納するデータを処理する部分であり、デー��処理装置２００の中心的な処理を担う部分である。データ処理部２３０は、更新情報格納領域２３１、媒体固有ＩＤ格納領域２３２、キャッシュ情報格納領域２３３を備えている。データ処理部２３０は、例えば記録媒体１００に格納されたデータがオーディオデータやビデオデータである場合には、データを入出力処理部２２０経由で読み出して再生処理を行ってもよい。また、記録、編集したデータを入出力処理部２２０経由で記録媒体１００に書き込んでもよい。データ処理部２３０は、データの処理中に使用する一時的な記憶領域であるメモリを備えているものとする。【００２３】  更新情報格納領域２３１は、記録媒体１００の更新通知部１４０の更新情報を格納するための領域である。媒体固有ＩＤ格納領域２３２は、記録媒体１００の媒体ＩＤ保持部１５０の値を格納するための領域である。記録媒体１００が媒体ＩＤ保持部１５０を備えていない場合には、これはなくてもよいが、本実施例では備えているものとする。キャッシュ情報格納領域２３３は、記録媒体１００から読み出した最新のデータを格納するための領域である。記録媒体１００に格納されたデータのうち、頻繁に読み込むデータ等を格納しておくことで、記録媒体１００へのアクセス回数を減らし、処理を高速化することができる。【００２４】  ユーザ入力処理部２４０は、ユーザからの入力を受け付ける部分である。ユーザ入力処理部２４０は必ずしも必要ではないが、本実施例では備えているものとする。表示処理部２５０は、データ処理部２３０の処理結果や各処理の進行状況などをユーザに通知する部分である。表示処理部２５０は必ずしも必要ではないが、本実施例では備えているものとする。【００２５】  以下、記録媒体１００及びデータ処理装置２００を構成している各部の動作について、図面を用いて説明する。第４図はデータ処理装置２００に記録媒体１００を装着した場合の動作シーケンスを示すフローチャートである。ステップＳ４０１で、データ処理部２３０はスロット２１０に装着された記録媒体１００の媒体ＩＤ保持部１５０の値を、入出力処理部２２０を経由して読み出して、メモリ上に一時記憶させる。ステップＳ４０２で、データ処理部２３０はスロット２１０に装着された記録媒体１００の更新通知部１４０の更新情報を、入出力処理部２２０を経由して読み出して、メモリ上に一時記憶させる。ステップＳ４０３で、ステップＳ４０１で読み出した媒体ＩＤ保持部１５０の値と、媒体固有ＩＤ格納領域２３２に格納されている値との比較を行う。一致する場合にはステップＳ４０４に進み、一致しない場合にはステップＳ４０６に進む。【００２６】  ステップＳ４０４で、ステップＳ４０２で読み出した更新通知部１４０の更新情報と、データ処理部２３０の更新情報格納領域２３１に格納されている更新情報との比較を行う。一致する場合にはステップＳ４０５に進み、一致しない場合にはステップＳ４０６に進む。ステップＳ４０５で、データ処理部２３０はスロット２１０に装着された記録媒体１００に格納されているデータが、前回の装着時から更新されていないと判断する。そして、キャッシュ情報格納領域２３３に格納されているキャッシュデータを有効なデータとして取り扱うことに決定する。ステップＳ４０６に進んだ場合は、データ処理部２３０はスロット２１０に装着された記録媒体１００に格納されているデータが、前回の装着時から更新されていると判断する。そして、キャッシュ情報格納領域２３３に格納されているキャッシュデータを無効なデータとして取り扱うことに決定する。このとき、キャッシュ情報格納領域２３３の全領域をクリアしてもよい。さらに、ステップＳ４０１で一時記憶していた媒体ＩＤ保持部１５０の値を媒体固有ＩＤ格納領域２３２に上書きし、ステップＳ４０２で一時記憶していた更新通知部１４０の更新情報を更新情報格納領域２３１に上書きする。【００２７】  第５図は、データ処理装置２００が記録媒体１００のデータを読み出す場合の動作シーケンスを示すフローチャートである。ステップＳ５０１で、データ処理部２３０はスロット２１０に装着された記録媒体１００の更新通知部１４０の更新情報を、入出力処理部２２０を経由して読み出し、メモリ上に一時記憶させる。ステップＳ５０２で、データ処理部２３０は入出力処理部２２０を経由してスロット２１０に装着されている記録媒体１００に対してリードコマンドを発行し、記録媒体１００からデータを読み出す。ここで、読み出したデータをキャッシュ情報格納領域２３３に格納してもよい。読み出し処理が完了したらステップＳ５０３に進む。ステップＳ５０３では、データ処理部２３０はスロット２１０に装着された記録媒体１００の更新通知部１４０の更新情報を、入出力処理部２２０を経由して再度読み出して、メモリ上に一時記憶させる。【００２８】  ステップＳ５０４では、ステップＳ５０１で読み出した更新通知部１４０の更新情報と、ステップＳ５０３で読み出した更新通知部１４０の更新情報とを比較する。すなわち、ステップＳ５０２のデータ読み出しの前後で更新通知部１４０の値が変化していないかをチェックする。読み出し処理が正常に完了していれば一致する。しかし、何らかの理由によりデータの読み出し途中にデータが更新された場合などには一致しない。一致する場合には処理を終了する。一致しない場合にはステップＳ５０５に進む。ステップＳ５０５で、ステップＳ５０２でのデータの読み出しに失敗したと考えられるため、エラー処理を実施する。キャッシュ情報格納領域２３３のデータは信頼性が損なわれたと判断し、無効化する。ステップＳ５０６で、単純にエラー終了する場合にはそのまま終了する。リトライ処理を実施する場合には、ステップＳ５０１に戻って処理をやり直す。なお、リトライ処理は有限回数に制限してもよい。第５図の動作シーケンスを用いることで、読み出したデータの信頼性を高めることが可能となる。【００２９】  第６図はデータ処理装置２００が記録媒体１００にデータを書き込む場合の動作シーケンスを示すフローチャートである。ステップＳ６０１で、データ処理部２３０はスロット２１０に装着された記録媒体１００の更新通知部１４０の更新情報を、入出力処理部２２０を経由して読み出してメモリ上に一時記憶させる。ステップＳ６０２で、データ処理部２３０はスロット２１０に装着されている記録媒体１００に対して入出力処理部２２０を経由してライトコマンドを発行し、記録媒体１００に書き込むデータを送信する。書き込み処理が完了したらステップＳ６０３に進む。ステップＳ６０３で、データ処理部２３０はスロット２１０に装着された記録媒体１００の更新通知部１４０の更新情報を、入出力処理部２２０を経由して読み出してメモリ上に一時記憶させる。ステップＳ６０４では、ステップＳ６０１で読み出した更新通知部１４０の更新情報と、ステップＳ６０３で読み出した更新通知部１４０の更新情報とを比較する。すなわち、ステップＳ６０２のデータ書き込み前後で更新通知部１４０の更新情報が変化しているかをチェックする。記録媒体１００で書き込み処理が開始された場合には更新されているが、何らかの理由によりデータの書き込みが行われなかった場合には更新されていない。更新されている場合にはステップＳ６０５に進む。更新されていない場合にはステップＳ６０６に進む。ステップＳ６０５で、データ処理部２３０は更新情報格納領域２３１の値をステップＳ６０３で一時記憶しておいた値で上書きする。【００３０】  さらに、ステップＳ６０２の書き込みによって、キャッシュ情報格納領域２３３に格納しているデータに対応する記録媒体１００のデータが上書きされる場合には、キャッシュ情報格納領域２３３のデータを無効化する。なお、処理の簡略化のために常にキャッシュ情報格納領域２３３のデータを無効化してもよい。【００３１】  ステップＳ６０６では、ステップＳ６０２でのデータの書き込みに失敗したと考えられるため、エラー処理を実施する。単純にエラー終了する場合にはそのまま終了する。リトライ処理を実施する場合には、ステップＳ６０１に戻って処理をやり直す。なお、リトライ処理は有限回数に制限してもよい。【００３２】  第７図はデータ処理装置２００の電源起動時の動作シーケンスを示すフローチャートである。ステップＳ７０１で、データ処理装置２００の電源がＯＮになると、データ処理装置２００内の入出力処理部２２０、データ処理部２３０、ユーザ入力処理部２４０、表示処理部２５０は初期化処理を行う。初期化処理とはハードウェア及びソフトウェアの初期設定を行う処理であり、内部メモリのクリアや初期値の設定などを含む。このとき、データ処理部２３０は更新情報格納領域２３１、媒体固有ＩＤ格納領域２３２、及びキャッシュ情報格納領域２３３の値をクリアする。【００３３】  ステップＳ７０２で、入出力処理部２２０はスロット２１０に記録媒体１００が装着されているか否かを判別する。ステップＳ７０３において、ステップＳ７０２の判別の結果、記録媒体１００がスロット２１０に装着されている場合にはステップＳ７０４に進む。装着されていない場合には電源起動時の処理を完了する。ステップＳ７０４では、スロット２１０に装着された記録媒体１００に対して、第４図で説明した動作シーケンスを実行してから電源起動時の処理を完了する。【００３４】  電源起動時の動作シーケンスが完了した後、データ処理装置２００はユーザ入力処理部２４０で受取ったユーザの入力をトリガにして、記録媒体１００に格納されているデータの処理を実施する。ユーザ入力処理部２４０が存在せず、データ処理部２３０に格納されたソフトウェアが自動的に記録媒体１００に格納されているデータの��理を開始してもよい。また、各動作シーケンスにおいて、表示処理部２５０はその進行状況や動作結果をユーザに表示してもよい。【００３５】  以上のように、本発明によるデータ処理装置２００は、記録媒体１００へのアクセスを行う際に、更新通知部１４０の更新情報を利用する。これにより、記録媒体１００が装着された際にキャッシュ情報格納領域２３３に格納されたキャッシュ情報を再利用できるか否かを簡単に判別することができ、再利用できる場合には処理の高速化が可能となる。さらに、記録媒体１００からのデータの読み出し、記録媒体１００へのデータの書き込みが正常に行われたか否かを、より厳しくチェックすることができる。【００３６】  なお、本発明を上記の実施例に基づいて説明してきたが、本発明は上記の実施例に限定されるものではない。本発明の趣旨を逸脱しない範囲で変更することができる。以下に説明する（１−１）〜（１−１４）の場合も、本発明の概念に含まれる。【００３７】  （１−１）本実施例では、更新通知部１４０はカウンタで構成されるとしたが、これに限定されるものではない。記録領域１３０の値が更新された可能性がある場合には、必ず状態が変化してデータ処理装置２００がそれを検知することが可能であれば何でもよい。【００３８】  （１−２）本実施例では、ステップＳ２０３の処理で更新通知部１４０の更新情報の更新は、数値のインクリメントであるとしたが、それ以外の更新方法を適用してもよい。すなわち、デクリメントでもよいし、擬似乱数を設定していってもよい。同じ値が出てこないような更新方法であれば何でも良い。【００３９】  （１−３）本実施例では、記録媒体１００は記録領域１３０を更新するコマンドを受信した場合に、１回だけ更新通知部１４０の更新情報を更新することにしたが、複数回更新してもよい。例えば、複数セクタにデータを１コマンドで書き込むようなマルチライトコマンドの場合には、書き込むセクタ数だけ更新を行っても良い。【００４０】  （１−４）本実施例では、記録媒体１００の更新通知部１４０の更新情報は製造時に初期値０が設定されることにしたが、初期値は０でなくても良い。例えば、初期値を媒体ＩＤ保持部１５０から決定しても良い。例えば、更新通知部１４０の初期値を媒体ＩＤ保持部１５０の値そのものとしても良い。媒体ＩＤ保持部１５０の値は記録媒体毎に異なるため、記録媒体毎に更新通知部１４０の初期値を多様にしておくことが可能である。【００４１】  （１−５）本実施例では、更新通知部１４０のサイズを６４ビットとしたが、任意の長さに設定して良い。記録媒体の寿命に応じて、同じ値が二度と出現しないような桁数にすることで、本発明の効果をより確実なものにできる。【００４２】  また、データ処理装置２００は、更新通知部１４０の値が一巡したことを検出するための仕組みを備えていてもよい。例えば、記録媒体１００は更新通知部１４０の値が表現できる最大値になった時点で、値の更新を行わなくする仕様としてもよい。即ち、データ処理装置２００は更新通知部１４０の値が最大値の場合にはこれを利用しない。また、記録媒体１００は更新通知部１４０が一巡したら、書き込みできなくなるという仕様にしてもよい。【００４３】  ��１−６）本実施例では、媒体ＩＤ保持部１５０のメモリサイズを６４ビットとしたが、任意の長さに設定して良い。【００４４】  （１−７）本実施例では、記録媒体１００は半導体メモリとしたが、着脱可能かつ読み書き可能な記録媒体であれば、本発明の効果は有効である。半導体メモリ以外の記録媒体として、例えば着脱可能なＨＤＤでもよい。【００４５】  （１−８）本実施例では、発明のポイントを明確に説明するために、データ処理装置２００は１つのスロット２１０を備えているものとしたが、スロット２１０は複数あってもよい。【００４６】  同様に、媒体固有ＩＤ格納領域２３２及びキャッシュ情報格納領域２３３には、１つの記録媒体１００の情報しか格納できないものとして説明したが、複数の記録媒体１００の情報を格納できるようにしてもよい。このとき、キャッシュ情報の再利用率が高まるため、処理の高速化が期待できる。【００４７】  （１−９）本実施例では、第５図の動作シーケンスにおいて読み出し処理の前後における更新通知部１４０の更新情報を比較している。これは読み出し処理が正常に行われているか否かを確認するものであるが、必要なければ省略してもよい。【００４８】  なお、読み出し処理の確認を行う別の方法として、例えば、データ処理装置２００が実際に読み出したデータサイズが読み出し時に指定したサイズと一致するかを確認するという方法もある。【００４９】  また本実施例では、第６図の動作シーケンスにおいて書き込み処理の前後における更新通知部１４０の更新情報を比較している。これは書き込み処理が正常に行われているか否かを確認するものであるが、必要なければ省略してもよい。なお、第６図の動作シーケンスにおいて、書き込み処理の直後に書き込んだデータの読み出しを行い、データが一致することを確認しても良い。【００５０】  （１−１０）本実施例では、データ処理装置２００の電源起動時において、データ処理部２３０は更新情報格納領域２３１、媒体固有ＩＤ格納領域２３２、及びキャッシュ情報格納領域２３３の値をクリアしているため、データ処理装置２００の電源がＯＦＦされるとキャッシュ情報は消去されていた。しかし、データ処理装置２００の電源がＯＦＦされてもキャッシュ情報が消去されないように、更新情報格納領域２３１、媒体固有ＩＤ格納領域２３２、及びキャッシュ情報格納領域２３３の情報を不揮発性メモリに保持しても良い。また、逆にキャッシュ情報を強制的にリセットする手段を備えていても良い。【００５１】  （１−１１）本実施例では、更新通知部１４０の更新情報の値は記録領域１３０の更新の可能性が発生する度にインクリメントされていたが、この仕組みを利用すれば次のことが可能となる。【００５２】  記録媒体１００が記録領域１３０への書き込みを禁止するライトプロテクトを設定、解除する機能を有しており、かつ、記録媒体の制御部１２０はホストインターフェイス部１１０経由でライトプロテクトの設定、解除の状態を判断することができるものとする。そして、データ処理装置２００の更新通知部１４０の値は、記録領域１３０の更新の可能性が発生する度にインクリメントされるのではなくて、ライトプロテクトが解除される度にインクリメントされるも��とする。このとき、データ処理装置２００は記録媒体１００に設定したライトプロテクトが他のデータ処理装置によって解除された履歴があるか否かを判断することが可能となる。【００５３】  （１−１２）本実施例では、更新通知部１４０の更新情報の値は記録媒体１３０のどこか一部に更新の可能性が発生する度にインクリメントされていた。しかし、記録媒体１３０のある特定の領域に対しては更新通知部１４０の更新情報の値を更新しないようにしてもよい。これにより、記録媒体１００の用途を広げることが可能となる。【００５４】  （１−１３）本実施例では、記録媒体１００に１つの記録領域１３０とそれに対応する１つの更新通知部１４０が存在している例を記述した。しかし、記録媒体１００に記録領域１３０と更新通知部１４０の組が複数存在していてもよい。このとき、各更新通知部１４０は対応する記録領域１３０のどこか一部に更新の可能性が発生した場合に更新情報を更新するものとする。これにより記録領域ごとに更新の可能性を検出することができるため、データ処理装置２００側でより細かい制御が可能となる。【００５５】  例えば記録媒体１００がＳＤメモリカードの場合、ユーザが自由にアクセスできる記録領域である通常領域と、特定の認証処理に成功したときのみアクセスできる記録領域である認証領域が存在する。このとき、通常領域用及び認証領域用の２つの更新通知部１４０が存在し、各々の更新通知部１４０は対応する記録領域１３０に対して、更新の可能性が発生する度に更新情報を更新するとしてもよい。【００５６】  （１−１４）本実施例では記録媒体１００に１つの記録領域１３０とそれに対応する１つの更新通知部１４０が存在している例を記述した。しかし、記録媒体１００に複数の記録領域１３０が存在している場合、複数の記録領域の全てもしくは一部に対して１つの更新通知部１４０が存在していてもよい。このとき、更新通知部１４０は対応する複数の記録領域１３０のうちいずれか１つの記録領域１３０に、更新の可能性が発生した場合に更新情報が更新される。これにより、１つの更新通知部１４０で複数の記録領域１３０の更新を管理できる。【００５７】  例えばＳＤメモリカードの場合、通常領域及び認証領域の２つの記録領域に対して１つの更新通知部１４０が存在し、通常領域及び認証領域のいずれかに更新の可能性が発生した場合に、更新通知部１４０の更新情報が更新されるとしてもよい。
【実施例２】
【００５８】  次に本発明の実施例２における記録媒体及びデータ処理方法について、図面に基づいて詳細に説明する。データ処理装置によっては、インデックスファイルの作成機能を有しないものがある。このようなデータ処理装置では、記録媒体にデータの書き込みや消去を行った場合、インデックスファイルが更新されない。このような記録媒体のファイルを他のデータ処理装置が読む場合、記録媒体のインデックスファイルを閲覧し、コンテンツファイルを取り出しても、コンテンツファイルの内容と、インデックスファイルの内容が一致しない場合がある。【００５９】  本実施例は、インデックスファイルに更新情報フィールドを設け、この更新情報フィールドに更新通知部の更新情報を格納することにより、コンテンツファイルの内容とインデックスファイルの内容が一致しているか否かを容易に確認できるようにしたものである。【００６０】  本実施例２における記録媒体１００のブロック構成そのものについては、実施例１と同様であり、第１図のとおりとする。実施例２の記録媒体１００は、記録領域に設けられたデータ格納領域のインデックスファイル内に、更新情報フィールドを設ける。このことにより、データ処理装置が複数存在する場合に、記録媒体１００がいずれのデータ処理装置に挿入されても、記録領域の更新状態を確認できるようにする。【００６１】  第８図は、本実施例の記録媒体１００において、記録領域１３０に格納されるデータのデータ構造例を示す説明図である。記録領域１３０は、データ格納領域１３１及び検索情報格納領域１３２から構成される。データ格納領域１３１は複数のデータを格納する領域である。本実施例では各々のデータはファイル形式で格納されているものとし、少なくとも１つ以上のコンテンツファイル及びインデックスファイル３００が格納されているものとする。しかし、その他のファイルが格納されていてもよい。コンテンツファイルは、音楽、動画、静止画などのコンテンツデータを格納したファイルである。【００６２】  インデックスファイル３００は、複数のコンテンツファイルの情報を格納したファイルであり、具体的には次のような情報を格納するフィールドを備えているものとする。すなわち、記録媒体１００の媒体固有ＩＤ１５０の値、記録媒体１００の更新通知部１４０の更新情報、記録媒体１００の中に記録されている総コンテンツファイル数、記録媒体１００の中に記録されている総コンテンツファイルの合計の再生時間、各コンテンツファイルの情報、コンテンツファイルの再生順序を記述したプレイリストなどである。特に、記録媒体１００の更新通知部１４０の更新情報を格納するフィールドを更新情報フィールドと呼ぶ。【００６３】  また、コンテンツファイルの情報とは、具体的には次のような情報である。すなわち、コンテンツファイル名、音楽、動画、静止画などのコンテンツの種別、コンテンツの再生時間、コンテンツファイルが格納されている物理的なデータ格納アドレス、コンテンツの再生条件や複製条件である著作権保護情報、コンテンツの作成日時などである。【００６４】  インデックスファイル３００には、コンテンツファイルの一覧表示等を行う際に必要な情報がまとめて格納されているため���格納されているコンテンツファイル全てを検索する必要がなくなり、データ処理装置２００の処理を軽くすることができる。【００６５】  検索情報格納領域１３２は、データ格納領域１３１に格納された各データをデータ処理装置２００が取り出す際に必要となる情報、例えば記録アドレスを格納する領域である。本実施例では、ＦＡＴファイルシステムにて記録アドレスなどを管理し、このＦＡＴファイルシステムにおいて必要となる情報を検索情報格納領域１３２に記録するものとする。なお、ＵＤＦなどの他のファイルシステムを利用しても良いし、ファイルシステムを使わずに記録アドレスなどを管理しても良い。【００６６】  本実施例２におけるデータ処理装置２００のブロック構成は、実施例１と同様であり、第３図のとおりとするため、詳細な説明は割愛する。【００６７】  以下、記録媒体１００及びデータ処理装置２００を構成している各ブロックの動作について図面を用いて説明する。第９図はデータ処理装置２００に記録媒体１００を装着した場合、データ処理装置２００の動作シーケンスを示すフローチャートである。ステップＳ９０１で、データ処理部２３０はスロット２１０に装着された記録媒体１００の検索情報格納領域１３２の情報を、入出力処理部２２０を経由して読み出し、データ格納領域１３１にインデックスファイル３００が存在するか否かを判別する。インデックスファイル３００が存在する場合は、ステップＳ９０２の処理に進み、存在しない場合はステップＳ９０６の処理に進む。【００６８】  ステップＳ９０２では、データ処理部２３０は入出力処理部２２０を経由して、スロット２１０に装着された記録媒体１００のインデックスファイル３００をメモリ上に読み出す。データ格納領域１３１におけるインデックスファイル３００の位置情報などは検索格納領域１３２の情報を利用する。ステップＳ９０３で、データ処理部２３０はスロット２１０に装着された記録媒体１００の更新通知部１４０の値を、入出力処理部２２０を経由して読み出してメモリ上に一時記憶させる。【００６９】  ステップＳ９０４では、ステップＳ９０３で読み出した更新通知部１４０の更新情報と、ステップＳ９０２で読み出したインデックスファイル３００の更新情報フィールドの更新情報との比較を行う。一致する場合にはステップＳ９０５の処理に進む。一致しない場合にはステップＳ９０６の処理に進む。ステップＳ９０５では、データ処理部２３０はスロット２１０に装着された記録媒体１００のインデックスファイル３００が作成された後に、記録領域１３０のデータが更新されていないと判断する。そして、インデックスファイル３００の情報を利用した処理を実行する。インデックスファイル３００の情報を利用した処理とは、例えば記録媒体１００に格納されているコンテンツデータの一覧表を表示処理部２５０に出力することである。【００７０】  ステップＳ９０６では、データ処理部２３０はインデックスファイル３００の有無に関わらず、インデックスファイル３００を利用しない形で処理を実行する。例えば、記録媒体１００のデータ検索情報格納領域１３２の情報を読み出して、記録媒体１００に格納されているコンテンツデータの一覧表を表示処理部２５０���出力する。このとき、インデックスファイル３００を利用しないので、コンテンツデータ毎の情報を検索情報格納領域１３２から順次読み出す必要があるため、処理時間は長めになる。【００７１】  第１０図は、データ処理装置２００が記録媒体１００にインデックスファイル３００を作成する動作シーケンスを示すフローチャートである。ステップＳ１００１で、データ処理部２３０はデータ検索情報格納領域１３２の情報を利用して、記録媒体１００に格納されているコンテンツデータを検索する。そしてコンテンツデータの情報を読み出すことで情報を収集し、メモリ上にインデックスファイルを作成する。メモリ上のインデックスファイルにおいて、更新情報フィールドは無効を意味する値である０を格納する。【００７２】  ステップＳ１００２では、データ処理部２３０は入出力処理部２２０を経由して、ステップＳ１００１で作成したメモリ上のインデックスファイルを記録媒体１００の記録領域１３０に書き込む。ステップＳ１００３では、データ処理部２３０はスロット２１０に装着された記録媒体１００の更新通知部１４０の更新情報を、入出力処理部２２０を経由して読み出し、メモリ上に一時記憶させる。ステップＳ１００４では、ステップＳ１００３で読み出した更新通知部１４０の更新情報の値に次の値を加算する。すなわち、ステップＳ１００２で記録媒体１００に作成したインデックスファイル３００の更新情報フィールドの更新情報を更新する際に、記録媒体１００の更新通知部１４０がインクリメントすると予想される数を加算する。例えば１回の書き込みだけでよい場合には、インクリメントされる数は１とする。これにより算出された値を予測更新情報値と呼ぶ。【００７３】  ステップＳ１００５で、データ処理部２３０はステップＳ１００４で算出した予測更新情報値を、記録媒体１００に作成されているインデックスファイル３００の更新情報フィールドに上書きする。すなわち、記録媒体１００の記録領域１３０に書き込む。ステップＳ１００６では、データ処理部２３０はスロット２１０に装着された記録媒体１００の更新通知部１４０の値を、入出力処理部２２０を経由して読み出し、メモリ上に一時記憶させる。ステップＳ１００７では、ステップＳ１００６で読み出した更新通知部１４０の更新情報の値と、ステップＳ１００４で算出した予測更新情報値とを比較する。一致する場合には、インデックスファイル３００の作成処理を完了する。一致しない場合にはステップＳ１００８に進む。ステップＳ１００８では、インデックスファイル３００の作成においてエラーが発生したと判断し、エラー処理を実行して終了する。【００７４】  第１１図はデータ処理装置２００の電源起動時の動作シーケンスを示すフローチャートである。ステップＳ１１０１では、データ処理装置２００の電源がＯＮになると、データ処理装置２００内の入出力処理部２２０、データ処理部２３０、ユーザ入力処理部２４０、表示処理部２５０は初期化処理を行う。初期化処理とはハードウェア及びソフトウェアの初期設定を行う処理であり、内部メモリのクリアや初期値設定などを含む。ステップＳ１１０２で、入出力処理部２２０はスロット２１０に記録媒体１００が装着されている��否かを検出する。ステップＳ１１０３で、ステップＳ１１０２の検索の結果、記録媒体１００がスロット２１０に装着されていることが判明すれば、ステップＳ１１０４に進む。装着されていない場合には電源起動時の処理を完了する。ステップＳ１１０４では、スロット２１０に装着された記録媒体１００に対して、第９図で説明した動作シーケンスを実行してから電源起動時の処理を完了する。【００７５】  第９図から第１１図の各動作シーケンスにおいて、表示処理部２５０はその進行状況や動作結果をユーザに表示してもよい。【００７６】  以上のように、本発明による記録媒体１００に格納されているインデックスファイル３００は、作成時における記録媒体１００の更新通知部１４０の更新情報を含んでいるため、データ処理装置２００ではインデックスファイル３００が作成された後に記録媒体１００の記録領域１３０が更新されたか否かを簡単に判断することができる。【００７７】  言い換えると、読み書き可能な記録媒体１００においてインデックスファイル３００が作成された後に、コンテンツデータに変更が加えられていないことを、各々のコンテンツデータを確認することなしに簡単に判断できる。【００７８】  これにより、インデックスファイル３００に変更が加えられていない場合には、インデックスファイル３００を利用して記録媒体１００に格納されたコンテンツファイルの一覧を短時間でユーザに通知することが可能となる。【００７９】  なお、本発明を上記の実施例に基づいて説明してきたが、本発明は上記の実施例に限定されないのはもちろんである。本発明の趣旨を逸脱しない範囲で変更することができる。以下に説明する（２−１）〜（２−９）の場合も、本発明の概念に含まれる。【００８０】  （２−１）本実施例では、データ処理装置２００に記録媒体１００を装着した場合の動作シーケンスにおいて、インデックスファイル３００を使用するか否かを判断する際に、更新通知部１４０の更新情報のみを使用している。しかし、これに加えて媒体ＩＤ保持部１５０の値を使用してもよい。すなわち、インデックスファイル３００の媒体固有ＩＤフィールドの値と、記録媒体１００の媒体ＩＤ保持部１５０の値とが一致するか否かの判定を行い、一致しない場合にはインデックスファイル３００を使用しないとしてもよい。これにより、他の記録媒体用に作成されたインデックスファイル３００が記録媒体１００にコピーされ、たまたま更新通知部１４０の更新情報と一致した場合の誤動作を回避することができる。【００８１】  （２−２）本実施例で記述したインデックスファイル３００に備えられているフィールドは一例にすぎない。本発明において必須であるのは更新通知部１４０の更新情報を格納する更新情報フィールドであり、それ以外のフィールドは追加又は削除されていても、本発明による効果は有効である。【００８２】  （２−３）本実施例では、記録媒体１００に対するデータの読み書きを行う際に、実施例１で記述したデータの読み書きの手順を利用していないが、この手順を併用してもよい。これによりデータの読み書きにおけるエラー検出をより厳重に行うことが可能となる。【００８３】  （２−４）本実施例では、インデックスファイル３０��を新規に作成する場合の動作シーケンス例を記述したが、既にインデックスファイル３００が存在し、記録領域１３０への更新内容をデータ処理部２３０が把握している場合には、全てを作り直す必要はない。従って、ステップＳ１００１の処理がより簡略化できる可能性があるが、それ以降の処理は同じである。【００８４】  （２−５）本実施例では、ステップＳ１００１の処理において無効を意味する値を０としたが、これに限定されるものではない。無効であることを意味する値であれば何でも良い。【００８５】  （２−６）コンテンツファイルやインデックスファイルの一部もしくは全体が暗号化されていても本発明は有効である。【００８６】  （２−７）本実施例では、データ格納領域１３１のファイル内に更新情報フィールドを設け、更新通知部１４０の更新情報を格納したが、検索情報格納領域１３２に更新通知部１４０の更新情報を格納するフィールドを備えても良い。すなわち、検索情報格納領域１３２はデータ格納領域の各データの記録アドレスなどに加え、各データを記録媒体１００に記録した際の更新通知部１４０の更新情報を格納してもよい。【００８７】  （２−８）本実施例では、ステップＳ１００５の処理において予測更新情報値をインデックスファイル３００の更新情報フィールドに上書きすると記述したが、具体的には以下のようにしてもよい。【００８８】  ファイルシステムを利用してデータを書き込む場合、各ファイルのデータが格納されているアドレスはファイルシステムが管理しており、ファイルシステムを利用するアプリケーションは関知しない。そこで、ファイルシステムが情報更新フィールドに上書きする機能を有していても良い。もしくは、ファイルシステムは、インデックスファイル３００の更新情報フィールドが格納されているアドレスをアプリケーションに通知する手段を有するものとする。そしてアプリケーションはこのアドレス情報に基づいて情報更新フィールドの更新情報を直接上書きしてもよい。【００８９】  （２−９）本実施例では、ステップＳ９０２の処理の後に必ずステップＳ９０３にて更新通知部１４０の更新情報を読み出していた。しかし、インデックスファイル３００の更新情報フィールドに、無効を意味する値である０が格納されている場合には、即座にステップＳ９０６の処理に進んでもよい。
【実施例３】
【００９０】  次に本発明の実施例３における記録媒体及びデータ処理方法について、図面に基づいて詳細に説明する。本実施例３における記録媒体１００の構成例は、実施例１と同様であり、第１図と同一の構成を有するので、詳細な説明は割愛する。【００９１】  本実施例３における記録媒体１００は、データ処理装置２００がデータを読み書きする前に、少なくとも１回は初期化処理を実施しなければならないものとし、初期化処理のためのコマンドを備えていることが特徴である。【００９２】  第１２図は、記録媒体１００がデータ処理装置２００からコマンドを受信したときの動作シーケンスを示すフローチャートである。ステップＳ１２０１で、ホストインターフェイス部１１０はデータ処理装置２００からのコマンドを受信すると、そのコマンドを制御部１２０に通知する。ステップＳ１２０２では、制御部１２０はステップＳ１２０１で通知されたコマンドの種別を判断し、そのコマンドが記録領域１３０を更新するコマンドであるか否かを判別する。記録領域１３０を更新するコマンドとは、データの書き込みを行うライトコマンドや、データの消去を行うイレーズコマンドなどである。更新するコマンドである場合、ステップＳ１２０３の処理に進む。それ以外のコマンドである場合、ステップＳ１２０６の処理に進む。なお、それ以外のコマンドとは、例えば読み出しを行うリードコマンドなどである。【００９３】
ステップＳ１２０３で、制御部１２０は、記録媒体１００をデジタル処理装置２００に装着する毎になされる初期化処理の後、最初の記録領域１３０を更新するコマンドであるか否かを判断する。最初である場合はステップＳ１２０４の処理に進む。そうでない場合はステップＳ１２０５の処理に進む。ステップＳ１２０４で、制御部１２０は更新通知部１４０の更新情報の値をインクリメントする。本実施例においてインクリメントとは１を加算するものとするが、これに限定されるものではない。ステップＳ１２０５で、制御部１２０は受信したコマンドを実行する。例えば、コマンドがライトコマンドである場合には記録領域１３０にデータ処理装置２００から受信したデータを書き込む。また、イレーズコマンドである場合には記録領域１３０の該当するアドレスのデータを消去する。処理が終了したらステップＳ１２０７に進む。
【００９４】  ステップＳ１２０６では、受信したコマンド（リードコマンド等）を実行してステップＳ１２０７に進む。ステップＳ１２０７では、受信したコマンドの種類が記録媒体１００からデータ処理装置２００に応答値（ＡＣＫ）を返すものであり、かつ応答値（ＡＣＫ）に更新通知部１４０の更新情報を格納するフィールドが用意されている場合には、ステップＳ１２０８に進む。そうでない場合は処理を終了する。ステップＳ１２０８で、応答値（ＡＣＫ）に現在の更新通知部１４０の更新情報を埋め込んでデータ処理装置２００に送信し、処理を終了する。【００９５】  以上のように、実施例３による記録媒体１００は、初期化処理後、最初に記録領域１３０のデータを更新する直前に更新通知部１４０の値を更新する。前述した実施例１、２では、ライトコマンド又はイレーズコマンド毎に更新通知部１４０の値を更新していたが、本実施例では初期化後に一回のみの更新で済む。これにより、記録媒体がデータ処理装置に装着され、その後装脱されないで引き続き使用されるとき、更新情報の書き換えが不要となり、処理時間が短縮される【００９６】  なお、本実施例において、記録媒体１００はデータ処理装置２００が任意のタイミングで更新通知部１４０の更新情報の値をインクリメントするためのコマンドを備えているものとする。【００９７】  また、本実施例において、記録媒体１００はデータ処理装置２００が任意のタイミングで更新通知部１４０の値を読み出すためのコマンドを備えているものとする。【００９８】  次に、本発明の実施例３によるデータ処理装置について説明する。データ処理装置２００のブロック構成そのものは実施例１と同様である。ここでは構成に関する詳細な説明は割愛し、各部の動作について図面を用いて説明する。【００９９】  本実施例３におけるデータ処理装置２００に記録媒体１００を装着した場合のデータ処理装置２００の動作シーケンス例は、実施例２と同様であり、第９図のとおりとするため、詳細な説明は割愛する。【０１００】  第１３図は、データ処理装置２００が記録媒体１００にインデックスファイルを作成する動作シーケンスを示すフローチャートである。ステップＳ１３０１で、データ処理部２３０はデータの検索情報格納領域１３２の情報を利用して記録媒体１００に格納されているコンテンツデータを検索する。そして、コンテンツデータの情報を読み出すことで情報を収集し、メモリ上にインデックスファイルを作成する。メモリ上のインデックスファイルにおいて、更新情報フィールドは無効を意味する値として０を格納する。ステップＳ１３０２では、データ処理部２３０は入出力処理部２２０を経由して、ステップＳ１３０１で作成したメモリ上のインデックスファイルを記録媒体１００の記録領域１３０に書き込む。ステップＳ１３０３で、データ処理部２３０はスロット２１０に装着された記録媒体１００に対して、入出力処理部２２０を経由して更新通知部１４０の更新情報の値をインクリメントするためのコマンドを発行する。【０１０１】  ステップＳ１３０４で、データ処理部２３０はスロット２１０に装着された記録媒体１００の更新通知部１４０の更新情報を、入出力処理部２２０を経由して読み出し、メ��リ上に一時記憶させる。ステップＳ１３０５では、ステップＳ１３０４で読み出した更新通知部１４０の更新情報を、記録媒体１００に作成されているインデックスファイル３００の更新情報フィールドに上書きする。すなわち、記録媒体１００の記録領域１３０に更新情報を書き込む。【０１０２】  なお、第１３図の動作シーケンス例において、更新情報フィールドを最後に書き込んでいるのは、以下の理由による。【０１０３】  インデックスファイル３００を記録領域１３０に書き込んでいる最中に、記録媒体１００がスロット２１０から抜去されたり、電源の遮断が発生した場合には、不正なインデックスファイル３００が作成されることになる。不正か否かの判断は第９図の動作シーケンス例に示すように、更新情報フィールドの値を利用している。従って、インデックスファイル３００の更新情報フィールドの更新を最後に行うことにより、不正なインデックスファイル３００の判別が可能となる。【０１０４】  本実施例３におけるデータ処理装置２００の電源起動時の動作シーケンス例は、実施例２と同様であり、第１１図のとおりとするため、詳細な説明は割愛する。【０１０５】  以上のように、本実施例の記録媒体１００に格納されているインデックスファイル３００は、作成時における記録媒体１００の更新通知部１４０の更新情報を含んでいるため、データ処理装置２００ではインデックスファイル３００が作成された後に他のデータ処理装置などによって記録媒体１００の記録領域１３０が更新されたか否かを簡単に判別することができる。【０１０６】  なぜならば、他のデータ処理装置で書き込みを行う場合、必ず初期化処理が発生しているために、更新通知部１４０の更新情報の値がインクリメントされる。この結果、インデックスファイル３００の情報更新フィールドの値と更新通知部１４０の値とが異なる。そのため、読み書き可能な記録媒体１００において、インデックスファイル３００が作成された後にコンテンツデータに変更が加えられていないことを、各々のコンテンツデータを確認することなしに簡単に判断できる。【０１０７】  これにより、インデックスファイル３００に変更が加えられていない場合には、インデックスファイル３００を利用して記録媒体１００に格納されたコンテンツファイルの一覧を短時間でユーザに通知することが可能となる。【０１０８】  なお、本発明を上記の実施例に基づいて説明してきたが、本発明は上記の実施例に限定されないのはもちろんである。本発明の趣旨を逸脱しない範囲で変更することができる。以下に説明する（３−１）〜（３−８）の場合も、本発明の概念に含まれる。【０１０９】  （３−１）本実施例では、データ処理装置２００に記録媒体１００を装着した場合の動作シーケンスにおいて、インデックスファイル３００を使用するか否かを判断する際に、更新通知部１４０の更新情報のみを使用しているが、これに加えて媒体固有ＩＤ１５０の値を使用してもよい。【０１１０】  すなわち、インデックスファイル３００の媒体固有ＩＤフィールドの値と、記録媒体１００の媒体固有ＩＤ１５０の値が一致するか否かの判定を行い、一致しない場合にはインデックスファイル３００を使用しないとしてもよい。【０１１１��  これにより、他の記録媒体用に作成されたインデックスファイル３００が記録媒体１００にコピーされ、たまたま更新通知部１４０の値と一致した場合の誤動作を回避することができる。【０１１２】  （３−２）本実施例で記述したインデックスファイル３００に備えられているフィールドは一例にすぎない。本発明において必須であるのは、更新通知部１４０の更新情報を格納する更新情報フィールドであり、それ以外のフィールドは追加や削除されていても本発明による効果は有効である。【０１１３】  （３−３）本実施例では、記録媒体１００に対するデータの読み書きを行う際に、実施例１で記述したデータの読み書きの手順を利用していないが、この手順を併用してもよい。これによりデータの読み書きにおけるエラー検出をより厳重に行うことが可能となる。【０１１４】  （３−４）本実施例では、インデックスファイル３００を新規作成する場合の動作シーケンス例を記述した。しかし、既にインデックスファイル３００が存在し、記録領域１３０への更新内容をデータ処理部２３０が把握している場合には、全てを作り直す必要はない。従って、ステップＳ１００１の処理がより簡略化できる可能性があるが、それ以降の処理は同じである。【０１１５】  （３−５）本実施例では、ステップＳ１３０１の処理において無効を意味する値を０としたが、これに限定されるものではない。無効であることを意味する値であれば何でも良い。【０１１６】  （３−６）コンテンツファイルやインデックスファイルの一部もしくは全体が暗号化されていても、本発明は有効である。【０１１７】  （３−７）本実施例では、データ格納領域１３１のファイル内に更新情報フィールドを設け、更新通知部１４０の更新情報を格納したが、検索情報格納領域１３２に更新通知部１４０の値を格納するフィールドを備えても良い。すなわち、検索情報格納領域１３２は、データ格納領域の各データの記録アドレスなどに加え、各データを記録媒体１００に記録した際の更新通知部１４０の更新情報を格納してもよい。【０１１８】  （３−８）本実施例では、データ処理装置２００はインデックスファイル３００の内容を保証するために更新通知部１４０の更新情報を使用した。しかし、単に他のデータ処理装置が記録媒体１００の記録領域１３０を更新したか否かを判別するために、更新通知部１４０の値を使用してもよい。【０１１９】  例えば、実施例１に示したようなキャッシュ情報の有効性を判別するために、更新通知部１４０の更新情報を使用してもよい。書き込みが発生した場合には必ずキャッシュ情報を必ずクリアし、更新通知部１４０の値をインクリメントするためのコマンドを発行するものとすれば、実施例１と同様の効果が得られる。
【産業上の利用可能性】
【０１２０】  本発明の記録媒体、データ処理装置、及びデータ処理方法は、記録媒体への書き込みの直前に更新される更新通知部を設けているので、キャッシュ情報の有効性の確認、及びインデックスファイルの有効性の確認が必要な用途にも適用できる。
【図１】
0004731325.tif 000002
【図２】
0004731325.tif 000003
【図３】
0004731325.tif 000004
【図４】
0004731325.tif 000005
【図５】
0004731325.tif 000006
【図６】
0004731325.tif 000007
【図７】
0004731325.tif 000008
【図８】
0004731325.tif 000009
【図９】
0004731325.tif 000010
【図１０】
0004731325.tif 000011
【図１１】
0004731325.tif 000012
【図１２】
0004731325.tif 000013
【図１３】
0004731325.tif 000014