(57)【要約】【課題】  ストレージ・デバイスからの完全なデータ消去は、重要でないデータの転送のためホスト・コンピュータに対して、データ転送、書込み操作の実行及びリトライ処理のためストレージ・デバイスに対して、それぞれ、高い負荷を課す。【解決手段】  完全消去コマンドを導入し、ホストからストレージ・デバイスへのデータ転送を必要とすることなく、ストレージ・デバイスのストレージ空間の特定のエリアの消去を制御する。ストレージ・デバイス上における完全消去コマンドの実行は、単純に、ストレージ・デバイスのコントローラが、例えば、消去命令で指定する特定エリアのデータ上へ『任意データ』を書込む操作を行うことによって、その指定するデータの完全な消去を行う。アプリケーションが、完全消去コマンド（完全なファイル・データ消去関数）を実行できるよう、改良されたファイル・システムとする。【選択図】  図４
2007011522.tif 000002
【特許請求の範囲】
【請求項１】
中央処理ユニットと、これにアクセス可能に接続されたメモリ及び回転型記録媒体を用いた記憶装置とを有する計算機システムであって、
当該計算機システムは、前記メモリ上に展開されたファイルシステムにより、前記中央処理ユニットを介して、前記回転型記録媒体上に書き込まれたファイルのデータを消去する機能を有し、
前記記憶装置は、前記回転型記録媒体上に書き込まれたファイルのデータに対し任意のデータを上書きする機能を有するコントローラを有し、
前記ファイルシステムは、前記メモリ上に展開されたアプリケーションからのアクセスを受けて、前記記憶装置へ、ファイルのデータに対し任意のデータを上書きするコマンドを送出する機能を有する、
計算機システムにおけるデータの消去方法であって、
前記アプリケーションが、前記ファイルシステムにファイルの消去の要求を発行する第１のステップと、
前記ファイルシステムが、前記コントローラに前記ファイルにつき１又は複数の前記任意のデータを上書きするコマンドを発行する第２のステップと、
前記コントローラが、前記ファイルシステムからのコマンドに応じて、前記回転型記録媒体上に書き込まれたファイルのデータを上書きする第３のステップと、
を有することを特徴とするデータの消去方法。
【請求項２】
請求項１記載のデータの消去方法において、
前記ファイルにつき１又は複数の前記任意のデータを上書きするコマンドは、複数の論理ブロックに分割された前記ファイルの各論理ブロックに対して発行されるデータの消去方法。
【請求項３】
請求項１記載のデータの消去方法において、
更に、ファイルシステムが、前記アプリケーションが消去を要求したファイルの参照を消去するデータの消去方法。
【請求項４】
請求項１記載のデータの消去方法において、
前記第３のステップで上書きしたデータについて、エラー回復処理を行わないデータの消去方法。
【請求項５】
請求項１記載のデータの消去方法において、
前記第３のステップの上書き中に、前記ファイルシステムが前記コントローラに他のコマンドを発行する第４のステップと、
前記コントローラが、第３のステップの上書きに優先させて、当該他のコマンドを実行する第５のステップと、
を有するデータの消去方法。
【請求項６】
メモリと、回転型記録媒体と、前記回転型記録媒体上に格納されたファイルのデータに対し、任意のデータを上書きする機能を有するコントローラと、を有することを特徴とするストレージ・デバイス。
【請求項７】
中央処理ユニットと、これにアクセス可能に接続されたメモリ及び回転型記録媒体を用いた記憶装置とを有する計算機システムであって、
前記記憶装置は、前記回転型記録媒体上に書き込まれたファイルのデータに対し任意のデータを上書きする機能を有するコントローラを有し、
前記メモリ上に展開されたファイルシステムは、前記メモリ上に展開されたアプリケーションからのアクセスを受けて、前記中央処理ユニットを介して、前記記憶装置に対し、前記回転型記録媒体上に書き込まれたファイルのデータの上書きを命ずるコマンドを有する、ことを特徴とする計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ・デバイス及びホストのいずれにも高い負荷を課することなく、ストレージ・デバイスからデータを完全に消去するための技術に係り、特に、ストレージ・デバイス及びホスト全体の性能劣化を抑えた消去技術に関する。
【背景技術】
【０００２】
ファイル・システムは、磁気ディスク装置その他のストレージ・デバイス上に格納されるデータを系統化し管理するための、オペレーティング・システムにおいて主要な要素技術である。
ファイル内に包含されているデータの消去は、通常、単に、そのデータに対する参照及びそのファイル自体に対する参照を、ファイル・システムの管理データから削除することによってなされる。格納されているデータの実際の消去を伴わぬため、結果的にファイル消去は非常に高速な処理となっている。かかる従来の方法は、参照のみを削除することで、ストレージ・デバイスに対してデータ消去のために発行される大量のコマンドを不要とし、読出し、書込みその他通常のファイル操作に与えるファイル消去の負担を減らしている。
【０００３】
しかし従来のファイル消去法は、セキュリティ・センシティブ・データ、又は、アクセス制限のあるデータ（著作権法その他統制法規で最大アクセス数を保護されたデータ）にとっては十分でない。ケーブル又は無線放送によるビデオ・コンテンツからのデータは、しばしは、この種の統制法規によって保護されている。
諸外国で為されている、著作権保護されたコンテンツを取り扱うためのセキュリティへの考慮又はその基準は、データ消去が完全であること、換言すれば、ストレージ・デバイスに対する直接のシーケンシャル・アクセスであっても、消去済みファイルからデータが再生できないことを条件とする。
この条件を満たす一例は、消去対象のファイルのデータを任意の無関係かつ重要でないデータ（たとえばゼロ）で上書きすることである（特許文献１）。この方法は、非常に単純であり、この種の機密データを操作する任意のアプリケーションによる実施が可能である。しかし、ストレージ・デバイスへ書き込むデータをホストから転送し、書き込みオペレーションが完了するまで、ほかの操作が待たされるという長く重いプロセスを必要とする。そして転送及び書込みが為されるデータの量は、それぞれ、消去するファイルのサイズに等しい。この負荷は多くの場合、特に、高解像度ビデオを含む映像ファイルのように非常に大きなファイルを伴う場合に、許容不可能となる。
【０００４】
さらに、磁気ディスク装置のような特定のストレージ・デバイスはエラーを生じがちであり、その結果、発行済みの書き込みコマンドの適正な完了まで、書込み操作についての長時間のエラー回復処理（リトライ）が介在することも少なくない。従来技術では実際のデータ書込み操作と、セキュリティに敏感なデータを上書き（消去）するための書込み操作の間に全く差異がないことから、磁気ディスク装置によって同じ書込み操作の処理が行われる。このためリトライを伴うことがあり得る。
このリトライ処理は長時間となる可能性があり、ストレージ・デバイスが長時間にわたって利用できない状況をもたらす。このため他のコマンド実行の遅延を引き起こし、ストレージ・デバイスのデータ・アクセス・レートを低下させる。
【０００５】
特許文献１である特開平５-５３８９１は、磁気ディスク上のファイルを削除するときに、そのファイルが機密保護ファイルであるか否かを判断し、機密保護ファイルであればそのファイルが格納されている領域を検出し、その領域内に記録されている情報を消去する。続いてファイル管理情報にしたがってファイルの情報を消去することにより、論理的に削除する。機密保護ファイルでないと判断された場合は論理的な削除のみを行い情報の消去は行わない、とする。「情報を消去」する際のデータ転送による負荷、ＣＰＵの負担増加等には、何ら配慮が為されていない。
【０００６】
【特許文献１】特開平５−５３８９１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ストレージ・デバイスからの完全なデータ消去は、このように高い負荷を、重要でないデータ（たとえばゼロ）の転送のためホスト・コンピュータに対して、データ転送、書込み操作の実行、及び、最終的にはリトライ処理のためストレージ・デバイスに対して、それぞれ、課すこととなる。
高解像度ビデオ・コンテンツその他映像データは、ユーザが通常に操作するデータであるが、映像データが顕著な増加傾向にあることを考えると、この種のデータ消去に費やす負荷は従来技術では解消不可能である。特に、システム全体の適正な動作が、その内蔵するストレージ・デバイスの性能に極めて敏感なデータ記憶システム、例えば、磁気ディスク装置内蔵の映像録画機器、セットトップ・ボックス等では、従来のデータ消去方法では過大な負荷が発生し、これを許容できない。
それにもかかわらず、このような記憶システムは、ビデオ・コンテンツその他統制法規（著作権法）で保護されたデータを取り扱うため、完全なデータ消去を実現しなければならない。
【課題を解決するための手段】
【０００８】
ファイルの完全な消去を目的とした、ストレージ・デバイスを制御するための新しいコマンド（完全消去コマンド）を導入する。
完全消去コマンドは、ホストからストレージ・デバイスへのデータ転送を必要とすることなく、ストレージ・デバイスのストレージ空間の特定のエリアの消去を制御することができる。ストレージ・デバイス上における完全消去コマンドの実行は、単純に、ストレージ・デバイスのコントローラが例えば消去命令で指定する特定エリアのデータ上へ『任意データ』を書込む操作を行うことによって、その指定するデータの完全な消去を行う。
この際、書き込もうとした『任意データ』と比較して、書き込まれたデータが一致しないというエラーが生じたとしても、オリジナル・データが『任意データ』により上書きされ、読み取れない状態であるため、リトライその他エラー回復処理をする必要はない。これは、書込み操作がディスクのエリア（ストレージ・エリアまたはブロック）の上から適宜、磁界を印加し、又は、レーザ光を照射して処理される、ストレージ・エリアを不可逆的に変更することを伴う回転型記録媒体を用いたディスク記憶装置にしばしば当てはまる。
アプリケーションが、完全消去コマンド（「完全なファイル・データ消去関数」）を実行できるよう、改良されたファイル・システムとする。
【発明の効果】
【０００９】
この完全消去コマンドによれば次に示すような効果がある。
（ａ）従来の上書き操作とは異なり、ストレージ・デバイスとホスト・コンピュータの間におけるデータ消去のためのデータ転送が不要であり、ホスト・コンピュータのＩ／Ｏバスに課せられる負荷、及びデータを取り扱うためにストレージ・デバイス・コントローラに課せられる負荷を共に軽減できる。このことは、ホスト・コンピュータのメモリ及びストレージ・デバイス・コントローラのメモリのように、上書き操作の場合には、ホスト・コンピュータとストレージ・デバイスの間において転送されるべきデータを格納するために必要となるメモリ資源の消費量も低減する。
（ｂ）アプリケーション内における「完全なファイル・データ消去関数」の実装は困難でなく、アプリケーションはファイル・システムによって提供される単一の関数を実行しさえすればよい。この完全消去関数の実行は、ストレージ・デバイスに対する１又は複数の消去コマンドの発行を生じさせ、効果的にそのストレージ・デバイスから完全にデータを消去する。
本発明は、ストレージ・デバイスからデータを消去するときにそのデバイスのコントローラに課せられる負荷を低減することによって、またそのデバイスを使用するホスト・コンピュータに課せられる負荷を低減することによって、ストレージ・デバイス全体のアクセス速度を向上させる。
【発明を実施するための最良の形態】
【００１０】
以下に、本発明の実施の形態を説明する。
【実施例１】
【００１１】
図１に、本発明の機密データの完全な消去法を適用できる、磁気ディスク装置を有する計算機システムを開示する。
計算機システムにおいて中央処理ユニット１００の支配下、メイン・メモリ１１０上のアプリケーション１１１は、メイン・メモリ１１０に常駐するファイル・システム１１２を使用して、磁気ディスク装置１２０に対するコマンドの発行を行う。磁気ディスク装置１２０は、ローカル・メモリ１２１と、磁気ディスク媒体１２３上に格納されたデータへのアクセスを制御するためのコントローラ１２２を有している。
中央処理ユニット１００は、システム・バス１４０を介して、磁気ディスク装置１２０へコマンドを渡す。ディスプレイ１３１は、ディスプレイ・アダプタ１３０を介して、データ処理結果を表示できる。
【００１２】
図２は、ファイル・システム１１２が、磁気ディスク装置のストレージ空間２００（ファイル）を、一定サイズの隣接する論理ブロック２０１、２０２、２０３、２０４にそれぞれ分割して管理することを示す概念図である。
各ブロックは、０（２０１）からｄ（２０４）にわたる番号（論理ブロック番号）を使用して識別される。このため、論理ブロック番号と磁気ディスク媒体上の物理ブロックのアドレスとの、直接マッピングを単純に具体化できる。ファイル・システムは、各論理ブロック２１１の割り付け状態２１２を管理するための論理ブロック割付テーブル２１０を使用し、例えば、論理ブロック２１３等が有効なデータを含んでいるか否かを示す。
本例では、論理ブロック０（２１３）、１（２１４）、２（２１５）、および４（２１７）が使用されている。換言すれば、これらはファイル・システムのシステムデータ又はデータを格納するために割り付け済みとなっている。論理データ・ブロック３（２１６）及びｄ（２１８）は不使用で、ファイル・システムのデータ格納のために利用することができる。テーブル２００自体は、磁気ディスク媒体上に、１又は複数の論理ブロックを使用して格納されており、システムの電源遮断後であっても論理・物理各ブロック間の対応関係を保持することができる。
【００１３】
図３に、ファイル・システムが取り扱うファイルの情報を、その構造と共に示す。
ファイル・テーブル３００は、ファイル名３０１と、各ファイルに関する管理情報３１０、３１１、…３１３を含んでいる。各管理情報に対応して論理ブロック３０２にデータが記録される。ファイル情報テーブル３２０及びファイル・テーブル３００自体は、磁気ディスク媒体上に格納され、論理ブロックと物理ブロック間の対応関係を保持することができる。
ファイル情報テーブル３２０は、ファイル記述子である、ファイル名３２１、ファイル・サイズ３２２、ファイル・タイプ３２３、ファイル・アクセス権３２４その他の情報を含んでいる。ファイル・アクセス権３２４は、そのファイルに含まれているデータの保護に関する情報、ファイルが破棄されるときに完全なデータ消去を要するか否かについての情報を格納するために使用される。
【００１４】
ファイル情報テーブル３２０は、データの格納に使用される論理ブロックの番号であるファイル・マップ３２５も格納している。ファイル・マップ３２５は、ファイル・オフセット（ファイル内のデータのアドレス）を、磁気ディスク媒体の物理ブロック・アドレスへ直接マッピングすることに用いられる。
例えば、ファイル内のオフセット０のデータは、論理ブロック２２（３２６）を介して対応する磁気ディスク媒体上に格納され、その論理ブロックのサイズに等しいオフセットのデータは、論理ブロック２３（３２７）を介して対応する磁気ディスク媒体上に格納され、そのファイルの最後のデータは、論理ブロック１００（３２８）を介して対応する磁気ディスク媒体上に格納される。
このデータ構造は、ファイル・データの論理ブロック・アドレス（ファイル内のデータ・オフセット）と、磁気ディスク媒体上の物理ブロック・アドレスとの間の単純なマッピングを可能にする。このマッピングは、特に、アプリケーションがファイルの消去を要求したとき、図４に示されるように使用される。
【００１５】
図４は、ファイル・データに対する完全消去コマンドの実行の様子を説明するための図である。ホスト４００上で実行中のアプリケーション４０１から、ファイル・システム４０３に、ファイルの完全な消去の要求４０２が発行されると、ファイル・システムが、ファイル記述子を使用して、そのファイルを構成する論理ブロック・アドレスを獲得し、各ブロックについての消去コマンド４１０を磁気ディスク装置４２０に対して発行する。
磁気ディスク装置のコントローラ４２１は、受け取った消去コマンドを処理し、受け取ったコマンドによって指定される通り、磁気ディスク媒体４２２上の指定されたすべての論理ブロック４２３の内容である物理ブロックのデータを消去する。
【００１６】
図５に、ファイルを完全に消去するため、ファイル・システムによって行われる詳細な処理の流れを示す。これらの処理は、データの完全な消去を必要とするファイルにも、セキュリティを考慮しないファイルにも適用できる。
第１に、ファイル・サイズ３２２が検査され、そのファイルが空か否か、論理ブロックを有しているか否かが調べられる（５００）。そのファイルが空であれば（ＮＯ）、ファイル・テーブル２００内のそのファイルのエントリが消去され（５６０）、ファイル記述子（ファイル名３２１、ファイル・サイズ３２２、ファイル・タイプ３２３、アクセス権３２４、ファイル・マップ３２５）を含む論理ブロックが解放状態にセットされ、そのファイルを解放する（５７０）。
そのファイルが空でなければ（５００、ＹＥＳ）、そのファイルが有するファイル・マップ内に登録された論理ブロックがなくなるまで、これから述べる手順が実行される。まず、ファイル・マップの最後の論理ブロックの番号が、同マップから獲得される（５１０）。ファイルの消去の仕方が完全消去である場合（５２０、ＹＥＳ）には、その論理ブロック内に格納されているデータ全てを完全に消去するために、コントローラ４２１（図４）から磁気ディスク装置に対して消去コマンドが発行され（５３０）、データの消去が実行される。このコマンドの実行完了後、処理された論理ブロックは解放状態にセットされ（５４０）、その番号がファイル・マップから削除される（５５０）。ファイルの完全消去が要求されていない場合には（５２０、ＮＯ）、同じ処理が、磁気ディスク装置への消去コマンドの発行を伴わずに行われる。ファイル・マップが空になると（５００、ＮＯ）、ファイル・テーブル２００内のそのファイルのエントリが消去され（５６０）、ファイル記述子を含む論理ブロックが解放される（５７０）。
【００１７】
図６に、磁気ディスク装置に対して発行される完全消去コマンドの構造（６００）と、その生成の流れを示す。完全消去コマンドは、コマンド・コード６０１で識別され、物理ブロック・アドレスを格納するフィールド６０２、及び、指定されたアドレスから開始する、消去対象エリアのサイズを指定するフィールド６０３を伴う。
完全消去コマンドは、完全な消去を必要とするファイルの各論理ブロックについて、ファイル・システムによって生成される。ファイル・システムは、消去するファイルの論理ブロックの番号（６０２）を使用して、そのブロックの物理ブロック・アドレスを計算する（６１０）。消去するエリアのサイズは論理ブロックのサイズに等しい。ファイル・システムは、物理ブロックのための完全消去コマンドを生成し（６２０）、磁気ディスク装置に対して発行する（６３０）。磁気ディスク装置は、受領したコマンドの実行が完了するまで待機し（６４０）、完了した後に完全消去コマンドの完了を報告して終了する。
この待機（６４０）は、いわゆるコマンドキューイング技術により、完全消去コマンド以外のコマンドを優先して実行していることを意味する。コマンドキューイング技術を用なければ、待機は不要となる。コマンドの優先順位は、例えば、コマンド・コード６０１により決めることができる。図示しない手順により、完全消去コマンドの実行中に、これより優先順位の高い他のコマンドが発行された場合には、完全消去コマンドの実行を中断し他のコマンドを実行し、他のコマンドの実行完了を受けて、再び完全消去コマンドの実行を開始しても良い。
【００１８】
図７に、磁気ディスク装置における、完全消去コマンドと、それ以外のコマンドの処理の流れを示す。
磁気ディスク装置のコントローラ１２２（図１）は、ホストからのコマンドを待つ（７００）。コントローラが受け取るコマンドは、従来の読出し又は書込みコマンド、本発明の完全消去コマンド、その他必要な磁気ディスク装置のコマンドである。
受け取ったコマンドが完全消去コマンドの場合には（７１０、ＹＥＳ）、コントローラ１２２が、そのコマンドによって指定されるアドレスの物理ブロックに、同コマンドで指定した書込むべきデータ量の『０』又はランダムに選択されたデータを書き込む（７２０）。この書込み操作の結果は、書込みデータの正確性（書き込まれたデータと、書き込もうとしたデータとが正確に同じであること）が求められないことから、チェック不要である。
こうして、磁気ディスク媒体上に存在したオリジナル・データを、『０』又はランダムに選択された任意のデータで置換するので、結果的にオリジナル・データの完全な消去をもたらす。仮に消去の一部が不完全であっても、オリジナル・データを再び取り出す可能性は極端に小さくなる。
完全消去の操作完了時に、完全消去コマンドの実行終了がホストへ伝えられる（７７０）。
【００１９】
上記の単純な完全消去コマンドの操作と比較すると、その他のコマンド、特に、書込みコマンドは、最初に磁気ディスク装置へ書込みが必要な全てのデータをホストから獲得することによって処理される（７３０）。続いて、磁気ディスク媒体へデータを書き込むことによって、又は、読み出しコマンドであれば磁気ディスク媒体からデータを読み出すことによって、それぞれ、処理される（７４０）。その後、これらのコマンドの実行結果が検査され、リトライその他エラー回復処理が必要であるか否か決定される（７５０）。リトライ操作は数回にわたって繰り返され、完了に至る（７６０）。
コマンドの完了時には、その旨がホストへ伝えられる（７７０）。
【００２０】
この処理フローは、磁気ディスク装置上に格納されているデータを完全に消去する、本発明に係る完全消去コマンドの利点を明確に示している。完全消去コマンドの場合においては、ホストとコントローラ間のデータ転送が無く、またエラー回復処理も必要ない。
【産業上の利用可能性】
【００２１】
ディスク媒体の所定エリアに対し、適宜、磁界を印加し、又は、レーザ光を照射して、当該エリアを不可逆的に変更することにより情報を記録する、回転型記録媒体を用いたディスク記憶装置に適用できる。
【図面の簡単な説明】
【００２２】
【図１】本発明の機密データの完全な消去技術を適用できる、磁気ディスク装置を有するシステムの代表的なハードウエア構成図である。
【図２】図２は、ファイル・システムがファイルを一定サイズの隣接する論理ブロックにそれぞれ分割して管理することを示す概念図である。
【図３】ファイル・システムが取り扱うファイルの情報を、その構造と共に示す図である。
【図４】ファイル・データに対する完全消去コマンドの実行の様子を説明するための図である。
【図５】ファイルを完全に消去するため、ファイル・システムによって行われる詳細な処理の流れを示す図である。
【図６】磁気ディスク装置に対して発行される完全消去コマンドの構造と、その生成の流れを示す図である。
【図７】磁気ディスク装置における、完全消去コマンドと、それ以外のコマンドの処理の流れを示す図である。
【符号の説明】
【００２３】
４１０……完全消去コマンド、
６２０……物理ブロックのための消去コマンドを生成する、
６３０……磁気ディスク装置に対して完全消去コマンドを発行する。
【図１】
2007011522.tif 000003
【図２】
2007011522.tif 000004
【図３】
2007011522.tif 000005
【図４】
2007011522.tif 000006
【図５】
2007011522.tif 000007
【図６】
2007011522.tif 000008
【図７】
2007011522.tif 000009