JP5244124B2 - ホストおよびデータ蓄積装置間ファイル転送障害の回復 - Google Patents

ホストおよびデータ蓄積装置間ファイル転送障害の回復 Download PDF

Info

Publication number
JP5244124B2
JP5244124B2 JP2009544490A JP2009544490A JP5244124B2 JP 5244124 B2 JP5244124 B2 JP 5244124B2 JP 2009544490 A JP2009544490 A JP 2009544490A JP 2009544490 A JP2009544490 A JP 2009544490A JP 5244124 B2 JP5244124 B2 JP 5244124B2
Authority
JP
Japan
Prior art keywords
storage device
peripheral storage
data
transfer operation
host
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.)
Active
Application number
JP2009544490A
Other languages
English (en)
Other versions
JP2010515191A (ja
Inventor
ビシュコフ,エヤール
メイア,エイブラハム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Western Digital Israel Ltd
Original Assignee
SanDisk IL Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SanDisk IL Ltd filed Critical SanDisk IL Ltd
Publication of JP2010515191A publication Critical patent/JP2010515191A/ja
Application granted granted Critical
Publication of JP5244124B2 publication Critical patent/JP5244124B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1443Transmit or communication errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus

Description

本発明は、ホストとデータ蓄積装置との間で失敗したファイル転送から回復する方法、装置、およびコンピュータ可読媒体に関する。
演算技術では、デジタルカメラ、音楽プレイヤ、ハンドヘルドおよびパームトップ型コンピュータ、携帯電話機に使われるUSBフラッシュドライブ(UFD)、PCカード、小型蓄積カード等の形状因子による「周辺蓄積装置」が周知である。携帯型磁気ディスクや汎用蓄積装置を兼ねる携帯型デジタル機器(音楽プレイヤ、携帯電話機)も周辺蓄積装置に含まれる。
ホストと周辺蓄積装置とのデータ転送プロセス(1つ以上のデータオブジェクトの転送プロセス)は、完了前に中断してはならない。
多くのUFD装置は、データ転送操作の完了時に視覚的表示を提供する。例えば、一部のUFD装置にはライトがあって、データ転送操作の完了時に点滅する。
ホスト装置から周辺蓄積装置が早まって外れたり、停電やバッファの溢れが原因で、データ転送操作に失敗することが多くある。
このような事態が起きると、失敗したファイル転送の対象にあたる「目的」周辺蓄積装置に局在する「蓄積システムデータ構造」に損害がおよぶおそれがある。そのような「危険に晒される」蓄積システムデータ構造には、例えばファイルシステムテーブル(例えば、FAT32テーブル)、ディレクトリツリーデータ構造、フラッシュマッピングテーブル等があるが、これらに限定されず、いずれも「目的」周辺蓄積装置に「局在」することがある。残念ながら、そのような損害によって蓄積装置が壊れ、平均的なユーザにとって使い物にならなくなることがよくある。
図1は、データ転送操作の失敗が起こり得るシステムのブロック図である。図1の例では、ホスト側インターフェイス20と装置側インターフェイス55(例えば、USBまたはSDインターフェイス)との通信リンク15を介してホスト装置10(例えば、パーソナルコンピュータ、PDA、携帯電話機)が「目的」周辺蓄積装置50(例えば、UFD等のフラッシュ蓄積装置、MMCまたはSDカード等のフラッシュメモリカード)へ結合する。周辺蓄積装置の蓄積領域は通常、ユーザデータ(例えば、1つ以上のファイルやその他のデータオブジェクト)を蓄積するユーザデータ蓄積領域60と、システムデータを蓄積するシステムデータ蓄積領域70という2つの蓄積領域(物理的または論理的場所)に分けられる。
通常、周辺蓄積装置50に蓄積される蓄積システムデータは様々なデータ構造75A〜Bに整理され(これらの数は図1に見られるものと異なることがある)、例えばFAT32等のファイルシステムテーブルや、ディレクトリツリーやフラッシュマッピングテーブルを記述するデータ構造や、他の何らかのデータ構造に整理される。便宜上、蓄積システムデータ構造75A〜Bを概して蓄積システムデータ構造75と呼ぶこともある。
通常の操作過程で、例えば目的蓄積装置50でユーザデータの書き込みや消去が行われるときには、目的蓄積装置50のコントローラ(図示せず)によって1つ以上の蓄積システムデータ構造75が修正されることがある。
図1に見られるように、ホスト装置10から目的周辺蓄積装置50にかけてデータ(例えば、1つ以上のファイルやその他のデータオブジェクト)をコピーまたは移動する試み5がなされる。このホスト装置10から蓄積装置50に至るデータ転送の試みを、ホスト装置10から蓄積装置50への「発信」装置間データ転送試行と呼ぶ。
図1の例では、データ転送管理部25によって、例えば実行時に(例えば、マイクロプロセッサ89による実行時に)発信データ転送操作を遂行する蓄積システムコード(例えば、ファイル指向蓄積システムまたはオブジェクト指向蓄積システムの蓄積システムコード)によって、装置間データ転送操作がホスト側で処理される。一つの具体例において、オペレーティングシステムコンポーネントとしてデータ転送管理部25を設ける。
一例において、ホスト装置10から蓄積装置50へ1つのファイルをコピーする。この場合は、コピーするファイルのデータがユーザデータ領域60に書き込まれるだけでなく、システムデータ領域70にある種々のデータ構造も更新しなければならない。例えば、「新規」ファイルの存在を反映するためのディレクトリデータ構造を更新し、FATテーブルを更新し、フラッシュ管理テーブルを更新しなければならない。
1つ以上の蓄積システムデータ構造75を更新しているときにデータ転送操作が予期せず中断すると(例えば、装置が早まって脱離すること、停電、バッファの溢れ等による中断)、1つ以上の「部分的に修正された」蓄積システムデータ構造75が壊れるおそれがある。
システムデータ領域70にある全てのシステムデータをデータ転送操作中に書き換えるのではなく、システムデータの特定部分だけを書き換えればすむ状況もある。例えば、ある特定のテーブルのコピーが目的蓄積装置50に数多く常駐し(例えば、FAT32テーブルの、必ずしも同じではない、複数のコピー)、ファイル転送操作によって1つ以上のテーブルのみが修正され、ほかのテーブルは修正されない場合がある。蓄積システムデータ構造の一部分(例えば、ファイルシステムテーブルの一部分)だけが修正され、蓄積システムデータ構造の残りの部分は修正されずに残る場合もある。さらに、同じ蓄積システムテーブルの冗長コピー(例えば、「旧」バージョンと「新規」バージョンを含む)が蓄積装置50に多数常駐する場合もある。
図1の例では、発信データ転送5によっていくつかの蓄積システムデータ構造(蓄積システムデータ構造75A)が修正され、ほかの蓄積システムデータ構造(蓄積データ構造75B)は修正されない。図のアスタリスク記号は、このデータ構造の修正を示している。
この開示では、システムデータ領域70のうちのある特定の装置間データ転送操作のときに修正されない領域を蓄積装置50上の「クリーンロケーション」と呼ぶ。例えば、システムデータ構造75Bが常駐する領域が蓄積装置50上の「クリーンロケーション」の一例にあたる。
データ転送操作によっては、ある特定のデータ構造の一部分が修正され、ほかの部分が修正されずに残ることに理解すべきである。「修正されない」部分が常駐する領域も、装置間データ転送操作によって修正されない蓄積装置50上の「クリーンロケーション」の一例である。
ここで初めて開示する方法は、目的周辺蓄積装置を破損させる、ホスト装置から目的周辺蓄積装置への中断発信装置間データ転送操作から回復するための方法であって、この方法は、a)目的周辺蓄積装置の破損に先立ち、データ転送操作開始要請に応じて、ホスト側にて、i)後に中断データ転送操作により破損する周辺装置常駐蓄積システムデータ構造のシステムデータと、ii)システムデータが常駐し、後に中断発信データ転送操作によって上書きされない周辺蓄積装置上クリーンロケーションのハンドルと、からなるグループから選ばれる、少なくとも1つの回復用データオブジェクトを蓄積するステップと、b)中断発信データ転送操作による周辺蓄積装置の破損後に起こるホスト装置と周辺蓄積装置との事後結合に応じて、ホスト側に蓄積された少なくとも1つの回復用データオブジェクトを使用し、破損周辺蓄積装置を修復するステップと、を含む。
ある実施形態によると、周辺装置常駐蓄積システムデータ構造は、周辺蓄積装置のディレクトリツリーを記述する。
ある実施形態によると、周辺装置常駐蓄積システムデータ構造は、周辺蓄積装置のファイルシステムテーブルである。
ある実施形態によると、周辺装置常駐蓄積システムデータ構造は、周辺蓄積装置のフラッシュマッピングテーブルである。
ある実施形態によると、この方法は、c)中断発信装置間データ転送操作による目的周辺蓄積装置の破損に先立ち、データ転送操作開始要請に応じて、ホスト側にて、i)データ転送操作の1つ以上のデータオブジェクトの1つ以上の識別子の記述および、ii)装置間データ転送操作の周辺蓄積装置目的位置データのうちの少なくとも一方を蓄積するステップと、d)破損をきたすデータ転送操作の後、ホスト装置と周辺蓄積装置との事後結合に応じて、c)i)の記述およびc)ii)の目的位置データのうちの少なくとも一方を使用し、中断発信装置間データ転送操作を復元するステップと、をさらに含む。
ある実施形態によると、目的位置データはディレクトリパスデータを含む。
ある実施形態によると、i)少なくとも1つの回復用データオブジェクトは、周辺蓄積装置識別子に従い複数の回復用データオブジェクトにインデックスが付くホスト側インデックス付き回復用データ構造に蓄積され、ii)この方法は、c)中断データ転送操作によって周辺蓄積装置が破損した後、i)ホスト装置と周辺蓄積装置との事後結合に応じて、周辺蓄積装置の装置識別子を検出するステップと、ii)周辺蓄積装置の検出済み装置識別子をインデックスとして使用し、ホスト側インデックス付き回復用データ構造から、目的装置の、少なくとも1つの回復用データオブジェクトを回収するステップと、をさらに含む。
ある実施形態によると、i)この方法は、c)ホスト装置と周辺蓄積装置との事後結合に応じて、破損周辺蓄積装置を修復するため、ユーザ承認を催促するステップをさらに含み、ii)ステップb)の破損周辺蓄積装置の修復するステップは、ユーザ承認催促に対するユーザ承認を受け取ることを条件とする。
ある実施形態によると、ステップb)の修復するステップは、ユーザ入力をともなわずに遂行される。
ここで初めて開示するホスト装置は、a)周辺装置と結合する装置インターフェイスと、b)装置インターフェイスを介して装置間データ転送操作を管理するデータ転送管理部と、c)回復用データ保管部であって、i)中断発信装置間データ転送操作に先立ち、すなわちA)装置インターフェイスを介してホスト装置へ結合される目的周辺装置との、B)後に結合目的周辺装置を破損させる、中断発信装置間データ転送操作に先立ち、ii)発信装置間データ転送操作の開始要請に応じて、装置インターフェイスのホスト側にて、iii)中断データ転送操作により後に破損する周辺装置常駐蓄積システムデータ構造のシステムデータと、iv)システムデータが常駐し、後に中断データ転送操作によって上書きされない周辺蓄積装置上クリーンロケーションのハンドルと、からなるグループから選ばれる、少なくとも1つの回復用データオブジェクトを蓄積するように作動する、回復用データ保管部と、d)中断発信データ転送操作による周辺蓄積装置の破損後に起こるホスト装置と周辺蓄積装置との事後結合に応じて、ホスト側に蓄積された少なくとも1つの回復用データオブジェクトを使用し、破損目的周辺蓄積装置を修復するように作動する、周辺装置修復部と、を備える。
ある実施形態によると、システムデータ構造は、周辺蓄積装置のディレクトリツリーを記述する。
ある実施形態によると、システムデータ構造は、周辺蓄積装置のファイルシステムテーブルデータ構造である。
ある実施形態によると、システムデータ構造は、周辺蓄積装置のフラッシュ管理テーブルデータ構造である。
ある実施形態によると、ホスト装置は、e)データトランザクション用データ保管部であって、中断発信装置間データ転送操作による目的周辺蓄積装置の破損に先立ち、データ転送操作開始要請に応じて、装置インターフェイスのホスト側にて、i)データ転送操作の1つ以上のデータオブジェクトの1つ以上の識別子の記述、および、ii)装置間データ転送操作の周辺蓄積装置目的位置データのうちの少なくとも一方を蓄積するように作動する、データトランザクション用データ保管部と、f)データトランザクション復元部であって、i)破損をきたすデータ転送操作の後、ii)ホスト装置と周辺蓄積装置との事後結合に応じて、e)i)の記述およびe)ii)の目的位置データを使用し、中断発信装置間データ転送操作を復元するように作動する、データトランザクション復元部と、をさらに備える。
ある実施形態によると、目的位置データは、ディレクトリパスデータを含む。
ある実施形態によると、i)ホスト装置は、e)装置インターフェイスを介して結合する結合目的周辺装置の識別子を検出するように作動する、周辺装置識別子検出部をさらに備え、ii)回復用データ保管部は、周辺装置識別子検出部から受け取る結合目的周辺装置の識別子に従って、周辺蓄積装置識別子に従い複数の回復用データオブジェクトにインデックスが付くホスト側インデックス付き回復用データ構造に、少なくとも1つの回復用データオブジェクトを、蓄積するように作動し、iii)ホスト装置は、f)ホスト装置と周辺蓄積装置との事後結合に応じて、結合目的周辺装置の識別子をインデックスとして使用し、ホスト側インデックス付き回復用データ構造から、目的周辺装置の、少なくとも1つの回復用データオブジェクトを回収するように作動する、回復用データ回収部をさらに備える。
ある実施形態によると、i)ホスト装置は、f)ユーザインターフェイスをさらに備え、このユーザインターフェイスは、ホスト装置と周辺蓄積装置との事後結合に応じて、A)破損周辺蓄積装置の修復にあたってユーザ承認を求める要請をユーザに提示するように作動し、B)提示された要請に対する応答を受け取るように作動し、ii)周辺装置修復部は、提示された要請に対し肯定的な応答を受け取ることを条件とし、破損目的周辺蓄積装置の修復を遂行するように作動する。
ある実施形態によると、周辺装置修復部は、ユーザ入力の受け取りとは無関係に、目的周辺蓄積装置の修復を遂行するように作動する。
ここで初めて開示するコンピュータ可読媒体は、目的周辺蓄積装置を破損させる、ホストコンピュータ装置から目的周辺蓄積装置への中断発信装置間データ転送操作からホストコンピュータ装置を回復させるためのコンピュータ可読プログラムコードを蓄積するコンピュータ可読媒体であって、このプログラムコードは、a)目的周辺蓄積装置の破損に先立ち、データ転送操作開始要請に応じて、ホスト側にて、i)後に中断データ転送操作により破損する周辺装置常駐蓄積システムデータ構造のシステムデータと、ii)システムデータが常駐し、後に中断発信データ転送操作によって上書きされない周辺蓄積装置上クリーンロケーションのハンドルと、からなるグループから選ばれる、少なくとも1つの回復用データオブジェクトを蓄積することと、b)中断発信データ転送操作による周辺蓄積装置の破損後に起こるホスト装置と周辺蓄積装置との事後結合に応じて、ホスト側に蓄積された少なくとも1つの回復用データオブジェクトを使用し、破損周辺蓄積装置を修復することと、をプロセッサに実行させるように作動する。
ある実施形態によると、周辺装置常駐蓄積システムデータ構造は、周辺蓄積装置のディレクトリツリーを記述する。
ある実施形態によると、周辺装置常駐蓄積システムデータ構造は、周辺蓄積装置のファイルシステムテーブルである。
ある実施形態によると、周辺装置常駐蓄積システムデータ構造は、周辺蓄積装置のフラッシュマッピングテーブルである。
ある実施形態によると、プログラムコードは、c)中断発信装置間データ転送操作による目的周辺蓄積装置の破損に先立ち、データ転送操作開始要請に応じて、ホスト側にて、i)データ転送操作の1つ以上のデータオブジェクトの1つ以上の識別子の記述、および、ii)装置間データ転送操作の周辺蓄積装置目的位置データのうちの少なくとも一方を蓄積することと、d)破損をきたすデータ転送操作の後、ホスト装置と周辺蓄積装置との事後結合に応じて、c)i)の記述c)ii)の目的位置データのうちの少なくとも一方を使用し、中断発信装置間データ転送操作を復元することと、をプロセッサに実行させるように作動する。
ある実施形態によると、目的位置データは、ディレクトリパスデータを含む。
ある実施形態によると、i)プログラムコードは、周辺蓄積装置識別子に従い複数の回復用データオブジェクトにインデックスが付くホスト側インデックス付き回復用データ構造に、少なくとも1つの回復用データオブジェクトが蓄積されるようにさらに作動し、ii)プログラムコードは、c)中断データ転送操作によって周辺蓄積装置が破損した後、i)ホスト装置と周辺蓄積装置との事後結合に応じて、周辺蓄積装置の装置識別子を検出することと、ii)周辺蓄積装置の検出済み装置識別子をインデックスとして使用し、ホスト側インデックス付き回復用データ構造から、目的装置の、少なくとも1つの回復用データオブジェクトを回収することと、をプロセッサに実行させるようにさらに作動する。 ある実施形態によると、i)プログラムコードは、c)ホスト装置と周辺蓄積装置との事後結合に応じて、破損周辺蓄積装置を修復するためユーザ承認を催促することをプロセッサに実行させるようにさらに作動し、ii)プログラムコードは、ステップb)の破損周辺蓄積装置の修復にあたって、ユーザ承認催促に対するユーザ承認を受け取ることを条件とするように作動する。
ある実施形態によると、プログラムコードは、プロセッサによる実行時に、ステップb)の修復がユーザ入力なしで遂行されるように作動する。
別段の指示がない限り、特定の実施形態に関係する前述した特徴を別の実施形態に盛り込むこともできることに留意するべきである。
背景技術による代表的なシステムのブロック図である。 いくつかの例示的な実施形態による失敗データ転送操作回復のためのルーチンのフローチャートである。 いくつかの例示的な実施形態による失敗データ転送操作回復のための代表的なシステム構成のブロック図である。 いくつかの例示的な実施形態による失敗データ転送操作回復のためのルーチンのフローチャートである。 いくつかの例示的な実施形態による失敗データ転送操作回復のためのルーチンのフローチャートである。 いくつかの例示的な実施形態による失敗データ転送操作回復のための代表的なシステム構成のブロック図である。 いくつかの例示的な実施形態による失敗データ転送操作回復のための代表的なシステム構成のブロック図である。 いくつかの例示的な実施形態による失敗データ転送操作回復のための代表的なシステム構成のブロック図である。
特許請求の範囲は、図への参照を含む例示的な実施形態の詳細な説明を参照することで、よりよく理解される。説明、実施形態、および図は、特許請求の範囲を限定するものとして解釈してはならない。ここで開示する、失敗または中断発信装置間データ転送操作から回復するための方法、装置、およびコンピュータコードを蓄積するコンピュータ可読媒体の特徴があらゆる実施例でもれなく必要となるわけではないことも理解すべきである。また、この開示の全体を通じてプロセスまたは方法を提示もしくは説明するが、ある1つのステップが先に実行される別のステップに左右されることが文脈から明らかな場合を除き、方法のステップを任意の順序で実行できること、または同時に実行できることも理解すべきである。本願の全体を通じて使われている語「may 」は、必須の意味(つまり「must」の意味)ではなく許容の意味(つまり「having the potential to 」の意味)で使われている。
本発明の実施形態は、ホスト装置から周辺蓄積装置への失敗または中断発信データ転送操作から回復するための装置、方法、およびコンピュータ可読媒体に関する。実施形態によっては、失敗発信データ転送操作によって周辺蓄積装置が破損する前に、ホスト側で1つ以上の回復用データオブジェクトを蓄積する。ホスト装置は失敗データ転送によって周辺蓄積装置が破損した後に、周辺蓄積装置との事後結合に応じて、ホスト側に蓄積された1つ以上の回復用データオブジェクトを用いて破損した周辺蓄積装置を修復する。オプションとして、ホスト装置は事後結合に応じて中断または失敗発信データ転送操作をも復元する。
定義
ここでの説明の文脈で便宜を図るため、様々な用語をここに提示する。ここか本願のどこかほかの場所で明示的に、あるいは暗示的に定義が下される限り、そのような定義は、当業者による用語の使用に整合するものと理解すべきである。また、そのような定義は、そのような使用に整合する可能な限り広い意味で解釈しなければならない。
「周辺蓄積装置」は、装置筐体と「接触」または無接触装置インターフェイスとを具備する装置を指し、周辺蓄積装置はこの装置インターフェイスを介してホスト装置に「結合」し、ホスト装置を相手にデータを交換する。周辺蓄積装置は一非限定的な例において、ホスト装置の筐体のポート(プラグまたはソケット)へ可逆的に付着でき、さもなければ何らかの介在する外部ケーブルまたは外部受台を介して可逆的に付着できる。
周辺蓄積装置は、「ホスト側」と「周辺装置側」とがある「マスター・スレーブ」方式の通信プロトコルを使ってホストと通信する。「マスター・スレーブ」通信プロトコルには、例えばユニバーサルシリアルバス(USB)プロトコル、マルチメディアカード(MMC)プロトコル、セキュアデジタル(SD)プロトコル等があるが、これらに限定されない。
「結合」した「ホスト」と「周辺蓄積装置」は、(i)「ポイント間」データリンク(「有線接続」、または中間ルーチン装置を必要としない短距離無線リンク)を介して互いに連絡をとり、ホストと周辺装置との間には「ポイント間」データリンクを介してデータが流れ、(ii)「マスター・スレーブ」プロトコルを使って通信するように構成される。つまり、ホストは、このプロトコルが定める「ホスト」またはマスターの役割の中で周辺蓄積装置と通信するように構成され、周辺蓄積装置は、このプロトコルが定める「スレーブ」または周辺装置の役割の中でホストと通信するように構成される。
ホスト装置から周辺蓄積装置への「装置間発信データ転送操作」は、ホスト装置(例えば、ラップトップ、デスクトップ、携帯電話機、個人用携帯情報端末(PDA)、その他)から周辺蓄積装置にかけて、具体的には周辺蓄積装置の指定された「目的」位置(物理的または論理的位置)または1組の位置にかけて、1つ以上の「目的」「データオブジェクト」をコピーまたは移動することを指す。「目的」「データオブジェクト」は一非限定的な例において、コンピュータファイルである。目的データオブジェクトにはこのほかにも、例えばコンピュータレコード、フォルダ、アドレス帳(またはその部分)、デジタルメディアオブジェクト(例えば、映画、音楽アルバム、画像、その他)等があるが、これらに限定されない。「目的」位置はフォルダ、ディレクトリ(例えば、ディレクトリツリー内のディレクトリ)、セクタ、ブロック、あるいは当技術分野で公知の他の何らかのやり方で指定できる。
「装置間データ転送」の一非限定的な例として、ホスト装置と周辺蓄積装置との間で行われる1つ以上のファイルのファイル転送操作がある。「装置間データ転送」のまた別の非限定的な例として、メディア転送プロトコル(MTP)を含むが、これに限定されない、所謂オブジェクト指向蓄積プロトコルを使用し、ホスト装置と周辺蓄積装置との間で行われる1つ以上のデータオブジェクトの転送がある。
ホストから周辺蓄積装置への「発信」装置間データ転送操作は、ホスト装置から周辺蓄積装置にかけて1つ以上のデータオブジェクト(ファイルを含むが、これに限定されない)を移動またはコピーするデータ転送操作を指す。便宜上、装置間データ転送操作の方向、具体的にはホスト装置から周辺蓄積装置に至る方向を伝えるため、用語「発信」を単独で使用することもある。
ホスト装置が1つ以上の周辺蓄積装置に随時結合されうることを理解すべきである。データ転送操作の「目的」または「転送先」周辺装置とは、1つ以上のデータオブジェクトをコピーまたは転送する試みの対象となる周辺装置である。
図2Aから図2Bの解説:序文
図2Aは、いくつかの例示的な実施形態に従い失敗または中断発信装置間データ転送操作に対処する代表的な手法を説明するフローチャートである。図2Aにおけるステップの順序は単なる例示であって、これとは別の順序でステップを実行する実施形態も本発明者により企図されることに留意すべきである。これは図2Aばかりでなく、ルーチンのフローチャートが記載された他の図にも当てはまる(例えば、図3および図4)。
図2Aに記載されたルーチンは、例えば図2Bのブロック図に記載されたシステムで遂行できる。現在説明しているブロック図の図2B(または後に説明する図5Aから図5Cのブロック図)に見られるいずれの要素も、例えばデータ転送管理部25、装置修復部40、装置インターフェイス20、回復用データ保管部30を、ハードウェア、ファームウェア、および/またはソフトウェアの任意の組み合わせで実施できることに留意するべきである。いくつかの実施形態では、ソフトウェアはプロセッサ89によって実行される。
そこで図2Aの手法を参照し、ステップS201ではホスト装置10が取外し可能な蓄積装置50に結合される。その後、ホスト装置10はステップS205で、データ転送操作遂行要請、例えば装置間通信リンク15を介して「目的」蓄積装置50に1つ以上のファイルをコピーする要請を検出する。この要請は任意の出所から到来し、例えばホスト装置10に接続されたマウスおよび/またはキーボードから、あるいは他の何らかの出所から到来する。
図2Aから図2Bの解説:回復用データオブジェクトの解説
ステップS209では、検出されたデータ転送操作遂行要請に応じて1つ以上の回復用データオブジェクトをホスト側に蓄積する。後にステップS217で破損した周辺蓄積装置をステップS241で修復するときには、1つ以上の回復用データオブジェクトを使用する。以下回復用データオブジェクトをさらに詳しく説明する。
一非限定的な例において、目的周辺蓄積装置50に常駐する1つ以上のデータ蓄積システムデータ構造(またはこれの一部分)をホスト側で「ミラーリング」する。例えばこれを、ホスト装置10の揮発性または不揮発性メモリか、あるいはホスト装置の他の何らかの場所に蓄積する。つまり、この例では、ステップS213で発信データ転送操作が始まる前に、発信データ転送操作によって壊れる可能性のある蓄積システムデータの「バックアップ」をホスト側で作成する。
さらに別の例では、蓄積システムデータをミラーリングするのではなく、「周辺蓄積装置上のクリーンロケーション」の「ハンドル」または記述をホスト側で蓄積すれば十分である。この「ハンドル」は、周辺蓄積装置50のシステムデータ領域70で「手付かずの」物理的または論理的位置を記述するものである。
「ハンドル」は一非限定的な例において物理または論理アドレスである。このほかに、周辺装置に常駐するデータオブジェクトの識別子も「ハンドル」の非限定的な例であり、このオブジェクトは、周辺蓄積装置50のシステムデータ領域70にある特定の場所に対応付けられるか、さもなければこの場所に常駐する。
そこで一非限定的な例において、目的蓄積装置50のシステムデータ領域70(論理的または物理的領域)にファイルアクセステーブル(FATテーブル)の2つのコピー、すなわち「第1の」コピーと「第2の」コピーとが、常駐する。この例では、FATテーブルの第1のコピー(「コピーA」)だけが修正可能であり、それ故、発信データ転送操作によって破損する可能性があるのに対して、FATテーブルの第2のコピーがファイル転送操作中に修正および/または上書きされないことが公知である。したがって、FATテーブルの第2のコピーが常駐する領域(論理的または物理的領域)は「クリーンロケーション」の一例である。この非限定的な例では、このクリーンロケーションの「ハンドル」をホスト側に蓄積することができる。この「ハンドル」は単純なオブジェクト識別子「コピーB」であったり、アドレスであったり(例えば、「コピーB」が常駐するブロックのリストによるアドレス、あるいは物理または論理アドレスを指定する他の何らかの手段によるアドレス)、「コピーB」、および/またはコピーBが常駐する場所の、何らかの記述であったりする。
以上の例が、後にステップS241で周辺蓄積装置を修復するにあたって必要となる「最低限のデータ」を伝えるものであることに留意するべきである。実施形態によっては、ステップS209でこの最低限のデータより多くのデータをホスト側に蓄積し、後にS241で周辺蓄積装置を修復するときに使用できることを理解すべきである。
一実施形態において、以降のデータ転送操作で修正されない周辺蓄積装置常駐の蓄積システムテーブルかこれのセクションも、発信データ転送操作の開始に先立ちホスト側にコピーする。
この場合、以降の発信データ転送操作によって修正される蓄積システムデータがどれなのかを事前にホスト装置で明確に判断する必要がないことを理解すべきである。しかし、実施形態によっては、ホスト側でそのような判断を事前に下すと有利な場合もある。状況によっては、例えば周辺装置50からホスト側へコピーしなければならない蓄積システムデータの量を最小限に抑えるのにこれを役立てることができる。
一非限定的な例において、ステップS209における1つ以上の回復用データオブジェクトの蓄積を、図2Bの回復用データ保管部30で果たすことができ、この回復用データ保管部は、例えばホスト装置のプロセッサによって実行されるソフトウェアエージェントとして設けることができる。
ステップS209で蓄積する1つ以上の回復用データオブジェクトは、ホスト装置上の任意の場所、あるいは「ホスト側」の任意の別の場所に蓄積でき、この場所を「回復用データ保管所35」と呼ぶことに留意するべきである。したがって、図2Bでは回復用データ保管所35がホスト装置10上にあるものとして示されているが、回復用データ保管所35はホスト装置10から分離することもある。回復用データ保管所35は、ホスト装置10の揮発性メモリ(例えば、RAM)および/または不揮発性メモリの任意の組み合わせで実施でき、例えば目的蓄積装置50とは別の不揮発性メモリ装置で実施できる。ホスト装置は、目的蓄積装置50とは別の不揮発性メモリ装置に回復用データ保管所35が常駐するこの例で、異なるデバイスインターフェイス(図示せず)を介して、すなわちホスト側インターフェイス20とは別のホスト側インターフェイスを介して、回復用データ保管所35が常駐するこの「別の不揮発性メモリ装置」(図示せず)と結合できる。とはいえ、ホスト10と目的蓄積装置50との通信リンク15の「ホスト側」に全面的に、この「別の不揮発性メモリ装置」(図示せず)が常駐することを理解すべきである。
ステップS213〜S241の解説
ステップS213では発信データ転送操作が始まる。ステップS217ではこの発信データ転送操作が予期せず/途中で中断し、これにともない周辺蓄積装置50は破損する。 ファイル転送操作の中断によってホスト装置から周辺蓄積装置が「分離」または「脱離」することもあり、周辺蓄積装置はこの場合に、少なくともある程度の期間はホスト装置とデータを交換できなくなる。これは例えば、停電、ホスト側ポートからの周辺蓄積装置の分離、バッファの溢れ等に起因する。
周辺蓄積装置は破損(ステップS217)の後にステップS223で再びホスト装置と結合する。この時破損した周辺蓄積装置50が再びホスト装置10と通信することもある。
ステップS241では、ホスト装置10が再結合の検出に応じて周辺蓄積装置を修復するべく行動する。一例において、装置修復部40によってこれを果たすこができ、この装置修復部は、例えばホスト装置10のプロセッサによって実行されるソフトウェアエージェントとして設けることができる。
ステップS241では、ホスト側に蓄積された1つ以上の回復用データオブジェクトをホスト側の揮発性および/または不揮発性メモリから回収する。実施形態によっては、回復用データ保管所35から1つ以上の回復用データオブジェクトを回収する。
1つ以上の回復用データオブジェクトを回収した後には、これを使って周辺蓄積装置を修復する。一例において、ステップS209でホスト側へコピーした蓄積システムデータ構造75かこれの一部分を、装置修復のため再度周辺蓄積装置50にコピーする。
別の例では、周辺装置50上のクリーンロケーションのハンドルを使用し、周辺装置50のクリーンロケーションで破損データの「破損していない」コピーまたはバージョンを回収する。この回収したデータは周辺蓄積装置50の修復に役立てることができる。一例において、回収したデータを使って破損した1つ以上の蓄積システムデータ構造75を修復する。さらに別の非限定的な例において、破損した蓄積システムデータ構造75A*(図2Bのアスタリスクは破損を意味する)を周辺蓄積装置50で「使用不能」とマークし、周辺蓄積装置50のシステムデータ領域70で破損したデータ構造の「ポインタ」を破損していないデータ構造(例えば、75B)の「ポインタ」に差し替える。
一非限定的な例において、発信データ転送操作S213が始まる前の周辺蓄積装置50の状態を表す蓄積システムデータを目的蓄積装置50の領域70に蓄積して残しておく。こうすることで、中断データ転送操作で被った「ダメージの挽回」が可能になる。
データ転送操作の「復元」と図3の解説
この開示で「データ転送操作の復元」とは、ステップS223で周辺蓄積装置50と再び結合した後のホスト装置が、発信データ転送操作(ステップS213で試みたもの)で指定された「目的」データオブジェクトを周辺蓄積装置50上の「目的位置」へコピーおよび/または移動するため措置を講じることを指す。
例えば、目的周辺装置へ部分的に転送(移動またはコピー)されたデータオブジェクトがある場合の「データ転送操作の復元」では、部分的に転送されたデータオブジェクトを周辺蓄積装置50の目的位置へ再送することがある。
場合によっては、データ転送操作で指定された1つ以上のデータオブジェクトが、中断または失敗データ転送操作試行のときに部分的にすら周辺蓄積装置50へ転送されないこともある。中断データ転送操作が目的蓄積装置50に対して1つ以上のデータオブジェクトの書き込みを試みるユースケースでは、(i)1つ以上のデータオブジェクトの全てが目的蓄積装置50に「首尾よく」書き込まれる場合と、(ii)1つ以上のデータオブジェクトが目的蓄積装置50に「部分的に」書き込まれる場合と、(iii)1つ以上のデータオブジェクトが目的周辺蓄積装置50に部分的にすら書き込まれない場合とがある。この例のデータ転送操作復元は、(i)’「首尾よく」書き込まれた各データオブジェクトにつき、何もしないか、さもなければ周辺蓄積装置50に対するデータオブジェクトの書き込みをやり直すことと、(ii)’「部分的に」転送された各データオブジェクトにつき、データオブジェクトの書き込みを「最初から」やり直すか、「中断したデータオブジェクト書き込みプロセスを完了すること」と、(iii)’「書き込まれなかった」各データオブジェクトにつき、周辺蓄積装置50にデータオブジェクトを首尾よく書き込むこととを含む。(i)、(ii)、および(iii)のいずれか1つ以上が発生する場合は、(i)’、(ii)’、および(iii)’の該当するものだけを実行すればよい。
ある実施形態によっては、周辺蓄積装置の修復後に自動的に発信データ転送操作を復元するのが望ましい。この場合は、周辺蓄積装置50に対するホスト装置10の再結合に応じて自動的に発信データ転送操作を復元できる。こうすれば、例えば周辺蓄積装置50の修復時にデータオブジェクトおよび/または目的位置を再度指定するという退屈な作業からユーザが解放され、便利である。
次に、図3を参照する。ステップS201、S205、S213、S217、S223、およびS241は、図2Aおよび図3と同じである。
図3のルーチンでは、図2Aのルーチンにはない2つのさらなるステップ、すなわちステップS211およびS245が、加わる。
発信データ転送操作の開始に先立つステップS211では、1つ以上の「データ転送操作復元用オブジェクト」をホスト側、例えば揮発性および/または不揮発性メモリに保存する。これらの「データ転送操作復元用オブジェクト」は、後にステップ245でデータ転送操作の復元に使われる。
データ復元用オブジェクトは、i)データ転送操作の1つ以上のデータオブジェクトの1つ以上の識別子の記述(例えば、ファイルの名前、および/またはその他データオブジェクトの名前、および/またはオブジェクトが常駐するホスト装置上の位置)と、ii)装置間データ転送操作の周辺蓄積装置目的位置データ(例えば、1つ以上の目的パスのディレクトリパスデータ、またはその他の「転送先」位置情報)のうちの1つ以上を含む。 これらの「データ復元用オブジェクト」は、揮発性および/または不揮発性メモリの任意の組み合わせにより、ホスト側の任意の場所に蓄積できる(オプションとしてホスト装置そのものに蓄積できるが必ずしもその必要はない)。
ステップS245では、データ復元用オブジェクトを使ってデータ転送操作を復元する。例えば、ステップS211で識別子を保存した種々のファイルやその他のデータオブジェクトを、(i)ホスト側から回収し、かつ(ii)目的周辺蓄積装置50、例えばステップ211でホスト側に保存した1つ以上の目的位置へ書き込むことができる。
データ転送操作の「復元」と図4の解説
図4は、ある特定のホスト装置10が2つ以上の周辺蓄積装置50と結合し、それぞれの周辺蓄積装置50を相手に発信データ転送操作を試みるが、発信データ転送操作は結局失敗し、周辺蓄積装置50を破損することになるユースケースに関係する。
その後、ホスト装置10は、いずれか1つの周辺蓄積装置50(つまり、多数の失敗発信データ転送操作に関与していたかもしれない周辺蓄積装置)との事後結合に応じて「当該」周辺蓄積装置50を識別してこれを「思い出し」(つまり、当該周辺蓄積装置を、「当該」蓄積装置の中断データ転送操作の前か後に中断した別のデータ転送操作に関与していたほかの周辺蓄積装置と「混同」せず)、再結合した周辺蓄積装置50に対応する「適切な」回復用データオブジェクトを使用し、事後結合した破損周辺蓄積装置を「適切に」修復する。
これを果たすには、(i)2つ以上の周辺蓄積装置の回復用データオブジェクトを蓄積する、(ii)周辺蓄積装置を識別する「識別子」に従って回復用データオブジェクトにインデックスを付ける、および(iii)いずれかの破損周辺蓄積装置50と「再結合」するときに、周辺蓄積装置の識別子を「インデックス」または「キー」として使用し、「該当する」回復用データオブジェクト(ホスト側)を回収すると、有利である。
次に、図4を参照する。ステップS201、S205、S209、S213、S217、S223、およびS241は、図2Aおよび図4と同じである。
図4のルーチンでは、4つのさらなるステップS203、S210、S227、S240が加わる。
ステップS203では周辺蓄積装置50の識別子を検出する。例えば、多くのUFDデバイスはAPIを提供し、ホストはUFDを一意に識別する「一意な電子シリアル番号」を読み取ることができる。当業者であればこれとは別の実施例も可能であることを理解すべきである。
目的周辺蓄積装置50が破損する前のステップS209では、1つ以上の回復用データオブジェクトをホスト側(回復用データ保管所35)に蓄積し、ステップS210では、装置識別子に従いホスト側で1つ以上の蓄積済み回復用データオブジェクトにインデックスを付ける。
後にステップS223で再結合した後には、ステップS227で再結合周辺蓄積装置の装置識別子を検出する(例えば、APIを起動し一意な装置識別子にアクセスする)。ステップS240では、あらかじめ蓄積しインデックスを付けておいた当該再結合周辺蓄積装置50の1つ以上の回復用データオブジェクト(ステップS209で蓄積し、ステップS210でインデックスを付けたもの)を、装置識別子(再結合後に読み取られたもの)を使って回収する。
この回収(ステップS240)は、インデックス付きデータ構造の中で「一致する装置識別子」を探し(完全な一致、最良の一致、凡その一致、または当技術分野で公知の他の何らかの一致手法を使用)、一致する装置識別子が見つかったら、周辺蓄積装置に対応する1つ以上のインデックス付き回復用データオブジェクトを回収する。
周辺装置識別子に従って1つ以上の回復用データオブジェクトにインデックスを付け、その後、周辺装置識別子(ステップS223の再結合後に再度検出されるもの)に従って1つ以上の回復用データオブジェクトを回収する教示内容を、データ転送操作を装置単位で復元する目的に応用できることを理解すべきである。つまり、これらの教示内容を応用し、ホスト側で1つ以上のデータ転送操作回復用オブジェクトにインデックスを付け、周辺装置識別子(ステップS223の再結合後に再度検出されるもの)に従い1つ以上のデータ転送操作を復元(図3、ステップS245)することもできる。
「自動」装置修復および/または復元VSユーザ始動装置修復および/または復元に関する解説
実施形態によっては、周辺蓄積装置の修復にあたってユーザの入力や行為を要求せず(例えば、ステップS223の装置再結合後にユーザの入力や行為を要求せず)、図2A、図2B、図3、および図4に記載された手法を実施することもできる。こうすれば、この点について特別な知識を持つ、および/または行動を起こす、必要から「ユーザを解放」することができる。
しかし、これが必須の制限ではないことに留意するべきである。実施形態によっては、蓄積装置を修復し、かつ/またはデータ転送操作を復元するプロセスの前および/または最中に、ユーザ入力を催促することが望ましい場合もある。
一例において、ユーザが装置の修復および/またはトランザクションの復元を望むか否かを問い合わせることができる。
一例において、装置の修復および/またはトランザクションの復元を望むか否かをユーザに尋ねて「肯定」回答を得ることが、装置修復および/またはデータ転送操作復元の条件となる。
図5Aから図5Cの解説
図5Aから図5Cは、いくつかの例示的な実施形態による代表的なシステム構成のブロック図である。
図5Aのホスト装置10はデータトランザクション用データ保管部92を含み、このデータトランザクション用データ保管部は、中断発信装置間データ転送操作による目的周辺蓄積装置の破損に先立ち、データ転送操作開始要請に応じて、装置インターフェイスのホスト側にて、i)データ転送操作の1つ以上のデータオブジェクトの1つ以上の識別子の記述、およびii)装置間データ転送操作の周辺蓄積装置目的位置データのうちの少なくとも一方を蓄積するように作動する。図5Aのホスト装置10はさらにデータトランザクション復元部94を備え、このデータトランザクション復元部は、i)破損をきたすデータ転送操作の後、ii)ホスト装置と周辺蓄積装置との事後結合に応じて、i)データ転送操作の1つ以上のデータオブジェクトの1つ以上の識別子の記述、および/またはii)装置間データ転送操作の周辺蓄積装置目的位置データを使用し、中断発信装置間データ転送操作を復元するように作動する。
実施形態によっては、図3に記載されたルーチンの遂行に図5Aのシステムを役立てることができる。
次に、図5Bを参照する。図5Bの例で、回復用データ保管所35は多数の周辺蓄積装置50の回復用データを含み、周辺装置識別子に従いインデックスが付けられる。これを受けて図5Bの例では、回復用データ保管所35にインデックスが付いていることを意味する一重引用符が回復用データ保管所35の数字「35」の後ろに付いている。
図5Bのホスト装置10は、装置インターフェイスを介して結合される結合目的周辺装置の識別子を検出するように作動する、周辺装置識別部96と、回復用データ回収部98とを備え、同回復用データ回収部は、ホスト装置と周辺蓄積装置との事後結合に応じて、結合目的周辺装置の識別子をインデックスとして使用し、ホスト側のインデックス付き回復用データ構造から、検出済み識別子に対応する当該目的周辺装置の、少なくとも1つの回復用データオブジェクトを回収するように作動する。
実施形態によっては、図4に記載されたルーチンの遂行に図5Bのシステムを役立てることができる。
次に、図5Cを参照する。図5Cのホスト装置10はユーザインターフェイス99を備える。ユーザインターフェイス99はいくつかの実施形態において、ホスト装置と周辺蓄積装置との事後結合に応じて、A)破損周辺蓄積装置の修復にあたってユーザ承認を求める要請をユーザに提示するように作動し、かつB)提示された要請に対する応答を受け取るように作動する。これらの実施形態では、周辺装置修復部40は、提示された要請に対し肯定応答を受け取ることを条件とし、破損した目的周辺蓄積装置の修復を遂行するように作動する。
ブロック図5Aから図5Cに見られるいずれの要素、例えばデータトランザクション用データ保管部92、データトランザクション復元部94、周辺装置識別部96、回復用データ回収部98、ユーザインターフェイス99を、ハードウェア、ファームウェア、および/またはソフトウェアの任意の組み合わせで実施できることに留意するべきである。実施形態によっては、プロセッサ89によってソフトウェアが実行される。
図5Aから図5Cに示されたそれぞれのアーキテクチャが見込みのある1アーキテクチャに過ぎないことに留意するべきである。例えば、図5Aでは、データトランザクション用データ保管部92が回復用データ保管部30から独立したコンポーネントとして示されている。代替の実施形態のデータトランザクション用データ保管部92は、回復用データ保管部30のサブコンポーネントである。当業者であれば、このコンポーネントや図5Aから図5C(および図2B)に見られる他のコンポーネントに数多くのバリエーションがあること、そして図5Aから図5C(および図2B)に見られるそれぞれのアーキテクチャが一例として提示されていて、制限を意図するものではないことを認識できるはずである。データトランザクション用データ保管部92、データトランザクション復元部94、周辺装置識別部96、回復用データ回収部98、ユーザインターフェイス99はいずれも代替の実施形態において、開示された他の要素のサブコンポーネントとして設けることができる。
さらに、ブロック図2B、図5Aから図5Cに記載されたホスト装置10に常駐する要素の組み合わせが制限を意図するものでないことを理解すべきである。例えば、周辺装置識別部96および回復用データ回収部98と、データトランザクション用データ保管部92およびデータトランザクション復元部94とを兼ね備える実施形態も本発明者により企図される。当業者であれば、いかなる要素の組み合わせであれ可能であることも理解すべきである。
結論
また、図との関係で前述した操作を実施する命令および/またはデータをコンピュータ可読媒体で受信すること、送信すること、または蓄積することを、前述した実施形態のいずれかに盛り込むことができることに留意するべきである。コンピュータ可読媒体は一般的に、磁気またはフラッシュまたは光媒体等の蓄積媒体やメモリ媒体、例えばディスクまたはCD−ROM、RAM、ROM等の揮発性または不揮発性蓄積媒体を含むほか、ネットワークおよび/または無線リンク等の通信媒体を介して伝達される電気、電磁、またはデジタル信号等の伝送媒体または信号を含む。
これまで代表的な実施形態を説明してきたが、当業者にとって、特許請求の範囲における範囲と精神から逸脱することなくこれらの実施形態の様々な同等物、変更、修正、改良が可能であることは明白である。具体的に、ここで説明されていない特徴を組み合わせて種々の実施形態に盛り込むこともできる。したがって、特許請求の範囲は前述した説明に制限されるものではない。

