JPH08328917A - 書き込み/置換操作のための停電回復機構を有する、データ記憶装置のためのファイル・システム - Google Patents

書き込み/置換操作のための停電回復機構を有する、データ記憶装置のためのファイル・システム

Info

Publication number
JPH08328917A
JPH08328917A JP8137338A JP13733896A JPH08328917A JP H08328917 A JPH08328917 A JP H08328917A JP 8137338 A JP8137338 A JP 8137338A JP 13733896 A JP13733896 A JP 13733896A JP H08328917 A JPH08328917 A JP H08328917A
Authority
JP
Japan
Prior art keywords
file
data storage
storage device
storage area
event
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.)
Withdrawn
Application number
JP8137338A
Other languages
English (en)
Inventor
Michael W Balk
ダブリュ.バルク マイケル
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.)
AT&T Corp
Original Assignee
AT&T Corp
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 AT&T Corp filed Critical AT&T Corp
Publication of JPH08328917A publication Critical patent/JPH08328917A/ja
Withdrawn legal-status Critical Current

Links

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Library & Information Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【課題】 ガーベージ・コレクションにおいて停電が生
ずる際に発生する不都合を回避する。 【解決手段】 本発明は、マイクロプロセッサ(8)に
制御されたデータ記憶システム(1)のデータ記憶装置
(2)において、読み出し/書き込み操作の間に停電が
起こった際にマイクロプロセッサの停止を防止するため
の方法と機器を提供する。正常な動作の間、ファイル
(9)はデータ記憶装置(2)の第1記憶装置(28)
に書き込まれ、そこで、対応するファイル(9)の書き
込みが成功裡に完了する時、各ファイル(9)に関連す
る第1フラグがセットされる。停電が起こると、マイク
ロプロセッサの再ブートの際に、データ記憶装置初期化
ルーチンが始動される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、半導体メモリ、デ
ィスク・ドライブ、テープ・ドライブを含むデータ記憶
装置のためのファイル・システムに関し、より詳細に
は、ガーベージ・コレクション処理および停電回復機構
を実現する上記のファイル・システムに関する。
【0002】
【従来の技術】大部分のコンピュータ・システムや他の
インテリジェント・コンピューティング・デバイスで
は、マイクロプロセッサまたは中央処理装置は、メイン
・メモリと二次メモリからなる冗長メモリ記憶システム
に接続されている。メイン・メモリは、プログラム実行
の際使われるために、マイクロプロセッサによって高速
度で検索出来る情報の一時的記憶のために使われる。二
次メモリは、通常、メイン・メモリに付随して、現在マ
イクロプロセッサを制御していない他のプログラム・ア
プリケーションのために必要な情報を長期間記憶するた
めに使われる。従って、メイン・メモリ記憶装置は、通
常半導体メモリのような高速デバイスからなり、二次メ
モリ記憶装置は、より低速な、電気機械式ディスク記憶
装置からなる。
【0003】半導体メモリ・デバイスに関しては、上記
のメモリは、書き込み、消去出来ない不揮発性メモリで
ある読み出し専用メモリ(ROM)、バイト・レベルで
電気的に消去出来る揮発性読み出し、書き込みメモリ記
憶装置であるランダム・アクセス・メモリ(RAM)、
書き込み、読み出しが可能であり、チップ・レベル、セ
クタ・レベル、バイト・レベルのいずれかで電気的に消
去出来る、読み出し中心のメモリ記憶装置を含む。読み
出し中心のメモリ・デバイスには、光学的に消去可能な
プログラム可能読み出し専用メモリ(EPROM)デバ
イス、電気的に消去可能なプログラム可能読み出し専用
メモリ(EEPROM)デバイス、FLASHメモリ・
デバイスが含まれる。EPROMデバイスは、再プログ
ラムまたは新しい情報の書き込みのためには、チップ・
レベルで全体を消去しなければならないが、EEPRO
MとFLASHメモリ・デバイスは、マイクロプロセッ
サがそれぞれバイト・レベル、セクタ・レベルで情報の
読み出し、書き込みが出来るようにすることによって、
より大きな柔軟性を提供する。
【0004】最近、従来技術の読み出し中心メモリは、
完全にソリッド・ステートな媒体にデータ・ファイルや
アプリケーション・プログラムを記憶出来るような設計
になっている。従って、システム常駐ファイル・システ
ムの使用を通じて、読み出し中心メモリ・デバイスは、
コンピュータ・システム等の二次メモリとして利用出
来、従来比較的遅かった二次メモリから一次メモリへの
情報のアップロードを減じることが出来る。
【0005】従来技術のメモリ・システムでは、使用可
能なアドレス空間は、普通ガーベージ・コレクション・
プロセスとして知られる処理を通じて回復される。多数
の古典的なガーベージ・コレクションのスキームが存在
するが、「マーク・アンド・スイープ」として知られる
スキームは、現在使われていない古いファイルを多重フ
ェーズ処理で除去することによって使用可能なアドレス
空間を回復する。通常のメモリ書き込みの間、ストレー
ジは、有効なメモリ・ストレージのある最小のしきい値
に達するまで、ストレージ・スペースの空きリストから
割り当てられる。しきい値に達すると、プログラム・ア
プリケーションは停止し、ガーベージ・コレクションが
始動する。メモリの全てのファイルが走査され、現在使
用されていると判断されたファイルは処理の最初のフェ
ーズでマークされる。ファイルの全てのセットが走査さ
れると、マークされていない全てのファイルを除去する
ことによってメモリ・ストレージを回復するスイープ・
フェーズが始まる。
【0006】マーク・アンド・スイープ・スキームの利
点は、ガーベージ・コレクションの過程で不要なファイ
ルが残ることがなく、割り当てられたメモリ・ストレー
ジ全体を記憶のために使えることである。
【0007】
【発明が解決しようとする課題】しかし、このスキーム
の欠点は、圧縮や入念な多空間割り当てが行われない場
合、メモリの断片化が深刻な問題になるということであ
る。だが、ファイルの圧縮が使われる場合、メモリ・シ
ステムはガーベージ・コレクション処理を通じて危険で
不整合な状態に置かれる。これは、ガーベージ・コレク
ション処理の間に停電またはシステムの故障が発生する
と、データ・ファイルがその時点でメモリ全体にわたっ
て分散するため、メモリ・システムを管理するマイクロ
プロセッサが再ブートとファイル・システムの初期化の
フェーズで停止するからである。
【0008】
【課題を解決するための手段】本発明は、読み出し/書
き込み動作の間に停電が発生した際、マイクロプロセッ
サの停止を防止するための、マイクロプロセッサに制御
されたデータ記憶システムのデータ記憶装置の方法と機
器を提供する。これは、マイクロプロセッサの再ブート
の際に、データ記憶装置のファイル・システムに記憶さ
れたファイルのインテグリティを確保するデータ記憶装
置初期化ルーチンを実行することによって達成される。
通常の動作の間、ファイルは、メモリ・デバイスの第1
記憶エリアに書き込まれ、対応するファイルの書き込み
が成功裡に完了すると、各ファイルに関連する第1フラ
グが設定される。
【0009】停電が起こると、不完全に書き込まれたフ
ァイルを含む、メモリ・デバイス中に記憶された不要な
ファイルは全て、マイクロプロセッサの再ブートの際
に、初期化ルーチンの始動によって除去される。ルーチ
ンの第1の分析フェーズでは、一連の原子または基本メ
モリ動作を形成する一連のイベントと、関連するデータ
が生成され、第1フラグがセットされた各ファイルのた
めのデータ記憶装置のイベント記憶エリアに整然と書き
込まれる。各イベントは、実行が中断される時や、他の
イベントが実行される前に、対応するイベントの前の結
果を変更することなく再実行出来る点で、再実行可能で
ある。生成されたイベントはデータ記憶装置のイベント
記憶エリアに書き込まれ、そこから検索されて、ルーチ
ンの第2の実行フェーズの間、マイクロプロセッサによ
って実行される。実行フェーズの間、必要なファイル
(すなわち、第1フラグがセットされたファイル)は、
データ記憶装置の第2記憶エリアに圧縮され、一方、第
1記憶エリアに記憶されていた全てのファイルは、新し
いファイルをデータ記憶装置に書き込むための追加記憶
スペースを提供するために除去される。
【0010】初期化の間に停電またはシステムの故障が
発生した場合、プロセスは一般に、ファイル・システム
を不完全に圧縮された、不整合な状態に置かないよう
に、それが中断されたところで再スタートする。分析、
実行フェーズの分離とトラッキング、一連の再実行可能
なイベントの整然とした実行によって、本発明は、故障
後のファイル・システムのインテグリティを維持し、マ
イクロプロセッサの停止を防止する。
【0011】
【発明の実施の形態】図1に示すように、本発明は、停
電またはシステムの故障の際にマイクロプロセッサの停
止を防止するためのリエントラント・ガーベージ・コレ
クション処理を有する、データ記憶システム1のデータ
記憶装置2のためのファイル・システム4を提供する。
【0012】<ファイル・システムのアーキテクチャ>
ファイル・システム4は、特定の原子メモリ動作を作
成、実行するプログラムのオブジェクトの階層によって
管理されるフラット・ファイル・システム4として設計
される。オブジェクトの階層は、3つのレベルのプログ
ラムのアーキテクチャ、すなわち、ハイ・レベル・アプ
リケーション・インタフェース、仮想デバイス・レベ
ル、デバイス・ドライバ・レベルに分割される。ハイ・
レベル・アプリケーション・インタフェースは、読み出
し、書き込み、除去可能な1組のファイルとしてのファ
イル・システムの概観を示す。これはさらに、空きスペ
ース残量などのファイル・システムに関する情報を照会
する手段を提供する。仮想デバイス・レベルは、バイト
のブロックをファイルと空き空間にマップする一方で、
ファイルの論理アドレスを形成する、連続した単調に増
大するブロックとセクタの数の組み合わせによって参照
されるファイルのリンク・リストを維持する。デバイス
・ドライバ・レベルは、仮想デバイス・レベルとメモリ
・デバイス同士のインタフェースとして動作し、仮想デ
バイスによって生成される論理アドレスと、メモリ・デ
バイスの物理アドレスの間の変換を行う。この機能的ア
ーキテクチャと共に、本発明のファイル・システム4
は、デバイスの数とその物理アドレスをトラッキングす
ることによって、(全てのデバイスが同じメモリ・タイ
プである限り)1つ以上のメモリ・デバイスまたはチッ
プにわたることが出来る。
【0013】図1に示す実施例では、本発明のファイル
・システム4は、マイクロプロセッサ8、中央処理装置
等に制御された、少なくとも一次の揮発性メモリ6と、
二次の不揮発性で読み出し中心のメモリ2を含む、メモ
リ・システム1の二次メモリ2で実現される。1つの実
施例では、一次メモリ6はDRAMメモリ・デバイスか
らなり、二次メモリ2はAM29200 FLASH
PROMデバイスからなり、マイクロプロセッサ8はA
M29200 RISCマイクロプロセッサからなる。
ファイル・システム4は、二次読み出し中心メモリとし
てのEEPROMメモリ・デバイスからなるメモリ・シ
ステム1においても実現出来る。
【0014】図2に示すように、各AM29200 F
LASH PROMは、物理的に8つのセクタに分けら
れる。必要な場合、少なくとも最初のデバイスの、1つ
かそれ以上の最初の連続するセクタは、マイクロプロセ
ッサ8のためのブート・セクタ20に割り当てられる。
次の2つの連続するセクタは、それぞれイベント待ち行
列セクタ22とスワップ・セクタ26に充てられる。最
初の、または続くデバイスの残りのセクタは全て、ファ
イル・システムのデータを記憶するためのレギュラー・
セクタ28を形成する。
【0015】ブート・セクタ20は、マイクロプロセッ
サによって、オペレーティング・システム、ファイル・
システム4、その他ブート時に始動しなければならない
アプリケーションを始動するために必要なブート・コー
ドとデータを記憶するために使われる。イベント待ち行
列セクタ22は、ブート・セクタ20に続く最初のセク
タで、ガーベージ・コレクション処理で、古い、使われ
ていないファイルや不完全なファイルを除去する一連の
原子メモリ動作をトラック、実行するために使われる。
スワップ・セクタ26は、イベント待ち行列セクタ22
の次のセクタで、ガーベージ・コレクションの間、レギ
ュラー・セクタ28を再構成するために使われる。再構
成の間、ガーベージ・コレクションのためのマーク、ま
たはタグが付けられていないファイルは、連続した方法
で、順次スワップ・セクタ26に書き込まれる。その後
スワップ・セクタ26は、セクタ全体が、宛先セクタで
あるレギュラー・セクタ28の1つにコピーされる。こ
れは、メモリ・デバイスの実装されたレギュラー・セク
タ28の各々について行われ、連続するファイルの圧縮
されたファイル・システムを生じる。
【0016】ファイル・システム4の上記で説明した実
施例では、ファイルは64バイトのデータ・ブロック・
チャンクの中のレギュラー・セクタ28に書き込み、読
み出しされ、各レギュラー・セクタは、必要な数のデー
タ・ブロック(すなわち、上記のデバイスの場合102
4ブロック)を保持する。しかし、例えば、読み出し、
書き込み操作がビット、またはバイト・レベルで行われ
るメモリ・デバイス(すなわち、EEPROM)が使わ
れる場合は、必ずしもそうである必要はない。この例で
は、データ・チャンクのサイズは、アプリケーションの
機能とデバイスの要求に応じて選択される。
【0017】図1に示すファイル・システム4の構造に
関しては、ファイルはファイル・システム4に連続して
書き込まれ、各ファイルはハイパーブロック7と、各6
4バイトの1つかそれ以上のファイル・ブロック9から
なる。ハイパーブロック7は、ファイルの始まりを示す
データ構造で、ファイルと、ファイル・システム仮想デ
バイスにおけるファイルの位置に関する情報を記憶する
ために使われる。ファイル・ブロック9は、ファイルに
属するデータのブロックを表すデータ構造である。各フ
ァイルのハイパーブロック7に記録された情報は以下の
ものを含む。
【0018】−ハイパーブロックの識別子 −ファイル・システム中の空きブロックの数 −カレント・ハイパーブロックのアドレス −カレント・ハイパーブロックの作成時間 −カレント・ファイルのバイト数 −カレント・ファイルのブロック数 −カレント・ファイルのキャラクタ名 −ハイパーブロックが成功裡に書き込まれているかを示
すハイパーブロック完了(hok)フラグ −カレント・ファイルの全てのファイル・ブロックが成
功裡に書き込まれたかを示すファイル・ブロック完了
(fok)フラグ −カレント・ファイルが次のガーベージ・コレクション
処理で除去されるべきかを示すガーベージ・フラグ
【0019】さらに、ファイル・システム4に非常に高
速で書き込みする際、ファイル・システム4の最初のブ
ロックとしてファイル・システム・リスト・ヘッド・ハ
イパーブロック5が作成される。このリスト・ヘッド・
ハイパーブロック5は本来のハイパーブロックである
が、その目的は、ファイル・システム4の作成に関する
適切な情報を維持することにあるので、ファイルを示し
たり、ファイル・データを含んだりしない。従って、そ
れは、ファイル・システム4の中で、セットされたho
kフラグ、セットされないfokフラグ、ファイル名フ
ィールドのnull文字列を有するハイパーブロック7
として識別され、任意の所与の時間に、ファイル・シス
テム4全体の作成時間に加えて、ファイル・システム4
の中の空きバイトと空きブロックの数を決定するために
使われる。
【0020】ファイル・システム4の中の全てのハイパ
ーブロック7の集合は、全カレント・ファイルの仮想リ
ンク・リストを形成する。このリストは、前のハイパー
ブロック7が次のハイパーブロックへのポインタを含ま
ない点で仮想であるが、次のファイルのハイパーブロッ
ク7のリニア・アドレスを計算するのに充分なカレント
・ファイルに関する情報を含んでいる。1つの実施例で
は、この情報は、付属するファイル・ブロック9の総数
に加えて、検討されるカレント・ファイルのハイパーブ
ロック7のリニア・アドレス(すなわち、セクタとその
セクタのブロック数)を含む。それにも関わらず、本発
明のファイル・システム4は、ポインタの使用を通じて
初めて実現される。
【0021】アプリケーション・ファイルをファイル・
システム4に書き込むために、アプリケーションがファ
イル・システム仮想デバイスをコールする際に、ファイ
ル・オブジェクトが作成される。ファイル・オブジェク
トは、ファイル・システム4の中で作成された最後のハ
イパーブロック7のメモリ内コピーを検索し、そのハイ
パーブロック7に含まれる情報から、カレント・ファイ
ルが書き込まれるファイル・システム4の開始アドレス
に加えて、カレント・アプリケーション・ファイル全体
を書き込むのに充分な空きスペースがファイル・システ
ム・メディアにあるかどうかを決定する。カレント・フ
ァイルのために充分なスペースがある場合、ファイル・
オブジェクトは、カレント・ファイルのためのハイパー
ブロック7を作成し、そのハイパーブロック7に上記の
ファイル・システムに固有の情報を書き込むことによっ
て、ファイルを、ファイルのリンク・リストの最後に加
える。一度これがなされると、ファイル・オブジェクト
はハイパーブロック7にhokフラグをセットし、カレ
ント・ファイルのファイル・データ・ブロックをハイパ
ーブロック7に加え、さらにfokフラグをハイパーブ
ロック7にセットする。
【0022】カレント・ファイルがファイル・システム
4に書き込まれた後、ファイル・オブジェクトは順次以
前に書き込まれた(すなわち、古い)ファイルの各々の
ハイパーブロック7を探索し、カレント・ファイルのフ
ァイル名が古いファイルのどれかのファイル名と一致す
るかどうかを判断する。探索中、ファイル・オブジェク
トはガーベージ・コレクション・フラグがセットされた
ファイルを無視する。一致するファイル名がある場合、
古い、一致するファイルの各々のハイパーブロック7に
ガーベージ・コレクション・フラグがセットされる。
【0023】<ガーベージ・コレクション処理>本発明
の1つの実施例に従って、重複したファイルや不完全な
ファイルを含む不要なファイルをファイル・システム4
から除去したい時はいつでも、ガーベージ・コレクショ
ン処理が使われる。このプロセスが呼び出される最も普
通の状況は、ファイル・システム4の残りスペース(す
なわち、メモリ・デバイスのレギュラー・データ・セク
タ)の量が不十分なために、新しいファイルをファイル
・システム4に書き込もうとして失敗した時である。こ
の場合、ファイル・オブジェクトはガーベージ・コレク
ション処理を呼び出し、前に不要なガーベージ・ファイ
ルとしてタグを付けられたファイルを全て除去する。そ
の後、新しいファイルをファイル・システム4に書き込
む2回目の試みが行われ、この試みが失敗すると、エラ
ー・コードがプログラム・アプリケーションに送り返さ
れ、ファイル・システム4にこれ以上空きスペースがな
いか、デバイスの故障が発生したことを示す。
【0024】ガーベージ・コレクション処理は、停電、
マイクロプロセッサの故障、メモリ・システムの故障な
どが発生した後、マイクロプロセッサ8の再ブートの際
に実行されるファイル・システム初期化ルーチンの一部
としても呼び出される。ここでガーベージ・コレクショ
ン処理を使う目的は、書き込み操作やガーベージ・コレ
クション処理が中断された際に、ファイル・システム4
に残された不完全に書き込みされたファイルを全て除去
し、不完全なファイルを検索することによって発生する
マイクロプロセッサの停止を防止することである。従っ
て、再ブート時にメモリ・システム1に電源が投入され
ると、マイクロプロセッサ8は、FLASHメモリ・デ
バイス2のブート・セクタ20に記憶されたファイル・
システム初期化ルーチンを含むブート・コードを、その
一次DRAMメモリ6にロードする。
【0025】これがマイクロプロセッサ8によって実行
されると、二次メモリ2の第1レギュラー・セクタ28
からファイル・システム・リスト・ヘッド・ハイパーブ
ロック5を読み出す試みが行われる。リスト・ヘッドが
そこに見つからない場合、停電がガーベージ・コレクシ
ョン中に起こった時リスト・ヘッド5が常駐しているこ
とがあるスワップ・セクタ26の第1ブロックからリス
ト・ヘッド5を読み出す、別の試みが行われる。リスト
・ヘッド5が成功裡に読み出されると、そのコピーが、
ファイル・システム4によって後で使われるために一次
メモリ6に記憶される。リスト・ヘッド5が見つからな
い場合、そのファイル・システム4は使用出来ず、FL
ASHメモリ・デバイス2のブート・セクタ20のブー
ト・コードから再建されなければならない。
【0026】従来のガーベージ・コレクション処理と異
なり、本発明のプロセスは、ファイル・システム4のイ
ンテグリティを維持し、ガーベージ・コレクション・セ
ッション中に停電等が起こってもマイクロプロセッサ8
を停止しないようにするために、リエントラントな設計
になっている。これは、第1に、ガーベージ・コレクシ
ョン処理を独立した分析、実行フェーズに分割し、分
析、実行機構の両方から独立した分析フェーズの結果を
記録して、実行フェーズが中断されても分析フェーズに
再入する必要がないようにすることによって達成され
る。第2に、分析フェーズの結果は、実行が中断された
時や、他の(次の)イベントが実行される前に、同じイ
ベントの前の実行の結果を変更することなく、再実行出
来るという点で再実行可能な、独立した、原子イベント
またはメモリ動作に関して表される。こうして、前の実
行が停電によって中断されたイベントは、FLASHメ
モリ・デバイス2の現状態(すなわち、特定の記憶位置
に前に書き込みされたビット・パターン)に悪影響を与
えることなく最初から最後まで再実行される。
【0027】上記の最初のタスクを達成するために、フ
ェーズ・プログレス・フラグが、任意の所与の時間にど
のガーベージ・コレクション・フェーズが始動され、ど
のフェーズが完了したかを示すために使われる。プログ
レス・フラグはレギュラー・ファイル・データとは別に
イベント待ち行列セクタ22の最初のブロックに記憶さ
れ、分析フェーズ開始フラグ、分析フェーズ完了フラ
グ、実行フェーズ開始フラグ、実行フェーズ完了フラグ
を含む。図3のフローチャートを参照すると、ガーベー
ジ・コレクションがファイル・システム初期化ルーチン
の一部分として呼び出される時、GCイベント待ち行列
セクタ22の最初のブロックが読み出され、そこに記憶
されたフラグがマイクロプロセッサ8によって検討され
て、前のガーベージ・コレクション・セッションが停電
によって中断されたのかどうか、もしそうなら、どのフ
ェーズで中断されたのかを判断する。
【0028】下記の表Iに示すように、全てのフラグが
セットされているかまたはされていない場合、前のセッ
ションは停電の際に中断されておらず、ガーベージ・コ
レクション処理は初期化手続きの一部分として完全に実
行される。全てのフラグがセットされている状態と、全
てのフラグがセットされていない状態の違いは、停電が
起こったのが、前のガーベージ・コレクション・セッシ
ョンの完了後、フラグが消去される前か後かという違い
である。しかし、分析フェーズが開始されたが完了して
いない場合、その分析結果は廃棄され、新しい分析フェ
ーズが始動する。この場合、ファイル・システム4の状
態は中断された分析のためのイベントが実行されていな
いという事実によって保存されることに注意されたい。
分析フェーズが完了したが、実行フェーズが開始されて
いない場合、プロセスは、前の分析フェーズの間にそこ
に書き込まれたイベント待ち行列24の中のイベントの
実行と共に再開される。
【0029】最後に、実行フェーズが開始されたが完了
していない場合、イベント待ち行列24の中のイベント
の実行は、実行が中断されたイベントから再開される。
その結果、ファイル・システムの初期化の間に、一度前
のガーベージ・コレクション処理が中断されたかどうか
が判断されれば、初期化は、分析フェーズを始動する
か、実行フェーズを再開または実行することによって続
行される。
【0030】
【表I】 分析が 分析が 実行が 実行が 開始された 完了した 開始された 完了した 0 0 0 0 −−− 分析を開始する 1 0 0 0 −−− 分析を開始する 1 1 0 0 −−− 実行を開始する 1 1 1 0 −−− 実行を再開する 1 1 1 1 −−− 分析を開始する
【0031】分析フェーズは、ガーベージ・コレクショ
ン・イベント分析オブジェクトの作成を通じて開始され
る。図4のフローチャートを参照すると、イベント分析
オブジェクトは、分析フェーズ開始フラグの最初のセッ
トを検索した後、ファイル・システム・ストレージに配
置された各ファイルのハイパーブロック7を検索する。
分析オブジェクトは、ハイパーブロック7に含まれる、
hok、fok、ガーベージ・コレクション・ステータ
ス・フラグを検討し、ファイルの性質と、もしあれば、
次に取るべきアクションを決定する。hok、fokど
ちらかのフラグがセットされていない場合、そのファイ
ルは、ハイパーブロック7またはファイル・ブロック9
の書き込みが成功裡に完了していないために、不完全に
書き込まれたファイルであることが示される。
【0032】書き込み処理の間にガーベージ・コレクシ
ョン・フラグがセットされた場合、そのファイルは、重
複ファイルに続くファイル・システム4に書き込まれた
ファイルと同じ識別子またはファイル名を有する他のフ
ァイルの古い複写であることが示される。しかし、他の
実施例では、ガーベージ・コレクション・フラグは、他
のファイルまたはファイル・システムの特性の検出に反
応してセットされる。例えば、ガーベージ・コレクショ
ン・フラグは、メモリ・デバイスのデータ・セクタが一
杯で、そのファイルが、ファイル・システム4に残って
いる最も古いファイルであると判断された時、セット出
来る。最後に、hok、fokフラグがセットされ、ガ
ーベージ・コレクション・フラグがセットされていない
場合、そのファイルが、ファイル・システム4に維持さ
れるべき有効な、新しいファイルであることが示され
る。
【0033】一度選択されたファイルの状態が分析オブ
ジェクトによって判断されると、そのファイルが不完全
に書き込まれたファイルや、ガーベージ・コレクション
のために選択されたファイルでないと判断される場合に
のみ、一連の実行可能なイベントまたはメモリ操作がイ
ベント分析オブジェクトによって生成され、FLASH
メモリ・デバイス2のイベント待ち行列セクタ22に提
供されるイベント待ち行列24に書き込まれる。その結
果、イベント分析オブジェクトによって検索された有効
な、新しいファイルの各々について、一連のイベントが
イベント待ち行列24に書き込まれ、その実行によっ
て、関連するファイルが、前にスワップ・セクタ26に
コピーされた他の有効なファイルと連続して、その元の
ソース・セクタからスワップ・セクタ26に書き込まれ
る。さらに、スワップ・セクタ26が前のイベントの実
行によって一杯になっていると判断される場合は、有効
な、新しいファイルのために生成される一連のイベント
は、さらに、選択された宛先セクタを消去し、スワップ
・セクタ26を1つの圧縮されたセクタとして宛先セク
タにコピーし、スワップ・セクタ26を次のコピーのた
めに消去するイベントを含む。
【0034】前に言及したように、生成されるイベント
は、同じ関連するデータを伴う(他の操作を実行する前
の)同じ操作の次の実行がファイル・システム4の状態
を悪い方向に変えないという点で再実行可能であること
を確保するために、充分に原子的(または、基本的)で
あることに基づいて選択された、独立したメモリ操作を
含む。イベントの例の表は以下の表IIに記載される。
【0035】
【表II】 操作の名称 データ 内容 1)EraseSector セクタ数 識別されたセクタ全 体 を消去する 2)CopyBlocks ソース・スタート・ 特定されたブロック数 ブロック・アドレス を、ソース・スタート コピーすべきブロック数 ・アドレスから宛先ア 宛先スタート・ブロック ドレスにコピーする ・アドレス 3)WriteModified- ブロック・アドレス 新しいアドレスを計算 Hyperblocksource 宛先ブロック・アドレス し、ハイパーブロック 空きファイル・システム にコピーする、 ・ブロック数 最後のファイル・ブロ カレント・ハイパー ックの後に残されたフ ブロックのアドレス ァイル・システム・ブ ロックの新しい数を計 算し、ハイパーブロッ クに書き込む、 ハイパーブロックをソ ース・アドレスから宛 先アドレスに移動する
【0036】表IIに示すように、各イベントは、イベン
トの実行の際にマイクロプロセッサ8の実行ユニットに
よって使われるためのイベントのIDまたは名称と分析
データを有する。ファイルのファイル・ブロック9を初
期のソース・ロケーションから、最終的な宛先ロケーシ
ョンにコピーするためのメモリ操作に関連する分析デー
タが、技術上良く知られているように、スワップ・セク
タ26に書き込まれる次の連続するアドレスに加えて、
関連するハイパーブロック7に記憶されたファイルのア
ドレスとサイズに関する情報に基づく分析オブジェクト
によって生成される。特定のファイルが1つ以上のソー
ス・セクタに及ぶ時や、ファイルの全てのファイル・ブ
ロック9がスワップ・セクタ26の残りスペースに収ま
らない時は、やはり技術上良く知られているように、ラ
ップアラウンド状態が満たされる必要がある。イベント
待ち行列24に書き込まれた各イベントはまた、イベン
トが実行されたかどうかを示す実行完了フラグを含む。
このフラグは初めイベントが生成される時はセットされ
ておらず、後で、実行ユニットがそのイベントに対応す
るメモリ操作を完了した時にセットされる。
【0037】一度ファイル・システム4の中の全てのフ
ァイルがイベント分析オブジェクトによって実行される
と、イベント待ち行列セクタ22のイベント分析完了フ
ラグがセットされ、イベント実行オブジェクトが作成さ
れて、イベント待ち行列24に順次記憶されたイベント
の実行を開始する。図5のイベント実行フローチャート
を参照すると、イベント実行開始フラグがセットされた
後、イベント実行オブジェクトがFIFO順に各イベン
トを検索し、その完了フラグを検討して、その特定のイ
ベントがすでに完了しているかどうかを判断する。フラ
グがセットされている場合、イベント実行オブジェクト
は次のイベントを検索し、その完了フラグを検討する。
完了フラグがセットされていないイベントが見つかった
場合、イベント実行オブジェクトはイベントのIDと関
連するデータをマイクロプロセッサ8に渡し、マイクロ
プロセッサの実行ユニットは既定のメモリ操作に従って
イベントを実行する。その後イベントの完了フラグがセ
ットされるが、イベントとそのデータは、待ち行列の全
てのイベントが成功裡に実行されるまで、イベント待ち
行列24の中に残る。
【0038】待ち行列24の全てのイベントが実行され
ると、イベント実行オブジェクトはイベント待ち行列セ
クタ22にイベント実行完了フラグをセットし、全ての
イベントの待ち行列とその関連するデータをクリアす
る。しかし、各イベントに完了フラグをセットし、待ち
行列中の全てのイベントを実行した後待ち行列全体をク
リアする代わりに、あるデータ記憶装置2では、イベン
ト実行オブジェクトは単に、一度イベントが成功裡に実
行されると、各イベントを待ち行列から個別にクリア出
来たことが予測可能である。
【0039】イベントの実行が停電によって偶然に中断
された場合、ファイル・システム初期化ルーチンの実行
によって、マイクロプロセッサ8は、フェーズ・プログ
レス・フラグを検討し、実行フェーズが中断されたこと
を判断する。この場合、新しいイベント実行オブジェク
トが作成され、イベント待ち行列24の最も古いイベン
トに始まる各イベントのための完了フラグを順次検討す
る。その後、イベントの実行は、イベント待ち行列24
の中の一連のイベントのうち、完了フラグがセットされ
ていない最初のイベントである、実行が中断されたイベ
ントから始動される。
【0040】本発明の1つの実施例では、上記のファイ
ル・システム4とガーベージ・コレクション処理は、1
つの電話応答機械/システムとコンピュータ・システム
のソフトウェア・ファイル記憶機構のメモリ・システム
1の二次メモリ2において実現される。それぞれ電話ネ
ットワークまたはコンピュータ・ネットワークからダウ
ンロードされたソフトウェア・ファイルは、順次メモリ
・システム1のメイン・メモリ6にアップロードされて
ユーザー向けまたはシステム向けの活動に使われるため
に、順次メモリ・システム1に記憶される。アップデー
トされたソフトウェア・ファイルや、新しいバージョン
のソフトウェア・ファイルがファイル記憶機構にダウン
ロードされる時、それらは古いソフトウェア・ファイル
と同じ名前で二次メモリ2に記憶される。その後古いフ
ァイルはガーベージ・コレクションのためにマークさ
れ、ファイル記憶機構は、コレクションのためにマーク
されていない特定の名前のソフトウェア・ファイルだけ
を検索する。
【0041】本発明の他の実施例では、上記のファイル
・システム4とガーベージ・コレクション処理は、1つ
の電話応答機械/システムとコンピュータ・システムの
メッセージ記憶機構のメモリ・システム1の二次メモリ
2において実現される。それぞれ電話ネットワークまた
はコンピュータ・ネットワークを通じて受信されたメッ
セージは、音声再生または、テレビまたはコンピュータ
のモニタでの視覚表示の形で順次出力されるためのメッ
セージ・ファイルとして、メモリ・システム1に順次記
憶される。このことは有利にも、メッセージ記憶機構に
音声、電子メール、ファクシミリのメッセージを記録す
る有効な手段を提供する一方で、必要なメモリのサイ
ズ、ひいては製品のコストを最小にする。メッセージ記
憶機構のほとんど全ての利用可能なメモリが、記録され
たメッセージ・ファイルで一杯になると、ガーベージ・
コレクション処理が呼び出され、前に説明したように、
同じファイル名または識別子を有するファイルの代わり
に、一番古いファイルを除去する。
【0042】本明細書に説明された実施例は、本発明の
基本原理を開示するが、これらの実施例は単に説明用で
あって、本発明の精神と範囲から離れない様々な追加や
変更が可能なことが理解される。例えば、上記で説明し
たガーベージ・コレクション処理は、コンピュータ・シ
ステムのハード・ディスク・ドライブやフロッピー・デ
ィスク・ドライブといった他のファイル記憶システムで
も実現出来ることが予測される。従って、上記の詳細な
説明は、全ての場合説明的で例示的であるが制限的でな
く、本発明の範囲は、詳細な説明からではなく、特許法
によって許容される全範囲に従って解釈される特許請求
の範囲から決定される。
【図面の簡単な説明】
【図1】マイクロプロセッサに制御されるFLASHメ
モリ、DRAMメモリを含む、本発明のファイル・シス
テムが実現されるメモリ・システムを示す。
【図2】単一ブート・セクタ、イベント・セクタ、スワ
ップ・セクタ、複数のレギュラー・データ・セクタを示
す、FLASHメモリのセクタ・マップである。
【図3】本発明の、オーバーオール・デュアル・フェー
ズ・ガーベージ・コレクション処理を示すフローチャー
トである。
【図4】本発明のガーベージ・コレクション処理の分析
フェーズを示すフローチャートである。
【図5】本発明のガーベージ・コレクション処理の実行
フェーズを示すフローチャートである。

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 マイクロプロセッサに制御された、デー
    タ記憶装置に書き込まれたファイルを記憶するための記
    憶位置を有するデータ記憶装置において、マイクロプロ
    セッサの再ブートとデータ記憶装置の初期化の間にマイ
    クロプロセッサの停止を防止するために提供される方法
    であって、 ファイルを前記データ記憶装置の第1記憶エリアに書き
    込みするステップと、 データ記憶装置の第1の記憶エリアに成功裡に書き込み
    されたファイルに第1のタグを付けるステップと、 前記マイクロプロセッサの再ブートの際に前記データ記
    憶装置の初期化を始動するステップとを含み、前記デー
    タ記憶装置の初期化が、 前記データ記憶装置の第1記憶エリアに記憶された、も
    はや使う予定のない不要なファイルからなるファイルに
    第2のタグを付けるステップと、 前記データ記憶装置の第1記憶エリアに記憶された、第
    1のタグを持たないファイルと、前記第2のタグを有す
    るファイルからなる、ファイルを消去するステップとを
    含むガーベージ・コレクション・ルーチンを形成するこ
    と、 を特徴とする方法。
  2. 【請求項2】 前記データ記憶装置の第1記憶エリアに
    記憶された、第1タグの付かないファイルと第2タグの
    付いたタグからなるタグを消去するステップが、 前記第1記憶エリアの前記第1タグの付いたファイルと
    前記第2タグの付かないファイルの両方を、前記データ
    記憶装置の第2記憶エリアにコピーするステップと、 前記データ記憶装置の第1記憶エリアに記憶されたファ
    イルを消去するステップとをさらに含む、請求項1に記
    載の方法。
  3. 【請求項3】 前記第2記憶エリアが、前記第1記憶エ
    リアの中に配置された1つの記憶エリアと、前記第1記
    憶エリアの外側に配置された記憶エリアとからなる、請
    求項2に記載の方法。
  4. 【請求項4】 前記データ記憶装置が、EEPROMメ
    モリ・デバイスとFLASHメモリ・デバイスを含むグ
    ループから選択されたメモリ・デバイスからなり、前記
    イベント記憶エリアが前記第1記憶エリアの外側に配置
    された記憶エリアからなる、請求項2に記載の方法。
  5. 【請求項5】 マイクロプロセッサに制御された、デー
    タ記憶装置に書き込まれたファイルを記憶するための記
    憶位置を有するデータ記憶装置において、前記マイクロ
    プロセッサの再ブートと前記データ記憶装置の初期化の
    間にマイクロプロセッサの停止を防止するために提供さ
    れる方法であって、 ファイルを前記データ記憶装置の第1記憶エリアに書き
    込みするステップと、 前記データ記憶装置の第1の記憶エリアに成功裡に書き
    込みされたファイルにタグを付けるステップと、 前記マイクロプロセッサの再ブートの際に前記データ記
    憶装置の初期化を始動するステップとを含み、前記デー
    タ記憶装置の初期化が、 実行の際にタグのないファイルを前記データ記憶装置か
    ら除去する、メモリ操作とタグのないファイルのための
    関連するデータからなる一連の実行可能なイベントを生
    成するステップと、 生成したイベントを前記データ記憶装置のイベント記憶
    エリアに書き込むステップと、 前記データ記憶装置のイベント記憶エリアに書き込まれ
    たイベントを実行して、タグのないファイルを前記デー
    タ記憶装置の第1記憶エリアから除去するステップとを
    含むこと、 を特徴とする方法。
  6. 【請求項6】 イベント記憶エリアが前記データ記憶装
    置の第1記憶エリアの外側に配置される、請求項5に記
    載の方法。
  7. 【請求項7】 前記データ記憶装置が、ファイルが前記
    データ記憶装置から連続して読み出し、書き込みされる
    フラット・ファイル構造を有する、読み出し中心メモリ
    からなる、請求項5に記載の方法。
  8. 【請求項8】 前記イベント記憶装置が前記読み出し中
    心メモリ・デバイスの第1記憶エリアの外側に配置され
    る、請求項7に記載の方法。
  9. 【請求項9】 前記イベントがメモリ操作と関連するデ
    ータからなり、各々が、対応するイベントの実行の中断
    の際や、他のイベントの実行の前に、対応するイベント
    の前の実行の結果を変更することなく、再実行可能な、
    請求項5に記載の方法。
  10. 【請求項10】 前記データ記憶装置が読み出し中心メ
    モリ・デバイスからなる、請求項9に記載の方法。
  11. 【請求項11】 前記データ記憶装置が1つのEEPR
    OMメモリ・デバイスとFLASHメモリ・デバイスか
    らなり、前記イベント記憶エリアが前記データ記憶装置
    の第1記憶エリアの外側に配置される、請求項9に記載
    の方法。
