(57)【要約】【課題】限られた容量のメモリしか備えていないバックアップ処理装置で、大容量データを迅速にバックアップする。【解決手段】バックアップ処理装置は、バックアップ対象データの論理的なディレクトリ構造を示すディレクトリ情報と各ディレクトリ内のファイルに関するファイル管理情報とを読み出し、メモリに記憶する（Ｓ１４、Ｓ１５）。次に、メモリを参照して、ＣＤ−Ｒの書込開始セクタを定め、メモリに記憶する（Ｓ１６）。その後、メモリを参照して、ＣＤ−Ｒ上のディレクトリ情報の記録位置にディレクトリレコードをそれぞれ書き込むとともに、ＣＤ−Ｒ上のファイル本体の記録位置に書き込むために、メモリカードからファイル本体情報を読み出して、それぞれの記録位置へ書き込みを行う（Ｓ１８）。【選択図】図７
2007293804.tif 000002
【特許請求の範囲】
【請求項１】
第１の記憶媒体に記憶されているバックアップ対象データを第２の記憶媒体へバックアップするためのバックアップ処理装置であって、
前記バックアップ対象データの論理的なディレクトリ構造を示すディレクトリ情報と各ディレクトリ内のファイルに関するファイル管理情報とを読み出す手段と、
前記読み出されたディレクトリ情報及びファイル管理情報を記憶するメモリと、
前記メモリに記憶されているディレクトリ情報及びファイル管理情報を参照して、前記第２の記録媒体における前記ディレクトリ情報及びファイル本体の記録位置を定め、前記メモリに記憶する記録位置決定手段と、
前記メモリを参照して、前記第２の記録媒体上のディレクトリ情報の記録位置に、各ディレクトリ情報をそれぞれ書き込むとともに、前記第２の記録媒体上のファイル本体の記録位置に書き込むために第１の記録媒体からファイル本体情報を読み出して、それぞれの記録位置へ書き込む手段と、を備えるバックアップ処理装置。
【請求項２】
ディレクトリ情報には、少なくとも、ディレクトリ名、親ディレクトリ名、ディレクトリ内のファイル名が含まれ、
ファイル管理情報には、少なくとも、ファイル名及びファイルサイズが含まれる一方で、ファイル本体の情報を含まないことを特徴とする請求項１記載のバックアップ管理装置。
【請求項３】
前記第１の記憶媒体は、ＦＡＴファイルシステムに従う記憶媒体であり、
前記第２の記憶媒体は、ＣＤ−ＲＯＭファイルシステムに従う記憶媒体であり、
前記記録位置決定手段は、前記ディレクトリ情報を記憶するためのディレクトリレコードの書込開始セクタ及び前記ファイル本体の書込開始セクタを決定することを特徴とする請求項１記載のバックアップ管理装置。
【請求項４】
バックアップ対象データの論理的なディレクトリ構造を示すディレクトリ情報と各ディレクトリ内のファイルに関するファイル管理情報とを、第１の記憶媒体から読み出すステップと、
前記読み出されたディレクトリ情報及びファイル管理情報をメモリに記憶するステップと、
前記メモリに記憶されているディレクトリ情報及びファイル管理情報を参照して、前記第２の記録媒体における前記ディレクトリ情報及びファイル本体の記録位置を定めて、前記メモリに記憶するステップと、
前記メモリを参照して、前記第２の記録媒体上のディレクトリ情報の記録位置に、各ディレクトリ情報をそれぞれ書き込むとともに、前記第２の記録媒体上のファイル本体の記録位置に書き込むために前記第１の記録媒体からファイル本体情報を読み出して、それぞれの記録位置へ書き込むステップと、を有するバックアップ方法。
【請求項５】
コンピュータに実行されると、
バックアップ対象データの論理的なディレクトリ構造を示すディレクトリ情報と各ディレクトリ内のファイルに関するファイル管理情報とを、第１の記憶媒体から読み出すステップと、
前記読み出されたディレクトリ情報及びファイル管理情報をメモリに記憶するステップと、
前記メモリに記憶されているディレクトリ情報及びファイル管理情報を参照して、前記第２の記録媒体における前記ディレクトリ情報及びファイル本体の記録位置を定めて、前記メモリに記憶するステップと、
前記メモリを参照して、前記第２の記録媒体上のディレクトリ情報の記録位置に、各ディレクトリ情報をそれぞれ書き込むとともに、前記第２の記録媒体上のファイル本体の記録位置に書き込むために前記第１の記録媒体からファイル本体情報を読み出して、それぞれの記録位置へ書き込むステップと、を行うバックアップのためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ある記録媒体に格納されているデータを他の記録媒体にバックアップするための技術に関し、特に限られたメモリしか備えていないバックアップ処理装置において、大容量データを迅速にバックアップするための技術に関する。
【背景技術】
【０００２】
電子式スチルカメラ（いわゆるデジタルカメラ）やデジタルビデオカメラなどで撮影した画像データは、まずカメラ内に格納されている半導体メモリなどに格納される。そして、ユーザは、この半導体メモリに格納されている画像データをＣＤ−ＲあるいはＤＶＤなどの他の記録媒体にバックアップした後、画像データを消去して、この半導体メモリを繰り返し利用する。
【０００３】
つまり、電子式スチルカメラやデジタルビデオカメラの普及により、一般ユーザが大容量データをバックアップする機会が急速に増加している。
【０００４】
ここで、オリジナルのデータが記憶されている記憶媒体と、バックアップ先の記憶媒体のファイルシステムが異なるときは、バックアップ処理装置がその変換を行わなければならない。ここで、ＰＣなどを用いてバックアップするときは、ＰＣ内にバックアップ先の記憶媒体のデータイメージをＰＣ上に生成した後、まとめてデータの書き込みを行っている（例えば特許文献１）。
【特許文献１】特開平１１−１８５３７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、バックアップ処理装置内にデータイメージを生成するには、バックアップ先の記憶媒体の容量に匹敵するメモリ容量を必要とする。
【０００６】
そこで、本発明の目的は、限られた容量のメモリしか備えていないバックアップ処理装置で、大容量データを迅速にバックアップするための技術を提供する。
【課題を解決するための手段】
【０００７】
本発明の一実施態様に従う、第１の記憶媒体に記憶されているバックアップ対象データを第２の記憶媒体へバックアップするためのバックアップ処理装置は、前記バックアップ対象データの論理的なディレクトリ構造を示すディレクトリ情報と各ディレクトリ内のファイルに関するファイル管理情報とを読み出す手段と、前記読み出されたディレクトリ情報及びファイル管理情報を記憶するメモリと、前記メモリに記憶されているディレクトリ情報及びファイル管理情報を参照して、前記第２の記録媒体における前記ディレクトリ情報及びファイル本体の記録位置を定め、前記メモリに記憶する記録位置決定手段と、前記メモリを参照して、前記第２の記録媒体上のディレクトリ情報の記録位置に、各ディレクトリ情報をそれぞれ書き込むとともに、前記第２の記録媒体上のファイル本体の記録位置に書き込むために第１の記録媒体からファイル本体情報を読み出して、それぞれの記録位置へ書き込む手段と、を備える。
【０００８】
これにより、バックアップ処理装置内に膨大なデータイメージを生成することなく、大容量データを迅速にバックアップすることができる。
【０００９】
好適な実施形態では、ディレクトリ情報には、少なくとも、ディレクトリ名、親ディレクトリ名、ディレクトリ内のファイル名が含まれ、ファイル管理情報には、少なくとも、ファイル名及びファイルサイズが含まれる一方で、ファイル本体の情報を含まないようにすることができる。
【００１０】
これにより、バックアップ処理装置は大容量メモリを必要としない。
【００１１】
好適な実施形態では、前記第１の記憶媒体は、ＦＡＴファイルシステムに従う記憶媒体であり、前記第２の記憶媒体は、ＣＤ−ＲＯＭファイルシステムに従う記憶媒体であってもよい。そして、この場合、前記記録位置決定手段は、前記ディレクトリ情報を記憶するためのディレクトリレコードの書込開始セクタ及び前記ファイル本体の書込開始セクタを決定することができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の一実施形態に係るバックアップ処理装置について、図面を参照して説明する。
【００１３】
図１は、本実施形態に係るバックアップ処理装置１の機能構成図である。
【００１４】
バックアップ処理装置１は、第１の記憶媒体に格納されているバックアップ対象データを、第２の記憶媒体へコピーしてデータバックアップを行う。本実施形態では、メモリカード２に格納されているデータをＣＤ−Ｒにバックアップする場合を例にあげて説明するが、第１及び第２の記憶媒体はこれら以外であってもよい。
【００１５】
また、バックアップ処理装置１は、例えば汎用的なコンピュータシステムにより構成され、以下に説明するバックアップ処理装置１内の個々の構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
【００１６】
さらに、バックアップ処理装置１は、この装置単体で実現することもできるし、プリンタ、デジタル複合機、ビューワなど他の装置に組み込み、その装置の一部の機能として実現することもできるし、電子式スチルカメラ、デジタルビデオカメラなどの一部機能を利用して、電子式スチルカメラ、デジタルビデオカメラと組み合わせて実現することもできる。
【００１７】
図１に示すバックアップ処理装置１は、バックアップ管理部１１と、メモリカードリーダ／ライタ１２と、ＣＤリーダ／ライタ１３と、メモリ１５とを備える。
【００１８】
メモリカードリーダ／ライタ１２は、メモリカード２に格納されているデータを読み出し、メモリカード２にデータを書き込む。
【００１９】
ＣＤリーダ／ライタ１３は、ＣＤ−Ｒ３に格納されているデータを読み出し、ＣＤ−Ｒ３にデータを書き込む。
【００２０】
バックアップ管理部１１は、メモリカード２に格納されているバックアップ対象データを、ＣＤ−Ｒ３にバックアップするための処理を行う。例えば、バックアップ管理部１１は、メモリカード２からバックアップ対象データのディレクトリ構造や各ディレクトリに含まれるファイルを管理するための情報を読み出してメモリ１５に記憶する。そして、バックアップ管理部１１は、メモリ１５に記憶された情報を用いて、バックアップ対象データをＣＤ−Ｒ３に書き込む際の書き込み位置を決定し、メモリカード２からＣＤ−Ｒ３へのデータバックアップを行う。
【００２１】
特に、本実施形態では、メモリ１５の容量があまり多くない場合であっても、メモリカード２へのアクセス回数を抑制し、効率的にバックアップを行うものである。
【００２２】
図２は、メモリカード２に記憶されたバックアップ対象データをＣＤ−Ｒ３へバックアップする場合の一例を示す。
【００２３】
同図に示すように、メモリカード２にバックアップ対象データ２０が格納されている。メモリカード２は、ＦＡＴファイルシステムに従う記録媒体である。ここで、バックアップ対象データ２０は、メモリカード２に格納されている全データであってもよいし、あるいは選択された一部のデータであってもよい。また、ＭＰＶ（Music Photo/Video）用のファイルが含まれていてもよい。
【００２４】
ＣＤ−Ｒ３には、１セッション分の既存データ３０が格納されている。ＣＤ−Ｒ３は、ＣＤ−ＲＯＭファイルシステムに従う記憶媒体である。そして、以下の実施形態では、既存データ３０を有するＣＤ−Ｒ３に、さらにバックアップ対象データ２０を追記する場合を例にして説明する。
【００２５】
図３は、バックアップを行う前のＣＤ−Ｒ３のデータ構造であって、既存データ３０が格納されている場合のＣＤ−Ｒ３のデータ構造を示す。
【００２６】
ＣＤ−Ｒ３は、ＣＤ−ＲＯＭファイルシステムに従った構造になっている。従って、既存データ３０の先頭及び末尾に、Ｌｅａｄ−Ｉｎ３００及びＬｅａｄ−Ｏｕｔ３０２が設けられている。Ｌｅａｄ−Ｉｎ３００の後ろに、ＣＤ−ＲＯＭファイルシステムに従う管理領域３０１が設けられている。また、ＣＤ−Ｒ３は、２０４８バイトのセクタ単位でデータを記録し、それぞれのデータが記録されている位置はセクタ番号で特定される。
【００２７】
なお、本実施形態ではＩＳＯ９６６０レベル１の規格に従うＣＤ−Ｒを例にして説明するが、本発明はこれ以外の規格（例えば、ＩＳＯ９６６０レベル２，Ｊｏｌｉｅｔ、ＵＤＦ（Universal Disk Format）など）にも適用することが可能である。
【００２８】
既存データ３０は、図３に示すように、管理領域３０１（セクタ１〜３）に引き続き、ルートディレクトリレコード３１０（セクタ４）と、サブディレクトリである「２００５」ディレクトリのディレクトリレコード３２０（セクタ５）とが設けられている。
【００２９】
「２００５」ディレクトリレコード３２０に続き、「２００５」ディレクトリに格納されているファイルのデータ本体３３０（セクタ６〜８）が格納されている。
【００３０】
さらに、ＣＤ−ＲＯＭファイルシステムの場合、ＣＤ−Ｒ３に格納されている全データのディレクトリ構造を示すパステーブル３４０（セクタ９）が設けられる。
【００３１】
これに対して、図４は、既存データ３０が格納されているＣＤ−Ｒ３にバックアップ対象データ２０を追記してバックアップした後のＣＤ−Ｒ３のデータ構造を示す。
【００３２】
すなわち、図４（ａ）は、図３に示す既存データ３０のデータ構造であり、図４（ｂ）が、新たなセッションでセクタ１１以降に追加された、バックアップ対象データ２０のデータ構造を示す。
【００３３】
バックアップ対象データ２０は、図４（ｂ）に示すように、ルートディレクトリレコード３１１（セクタ１５）、「２００６」ディレクトリレコード３２１（セクタ１６）、ファイルのデータ本体３３１（セクタ１７〜２６）及びパステーブル３４０（セクタ２７）を有する。
【００３４】
ここで、図５及び図６は、ルートディレクトリレコード３１０，３１１及びサブディレクトリを代表して「２００５」ディレクトリレコード３２０のデータ構造をそれぞれ示す。
【００３５】
これらからわかるように、各ディレクトリレコード３１０，３１１，３２０には、直下のディレクトリ名及びファイル名が含まれている。従って、ディレクトリ構造に応じて、ディレクトリレコードのサイズが異なる。
【００３６】
本実施形態に係るバックアップ処理装置１が、図４に示すデータ構造にバックアップするための処理ついて説明する。
【００３７】
図７及び図８は、バックアップ対象データ２０をＣＤ−Ｒ３にバックアップするために、バックアップ管理部１１が行う１セッションに係る処理を示すフローチャートである。
【００３８】
図７を参照すると、まず、バックアップ管理部１１はＣＤ−Ｒ３に既存データ３０があるか否かを判定する（Ｓ１１）。既存データ３０がないときは（Ｓ１１：Ｎｏ）、ステップＳ１２，Ｓ１３をスキップする。
【００３９】
既存データ３０があるときは（Ｓ１１：Ｙｅｓ）、バックアップ管理部１１は、ＣＤ−Ｒ３から既存データ３０のパステーブル３４０及びディレクトリレコード３１０，３２０を読み出して、ディレクトリ構造に関するディレクトリ情報及びファイル管理情報をメモリ１５に格納する（Ｓ１２，Ｓ１３）。
【００４０】
ディレクトリ情報には、例えば、ディレクトリの開始セクタ位置、ディレクトリ名、日付情報、属性情報、直下にあるファイル名、及び各ディレクトリの親ディレクトリ情報などが含まれる。
【００４１】
ファイル管理情報には、ファイルの開始セクタ位置、ファイル名、サイズ、日付情報、及び属性情報などが含まれる。
【００４２】
次に、バックアップ管理部１１は、バックアップ対象データ２０のディレクトリ情報をメモリカード２から読み出して、メモリ１５に記憶する（Ｓ１４）。
【００４３】
ディレクトリ情報には、例えば、バックアップ対象データ２０に含まれるディレクトリエントリが記憶されている位置（クラスタ番号及びオフセット）と、それぞれのディレクトリの親ディレクトリ情報などを含む。さらに、メモリ１５に余裕があれば、ディレクトリ情報としてディレクトリエントリ全体を取得してもよい。
【００４４】
バックアップ管理部１１は、さらに、バックアップ対象データ２０のファイル管理情報をメモリカード２から読み出して、メモリ１５に記憶する（Ｓ１５）。
【００４５】
ファイル管理情報は、例えば、ディレクトリエントリに含まれている情報である。なお、メモリ１５の容量が十分でないときは、ステップＳ１５を省略してもよい。
【００４６】
バックアップ管理部１１は、メモリ１５に格納されているディレクトリ情報及びファイル管理情報に基づいて、バックアップ対象データに含まれる各ディレクトリ及びファイルをＣＤ−Ｒ３へ記録するときの記録位置を算出する（Ｓ１６）。この算出処理の詳細については後述する。
【００４７】
各ディレクトリ及びファイルの記録位置が定まると、バックアップ管理部１１は、このセッションのために必要な管理領域３０１を生成して、ＣＤ−Ｒ３へ書き込みを行う（Ｓ１７）。
【００４８】
バックアップ管理部１１は、さらに、バックアップ対象データに含まれるディレクトリのディレクトリレコードを生成して、それぞれを、ステップＳ１６で定められた記録位置へ書き込む。さらに、ファイル本体については、メモリカード２から読み出して、それぞれ、ステップＳ１６で定められた記憶位置へ書き込みを行う（Ｓ１８）。
【００４９】
最後に、バックアップ管理部１１は既存データ３０及びバックアップ対象データ２０を併せたパステーブルを生成して、ステップＳ１６で定められた記録位置へ書き込みを行って、バックアップのためのセッションを終了する（Ｓ１９）。
【００５０】
ここで、ステップＳ１６の記録位置の算出処理について、図８を参照しながら説明する。
【００５１】
バックアップ管理部１１は、まず、データの記録位置として書き込みを開始するセクタ番号を特定する。本実施形態では本セッションの書き込み開始セクタはセッション１１となる（図４参照）。この書き込み開始セクタを基準にして、以下の各セクタ番号を定める。
【００５２】
バックアップ管理部１１は、このセッションに係るルートディレクトリレコード３１１に必要なセクタ数と、ルート直下のファイル本体に必要なセクタ数を、ディレクトリ構造、ファイル名及びファイルサイズなどに基づいて算出する。そして、ルートディレクトリレコード３１１及びルートディレクトリ直下にあるファイルのファイル本体の書き込み開始セクタを算出する（Ｓ３１）。ここで算出された情報は、メモリ１５に格納される。
【００５３】
図９は、書込マップ５００の一例を示す。書込マップ５００は、それぞれの書込セクタ番号を示すマップであり、メモリ１５に格納される。
【００５４】
ここでは、同図に示すように、ルートディレクトリレコード３１１に必要なセクタ数が１、ルート直下にはファイルがないのでファイルに必要なセクタ数は０であり、書き込み開始セクタがセクタ１５と定まる。
【００５５】
つぎに、バックアップ対象データ２０中のサブディレクトリのディレクトリレコードに必要なセクタ数と、各サブディレクトリ直下のファイルのファイル本体に必要なセクタ数を算出する。そして、各サブディレクトリレコード及び各サブディレクトリ直下にあるファイルのファイル本体の書き込み開始セクタを算出する（Ｓ３２）。サブディレクトリが複数あるときは、ディレクトリの階層構造に従って、それぞれのサブディレクトリについて算出する。
【００５６】
ここでは、図９に示すように、「２００６」ディレクトリレコード３２１に必要なセクタ数が１、直下のファイルに必要なセクタ数が１０であり、書き込み開始セクタがセクタ１６と定まる。
【００５７】
次に、バックアップ管理部１１は、上述の処理により得られたディレクトリレコードの書込開始セクタと、既存データ３０のディレクトリレコードの開始セクタから、パステーブル３４１を生成する。そして、パステーブルの書込開始セクタを算出する（Ｓ３３）。
【００５８】
その後、管理領域３０１の主ボリュームディスクリプタなどの内容を決定し、管理領域３０１の書込開始セクタを算出する（Ｓ３４）。
【００５９】
これにより、このバックアップのためのセッションでＣＤ−Ｒ３に書き込むべきすべての情報の書込セクタが確定する。
【００６０】
ここで、ステップＳ３１〜Ｓ３４の処理を行うときに必要な情報は、既にメモリ１５に記憶されているので、バックアップ管理部１１は、あらためてメモリカード２ないしはＣＤ−Ｒ３にアクセスする必要がない。この結果、ステップＳ３１〜Ｓ３４の処理を迅速に行うことができる。
【００６１】
さらに、ステップＳ３１〜Ｓ３４で生成された書込マップ５００もメモリ１５に格納されているので、ステップＳ１７以降でＣＤ−Ｒ３への書込処理をするときも、ファイル本体情報以外は、メモリカード２から取得する必要がなく、この点でも処理の高速化を図ることができる。
【００６２】
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
【図面の簡単な説明】
【００６３】
【図１】本発明の一実施形態に係るバックアップ処理装置の機能構成図である。
【図２】本実施形態におけるバックアップ例を示す。
【図３】既存データが格納されている場合のＣＤ−Ｒのデータ構造を示す。
【図４】既存データが格納されているＣＤ−Ｒにバックアップ対象データを追記してバックアップした後のＣＤ−Ｒのデータ構造を示す。
【図５】ルートディレクトリレコードのデータ構造を示す。
【図６】「２００５」ディレクトリレコードのデータ構造を示す。
【図７】バックアップ管理部が行う１セッションに係る処理を示すフローチャートである。
【図８】記録位置の算出処理の詳細な処理を示すフローチャートである。
【図９】書込セクタ番号を示す書込マップの一例を示す。
【符号の説明】
【００６４】
１…バックアップ処理装置、２…メモリカード、３…ＣＤ−Ｒ、２０…バックアップ対象データ、３０…既存データ、３０１，３０２…管理領域、３１０，３１１…ルートディレクトリレコード、３２０…「２００５」ディレクトリレコード、３２１…「２００６」ディレクトリレコード、３３０、３３１…データ本体、３４０、３４１…パステーブル、５００…書込マップ。
【図１】
2007293804.tif 000003
【図２】
2007293804.tif 000004
【図３】
2007293804.tif 000005
【図４】
2007293804.tif 000006
【図５】
2007293804.tif 000007
【図６】
2007293804.tif 000008
【図７】
2007293804.tif 000009
【図８】
2007293804.tif 000010
【図９】
2007293804.tif 000011