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