JP8137338A 1995-05-31 1996-05-31 書き込み/置換操作のための停電回復機構を有する、データ記憶装置のためのファイル・システム Withdrawn JPH08328917A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/455926 1995-05-31
US08/455,926 US5559957A (en) 1995-05-31 1995-05-31 File system for a data storage device having a power fail recovery mechanism for write/replace operations

Publications (1)

Publication Number Publication Date
JPH08328917A true JPH08328917A (ja) 1996-12-13

Family

ID=23810779

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8137338A Withdrawn JPH08328917A (ja) 1995-05-31 1996-05-31 書き込み/置換操作のための停電回復機構を有する、データ記憶装置のためのファイル・システム

Country Status (3)

Country Link
US (1) US5559957A (ja)
EP (1) EP0745934A3 (ja)
JP (1) JPH08328917A (ja)

Families Citing this family (313)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5881239A (en) * 1995-01-23 1999-03-09 Tandem Computers Incorporated Network system with resilient virtual fault tolerant sessions
US5701492A (en) * 1996-03-29 1997-12-23 Canon Kabushiki Kaisha Fail-safe flashing of EPROM
KR0174711B1 (ko) * 1996-04-24 1999-04-15 김광호 하드디스크 캐시의 제어방법
US6418478B1 (en) 1997-10-30 2002-07-09 Commvault Systems, Inc. Pipelined high speed data transfer mechanism
US7581077B2 (en) 1997-10-30 2009-08-25 Commvault Systems, Inc. Method and system for transferring data in a storage operation
US7209972B1 (en) * 1997-10-30 2007-04-24 Commvault Systems, Inc. High speed data transfer mechanism
US7739381B2 (en) * 1998-03-11 2010-06-15 Commvault Systems, Inc. System and method for providing encryption in storage operations in a storage network, such as for use by application service providers that provide data storage services
US7277941B2 (en) 1998-03-11 2007-10-02 Commvault Systems, Inc. System and method for providing encryption in a storage network by storing a secured encryption key with encrypted archive data in an archive storage device
US6157979A (en) * 1998-03-14 2000-12-05 Advanced Technology Materials, Inc. Programmable controlling device with non-volatile ferroelectric state-machines for restarting processor when power is restored with execution states retained in said non-volatile state-machines on power down
US7953788B2 (en) * 2001-09-29 2011-05-31 Siebel Systems, Inc. System and method for queuing data for an application server
US9361243B2 (en) 1998-07-31 2016-06-07 Kom Networks Inc. Method and system for providing restricted access to a storage medium
US8234477B2 (en) 1998-07-31 2012-07-31 Kom Networks, Inc. Method and system for providing restricted access to a storage medium
US6247024B1 (en) 1998-09-25 2001-06-12 International Business Machines Corporation Method and system for performing deferred file removal in a file system
US6188613B1 (en) * 1998-10-08 2001-02-13 Micron Technology, Inc. Device and method in a semiconductor memory for erasing/programming memory cells using erase/program speeds stored for each cell
US7194092B1 (en) * 1998-10-26 2007-03-20 Microsoft Corporation Key-based secure storage
US20050060549A1 (en) * 1998-10-26 2005-03-17 Microsoft Corporation Controlling access to content based on certificates and access predicates
US7174457B1 (en) * 1999-03-10 2007-02-06 Microsoft Corporation System and method for authenticating an operating system to a central processing unit, providing the CPU/OS with secure storage, and authenticating the CPU/OS to a third party
US7035880B1 (en) 1999-07-14 2006-04-25 Commvault Systems, Inc. Modular backup and retrieval system used in conjunction with a storage area network
US7395282B1 (en) * 1999-07-15 2008-07-01 Commvault Systems, Inc. Hierarchical backup and retrieval system
US7389311B1 (en) 1999-07-15 2008-06-17 Commvault Systems, Inc. Modular backup and retrieval system
US6643731B2 (en) * 1999-12-31 2003-11-04 Texas Instruments Incorporated Low cost memory management that resists power interruption
US6651063B1 (en) 2000-01-28 2003-11-18 Andrei G. Vorobiev Data organization and management system and method
US6658436B2 (en) * 2000-01-31 2003-12-02 Commvault Systems, Inc. Logical view and access to data managed by a modular data and storage management system
US7155481B2 (en) 2000-01-31 2006-12-26 Commvault Systems, Inc. Email attachment management in a computer system
US7434219B2 (en) * 2000-01-31 2008-10-07 Commvault Systems, Inc. Storage of application specific profiles correlating to document versions
US7003641B2 (en) 2000-01-31 2006-02-21 Commvault Systems, Inc. Logical view with granular access to exchange data managed by a modular data and storage management system
JP2002230893A (ja) * 2001-01-30 2002-08-16 Pioneer Electronic Corp 情報記録再生装置、情報記録再生方法及び再生記録手順プログラムを記録したプログラム記録媒体
JP2005505039A (ja) * 2001-09-28 2005-02-17 コムヴォールト・システムズ・インコーポレーテッド 情報記憶装置にオブジェクトをアーカイブする装置及び方法
JP2005505045A (ja) 2001-09-28 2005-02-17 コムヴォールト・システムズ・インコーポレーテッド クイックリカバリボリュームを作成及び管理する方法及び装置
US7596586B2 (en) * 2003-04-03 2009-09-29 Commvault Systems, Inc. System and method for extended media retention
US8346733B2 (en) 2006-12-22 2013-01-01 Commvault Systems, Inc. Systems and methods of media management, such as management of media to and from a media storage library
US20030101155A1 (en) * 2001-11-23 2003-05-29 Parag Gokhale Method and system for scheduling media exports
US7287047B2 (en) * 2001-11-23 2007-10-23 Commvault Systems, Inc. Selective data replication system and method
US7584227B2 (en) * 2005-12-19 2009-09-01 Commvault Systems, Inc. System and method for containerized data storage and tracking
US20050033913A1 (en) * 2003-04-03 2005-02-10 Rajiv Kottomtharayil Method and system for controlling a robotic arm in a storage device
US7603518B2 (en) 2005-12-19 2009-10-13 Commvault Systems, Inc. System and method for improved media identification in a storage device
US7487365B2 (en) * 2002-04-17 2009-02-03 Microsoft Corporation Saving and retrieving data based on symmetric key encryption
US7890771B2 (en) 2002-04-17 2011-02-15 Microsoft Corporation Saving and retrieving data based on public key encryption
KR100894047B1 (ko) * 2002-07-12 2009-04-20 삼성전자주식회사 데이터 프로세싱 방법 및 이를 수행하기 위한 데이터프로세싱 장치
AU2003270482A1 (en) 2002-09-09 2004-03-29 Commvault Systems, Inc. Dynamic storage device pooling in a computer system
AU2003272456A1 (en) 2002-09-16 2004-04-30 Commvault Systems, Inc. System and method for optimizing storage operations
WO2004025423A2 (en) * 2002-09-16 2004-03-25 Commvault Systems, Inc. System and method for blind media support
EP1579331A4 (en) 2002-10-07 2007-05-23 Commvault Systems Inc SYSTEM AND METHOD FOR MANAGING SAVED DATA
US20050039069A1 (en) * 2003-04-03 2005-02-17 Anand Prahlad Remote disaster data recovery system and method
US7631351B2 (en) * 2003-04-03 2009-12-08 Commvault Systems, Inc. System and method for performing storage operations through a firewall
WO2004090788A2 (en) * 2003-04-03 2004-10-21 Commvault Systems, Inc. System and method for dynamically performing storage operations in a computer network
US6976137B2 (en) * 2003-04-24 2005-12-13 International Business Machines Corporation Preservation of memory associated with a hypervisor partition
US7454569B2 (en) 2003-06-25 2008-11-18 Commvault Systems, Inc. Hierarchical system and method for performing storage operations in a computer network
US7734578B2 (en) * 2003-11-13 2010-06-08 Comm Vault Systems, Inc. System and method for performing integrated storage operations
US7613748B2 (en) 2003-11-13 2009-11-03 Commvault Systems, Inc. Stored data reverification management system and method
US7546324B2 (en) 2003-11-13 2009-06-09 Commvault Systems, Inc. Systems and methods for performing storage operations using network attached storage
WO2005050386A2 (en) 2003-11-13 2005-06-02 Commvault Systems, Inc. System and method for performing a snapshot and for restoring data
WO2005065084A2 (en) 2003-11-13 2005-07-21 Commvault Systems, Inc. System and method for providing encryption in pipelined storage operations in a storage network
US7440982B2 (en) 2003-11-13 2008-10-21 Commvault Systems, Inc. System and method for stored data archive verification
CA2544062A1 (en) * 2003-11-13 2005-06-02 Commvault Systems, Inc. System and method for data storage and tracking
US7222214B2 (en) * 2004-03-25 2007-05-22 Lucent Technologies Inc. Device-level address translation within a programmable non-volatile memory device
US7343453B2 (en) 2004-04-30 2008-03-11 Commvault Systems, Inc. Hierarchical systems and methods for providing a unified view of storage information
US8266406B2 (en) 2004-04-30 2012-09-11 Commvault Systems, Inc. System and method for allocation of organizational resources
JP4662743B2 (ja) * 2004-09-13 2011-03-30 Necインフロンティア株式会社 データ2重化システム
KR100634436B1 (ko) * 2004-09-23 2006-10-16 삼성전자주식회사 멀티 칩 시스템 및 그것의 부트코드 페치 방법
US20060224846A1 (en) 2004-11-05 2006-10-05 Amarendran Arun P System and method to support single instance storage operations
US7490207B2 (en) 2004-11-08 2009-02-10 Commvault Systems, Inc. System and method for performing auxillary storage operations
US8959299B2 (en) 2004-11-15 2015-02-17 Commvault Systems, Inc. Using a snapshot as a data source
US8775823B2 (en) 2006-12-29 2014-07-08 Commvault Systems, Inc. System and method for encrypting secondary copies of data
US8112605B2 (en) * 2005-05-02 2012-02-07 Commvault Systems, Inc. System and method for allocation of organizational resources
US7602906B2 (en) * 2005-08-25 2009-10-13 Microsoft Corporation Cipher for disk encryption
US7822749B2 (en) 2005-11-28 2010-10-26 Commvault Systems, Inc. Systems and methods for classifying and transferring information in a storage network
US7707178B2 (en) 2005-11-28 2010-04-27 Commvault Systems, Inc. Systems and methods for classifying and transferring information in a storage network
US7636743B2 (en) * 2005-12-19 2009-12-22 Commvault Systems, Inc. Pathname translation in a data replication system
US8930496B2 (en) 2005-12-19 2015-01-06 Commvault Systems, Inc. Systems and methods of unified reconstruction in storage systems
US7543125B2 (en) * 2005-12-19 2009-06-02 Commvault Systems, Inc. System and method for performing time-flexible calendric storage operations
US20200257596A1 (en) 2005-12-19 2020-08-13 Commvault Systems, Inc. Systems and methods of unified reconstruction in storage systems
US7617253B2 (en) * 2005-12-19 2009-11-10 Commvault Systems, Inc. Destination systems and methods for performing data replication
US7606844B2 (en) 2005-12-19 2009-10-20 Commvault Systems, Inc. System and method for performing replication copy storage operations
US9009076B2 (en) * 2005-12-19 2015-04-14 Commvault Systems, Inc. Systems and methods for dynamic digital asset resource management
US7651593B2 (en) 2005-12-19 2010-01-26 Commvault Systems, Inc. Systems and methods for performing data replication
US8661216B2 (en) 2005-12-19 2014-02-25 Commvault Systems, Inc. Systems and methods for migrating components in a hierarchical storage network
US7620710B2 (en) * 2005-12-19 2009-11-17 Commvault Systems, Inc. System and method for performing multi-path storage operations
AU2006331932B2 (en) 2005-12-19 2012-09-06 Commvault Systems, Inc. Systems and methods for performing data replication
US8572330B2 (en) 2005-12-19 2013-10-29 Commvault Systems, Inc. Systems and methods for granular resource management in a storage network
US7962709B2 (en) 2005-12-19 2011-06-14 Commvault Systems, Inc. Network redirector systems and methods for performing data replication
US20070166674A1 (en) * 2005-12-19 2007-07-19 Kochunni Jaidev O Systems and methods for generating configuration metrics in a storage network
US20110010518A1 (en) 2005-12-19 2011-01-13 Srinivas Kavuri Systems and Methods for Migrating Components in a Hierarchical Storage Network
US7457790B2 (en) * 2005-12-19 2008-11-25 Commvault Systems, Inc. Extensible configuration engine system and method
US7617262B2 (en) * 2005-12-19 2009-11-10 Commvault Systems, Inc. Systems and methods for monitoring application data in a data replication system
US8234359B2 (en) * 2006-05-24 2012-07-31 Absolute Software Corp. System and method for remotely re-imaging a computer system
WO2007145316A1 (ja) * 2006-06-15 2007-12-21 Panasonic Corporation メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶装置システム
US8726242B2 (en) 2006-07-27 2014-05-13 Commvault Systems, Inc. Systems and methods for continuous data replication
US20090265403A1 (en) * 2006-08-31 2009-10-22 Keiji Fukumoto File system
US7539783B2 (en) 2006-09-22 2009-05-26 Commvault Systems, Inc. Systems and methods of media management, such as management of media to and from a media storage library, including removable media
US7882077B2 (en) 2006-10-17 2011-02-01 Commvault Systems, Inc. Method and system for offline indexing of content and classifying stored data
US7792789B2 (en) 2006-10-17 2010-09-07 Commvault Systems, Inc. Method and system for collaborative searching
US8655914B2 (en) 2006-10-17 2014-02-18 Commvault Systems, Inc. System and method for storage operation access security
US8370442B2 (en) 2008-08-29 2013-02-05 Commvault Systems, Inc. Method and system for leveraging identified changes to a mail server
WO2008070688A1 (en) 2006-12-04 2008-06-12 Commvault Systems, Inc. Systems and methods for creating copies of data, such as archive copies
US8677091B2 (en) 2006-12-18 2014-03-18 Commvault Systems, Inc. Writing data and storage system specific metadata to network attached storage device
US7734669B2 (en) 2006-12-22 2010-06-08 Commvault Systems, Inc. Managing copies of data
US20080155205A1 (en) * 2006-12-22 2008-06-26 Parag Gokhale Systems and methods of data storage management, such as dynamic data stream allocation
US7831766B2 (en) * 2006-12-22 2010-11-09 Comm Vault Systems, Inc. Systems and methods of data storage management, such as pre-allocation of storage space
US7840537B2 (en) 2006-12-22 2010-11-23 Commvault Systems, Inc. System and method for storing redundant information
US20080228771A1 (en) 2006-12-22 2008-09-18 Commvault Systems, Inc. Method and system for searching stored data
US8719809B2 (en) 2006-12-22 2014-05-06 Commvault Systems, Inc. Point in time rollback and un-installation of software
US7831566B2 (en) * 2006-12-22 2010-11-09 Commvault Systems, Inc. Systems and methods of hierarchical storage management, such as global management of storage operations
US8312323B2 (en) 2006-12-22 2012-11-13 Commvault Systems, Inc. Systems and methods for remote monitoring in a computer network and reporting a failed migration operation without accessing the data being moved
US8290808B2 (en) 2007-03-09 2012-10-16 Commvault Systems, Inc. System and method for automating customer-validated statement of work for a data storage environment
US8707070B2 (en) 2007-08-28 2014-04-22 Commvault Systems, Inc. Power management of data processing resources, such as power adaptive management of data storage operations
US8706976B2 (en) 2007-08-30 2014-04-22 Commvault Systems, Inc. Parallel access virtual tape library and drives
US8396838B2 (en) 2007-10-17 2013-03-12 Commvault Systems, Inc. Legal compliance, electronic discovery and electronic document handling of online and offline copies of data
US7761740B2 (en) * 2007-12-13 2010-07-20 Spansion Llc Power safe translation table operation in flash memory
US8296301B2 (en) 2008-01-30 2012-10-23 Commvault Systems, Inc. Systems and methods for probabilistic data classification
US7836174B2 (en) 2008-01-30 2010-11-16 Commvault Systems, Inc. Systems and methods for grid-based data scanning
US8769048B2 (en) 2008-06-18 2014-07-01 Commvault Systems, Inc. Data protection scheduling, such as providing a flexible backup window in a data protection system
US8352954B2 (en) 2008-06-19 2013-01-08 Commvault Systems, Inc. Data storage resource allocation by employing dynamic methods and blacklisting resource request pools
US9128883B2 (en) 2008-06-19 2015-09-08 Commvault Systems, Inc Data storage resource allocation by performing abbreviated resource checks based on relative chances of failure of the data storage resources to determine whether data storage requests would fail
US8219524B2 (en) 2008-06-24 2012-07-10 Commvault Systems, Inc. Application-aware and remote single instance data management
US9098495B2 (en) 2008-06-24 2015-08-04 Commvault Systems, Inc. Application-aware and remote single instance data management
US8484162B2 (en) 2008-06-24 2013-07-09 Commvault Systems, Inc. De-duplication systems and methods for application-specific data
US8335776B2 (en) 2008-07-02 2012-12-18 Commvault Systems, Inc. Distributed indexing system for data storage
US8166263B2 (en) 2008-07-03 2012-04-24 Commvault Systems, Inc. Continuous data protection over intermittent connections, such as continuous data backup for laptops or wireless devices
US8725688B2 (en) 2008-09-05 2014-05-13 Commvault Systems, Inc. Image level copy or restore, such as image level restore without knowledge of data object metadata
US8307177B2 (en) 2008-09-05 2012-11-06 Commvault Systems, Inc. Systems and methods for management of virtualization data
US20100070474A1 (en) 2008-09-12 2010-03-18 Lad Kamleshkumar K Transferring or migrating portions of data objects, such as block-level data migration or chunk-based data migration
US20100070466A1 (en) 2008-09-15 2010-03-18 Anand Prahlad Data transfer techniques within data storage devices, such as network attached storage performing data migration
WO2010036754A1 (en) 2008-09-26 2010-04-01 Commvault Systems, Inc. Systems and methods for managing single instancing data
US9015181B2 (en) 2008-09-26 2015-04-21 Commvault Systems, Inc. Systems and methods for managing single instancing data
US9178842B2 (en) 2008-11-05 2015-11-03 Commvault Systems, Inc. Systems and methods for monitoring messaging applications for compliance with a policy
US8412677B2 (en) 2008-11-26 2013-04-02 Commvault Systems, Inc. Systems and methods for byte-level or quasi byte-level single instancing
US8204859B2 (en) * 2008-12-10 2012-06-19 Commvault Systems, Inc. Systems and methods for managing replicated database data
US9495382B2 (en) 2008-12-10 2016-11-15 Commvault Systems, Inc. Systems and methods for performing discrete data replication
US8434131B2 (en) 2009-03-20 2013-04-30 Commvault Systems, Inc. Managing connections in a data storage system
US8401996B2 (en) 2009-03-30 2013-03-19 Commvault Systems, Inc. Storing a variable number of instances of data objects
US8578120B2 (en) 2009-05-22 2013-11-05 Commvault Systems, Inc. Block-level single instancing
US20100332401A1 (en) 2009-06-30 2010-12-30 Anand Prahlad Performing data storage operations with a cloud storage environment, including automatically selecting among multiple cloud storage sites
US8930306B1 (en) 2009-07-08 2015-01-06 Commvault Systems, Inc. Synchronized data deduplication
US9092500B2 (en) 2009-09-03 2015-07-28 Commvault Systems, Inc. Utilizing snapshots for access to databases and other applications
US8706867B2 (en) 2011-03-31 2014-04-22 Commvault Systems, Inc. Realtime streaming of multimedia content from secondary storage devices
US8719767B2 (en) 2011-03-31 2014-05-06 Commvault Systems, Inc. Utilizing snapshots to provide builds to developer computing devices
US8433682B2 (en) 2009-12-31 2013-04-30 Commvault Systems, Inc. Systems and methods for analyzing snapshots
AU2010339584B2 (en) 2009-12-31 2014-06-26 Commvault Systems, Inc. Systems and methods for performing data management operations using snapshots
US8442983B2 (en) 2009-12-31 2013-05-14 Commvault Systems, Inc. Asynchronous methods of data classification using change journals and other data structures
US8504517B2 (en) 2010-03-29 2013-08-06 Commvault Systems, Inc. Systems and methods for selective data replication
US8504515B2 (en) 2010-03-30 2013-08-06 Commvault Systems, Inc. Stubbing systems and methods in a data replication environment
US8725698B2 (en) 2010-03-30 2014-05-13 Commvault Systems, Inc. Stub file prioritization in a data replication system
US8352422B2 (en) 2010-03-30 2013-01-08 Commvault Systems, Inc. Data restore systems and methods in a replication environment
KR20110121897A (ko) * 2010-05-03 2011-11-09 삼성전자주식회사 사용자 장치 및 그것의 프로그램 페일 처리 방법
US8489656B2 (en) 2010-05-28 2013-07-16 Commvault Systems, Inc. Systems and methods for performing data replication
US11449394B2 (en) 2010-06-04 2022-09-20 Commvault Systems, Inc. Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources
US8578109B2 (en) 2010-09-30 2013-11-05 Commvault Systems, Inc. Systems and methods for retaining and using data block signatures in data protection operations
US8577851B2 (en) 2010-09-30 2013-11-05 Commvault Systems, Inc. Content aligned block-based deduplication
DK2622469T3 (da) 2010-09-30 2020-02-17 Commvault Systems Inc Effektive datastyringsforbedringer, så som docking af datastyringsmoduler med begrænset funktion til et komplet datastyringssystem
US9244779B2 (en) 2010-09-30 2016-01-26 Commvault Systems, Inc. Data recovery operations, such as recovery from modified network data management protocol data
WO2012045023A2 (en) 2010-09-30 2012-04-05 Commvault Systems, Inc. Archiving data objects using secondary copies
US9020900B2 (en) 2010-12-14 2015-04-28 Commvault Systems, Inc. Distributed deduplicated storage system
US8954446B2 (en) 2010-12-14 2015-02-10 Comm Vault Systems, Inc. Client-side repository in a networked deduplicated storage system
US9021198B1 (en) 2011-01-20 2015-04-28 Commvault Systems, Inc. System and method for sharing SAN storage
US8423589B2 (en) * 2011-03-14 2013-04-16 International Business Machines Corporation Copy collector with efficient abort-on-copy transition to mark collector
US8849762B2 (en) 2011-03-31 2014-09-30 Commvault Systems, Inc. Restoring computing environments, such as autorecovery of file systems at certain points in time
US8719264B2 (en) 2011-03-31 2014-05-06 Commvault Systems, Inc. Creating secondary copies of data based on searches for content
US9372827B2 (en) 2011-09-30 2016-06-21 Commvault Systems, Inc. Migration of an existing computing system to new hardware
US9116633B2 (en) 2011-09-30 2015-08-25 Commvault Systems, Inc. Information management of virtual machines having mapped storage devices
US9461881B2 (en) 2011-09-30 2016-10-04 Commvault Systems, Inc. Migration of existing computing systems to cloud computing sites or virtual machines
US9471578B2 (en) 2012-03-07 2016-10-18 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9298715B2 (en) 2012-03-07 2016-03-29 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9735973B2 (en) * 2012-03-15 2017-08-15 Vidoyen Inc. Expert answer platform methods, apparatuses and media
US9639297B2 (en) 2012-03-30 2017-05-02 Commvault Systems, Inc Shared network-available storage that permits concurrent data access
US9063938B2 (en) 2012-03-30 2015-06-23 Commvault Systems, Inc. Search filtered file system using secondary storage, including multi-dimensional indexing and searching of archived files
US10157184B2 (en) 2012-03-30 2018-12-18 Commvault Systems, Inc. Data previewing before recalling large data files
US9262496B2 (en) 2012-03-30 2016-02-16 Commvault Systems, Inc. Unified access to personal data
EP2712450A4 (en) 2012-03-30 2015-09-16 Commvault Systems Inc INFORMATONS MANAGEMENT OF DATA OF MOBILE DEVICES
US9020890B2 (en) 2012-03-30 2015-04-28 Commvault Systems, Inc. Smart archiving and data previewing for mobile devices
US8950009B2 (en) 2012-03-30 2015-02-03 Commvault Systems, Inc. Information management of data associated with multiple cloud services
US9342537B2 (en) 2012-04-23 2016-05-17 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
US8892523B2 (en) 2012-06-08 2014-11-18 Commvault Systems, Inc. Auto summarization of content
US9251186B2 (en) 2012-06-13 2016-02-02 Commvault Systems, Inc. Backup using a client-side signature repository in a networked storage system
US20140032820A1 (en) * 2012-07-25 2014-01-30 Akinori Harasawa Data storage apparatus, memory control method and electronic device with data storage apparatus
US9223597B2 (en) 2012-12-21 2015-12-29 Commvault Systems, Inc. Archiving virtual machines in a data storage system
US10379988B2 (en) 2012-12-21 2019-08-13 Commvault Systems, Inc. Systems and methods for performance monitoring
US20140181085A1 (en) 2012-12-21 2014-06-26 Commvault Systems, Inc. Data storage system for analysis of data across heterogeneous information management systems
US20140181044A1 (en) 2012-12-21 2014-06-26 Commvault Systems, Inc. Systems and methods to identify uncharacterized and unprotected virtual machines
US9633216B2 (en) 2012-12-27 2017-04-25 Commvault Systems, Inc. Application of information management policies based on operation with a geographic entity
US9021452B2 (en) 2012-12-27 2015-04-28 Commvault Systems, Inc. Automatic identification of storage requirements, such as for use in selling data storage management solutions
US9069799B2 (en) 2012-12-27 2015-06-30 Commvault Systems, Inc. Restoration of centralized data storage manager, such as data storage manager in a hierarchical data storage system
US10346259B2 (en) 2012-12-28 2019-07-09 Commvault Systems, Inc. Data recovery using a cloud-based remote data recovery center
US9633022B2 (en) 2012-12-28 2017-04-25 Commvault Systems, Inc. Backup and restoration for a deduplicated file system
US9378035B2 (en) 2012-12-28 2016-06-28 Commvault Systems, Inc. Systems and methods for repurposing virtual machines
US20140196038A1 (en) 2013-01-08 2014-07-10 Commvault Systems, Inc. Virtual machine management in a data storage system
US20140201162A1 (en) 2013-01-11 2014-07-17 Commvault Systems, Inc. Systems and methods to restore selected files from block-level backup for virtual machines
US9633033B2 (en) 2013-01-11 2017-04-25 Commvault Systems, Inc. High availability distributed deduplicated storage system
US20140201140A1 (en) 2013-01-11 2014-07-17 Commvault Systems, Inc. Data synchronization management
US9886346B2 (en) 2013-01-11 2018-02-06 Commvault Systems, Inc. Single snapshot for multiple agents
US9286110B2 (en) 2013-01-14 2016-03-15 Commvault Systems, Inc. Seamless virtual machine recall in a data storage system
US9459968B2 (en) 2013-03-11 2016-10-04 Commvault Systems, Inc. Single index to query multiple backup formats
US9483655B2 (en) 2013-03-12 2016-11-01 Commvault Systems, Inc. File backup with selective encryption
US20150074536A1 (en) 2013-09-12 2015-03-12 Commvault Systems, Inc. File manager integration with virtualization in an information management system, including user control and storage management of virtual machines
US10949382B2 (en) 2014-01-15 2021-03-16 Commvault Systems, Inc. User-centric interfaces for information management systems
US9632874B2 (en) 2014-01-24 2017-04-25 Commvault Systems, Inc. Database application backup in single snapshot for multiple applications
US9495251B2 (en) 2014-01-24 2016-11-15 Commvault Systems, Inc. Snapshot readiness checking and reporting
US9753812B2 (en) 2014-01-24 2017-09-05 Commvault Systems, Inc. Generating mapping information for single snapshot for multiple applications
US9639426B2 (en) 2014-01-24 2017-05-02 Commvault Systems, Inc. Single snapshot for multiple applications
US10324897B2 (en) 2014-01-27 2019-06-18 Commvault Systems, Inc. Techniques for serving archived electronic mail
US10169121B2 (en) 2014-02-27 2019-01-01 Commvault Systems, Inc. Work flow management for an information management system
US9648100B2 (en) 2014-03-05 2017-05-09 Commvault Systems, Inc. Cross-system storage management for transferring data across autonomous information management systems
US10380072B2 (en) 2014-03-17 2019-08-13 Commvault Systems, Inc. Managing deletions from a deduplication database
US9633056B2 (en) 2014-03-17 2017-04-25 Commvault Systems, Inc. Maintaining a deduplication database
US9811427B2 (en) 2014-04-02 2017-11-07 Commvault Systems, Inc. Information management by a media agent in the absence of communications with a storage manager
US9823978B2 (en) 2014-04-16 2017-11-21 Commvault Systems, Inc. User-level quota management of data objects stored in information management systems
US9740574B2 (en) 2014-05-09 2017-08-22 Commvault Systems, Inc. Load balancing across multiple data paths
US9848045B2 (en) 2014-05-27 2017-12-19 Commvault Systems, Inc. Offline messaging between a repository storage operation cell and remote storage operation cells via an intermediary media agent
US9760446B2 (en) 2014-06-11 2017-09-12 Micron Technology, Inc. Conveying value of implementing an integrated data management and protection system
US20160019317A1 (en) 2014-07-16 2016-01-21 Commvault Systems, Inc. Volume or virtual machine level backup and generating placeholders for virtual machine files
US9852026B2 (en) 2014-08-06 2017-12-26 Commvault Systems, Inc. Efficient application recovery in an information management system based on a pseudo-storage-device driver
US11249858B2 (en) 2014-08-06 2022-02-15 Commvault Systems, Inc. Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host
US10042716B2 (en) 2014-09-03 2018-08-07 Commvault Systems, Inc. Consolidated processing of storage-array commands using a forwarder media agent in conjunction with a snapshot-control media agent
US9774672B2 (en) 2014-09-03 2017-09-26 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US9405928B2 (en) 2014-09-17 2016-08-02 Commvault Systems, Inc. Deriving encryption rules based on file content
US9710465B2 (en) 2014-09-22 2017-07-18 Commvault Systems, Inc. Efficiently restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations
US9417968B2 (en) 2014-09-22 2016-08-16 Commvault Systems, Inc. Efficiently restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations
US9436555B2 (en) 2014-09-22 2016-09-06 Commvault Systems, Inc. Efficient live-mount of a backed up virtual machine in a storage management system
US9444811B2 (en) 2014-10-21 2016-09-13 Commvault Systems, Inc. Using an enhanced data agent to restore backed up data across autonomous storage management systems
US9575673B2 (en) 2014-10-29 2017-02-21 Commvault Systems, Inc. Accessing a file system using tiered deduplication
US10776209B2 (en) 2014-11-10 2020-09-15 Commvault Systems, Inc. Cross-platform virtual machine backup and replication
US9648105B2 (en) 2014-11-14 2017-05-09 Commvault Systems, Inc. Unified snapshot storage management, using an enhanced storage manager and enhanced media agents
US9448731B2 (en) 2014-11-14 2016-09-20 Commvault Systems, Inc. Unified snapshot storage management
US20160142485A1 (en) 2014-11-19 2016-05-19 Commvault Systems, Inc. Migration to cloud storage from backup
US9983936B2 (en) 2014-11-20 2018-05-29 Commvault Systems, Inc. Virtual machine change block tracking
US9898213B2 (en) 2015-01-23 2018-02-20 Commvault Systems, Inc. Scalable auxiliary copy processing using media agent resources
US9904481B2 (en) 2015-01-23 2018-02-27 Commvault Systems, Inc. Scalable auxiliary copy processing in a storage management system using media agent resources
US10313243B2 (en) 2015-02-24 2019-06-04 Commvault Systems, Inc. Intelligent local management of data stream throttling in secondary-copy operations
US10956299B2 (en) 2015-02-27 2021-03-23 Commvault Systems, Inc. Diagnosing errors in data storage and archiving in a cloud or networking environment
US9940234B2 (en) * 2015-03-26 2018-04-10 Pure Storage, Inc. Aggressive data deduplication using lazy garbage collection
US9928144B2 (en) 2015-03-30 2018-03-27 Commvault Systems, Inc. Storage management of data using an open-archive architecture, including streamlined access to primary data originally stored on network-attached storage and archived to secondary storage
US10339106B2 (en) 2015-04-09 2019-07-02 Commvault Systems, Inc. Highly reusable deduplication database after disaster recovery
US10311150B2 (en) 2015-04-10 2019-06-04 Commvault Systems, Inc. Using a Unix-based file system to manage and serve clones to windows-based computing clients
US10324914B2 (en) 2015-05-20 2019-06-18 Commvalut Systems, Inc. Handling user queries against production and archive storage systems, such as for enterprise customers having large and/or numerous files
US20160350391A1 (en) 2015-05-26 2016-12-01 Commvault Systems, Inc. Replication using deduplicated secondary copy data
US9563514B2 (en) 2015-06-19 2017-02-07 Commvault Systems, Inc. Assignment of proxies for virtual-machine secondary copy operations including streaming backup jobs
US10084873B2 (en) 2015-06-19 2018-09-25 Commvault Systems, Inc. Assignment of data agent proxies for executing virtual-machine secondary copy operations including streaming backup jobs
US10275320B2 (en) 2015-06-26 2019-04-30 Commvault Systems, Inc. Incrementally accumulating in-process performance data and hierarchical reporting thereof for a data stream in a secondary copy operation
US9766825B2 (en) 2015-07-22 2017-09-19 Commvault Systems, Inc. Browse and restore for block-level backups
US10101913B2 (en) 2015-09-02 2018-10-16 Commvault Systems, Inc. Migrating data to disk without interrupting running backup operations
US10248494B2 (en) 2015-10-29 2019-04-02 Commvault Systems, Inc. Monitoring, diagnosing, and repairing a management database in a data storage management system
US20170192868A1 (en) 2015-12-30 2017-07-06 Commvault Systems, Inc. User interface for identifying a location of a failed secondary storage device
US10565067B2 (en) 2016-03-09 2020-02-18 Commvault Systems, Inc. Virtual server cloud file system for virtual machine backup from cloud operations
US10296368B2 (en) 2016-03-09 2019-05-21 Commvault Systems, Inc. Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount)
US10503753B2 (en) 2016-03-10 2019-12-10 Commvault Systems, Inc. Snapshot replication operations based on incremental block change tracking
US10417102B2 (en) 2016-09-30 2019-09-17 Commvault Systems, Inc. Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including virtual machine distribution logic
US10540516B2 (en) 2016-10-13 2020-01-21 Commvault Systems, Inc. Data protection within an unsecured storage environment
US10162528B2 (en) 2016-10-25 2018-12-25 Commvault Systems, Inc. Targeted snapshot based on virtual machine location
US10152251B2 (en) 2016-10-25 2018-12-11 Commvault Systems, Inc. Targeted backup of virtual machine
US10922189B2 (en) 2016-11-02 2021-02-16 Commvault Systems, Inc. Historical network data-based scanning thread generation
US10389810B2 (en) 2016-11-02 2019-08-20 Commvault Systems, Inc. Multi-threaded scanning of distributed file systems
US10678758B2 (en) 2016-11-21 2020-06-09 Commvault Systems, Inc. Cross-platform virtual machine data and memory backup and replication
US10838821B2 (en) 2017-02-08 2020-11-17 Commvault Systems, Inc. Migrating content and metadata from a backup system
US10740193B2 (en) 2017-02-27 2020-08-11 Commvault Systems, Inc. Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount
US10459666B2 (en) 2017-03-03 2019-10-29 Commvault Systems, Inc. Using storage managers in respective data storage management systems for license distribution, compliance, and updates
US11032350B2 (en) 2017-03-15 2021-06-08 Commvault Systems, Inc. Remote commands framework to control clients
US10949308B2 (en) 2017-03-15 2021-03-16 Commvault Systems, Inc. Application aware backup of virtual machines
US10474542B2 (en) 2017-03-24 2019-11-12 Commvault Systems, Inc. Time-based virtual machine reversion
US10891069B2 (en) 2017-03-27 2021-01-12 Commvault Systems, Inc. Creating local copies of data stored in online data repositories
US11108858B2 (en) 2017-03-28 2021-08-31 Commvault Systems, Inc. Archiving mail servers via a simple mail transfer protocol (SMTP) server
US10776329B2 (en) 2017-03-28 2020-09-15 Commvault Systems, Inc. Migration of a database management system to cloud storage
US10387073B2 (en) 2017-03-29 2019-08-20 Commvault Systems, Inc. External dynamic virtual machine synchronization
US11074138B2 (en) 2017-03-29 2021-07-27 Commvault Systems, Inc. Multi-streaming backup operations for mailboxes
US11074140B2 (en) 2017-03-29 2021-07-27 Commvault Systems, Inc. Live browsing of granular mailbox data
US11221939B2 (en) 2017-03-31 2022-01-11 Commvault Systems, Inc. Managing data from internet of things devices in a vehicle
US10552294B2 (en) 2017-03-31 2020-02-04 Commvault Systems, Inc. Management of internet of things devices
US10853195B2 (en) 2017-03-31 2020-12-01 Commvault Systems, Inc. Granular restoration of virtual machine application data
US11294786B2 (en) 2017-03-31 2022-04-05 Commvault Systems, Inc. Management of internet of things devices
US11010261B2 (en) 2017-03-31 2021-05-18 Commvault Systems, Inc. Dynamically allocating streams during restoration of data
TWI628542B (zh) * 2017-04-21 2018-07-01 慧榮科技股份有限公司 快閃記憶體的垃圾回收斷電回復方法以及使用該方法的裝置
US10984041B2 (en) 2017-05-11 2021-04-20 Commvault Systems, Inc. Natural language processing integrated with database and data storage management
US10664352B2 (en) 2017-06-14 2020-05-26 Commvault Systems, Inc. Live browsing of backed up data residing on cloned disks
US10742735B2 (en) 2017-12-12 2020-08-11 Commvault Systems, Inc. Enhanced network attached storage (NAS) services interfacing to cloud storage
US10831591B2 (en) 2018-01-11 2020-11-10 Commvault Systems, Inc. Remedial action based on maintaining process awareness in data storage management
US10795927B2 (en) 2018-02-05 2020-10-06 Commvault Systems, Inc. On-demand metadata extraction of clinical image data
US10642886B2 (en) 2018-02-14 2020-05-05 Commvault Systems, Inc. Targeted search of backup data using facial recognition
US10740022B2 (en) 2018-02-14 2020-08-11 Commvault Systems, Inc. Block-level live browsing and private writable backup copies using an ISCSI server
US20190251204A1 (en) 2018-02-14 2019-08-15 Commvault Systems, Inc. Targeted search of backup data using calendar event data
US10877928B2 (en) 2018-03-07 2020-12-29 Commvault Systems, Inc. Using utilities injected into cloud-based virtual machines for speeding up virtual machine backup operations
US10761942B2 (en) 2018-03-12 2020-09-01 Commvault Systems, Inc. Recovery point objective (RPO) driven backup scheduling in a data storage management system using an enhanced data agent
US10789387B2 (en) 2018-03-13 2020-09-29 Commvault Systems, Inc. Graphical representation of an information management system
KR102578191B1 (ko) * 2018-04-09 2023-09-14 에스케이하이닉스 주식회사 리커버리 성능이 최적화된 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템
US10891198B2 (en) 2018-07-30 2021-01-12 Commvault Systems, Inc. Storing data to cloud libraries in cloud native formats
US11159469B2 (en) 2018-09-12 2021-10-26 Commvault Systems, Inc. Using machine learning to modify presentation of mailbox objects
US11010258B2 (en) 2018-11-27 2021-05-18 Commvault Systems, Inc. Generating backup copies through interoperability between components of a data storage management system and appliances for data storage and deduplication
US11200124B2 (en) 2018-12-06 2021-12-14 Commvault Systems, Inc. Assigning backup resources based on failover of partnered data storage servers in a data storage management system
US10860443B2 (en) 2018-12-10 2020-12-08 Commvault Systems, Inc. Evaluation and reporting of recovery readiness in a data storage management system
US20200192572A1 (en) 2018-12-14 2020-06-18 Commvault Systems, Inc. Disk usage growth prediction system
US11698727B2 (en) 2018-12-14 2023-07-11 Commvault Systems, Inc. Performing secondary copy operations based on deduplication performance
US10996974B2 (en) 2019-01-30 2021-05-04 Commvault Systems, Inc. Cross-hypervisor live mount of backed up virtual machine data, including management of cache storage for virtual machine data
US10768971B2 (en) 2019-01-30 2020-09-08 Commvault Systems, Inc. Cross-hypervisor live mount of backed up virtual machine data
US20200327017A1 (en) 2019-04-10 2020-10-15 Commvault Systems, Inc. Restore using deduplicated secondary copy data
US11494273B2 (en) 2019-04-30 2022-11-08 Commvault Systems, Inc. Holistically protecting serverless applications across one or more cloud computing environments
US11463264B2 (en) 2019-05-08 2022-10-04 Commvault Systems, Inc. Use of data block signatures for monitoring in an information management system
US11461184B2 (en) 2019-06-17 2022-10-04 Commvault Systems, Inc. Data storage management system for protecting cloud-based data including on-demand protection, recovery, and migration of databases-as-a-service and/or serverless database management systems
US11308034B2 (en) 2019-06-27 2022-04-19 Commvault Systems, Inc. Continuously run log backup with minimal configuration and resource usage from the source machine
US20210011816A1 (en) 2019-07-10 2021-01-14 Commvault Systems, Inc. Preparing containerized applications for backup using a backup services container in a container-orchestration pod
US11042318B2 (en) 2019-07-29 2021-06-22 Commvault Systems, Inc. Block-level data replication
US20210173811A1 (en) 2019-12-04 2021-06-10 Commvault Systems, Inc. Optimizing the restoration of deduplicated data stored in multi-node replicated file systems
US11467753B2 (en) 2020-02-14 2022-10-11 Commvault Systems, Inc. On-demand restore of virtual machine data
US11321188B2 (en) 2020-03-02 2022-05-03 Commvault Systems, Inc. Platform-agnostic containerized application data protection
US11422900B2 (en) 2020-03-02 2022-08-23 Commvault Systems, Inc. Platform-agnostic containerized application data protection
US11442768B2 (en) 2020-03-12 2022-09-13 Commvault Systems, Inc. Cross-hypervisor live recovery of virtual machines
US11099956B1 (en) 2020-03-26 2021-08-24 Commvault Systems, Inc. Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations
US20230161740A1 (en) * 2020-04-08 2023-05-25 Ncipher Security Limited A device, a method of performing a file transaction, and a method of performing an access operation
US11748143B2 (en) 2020-05-15 2023-09-05 Commvault Systems, Inc. Live mount of virtual machines in a public cloud computing environment
US11687424B2 (en) 2020-05-28 2023-06-27 Commvault Systems, Inc. Automated media agent state management
US11494417B2 (en) 2020-08-07 2022-11-08 Commvault Systems, Inc. Automated email classification in an information management system
US11314687B2 (en) 2020-09-24 2022-04-26 Commvault Systems, Inc. Container data mover for migrating data between distributed data storage systems integrated with application orchestrators
US11656951B2 (en) 2020-10-28 2023-05-23 Commvault Systems, Inc. Data loss vulnerability detection
US11604706B2 (en) 2021-02-02 2023-03-14 Commvault Systems, Inc. Back up and restore related data on different cloud storage tiers
US11593223B1 (en) 2021-09-02 2023-02-28 Commvault Systems, Inc. Using resource pool administrative entities in a data storage management system to provide shared infrastructure to tenants
US11809285B2 (en) 2022-02-09 2023-11-07 Commvault Systems, Inc. Protecting a management database of a data storage management system to meet a recovery point objective (RPO)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61194540A (ja) * 1985-02-22 1986-08-28 Nec Corp スト−ル検出方式
US4989134A (en) * 1987-03-20 1991-01-29 Hewlett-Packard Company Method and apparatus for enhancing data storage efficiency
US5317752A (en) * 1989-12-22 1994-05-31 Tandem Computers Incorporated Fault-tolerant computer system with auto-restart after power-fall
GB2251323B (en) * 1990-12-31 1994-10-12 Intel Corp Disk emulation for a non-volatile semiconductor memory
US5355483A (en) * 1991-07-18 1994-10-11 Next Computers Asynchronous garbage collection
US5485613A (en) * 1991-08-27 1996-01-16 At&T Corp. Method for automatic memory reclamation for object-oriented systems with real-time constraints
US5218698A (en) * 1991-11-22 1993-06-08 Aerojet-General Corporation Garbage collection system for a symbolic digital processor
JP3171901B2 (ja) * 1992-02-05 2001-06-04 セイコーインスツルメンツ株式会社 不揮発性メモリカードの書換え方法
US5485595A (en) * 1993-03-26 1996-01-16 Cirrus Logic, Inc. Flash memory mass storage architecture incorporating wear leveling technique without using cam cells
GB9307623D0 (en) * 1993-04-13 1993-06-02 Jonhig Ltd Data writing to eeprom

