JP2011205295A - 情報処理装置、データ処理方法、プログラム - Google Patents
情報処理装置、データ処理方法、プログラム Download PDFInfo
- Publication number
- JP2011205295A JP2011205295A JP2010069414A JP2010069414A JP2011205295A JP 2011205295 A JP2011205295 A JP 2011205295A JP 2010069414 A JP2010069414 A JP 2010069414A JP 2010069414 A JP2010069414 A JP 2010069414A JP 2011205295 A JP2011205295 A JP 2011205295A
- Authority
- JP
- Japan
- Prior art keywords
- information
- storage
- area
- erasing
- cpu
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2143—Clearing memory, e.g. to prevent the data from being stolen
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storing Facsimile Image Data (AREA)
Abstract
【解決手段】 種別の異なる不揮発性記憶装置を接続可能な情報処理装置において、
前記不揮発性記憶装置に対して消去指示された消去領域の消去方法を前記不揮発性記憶装置から取得する属性情報に従って生成される管理テーブルに応じて決定する決定手段と、
前記決定手段が決定した消去方法に従い前記消去領域に記憶された情報を消去する消去手段とを具備する。
【選択図】 図6
Description
しかしながら、近年の半導体記憶装置は、記憶装置内のフラッシュメモリの寿命を延ばすために、ウェアレベリングと呼ばれる分散書き込みを行う半導体記憶装置が存在する。ウェアレベリングを行う半導体記憶装置は、書き込み回数の少ないブロックをなるべく使用するようにブロックを置き換えて書き込みを行っていく。そのため、ウェアレベリングのブロック置換え制御方法によっては、置換え前のブロックに情報が残っている可能性も考えられる。
また、半導体記憶装置の場合、単純に複数回上書きをしても先に述べたウェアレベリングの置換え制御方法によっては、ユーザデータがフラッシュメモリ上のブロックに残ってしまう可能性も考えられる。
種別の異なる不揮発性記憶装置を接続可能な情報処理装置であって、前記不揮発性記憶装置に対して消去指示された消去領域の消去方法を前記不揮発性記憶装置から取得する属性情報に従って生成される管理テーブルに応じて決定する決定手段と、前記決定手段が決定した消去方法に従い前記消去領域に記憶された情報を消去する消去手段とを具備することを特徴とする。
〔第1実施形態〕
図1は、第1実施形態に係る画像形成装置の構成を示すブロック図である。なお、本実施形態では情報処理装置として画像形成装置を例に説明するが、情報処理装置としては画像形成装置以外の装置であってもかまわない。
112は、例えば電子写真方式あるいはインクジェット方式などで実現される紙への印字部(PRINTER)である。113は紙に印字された画像を読み込むための画像読み取り部(SCANNER)である。多くの場合、画像読み取り部113にはオプションとしてオートドキュメントフィーダ(不図示)が装着されており、複数枚の原稿を自動的に読み込むことができる。
なお、図2では、不揮発性記憶装置110、111の全ての領域を構築する形で構成した例で説明するが、不揮発性記憶装置111が存在する場合に、不揮発性記憶装置110の一部の領域が利用されなくなっても構わないものとしている。
Storage111内の記憶領域全体210も同様に、いくつかの領域(パーティション)に分割して目的別に利用する。例として、拡張プログラム領域211、拡張ソフト格納領域212、拡張印刷キュー領域213、拡張画像データ領域214、拡張ボックス領域215、拡張ログデータ保存領域216に領域分割して使用する。
ユーザボックス領域205および拡張ボックス領域215は、ユーザが格納した画像データ(画像情報)等を格納する領域である。ログ情報保存領域として確保されるログデータ保存領域206および拡張ログデータ保存領域216は、プログラムの動作状況や、ジョブ状況をロギングするための領域である。
Storage110およびStorage111は、このように目的に分けて領域分割して使用する。この中でユーザが作成したデータが残る可能性があるのは、以下の8領域である。
つまり、これらの格納領域のファイルを消去あるいは更新する場合、ファイルのデータ部分を確実に消去する必要がある。
図3において、領域構成情報テーブル300は、第1実施形態の例では以下の情報から構成される。なお、領域構成情報テーブル300は、Storage110に保持されて管理される。
本例は、No301、CLEAR−Flag302、CLEAR−Logic303、Label304、StorageMajorNo305、StorageMinorNo306、StorageSize307、Use308の情報で構成される。なお、これらの情報は、CPU101が後述する図5に示す手順に従い、接続されたStorage110、111から取得する属性情報を解析して生成され、RAM103上で管理される。
No301は、パーティションを識別する単なる管理上の通し番号である。CLEAR−Flag302は、パーティション上のファイルを削除する際に、完全消去処理を行うか否かを示すフラグであり、「0」の場合は、完全消去しないことを、「1」の場合は、完全消去することを示している。
ここで、完全消去とは、管理領域を消去するだけでなく、ファイルの利用しているデータ領域を複数回、特定パターンで上書きを行うことを指している。
CLEAR−Logic303とは、この消去ロジックをどのタイプを利用するかを示している。「0」の場合は、特殊な消去ロジックを利用しないことを意味する。「1」の場合は、ユーザ設定に従って上書き回数と書き込みパターンを決定することを意味する。「2」の場合は、1度のみ「0」を上書きすることで消去することを意味している。
「3」の場合は、ERASE SECTORコマンドを発行して消去することを意味している。
CLEAR−Logicの3番は、後述のデバイス種別識別手段により、Partitionの属するデバイスが、ERASE SECTORコマンドに対応している場合に限られる。
StorageMinorNo306は、該当パーティションが存在するストレージデバイスファイルのマイナー番号を識別する番号である。
これらの識別番号は起動時に、画像形成装置100に接続されている不揮発性記憶装置110、不揮発性記憶装置111の情報を取得し、該当パーティションが存在する場合には、管理テーブル内のブロック番号が格納される。
以上が第1実施形態に係る画像形成装置の構成および、不揮発性記憶装置内の領域構成である。以下、本発明における特徴的な部分について更に述べる。
次に、S402で、CPU101は、デバイス毎のパーティション一覧を取得する。例えばLinux(商品名)であれば、これは、"/sys/block/sda"など、S401で検出したブロックデバイスの下のファイルを検出することで、パーティションの一覧を取得できる。
また、swapは、図4に示すテーブル406に従って、ブロックデバイスをあてはめると、ラベルの位置にラベルを取得することができる。これらは、magicが示すマジック番号で区別することができる。
本実施形態では、システム起動時に図3に示す領域構成情報テーブル(パーティション管理テーブル)300を生成し、ユーザデータの消去がセットアップされる。なお、領域構成情報テーブル300は、Storage110のプログラム領域上で管理される。
まず、S501で、CPU101は、消去するファイルから、デバイス番号を取得する消去領域決定処理を行う。例えばLinuxであれば、消去対象ファイルのディスクリプタに対して、stat処理を実行することで、デバイス番号を取得できる。
次に、S502で、CPU101は、前述の領域構成情報テーブル(パーティション管理テーブル)300で、デバイス番号に一致する消去ロジックを特定する消去方法決定処理を行う。次に、S503で、CPU101は、消去処理を実行して、指定されたファイルに対し実際に消去処理を行い、本処理を終了する。
なお、各ステップは、CPU101がROM102、Storage110等に記憶される制御プログラムをRAM103にロードして実行することで実現される。
まず、S601で、CPU101は、ストレージ情報取得処理を行い、画像形成装置100に接続されたStorage110からメーカ名や型番等のストレージ情報を取得する。ここで、ストレージ情報は、CPU101がディスクコントローラ109経由で、コマンドをStorage110に送ることで、CPU101が情報取得することが可能であるが、本特許の特徴となる所ではないので詳細な説明は割愛する。
なお、Linuxであれば、デバイスファイルに対して、ioctlを発行することで、得られる。以下、取得したストレージ情報の内、本実施形態の処理に必要な情報を抜き出したストレージ情報について図7を用いて説明する。
図7において、StorageNo801は、画像形成装置100に接続されたStorage110、Storage111を識別するための識別番号である。
メーカ名802は、接続された不揮発性記憶装置の製造メーカ名を示す文字列が格納される。型番803は、不揮発性記憶装置の型番を示す文字列が格納される。メーカ名802、型番803の文字列を用いることで、後ほど説明するストレージデータベースから照合を行うことが出来る。次にサポートコマンド804は接続された不揮発性記憶装置が対応しているコマンド情報が記載される。このように取得したストレージ情報を図8のストレージ情報テーブル800としてRAM103上に格納しておき、後のストレージ種別の判断や消去方法の選択に用いる。なお、本実施形態では、サポートコマンド804を属性情報中のコマンド情報として取得することで、接続されたStorage110、Storage111が特定の消去コマンドに対応しているかどうかをCPU101が判断することが可能である。ここで、特定の消去コマンドとして、本実施形態では、図8に示すセクタ−イレーズコマンドの例を示す。図6のフローチャートの説明に戻る。
次に、S602で、CPU101は、S601においてストレージ情報取得処理で取得したストレージ情報をストレージDB700と照合することにより、ストレージ種別の判断を行う。ストレージDB700の詳細な内容については図8を用いて説明する。
図8において、ID701は、データベースのエントリ識別のための番号である。メーカ名702は、そのエントリの不揮発性記憶装置の製造メーカ名を示す文字列が格納される。
型番703は、そのエントリの不揮発性記憶装置に対応する型番を示す文字列が格納される。媒体種別704は、そのエントリの不揮発性記憶装置に対応する記憶媒体の種別が格納され、磁気HDDなのか半導体ディスクなのかが文字列(SemiconductorDisk/MagneticHardDisk)で記憶される。
例えば、「All」と記載されていれば、全領域を対象としてウェアレベリング制御が行われていることを示す。「−」と記載されていれば、ウェアレベリング制御は行われていないことを示す。特定のアドレス範囲が記載されていれば、その論理アドレス範囲に対してウェアレベリング制御が行われることを示す。
特に未知のストレージモデルを接続された場合、すなわち検出されたデバイスが、ストレージDB700に合致するモデルがない場合には、ストレージの回転特性をさらに取得する。
ここで、CPU101が検出されたデバイスが図8に示したストレージDB700に合致するモデルであると判断した場合には、S608へ進む。そして、S608で、ストレージDB700の媒体種別704の結果を元に、半導体ストレージでなければ、消去ロジック303を「1」に設定し、上書きデータ、消去回数ともに、ユーザ設定に準じた消去ロジックを選択して、本処理を終了する。
そして、S604で、既に先に説明したストレージ情報取得処理によって取得したストレージ情報テーブル800のサポートコマンド804を参照するセクタ消去コマンドサポート有無を判断する。なお、セクタ消去コマンドサポート有無は、ストレージDB700において、判定してもよい。
そして、S607で、CPU101は、消去ロジック303を「3」に設定し、上書きデータは、セクタ消去コマンドで代替し、消去回数が一回である消去ロジックを選択して、本処理を終了する。
そして、S605で、CPU101はストレージデータベースのウェアレベリング領域情報705で、ウェアレベリングをサポートしているか否かを判断する。ここで、ウェアレベリングをサポートしていないとCPU101が判断した場合には、S608へ進む。そして、S608で、消去ロジック303を「1」に設定し、上書きデータ、消去回数ともに、ユーザ設定に準じた消去ロジックを選択して、本処理を終了する。
一方、S605で、判定結果がウェアレベリングをサポートした半導体ストレージであるとCPU101が判断した場合は、S606へ進む。
そして、S606で、CPU101は消去ロジック303を「2」に設定し、上書きデータを「0」、消去回数を「1」にした消去ロジックを選択して、本処理を終了する。
これらの消去領域判定処理を行うことにより、不揮発性記憶装置のストレージ種別を細かく判断し、ユーザデータを安全に消去し、なおかつ、効率的な消去ロジックを決定することが可能となる。
図9は、本実施形態を示す情報処理装置のデータ処理手順を示すフローチャートである。本例は、S502、S503に対応する消去方法の決定処理と消去実行処理の詳細手順である。なお、各ステップは、CPU101がROM102等の記憶される制御プログラムをRAM103にロードして実行することで実現される。また、先に図4を用いて説明した消去ロジックテーブル生成処理により、消去ロジック(消去方法)を決定するためのテーブルが生成されているものとする。
なお、通常OSがLinuxであれば、CPU101はファイルディスクリプタのstat情報を得ることで特定できる。
次に、S902で、CPU101は、前述の消去ロジックを決定するための領域構成情報テーブル300(図3)に従って、識別番号305、306と対比し、合致する行の消去可否を示すフラグ302、消去ロジック303を判断する。この判断の結果、消去必要なユーザデータ領域であるとCPU101が判断した場合、消去ロジック303の番号の値に応じて、処理を分岐する。
例えば消去ロジック番号の値が「1」であるとCPU101が判断した場合には、S903へ進む。
そして、S903で、CPU101は、複数回の書き込みを行わないと磁気的に値が残る場合があるとして、データ領域をランダム値のN回の上書き消去を実行して、S906へ進む。
また、S902で、例えば消去ロジック番号の値が「2」であるとCPU101が判断した場合には、S904へ進む。
そして、S904で、CPU101は、半導体ストレージで、ウェアレベリングによる無駄な磨耗を避けるためとして、データ領域を0値で、1回のみ消去を行い、S906へ進む。
そして、S905で、CPU101は、セクタイレースコマンドと呼ばれる安全にセクタ領域を消去できるコマンドに対応した不揮発性記憶装置であるとして、セクタイレースコマンドを発行することにより、データ領域の消去を行い、S906へ進む。
これらの消去方法でファイルのデータ領域を上書き消去処理した後に、S906で、CPU101はファイルの管理領域上の存在を消去して、本処理を終了する。
このように、画像形成装置100に接続された不揮発性記憶装置のストレージ種別を細かく判断し、ユーザデータを安全に消去し、なおかつ、効率的な消去ロジックを決定することが可能となる。
以下、不揮発性記憶装置に記憶された情報の削除対象がユーザ情報であるかそれ以外の情報であるかを判断して、さらに、不揮発性記憶装置の種別が半導体記憶装置であるかどうかを判断して記憶された情報の消去ロジックを決定する場合について説明する。なお、ハードウエアの構成については、第1実施形態と同様であるので、その説明を省略する。
〔第2実施形態〕
図10は、図1に示したStorage110の領域構成情報テーブル(パーティションテーブル)を示した図である。
本例は、No1301、Label1302、StorageNo1303、StartBlockAdress1304,EndBlockAddress1305、Size1306、ExistUserData1307の情報で構成される。
StorageNo1303は該当パーティションが存在するストレージを識別する番号である。
Storage110に該当パーティションが存在する場合には、値として「1」が格納される。Storage111に該当パーティションが存在する場合には、値として2が格納される。
DISKC109は、領域構成情報テーブル(パーティションテーブル)1300を参照することにより、ユーザデータが存在する可能性がある領域やその領域の論理ブロックの範囲が特定できる。
図11は、図1に示したPANEL106に表示されるユーザインタフェースの一例を示す図である。本例は、実際にユーザデータ消去を行う際の操作画面表示例である。
図11において、ユーザデータ全消去の操作画面1400は、表示部(DISPLAY)108上に表示され、ユーザが実行を指示することが出来る。
タイトル1401は、ユーザデータ全消去を行う旨を示すタイトル表示であり、実行ボタン1402をタッチすることにより、ユーザデータ消去が実行される。また、キャンセルボタン1403をタッチすることにより、ユーザデータ全消去の操作画面をキャンセルすることができる。
本実施形態は、図5に示した手順に従いまず、CPU101が消去する領域を決定する。次に、CPU101が消去の方法を決定して、当該決定した消去領域に対し実際に消去処理を行う、という流れでユーザデータの消去処理を行う。
まず、S1201で、CPU101は、ストレージ情報取得処理を行い、画像形成装置100に接続されたStorage110からメーカ名や型番等のストレージ情報を取得する。ここで、ストレージ情報は、DISK109経由で、コマンドをStorage110に送ることで、情報取得することが可能であるが、本特許の特徴となる所ではないので詳細な説明は割愛する。
図13は、図1に示したRAM103に保持されるストレージ情報テーブル1800の構成要素を説明する図である。
図13において、StorageNo1801は、画像形成装置100に接続されたStorage110、Storage111を識別するための識別番号である。
メーカ名1802は、接続された不揮発性記憶装置の製造メーカ名を示す文字列が格納される。型番1803は、不揮発性記憶装置の型番を示す文字列が格納される。メーカ名1802、型番1803の文字列を用いることで、後ほど説明するストレージデータベースから照合を行うことが出来る。
S1202で、S1201においてCPU101がストレージ情報取得処理で取得したストレージ情報を図14に一例を示すストレージデータベース(ストレージDB)1700と照合する。そして、CPU101は、ストレージ種別の判断を行う。
図14において、ID1701は、データベースのエントリ識別のための番号である。メーカ名1702は、そのエントリの不揮発性記憶装置の製造メーカ名を示す文字列が格納される。型番1703は、そのエントリ不揮発性記憶装置の型番を示す文字列が格納される。
媒体種別1704は、そのエントリの不揮発性記憶装置の記憶媒体の種別が格納され、磁気HDDなのか半導体ディスクなのかが記載される。
ウェアレベリング領域情報1705は、そのエントリの不揮発性記憶装置のウェアレベリング領域が存在するか、存在する場合は全領域か、特定領域なのかといった情報が記載される。
例えば、「All」と記載されていれば、全領域を対象としてウェアレベリング制御が行われていることを示す。「−」と記載されていれば、ウェアレベリング制御は行われていないことを示す。特定のアドレス範囲が記載されていれば、その論理アドレス範囲に対してウェアレベリング制御が行われることを示す。
ここで、「Yes」と記載されている場合、ブロック置換え時に旧物理ブロックに消去処理をおこなってから新物理ブロックに置き換わる制御が行われる。また、「No」と記載されている場合、ブロック置換え時に旧物理ブロックは未使用ブロックにエントリされるだけで消去処理は行われず、新物理ブロックに置き換える制御が行われる。
このように構成されているので、CPU101は、先に述べたストレージ情報のメーカ名1802、型番1803の文字列をキーとしてストレージデータベース(ストレージDB)1700を検索する。ストレージデータベース(ストレージDB)1700の検索により、画像形成装置100に接続されたStorage110やStorage111の詳細な種別情報をデータベースから取得出来る。
ここで、半導体ストレージでないとCPU101が判断した場合、磁気HDDであるため、ウェアレベリングによる分散書き込みで論理ブロックと物理ブロックが書き込みのたびに変化していくという心配が無い。よって、S1205へ進み、消去領域はユーザデータ領域のみ消去すると判断して、本処理を終了する。
なお、半導体ストレージの中にはウェアレベリングを行わないものも存在する。
ここで、ウェアレベリングを行わない半導体ストレージであると判断した場合は、S1205へ進み、磁気HDDと同じ扱いで構わないため、消去領域はユーザデータ領域のみ消去すると判断いて、本処理を終了する。
そして、S1206で、CPU101は、ウェアレベリングがストレージ全領域に対して行われているか否かをストレージデータベースのウェアレベリング領域情報1705から判断する。
なお、ウェアレベリングを部分的な領域に対してしか実施していない半導体ストレージの場合には、ユーザデータが格納される可能性の有る領域がウェアレベリング対象領域でなければ、磁気HDDと同じ扱いで構わない。
そして、S1208で、CPU101は、ユーザデータ領域マッピング調査により、ユーザデータ領域がウェアレベリング対象領域か否かを判断する。具体的には、CPU101が取得したユーザデータの存在する可能性のあるアドレス範囲が、ウェアレベリング領域情報1705に記載されたアドレス範囲と重複するか否かで判定する。
ここで、ウェアレベリング対象領域でないとCPU101が判断した場合、ユーザデータはウェアレベリングしていない領域にしか存在しない。この場合は、磁気HDDと同じ扱いで構わない。よって、S1205へ進み、消去領域はユーザデータ領域のみ消去すると判断して、本処理を終了する。
そして、S1209で、CPU101は、FlashコントローラとFlashメモリがワンチップ化されているか否かをストレージデータベースのパッケージ種別1707から判断する。ここで、ウェアレベリング制御を行うFlashコントローラとFlashメモリが同一チップ内にパッケージングされているとCPU101が判断した場合は、ウェアレベリングで物理ブロックを置換えた際の置換え前ブロックにデータが残っていたとしても、それを読み出すことは出来ない。これは、置換え前のブロックは置換え後に未使用ブロックに割り当てられるため、Flashコントローラ経由では置換え前の物理ブロックを読み出すことが出来ないからである。
また、FlashコントローラとFlashメモリが別チップで構成されている場合、Flashメモリチップのみを基盤から剥がして置換え前に使用していた旧物理ブロックを読み取られる危険性がある。この点について、図15を用いて詳述する。
図15において、図15の(A)は、Flashコントローラ1502とFlashメモリ1503が同一チップ内にパッケージングされている例である。チップ1501の中にFlashコントローラ1502とFlashメモリ1503が両方存在し、バス1504で接続されている。
本例ではI/F1505を経由して本チップに対する読み書き指示やデータをやり取りする。
このような構成の半導体ストレージの場合、チップ内のFlashメモリは完全にFlashコントローラの管轄内にあり、Flashコントローラが未使用領域に対する読み出しを許さない。そのため、未使用領域に回された物理ブロックのデータは読み出すことが出来ない。
図15の(B)の方は、FlashコントローラとFlashメモリが別チップで構成されている例である。
Flashコントローラ1506がバス1504を介してFlashメモリ1507、1508、1509のFlashメモリチップと接続されており、I/F1505を経由して本チップに対する読み書き指示やデータをやり取りする。
以下、図12のフローチャートに戻るが、図15を用いて説明したように、ワンチップ化されている場合には、CPU101は、読み取られる危険性はないと判断し、S1205に進み、ユーザデータ領域のみ消去と判断して、本処理終了する。
そして、S1210で、CPU101は、ウェアレベリング制御による置換え実行時に、置換え前ブロックが消去されてから置換えが行われるか否かを判断する。具体的は、CPU101は、置換え前ブロックが消去されてから置換えが行われるか否かをストレージデータベースのウェアレベリング置換え前BlockErase1706から判断する。
ここで、置換え前の物理ブロックが消去されて新しい物理ブロックが割り当てられるとCPU101が判断した場合は、S1205へ進む。そして、S1205で、置換え前の物理ブロックからはユーザデータが消されるため、ユーザデータ領域のみを消去すると判断して、本処理を終了する。
一方、S1210で、置換え前の物理ブロックが消去されずに新しい物理ブロックが割り当てられるとCPU101が判断した場合には、S1211へ進む。
この場合、Flashメモリチップのみを基盤から剥がして置換え前の物理ブロックを読み取られる危険性が考えられる。そのため、S1211で、CPU101は、ストレージ全領域を消去すると判断して、本処理を終了する。この点について、図16を参照して説明する。
図16の(A)は、置換え前の旧物理ブロックを消去してから新しい物理ブロックに書き込みを行うタイプのウェアレベリング制御の処理の流れを示す。
まず、CPU101は、Flashメモリの物理ブロック空間1600に書き込み処理でウェアレベリング制御が発生した場合、まず、置換え前の旧物理ブロック1601を消去する(1)。
図16の(B)は、置換え前の物理ブロックが消去されずに新しい物理ブロックが割り当てられるウェアレベリング制御の流れである。
CPU101は、Flashメモリの物理ブロック空間1600に書き込み処理でウェアレベリング制御が発生した場合、置換え前の旧物理ブロック1601を単純に未使用ブロックに割り当てる(1)。そして、新しい物理ブロック1602に書き込みを行う(2)。
通常はFlashコントローラが未使用ブロックを読みに行かないように制御するので、問題はない。
しかし、先に述べたようにFlashメモリのチップが独立している場合、チップを取り外されてユーザデータが残った物理ブロックを読み取られてしまう可能性がある。そのため、Flashメモリのチップが独立していて、かつ、ウェアレベリングによるブロック置換え時に旧物理ブロックが消去されない半導体ストレージでは、ストレージ全領域を消去すると判断するのである。
次に消去方法の決定と消去実行を行う処理について、図17を参照して説明する。
図17は、本実施形態を示す情報処理装置のデータ処理手順の一例を示すフローチャートである。本例は、図5に示したS502、S503の消去方法決定処理/消去実行処理の詳細手順である。なお、各ステップは、CPU101がROM102等の記憶される制御プログラムをRAM103にロードして実行することで実現される。
まず、S1701で、CPU101は、先に図6を用いて説明した消去領域判定処理により判断した結果が、消去領域がユーザデータ領域のみ消去するであるかどうかを判断する。
ここで、消去領域がユーザデータ領域のみ消去するであるとCPU101が判断した場合は、S1702へ進む。そして、S1702で、CPU101は、次に消去対象が半導体ストレージか否かを判断する。ここで、半導体ストレージでユーザデータ領域のみ消去とCPU101が判断した場合は、1回のユーザデータ領域のみの消去で安全に消去できる。
一方、S1702で、半導体ストレージでないとCPU101が判断した場合は、ストレージの種別が磁気HDDであるため、複数回の書き込みを行わないと磁気的に値が残る場合がある。よって、S1703で、CPU101は、複数回の上書きデータ消去をStorage110のユーザデータ領域に対して行い、本処理を終了する。
そして、S1705で、CPU101は、安全に全領域を消去できるセキュリティユニットイレーズコマンドをサポートしているか否かを判断する。なお、ストレージデバイスとしてセキュリティユニットイレーズコマンドと呼ばれる安全に全領域を消去できるコマンドに対応したものがあり、特に半導体ストレージの場合はサポートしている場合が多い。
ここで、CPU101が安全に全領域を消去できるコマンドに対応した不揮発性記憶装置であると判断した場合は、S1706へ進む。
そして、S1706で、CPU101は、セキュリティユニットイレーズコマンドをStorage110に発行することにより、全ブロック消去を行い、本処理を終了する。
一方、Storage110が安全に全領域を消去できるコマンドに対応していない不揮発性記憶装置であると判断した場合は、S1707へ進む。
そして、S1707で、CPU101は、Storage110の全ブロックに対して複数回の書き込みを行い、本処理を終了する。
なお、本処理は、ウェアレベリング制御により、全物理ブロックに対して書き込みが行われるまで相当な回数くりかえし書き込み処理を行う必要がある。
よって、表示部(DISPLAY)108に長時間かかる旨のメッセージを表示しても良いし、上書き回数をユーザに指定させても良い。
これらの消去方法処理を行うことにより、画像形成装置100に接続された不揮発性記憶装置のストレージ種別を細かく判断し、ユーザデータを安全に消去し、なおかつ、効率的な消去範囲を決定することが可能となる。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
109 DISKC
110、111 不揮発性記憶装置
Claims (8)
- 種別の異なる不揮発性記憶装置を接続可能な情報処理装置において、
前記不揮発性記憶装置に対して消去指示された消去領域の消去方法を前記不揮発性記憶装置から取得する属性情報に従って生成される管理テーブルに応じて決定する決定手段と、
前記決定手段が決定した消去方法に従い前記消去領域に記憶された情報を消去する消去手段と、
を具備することを特徴とした情報処理装置。 - 前記属性情報は、半導体記憶装置であるか、前記半導体記憶装置とは異なる不揮発性記憶装置であるかを示す情報を含むことを特徴とした請求項1記載の情報処理装置。
- 前記属性情報は、前記半導体記憶装置が特定の消去コマンドに対応しているか否かを示すコマンド情報を含むことを特徴とした請求項2に記載の情報処理装置。
- 前記記憶された情報は、ユーザ情報、ログ情報、画像情報を含むことを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
- 前記消去手段は、不揮発性記憶装置が半導体記憶装置であって、前記属性情報からコマンド情報を取得できた場合は、特定の消去コマンドに従い前記消去領域に記憶された情報を消去することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
- 前記消去手段は、不揮発性記憶装置が半導体記憶装置であって、前記属性情報からコマンド情報を取得できない場合は、特定のデータを前記消去領域に書き込んで記憶された情報を消去することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
- 種別の異なる不揮発性記憶装置を接続可能な情報処理装置におけるデータ処理方法において、
前記不揮発性記憶装置に対して消去指示された消去領域の消去方法を前記不揮発性記憶装置から取得する属性情報に従って生成される管理テーブルに応じて決定する決定工程と、
前記決定工程が決定した消去方法に従い前記消去領域に記憶された情報を消去する消去工程と、
を具備することを特徴としたデータ処理方法。 - 請求項7に記載のデータ処理方法をコンピュータに実行させることを特徴とするプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010069414A JP5538970B2 (ja) | 2010-03-25 | 2010-03-25 | 情報処理装置、データ処理方法、プログラム |
US13/069,911 US9111101B2 (en) | 2010-03-25 | 2011-03-23 | Information processing apparatus capable of enabling selection of user data erase method, data processing method, and storage medium |
CN201110081109.9A CN102201049B (zh) | 2010-03-25 | 2011-03-25 | 信息处理装置及其数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010069414A JP5538970B2 (ja) | 2010-03-25 | 2010-03-25 | 情報処理装置、データ処理方法、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011205295A true JP2011205295A (ja) | 2011-10-13 |
JP5538970B2 JP5538970B2 (ja) | 2014-07-02 |
Family
ID=44657648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010069414A Expired - Fee Related JP5538970B2 (ja) | 2010-03-25 | 2010-03-25 | 情報処理装置、データ処理方法、プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9111101B2 (ja) |
JP (1) | JP5538970B2 (ja) |
CN (1) | CN102201049B (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015528159A (ja) * | 2012-07-05 | 2015-09-24 | ブランコ オサケユイチア リミティド | 記憶装置に格納されたデータを消去する装置、システム、方法及びコンピュータプログラム |
JP2015204073A (ja) * | 2014-04-16 | 2015-11-16 | キヤノン株式会社 | 情報処理装置、情報処理端末、情報処理方法およびプログラム |
JP2016504695A (ja) * | 2013-01-28 | 2016-02-12 | フジツウ テクノロジー ソリューションズ インタレクチュアル プロパティ ゲーエムベーハー | 不揮発性半導体マスメモリを安全に消去するための方法、コンピュータシステム、及びコンピュータプログラム |
WO2016132572A1 (ja) * | 2015-02-19 | 2016-08-25 | Necソリューションイノベータ株式会社 | データ配置装置及びデータ配置方法 |
JP2018041417A (ja) * | 2016-09-09 | 2018-03-15 | キヤノン株式会社 | 情報処理装置及びその制御方法、並びにプログラム |
JP2022521930A (ja) * | 2019-02-22 | 2022-04-13 | ブランコ テクノロジー グループ アイピー オイ | 蓄積された消去報告に基づく消去処理選択に関するユーザ案内の提供 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9311501B2 (en) * | 2012-03-26 | 2016-04-12 | International Business Machines Corporation | Using different secure erase algorithms to erase chunks from a file associated with different security levels |
CN106716333B (zh) * | 2014-04-23 | 2020-01-17 | 数据隐藏技术有限责任公司 | 用于完成安全擦除操作的方法 |
JP6201944B2 (ja) * | 2014-09-18 | 2017-09-27 | コニカミノルタ株式会社 | 画像処理装置、同装置における画像処理方法及び画像処理プログラム |
JP6403559B2 (ja) * | 2014-12-08 | 2018-10-10 | キヤノン株式会社 | 情報処理装置およびその制御方法、並びにプログラム |
CN104503821A (zh) * | 2014-12-11 | 2015-04-08 | 国云科技股份有限公司 | 一种计算虚拟磁盘io速度的方法 |
JP6892361B2 (ja) | 2017-09-21 | 2021-06-23 | キオクシア株式会社 | ストレージ装置 |
JP6995607B2 (ja) * | 2017-12-19 | 2022-01-14 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法及びプログラム |
US20200409601A1 (en) * | 2019-06-28 | 2020-12-31 | Western Digital Technologies, Inc. | Hold of Write Commands in Zoned Namespaces |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007004782A (ja) * | 2005-05-24 | 2007-01-11 | Matsushita Electric Ind Co Ltd | 半導体メモリカード |
JP2008257389A (ja) * | 2007-04-03 | 2008-10-23 | Fuji Xerox Co Ltd | 情報処理装置及びプログラム |
JP2010015385A (ja) * | 2008-07-03 | 2010-01-21 | Sony Corp | 情報処理装置、および情報処理方法、並びにプログラム |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8171203B2 (en) * | 1995-07-31 | 2012-05-01 | Micron Technology, Inc. | Faster write operations to nonvolatile memory using FSInfo sector manipulation |
US6731447B2 (en) * | 2001-06-04 | 2004-05-04 | Xerox Corporation | Secure data file erasure |
JP4082984B2 (ja) | 2002-10-30 | 2008-04-30 | シャープ株式会社 | 画像処理装置 |
US7340486B1 (en) * | 2002-10-10 | 2008-03-04 | Network Appliance, Inc. | System and method for file system snapshot of a virtual logical disk |
US20040114265A1 (en) * | 2002-12-16 | 2004-06-17 | Xerox Corporation | User-selectable automatic secure data file erasure of job after job completion |
KR100703727B1 (ko) * | 2005-01-12 | 2007-04-05 | 삼성전자주식회사 | 비휘발성 메모리, 이를 위한 사상 제어 장치 및 방법 |
US7657696B2 (en) * | 2005-02-25 | 2010-02-02 | Lsi Corporation | Method to detect NAND-flash parameters by hardware automatically |
JP2007317247A (ja) * | 2006-05-23 | 2007-12-06 | Nec Electronics Corp | 不揮発性半導体記憶装置及び不揮発性半導体記憶装置の動作方法 |
CN101344907A (zh) | 2007-07-12 | 2009-01-14 | 芯邦科技(深圳)有限公司 | 存储卡的量产方法和装置 |
US8370644B2 (en) * | 2008-05-30 | 2013-02-05 | Spansion Llc | Instant hardware erase for content reset and pseudo-random number generation |
CN101615427B (zh) | 2008-06-24 | 2012-08-08 | 群联电子股份有限公司 | 非易失性存储器的存储器管理方法及使用此方法的控制器 |
CN101354681B (zh) * | 2008-09-23 | 2010-12-01 | 美商威睿电通公司 | 存储器系统、非易失性存储器的磨损均衡方法及装置 |
US8130554B1 (en) * | 2008-09-29 | 2012-03-06 | Emc Corporation | Securely erasing flash-based memory |
US8447989B2 (en) * | 2008-10-02 | 2013-05-21 | Ricoh Co., Ltd. | Method and apparatus for tamper proof camera logs |
US8359447B1 (en) * | 2009-01-15 | 2013-01-22 | Xilinx, Inc. | System and method of detecting and reversing data imprinting in memory |
GB2481955B (en) * | 2009-05-04 | 2014-10-08 | Hewlett Packard Development Co | Storage device erase command having a control field controllable by a requestor device |
US8359660B2 (en) * | 2009-11-30 | 2013-01-22 | Lps2 | Method and apparatus of securing data in a portable flash memory |
US8250380B2 (en) * | 2009-12-17 | 2012-08-21 | Hitachi Global Storage Technologies Netherlands B.V. | Implementing secure erase for solid state drives |
-
2010
- 2010-03-25 JP JP2010069414A patent/JP5538970B2/ja not_active Expired - Fee Related
-
2011
- 2011-03-23 US US13/069,911 patent/US9111101B2/en not_active Expired - Fee Related
- 2011-03-25 CN CN201110081109.9A patent/CN102201049B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007004782A (ja) * | 2005-05-24 | 2007-01-11 | Matsushita Electric Ind Co Ltd | 半導体メモリカード |
JP2008257389A (ja) * | 2007-04-03 | 2008-10-23 | Fuji Xerox Co Ltd | 情報処理装置及びプログラム |
JP2010015385A (ja) * | 2008-07-03 | 2010-01-21 | Sony Corp | 情報処理装置、および情報処理方法、並びにプログラム |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015528159A (ja) * | 2012-07-05 | 2015-09-24 | ブランコ オサケユイチア リミティド | 記憶装置に格納されたデータを消去する装置、システム、方法及びコンピュータプログラム |
JP2017126348A (ja) * | 2012-07-05 | 2017-07-20 | ブランコ オサケユイチア リミティド | 記憶装置に格納されたデータを消去する装置、システム、方法及びコンピュータプログラム |
JP2016504695A (ja) * | 2013-01-28 | 2016-02-12 | フジツウ テクノロジー ソリューションズ インタレクチュアル プロパティ ゲーエムベーハー | 不揮発性半導体マスメモリを安全に消去するための方法、コンピュータシステム、及びコンピュータプログラム |
US9671964B2 (en) | 2013-01-28 | 2017-06-06 | Fujitsu Technology Solutions Intellectual Property Gmbh | Method of securely erasing a non-volatile semiconductor mass memory, computer system, and computer program product |
JP2015204073A (ja) * | 2014-04-16 | 2015-11-16 | キヤノン株式会社 | 情報処理装置、情報処理端末、情報処理方法およびプログラム |
WO2016132572A1 (ja) * | 2015-02-19 | 2016-08-25 | Necソリューションイノベータ株式会社 | データ配置装置及びデータ配置方法 |
JPWO2016132572A1 (ja) * | 2015-02-19 | 2017-12-07 | Necソリューションイノベータ株式会社 | データ配置装置及びデータ配置方法 |
JP2018041417A (ja) * | 2016-09-09 | 2018-03-15 | キヤノン株式会社 | 情報処理装置及びその制御方法、並びにプログラム |
KR20180028925A (ko) * | 2016-09-09 | 2018-03-19 | 캐논 가부시끼가이샤 | 정보 처리장치 및 그 제어방법 |
KR102288563B1 (ko) * | 2016-09-09 | 2021-08-11 | 캐논 가부시끼가이샤 | 정보 처리장치 및 그 제어방법 |
JP2022521930A (ja) * | 2019-02-22 | 2022-04-13 | ブランコ テクノロジー グループ アイピー オイ | 蓄積された消去報告に基づく消去処理選択に関するユーザ案内の提供 |
JP7410960B2 (ja) | 2019-02-22 | 2024-01-10 | ブランコ テクノロジー グループ アイピー オイ | 蓄積された消去報告に基づく消去処理選択に関するユーザ案内の提供 |
Also Published As
Publication number | Publication date |
---|---|
JP5538970B2 (ja) | 2014-07-02 |
CN102201049B (zh) | 2014-10-22 |
US20110238901A1 (en) | 2011-09-29 |
CN102201049A (zh) | 2011-09-28 |
US9111101B2 (en) | 2015-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5538970B2 (ja) | 情報処理装置、データ処理方法、プログラム | |
US8230160B2 (en) | Flash memory storage system and flash memory controller and data processing method thereof | |
US7624275B2 (en) | Disk drive, control method thereof and disk-falsification detection method | |
JP2008242503A (ja) | メモリ管理装置及び方法、並びにプログラム | |
JP2008070935A (ja) | ストレージシステムの論理ボリューム管理方法、論理ボリューム管理プログラム、及びストレージシステム | |
CN107807800B (zh) | 信息处理装置以及控制信息处理装置的方法 | |
US11144202B2 (en) | Volume management apparatus, volume management method, and volume management program | |
JPH08195093A (ja) | 不揮発性メモリのファイル管理装置 | |
KR20120084906A (ko) | 비휘발성 메모리 시스템 및 그 관리 방법 | |
US7680980B2 (en) | Image forming apparatus | |
JP2016206938A (ja) | 情報処理システム、情報処理システムのメモリ制御方法、及びプログラム | |
JP2006252045A (ja) | ファイル分類表示装置、ファイル分類表示方法及びファイル分類表示プログラム | |
JP2007128448A (ja) | ファイルシステム及びファイル情報処理方法 | |
US20130061011A1 (en) | Method of managing memory and image forming apparatus to perform the same | |
JP5526540B2 (ja) | 画像処理装置、アクセス制御方法、アクセス制御プログラム | |
JP2011076441A (ja) | 情報記録装置、情報記録方法及び情報記録用プログラム | |
JP2006285404A (ja) | 情報処理装置および記憶媒体の制御方法 | |
JP2015204071A (ja) | 情報処理装置、情報処理方法およびプログラム | |
JP2004287552A (ja) | ハードディスクのデータ消去方法、コンピュータプログラムおよび記録媒体 | |
JP2019101769A (ja) | 画像データ出力装置及びプログラム | |
JP2005313568A (ja) | 印刷装置、印刷装置におけるデータの消去方法およびプログラムならびに記録媒体 | |
JP2014115927A (ja) | プログラム更新装置、方法、プログラム、及び記憶媒体 | |
JP2005227983A (ja) | 情報記憶装置 | |
JP2005222531A (ja) | データ記録装置及びデータ記録方法 | |
JP4055712B2 (ja) | データ管理装置、データ管理方法及びデータ管理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130319 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140217 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140401 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5538970 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140430 |
|
LAPS | Cancellation because of no payment of annual fees |