Claims (24)

  1. ターゲットとなる周辺蓄積装置を破損させるホスト装置からターゲットとなる周辺蓄積装置への中断発信装置間データ転送操作から回復する方法であって、
    a)ターゲットとなる周辺蓄積装置の破損に先立ち、データ転送操作開始要請に応じて、ホスト側にて、
    i)後に中断データ転送操作により破損する周辺蓄積装置常駐蓄積システムデータ構造のシステムデータと、
    ii)前記システムデータが常駐し、後に中断発信データ転送操作によって上書きされない周辺蓄積装置上クリーンロケーションのハンドル(物理アドレス,論理アドレスまたはデータオブジェクトの識別子)と、からなるグループから選ばれる、少なくとも1つの回復用データオブジェクトを蓄積するステップと、
    b)中断発信データ転送操作による周辺蓄積装置の破損後に起こるホスト装置と周辺蓄積装置との事後結合に応じて、前記ホスト側に蓄積された少なくとも1つの前記回復用データオブジェクトを使用し、破損した周辺蓄積装置を修復するステップと、
    c)中断発信装置間データ転送操作によるターゲットとなる周辺蓄積装置の破損に先立ち、前記データ転送操作開始要請に応じて、ホスト側にて、
    i)データ転送操作の1つ以上のデータオブジェクトの1つ以上の識別子の記述、および、
    ii)装置間データ転送操作の周辺蓄積装置目的位置データのうちの少なくとも一方を蓄積するステップと、
    d)破損をきたすデータ転送操作の後、ホスト装置と周辺蓄積装置との前記事後結合に応じて、c)i)の前記記述およびc)ii)の前記目的位置データのうちの少なくとも一方を使用し、中断発信装置間データ転送操作を復元するステップと、
    含む方法。
  2. ターゲットとなる周辺蓄積装置を破損させるホスト装置からターゲットとなる周辺蓄積装置への中断発信装置間データ転送操作から回復する方法であって、
    a)ターゲットとなる周辺蓄積装置の破損に先立ち、データ転送操作開始要請に応じて、ホスト側にて、
    i)後に中断データ転送操作により破損する周辺蓄積装置常駐蓄積システムデータ構造のシステムデータと、
    ii)前記システムデータが常駐し、後に中断発信データ転送操作によって上書きされない周辺蓄積装置上クリーンロケーションのハンドル(物理アドレス,論理アドレスまたはデータオブジェクトの識別子)と、からなるグループから選ばれる、少なくとも1つの回復用データオブジェクトを蓄積するステップと、
    b)中断発信データ転送操作による周辺蓄積装置の破損後に起こるホスト装置と周辺蓄積装置との事後結合に応じて、前記ホスト側に蓄積された少なくとも1つの前記回復用データオブジェクトを使用し、破損した周辺蓄積装置を修復するステップと、
    i)前記少なくとも1つの回復用データオブジェクトは、周辺蓄積装置識別子に従い複数の回復用データオブジェクトにインデックスが付くホスト側インデックス付き回復用データ構造に蓄積され、
    ii)前記方法は、
    c)中断データ転送操作によって周辺蓄積装置が破損した後、
    i)ホスト装置と周辺蓄積装置との前記事後結合に応じて、周辺蓄積装置の装置識別子を検出するステップと、
    ii)周辺蓄積装置の前記検出済み装置識別子をインデックスとして使用し、前記ホスト側インデックス付き回復用データ構造から、ターゲットとなる周辺蓄積装置の、前記少なくとも1つの回復用データオブジェクトを回収するステップと、
    含む方法。
  3. ターゲットとなる周辺蓄積装置を破損させるホスト装置からターゲットとなる周辺蓄積装置への中断発信装置間データ転送操作から回復する方法であって、
    a)ターゲットとなる周辺蓄積装置の破損に先立ち、データ転送操作開始要請に応じて、ホスト側にて、
    i)後に中断データ転送操作により破損する周辺蓄積装置常駐蓄積システムデータ構造のシステムデータと、
    ii)前記システムデータが常駐し、後に中断発信データ転送操作によって上書きされない周辺蓄積装置上クリーンロケーションのハンドル(物理アドレス,論理アドレスまたはデータオブジェクトの識別子)と、からなるグループから選ばれる、少なくとも1つの回復用データオブジェクトを蓄積するステップと、
    b)中断発信データ転送操作による周辺蓄積装置の破損後に起こるホスト装置と周辺蓄積装置との事後結合に応じて、前記ホスト側に蓄積された少なくとも1つの前記回復用データオブジェクトを使用し、破損した周辺蓄積装置を修復するステップと、
    i)前記方法は、
    c)ホスト装置と周辺蓄積装置との前記事後結合に応じて、破損した周辺蓄積装置を修復するため、ユーザ承認を催促するステップをさらに含み、
    ii)ステップb)の前記破損した周辺蓄積装置を修復するステップは、前記ユーザ承認催促に対する前記ユーザ承認を受け取ることを条件とする方法。
  4. 請求項1,2または3記載の方法において、
    前記周辺蓄積装置常駐蓄積システムデータ構造は、周辺蓄積装置のディレクトリツリーを記述する方法。
  5. 請求項1,2または3記載の方法において、
    前記周辺蓄積装置常駐蓄積システムデータ構造は、周辺蓄積装置のファイルシステムテーブルである方法。
  6. 請求項1,2または3記載の方法において、
    前記周辺蓄積装置常駐蓄積システムデータ構造は、周辺蓄積装置のフラッシュマッピングテーブルである方法。
  7. 請求項1記載の方法において、
    前記目的位置データは、ディレクトリパスデータを含む方法。
  8. 請求項1,2または3記載の方法において、
    ステップb)の前記修復するステップは、ユーザ入力をともなわずに遂行される方法。
  9. ホスト装置であって、
    a)周辺蓄積装置と結合する装置インターフェイスと、
    b)前記装置インターフェイスを介して装置間データ転送操作を管理するデータ転送管理部と、
    c)回復用データ保管部であって、
    i)中断発信装置間データ転送操作に先立ち、すなわち
    A)前記装置インターフェイスを介して前記ホスト装置へ結合されるターゲットとなる周辺蓄積装置との、
    B)後に前記結合したターゲットとなる周辺蓄積装置を破損させる、中断発信装置間データ転送操作に先立ち、
    ii)前記発信装置間データ転送操作の開始要請に応じて、前記装置インターフェイスのホスト側にて、
    iii)中断データ転送操作により後に破損する周辺蓄積装置常駐蓄積システムデータ構造のシステムデータと、
    iv)前記システムデータが常駐し、後に中断データ転送操作によって上書きされない周辺蓄積装置上クリーンロケーションのハンドル(物理アドレス,論理アドレスまたはデータオブジェクトの識別子)と、からなるグループから選ばれる、少なくとも1つの回復用データオブジェクトを蓄積するように作動する、回復用データ保管部と、
    d)前記中断発信データ転送操作による前記周辺蓄積装置の破損後に起こるホスト装置と周辺蓄積装置との事後結合に応じて、前記ホスト側に蓄積された少なくとも1つの前記回復用データオブジェクトを使用し、前記破損したターゲットとなる周辺蓄積装置を修復するように作動する、周辺蓄積装置修復部と、
    e)データトランザクション用データ保管部であって、前記中断発信装置間データ転送操作による前記ターゲットとなる周辺蓄積装置の破損に先立ち、前記データ転送操作開始要請に応じて、前記装置インターフェイスの前記ホスト側にて、
    i)データ転送操作の1つ以上のデータオブジェクトの1つ以上の識別子の記述、および、
    ii)装置間データ転送操作の周辺蓄積装置目的位置データのうちの少なくとも一方を蓄積するように作動する、データトランザクション用データ保管部と、
    f)データトランザクション復元部であって、
    i)破損をきたすデータ転送操作の後、
    ii)ホスト装置と前記周辺蓄積装置との前記事後結合に応じて、e)i)の前記記述およびe)ii)の前記目的位置データを使用し、前記中断発信装置間データ転送操作を復元するように作動する、データトランザクション復元部と、
    備えるホスト装置。
  10. ホスト装置であって、
    a)周辺蓄積装置と結合する装置インターフェイスと、
    b)前記装置インターフェイスを介して装置間データ転送操作を管理するデータ転送管理部と、
    c)回復用データ保管部であって、
    i)中断発信装置間データ転送操作に先立ち、すなわち
    A)前記装置インターフェイスを介して前記ホスト装置へ結合されるターゲットとなる周辺蓄積装置との、
    B)後に前記結合したターゲットとなる周辺蓄積装置を破損させる、中断発信装置間データ転送操作に先立ち、
    ii)前記発信装置間データ転送操作の開始要請に応じて、前記装置インターフェイスのホスト側にて、
    iii)中断データ転送操作により後に破損する周辺蓄積装置常駐蓄積システムデータ構造のシステムデータと、
    iv)前記システムデータが常駐し、後に中断データ転送操作によって上書きされない周辺蓄積装置上クリーンロケーションのハンドル(物理アドレス,論理アドレスまたはデータオブジェクトの識別子)と、からなるグループから選ばれる、少なくとも1つの回復用データオブジェクトを蓄積するように作動する、回復用データ保管部と、
    d)前記中断発信データ転送操作による前記周辺蓄積装置の破損後に起こるホスト装置と周辺蓄積装置との事後結合に応じて、前記ホスト側に蓄積された少なくとも1つの前記回復用データオブジェクトを使用し、前記破損したターゲットとなる周辺蓄積装置を修復するように作動する、周辺蓄積装置修復部と、
    i)ホスト装置は、
    e)前記装置インターフェイスを介して結合する前記結合したターゲットとなる周辺蓄積装置の識別子を検出するように作動する、周辺蓄積装置識別子検出部をさらに備え、
    ii)前記回復用データ保管部は、前記周辺蓄積装置識別子検出部から受け取る前記結合したターゲットとなる周辺蓄積装置の前記識別子に従って、周辺蓄積装置識別子に従い複数の回復用データオブジェクトにインデックスが付くホスト側インデックス付き回復用データ構造に、前記少なくとも1つの回復用データオブジェクトを、蓄積するように作動し、
    iii)ホスト装置は、
    f)ホスト装置と周辺蓄積装置との前記事後結合に応じて、前記結合したターゲットとなる周辺蓄積装置の前記識別子をインデックスとして使用し、前記ホスト側インデックス付き回復用データ構造から、前記ターゲットとなる周辺蓄積装置の、前記少なくとも1つの回復用データオブジェクトを回収するように作動する、回復用データ回収部備えるホスト装置。
  11. ホスト装置であって、
    a)周辺蓄積装置と結合する装置インターフェイスと、
    b)前記装置インターフェイスを介して装置間データ転送操作を管理するデータ転送管理部と、
    c)回復用データ保管部であって、
    i)中断発信装置間データ転送操作に先立ち、すなわち
    A)前記装置インターフェイスを介して前記ホスト装置へ結合されるターゲットとなる周辺蓄積装置との、
    B)後に前記結合したターゲットとなる周辺蓄積装置を破損させる、中断発信装置間データ転送操作に先立ち、
    ii)前記発信装置間データ転送操作の開始要請に応じて、前記装置インターフェイスのホスト側にて、
    iii)中断データ転送操作により後に破損する周辺蓄積装置常駐蓄積システムデータ構造のシステムデータと、
    iv)前記システムデータが常駐し、後に中断データ転送操作によって上書きされない周辺蓄積装置上クリーンロケーションのハンドル(物理アドレス,論理アドレスまたはデータオブジェクトの識別子)と、からなるグループから選ばれる、少なくとも1つの回復用データオブジェクトを蓄積するように作動する、回復用データ保管部と、
    d)前記中断発信データ転送操作による前記周辺蓄積装置の破損後に起こるホスト装置と周辺蓄積装置との事後結合に応じて、前記ホスト側に蓄積された少なくとも1つの前記回復用データオブジェクトを使用し、前記破損したターゲットとなる周辺蓄積装置を修復するように作動する、周辺蓄積装置修復部と、
    i)ホスト装置は、
    f)ユーザインターフェイスをさらに備え、前記ユーザインターフェイスは、ホスト装置と周辺蓄積装置との前記事後結合に応じて、
    A)破損した周辺蓄積装置の修復にあたってユーザ承認を求める要請をユーザに提示するように作動し、
    B)前記提示された要請に対する応答を受け取るように作動し、
    ii)前記周辺蓄積装置修復部は、前記提示された要請に対して肯定的な前記応答を受け取ることを条件とし、前記破損したターゲットとなる周辺蓄積装置の前記修復を遂行するように作動するホスト装置。
  12. 請求項9,10または11記載のホスト装置において、
    前記システムデータ構造は、周辺蓄積装置のディレクトリツリーを記述するホスト装置。
  13. 請求項9,10または11記載のホスト装置において、
    前記システムデータ構造は、周辺蓄積装置のファイルシステムテーブルデータ構造であるホスト装置。
  14. 請求項9,10または11記載のホスト装置において、
    前記システムデータ構造は、周辺蓄積装置のフラッシュ管理テーブルデータ構造であるホスト装置。
  15. 請求項9記載のホスト装置において、
    前記目的位置データは、ディレクトリパスデータを含むホスト装置。
  16. 請求項9,10または11記載のホスト装置において、
    前記周辺蓄積装置修復部は、ユーザ入力の受け取りとは無関係に、前記ターゲットとなる周辺蓄積装置の前記修復を遂行するように作動するホスト装置。
  17. ターゲットとなる周辺蓄積装置を破損させる、ホストコンピュータ装置からターゲットとなる周辺蓄積装置への中断発信装置間データ転送操作からホストコンピュータ装置を回復させるためのコンピュータ可読プログラムコードを蓄積する、コンピュータ可読媒体であって、前記プログラムコードは、
    a)ターゲットとなる周辺蓄積装置の破損に先立ち、データ転送操作開始要請に応じて、ホスト側にて、
    i)後に中断データ転送操作により破損する周辺蓄積装置常駐蓄積システムデータ構造のシステムデータと、
    ii)前記システムデータが常駐し、後に中断発信データ転送操作によって上書きされない周辺蓄積装置上クリーンロケーションのハンドル(物理アドレス,論理アドレスまたはデータオブジェクトの識別子)と、からなるグループから選ばれる、少なくとも1つの回復用データオブジェクトを蓄積することと、
    b)中断発信データ転送操作による周辺蓄積装置の破損後に起こるホスト装置と周辺蓄積装置との事後結合に応じて、前記ホスト側に蓄積された少なくとも1つの前記回復用データオブジェクトを使用し、破損した周辺蓄積装置を修復することと、をプロセッサに実行させるように作動し、
    プログラムコードは、
    c)中断発信装置間データ転送操作によるターゲットとなる周辺蓄積装置の破損に先立ち、前記データ転送操作開始要請に応じて、前記ホスト側にて、
    i)データ転送操作の1つ以上のデータオブジェクトの1つ以上の識別子の記述、および、
    ii)装置間データ転送操作の周辺蓄積装置目的位置データのうちの少なくとも一方を蓄積することと、
    d)破損をきたすデータ転送操作の後、ホスト装置と周辺蓄積装置との前記事後結合に応じて、c)i)の前記記述およびc)ii)の前記目的位置データのうちの少なくとも一方を使用し、中断発信装置間データ転送操作を復元することと、をプロセッサに実行させるように作動するコンピュータ可読媒体。
  18. ターゲットとなる周辺蓄積装置を破損させる、ホストコンピュータ装置からターゲットとなる周辺蓄積装置への中断発信装置間データ転送操作からホストコンピュータ装置を回復させるためのコンピュータ可読プログラムコードを蓄積する、コンピュータ可読媒体であって、前記プログラムコードは、
    a)ターゲットとなる周辺蓄積装置の破損に先立ち、データ転送操作開始要請に応じて、ホスト側にて、
    i)後に中断データ転送操作により破損する周辺蓄積装置常駐蓄積システムデータ構造のシステムデータと、
    ii)前記システムデータが常駐し、後に中断発信データ転送操作によって上書きされない周辺蓄積装置上クリーンロケーションのハンドル(物理アドレス,論理アドレスまたはデータオブジェクトの識別子)と、からなるグループから選ばれる、少なくとも1つの回復用データオブジェクトを蓄積することと、
    b)中断発信データ転送操作による周辺蓄積装置の破損後に起こるホスト装置と周辺蓄積装置との事後結合に応じて、前記ホスト側に蓄積された少なくとも1つの前記回復用データオブジェクトを使用し、破損した周辺蓄積装置を修復することと、をプロセッサに実行させるように作動し、
    i)プログラムコードは、周辺蓄積装置識別子に従い複数の回復用データオブジェクトにインデックスが付くホスト側インデックス付き回復用データ構造に、前記少なくとも1つの回復用データオブジェクトが蓄積されるように作動し、
    ii)プログラムコードは、
    c)中断データ転送操作によって周辺蓄積装置が破損した後、
    i)ホスト装置と周辺蓄積装置との前記事後結合に応じて、周辺蓄積装置の装置識別子を検出することと、
    ii)周辺蓄積装置の前記検出済み装置識別子をインデックスとして使用し、前記ホスト側インデックス付き回復用データ構造から、ターゲットとなる周辺蓄積装置の、前記少なくとも1つの回復用データオブジェクトを回収することと、をプロセッサに実行させるように作動するコンピュータ可読媒体。
  19. ターゲットとなる周辺蓄積装置を破損させる、ホストコンピュータ装置からターゲットとなる周辺蓄積装置への中断発信装置間データ転送操作からホストコンピュータ装置を回復させるためのコンピュータ可読プログラムコードを蓄積する、コンピュータ可読媒体であって、前記プログラムコードは、
    a)ターゲットとなる周辺蓄積装置の破損に先立ち、データ転送操作開始要請に応じて、ホスト側にて、
    i)後に中断データ転送操作により破損する周辺蓄積装置常駐蓄積システムデータ構造のシステムデータと、
    ii)前記システムデータが常駐し、後に中断発信データ転送操作によって上書きされない周辺蓄積装置上クリーンロケーションのハンドル(物理アドレス,論理アドレスまたはデータオブジェクトの識別子)と、からなるグループから選ばれる、少なくとも1つの回復用データオブジェクトを蓄積することと、
    b)中断発信データ転送操作による周辺蓄積装置の破損後に起こるホスト装置と周辺蓄積装置との事後結合に応じて、前記ホスト側に蓄積された少なくとも1つの前記回復用データオブジェクトを使用し、破損した周辺蓄積装置を修復することと、をプロセッサに実行させるように作動し、
    i)プログラムコードは、
    c)ホスト装置と周辺蓄積装置との前記事後結合に応じて、破損した周辺蓄積装置を修復するためユーザ承認を催促することをプロセッサに実行させるように作動し、
    ii)プログラムコードは、ステップb)の破損した周辺蓄積装置の前記修復にあたって、前記ユーザ承認催促に対する前記ユーザ承認を受け取ることを条件とするようにさらに作動するコンピュータ可読媒体。
  20. 請求項17,18または19記載のコンピュータ可読媒体において、
    前記周辺蓄積装置常駐蓄積システムデータ構造は、周辺蓄積装置のディレクトリツリーを記述するコンピュータ可読媒体。
  21. 請求項17,18または19記載のコンピュータ可読媒体において、
    前記周辺蓄積装置常駐蓄積システムデータ構造は、周辺蓄積装置のファイルシステムテーブルであるコンピュータ可読媒体。
  22. 請求項17,18または19記載のコンピュータ可読媒体において、
    前記周辺蓄積装置常駐蓄積システムデータ構造は、周辺蓄積装置のフラッシュマッピングテーブルであるコンピュータ可読媒体。
  23. 請求項17記載のコンピュータ可読媒体において、
    前記目的位置データは、ディレクトリパスデータを含むコンピュータ可読媒体。
  24. 請求項17,18または19記載のコンピュータ可読媒体において、
    プログラムコードは、プロセッサによる実行時に、ステップb)の前記修復がユーザ入力なしで遂行されるように作動するコンピュータ可読媒体。