Also Published As

Publication number Publication date
EP0745934A2 (en) 1996-12-04
EP0745934A3 (en) 1999-02-24
US5559957A (en) 1996-09-24

Similar Documents

Publication Publication Date Title
JPH08328917A (ja) 書き込み/置換操作のための停電回復機構を有する、データ記憶装置のためのファイル・システム
US5086502A (en) Method of operating a data processing system
US8005797B1 (en) File-level continuous data protection with access to previous versions
JP3878412B2 (ja) データを保存し使用し及び回復する方法
US5684991A (en) Modification metadata set, abstracted from database write requests
EP0786111B1 (en) Snapshot of data stored on a mass storage system
US8296264B1 (en) Method and system for file-level continuous data protection
JP4363676B2 (ja) コンピュータシステム
US6738863B2 (en) Method for rebuilding meta-data in a data storage system and a data storage system
US5742818A (en) Method and system of converting data from a source file system to a target file system
EP1686482B1 (en) File recording device
US6272611B1 (en) Computer data storage medium having a virtual disk drive and memory management method therefor
JP2004152301A (ja) 不揮発性メモリシステムにおいて用いられる電力管理ブロック
KR20040052464A (ko) 강건화된 블록 디바이스 드라이버
KR19980014589A (ko) 화일시스템의 정보 복구방법
JP2001051889A (ja) 不揮発性半導体記憶装置を用いたファイルシステム
JPH08328754A (ja) ボリューム回復の間に多重ボリューム・データ・セットを回復する方法
AU633775B2 (en) A method of operating a data processing system
EP0745939A2 (en) Re-entrant garbage collection process for a flash memory resident file system
JP3797864B2 (ja) オペレーティングシステムとの関連でデータを回復および再生する方法、ソフトウェア、および装置
JP2970589B2 (ja) 大規模メモリを用いた高速システム起動方式
JP2004157958A (ja) 計算機システムおよびファイル管理方法
JP2005506632A (ja) 大容量記憶装置用セキュリティ装置
JP3043662B2 (ja) データバックアップ方式
JP2005222531A (ja) データ記録装置及びデータ記録方法

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20030805