(57)【特許請求の範囲】
【請求項１】
ファイルシステムをクリアアップするための方法であって、
クリアアップ命令に従ってボリュームを開き、ロックするステップと、
前記ボリュームに対応するディスク上の不要情報をクリアアップするステップと、
前記ボリュームに対応する前記ディスク上の前記不要情報をクリアアップした後に前記ボリュームのロックを解除するステップとを含み、
前記ボリュームに対応するディスク上の前記不要情報をクリアアップするステップは、
前記クリアアップ命令によって指定された前記ボリュームがフォーマットされ、前記ボリュームがフォーマットされた後にファイルが追加又は削除されていないか否かを判断するステップと、
前記クリアアップ命令によって指定された前記ボリュームがフォーマットされ、前記ボリュームがフォーマットされた後にファイルが追加又は削除されていない場合には、前記ボリュームに対応する前記ディスク内のボリューム空き容量をクリアアップするステップと、
前記クリアアップ命令によって指定された前記ボリュームがフォーマットされていないか、又はファイルが追加若しくは削除されている場合には、前記ボリュームに対応する前記ディスク内の前記削除されたファイルによって占有される前記情報をクリアアップし、かつ前記ボリュームに対応する前記ディスク内の前記ボリューム空き容量をクリアアップするステップとを含み、
前記削除されたファイルによって占有される前記情報は、前記削除されたファイルの名称、前記削除されたファイルの時刻、および前記削除されたファイルの内容を備える、ファイルシステムをクリアアップするための方法。
【請求項２】
前記ボリュームに対応する前記ディスク内の前記削除されたファイルによって占有される前記情報をクリアアップするステップは、
前記ボリューム内でメインファイルテーブル(MFT)をトラバースするステップと、
前記MFT内の前記削除されたファイルによって占有される前記情報をクリアアップするステップとを含む、請求項１に記載の方法。
【請求項３】
前記ボリュームに対応する前記ディスク内の前記削除されたファイルによって占有される前記情報をクリアアップするステップは、
前記ボリュームのディレクトリエントリをトラバースするステップと、
エントリ名の第1のバイトが前記ディレクトリエントリ内で0xE5であるエントリをクリアアップするステップとを含む、請求項１に記載の方法。
【請求項４】
前記ボリュームに対応する前記ディスク内の前記ボリューム空き容量をクリアアップするステップは、
前記ファイルシステム内で前記ボリュームのビットテーブルを検索するステップと、
前記ビットテーブル内で空きとしてマークされたディスク空間を消去するステップとを含む、請求項１に記載の方法。
【請求項５】
前記ボリュームに対応する前記ディスク内の前記ボリューム空き容量をクリアアップするステップは、
障害が発生するまで、前記ボリュームに対応する前記ディスク上に一時ファイルを絶えず作成するステップと、
前記一時ファイルをクリアアップするステップとを含む、請求項１に記載の方法。
【請求項６】
前記ボリュームがシステムディスクであるとき、前記方法は、
前記ボリュームのpagefile.sysをクリアアップするステップを更に含む、請求項１に記載の方法。
【請求項７】
請求項１に記載の方法をコンピュータが実行するためにデータ処理プログラムを記憶する持続性記憶媒体。
【請求項８】
ファイルシステムをクリアアップするためのデバイスであって、
クリアアップ命令に従ってボリュームを開き、ロックするロックモジュールと、
前記ボリュームに対応するディスク上の不要情報をクリアアップするクリアアップモジュールと、
前記クリアアップモジュールが前記不要情報をクリアアップした後に、前記ボリュームのロックを解除するロック解除モジュールとを備え、
前記クリアアップモジュールは、
前記ボリュームに対応するディスク内の削除されたファイルによって占有される前記情報をクリアする第1のクリアアップモジュールと、
前記ボリュームに対応する前記ディスク内のボリューム空き容量をクリアアップする第2のクリアアップモジュールとを備え、
前記デバイスが判断モジュールを更に備え、前記判断モジュールは、前記クリアアップ命令によって指定された前記ボリュームがフォーマットされ、前記ボリュームがフォーマットされた後にファイルが追加又は削除されていないか否かを判断し、前記クリアアップ命令によって指定された前記ボリュームがフォーマットされ、前記ボリュームがフォーマットされた後にファイルが追加又は削除されていない場合には、前記第2のクリアアップモジュールに、前記ボリュームに対応する前記ディスク内の前記ボリューム空き容量をクリアアップするように指示し、前記クリアアップ命令によって指定された前記ボリュームがフォーマットされていないか、又はファイルが追加若しくは削除されている場合には、前記第1のクリアアップモジュールに、前記ボリュームに対応する前記ディスク内の前記削除されたファイルによって占有される前記情報をクリアアップするように指示し、かつ第2のクリアアップモジュールに、前記ボリュームに対応する前記ディスク内の前記ボリューム空き容量をクリアアップするように指示し、
前記削除されたファイルによって占有される前記情報は、前記削除されたファイルの名称、前記削除されたファイルの時刻、および前記削除されたファイルの内容を備える、ファイルシステムをクリアアップするためのデバイス。
【請求項９】
前記第1のクリアアップモジュールは、
ニューテクノロジーファイルシステム(NTFS)クリアアップサブモジュールであって、NTFSファイルシステム内の前記ボリュームのメインファイルテーブル(MFT)をトラバースし、前記MFT内の前記削除されたファイルによって占有される前記情報をクリアアップする、NTFSクリアアップサブモジュールと、
ファイルアロケーションテーブル(FAT)クリアアップサブモジュールであって、前記FATクリアアップサブモジュールは、FATファイルシステム内の前記ボリュームのディレクトリエントリをトラバースし、エントリ名の第1のバイトが前記ディレクトリエントリ内の0xE5であるエントリをクリアアップする、FATクリアアップサブモジュールとを備える、請求項８に記載のデバイス。
【請求項１０】
前記第2のクリアアップモジュールは
ファイルシステム内の前記ボリュームのビットテーブルを検索し、前記ビットテーブル内で空きとしてマークされたディスク空間を特定する、空き容量特定サブモジュールと、
前記ビットテーブル内で空きとしてマークされた前記ディスク空間を消去する消去サブモジュールとを備える、請求項８に記載のデバイス。
【請求項１１】
前記第2のクリアアップモジュールは、
障害が発生するまで、前記ボリューム空き容量上に一時ファイルを絶えず作成する一時ファイル作成サブモジュールと、
前記一時ファイルをクリアアップする一時ファイルクリアアップサブモジュールとを備える、請求項８に記載のデバイス。
【請求項１２】
前記クリアアップモジュールは、
前記ボリュームがシステムディスクであるか否かを判断し、前記ボリュームが前記システムディスクである場合には、前記ボリュームのpagefile.sysをクリアアップする第3のクリアアップモジュールを更に備える、請求項８に記載のデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示はファイルシステムの分野に関し、より詳細には、ファイルシステムをクリーンアップするための方法、デバイス及び記憶媒体に関する。
【背景技術】
【０００２】
ウインドウズが操作されるときに、種々の一時ファイルが生成される場合がある。一時ファイルは、ウェブブラウザ内に保持されるユーザ情報と、オフィスソフトウェアのトレースのような、ユーザのプライバシに関連する記録とを含む場合がある。従来の方法では、ウェブブラウザ及び種々のソフトウェアを使用することによって生成されるユーザのプライバシはクリーンアップすることができる。
【０００３】
しかしながら、従来のオペレーティングシステム(OS)では、ウェブブラウザ及び種々のソフトウェアを使用する過程で生成されるユーザのプライバシ情報は別として、ウインドウズのファイルシステムを使用する過程においてもユーザのプライバシ情報が生成される場合がある。例えば、コンピュータのディスク内に大量の個人ファイルが記憶される場合があり、それらの個人ファイルは、そのユーザに関する大量のプライバシ情報を含む場合がある。ユーザによって使用されるコンピュータが、何らかの理由(作業ユニット内の配置転換等)から別の人によって使用される場合には、コンピュータに記憶されたファイルが削除される場合があるか、又はコンピュータのディスクがフォーマットされる場合がある。しかしながら、これらの操作によってファイルは完全にはクリーンアップされない場合がある。ファイルデータ及びファイルに関連するデータがディスク内に隠れている場合があり、そのユーザに関する大量のプライバシ情報がそのデータ内に存在する場合がある。データ回復ソフトウェアが使用される場合には、削除されたファイルのデータの全て又は一部が復元される場合がある。それゆえ、ファイルのデータ内のユーザのプライバシは漏洩する恐れがあり、ファイルシステムは安全でない場合がある。
【発明の概要】
【課題を解決するための手段】
【０００４】
本開示の例が、ファイルシステムのセキュリティを高める、ファイルシステムをクリアアップするための方法、デバイス及び記憶媒体を提供することができる。
【０００５】
本開示の一例が、ファイルシステムをクリアアップするための方法を提供することができる。その方法は、
クリアアップされるべきボリュームを指示するクリアアップ命令に従ってボリュームを開き、ロックすることと、
ボリュームに対応するディスク上の不要情報（garbage information）をクリアアップすることと、
ボリュームに対応するディスク上の不要情報をクリアアップした後に、そのボリュームのロックを解除することとを含むことができる。
【０００６】
本開示の別の例は、本開示の例の方法を実行する、データ処理プログラムを記憶する記憶媒体を提供することができる。
【０００７】
本開示の別の例は、ファイルシステムをクリアアップするためのデバイスを提供することができる。そのデバイスは、
クリアアップされるべきボリュームを指示するクリアアップ命令に従ってボリュームを開き、ロックするロックモジュールと、
ボリュームに対応するディスク上の不要情報をクリアアップするクリアアップモジュールと、
クリアアップモジュールが不要情報をクリアアップした後に、そのボリュームのロックを解除するロック解除モジュールとを含むことができる。
【０００８】
従来の方法と比べると、本開示の例では、クリアアップ命令が受信されるとき、ボリュームに対応するディスク上の不要情報をクリアアップすることができる。ディスク上の不要情報は、削除されたファイル、又はフォーマットされたボリュームに関連するデータを含む場合があるので、そのボリュームに対応するディスク上の不要情報をクリアアップすることによって、ファイルシステム内に残ったユーザのプライバシを含むファイルのデータを完全にクリアアップすることができる。ユーザのプライバシの漏洩を回避することができ、ファイルシステムのセキュリティを高めることができる。
【図面の簡単な説明】
【０００９】
【図１】ニューテクノロジーファイルシステム(NTFS)の構造を示す概略図である。
【図２】ファイルアロケーションテーブル(FAT)ファイルシステムの構造を示す概略図である。
【図３】本開示の一例による、ファイルシステムをクリアアップするための方法を示す流れ図である。
【図４】本開示の一例による、ファイルシステムをクリーンアップするための方法を示す流れ図である。
【図５】本開示の一例による、ファイルシステムをクリーンアップするためのデバイスを示す概略図である。
【図６】本開示の一例による、ファイルシステムをクリーンアップするためのデバイスの構造を示す概略図である。
【図７】本開示の一例による、ファイルシステムをクリーンアップするためのデバイスの別の構造を示す概略図である。
【図８】本開示の一例による、第1のクリアアップモジュールの構造を示す概略図である。
【図９ａ】本開示の一例による、第2のクリアアップモジュールの構造を示す概略図である。
【図９ｂ】本開示の一例による、別の第2のクリアアップモジュールの構造を示す概略図である。
【図１０】本開示の一例による、ファイルシステムをクリアアップするための別のデバイスの構造を示す概略図である。
【発明を実施するための形態】
【００１０】
本開示の例における技術方式は、本開示の例の数字を伴って明確に、かつ完全に説明することができる。以下に記述される例は、本開示の例の一部とすることができるが、全ての例であるとは限らない。本開示の例によれば、創造的な作業を伴うことなく本開示の当業者によって得られた他の例も本開示によって保護される場合がある。
【００１１】
本発明の目的、技術的解決手段及び利点を更に明らかにするために、本発明は添付の図面を参照しながら以下に詳細に記述される。
【００１２】
本開示の一例におけるファイルシステムをクリアアップするための方法を提案する前に、本開示に関連する多少の知識が以下に記述される場合がある。
【００１３】
図1は、NTFSファイルシステムの構造を示す概略図である。図1を参照すると、Dos Boot Record(DBR)はNTFSボリュームブートセクタとすることができ、NTFSボリュームのブート情報を含むことができる。DATAはデータセクタとすることができ、種々のファイル及びフォルダのデータを含むことができる。マスターファイルテーブル(MFT)はNTFSメタデータとすることができ、NTFSボリューム情報、ファイル及びフォルダの属性のような重要な情報を記憶するために用いることができる。NTFS内の各ファイルは、1つ又は複数の(MFT)に対応する場合がある。ファイルのデータが小さい場合には、NTFSはMFT内にファイルのデータを記憶することができる。NTFS内のファイルがウインドウズによって削除される場合があるとき、以下の操作が実行される場合がある。
【００１４】
第一に、MFT内のバイトが、ファイルが削除されている場合があること、及びMFT空間が解放されてもよいことを指示するためにマークされる場合がある。
【００１５】
第二に、親フォルダ内のインデックスがクリアアップされる場合がある。
【００１６】
第三に、そのファイルのデータによって占有されるディスク空間がビットテーブルから解放される場合がある。ディスク空間の解放は、ファイルのデータによって占有されるディスク空間を実際にクリアアップするのではなく、ファイルシステムに、そのファイルによって占有されるディスク空間に新たなデータを書き込むように通知する場合がある。新たに書き込まれたデータは、元のデータを上書きする場合がある。
【００１７】
上記のことから、NTFSファイルシステムでは、ウインドウズによってクリアアップされないユーザデータは、削除されたファイルによって占有される情報と、ファイルのデータとを含む場合があることがわかる。削除されたファイルによって占有される情報は、ファイル名、ファイル時刻及びファイルサイズのような、MFTに記憶されたデータを含む場合がある。MFTに記憶されたデータは、ユーザのプライバシを含む場合があり、プライバシ漏洩を引き起こす恐れがある。ファイルのデータは、DATA内のデータ、及びMFTに記憶されるファイルのデータを含む場合がある。ファイルのデータは、新たなデータによって上書きされることなく、ディスク内に保持される場合があり、プライバシ漏洩を引き起こす恐れがある。
【００１８】
ファイルが削除されており、クリアアップされていない場合があるユーザデータは、ディスク内に依然として保持されている場合があるが、再び使用することはできないので、ウインドウズによってクリアアップされない場合があるユーザデータは、ディスク不要情報と呼ばれる場合もある。
【００１９】
図2は、FATファイルシステムの構造を示す概略図である。図2を参照すると、DBRはFATボリュームブートセクタであり、FATボリュームのブート情報を含むことができる。Reserved SectorsはFAT予約セクタとすることができる。1つ又は複数のFATはFATテーブルとすることができ、ディレクトリエントリを含むことができる。各ファイルは1つのディレクトリエントリに対応することができる。ディレクトリエントリは、ファイル名、ファイル時刻及びファイルサイズのような情報を含むことができる。そのデータは、削除されたファイルによって占有される情報と呼ばれる場合もある。RootDirectoryはルートディレクトリとすることができ、FAT12/FAT16において設定することができる。DATAはデータセクタとすることができる。FATファイルがウインドウズによって削除される場合には、以下の操作が実行される場合がある。
【００２０】
第一に、ファイルのディレクトリエントリ及び長いファイル名の第1のバイトが、ファイルが解放されてもよいことを指示するために、E5として記録される場合がある。
【００２１】
第二に、ファイルのデータによって占有される空間が、FATテーブルからクリアアップされる場合がある。
【００２２】
上記のことから、FATファイルシステムでは、ウインドウズによってクリアアップされない場合があるユーザデータは、削除されたファイルによって占有される情報と、ファイルのデータとを含む場合があることがわかる。削除されたファイルによって占有される情報は、ファイル名、ファイル時刻及びファイルサイズのような、FAT内のディレクトリエントリに記憶されるデータを含むことができる。ファイルが削除されており、クリアアップされていない場合があるユーザデータは、ディスク内に依然として保持されている場合があるが、再び使用することはできないので、ウインドウズによってクリアアップされない場合があるユーザデータは、ディスク不要情報と呼ばれる場合もある。
【００２３】
NTFSファイルシステムにおいて、又はFATファイルシステムにおいて、ファイルが削除されても、ファイルのデータはディスクからクリアアップされない場合がある。代わりに、ファイルが削除されている場合があることを指示するために、セクタテーブル内のMFT又はFATのディレクトリエントリにマークが追加される場合がある。新たなデータがディスクに書き込まれる場合には、そのシステムは、マークされたファイルを新たなデータで上書きすることができる。それゆえ、ファイルが削除されるとき、ウインドウズシステムはファイルを完全にはクリアアップしない場合があり、結果としてユーザのプライバシが漏洩される恐れがある。
【００２４】
ファイルシステム内に残ったユーザのプライバシを含むデータを完全にクリアアップし、ユーザのプライバシの漏洩を回避するために、本開示の一例が、ファイルシステムをクリアアップするための方法を提供することができる。図3を参照すると、その方法は以下のブロックを含むことができる。
【００２５】
ブロック301において、クリアアップ命令に従って、ボリュームを開き、ロックすることができる。クリアアップ命令はボリュームを指示することができる。
【００２６】
ブロック302において、ボリュームに対応するディスク上の不要情報をクリアアップすることができ、ボリュームがクリアアップされた後に、そのボリュームのロックを解除することができる。
【００２７】
ボリュームはハードディスク上の記憶エリアとすることができることは当業者によってよく知られている場合がある。ドライブがファイルシステム(FAT又はNTFS等)を用いてボリュームをフォーマットし、そのドライブに対するドライブ番号を割り当てることができる。1つのハードディスクは数多くのボリュームを含む場合がある。1つのボリュームは、数多くのディスク上に数多くのサブボリュームを含む場合がある。本開示のこの例におけるクリアアップ操作は、コンピュータ内の1つのボリュームに対して実行される場合がある。ユーザが、クリアアップ操作を実行することができるボリュームを指定することができる。本開示のこの例では、ユーザがクリアアップ命令を送出するとき、選択オプションがポップアウトされ、ユーザに対して表示される場合があり、ユーザはボリュームを選択してボリュームをクリアアップするように求められる場合がある。
【００２８】
本開示のこの例では、ファイルシステムは変更される場合がある。それゆえ、ボリュームがクリアアップされるとき、ボリュームをロックして、そのボリュームに対して他のファイル操作を実行できないようにし、ファイルシステムの損傷を回避できるのを確実にすることができる。
【００２９】
本開示の一例によれば、ボリューム内のファイルが削除された後に、クリアアップ命令が送出される場合には、そのボリュームに対応するディスクの不要情報をクリアアップするための方法は、ボリュームに対応するディスク上で削除されたファイルによって占有される情報をクリアアップすることと、そのボリュームに対応するディスク内のボリューム空き容量を消去することとを含むことができる。
【００３０】
本開示の別の例によれば、ユーザがボリューム上でフォーマット操作を実行した後に、クリアアップ命令が送出される場合には、ファイルシステムがディスクをフォーマットした後に、ファイルシステムがファイルシステム内のメタデータをクリアアップすることができるので、ファイルシステム内のボリューム空き容量をクリアアップすることができる。それゆえ、ボリュームに対応するディスク上の不要情報をクリアアップするための方法は、
クリアアップ命令によって指定されたボリュームがフォーマットされているか否か、及びボリュームがフォーマットされた後にファイルが追加又は削除されていないか否かを判断することと、
クリアアップ命令によって指定されたボリュームがフォーマットされており、かつボリュームがフォーマットされた後にファイルが追加又は削除されていない場合には、そのボリュームに対応するディスク内のボリューム空き容量をクリアアップすることと、
クリアアップ命令によって指定されたボリュームがフォーマットされていないか、又はファイルが追加若しくは削除された場合には、そのボリュームに対応するディスク上で削除されたファイルによって占有される情報をクリアアップし、そのボリュームに対応するディスク内のボリューム空き容量をクリアアップすることとを含むことができる。
【００３１】
ボリュームに対応するディスク上で削除されたファイルによって占有される情報は、ユーザのプライバシ又はユーザのトレースを含むことができる。セキュリティを高めるために、その情報はクリアアップされることが必要な場合がある。
【００３２】
異なるファイルシステムに関しては、ボリュームに対応するディスク上で削除されたファイルによって占有される情報をクリアアップするための方法は異なる場合がある。
【００３３】
NTFSファイルシステムでは、削除されたファイルによって占有される情報はMFT内に記憶される場合がある。MFTはボリューム上の各ファイルのインデックスとすることができる。MFTは、ファイル毎に「属性」と呼ばれる記憶を記憶することができる。各属性は、種々のタイプの情報を記憶することができる。その情報は、ファイル名、ファイル時刻及びファイルの内容等を含むことができる。ファイル時刻は、作成時刻、変更時刻及び最終アクセス時刻を含むことができる。属性はユーザのプライバシ及びユーザのトレースを含む場合がある。
【００３４】
それゆえ、NTFSファイルシステムでは、ボリュームに対応するディスク上で削除されたファイルによって占有される情報をクリアアップするための方法は、ボリュームのMFTをトラバースすることと、MFT内の削除されたファイルによって占有される情報をクリアアップすることとを含むことができる。ファイルが削除される場合があることを指示するために、ファイルが削除された後に、そのファイルに対応するMFTのバイトにマークを追加することができるので、削除されたファイルによって占有されるMFT情報はMFT内のマークに従って見つけることがきる。MFT情報はファイル名、ファイル時刻及びファイルの内容等を含むことができる。
【００３５】
FATファイルシステムでは、各ファイルはディレクトリエントリに対応することができる。ディレクトリエントリは、ファイル名、ファイル時刻及びサイズサイズのような属性情報を含むことができる。削除されたファイルによって占有される情報はディレクトリエントリに記憶される場合がある。FATファイルがウインドウズによって削除されるとき、ファイルのディレクトリエントリ及び長いファイル名の第1のバイトが0xE5として記憶される場合がある。それゆえ、そのエントリ名の第1のバイトがディレクトリエントリ内で0xE5であるエントリが、削除されたファイルによって占有される情報とすることができる。
【００３６】
それゆえ、FATファイルシステムでは、ボリュームに対応するディスク上で削除されたファイルによって占有される情報をクリアアップするための方法は、ボリュームのディレクトリエントリをトラバースすることと、エントリ名の第1のバイトがディレクトリエントリ内で0xE5であるエントリをクリアアップすることとを含むことができる。
【００３７】
ボリュームに対応するディスクのボリューム空き容量において、ファイルが削除されるにしても、ボリュームがフォーマットされるにしても、削除されたファイルは完全にはクリアアップされない場合がある。これに対して、ファイルが削除されている場合があることを指示するために、セクタテーブル内のファイルのMFT又はFATのディレクトリエントリにマークが追加される場合がある。しかしながら、ファイルのデータはディスク内に依然として記憶されている場合がある。ファイルによって占有される空間は、空き容量としてマークされる場合がある。新たなファイルが空き容量に書き込まれるとき、空き容量内のデータは新たなファイルによって上書きされる場合がある。それゆえ、ファイルが削除されるとき、又はファイルがフォーマットされるとき、空き容量内のファイルのデータは実際にはクリアアップされていない場合があり、結果として、ユーザのプライバシが漏洩される恐れがある。
【００３８】
それゆえ、先に言及されたように、ファイルシステム内のユーザのプライバシを含むファイルのデータを完全にクリアアップし、ユーザのプライバシの漏洩を回避するために、ボリュームに対応するディスク内のボリューム空き容量はクリアアップされることが必要な場合がある。ボリューム空き容量は、ディスク上の不要情報の場合もある。ボリューム空き容量をクリアアップするための2つの方法が存在する場合がある。
【００３９】
ボリューム空き容量をクリアアップするための第1の方法は、ファイルシステム内のボリュームのビットテーブルを検索することと、ビットテーブル内で空きとしてマークされたディスク空間を消去することとを含むことができる。ビットテーブルは、ボリュームの空き容量を指示することができる。ビットテーブル内で空きとしてマークされた空間はボリューム空き容量とすることができる。
【００４０】
ボリューム空き容量をクリアアップするための第2の方法は、障害が発生するまで、ボリュームに対応するディスク上で一時ファイルを絶えず作成することと、作成された一時ファイルをクリアアップすることを含むことができる。作成された一時ファイルは、ユーザのプライバシの漏洩を回避するために、ボリューム上の元のデータを上書きすることができる。4GであるFAT32ファイルシステム内の最大ファイルのサイズのような、一時ファイルのサイズの限界に起因して、ボリューム空き容量がファイルの限界よりも大きい場合には、書込み動作に失敗する場合があるまで、一時ファイルは何度も書き込まれることが必要な場合があることに留意されたい。書込み動作が完了後、書き込まれた全ての一時ファイルが削除できた後に、その効果を達成することができる。
【００４１】
さらに、ユーザのプライバシの漏洩を防ぐために、ボリュームがシステムディスクであるとき、その方法は、pagefile.sysをクリアアップすることを更に含むことができる。pagefile.sysをクリアアップするための方法は、レジストリキーHKLM＼SYSTEM＼CurrentControlSet＼Control＼SessionManager＼Memory Management＼ClearPageFileAtShutdownの値を1と設定することと、システムを再始動することと、キーの値を削除することとを含むことができる。pagefile.sysは導入プロセスにおいて作成される仮想メモリページングファイルとすることができることは当業者によってよく知られている場合がある。pagefile.sysは、ユーザのプライバシに関連する場合があるユーザのトレースを保管する場合がある。pagefile.sysのサイズはシステム仮想メモリに従って設定された最小値とすることができる。仮想メモリは800MB〜1600MBと設定することができ、ローカルドライブディスク内に800MBのpagefile.sysが存在する場合があると仮定することができる。
【００４２】
pagefile.sysをクリアアップするためのプロセスは、ボリュームのロックが解除される前に、又はボリュームのロックが解除された後に実行することができ、ボリュームのロック操作によって影響を及ぼされない場合があることに留意されたい。
【００４３】
本開示のこの例によって提供される方法によれば、ファイルシステム内のユーザのプライバシは、クリアアップ命令を受信した後に、ボリュームに対応するディスク上で不要情報をクリアアップすることによって完全にクリアアップすることができる。それゆえ、ユーザのプライバシの漏洩を回避することができ、ファイルシステムのセキュリティを高めることができる。
【００４４】
図4は、本開示の一例によるファイルシステムをクリアアップするための方法を示す流れ図である。図4を参照すると、その方法は以下のブロックを含むことができる。
【００４５】
ブロック401において、クリアアップ命令が受信される場合がある。クリアアップ命令はボリュームを指示することができる。
【００４６】
クリアアップ命令は、ユーザによってトリガーすることができるか、アプリケーションが操作されるときに、予め設定された時間間隔においてファイルシステムによってトリガーすることができるか、ユーザがボリュームをフォーマットした後に自動的にトリガーすることができるか、又はユーザがボリュームをフォーマットした後にユーザによってトリガーすることができ、ユーザはクリアアップ命令をトリガーするように指示される。
【００４７】
ブロック402において、クリアアップ命令によって指定されるボリュームが開かれている場合があるか否かが判断することができる。ボリュームが開かれている場合には、以下のブロックを実行することができる。ボリュームが開かれていない場合には、そのフローは終了することができる。
【００４８】
そのボリュームはクリアアップされるべきボリュームとすることができる。ボリュームが開かれている場合、ボリュームを開くための動作が実行されると、開く際に障害が発生することが当業者によってよく知られている場合がある。
【００４９】
ブロック403において、ボリュームをロックすることができる。
【００５０】
本開示の例では、ファイルシステム上で変更が実行される場合があるので、そのボリューム上で他のファイル操作が実行できないようにし、ファイルシステムの損傷を回避するのを確実にするために、ボリュームは後続の削除操作前にロックされるべきであることに留意されたい。
【００５１】
ファイル上で実行されるロック操作又はロック解除操作は、FSCTL_LOCK_VOLUME /FSCTL_UNLOCK_VOLUME制御コードによって実施できることは当業者によってよく知られている場合がある。
【００５２】
ブロック404において、クリアアップ命令によって指定されたボリュームがフォーマットされ、ボリュームがフォーマットされた後にファイルが追加又は削除されていないか否かを判断することができる。クリアアップ命令によって指定されたボリュームがフォーマットされ、ボリュームがフォーマットされた後にファイルが追加又は削除されていない場合には、ブロック406を実行することができる。クリアアップ命令によって指定されたボリュームがフォーマットされていないか、又はファイルが追加若しくは削除されている場合には、ブロック405が実行される。
【００５３】
ブロック404において複数の判断方法が存在する場合がある。例えば、ユーザのフォーマット操作を監視することができる。ユーザによってボリュームがフォーマットされた後に、フォーマット操作及びクリアアップ命令のプロンプトをポップアウトすることができる。ボリューム上の操作は、ユーザがフォーマット操作及びクリーンアップ命令をトリガーする前にロックすることができる。すなわち、ユーザはボリュームに新たなファイルを追加することはできないか、又はボリュームからファイルを削除することはできない。ブロック401においてユーザによってトリガーされたクリアアップ命令がフォーマット操作及びクリアアップ命令である場合には、ブロック404において、クリアアップ命令によって指定されたボリュームがフォーマットされていない場合があり、ボリュームがフォーマットされた後にファイルが追加又は削除されていないと判断することができる。ブロック404の記述によって他の判断方法も存在する場合があることは本開示の当業者によってよく知られている場合がある。例えば、その判断は、OSの固有アプリケーションプログラミングインターフェース(API)に従って実行される場合があり、ここで繰り返されなくてもよい。
【００５４】
ブロック405において、ボリュームに対応するディスク上で削除されたファイルによって占有される情報をクリアアップすることができる。
【００５５】
ブロック405において、NTFSファイルシステムでは、情報を削除するための方法は、ボリュームのMFTをトラバースすることと、MFT内の削除されたファイルによって占有される情報をクリアアップすることとを含むことができる。FATファイルシステムでは、情報を削除するための方法は、ボリュームのディレクトリエントリをトラバースすることと、そのエントリ名の第1のバイトがディレクトリエントリ内の0xE5であるエントリをクリーンアップすることとを含むことができる。
【００５６】
ブロック406において、ボリュームに対応するディスク内のボリューム空き容量をクリアアップすることができる。
【００５７】
ボリューム空き容量をクリアアップするための2つの方法が存在する場合がある。
【００５８】
ボリューム空き容量をクリアアップするための第1の方法は、ファイルシステム内のボリュームのビットテーブルに問い合わせることと、ビットテーブル内の空きとしてマークされたディスク空間を消去することとを含むことができる。
【００５９】
ボリューム空き容量をクリアアップするための第2の方法は、障害が発生するまで、ボリュームに対応するディスク上で一時ファイルを絶えず作成することと、作成された一時ファイルをクリアアップすることとを含むことができる。
【００６０】
ブロック407において、ボリュームのロックを解除することができる。
【００６１】
クリアアップ操作が終了した後に、ボリューム上でロック解除操作を実行して、後続の操作を実行することができる。
【００６２】
本開示によって提供される例によれば、クリアアップ命令が受信されるとき、ボリュームの削除されるファイルによって占有される情報及びボリューム空き容量をクリアアップすることができる。それゆえ、ファイルシステム内のユーザのプライバシを完全にクリアアップすることができ、ユーザのプライバシの漏洩を回避することができ、ファイルシステムのセキュリティを高めることができる。
【００６３】
ユーザのトレースを完全にクリアアップし、ユーザのプライバシの漏洩を回避するために、本開示の一例は、ファイルシステムをクリアアップするためのデバイスを更に提供することができる。図5を参照すると、そのデバイスは、
クリアアップ命令に従ってボリュームを開き、ロックするロックモジュール501と、
ボリュームに対応するディスク上の不要情報をクリアアップするクリアアップモジュール502と、
クリアアップモジュール502が不要情報をクリアアップした後に、ボリュームのロックを解除するロック解除モジュール503とを含むことができる。クリアアップ命令は、クリアアップされるべきボリュームを指示することができる。
【００６４】
ボリュームに対応するディスク上の不要情報は、ボリュームのボリューム空き容量内の削除されるファイルによって占有される情報と、ボリュームに対応するディスク内のボリューム空き容量とを含むことができる。
【００６５】
一例によれば、図6を参照すると、クリアアップモジュール502は、
ボリュームに対応するディスク内の削除されるファイルによって占有される情報をクリアする第1のクリアアップモジュール521と、
ボリュームに対応するディスク内のボリューム空き容量をクリアアップする第2のクリアアップモジュール522とを含むことができる。
【００６６】
別の例によれば、図7を参照すると、図6に基づいて、クリアアップ方法を区別するために、クリアアップモジュール502は、
判断モジュール523を更に備え、判断モジュールは、クリアアップ命令によって指定されたボリュームがフォーマットされ、ボリュームがフォーマットされた後にファイルが追加又は削除されていないか否かを判断し、クリアアップ命令によって指定されたボリュームがフォーマットされ、ボリュームがフォーマットされた後にファイルが追加又は削除されていない場合には、第2のクリアアップモジュール522に、そのボリュームに対応するディスク内のボリューム空き容量をクリアアップするように指示し、クリアアップ命令によって指定されたボリュームがフォーマットされていないか、又はファイルが追加若しくは削除されている場合には、第1のクリアアップモジュール521に、そのボリュームに対応するディスク上で削除されるファイルによって占有される情報をクリアアップするように指示し、かつ第2のクリアアップモジュール522に、そのボリュームに対応するディスク内のボリューム空き容量をクリアアップするように指示する。
【００６７】
図8は、本開示の一例による、第1のクリアアップモジュール521の構造を示す概略図である。図8を参照すると、第1のクリアアップモジュール521は、
NTFSファイルシステム内のボリュームのMFTをトラバースし、MFT内の削除されるファイルによって占有される情報をクリアアップするNTFSクリアアップサブモジュール5211と、
FATファイルシステム内のボリュームのディレクトリエントリをトラバースし、エントリ名の第1のバイトがディレクトリエントリ内で0xE5であるエントリをクリアアップするFATクリアアップサブモジュール5212とを含むことができる。
【００６８】
第2のクリアアップモジュール522は2つのモードで実施される場合がある。図9aは第2のクリアアップモジュールの構造を示す概略図である。図9aを参照すると、第2のクリアアップモジュール522は、
ファイルシステム内のボリュームのビットテーブルを検索し、ビットテーブル内で空きとしてマークされるディスク空間を特定する空き容量特定サブモジュール5221と、
ビットテーブル内で空きとしてマークされたディスク空間を消去する消去サブモジュール5222とを含むことができる。
【００６９】
図9bは、第2のクリアアップモジュールの別の構造を示す概略図である。図9bを参照すると、第2のクリアアップモジュール522は、
障害が発生するまで、ボリューム空き容量上に一時ファイルを絶えず作成する一時ファイル作成サブモジュール5223と、
一時ファイルをクリアアップする一時ファイルクリアアップサブモジュール5224とを含むことができる。
【００７０】
図10は、ファイルシステムをクリアアップするためのシステムの別の構造の構造を示す概略図である。図10を参照すると、クリアアップモジュールは、ボリュームがシステムディスクであるか否かを判断し、ボリュームがシステムディスクであると判断した後に、ボリュームのpagefile.sysをクリアする第3のクリアアップモジュール524を更に含むことができる。
【００７１】
本開示の例によって提供されるデバイスは、本開示の例によって提供される方法の考え方と同じ考え方に従って設計することができ、ここで繰り返されなくてもよい。
【００７２】
本開示の例によって提供されるデバイスによれば、クリアアップ命令が受信された後に、ボリュームの削除されるファイルによって占有される情報及びボリューム空き容量をクリアアップすることができ、ユーザのプライバシの漏洩を回避することができ、ファイルシステムのセキュリティを高めることができる。
【００７３】
本開示の例によって提供される上記の技術方式の全て又は一部は、データ処理システムの命令によってハードウェア(コンピュータのプロセッサ等)に指示することにより実施することができる。データ処理プログラムは可読記憶媒体に記憶することができる。記憶媒体は、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、ディスク又はコンパクトディスク(CD)のようなプログラムコードを記憶することができる媒体を含むことができる。
【００７４】
さらに、本発明の各実施形態における各機能モジュールは、1つの処理ユニット内に統合することができるか、又はそれぞれ独立した物理モジュールとすることができる。代替的には、2つ、又は3つ以上のモジュールを1つのユニットに統合することができる。統合ユニットは、ハードウェアを用いて実現することができるか、又はソフトウェア機能ユニットによって実施することができる。各例における機能モジュールは、終端デバイス又はネットワークノード上に設定することができるか、又は代替的には、3つ以上の終端デバイス又はネットワークノード上にそれぞれ設定することができる。
【００７５】
本明細書において説明及び図示されてきたのは、幾つかの変形形態とともに、本開示の複数の例である。本明細書において用いられる用語、説明及び数字は例示として記載されるにすぎず、制限することは意図していない。添付の特許請求の範囲、及びその均等物によって規定されることを意図している本開示の範囲内で数多くの変形形態が可能であり、全ての用語は、他に指示されない限り、その最も広い合理的な意味を意図している。
【符号の説明】
【００７６】
501  ロックモジュール
502  クリアアップモジュール
503  ロック解除モジュール
521  第1のクリアアップモジュール
522  第2のクリアアップモジュール
523  判断モジュール
524  第3のクリアアップモジュール
5211  NTFSクリアアップサブモジュール
5212  FATクリアアップサブモジュール
5221  空き容量特定サブモジュール
5222  消去サブモジュール
5223  一時ファイル作成サブモジュール
5224  一時ファイルクリアアップサブモジュール
【図１】
0005833754.tif 000002
【図２】
0005833754.tif 000003
【図３】
0005833754.tif 000004
【図４】
0005833754.tif 000005
【図５】
0005833754.tif 000006
【図６】
0005833754.tif 000007
【図７】
0005833754.tif 000008
【図８】
0005833754.tif 000009
【図９ａ】
0005833754.tif 000010
【図９ｂ】
0005833754.tif 000011
【図１０】
0005833754.tif 000012