JP2009544490A 2007-01-04 2008-01-03 ホストおよびデータ蓄積装置間ファイル転送障害の回復 Active JP5244124B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US88334507P 2007-01-04 2007-01-04
US60/883,345 2007-01-04
PCT/IL2008/000022 WO2008081454A1 (en) 2007-01-04 2008-01-03 Recovery of a failed file transfer between a host and a data storage device

Publications (2)

Publication Number Publication Date
JP2010515191A JP2010515191A (ja) 2010-05-06
JP5244124B2 true JP5244124B2 (ja) 2013-07-24

Family

ID=39363903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009544490A Active JP5244124B2 (ja) 2007-01-04 2008-01-03 ホストおよびデータ蓄積装置間ファイル転送障害の回復

Country Status (7)

Country Link
US (1) US7930585B2 (ja)
EP (1) EP2100222B1 (ja)
JP (1) JP5244124B2 (ja)
KR (1) KR101605907B1 (ja)
AT (1) ATE519158T1 (ja)
TW (1) TWI386796B (ja)
WO (1) WO2008081454A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8103631B2 (en) * 2008-11-19 2012-01-24 Sandisk Il Ltd Merging files on storage and retrieve
CN101958880B (zh) * 2009-07-13 2013-08-14 联发科技(新加坡)私人有限公司 用于重新激活至少一个mtp兼容设备的方法及主机
US8751802B2 (en) * 2010-06-30 2014-06-10 Sandisk Il Ltd. Storage device and method and for storage device state recovery
US8954664B1 (en) 2010-10-01 2015-02-10 Western Digital Technologies, Inc. Writing metadata files on a disk
US8756361B1 (en) * 2010-10-01 2014-06-17 Western Digital Technologies, Inc. Disk drive modifying metadata cached in a circular buffer when a write operation is aborted
US8756382B1 (en) 2011-06-30 2014-06-17 Western Digital Technologies, Inc. Method for file based shingled data storage utilizing multiple media types
US8612706B1 (en) 2011-12-21 2013-12-17 Western Digital Technologies, Inc. Metadata recovery in a disk drive
EP2989547B1 (en) * 2013-04-23 2018-03-14 Hewlett-Packard Development Company, L.P. Repairing compromised system data in a non-volatile memory
US10733288B2 (en) 2013-04-23 2020-08-04 Hewlett-Packard Development Company, L.P. Verifying controller code and system boot code
JP6259601B2 (ja) * 2013-07-25 2018-01-10 任天堂株式会社 情報処理装置、情報処理システム、情報処理方法及びコンピュータプログラム
US9851927B2 (en) 2015-09-01 2017-12-26 International Business Machines Corporation File management in a file system
US10476846B2 (en) * 2016-08-05 2019-11-12 The Boeing Company Data-at-rest (DAR) encryption for integrated storage media
KR20200048911A (ko) 2018-10-31 2020-05-08 삼성에스디에스 주식회사 불안정 전송 환경에서의 데이터 전송 서버 및 방법
WO2020159533A1 (en) 2019-02-01 2020-08-06 Hewlett-Packard Development Company, L.P. Security credential derivation
US11520662B2 (en) 2019-02-11 2022-12-06 Hewlett-Packard Development Company, L.P. Recovery from corruption
CN114050965A (zh) * 2020-07-22 2022-02-15 中兴通讯股份有限公司 查找中断设备的方法、从设备、主设备及存储介质

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5504883A (en) * 1993-02-01 1996-04-02 Lsc, Inc. Method and apparatus for insuring recovery of file control information for secondary storage systems
US5682517A (en) * 1994-06-21 1997-10-28 Pitney Bowes Inc. Method of transferring data to a memory medium in a mailing machine
JPH09319640A (ja) * 1996-05-27 1997-12-12 Sharp Corp 情報記録再生装置
JP3751116B2 (ja) * 1997-06-02 2006-03-01 松下電器産業株式会社 取り替え可能なディスクを使用するディスク型記録再生装置、及び記録再生方法
JP4230553B2 (ja) * 1997-12-16 2009-02-25 日置電機株式会社 データ記録装置
US6385707B1 (en) * 1998-02-24 2002-05-07 Adaptec, Inc. Method and apparatus for backing up a disk drive upon a system failure
US6665778B1 (en) * 1999-09-23 2003-12-16 Gateway, Inc. System and method for storage of device performance data
US6904508B2 (en) * 2000-06-19 2005-06-07 Storage Technology Corporation Recovery of dynamic maps and data managed thereby
US6839864B2 (en) * 2000-07-06 2005-01-04 Onspec Electronic Inc. Field-operable, stand-alone apparatus for media recovery and regeneration
TW498196B (en) * 2000-10-17 2002-08-11 Asustek Comp Inc Method for preventing any data damage caused by floppy diskette controller
WO2002050829A1 (en) 2000-12-20 2002-06-27 Koninklijke Philips Electronics N.V. Power failure recovery mechanism for a recording and reproducing device
US6928456B2 (en) * 2001-03-06 2005-08-09 Intel Corporation Method of tracking objects for application modifications
JP2002358248A (ja) * 2001-06-04 2002-12-13 Pioneer Electronic Corp データ記録装置およびデータ消去装置
US6711663B2 (en) * 2001-11-15 2004-03-23 Key Technology Corporation Algorithm of flash memory capable of quickly building table and preventing improper operation and control system thereof
US7042663B2 (en) * 2002-10-03 2006-05-09 Hitachi Global Storage Technologies Netherlands B.V. Magnetic disk protection mechanism, computer system comprising protection mechanism, protection method for magnetic disk, and program for protection method
US7363540B2 (en) * 2002-10-22 2008-04-22 Microsoft Corporation Transaction-safe FAT file system improvements
US7174420B2 (en) * 2002-10-22 2007-02-06 Microsoft Corporation Transaction-safe FAT file system
US7546482B2 (en) * 2002-10-28 2009-06-09 Emc Corporation Method and apparatus for monitoring the storage of data in a computer system
US7401092B2 (en) * 2003-06-26 2008-07-15 Standbysoft Llc Method and apparatus for exchanging sub-hierarchical structures within a hierarchical file system
US6938136B2 (en) * 2003-07-14 2005-08-30 International Business Machines Corporation Method, system, and program for performing an input/output operation with respect to a logical storage device
US20050078823A1 (en) * 2003-09-11 2005-04-14 Makoto Usui Content recording apparatus, content recording method and hard disk apparatus
US7299314B2 (en) * 2003-12-31 2007-11-20 Sandisk Corporation Flash storage system with write/erase abort detection mechanism
JP2006134123A (ja) * 2004-11-08 2006-05-25 Ishida Co Ltd データ記録装置及びそれを備える商品処理装置
KR100643286B1 (ko) * 2004-11-22 2006-11-10 삼성전자주식회사 이동 저장 장치 및 이를 이용한 파일 시스템 복구 방법
US20070016721A1 (en) * 2005-07-18 2007-01-18 Wyse Technology Inc. Flash file system power-up by using sequential sector allocation
US7489923B2 (en) * 2005-08-05 2009-02-10 Research In Motion Limited Methods and systems for handling software operations associated with startup and shutdown of handheld devices
US20070086244A1 (en) * 2005-10-17 2007-04-19 Msystems Ltd. Data restoration in case of page-programming failure
US8549252B2 (en) * 2005-12-13 2013-10-01 Emc Corporation File based volumes and file systems
US8307148B2 (en) * 2006-06-23 2012-11-06 Microsoft Corporation Flash management techniques
US7685178B2 (en) * 2006-10-31 2010-03-23 Netapp, Inc. System and method for examining client generated content stored on a data container exported by a storage system

