(57)【要約】【課題】記憶領域全体のリストアを行なえるようにする。【解決手段】記憶装置２０における記憶領域２１のリストアを実行する際に、前記リストア実行前の記憶領域２１の使用状況に係る第１情報ＴＢ〜ＴＤとリストア実行後の記憶領域２１の使用状況に係る第２情報ＴＡとを取得して記憶領域２１とは異なる第１保存領域３０に保存し、第１保存領域３０に保存された第１情報および第２情報に基づいて、記憶領域２１のうち、前記リストア実行後に上書き消去を実行すべき消去対象領域を決定し、決定された消去対象領域に対する上書き消去を実行する。【選択図】図１
2014191397.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータによってアクセスされる記憶装置における記憶領域のリストアを実行する際に、前記リストア実行前の前記記憶領域の使用状況に係る第１情報と前記リストア実行後の前記記憶領域の使用状況に係る第２情報とを取得して前記記憶領域とは異なる第１保存領域に保存し、
前記第１保存領域に保存された前記第１情報および前記第２情報に基づいて、前記記憶領域のうち、前記リストア実行後に上書き消去を実行すべき消去対象領域を決定し、
決定された前記消去対象領域に対する上書き消去を実行する、
処理を、前記コンピュータに実行させる、データ消去プログラム。
【請求項２】
前記第１情報または前記第２情報の取得中に取得情報量が前記第１保存領域の容量に達した場合、前記第１保存領域における前記第１情報または前記第２情報を、前記記憶装置における第２保存領域に保存してから、後続の前記第１情報または前記第２情報を前記第１保存領域に保存し、
前記第１保存領域および前記第２保存領域に保存した前記第１情報および前記第２情報に基づいて、前記消去対象領域を決定する、
処理を、前記コンピュータに実行させる、請求項１記載のデータ消去プログラム。
【請求項３】
前記第１情報または前記第２情報の複数種類のデータ形式の中から、前記第１情報または前記第２情報のデータサイズが最も小さくなるデータ形式を選択し、選択されたデータ形式で前記第１情報と前記第２情報とを取得して前記第１保存領域に保存する、
処理を、前記コンピュータに実行させる、請求項１または請求項２に記載のデータ消去プログラム。
【請求項４】
前記複数種類のデータ形式として、少なくとも、前記記憶領域における各データブロックの前記使用状況を各ビットに対応させて管理する第１形式と、前記記憶領域における前記使用状況をデータ開始位置およびデータ長で管理する第２形式とが含まれる、請求項３記載のデータ消去プログラム。
【請求項５】
前記記憶領域にリストアすべきデータを前記消去対象領域に書き込むことによって前記消去対象領域に対する上書き消去を行なう、
処理を、前記コンピュータに実行させる、請求項１〜請求項４のいずれか一項に記載のデータ消去プログラム。
【請求項６】
前記第１情報として、前記記憶領域において前記リストア実行開始直前に使用域になっている第１領域の情報と、前記記憶領域において前回のリストア後のシステム稼働中にデータを書き込まれた第２領域の情報と、前記記憶領域において前記前回のリストア完了時に使用域であった第３領域の情報とが含まれ、
前記第２情報として、前記記憶領域において前記リストア実行後に未使用域となる第４領域の情報が含まれる、請求項１〜請求項５のいずれか一項に記載のデータ消去プログラム。
【請求項７】
前記第１領域，前記第２領域および前記第３領域の論理和結果と、前記第４領域との論理積結果を、前記消去対象領域として決定する、
処理を、前記コンピュータに実行させる、請求項６記載のデータ消去プログラム。
【請求項８】
前記リストア実行開始直前における前記記憶領域を参照して前記第１領域の情報を取得し、
前記前回のリストア後のシステム稼働中に前記記憶領域に対する前記コンピュータのアクセスを監視して前記第２領域の情報を取得し、
前記前回のリストア完了時における前記記憶領域を参照して前記第３領域の情報を取得し、
前記記憶領域に対しリストアされるバックアップデータを参照して前記第４領域の情報を取得する、
処理を、前記コンピュータに実行させる、請求項６または請求項７に記載のデータ消去プログラム。
【請求項９】
記憶領域を有するアクセス対象の記憶装置と、
前記記憶領域とは異なる第１保存領域と、
前記記憶領域のリストアを実行する際に、前記リストア実行前の前記記憶領域の使用状況に係る第１情報と前記リストア実行後の前記記憶領域の使用状況に係る第２情報とを取得して前記第１保存領域に保存する取得部と、
前記第１保存領域に保存された前記第１情報および前記第２情報に基づいて、前記記憶領域のうち、前記リストア実行後に上書き消去を実行すべき消去対象領域を決定する決定部と、
前記決定部によって決定された前記消去対象領域に対する上書き消去を実行する消去部と、を備えた、情報処理装置。
【請求項１０】
コンピュータによってアクセスされる記憶装置における記憶領域のリストアを実行する際に、前記リストア実行前の前記記憶領域の使用状況に係る第１情報と前記リストア実行後の前記記憶領域の使用状況に係る第２情報とを取得して前記記憶領域とは異なる第１保存領域に保存し、
前記第１保存領域に保存された前記第１情報および前記第２情報に基づいて、前記記憶領域のうち、前記リストア実行後に上書き消去を実行すべき消去対象領域を決定し、
決定された前記消去対象領域に対する上書き消去を実行する、データ消去方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ消去プログラム、情報処理装置、およびデータ消去方法に関する。
【背景技術】
【０００２】
コンピュータによってアクセスされる記憶装置においてファイルを削除した場合、当該ファイルに含まれるデータを保存していた領域は、ファイルシステム上で使用域として管理されなくなるだけで、実際には、記憶装置に当該ファイルに含まれるデータが残っている可能性がある。この領域のデータは、ファイル復旧ソフトウエアを使用することでファイルデータとして復元される可能性があり、当該データに重要な情報が含まれていると、情報漏えいが発生する虞がある。
【０００３】
そこで、情報漏えいが発生する虞のある領域に対し、上書き消去（例えばオール０またはオール１のデータの書込み）処理を行なうことで、当該領域からファイルデータが復元されないようにする技術が用いられている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−９９５１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、記憶領域のリストアを実行する際に上述した上書き消去処理を実行する場合、リストア前の情報であって、上書き消去すべきデータブロックを判断する情報が、リストア対象の記憶領域に保存されていると、記憶領域全体のリストアを行なうことができない。
【０００６】
一つの側面で、本発明は、記憶領域全体のリストアを行なえるようにすることを目的とする。
なお、前記目的に限らず、後述する発明を実施するための最良の形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本件の他の目的の一つとして位置付けることができる。
【課題を解決するための手段】
【０００７】
本件のデータ消去プログラムは、コンピュータによってアクセスされる記憶装置における記憶領域のリストアを実行する際に、前記リストア実行前の前記記憶領域の使用状況に係る第１情報と前記リストア実行後の前記記憶領域の使用状況に係る第２情報とを取得して前記記憶領域とは異なる第１保存領域に保存し、前記第１保存領域に保存された前記第１情報および前記第２情報に基づいて、前記記憶領域のうち、前記リストア実行後に上書き消去を実行すべき消去対象領域を決定し、決定された前記消去対象領域に対する上書き消去を実行する、処理を、前記コンピュータに実行させる。
【発明の効果】
【０００８】
一実施形態によれば、記憶領域全体のリストアを行なうことができる。
【図面の簡単な説明】
【０００９】
【図１】本実施形態の情報処理装置のハードウエア構成および機能構成を示すブロック図である。
【図２】本実施形態の情報処理装置における要部構成を示すブロック図である。
【図３】既存技術による消去対象領域の特定手法を説明すべく、既存技術で用いられるテーブルの状態を示す図である。
【図４】既存技術による消去対象領域の特定手法を説明すべく、既存技術で用いられるテーブルの状態を示す図である。
【図５】既存技術による消去対象領域の特定手法を説明すべく、既存技術で用いられるテーブルの状態を示す図である。
【図６】既存技術による消去対象領域の特定手法を説明すべく、既存技術で用いられるテーブルの状態を示す図である。
【図７】既存技術による消去対象領域の特定手法を説明すべく、既存技術で用いられるテーブルの状態を示す図である。
【図８】既存技術による消去対象領域の特定手法を説明すべく、既存技術で用いられるテーブルの状態を示す図である。
【図９】既存技術による消去対象領域の特定手法を説明すべく、既存技術で用いられるテーブルの状態を示す図である。
【図１０】本実施形態の情報処理装置による消去対象領域の特定手法を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図１１】本実施形態の情報処理装置による消去対象領域の特定手法を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図１２】本実施形態の情報処理装置による消去対象領域の特定手法を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図１３】本実施形態の情報処理装置による消去対象領域の特定手法を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図１４】本実施形態の情報処理装置による消去対象領域の特定手法を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図１５】本実施形態の情報処理装置におけるリストア制御部の機能を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図１６】本実施形態の情報処理装置におけるリストア制御部の機能を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図１７】本実施形態の情報処理装置におけるリストア制御部の機能を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図１８】本実施形態の情報処理装置におけるリストア制御部の機能を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図１９】本実施形態の情報処理装置におけるリストア制御部の機能を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図２０】本実施形態の情報処理装置におけるリストア制御部の機能を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図２１】本実施形態の情報処理装置におけるリストア制御部の機能を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図２２】本実施形態の情報処理装置におけるリストア制御部の機能を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図２３】本実施形態の情報処理装置におけるリストア制御部の機能を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図２４】本実施形態の情報処理装置におけるリストア制御部の機能を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【図２５】本実施形態の情報処理装置によるリストア手順を説明するフローチャートである。
【図２６】本実施形態の情報処理装置によるリストア手順を説明するフローチャートである。
【図２７】本実施形態の情報処理装置によるデータ消去手順を説明するフローチャートである。
【図２８】本実施形態の情報処理装置によるデータ消去手順を説明するフローチャートである。
【図２９】本実施形態の情報処理装置によるデータ消去手順を説明するフローチャートである。
【図３０】本実施形態の情報処理装置によるデータ消去手順を説明するフローチャートである。
【図３１】本実施形態の情報処理装置によるデータ消去手順を説明するフローチャートである。
【図３２】本実施形態の情報処理装置による書込み管理ファイルの作成手順を説明するフローチャートである。
【図３３】メモリに管理テーブルを格納できる状況を説明する図である。
【図３４】メモリに管理テーブルを格納できない状況を説明する図である。
【図３５】本実施形態のリストア開始時における管理テーブルの取得保存手順を説明するフローチャートである。
【図３６】図３５に示す手順によって第２保存領域に保存された管理テーブルを用いる際の、当該管理テーブルの読出し手順を説明するフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図面を参照して実施の形態を説明する。
〔１〕本実施形態の情報処理装置の構成
図１は、本実施形態の情報処理装置１のハードウエア構成および機能構成を示すブロック図、図２は、本実施形態の情報処理装置１における要部構成を示すブロック図である。
【００１１】
図１および図２に示すように、情報処理装置１は、例えばパーソナルコンピュータであり、少なくとも、ＣＰＵ（Central Processing Unit）１０，記憶装置２０，メモリ３０およびバス４０を有している。ＣＰＵ１０，記憶装置２０およびメモリ３０は、バス４０を介して相互に通信可能に接続されている。
【００１２】
記憶装置２０は、例えばＨＤＤ（Hard Disk Drive），ＳＳＤ（Solid State Drive），ＵＳＢ（Universal Serial Bus）メモリである。なお、本実施形態では、記憶装置２０はＨＤＤであるものとし、以下では、記憶装置２０をＨＤＤ２０もしくはディスク２０と称する場合がある。
【００１３】
記憶装置２０は、リストア対象の区画（記憶領域）２１を有している。ここで、リストア対象の区画２１は、一つの記憶装置（ＨＤＤ，ＳＳＤ，ＵＳＢメモリ等）における全ての記憶領域であってもよいし、一つの記憶装置内における部分的な記憶領域（例えばパーティションで区切られた領域）であってもよい。本実施形態において、区画２１は、パーティションで区切られた部分的な領域とする。また、本実施形態では、リストア対象の区画２１に、後述する書込み監視ドライバ１７により区画２１について取得される書込み管理ファイル（管理テーブル，管理情報）ＴＣと、後述する取得部１３１により区画２１について取得される使用域管理ファイル（管理テーブル，管理情報）ＴＤとが保存される。さらに、本実施形態の記憶装置２０では、区画２１とは異なる区画において、後述する第２保存領域２２が設けられるとともに、後述するバックアップデータ２３が保存される。
【００１４】
メモリ３０は、例えばＲＡＭ（Random Access Memory）であり、記憶装置２０（区画２１）とは異なり、且つ記憶装置２０（区画２１）の容量よりも小容量の第１保存領域である。メモリ３０は、リストア開始時に、後述する取得部１３１によって取得される管理テーブル（管理情報）ＴＡおよびＴＢを保存する。また、メモリ３０は、リストア開始時に、後述する取得部１３１によってリストア対象の区画２１から複製される管理テーブルＴＣおよびＴＤを保存する。
【００１５】
ＣＰＵ（処理部，コンピュータ）１０は、記憶装置２０に保存されるプログラムを実行することにより、メイン制御部１１，バックアップ制御部１２，リストア制御部１３，データ消去制御部１４，ファイルシステム１５，ディスクドライバ１６および書込み監視ドライバ１７としての機能を果たす。
【００１６】
メイン制御部１１は、バックアップ制御部１２，リストア制御部１３およびデータ消去制御部１４の各種機能を管理・制御する。
バックアップ制御部１２は、区画２１のリストアを行なう際に必要となるバックアップデータ２３を取得し記憶装置２０に保存する。
【００１７】
リストア制御部１３は、図２５および図２６に示すフローチャートに従って後述するように、記憶装置２０の区画２１に対するリストアを制御するもので、取得部１３１としての機能を果たす。
【００１８】
取得部１３１は、区画２１のリストアを実行する際に、リストア実行前の区画２１の使用状況に係る第１情報と、リストア実行後の区画２１の使用状況に係る第２情報とを取得してメモリ３０に保存する。第１情報としては、後述する３種類の管理テーブルＴＢ，ＴＣおよびＴＤが含まれ、第２情報としては、後述する管理テーブルＴＡが含まれる。
【００１９】
なお、管理テーブルＴＡ〜ＴＤのデータ形式としては、管理対象の区画２１における各データブロック（セクタ）の使用状況を各ビットに対応させて管理するビットマップ形式（第１形式）を用いてもよいし、区画２１における使用状況をデータ開始位置およびデータ長で管理するエクステント形式（第２形式）を用いてもよい。なお、図３〜図２４，図３３，図３４では、管理テーブルＴＡ〜ＴＤのデータ形式がビットマップ形式（第１形式）である場合、つまり管理テーブルＴＡ〜ＴＤがビットマップテーブル（ビットマップファイル）である場合について説明する。
【００２０】
管理テーブルＴＢは、リストア対象の区画２１においてリストア実行開始直前に使用域になっている第１領域Ｂの情報を含むものである。つまり、第１領域Ｂは、リストア前の区画２１においてファイルシステム１５上で使用域として管理されていた領域である。管理テーブルＴＢは、リストア制御部１３（取得部１３１）がリストア実行開始直前における区画２１を参照することによって取得され、メモリ３０に保存される。管理テーブルＴＢについては、図１０を参照しながら後述する。
【００２１】
管理テーブルＴＣは、リストア対象の区画２１において前回のリストア後のシステム稼働中にデータを書き込まれた第２領域Ｃの情報を含むものである。つまり、第２領域Ｃは、リストア前の区画２１でファイルデータの書込みを行なった領域である。管理テーブルＴＣは、前回のリストア後のシステム稼働中に区画２１に対するＣＰＵ１０（ファイルシステム１５）のアクセスを監視することによって、記憶装置２０の区画２１に書込み管理ファイルＴＣとして作成取得される。区画２１に作成された書込み管理ファイルＴＣは、リストア開始時に、取得部１３１によって区画２１からメモリ３０へ複製保存される。管理テーブルＴＣについては、図１１を参照しながら後述する。
【００２２】
ここで、図２に示すように、本実施形態のＣＰＵ１０において、ＯＳ（Operating System）に含まれファイル制御を行なうファイルシステム１５と、区画２１に対するアクセスを行なうディスクドライバ１６との間には、書込み監視ドライバ１７が配置されている。書込み監視ドライバ１７は、ファイルシステム１５がディスクドライバ１６経由でディスク２０の区画２１への書込みを要求するときの情報を取得することで、ファイルシステム１５が書込みを行なった第２領域Ｃを特定し、書込み管理ファイル（管理テーブル）ＴＣを作成する。
【００２３】
管理テーブルＴＤは、リストア対象の区画２１において前回のリストア完了時（リストア後のデータ消去完了時）に使用域であった第３領域Ｄの情報を含むものである。つまり、第３領域Ｄは、前回のリストア完了時にファイルシステム１５上で使用域として管理されていた領域である。管理テーブルＴＤは、リストア制御部１３（取得部１３１）が前回のリストア完了時における区画２１を参照することによって取得され、記憶装置２０の区画２１に使用域管理ファイルＴＤとして作成取得される。区画２１に作成された使用域管理ファイルＴＤは、リストア開始時に、取得部１３１によって区画２１からメモリ３０へ複製保存される。管理テーブルＴＤについては、図１２を参照しながら後述する。
【００２４】
管理テーブルＴＡは、リストア対象の区画２１においてリストア実行後に未使用域となる第４領域Ａの情報を含むものである。つまり、第４領域Ａは、リストア後の区画２１においてファイルシステム１５上で未使用域として管理される領域である。管理テーブルＴＡは、リストア制御部１３（取得部１３１）が区画２１に対しリストアされるバックアップデータ２３を参照することによって取得され、メモリ３０に保存される。管理テーブルＴＡについては、図１３を参照しながら後述する。
【００２５】
決定部１４１は、メモリ３０に保存された管理テーブルＴＡ〜ＴＤ（第１情報および第２情報）に基づいて、区画域２１のうち、リストア実行後に上書き消去を実行すべき消去対象領域を決定（特定）する。このとき、決定部１４１は、第１領域Ｂ，第２領域Ｃおよび第３領域Ｄの論理和結果と、第４領域Ａとの論理積結果を、消去対象領域として特定し決定する。このような消去対象領域の特定手法については、図３〜図１４を参照しながら後述する。
【００２６】
消去部１４２は、決定部１４１によって決定された消去対象領域に対する上書き消去を実行する。
【００２７】
なお、リストア制御部１３は、区画２１にリストアすべきデータを消去対象領域に書き込むことによって消去対象領域に対する上書き消去を行なう機能も有している。この機能については、図１５〜図２６を参照しながら後述する。
【００２８】
また、取得部１３１は、管理テーブルＴＡ〜ＴＤの取得中に取得情報量がメモリ３０の容量に達した場合、メモリ３０における情報を、記憶装置２０における第２保存領域２２に保存してから、後続の情報をメモリ３０に保存するように構成する。このとき、決定部１４１は、メモリ３０および第２保存領域２２に保存した管理テーブルＴＡ〜ＴＤに基づいて、消去対象領域を決定する。第２保存領域２２は、記憶装置２０において確保されるもので、メモリ３０の容量よりも大容量かつ区画２１の容量よりも小容量の領域であって区画２１とは異なる領域である。このように管理テーブルＴＡ〜ＴＤをメモリ３０および第２保存領域２２に保存する場合の、情報処理装置１の機能や動作については、図３３〜図３６を参照しながら後述する。
【００２９】
さらに、取得部１３１は、管理テーブルＴＡ〜ＴＤの複数種類のデータ形式の中から、管理テーブルＴＡ〜ＴＤのデータサイズが最も小さくなるデータ形式を選択し、選択されたデータ形式で管理テーブルＴＡ〜ＴＤを取得してメモリ３０に保存してもよい。このとき、複数種類のデータ形式としては、少なくとも、前述したビットマップ形式（第１形式）とエクステント形式（第２形式）とが含まれる。このようなデータ形式の選択機能については、図３５を参照しながら後述する。
【００３０】
〔２〕本実施形態の情報処理装置の動作
以下、上述のごとく構成された本実施形態の情報処理装置１の動作について、図３〜図３６を参照しながら説明する。
【００３１】
〔２−１〕消去対象領域の特定手法について
既存技術として、データ消去が必要な領域を特定することで区画内の不要なデータを消去する技術が知られている。しかし、区画内のデータをリストアした場合、リストア後の区画内で消去が必要な領域（消去対象領域）を特定してその領域内のデータを消去する技術については知られていない。このため、既存技術では、リストア後の区画内においてデータ消去が必要な領域を漏れなく特定して消去することができない。
【００３２】
ここで、既存技術による消去対象領域の特定手法について、図３〜図９を参照しながら具体的に説明する。図３〜図９は、既存技術による消去対象領域の特定手法を説明すべく、既存技術で用いられるテーブルの状態を示す図である。
【００３３】
既存技術では、例えば図３および図４にそれぞれ示すような２つの管理テーブルＴａおよびＴｂを用いて管理対象の区画の使用状況が管理される。
【００３４】
図３に示す管理テーブルＴａは、各データブロックが上書き消去されているか否かを使用状況として管理する。管理テーブルＴａにおいて、“０”を設定されたビットに対応するデータブロックは、上書き消去された領域であり、“１”を設定されたビットに対応するデータブロックは、データを上書き消去されていない領域である。即ち、管理テーブルＴａは上述した領域（第２領域）Ｃの情報に相当し、“０”を設定されたビットに対応するデータブロックは、ファイルデータの書込みを行なっていない領域であり、“１”を設定されたビットに対応するデータブロックは、ファイルデータの書込みを行なった領域である。
【００３５】
図４に示す管理テーブルＴｂは、使用状況として、各データブロックが使用域か未使用域かを使用状況として管理する。管理テーブルＴｂにおいて“０”を設定されたビットに対応するデータブロックは、未使用域であり、何らかのデータが残っている可能性のある領域である。一方、管理テーブルＴｂにおいて“１”を設定されたビットに対応するデータブロックは、使用域である。この管理テーブルＴｂは、上述した領域（第４，第１領域）Ａ，Ｂの情報を組み合わせたものに相当する。
【００３６】
このとき、消去が必要な領域は、データが上書き消去されていない即ち有効なデータが書き込まれている領域（管理テーブルＴａで“１”の領域）であって、未使用域（管理テーブルＴｂで“０”の領域）として特定される。つまり、消去対象領域を示すテーブルＴｃは、図５に示すように、管理テーブルＴａとＴｂとの排他的論理和（ＸＯＲ：exclusive OR）として得られる。テーブルＴｃにおいて、“０”を設定されたビットに対応するデータブロックは消去が不要な領域であり、“１”を設定されたビットに対応するデータブロックは消去が必要な領域である。
【００３７】
しかし、このような特定手法では、上述した領域（第３領域）Ｄの情報、つまり前回のリストア完了時にファイルシステム上で使用域として管理されていた領域Ｄの情報が考慮されていない。このため、リストア時に、消去が必要な領域の一部を消去対象領域として特定して消去することができず、情報漏えいの問題が生じる虞がある。
【００３８】
このように、消去が必要な領域の一部を消去対象領域として特定できなくなる状況について、図６〜図９を参照しながら説明する。特にここでは、前回のリストア完了時にファイルシステム上で使用域として管理されていた領域Ｄが、図６に示すテーブルＴｄの状態である場合に生じる状況について説明する。テーブルＴｄにおいて、“０”を設定されたビットに対応するデータブロックは、前回のリストア完了時の未使用域であり、“１”を設定されたビットに対応するデータブロックは、前回のリストア完了時の使用域である。
【００３９】
リストア時に消去を行なう場合、管理テーブルＴｂ（システム稼動開始時の初期状態）とテーブルＴｄ（システム稼動終了時の最終状態）との論理和として得られる図７のテーブルＴｅによって示される領域が、リストア時の使用域として認識されるべき領域である。したがって、リストア完了時に消去が必要な領域を示すテーブルＴｆは、図８に示すように、テーブルＴｅと管理テーブルＴａとの排他的論理和（ＸＯＲ）として得られる。
【００４０】
ここで、図５のテーブルＴｃによって示される消去対象領域と、図８のテーブルＴｆによって示される消去対象領域とを比較すると、既存技術による特定手法では、図９に示すように、領域Ｘ内の３つのデータブロックが消去されないまま残ることが分かる。つまり、既存技術による特定手法では、上述した領域Ｄの情報を考慮しないため、リストア時に、消去が必要な領域の一部を消去対象領域として特定して消去することができないことが分かる。このような状態になる領域（図６や図９の領域Ｘ参照）は、前回のリストア完了時のファイルシステム上で使用域として管理されており、その後、システム稼働中にファイルの削除などが行なわれ、上書きされることなくファイルシステム上で使用域から未使用域になった領域である。
【００４１】
上述したように、前回のリストア完了時のファイルシステム上で使用域として管理されていた領域Ｄの情報を考慮することなく、リストア時に消去が必要な領域を特定した場合、消去が必要な領域の一部を消去対象領域として特定できなくなる。
【００４２】
これに対し、本実施形態の情報処理装置１では、前述したように、リストア後の区画内で消去が必要な領域（消去対象領域）は、上記領域Ｂ，Ｃ，Ｄの論理和結果と、上記領域Ａとの論理和結果として得られる領域である。即ち、消去対象領域は、上記領域Ｂ，Ｃ，Ｄを示す管理テーブルＴＢ，ＴＣ，ＴＤの論理和結果と、上記領域Ａを示す管理テーブルＴＡとの論理和結果として得られるテーブルＴ１によって特定される。
【００４３】
以下に、本実施形態の情報処理装置１による消去対象領域の特定手法について、図１０〜図１４を参照しながら具体的に説明する。図１０〜図１４は、本実施形態の情報処理装置１による消去対象領域の特定手法を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【００４４】
本実施形態の情報処理装置１では、既存技術で使用されていない情報、つまりリストア対象の区画２１において前回のリストア完了時（リストア後のデータ消去完了時）に使用域であった第３領域Ｄの情報である管理テーブル（使用域管理ファイル）ＴＤが考慮される。これにより、リストア時にデータを消去すべき領域を特定して消去する場合に消去すべき領域に漏れが生じるのを抑止することができる。本実施形態で使用される情報ＴＤは、本実施形態での用途以外では必要性が低く、本実施形態での用途以外で取得されることは少ないと考えられる。
【００４５】
本実施形態の具体例においては、以下に示す４つの情報ＴＡ〜ＴＤを用いて決定することで、リストア後に消去が必要な領域を漏れなく特定して消去することができ、情報漏えいを確実に防止できる。
【００４６】
図１０に示す管理テーブルＴＢは、リストア前の区画２１においてファイルシステム１５上で使用域として管理されていた第１領域Ｂに関する情報である。つまり、管理テーブルＴＢにおいて、“０”を設定されたビットに対応するデータブロックは、リストア前の区画２１においてファイルシステム１５上で未使用域として管理されていた領域である。一方、管理テーブルＴＢにおいて、“１”を設定されたビットに対応するデータブロックは、リストア前の区画２１においてファイルシステム１５上で使用域として管理されていた領域である。そして、管理テーブルＴＢは、リストア開始時に、取得部１３１がリストア実行開始直前における区画２１を参照することによって取得され、メモリ３０に保存される。
【００４７】
図１１に示す管理テーブル（書込み管理ファイル）ＴＣは、リストア前の区画でファイルデータの書込みを行なった第２領域Ｃに関する情報である。つまり、管理テーブルＴＣにおいて、“１”を設定されたビットに対応するデータブロックは、リストア前の区画でファイルデータを書き込まれた領域である。一方、管理テーブルＴＣにおいて、“０”を設定されたビットに対応するデータブロックは、リストア前の区画でファイルデータを書き込まれていない領域である。そして、管理テーブルＴＣは、書込み監視ドライバ１７が前回のリストア後のシステム稼働中に区画２１に対する書込み要求を監視することで、区画２１に書込み管理ファイルＴＣとして作成取得される。取得部１３１は、リストア開始時に、処理対象の区画２１に書込み管理ファイルＴＣが存在するかを検索し、書込み管理ファイルＴＣが存在する場合、書込み管理ファイルＴＣを区画２１からメモリ３０へ複製して読み込む。
【００４８】
図１２に示す管理テーブル（使用域管理ファイル）ＴＤは、前回のリストア完了時（前回のリストア後のデータ消去完了時）にファイルシステム１５上で使用域として管理されていた第３領域Ｄに関する情報である。つまり、管理テーブルＴＤにおいて、“１”を設定されたビットに対応するデータブロックは、前回のリストア完了時にファイルシステム１５上で使用域として管理されていた領域である。一方、管理テーブルＴＤにおいて、“０”を設定されたビットに対応するデータブロックは、前回のリストア完了時にファイルシステム１５上で未使用域として管理されていた領域である。そして、管理テーブルＴＤは、取得部１３１が前回のリストア完了時（データ消去完了時）における区画２１を参照することで、区画２１に使用域管理ファイルＴＤとして作成取得される。このとき、管理テーブルＴＤによって使用される領域も、管理テーブルＴＤの使用域に含まれる。取得部１３１は、リストア開始時に、処理対象の区画２１に使用域管理ファイルＴＤが存在するかを検索し、使用域管理ファイルＴＤが存在する場合、使用域管理ファイルＴＤを区画２１からメモリ３０へ複製して読み込む。
【００４９】
図１３に示す管理テーブルＴＡは、リストア後の区画２１においてファイルシステム１５上で未使用域として管理される第１領域Ａに関する情報である。つまり、管理テーブルＴＡにおいて、“０”を設定されたビットに対応するデータブロックは、リストア後の区画２１においてファイルシステム１５上で使用域として管理される領域である。一方、管理テーブルＴＡにおいて、“１”を設定されたビットに対応するデータブロックは、リストア後の区画２１においてファイルシステム１５上で未使用域として管理される領域である。そして、管理テーブルＴＡは、リストア開始時に、取得部１３１が区画２１に対しリストアされるバックアップデータ２３を参照することで取得され、メモリ３０に保存される。このとき、バックアップデータ２３には、バックアップ制御部１２によってバックアップデータ２３を記憶装置２０に保存する際に、未使用域を特定するための情報が予め組み込まれている。
【００５０】
図１４に示すテーブルＴ１は、図１０〜図１３にそれぞれ示す管理テーブルＴＢ，ＴＣ，ＴＤ，ＴＡに基づき得られたデータ消去が必要な領域（消去対象領域）に関する情報である。つまり、テーブルＴ１は、管理テーブルＴＢ，ＴＣ，ＴＤの論理和結果（第１領域Ｂ，第２領域Ｃ，第３領域Ｄの論理和結果）と、管理テーブルＴＡ（第４領域Ａ）との論理積結果に対応する。テーブルＴ１において、“０”を設定されたビットに対応するデータブロックは、消去が不要な領域であり、“１”を設定されたビットに対応するデータブロックは、消去が必要な領域（消去対象領域）である。このように決定部１４１によって決定された消去対象領域に対する上書き消去が、消去部１４２によって実行される。
【００５１】
上述したように、本実施形態の情報処理装置１では、既存技術で使用されていない情報である使用域管理ファイルＴＤが考慮される。これにより、リストア時にデータを消去すべき領域を特定して消去する場合に消去すべき領域に漏れが生じるのを抑止することができる。
【００５２】
〔２−２〕リストア先を消去対象領域に移動する機能について
上述した通り、本実施形態のリストア制御部１３は、区画２１にリストアすべきデータを消去対象領域に書き込むことによって消去対象領域に対する上書き消去を行なう機能（リストア先を消去対象領域に移動する機能）を有している。ここで、当該機能が有効に用いられる状況について、図１５〜図２４を参照しながら説明する。なお、図１５〜図２４は、本実施形態の情報処理装置１におけるリストア制御部１３の機能を説明すべく、本実施形態で用いられるテーブルの状態を示す図である。
【００５３】
図１０〜図１４を参照しながら上述した特定方法では、図１５〜図２０を参照しながら以下に説明する条件下において、リストアまたは消去すべくデータを書き込む領域（データブロック）が増加し、処理量が増大することがある。このような状況において、リストア制御部１３の上記機能を用いることで、図２１〜図２４を参照しながら以下に説明するごとく、リストアまたは消去すべくデータを書き込む領域を少なくすることができる。
【００５４】
管理テーブルＴＢ，ＴＣ，ＴＤおよびＴＡの状態がそれぞれ図１５，図１６，図１７および図１８に示す状態である場合、これらの管理テーブルＴＡ〜ＴＤに基づき決定部１４１によって特定される消去対象領域は、図１９のテーブルＴ２に示すようになる。図１９のテーブルＴ２は、図１５，図１６，図１７にそれぞれ示す管理テーブルＴＢ，ＴＣ，ＴＤの論理和結果と、図１８に示す管理テーブルＴＡとの論理積結果に対応する。
【００５５】
図１９に示すごとく得られたテーブルＴ２に対応する区画２１では、図２０に示すように、全領域（全てのデータブロック）に対し、リストアまたはデータ消去のための書込みが行なわれることになる。図２０のテーブルＴＥは、図１９の管理テーブルＴ２に示すごとく得られた消去対象領域を含む区画２１において、リストアすべきデータのリストア先を消去対象領域に移動しない場合について、書き込みする領域と書き込みしない領域とを示している。ただし、図２０に示すテーブルＴＥでは、全領域に対して書き込みされるため、書き込みしない領域は存在しない。
【００５６】
本実施形態では、図２０に示すように全領域に対して書き込みを行なう状況で、リストア制御部１３により、リストア時に消去が必要となる領域に、リストアで書き込むデータを優先的にリストアする機能が実現される。これにより、消去が必要な領域が、リストアするデータで上書きされることになり、リストアまたは消去するためにデータを書き込む領域を少なくすることができる。以下、図１５〜図２０を参照しながら上述した状況で、上記機能によってデータを書き込む領域が削減される具体例について、図２１〜図２４を参照しながら説明する。
【００５７】
まず、リストア前の各データブロックの使用域／未使用域に関する情報から求めた、消去が必要な領域は、図２１のテーブルＴ３に示すようになる。つまり、図２１に示すテーブルＴ３は、図１５〜図１７にそれぞれ示す管理テーブルＴＢ，ＴＣ，ＴＤ（第１〜第３領域Ｂ，Ｃ，Ｄ）の論理和結果である。
【００５８】
ここで、リストア制御部１３の上記機能により、リストアするデータで上書きされる領域を、データ消去で上書きされる領域に移動させた例を、図２２に示す。このとき、リストア制御部１３の上記機能は、図１８に示す管理テーブルＴＡ（リストア後の区画２１においてファイルシステム１５上で未使用域として管理される第１領域Ａに関する情報）と図２１に示す管理テーブルＴ３とを参照し、リストアするデータの一部を、データ消去で上書きされる領域に割り当てなおす。このように領域の移動・割当を行なった管理テーブルＴＡ′が、図１８に示す管理テーブルＴＡに代わる、新たな管理テーブルとして用いられる。なお、領域の移動・割当は、リストアするデータのフラグメントが発生し難くなるように考慮して行なわれる。管理テーブルＴＡ′においても、“０”を設定されたビットに対応するデータブロックは、リストア後の区画２１においてファイルシステム１５上で使用域として管理される領域であり、“１”を設定されたビットに対応するデータブロックは、リストア後の区画２１においてファイルシステム１５上で未使用域として管理される領域である。
【００５９】
そして、図２３に示すように、図２２に示す新たな管理テーブルＴＡ′と図２１に示すテーブルＴ３との論理積結果として得られる管理テーブルＴ４が、リストア後に消去が必要な領域（消去対象領域）を示す。
【００６０】
図２３に示すごとく得られたテーブルＴ４に対応する区画２１では、図２４に示すように、リストアまたはデータ消去のための書込みが行なわれることになる。図２４のテーブルＴＦは、図２３の管理テーブルＴ４に示すごとく得られた消去対象領域を含む区画２１において、リストアすべきデータのリストア先を消去対象領域に移動した場合について、書き込みする領域と書き込みしない領域とを示している。図２４に示すように、テーブルＴＦでは、領域Ｙ内の５つのデータブロックが、書き込みしない領域となっている。
【００６１】
つまり、リストア先を消去対象領域に移動しない図２０に示す場合と、リストア先を消去対象領域に移動した図２４に示す場合とを比較すると、リストア先を消去対象領域に移動した方が、データを書き込むべき領域（データブロック）が少なくなり、処理量を削減することができる。
【００６２】
〔２−３〕データ消去の実行タイミングおよび本実施形態の機能について
ところで、ファイルシステム１５上で未使用域として管理されている領域には、不要なデータが残っている可能性がある。このようなデータは、ファイル復旧ソフトウエア等によりファイルデータとして復元されると、情報漏えいの発生要因となる。そこで、このようなデータを消去するデータ消去ツールも開発されているが、データ消去ツールは、システム稼働中に実行されるものが一般的である。システム稼働中にデータの消去処理を行なうと、以下のように、稼働中のシステムにおいて負荷が増加する。
【００６３】
未使用域のデータを消去するためには、ファイルシステム情報を取得して使用域／未使用域を判断する必要がある。このとき発生するＩ／Ｏ（入出力要求）により負荷が増加する。また、未使用域であっても不要なデータが残っていない領域（データ消去後に一度もデータが上書きされていない領域）に対しては消去データを上書きする必要が無いため、このような領域におけるデータの消去処理は、負荷を高くするだけである。
【００６４】
また、削除ファイルのデータ消去処理を行なう場合、ユーザの操作によって作成されたファイルの削除以外に、ＯＳやアプリケーションが作成する作業用ファイルの削除も行なわれるため、ユーザが認識している以上に高い負荷が発生している可能性がある。ただし、削除したファイルの領域が再利用される場合があることを考えると、ファイルの削除時に常にデータの消去処理を行なうと、消去処理が無駄になる場合がある。
【００６５】
このように、システム稼働中にデータの消去処理を行なう場合、システム稼働中に発生する負荷にデータの消去処理の負荷が加わるため、稼働中のシステムにおいて負荷が増加する。
【００６６】
そこで、本実施形態においては、システム稼働中に高負荷を与えることなく、既存ツールよりも少ない書込み量で不要なデータを消去するため、以下のような、システム稼働時の機能とリストア時の機能とを用いて、消去対象領域の特定およびデータ消去が行なわれる。
【００６７】
(i) システム稼働時の機能
システム稼働時に記憶装置２０の区画２１への書込みアクセスを監視することで書込みを行なった領域Ｃを管理し、当該領域Ｃに関する情報を書込み管理ファイル（管理テーブル）ＴＣに保存する機能（図３２参照）。当該機能は、上述した通り、ファイルシステム１５とディスクドライバ１６との間に配置された書込み監視ドライバ１７によって実現される。
【００６８】
(ii)リストア時の機能
(ii-1)リストア前に使用域であった領域で且つリストア後に未使用域になる領域（Ｂ＆Ａ）を消去対象領域として特定し、当該領域に対するデータ消去を行なう機能（図２７のステップＳ１６および図３０参照）。当該機能は、決定部１４１がリストア前の使用域を管理するテーブルＴＢとリストア後の未使用域を管理するテーブルＴＡとの論理積を算出するとともに、消去部１４２が前記論理積の結果で特定される消去対象領域のデータを消去することで実現される。
【００６９】
(ii-2)システム稼動中にファイルデータを書き込まれた領域で且つリストア後に未使用域になる領域（Ｃ＆Ａ）を消去対象領域として特定し、当該領域に対するデータ消去を行なう機能（図２７のステップＳ１２および図２８参照）。当該機能は、決定部１４１が書込み管理ファイルＴＣとリストア後の未使用域を管理するテーブルＴＡとの論理積を算出するとともに、消去部１４２が前記論理積の結果で特定される消去対象領域のデータを消去することで実現される。
【００７０】
(ii-3)前回のリストア完了時（前回のリストア後のデータ消去完了時）に使用域であった領域で且つリストア後に未使用域になる領域（Ｄ＆Ａ；データの上書きは行なわれていないが使用域から未使用域になった領域）を消去対象領域として特定し、当該領域に対するデータ消去を行なう機能（図２７のステップＳ１５および図２９参照）。当該機能は、決定部１４１が使用域管理ファイルＴＤとリストア後の未使用域を管理するテーブルＴＡとの論理積を算出するとともに、消去部１４２が前記論理積の結果で特定される消去対象領域のデータを消去することで実現される。
【００７１】
(ii-4)使用域管理ファイルＴＤが存在しない場合、リストア後に未使用域になる領域を消去対象領域として特定し、当該領域に対するデータ消去を行なう機能（図２７のステップＳ１７および図３１参照）。当該機能は、消去部１４２がリストア後の未使用域を管理するテーブルＴＡを参照し、リストア後の未使用域のデータ消去を行なうことで実現される。
【００７２】
(ii-5)リストア完了時にファイルシステム１５上で使用域として管理されている領域に関する情報を、使用域管理ファイルＴＤとして記憶装置２０の区画２１に更新保存する機能（図２６のステップＳ１１７参照）。当該機能は、取得部１３１によって実現される。ここで保存された使用域管理ファイルＴＤは、区画２１に対する次回のリストア時に管理テーブルＴＤとして用いられる。
【００７３】
本実施形態では、これらの機能が用いられ、システム稼動中には、書込み管理ファイルＴＣを取得するための監視処理のみが行なわれ、データの消去処理は、リストア時に行なわれる。これにより、システム稼動中には、データの消去処理による負荷が加わることがなく、負荷の増加を招くことがない。
【００７４】
〔２−４〕本実施形態の情報処理装置による処理手順
次に、図２５〜図３２に示すフローチャートに従って、本実施形態の情報処理装置１による処理手順について説明する。
【００７５】
〔２−４−１〕リストア手順
まず、図２５および図２６に示すフローチャート（ステップＳ１０１〜Ｓ１１８）に従って、本実施形態の情報処理装置１のリストア制御部１３によるリストア手順について説明する。
【００７６】
取得部１３１は、リストア実行開始直前における区画２１を参照し当該区画２１に含まれる各データブロックの使用／未使用状態を把握することで、リストア先の使用域情報つまりリストア前の使用域を示す管理テーブルＴＢを取得し、メモリ３０に保存する（ステップＳ１０１）。
【００７７】
また、取得部１３１は、処理対象の区画２１に書込み管理ファイルＴＣが存在するかを検索し（ステップＳ１０２）、書込み管理ファイルＴＣが存在する場合（ステップＳ１０２のＹＥＳルート）、書込み管理ファイルＴＣを区画２１からメモリ３０へ複製して保存する（ステップＳ１０３）。書込み管理ファイルＴＣが存在しない場合（ステップＳ１０２のＮＯルート）、取得部１３１は、ステップＳ１０３の処理をスキップする。
【００７８】
また、取得部１３１は、処理対象の区画２１に使用域管理ファイルＴＤが存在するかを検索し（ステップＳ１０４）、使用域管理ファイルＴＤが存在する場合（ステップＳ１０４のＹＥＳルート）、使用域管理ファイルＴＤを区画２１からメモリ３０へ複製して保存する（ステップＳ１０５）。使用域管理ファイルＴＤが存在しない場合（ステップＳ１０４のＮＯルート）、取得部１３１は、ステップＳ１０５の処理をスキップする。
【００７９】
さらに、取得部１３１は、区画２１に対しリストアされるバックアップデータ２３を参照し、リストア後の各データブロックの使用／未使用状態を把握することで、リストア後の未使用域を示す管理テーブルＴＡを取得し、メモリ３０に保存する（ステップＳ１０６）。
【００８０】
ついで、リストア制御部１３は、メモリ３０に保存された管理テーブルＴＡ〜ＴＤに基づき、リストア先を消去対象領域に移動しない場合の書込みが必要な領域の情報ＴＥを作成する（ステップＳ１０７）。このとき、リストア制御部１３は、図１５〜図２０を参照しながら前述した手順で情報（テーブル）ＴＥを作成する。
【００８１】
また、リストア制御部１３は、メモリ３０に保存された管理テーブルＴＡ〜ＴＤに基づき、リストア先を消去対象領域に移動した場合の書込みが必要な領域の情報ＴＦを作成する（ステップＳ１０８）。このとき、リストア制御部１３は、図２１〜図２４を参照しながら前述した手順で情報（テーブル）ＴＦを作成し、メモリ３０または記憶装置２０に保存する。
【００８２】
そして、リストア制御部１３は、情報ＴＥの書込みデータ量が情報ＴＦの書込みデータ量よりも多いか否かを判断する（ステップＳ１０９）。情報ＴＥの書込みデータ量が情報ＴＦの書込みデータ量よりも多い場合（ステップＳ１０９のＹＥＳルート）、リストア制御部１３は、情報ＴＥ，ＴＦに基づき、リストア先移動情報を作成する（ステップＳ１１０）。リストア先移動情報は、例えば図２２に示すようにリストア先を消去対象領域に移動させるべく、移動させるべきリストアデータと移動先の位置とを特定するものである。一方、情報ＴＥの書込みデータ量が情報ＴＦの書込みデータ量以下である場合（ステップＳ１０９のＮＯルート）、リストア制御部１３は、ステップＳ１１０の処理をスキップする。
【００８３】
この後、リストア制御部１３は、バックアップデータ２３から、リストア対象のデータを読み込み（ステップＳ１１１）、全てのデータを読み込み区画２１に対するリストアを完了したか否かを判断する（ステップＳ１１２）。まだ全てのデータを読み込んでいない場合（ステップＳ１１２のＮＯルート）、リストア制御部１３は、読み込んだリストア対象のデータについてのリストア先移動情報（ステップＳ１１０で作成した情報）があるか否かを判断する（ステップＳ１１３）。
【００８４】
リストア先移動情報がない場合（ステップＳ１１３のＮＯルート）、リストア制御部１３は、リストア先を消去対象領域に移動させることなくバックアップ時のデータ位置をそのままリストア先とする（ステップＳ１１４）。そして、リストア制御部１３は、リストア対象のデータをディスク２０の区画２１におけるリストア先に書き込みリストアを実行する（ステップＳ１１６）。
【００８５】
一方、リストア先移動情報がある場合（ステップＳ１１３のＹＥＳルート）、リストア制御部１３は、リストア先移動情報を参照し、リストア対象のデータのリストア先を、リストア先移動情報によって規定される位置（消去対象領域の位置）に変更する（ステップＳ１１５）。そして、リストア制御部１３は、リストア対象のデータをディスク２０の区画２１における変更後のリストア先に書き込みリストアを実行する（ステップＳ１１６）。
【００８６】
リストア対象のデータを書き込んだ後、リストア制御部１３は、使用域管理情報、つまりリストア後の使用域を管理する使用域管理ファイルＴＤを更新してから（ステップＳ１１７）、ステップＳ１１１の処理に戻る。なお、ステップＳ１１７で更新された使用域管理ファイルＴＤは、区画２１の次回リストア時に、前回のリストア完了時に使用域であった領域Ｄの情報として用いられる。
【００８７】
ステップＳ１１２において全てのデータを読み込みリストアを完了したと判断した場合（ステップＳ１１２のＹＥＳルート）、データ消去制御部１４（決定部１４１および消去部１４２）によって、データ消去処理が実行される（ステップＳ１１８）。
【００８８】
〔２−４−２〕データ消去手順
次に、図２７〜図３１に示すフローチャートに従って、本実施形態の情報処理装置１のデータ消去制御部１４（決定部１４１および消去部１４２）によるデータ消去手順について説明する。
【００８９】
まず、図２７に示すフローチャート（Ｓ１１〜Ｓ１８）に従って、データ消去制御部１４によるデータ消去手順の全体的な流れについて説明する。
【００９０】
データ消去制御部１４は、メモリ３０に書込み管理ファイルＴＣが存在するかを検索する（ステップＳ１１）。書込み管理ファイルＴＣが存在する場合（ステップＳ１１のＹＥＳルート）、データ消去制御部１４は、図２８を参照しながら後述するごとく、システム稼動中にファイルデータを書き込まれた領域で且つリストア後に未使用域になる領域（Ｃ＆Ａ）のデータ消去を行なってから（ステップＳ１２）、ステップＳ１３の処理に移行する。
【００９１】
一方、書込み管理ファイルＴＣが存在しない場合（ステップＳ１１のＮＯルート）、データ消去制御部１４は、書込み管理ファイルＴＣの初期化を行なってから（ステップＳ１３）、ステップＳ１４の処理に移行する。
【００９２】
ステップＳ１４において、データ消去制御部１４は、メモリ３０に使用域管理ファイルＴＤが存在するかを検索する。使用域管理ファイルＴＤが存在する場合（ステップＳ１４のＹＥＳルート）、データ消去制御部１４は、図２９を参照しながら後述するごとく、前回のリストア完了時に使用域であった領域で且つリストア後に未使用域になる領域（Ｄ＆Ａ）のデータ消去を行なう（ステップＳ１５）。この後、データ消去制御部１４は、図３０を参照しながら後述するごとく、リストア前に使用域であった領域で且つリストア後に未使用域になる領域を消去対象領域（Ｂ＆Ａ）のデータ消去を行なってから（ステップＳ１６）、ステップＳ１８の処理に移行する。
【００９３】
一方、使用域管理ファイルＴＤが存在しない場合（ステップＳ１４のＮＯルート）、データ消去制御部１４は、図３１を参照しながら後述するごとく、リストア後に未使用域になる領域のデータ消去を行なってから（ステップＳ１７）、使用域管理ファイルＴＤの初期化を行なってから（ステップＳ１８）、データ消去処理を終了する。
【００９４】
次に、図２７のステップＳ１２で実行されるデータ消去処理について、図２８に示すフローチャート（ステップＳ２１〜Ｓ２４）に従って説明する。
【００９５】
決定部１４１は、メモリ３０から、書込み管理ファイルＴＣとリストア後の未使用域を管理するテーブルＴＡとを取得する（ステップＳ２１，Ｓ２２）。そして、決定部１４１は、情報ＴＣと情報ＴＡとの論理積を算出することで、システム稼動中にファイルデータを書き込まれた領域で且つリストア後に未使用域になる領域（Ｃ＆Ａ）を消去対象領域として特定する。領域（Ｃ＆Ａ）があれば（ステップＳ２３のＹＥＳルート）、消去部１４２は、当該領域（Ｃ＆Ａ）のデータを消去してから（ステップＳ２４）、ステップＳ２３の処理に戻る。領域（Ｃ＆Ａ）がなければ（ステップＳ２３のＮＯルート）、消去部１４２は、図２７のステップＳ１２でのデータ消去処理を終了する。なお、ステップＳ２４において、データ消去に際しての書込み回数などは消去方法に従う。
【００９６】
次に、図２７のステップＳ１５で実行されるデータ消去処理について、図２９に示すフローチャート（ステップＳ３１〜Ｓ３４）に従って説明する。
【００９７】
決定部１４１は、メモリ３０から、使用域管理ファイルＴＤとリストア後の未使用域を管理するテーブルＴＡとを取得する（ステップＳ３１，Ｓ３２）。そして、決定部１４１は、情報ＴＤと情報ＴＡとの論理積を算出することで、前回のリストア完了時に使用域であった領域で且つリストア後に未使用域になる領域（Ｄ＆Ａ）を消去対象領域として特定する。領域（Ｄ＆Ａ）があれば（ステップＳ３３のＹＥＳルート）、消去部１４２は、当該領域（Ｄ＆Ａ）のデータを消去してから（ステップＳ３４）、ステップＳ３３の処理に戻る。領域（Ｄ＆Ａ）がなければ（ステップＳ３３のＮＯルート）、消去部１４２は、図２７のステップＳ１５でのデータ消去処理を終了する。なお、ステップＳ３４において、データ消去に際しての書込み回数などは消去方法に従う。
【００９８】
次に、図２７のステップＳ１６で実行されるデータ消去処理について、図３０に示すフローチャート（ステップＳ４１〜Ｓ４４）に従って説明する。
【００９９】
決定部１４１は、メモリ３０から、リストア前の使用域を管理するテーブルＴＢとリストア後の未使用域を管理するテーブルＴＡとを取得する（ステップＳ４１，Ｓ４２）。そして、決定部１４１は、情報ＴＢと情報ＴＡとの論理積を算出することで、リストア前に使用域であった領域で且つリストア後に未使用域になる領域（Ｂ＆Ａ）を消去対象領域として特定する。領域（Ｂ＆Ａ）があれば（ステップＳ４３のＹＥＳルート）、消去部１４２は、当該領域（Ｂ＆Ａ）のデータを消去してから（ステップＳ４４）、ステップＳ４３の処理に戻る。領域（Ｂ＆Ａ）がなければ（ステップＳ４３のＮＯルート）、消去部１４２は、図２７のステップＳ１６でのデータ消去処理を終了する。なお、ステップＳ４４において、データ消去に際しての書込み回数などは消去方法に従う。
【０１００】
次に、図２７のステップＳ１７で実行されるデータ消去処理について、図３１に示すフローチャート（ステップＳ５１〜Ｓ５３）に従って説明する。
【０１０１】
使用域管理ファイルＴＤが存在しない場合、決定部１４１は、メモリ３０から、リストア後の未使用域を管理するテーブルＴＡを取得する（ステップＳ５１）。そして、決定部１４１は、テーブルＴＡを参照し、リストア後に未使用域になる領域があれば（ステップＳ５２のＹＥＳルート）、消去部１４２は、当該領域のデータを消去してから（ステップＳ５３）、ステップＳ５２の処理に戻る。リストア後に未使用域になる領域がなければ（ステップＳ５２のＮＯルート）、消去部１４２は、図２７のステップＳ１７でのデータ消去処理を終了する。なお、ステップＳ５３において、データ消去に際しての書込み回数などは消去方法に従う。
【０１０２】
〔２−４−３〕書込み管理ファイルの作成手順
ついで、図３２に示すフローチャート（ステップＳ６１〜Ｓ６３）に従って、本実施形態の情報処理装置１（書込み監視ドライバ１７）による書込み管理ファイル（管理テーブル）ＴＣの作成手順について説明する。
【０１０３】
図２に示すように、本実施形態のＣＰＵ１０において、ファイルシステム１５とディスクドライバ１６との間には、書込み監視ドライバ１７が配置されている。そして、書込み監視ドライバ１７は、システム稼働中、リストア対象の区画２１への書込み要求を監視することで、区画２１に書込み管理ファイルＴＣを作成する。
【０１０４】
つまり、図３２に示すように、書込み監視ドライバ１７は、システムが稼動中であるか否かを判断する（ステップＳ６１）。システムが稼動中であれば（ステップＳ６１のＹＥＳルート）、書込み監視ドライバ１７は、リストア対象の区画２１に対する書込み要求が発生したか否かを判断する（ステップＳ６２）。書込み要求が発生しない場合（ステップＳ６２のＮＯルート）、書込み監視ドライバ１７は、ステップＳ６１の処理に戻る。
【０１０５】
一方、書込み要求が発生した場合（ステップＳ６２のＹＥＳルート）、書き込み監視ドライバ１７は、書込み管理ファイルＴＣにセクタ情報をセットすることで、リストア対象の区画２１において前回のリストア後のシステム稼働中にデータを書き込まれた第２領域Ｃの情報を取得する（ステップＳ６３）。第２領域Ｃの情報を取得した後、書き込み監視ドライバ１７は、ステップＳ６１の処理に戻る。なお、システムが稼動中でなくなれば（ステップＳ６１のＮＯルート）、書込み監視ドライバ１７は、書込み要求の監視を終了し書込み管理ファイルＴＣの作成を終了する。
【０１０６】
〔２−５〕メモリの保存データ量がメモリ容量を超えた場合の処理について
区画（記憶領域）２１内のデータブロックの使用状況などを管理する管理テーブルは、データブロックの数が増加（つまりディスク２０の容量が増加）すると、管理テーブルのデータサイズも大きくなる。管理テーブルのデータサイズが大きくなると、ディスク２０の容量に比べ管理テーブルを保存するメモリ３０の容量は小さいため、メモリ３０上に管理テーブルのデータ全体を一度に格納できなくなる。
【０１０７】
このような状況について、図３３および図３４を参照しながら説明する。図３３は、メモリ３０に管理テーブルを格納できる状況を説明する図であり、図３４は、メモリ３０に管理テーブルを格納できない状況を説明する図である。図３３および図３４では、図３および図４を参照しながら上述した２つの管理テーブル（ビットマップテーブル）ＴａおよびＴｂを用いて管理対象の区画の使用状況を管理する例が示されている。
【０１０８】
図３３に示すように、ビットマップ形式の管理テーブルＴａ，Ｔｂによってディスク上の３０個のデータブロックを管理する場合、各管理テーブルＴａ，Ｔｂのビット数は３０ビットとなる。そして、図３３に示す例では、２つの管理テーブルＴａ，Ｔｂが必要であるため、管理テーブルＴａ，Ｔｂを保存するメモリ３０の容量は、少なくとも３０ビット×２＝６０ビットだけ必要である。したがって、６０ビット以上の容量をもつメモリ３０を使用できる場合、メモリ３０の容量が不足することはなく、問題なく処理を実行することができる。
【０１０９】
しかし、図３４に示すように、メモリ３０の容量が６０ビット分しか使用できないような状況で、管理すべきデータブロックの数が４０個になると、１０個分のデータブロックに対応する管理テーブルＴａ，Ｔｂの内容を保存する領域（２０ビット分）が確保できない。このため、１０個分のデータブロックを管理することができなくなる。このような場合に、本実施形態のごとく、区画２１のデータブロックを分割して管理する仕組み、つまり管理テーブル（上書き消去すべきデータブロックを判断する管理情報）ＴＡ〜ＴＤを分割して管理する仕組みが有効である。特に、本実施形態において、取得部１３１は、メモリ３０上のデータをディスク２０上の第２保存領域２２に退避しておき、必要なときに必要なデータを第２保存領域２２から読み込むように構成される。
【０１１０】
以下に、本実施形態において、管理テーブルＴＡ〜ＴＤを取得してメモリ（第１保存領域）３０および第２保存領域２２に保存する際の処理について、図３５に示すフローチャート（ステップＳ２０１〜Ｓ２１２）に従って説明する。なお、図３５は、本実施形態のリストア開始時における管理テーブルＴＡ〜ＴＤの取得保存手順を説明するフローチャートである。
【０１１１】
図３５に示す処理は、取得部１３１が管理テーブルＴＡ〜ＴＤをメモリ３０上に読み込み取得する際（図２５のステップＳ１０１，Ｓ１０３，Ｓ１０５，Ｓ１０７）で実行される。
【０１１２】
上述した実施形態では、管理テーブルＴＡ〜ＴＤのデータ形式がビットマップ形式である場合について説明した。これに対し、以下に説明する図３５に示す例では、取得部１３１は、まず、管理テーブルＴＡ〜ＴＤの複数種類のデータ形式の中から、取得対象の管理テーブルのデータサイズが最も小さくなるデータ形式を選択する（ステップＳ２０１）。
【０１１３】
ここで、ディスク２０における管理対象の区画２１の使用領域を管理する方法としては、例えば、上述したビットマップ形式（第１形式）とエクステント形式（第２形式）とがある。
【０１１４】
ビットマップ形式では、例えば、ある一つのデータブロックが使用中であれば当該データブロックに対応するビットに“１”を設定する一方で未使用であれば当該ビットに“０”を設定するようにビットマップ管理が行なわれる。ビットマップ形式では、ディスク２０のサイズが大きくなり管理対象のデータブロック数が増加すると、そのサイズに比例してビットマップテーブルのサイズも大きくなる。
【０１１５】
また、エクステント形式では、例えば、区画２１における使用域または未使用域が、使用域または未使用域の開始位置と、使用域または未使用域のデータ長（大きさ）とによって管理される。エクステント形式では、データブロックの使用状況によって管理情報のデータサイズは変動するが、ディスク２０のサイズが大きくなったからといって単純に管理情報のデータサイズが増加することはない。
【０１１６】
そこで、図３５に示す実施形態では、取得部１３１は、取得対象の管理テーブルについて、ビットマップ形式とエクステント形式とのどちらでデータを保存すると、メモリ３０やディスク２０を効率よく使用できるかを判断する。そして、取得部１３１は、以降の処理において、効率のよいデータ構造で取得対象の管理テーブルを取得保存する。
【０１１７】
取得部１３１は、ステップＳ２０１でデータ形式を選択すると、選択されたデータ形式で管理テーブルを取得保存した場合のデータサイズを取得する（ステップＳ２０２）。当該データサイズとしては、ステップＳ２０１での判断時に算出された値が取得される。
【０１１８】
そして、取得部１３１は、取得されたデータサイズの管理テーブルの全てをメモリ３０に格納できるか否かを判断する（ステップＳ２０３）。取得対象の管理テーブルの全てをメモリ３０に格納可能である場合（ステップＳ２０３のＹＥＳルート）、取得部１３１は、取得対象の管理テーブルの全てをメモリ３０上に作成取得し（ステップＳ２０４）、処理を終了する。
【０１１９】
一方、取得対象の管理テーブルの全てをメモリ３０に格納できない場合（ステップＳ２０３のＮＯルート）、取得部１３１は、ステップＳ２０５〜Ｓ２１２の処理を実行する。
【０１２０】
このとき、取得部１３１は、まず、リストア先の区画２１についてのファイルシステム１５の情報を参照して空き領域を検索し、取得対象の管理テーブルを格納する第２保存領域２２をディスク（ＨＤＤ）２０上に確保しておく（ステップＳ２０５）。第２保存領域２２を確保すると、取得部１３１は、管理テーブルの取得を開始し、ファイルシステム１５の情報を参照して取得対象の管理テーブルをメモリ３０上に作成取得する（ステップＳ２０６）。
【０１２１】
そして、取得部１３１は、管理テーブルの取得中に取得情報量がメモリ３０の容量に達したか否かを判断する（ステップＳ２０７）。取得情報量がメモリ３０の容量に到達した場合（ステップＳ２０７のＹＥＳルート）、取得部１３１は、メモリ３０上に取得された情報（取得対象の管理テーブルの一部）を、ディスク２０上の第２保存領域（空き領域）２２に書き出す（ステップＳ２０８）。このとき、リストアを開始するとリストア前の区画２１のファイルシステム１５は無効になるので、取得部１３１は、情報をディスク２０のどこに書き出したかを示す情報をメモリ３０上に保存する。
【０１２２】
取得部１３１は、メモリ３０上の情報を第２保存領域２２に書き出すと、メモリ３０上の管理テーブルのデータを初期化する（ステップＳ２０９）。この後、取得部１３１は、ステップＳ２０６の処理に戻り、ファイルシステム１５の情報を参照して後続の管理テーブルをメモリ３０上に作成取得し、以降、ステップＳ２０７〜Ｓ２０９の処理を繰り返し実行する。
【０１２３】
一方、取得情報量がメモリ３０の容量に到達していない場合（ステップＳ２０７のＮＯルート）、取得部１３１は、取得対象の管理テーブルの作成取得を完了したか否かを判断する（ステップＳ２１０）。完了していない場合（ステップＳ２１０のＮＯルート）、取得部１３１は、ステップＳ２０６の処理に戻る。また、完了している場合（ステップＳ２１０のＹＥＳルート）、取得部１３１は、メモリ３０上の最後のデータをディスク２０上の第２保存領域（空き領域）２２に書き出す（ステップＳ２１１）。このときも、取得部１３１は、情報をディスク２０のどこに書き出したかを示す情報をメモリ３０上に保存する。
【０１２４】
そして、取得部１３１は、メモリ３０上の管理テーブルのデータを初期化し（ステップＳ２１２）、管理テーブルの取得保存処理を終了する。なお、上述のように、管理テーブルのデータをディスク２０上に保存した場合、リストア完了時に管理テーブルで使用していた第２保存領域２２のデータは、上書き消去される。
【０１２５】
次に、図３６に示すフローチャート（ステップＳ２２１〜Ｓ２２３）に従って、図３５に示す手順によって第２保存領域２２に保存された管理テーブルＴＡ〜ＴＤを用いる際の、当該管理テーブルＴＡ〜ＴＤの読出し手順について説明する。
【０１２６】
なお、図３６に示す処理は、管理テーブルＴＡ〜ＴＤがディスク２０上の第２保存領域２２に保存されている場合に実行され、管理テーブルＴＡ〜ＴＤの全てがメモリ３０上に保存されている場合には実行されない。また、図３６に示す処理は、例えば、図２５のステップＳ１０７，Ｓ１０８で情報ＴＥ，ＴＦを作成すべく管理テーブルのデータを取得する際に実行される。同様に、図３６に示す処理は、例えば、図２８のステップＳ２１，Ｓ２２や図２９のステップＳ３１，Ｓ３２や図３０のステップＳ４１，Ｓ４２や図３１のステップＳ５１で管理テーブルのデータを取得する際に実行される。
【０１２７】
管理テーブルＴＡ〜ＴＤがディスク２０上の第２保存領域２２に保存されている場合、取得部１３１は、第２保存領域２２における、処理に必要な管理テーブルのデータを、それぞれ、先頭から読み込めるだけ、メモリ３０上に読み込む（ステップＳ２２１）。このとき、取得部１３１は、管理テーブルのどの領域を読み込んでいるかを判断するための情報（オフセット等）も、管理テーブルのデータとともにメモリ３０上に保存する。
【０１２８】
なお、ステップＳ２２１の処理を、図２５のステップＳ１０７，Ｓ１０８で情報ＴＥ，ＴＦを作成すべく管理テーブルのデータを取得する際に実行する場合、４つの管理テーブルＴＡ〜ＴＤの同一領域におけるデータがメモリ３０上に読み込まれる。また、ステップＳ２２１の処理を、図２８のステップＳ２１，Ｓ２２で管理テーブルのデータを取得する際に実行する場合、２つの管理テーブルＴＣ，ＴＡの同一領域におけるデータがメモリ３０上に読み込まれる。ステップＳ２２１の処理を、図２９のステップＳ３１，Ｓ３２や図３０のステップＳ４１，Ｓ４２や図３１のステップＳ５１で管理テーブルのデータを取得する際に実行する場合も同様である。
【０１２９】
この後、取得部１３１は、読み込んだ部分に対する処理（情報ＴＥ，ＴＦの作成処理、もしくは、消去対象領域の特定・消去処理）を完了したか否かを判断する（ステップＳ２２２）。当該処理を完了していない場合（ステップＳ２２２のＮＯルート）、取得部１３１は、当該処理を完了するのを待機する。一方、当該処理を完了した場合（ステップＳ２２２のＹＥＳルート）、取得部１３１は、処理に必要な管理テーブルのデータを全て読み込んだか否かを判断する（ステップＳ２２３）。
【０１３０】
まだデータを全て読み込んでいない場合（ステップＳ２２３のＮＯルート）、取得部１３１は、ステップＳ２２１の処理に戻り、メモリ３０の初期化後、上記オフセット等の情報に基づき、後続するデータを第２保存領域２２からメモリ３０上に読み込む。以降、取得部１３１は、ステップＳ２２３でデータを全て読み込んだと判断するまで、ステップＳ２２１〜Ｓ２２３の処理を繰り返し実行する。取得部１３１は、ステップＳ２２３でデータを全て読み込んだと判断すると（ステップＳ２２３のＹＥＳルート）、管理テーブルＴＡ〜ＴＤの読出し処理を終了する。
【０１３１】
図３５および図３６を参照しながら上述した処理により、本実施形態では、メモリ３０上に管理情報のデータ全体を格納できない場合であっても、メモリ３０上のデータをディスク２０上の第２保存領域２２に退避させておき、必要なときに必要なデータを第２保存領域２２から読み込むことが可能になる。
【０１３２】
なお、第２保存領域２２に保存した管理情報（管理テーブルＴＡ〜ＴＤ）のデータが上書きされるような場合、リストア制御部１３は、上書きされる管理情報のデータをディスク２０上の別の領域に移動する。その際、管理情報のファイルの位置情報も更新する。
【０１３３】
〔３〕まとめ
〔３−１〕本実施形態によれば、記憶装置２０の区画２１のリストアを実行する際、区画２１内に保存されたリストア前の情報であって、上書き消去すべき領域を判断する情報（本実施形態ではファイルＴＣ，ＴＤ）が区画２１からメモリ３０上に複製保存される。これにより、区画記憶領域全体のリストアが可能になる。
【０１３４】
〔３−２〕管理情報（管理テーブルＴＡ〜ＴＤ）のデータサイズが大きくなったためにメモリ３０上に管理情報のデータ全体を格納できない場合、本実施形態によれば、メモリ３０上のデータが記憶装置２０上の第２保存領域２２に退避され、必要なときに必要なデータが第２保存領域２２から読み込まれる。これにより、メモリ３０上に管理情報のデータ全体を格納できない場合にも対応することができる。
【０１３５】
〔３−３〕本実施形態では、取得対象の管理テーブル（管理情報）について、ビットマップ形式とエクステント形式とのどちらでデータを保存すると、メモリ３０やディスク２０を効率よく使用できるかが判断される。そして、効率のよいデータ構造で取得対象の管理テーブルが取得保存される。これにより、区画２１やメモリ３０や第２保存領域を有効に利用することができる。
【０１３６】
〔３−４〕本実施形態では、リストア時に消去対象領域を特定する際に、既存技術で考慮されていない情報である使用域管理ファイルＴＤ（前回のリストア完了時にファイルシステム１５上で使用域として管理されていた領域Ｄに関する情報）が考慮される。これにより、図３〜図１４を参照しながら前述したように既存技術では消去対象領域から漏れていた領域（図６，図９の領域Ｘ参照）も特定・消去可能となり、消去対象領域に漏れが生じるのを抑止することができる。従って、リストア後に消去が必要な領域を漏れなく特定して消去することができ、情報漏えいを確実に防止できる。
【０１３７】
〔３−５〕本実施形態では、図２０に示すように全領域に対して書き込みを行なう状況で、リストア時に消去が必要となる領域に、リストアで書き込むデータが、優先的にリストアされる。これにより、図２１〜図２４を参照しながら前述したように、消去が必要な領域が、リストアするデータで上書きされることになり、既存ツールに比べ、リストアまたは消去するためにデータを書き込む領域が少なくなる。従って、データ消去に際しての処理量を削減することができ、データ消去に要する処理時間を短縮することができる。
【０１３８】
〔３−６〕本実施形態では、システム稼動中には、書込み管理ファイルＴＣを取得するための処理のみが行なわれ、データの消去処理はリストア時に行なわれる。つまり、システム稼働中、データ消去に係る処理として、書込み監視ドライバ１７による監視のみが行なわれ、データ消去処理自体は、システム停止（オフライン）状態で実行される。このため、システム稼動中には、データの消去処理による負荷が加わることがなく、負荷の増加を招くことがない。
【０１３９】
〔３−７〕本実施形態では、消去時（リストア時）のファイルシステム１５の使用域情報として、バックアップ／リストア処理で取得した情報を利用することができるため、消去処理に際して使用域情報を別途取得する必要がない。
【０１４０】
〔３−８〕本実施形態では、区画２１のリストア時に不要なデータを消去しておくことで、パーソナルコンピュータ等の情報処理装置１の廃棄時には、廃棄時における区画２１の使用域と、リストア後にデータが書き込まれた領域とのデータ消去を行なうだけで、区画２１におけるデータ全体が消去されたことになる。つまり、廃棄時におけるデータ消去の処理量を削減しながら、情報漏えいを確実に防止できる。
【０１４１】
〔３−９〕本実施形態では、リストア時に消去を行なう場合、リストアでデータを書き込んだ領域は消去対象としない。このため、既存ツールの機能、例えばWindows8（登録商標）のリセット機能（リカバリ対象の区画を全て上書き消去する機能）よりも、データを消去するために書き込まれるデータ量を削減することができる。
【０１４２】
〔４〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、係る特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
【０１４３】
上述したバックアップ制御部１２，リストア制御部１３，取得部１３１，データ消去制御部１４，決定部１４１および消去部１４２としての機能の全部もしくは一部は、コンピュータ（ＣＰＵ，情報処理装置，各種端末を含む）が所定のアプリケーションプログラム（データ消去プログラム）を実行することによって実現される。
【０１４４】
また、上記アプリケーションプログラムは、例えばフレキシブルディスク，ＣＤ（ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷなど），ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−ＲＡＭ，ＤＶＤ−Ｒ，ＤＶＤ−ＲＷ，ＤＶＤ＋Ｒ，ＤＶＤ＋ＲＷなど），ブルーレイディスク等のコンピュータ読取可能な記録媒体に記録された形態で提供される。この場合、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。
【０１４５】
ここで、コンピュータとは、ハードウエアとＯＳとを含む概念であり、ＯＳの制御の下で動作するハードウエアを意味している。また、ＯＳが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウエアは、少なくとも、ＣＰＵ等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取る手段とをそなえている。上記アプリケーションプログラムは、上述のようなコンピュータに、バックアップ制御部１２，リストア制御部１３，取得部１３１，データ消去制御部１４，決定部１４１および消去部１４２としての機能を実現させるプログラムコードを含んでいる。また、その機能の一部は、アプリケーションプログラムではなくＯＳによって実現されてもよい。
【０１４６】
〔５〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
【０１４７】
（付記１）
コンピュータによってアクセスされる記憶装置における記憶領域のリストアを実行する際に、前記リストア実行前の前記記憶領域の使用状況に係る第１情報と前記リストア実行後の前記記憶領域の使用状況に係る第２情報とを取得して前記記憶領域とは異なる第１保存領域に保存し、
前記第１保存領域に保存された前記第１情報および前記第２情報に基づいて、前記記憶領域のうち、前記リストア実行後に上書き消去を実行すべき消去対象領域を決定し、
決定された前記消去対象領域に対する上書き消去を実行する、
処理を、前記コンピュータに実行させる、データ消去プログラム。
【０１４８】
（付記２）
前記第１情報または前記第２情報の取得中に取得情報量が前記第１保存領域の容量に達した場合、前記第１保存領域における前記第１情報または前記第２情報を、前記記憶装置における第２保存領域に保存してから、後続の前記第１情報または前記第２情報を前記第１保存領域に保存し、
前記第１保存領域および前記第２保存領域に保存した前記第１情報および前記第２情報に基づいて、前記消去対象領域を決定する、
処理を、前記コンピュータに実行させる、付記１記載のデータ消去プログラム。
【０１４９】
（付記３）
前記第１情報または前記第２情報の複数種類のデータ形式の中から、前記第１情報または前記第２情報のデータサイズが最も小さくなるデータ形式を選択し、選択されたデータ形式で前記第１情報と前記第２情報とを取得して前記第１保存領域に保存する、
処理を、前記コンピュータに実行させる、付記１または付記２に記載のデータ消去プログラム。
【０１５０】
（付記４）
前記複数種類のデータ形式として、少なくとも、前記記憶領域における各データブロックの前記使用状況を各ビットに対応させて管理する第１形式と、前記記憶領域における前記使用状況をデータ開始位置およびデータ長で管理する第２形式とが含まれる、付記３記載のデータ消去プログラム。
【０１５１】
（付記５）
前記記憶領域にリストアすべきデータを前記消去対象領域に書き込むことによって前記消去対象領域に対する上書き消去を行なう、
処理を、前記コンピュータに実行させる、付記１〜付記４のいずれか一項に記載のデータ消去プログラム。
【０１５２】
（付記６）
前記第１情報として、前記記憶領域において前記リストア実行開始直前に使用域になっている第１領域の情報と、前記記憶領域において前回のリストア後のシステム稼働中にデータを書き込まれた第２領域の情報と、前記記憶領域において前記前回のリストア完了時に使用域であった第３領域の情報とが含まれ、
前記第２情報として、前記記憶領域において前記リストア実行後に未使用域となる第４領域の情報が含まれる、付記１〜付記５のいずれか一項に記載のデータ消去プログラム。
【０１５３】
（付記７）
前記第１領域，前記第２領域および前記第３領域の論理和結果と、前記第４領域との論理積結果を、前記消去対象領域として決定する、
処理を、前記コンピュータに実行させる、付記６記載のデータ消去プログラム。
【０１５４】
（付記８）
前記リストア実行開始直前における前記記憶領域を参照して前記第１領域の情報を取得し、
前記前回のリストア後のシステム稼働中に前記記憶領域に対する前記コンピュータのアクセスを監視して前記第２領域の情報を取得し、
前記前回のリストア完了時における前記記憶領域を参照して前記第３領域の情報を取得し、
前記記憶領域に対しリストアされるバックアップデータを参照して前記第４領域の情報を取得する、
処理を、前記コンピュータに実行させる、付記６または付記７に記載のデータ消去プログラム。
【０１５５】
（付記９）
記憶領域を有するアクセス対象の記憶装置と、
前記記憶領域とは異なる第１保存領域と、
前記記憶領域のリストアを実行する際に、前記リストア実行前の前記記憶領域の使用状況に係る第１情報と前記リストア実行後の前記記憶領域の使用状況に係る第２情報とを取得して前記第１保存領域に保存する取得部と、
前記第１保存領域に保存された前記第１情報および前記第２情報に基づいて、前記記憶領域のうち、前記リストア実行後に上書き消去を実行すべき消去対象領域を決定する決定部と、
前記決定部によって決定された前記消去対象領域に対する上書き消去を実行する消去部と、を備えた、情報処理装置。
【０１５６】
（付記１０）
前記取得部は、前記第１情報または前記第２情報の取得中に取得情報量が前記第１保存領域の容量に達した場合、前記第１保存領域における前記第１情報または前記第２情報を、前記記憶装置における第２保存領域に保存してから、後続の前記第１情報または前記第２情報を前記第１保存領域に保存し、
前記決定部は、前記第１保存領域および前記第２保存領域に保存した前記第１情報および前記第２情報に基づいて、前記消去対象領域を決定する、付記９記載の情報処理装置。
【０１５７】
（付記１１）
前記取得部は、前記第１情報または前記第２情報の複数種類のデータ形式の中から、前記第１情報または前記第２情報のデータサイズが最も小さくなるデータ形式を選択し、選択されたデータ形式で前記第１情報と前記第２情報とを取得して前記第１保存領域に保存する、付記９または付記１０に記載の情報処理装置。
【０１５８】
（付記１２）
前記複数種類のデータ形式として、少なくとも、前記記憶領域における各データブロックの前記使用状況を各ビットに対応させて管理する第１形式と、前記記憶領域における前記使用状況をデータ開始位置およびデータ長で管理する第２形式とが含まれる、付記１１記載の情報処理装置。
【０１５９】
（付記１３）
前記記憶領域にリストアすべきデータを前記消去対象領域に書き込むことによって前記消去対象領域に対する上書き消去を行なうリストア制御部をさらに備える、付記９〜付記１２のいずれか一項に記載の情報処理装置。
【０１６０】
（付記１４）
前記第１情報として、前記記憶領域において前記リストア実行開始直前に使用域になっている第１領域の情報と、前記記憶領域において前回のリストア後のシステム稼働中にデータを書き込まれた第２領域の情報と、前記記憶領域において前記前回のリストア完了時に使用域であった第３領域の情報とが含まれ、
前記第２情報として、前記記憶領域において前記リストア実行後に未使用域となる第４領域の情報が含まれる、付記９〜付記１３のいずれか一項に記載の情報処理装置。
【０１６１】
（付記１５）
前記決定部は、前記第１領域，前記第２領域および前記第３領域の論理和結果と、前記第４領域との論理積結果を、前記消去対象領域として決定する、付記１４記載の情報処理装置。
【０１６２】
（付記１６）
前記取得部は、
前記リストア実行開始直前における前記記憶領域を参照して前記第１領域の情報を取得し、
前記前回のリストア後のシステム稼働中に前記記憶領域に対する前記コンピュータのアクセスを監視して前記第２領域の情報を取得し、
前記前回のリストア完了時における前記記憶領域を参照して前記第３領域の情報を取得し、
前記記憶領域に対しリストアされるバックアップデータを参照して前記第４領域の情報を取得する、付記１４または付記１５に記載の情報処理装置。
【０１６３】
（付記１７）
コンピュータによってアクセスされる記憶装置における記憶領域のリストアを実行する際に、前記リストア実行前の前記記憶領域の使用状況に係る第１情報と前記リストア実行後の前記記憶領域の使用状況に係る第２情報とを取得して前記記憶領域とは異なる第１保存領域に保存し、
前記第１保存領域に保存された前記第１情報および前記第２情報に基づいて、前記記憶領域のうち、前記リストア実行後に上書き消去を実行すべき消去対象領域を決定し、
決定された前記消去対象領域に対する上書き消去を実行する、データ消去方法。
【０１６４】
（付記１８）
前記第１情報または前記第２情報の取得中に取得情報量が前記第１保存領域の容量に達した場合、前記第１保存領域における前記第１情報または前記第２情報を、前記記憶装置における第２保存領域に保存してから、後続の前記第１情報または前記第２情報を前記第１保存領域に保存し、
前記第１保存領域および前記第２保存領域に保存した前記第１情報および前記第２情報に基づいて、前記消去対象領域を決定する、付記１７記載のデータ消去方法。
【０１６５】
（付記１９）
コンピュータによってアクセスされる記憶装置における記憶領域のリストアを実行する際に、前記リストア実行前の前記記憶領域の使用状況に係る第１情報と前記リストア実行後の前記記憶領域の使用状況に係る第２情報とを取得して前記記憶領域とは異なる第１保存領域に保存し、
前記第１保存領域に保存された前記第１情報および前記第２情報に基づいて、前記記憶領域のうち、前記リストア実行後に上書き消去を実行すべき消去対象領域を決定し、
決定された前記消去対象領域に対する上書き消去を実行する、
処理を、前記コンピュータに実行させる、データ消去プログラムを記録したコンピュータ読取可能な記録媒体。
【０１６６】
（付記２０）
プロセッサと、
記憶領域を有し前記プロセッサによってアクセスされる記憶装置と、
前記記憶領域とは異なる第１保存領域と、を有し、
前記プロセッサは、
前記記憶領域のリストアを実行する際に、前記リストア実行前の前記記憶領域の使用状況に係る第１情報と前記リストア実行後の前記記憶領域の使用状況に係る第２情報とを取得して前記記憶領域とは異なる第１保存領域に保存し、
前記第１保存領域に保存された前記第１情報および前記第２情報に基づいて、前記記憶領域のうち、前記リストア実行後に上書き消去を実行すべき消去対象領域を決定し、
決定された前記消去対象領域に対する上書き消去を実行する、情報処理装置。
【符号の説明】
【０１６７】
１    情報処理装置
１０    ＣＰＵ（処理部，コンピュータ）
１１    メイン制御部
１２    バックアップ制御部
１３    リストア制御部
１３１    取得部
１４    データ消去制御部
１４１    決定部
１４２    消去部
１５    ファイルシステム
１６    ディスクドライバ
１７    書込み監視ドライバ（取得部）
２０    記憶装置（ＨＤＤ，ＳＤＤ等）
２１    リストア対象の記憶領域（区画）
２２    第２保存領域（空き領域）
２３    バックアップデータ
３０    メモリ（ＲＡＭ等，第１保存領域）
４０    バス
【図１】
2014191397.tif 000003
【図２】
2014191397.tif 000004
【図３】
2014191397.tif 000005
【図４】
2014191397.tif 000006
【図５】
2014191397.tif 000007
【図６】
2014191397.tif 000008
【図７】
2014191397.tif 000009
【図８】
2014191397.tif 000010
【図９】
2014191397.tif 000011
【図１０】
2014191397.tif 000012
【図１１】
2014191397.tif 000013
【図１２】
2014191397.tif 000014
【図１３】
2014191397.tif 000015
【図１４】
2014191397.tif 000016
【図１５】
2014191397.tif 000017
【図１６】
2014191397.tif 000018
【図１７】
2014191397.tif 000019
【図１８】
2014191397.tif 000020
【図１９】
2014191397.tif 000021
【図２０】
2014191397.tif 000022
【図２１】
2014191397.tif 000023
【図２２】
2014191397.tif 000024
【図２３】
2014191397.tif 000025
【図２４】
2014191397.tif 000026
【図２５】
2014191397.tif 000027
【図２６】
2014191397.tif 000028
【図２７】
2014191397.tif 000029
【図２８】
2014191397.tif 000030
【図２９】
2014191397.tif 000031
【図３０】
2014191397.tif 000032
【図３１】
2014191397.tif 000033
【図３２】
2014191397.tif 000034
【図３３】
2014191397.tif 000035
【図３４】
2014191397.tif 000036
【図３５】
2014191397.tif 000037
【図３６】
2014191397.tif 000038