Also Published As

Publication number Publication date
ATE519158T1 (de) 2011-08-15
KR101605907B1 (ko) 2016-03-23
US7930585B2 (en) 2011-04-19
US20080168243A1 (en) 2008-07-10
KR20090116725A (ko) 2009-11-11
EP2100222A1 (en) 2009-09-16
WO2008081454A1 (en) 2008-07-10
TWI386796B (zh) 2013-02-21
EP2100222B1 (en) 2011-08-03
JP2010515191A (ja) 2010-05-06
TW200842567A (en) 2008-11-01

Similar Documents

Publication Publication Date Title
JP5244124B2 (ja) ホストおよびデータ蓄積装置間ファイル転送障害の回復
US9075758B2 (en) Removable storage device with transactional operation support and system including same
CN1822004B (zh) 使用文件系统将文件自动备份为世代文件的系统和方法
US8838875B2 (en) Systems, methods and computer program products for operating a data processing system in which a file delete command is sent to an external storage device for invalidating data thereon
US7813913B2 (en) Emulation component for data backup applications
CN100478946C (zh) 用于文件系统快照持久性的方法和装置
US7818160B2 (en) Data backup devices and methods for backing up data
JP4842703B2 (ja) ストレージシステム及びそのリカバリボリューム作成方法
JP5047308B2 (ja) データセキュリティのための不揮発性ディスクキャッシュ
US20120254107A1 (en) Hierarchical management storage system and storage system operating method
US20090013123A1 (en) Storage Bridge and Storage Device and Method Applying the Storage Bridge
US20070143097A1 (en) Systems and methods for selectively copying embedded data files
CN101589592A (zh) 多协议可移动存储设备
US20100023561A1 (en) Data Restoration in a Storage System using Multiple Restore Points
CN102541689A (zh) 在不同连接状态期间保护数据
CN104166605A (zh) 基于增量数据文件的数据备份方法及系统
CN100437504C (zh) 硬盘数据备份系统及方法
JP2010511923A (ja) メモリカードを回復するためのメモリカード読取装置
US20110099636A1 (en) Read-only protection method for removable storage medium
TW200417859A (en) Storage system and method with snapshot backup function
CN109325005A (zh) 一种数据处理方法和电子设备
KR101984495B1 (ko) 이동식 저장 장치 및 이를 포함하는 시스템
US20230385148A1 (en) Proactive loss notification and handling in data storage devices
KR101583153B1 (ko) 백업 장치가 수행하는 파일 백업 방법 및 백업 로그 정보 생성 방법
CN113886327A (zh) 一种基于嵌入式系统的文件管理方法、装置、终端及介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130213

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: 20130312

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130405

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160412

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5244124

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350