JP5420814B2 - バッファメモリに貯蔵されたデータを無効化させるスキームを有する貯蔵システム及びそれを含んだコンピューティングシステム - Google Patents

バッファメモリに貯蔵されたデータを無効化させるスキームを有する貯蔵システム及びそれを含んだコンピューティングシステム Download PDF

Info

Publication number
JP5420814B2
JP5420814B2 JP2005365508A JP2005365508A JP5420814B2 JP 5420814 B2 JP5420814 B2 JP 5420814B2 JP 2005365508 A JP2005365508 A JP 2005365508A JP 2005365508 A JP2005365508 A JP 2005365508A JP 5420814 B2 JP5420814 B2 JP 5420814B2
Authority
JP
Japan
Prior art keywords
data
memory
buffer memory
response
nonvolatile
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2005365508A
Other languages
English (en)
Other versions
JP2006178983A (ja
Inventor
贊▲益▼ 朴
相烈 閔
泰聖 鄭
鉉鎬 鞠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2006178983A publication Critical patent/JP2006178983A/ja
Application granted granted Critical
Publication of JP5420814B2 publication Critical patent/JP5420814B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Description

本発明はコンピューティングシステムに係り、さらに具体的にはバッファメモリに貯蔵されたデータを無効化させることができる貯蔵システムを有するコンピューティングシステムに関する。
図1は一般的なコンピューティングシステムを概略的に示すブロック図である。図1を参照すると、コンピューティングシステムはホスト(またはホストシステム)10及び貯蔵装置20含む。ホスト10には、図示しないが、中央処理装置及びメインメモリが提供されるであろう。貯蔵装置20はSCSI、 ESDI、またはIDEインターフェースのような標準インターフェース(standardized interface)によってホスト10に連結される。貯蔵装置20は貯蔵媒体(例えば、ハードディスクまたはフラッシュメモリ)22、バッファメモリ24、及びコントローラ26で構成される。コントローラ26は周知のインターフェースメカニズムを通じて貯蔵媒体22及びバッファメモリ24に連結されている。バッファメモリ24はSRAMまたはDRAMのようなメモリで構成され、ホスト10の貯蔵装置20に対する書き込み性能を高めるために使用される。
図2は図1に示したコンピューティングシステムのファイル処理過程を概略的に示す図である。ホスト10のような上位レベルで応用プログラムが実行されるとき、応用プログラムによって生成されたファイルはファイルシステム(例えば、FAT file system)によって管理される。応用プログラムによって生成されたファイルにデータが書き込まれれば、ホスト10にある中央処理装置の制御によってファイルに書き込まれた新しいデータは必要によって貯蔵装置20のような下位レベルに伝送される。伝送されたデータは貯蔵装置20のバッファメモリ24に一時貯蔵される。また、ホスト10によって要請されたファイルのデータはバッファメモリ24を通じて、または直接貯蔵媒体22からホスト10のメインメモリへ伝送される。ホスト10によって要請されたファイルのデータがバッファメモリ24を通じて貯蔵媒体22からホスト10のメインメモリへ伝送される場合、ホスト10によって要請されたファイルのデータはバッファメモリ24に一時貯蔵されることもできる。
バッファメモリ24の容量が、周知のように、貯蔵媒体22に比べて小さくて、ホスト10から伝達されるすべてのデータをバッファメモリ24に貯蔵することは不可能である。これによって、バッファメモリ24に一時貯蔵されたデータはコントローラ26の制御に応じてある時点で、貯蔵媒体22に移動される。貯蔵媒体22へのデータ移動は、一般的に、ホスト10の介入なしにコントローラ26によって自動的に実行される。例えば、バッファメモリ24に一時貯蔵されたデータは新しいデータ書き込み要請によってバッファメモリ24の空き空間が不足するとき、またはホストから要請がないときに発生するコントローラ26の遊休時間を利用してホスト10の介入なしにコントローラ26の制御に応じて貯蔵媒体22に自動的に移動される。
ホスト10の介入なしにコントローラ26によって貯蔵媒体22への書き込み動作(または複写動作)が制御されるスキームを有するコンピューティングシステムは次のような問題点を有する。ホスト10の応用プログラムによって処理されるファイルのデータが上位レベルで削除された場合、ファイルシステムによってデータファイルは削除されたファイルとして処理される。たとえ上位レベルのホスト10でデータファイルが削除されても、削除されたファイルのデータはバッファメモリ24に貯蔵されうる。バッファメモリ24に一時貯蔵されたファイルデータは新しいデータ書き込み要請によってバッファメモリ24の空き空間が不足するとき、またはホストから要請がないときに発生するコントローラ26の遊休時間を利用してホスト10の介入なしにコントローラ26の制御によって貯蔵媒体22に貯蔵される。すなわち、バッファメモリ24に一時貯蔵されたデータは上位レベルで削除されたファイルの有効ではないデータにもかかわらず、コントローラ26がバッファメモリ24に貯蔵されたデータの有効性を判断することができずに、バッファメモリ24に貯蔵された有効ではないデータは不要に貯蔵媒体22に書き込まれる。これは貯蔵装置20の書き込み性能の低下だけではなく、貯蔵装置20の寿命を短縮させる。また、不要な書き込み動作に応じて不要に電力が消耗する可能性がある。
本発明の目的はバッファメモリに貯蔵されたデータを無効化させることができる貯蔵システム及びそれを含んだコンピューティングシステムを提供することにある。
本発明の他の目的は、バッファメモリに貯蔵されたデータの不要な書き込み動作を防止することができる貯蔵システム及びそれを含んだコンピューティングシステムを提供することにある。
本発明のまた他の目的は上位レベルで提供されるバッファメモリに貯蔵されたデータの有効/無効情報を参照してバッファメモリの無効データの書き込み動作を制御することができる貯蔵システム及びそれを含んだコンピューティングシステムを提供することにある。
本発明の一特徴によると、貯蔵システムはデータを貯蔵するように構成された貯蔵媒体と、前記貯蔵媒体に書き込まれるデータをバッファリングするように構成されたバッファメモリと、外部から入力された無効化インジケータに応答して前記貯蔵媒体に前記バッファリングされたデータを選択的に伝達するように構成された制御器とを含む。例えば、前記無効化インジケータは外部から提供されるアンライト情報すなわち、選択されたバッファリングされたデータが削除されたファイルデータに対応することを示す情報を含む。
実施形態において、前記制御器は前記無効化インジケータに応答して選択されたバッファリングされたデータを無効化するように構成される。具体的に、前記制御器は前記無効化インジケータに応答して前記無効化されたバッファリングされたデータの無効化を示す書き込み状態情報を貯蔵して、前記貯蔵された書き込み状態情報に応答して前記バッファメモリから前記貯蔵媒体への前記無効化されたバッファリングされたデータの伝送を防止するように構成される。
本発明の他の実施形態において、前記制御器は前記バッファメモリ内の貯蔵限界そして/または前記貯蔵媒体の遊休状態に応答して複写動作をトリガするように構成される。前記複写動作は前記バッファメモリから前記貯蔵媒体への前記無効化されたバッファリングされたデータ伝送を無視する間、前記バッファメモリから前記貯蔵媒体へ有効なバッファリングされたデータを伝達することを含む。他の実施形態において、前記制御器は前記無効化されたバッファリングされたデータの無効化に応答して前記無効化されたバッファリングされたデータによって占有される前記バッファメモリ内の貯蔵空間が再使用可能にするように構成される。
本発明の他の特徴によると、コンピューティングシステムはデータを貯蔵するように構成された貯蔵媒体と、前記貯蔵媒体に書き込まれるデータをバッファリングするように構成されたバッファメモリと、無効化インジケータに応答して前記貯蔵媒体へ前記バッファリングされたデータを選択的に伝達するように構成された制御器を含んだ貯蔵システムと、前記バッファメモリへデータを伝送して、データ修正動作に応答して前記貯蔵システムへ前記無効化インジケータを提供するホストとを含む。前記無効化インジケータは、例えば、ホストでファイルデータの削除に応答して生成されたアンライト命令を含む。
本発明のまた他の特徴によると、貯蔵媒体と、前記貯蔵媒体に書き込まれるデータを貯蔵するように構成されたバッファメモリを含んだ貯蔵システムの動作方法が提供される。
外部から前記バッファメモリに貯蔵されるデータと係わる無効化インジケータが入力される。前記入力された無効化インジケータに応答して前記バッファメモリに貯蔵されたデータが前記貯蔵媒体へ選択的に伝送される。
本発明のまた他の特徴によると、貯蔵媒体内のデータ貯蔵を制御するシステムは前記貯蔵媒体に書き込まれるデータをバッファリングするように構成されたバッファメモリと、外部から入力された無効化インジケータに応答して前記貯蔵媒体へ前記バッファリングされたデータを選択的に伝達するように構成された制御器とを含む。
バッファメモリに貯蔵された無効データが貯蔵媒体に複写されることを防止することによって、貯蔵システムの書き込み性能が向上して、不要な複写動作による貯蔵媒体の寿命が短縮されることを防止することができ、不要な複写動作による電力消耗を減らすことができる。
本発明の例示的な実施形態が参照の図に基づいて以下詳細に説明される。本明細書において、貯蔵システムのバッファメモリから貯蔵媒体へデータが移されることを無効化させるために貯蔵システムの外部から入力される命令/情報は“アンライト(unwrite)命令(または情報や要請)であると称する。また、貯蔵システムのバッファメモリから貯蔵媒体へデータが移される動作は”複写(transcribe) 動作“または”フラッシング(flushing) 動作“と呼ばれ、望ましくは”複写動作“と称する。
図3は本発明によるコンピューティングシステムを概略的に示すブロック図である。図3を参照すると、本発明によるコンピューティングシステム1000はホストシステム100と貯蔵システム(または貯蔵装置200)とを含み、ホストシステム100と貯蔵システム200はUSB、SCSI、ESDI、またはIDEインターフェースのような標準インターフェース(standardized interface)によって連結される。しかし、ホストシステム100と貯蔵システム200とを連結するためのインターフェース方式がここに限らないことはこの分野の通常の知識を習得した者などに自明である。ホストシステム100は中央処理装置(図面では“CPU”として表記する)110とメモリ120とを含み、メモリ120の少なくとも一部分はホストシステム100のメインメモリを含む。または、メモリ200はホストシステム100のメインメモリを構成する。応用プログラム121及びファイルシステム122がメモリ120内に各々提供される。ファイルシステム122はファイル割り当てテーブル(file allocation table: FAT)ファイルシステムを含むすべてのファイルシステムを含む。しかし、ファイルシステムがここに限らないことはこの分野の通常的な知識を習得した者などに自明である。本発明によるホストシステム100の場合、応用プログラム121によって処理されるファイルのデータ全部が削除されるとき、または応用プログラム121によって処理されるファイルの一部データが削除されるとき、ホストシステム100の中央処理装置110は特定命令(以下、アンライト命令と称する)を貯蔵システム200に出力する。例示的な実施形態において、特定命令とともに削除されたデータを指定するためのアドレス情報及びデータの大きさの情報が貯蔵システム200に伝送されることができる。
周知のように、FATファイルシステムは、図2に示したように、マスタブートレコード(master boot record: MBR)、パーティションブートレコード(partition boot record: PBR)、第1及び第2ファイル割り当てテーブル(primary FAT、copy FAT)、及びルートディレクトリを含む。貯蔵システム200に貯蔵された/貯蔵されるファイルは二つの情報を使用して確認されることができる。その情報はファイルのファイル名とファイルが貯蔵された所に到逹するために通過するディレクトリツリーの経路である。一つのディレクトリで各エントリーは、例えば、32バイトの長さを有し、ファイル名、拡張子、ファイル属性バイト、最終的に変更された日付/時間、ファイルのサイズ、及び始動クラスタへの連結などのような情報を貯蔵している。
特に、ファイル名において、削除されたファイルを示すためのファイル名の最初の文字として一つの特殊のコードが使用される。例えば、ファイル名の初字に十六進数バイトコードであるE5hを位置させる。これは一つの特別なタグとして、‘このファイルは削除された’ということをシステムに知らせる。任意のファイルが削除されるとき、中央処理装置110は削除されたファイルのファイル名の初文字に一つの特殊なコードを位置させると同時に削除されたファイルに対応するアンライト命令(または削除されたファイルデータに対する無効情報)を貯蔵システム200に出力する。
続いて、図3を参照すると、貯蔵システム200は貯蔵媒体220、バッファメモリ240、及び制御装置260を含む。本発明による貯蔵システム200は、外部から無効情報(例えば、アンライト命令、貯蔵システムの上位レベルで削除されたファイルデータのアドレス情報、及び削除されたデータの大きさの情報を含み)が入力されるとき、バッファメモリ220のデータ(貯蔵システムの上位レベルで既に削除されたデータを示す)が貯蔵媒体260に書き込まれることを防止するように構成される。これは以後詳細に説明されるであろう。
貯蔵システム200の貯蔵媒体220はデータ(文書データ、映像データ、音楽データ、及びプログラムのような貯蔵可能なすべての形式のデータを含み)を貯蔵するためのものであって、マグネティックディスクまたはフラッシュメモリのような不揮発性半導体メモリで構成されることができる。しかし、貯蔵媒体220がここに開示されたことに制限されないことはこの分野の通常的な知識を習得した者などに自明である。
続いて、バッファメモリ240はホストシステム100と貯蔵媒体220との間の円滑なデータ伝送のために使用され、DRAMまたはSRAMのような高速揮発性メモリまたはMRAM、PRAM、FRAM(登録商標)、NAND型フラッシュメモリ、またはNOR型フラッシュメモリ装置のような不揮発性メモリで構成されることができる。
バッファメモリ240は書き込みバッファとして機能する。例えば、バッファメモリ240はホストシステム100の要請によって貯蔵媒体220に書き込まれるデータを一時貯蔵するための書き込みバッファとして機能する。また、書き込みバッファの機能は選択的に使用されることができる。例えば、場合によって、ホストシステム100から伝達されたデータは書き込みバッファすなわち、バッファメモリ240を経由せず、貯蔵媒体220に直接伝送されることができる。貯蔵装置200のこのような機能は書き込みバイパス機能(write bypass function)であると呼ばれる。または、バッファメモリ240は読み出しバッファとして機能する。例えば、バッファメモリ240はホストシステム100の要請によって貯蔵媒体220で読み出されたデータを一時貯蔵するための読み出しバッファとして機能する。図にはただ一つのバッファメモリが示されているが、二つまたはそれより多いバッファメモリが提供されてもよい。この場合、各バッファメモリは書き込みバッファ、読み出しバッファまたは二つの機能を全部有するバッファとして使用されうる。
本発明による制御装置260は貯蔵媒体220及びバッファメモリ240を制御するように構成される。ホストシステム100から読み出し命令が入力されるとき、制御装置260は貯蔵媒体220に貯蔵されたデータがホストシステム100に移動されるように貯蔵媒体220を制御する。または、ホストシステム100から読み出し命令が入力されるとき、制御装置260は貯蔵媒体220に貯蔵されたデータがバッファメモリ240を通じてホストシステム100に移動されるように貯蔵媒体220及びバッファメモリ240を制御する。ホストシステム100から書き込み命令が入力されるとき、制御装置260は書き込み命令と係わるデータがバッファメモリ240に一時貯蔵されるようにする。バッファメモリ240に一時貯蔵されたデータの全部または一部はバッファメモリ240の空き空間が不足するとき、または遊休時間(ホストから要請がないときに生ずる制御装置260の遊休時間)が生ずるとき、制御装置260の制御に応じて貯蔵媒体220に移される。以上の動作を実行するため、制御装置260は貯蔵媒体220とバッファメモリ240との間のアドレスマッピング情報(address mapping information)及びバッファメモリ240に貯蔵されたデータが有効の情報であるか否かを示す書き込み状態情報を貯蔵するためのマッピングテーブル261を含む。書き込み状態情報は外部から提供される無効情報によって更新され、これは以後詳細に説明される。制御装置260はマッピングテーブル261の書き込み状態情報に応じてバッファメモリ240に貯蔵されたデータの全部または一部が貯蔵媒体220に書き込まれるように貯蔵媒体220及びバッファメモリ240を制御し、これは以後詳細に説明される。
この実施形態において、貯蔵媒体220及びバッファメモリ240はフラッシュメモリのようなメモリで同様に構成されることができる。
以上の説明から分かるように、本発明による貯蔵システム200はバッファメモリ240の空き空間が不足するとき、または遊休時間(ホストから要請がないときに生ずる制御装置260の遊休時間)が生ずるとき、マッピングテーブル261の書き込み状態情報を参照してバッファメモリ240に貯蔵されたデータの全部または一部を貯蔵媒体220に移さない。すなわち、本発明による貯蔵システム200はバッファメモリ240に貯蔵されたデータが有効のデータであるか否か、または無効のデータであるか否かを示すアンライト情報(またはバッファメモリ240に貯蔵されたデータと係わる無効情報)を貯蔵システム200の外部(例えば、ホストシステム)から入力されて、入力された情報を参照してバッファメモリ240に貯蔵されたデータのうちの無効のデータが貯蔵媒体220に書き込まれることを防止する。言い替えれば、本発明による貯蔵システム200はバッファメモリ240に貯蔵されたデータに有効/無効情報のタグをつけて貯蔵媒体220へのデータ複写動作を選別的に制御する。したがって、貯蔵システム200の書き込み性能が向上して、不要な書き込み動作による貯蔵媒体220の寿命が短縮されることを防止することができるし、不要な書き込み動作による電力消耗を減らすことができる。
図4A及び図4Bは図3に示した制御装置260の例示的なマッピングテーブルを示す図である。図4A及び図4Bを参照すると、符号“BBN”はバッファメモリ240のブロック番号を示し、符号“DCN”は貯蔵媒体220のクラスタ番号を示し、符号“WSI”はバッファメモリ240に貯蔵されたデータが有効のデータであるか否かを示す書き込み状態情報を示す。説明の便宜上、バッファメモリ240のブロックの大きさが多数のセクタで構成されるクラスタの大きさと同様であると仮定する。しかし、貯蔵媒体220の割り当て単位(allocation unit)がここに開示されたものに限定されないことはこの分野の通常の知識を習得した者などに自明である。例えば、貯蔵媒体220の割り当て単位がマグネティックディスクのセクタとして、またはフラッシュメモリのページ、セクタ、またはブロックとして指定されることができることは、この分野の通常の知識を習得した者などに自明である。図4A及び図4Bにおいて、無効データは‘X’に表示されており、有効データは‘V’に表示されている。
図4Aに示したように、バッファメモリ240に3個のファイルFILE1、FILE2、FILE3と係わるデータが有効のデータとして貯蔵されていると仮定する。各データは貯蔵媒体220から読み出されたデータとしてホストシステム100によって更新され、貯蔵媒体220にまだ貯蔵されていないデータでありうる。または、ホストシステム100から伝達され、貯蔵媒体220にまだ貯蔵されていないデータでありうる。バッファメモリ240に貯蔵されたファイルデータFILE1、FILE2、FILE3は、上述のように、バッファメモリ240の空き空間が不足するとき、または遊休時間が生ずるときに制御装置260の制御に応じて貯蔵媒体220に移動される。制御装置260はホストシステム100から伝達される無効情報に応じて貯蔵されたファイルデータFILE1、FILE2、FILE3の書き込み状態情報を更新するように構成される。例えば、ファイルデータFILE2が貯蔵システム200の上位レベルとしてホストシステム100で削除されたという無効情報がホストシステム100から入力されれば、図4Bに示したように、制御装置260は無効データを示すようにファイルデータFILE2の書き込み状態情報を‘X’に表示する。また、制御装置260は無効データを示すように貯蔵媒体220に書き込まれたデータの書き込み状態情報を‘X'に表示する。
図5は本発明によるコンピューティングシステムにおいて、貯蔵システムに貯蔵されたデータを管理する方法を説明するためのフローチャートである。本発明による貯蔵システム200は、前に説明されたように、データを貯蔵する貯蔵媒体220と貯蔵媒体220に書き込まれるデータを一時貯蔵するバッファメモリ240を含み、この貯蔵システム200のデータ管理方法は、図5に示したように、アンライト情報が貯蔵システム200の外部から印加されたか否かを判別する段階(S100)と、アンライト情報が入力されるときに、バッファメモリ240に一時貯蔵されたデータの全部または一部を無効化させる段階(S120)を含む。以後、無効化されたデータは貯蔵媒体220に書き込まれない。
図6A乃至図6Cは本発明によるコンピューティングシステムに含まれた貯蔵システムのデータ管理動作を説明するための図である。以下、本発明による貯蔵システムのデータ管理動作が参照の図に基づいて以下詳細に説明される。
上述のように、貯蔵システム200の制御装置260はバッファメモリ240の空き空間を確保するために、または遊休時間を活用するためにマッピングテーブル261を参照してバッファメモリ240に貯蔵されているデータファイルを貯蔵媒体220に移しておく。図6Aに示したように、バッファメモリ240には3個のファイルデータFILE1−FILE3が有効のデータとして貯蔵されていると仮定する。特定時点で貯蔵システム200の制御装置260は貯蔵されたファイルデータFILE1−FILE3と係わるマッピングテーブル261の書き込み状態情報WSIを参照して、どんなデータが無効のデータであるか否かを判別する。図6Aに示したように、すべてのファイルデータFILE1−FILE3がマッピングテーブル261で有効のデータとして表示されているので、制御装置260は決められた方式に応じてファイルデータFILE1−FILE3が貯蔵媒体220の対応する空間に移されるように貯蔵媒体220及びバッファメモリ240を制御する。
もし貯蔵媒体220へのデータ複写動作の以前に貯蔵システム200の外部から無効情報(アンライト命令、無効なデータファイルのアドレス情報、及び無効なファイルデータの大きさ情報を含み)が入力されれば、貯蔵システム200の制御装置260は無効情報と係わるファイルデータ(例えば、FILE2)を無効化させる。すなわち、図6Bに示したように、ファイルデータFILE2と係わるマッピングテーブル261の書き込み状態情報WSIは無効データを示すように制御装置260の制御に応じて更新される。以後、特定時点で貯蔵システム200の制御装置260は貯蔵されたファイルデータFILE1−FILE3と係わるマッピングテーブル261の書き込み状態情報WSIを参照して、どんなデータファイルが無効のデータであるか否かを判別する。図6Bに示したように、ファイルデータFILE1、FILE3だけがマッピングテーブル261で有効のデータとして表示されているので、制御装置260は決められた方式に応じてファイルデータFILE1、FILE3が貯蔵媒体220の対応する空間に移されるように貯蔵媒体220及びバッファメモリ240を制御する。すなわち、制御装置260はファイルデータFILE2が貯蔵媒体220の対応する空間に移されることを防止する。無効ファイルデータとして処理されたバッファメモリ240の空間は以後行われる書き込み/読み出し動作のために使用されることができる。
他の例として、図6Cに示したように、ただ一つのファイルデータFILE1だけがバッファメモリ240に貯蔵されていると仮定する。もし貯蔵媒体220へのデータ複写動作の以前に貯蔵システム200の外部から無効情報が入力されれば、貯蔵システム200の制御装置260は入力された無効情報と係わるデータFILE1を無効化させる。 すなわち、図6Cに示したように、データFILE1と係わるマッピングテーブル261の書き込み状態情報WSIは無効データを示すように制御装置260の制御に応じて更新される。以後、特定時点で貯蔵システム200の制御装置260は貯蔵されたデータFILE1と係わるマッピングテーブル261の書き込み状態情報WSIを参照して貯蔵されたデータが無効のデータであるか否かを判別する。図6Cに示したように、マッピングテーブル261で有効のデータとして表示されているデータが存在しなくて、貯蔵システム200ではどんな複写動作も発生しない。特に、遊休状態での無効のデータの複写動作が防止されることができる。無効データとして処理されたバッファメモリ240の空間は以後行われる書き込み動作のために使用されることができる。
たとえ 無効データに表示されたデータが貯蔵媒体220に書き込まれても、貯蔵媒体220に貯蔵されたデータである無効データと係わるファイルはどんな影響も受けないことに注意しなければならない。さらに、無効処理されたデータは制御装置260の制御に応じて選択的に貯蔵媒体220に移されることができる。例えば、アンライト命令に応じてバッファメモリ240のデータが無効化されても、制御装置260は選択的に無効化されたデータの複写動作を実行するように構成されることができる。
本発明による貯蔵システム200はバッファメモリ240に貯蔵されたデータが無効のデータであるか否かを示す書き込み状態情報WSIを含むマッピングテーブルを参照して、バッファメモリ240に一時貯蔵されたデータを貯蔵媒体220に移す動作を制御する。上述のように、データの書き込み状態情報は貯蔵システム200の外部から提供されることによって、そのデータは貯蔵システム200の外部で生成されて伝達されたデータである。または、そのデータは貯蔵媒体220で読み出されて、貯蔵システム200の外部で変更された新しいデータでありうる。このような貯蔵システム200はコンピューティングシステムだけでなくデータを貯蔵しようとする装置(例えば、ハードディスクまたはフラッシュメモリを基盤にしたMP3プレーヤー、携帯用電子装置、またはそのようなもの)に適用されることができることはこの分野の通常の知識を習得した者などに自明である。
以上では、本発明による回路の構成及び動作を上述の説明及び図に応じて図示したが、これは例をあげて説明したことに過ぎず、添付の特許請求の範囲を逸脱しない範囲内で本発明の多様な変更及び変形が可能であることはもちろんである。
一般的な貯蔵システムを含んだコンピューティングシステムを概略的に示すブロック図である。 図1に示したコンピューティングシステムのファイル管理体系を説明するための図である。 本発明による貯蔵システムを含んだコンピューティングシステムを概略的に示すブロック図である。 図3に示した制御回路のマッピングテーブルを示す図である。 図3に示した制御回路のマッピングテーブルを示す図である。 本発明によるコンピューティングシステムの貯蔵システムに貯蔵されたデータを管理する方法を説明するためのフローチャートである。 本発明によるコンピューティングシステムの貯蔵システムでバッファメモリに貯蔵されたデータの有効情報による貯蔵媒体への書き込み動作を説明するための図である。 本発明によるコンピューティングシステムの貯蔵システムでバッファメモリに貯蔵されたデータの有効情報による貯蔵媒体への書き込み動作を説明するための図である。 本発明によるコンピューティングシステムの貯蔵システムでバッファメモリに貯蔵されたデータの有効情報による貯蔵媒体への書き込み動作を説明するための図である。
符号の説明
100 ホストシステム
110 中央処理装置
120 メインメモリ
200 貯蔵システム
220 貯蔵媒体
240 バッファメモリ
260 制御回路

Claims (33)

  1. データを貯蔵するように構成された不揮発性メモリと、
    インターフェースと、
    前記不揮発性メモリに前記インターフェースを介して書き込まれるデータをバッファリングするように構成されたバッファメモリと、
    前記バッファメモリに書き込まれたデータが有効なデータであるか否かの状態を格納するマッピングテーブルと、
    外部から入力された無効化インジケータに応答して前記不揮発性メモリに前記バッファリングされたデータを選択的に伝達する場合に、前記バッファメモリから前記不揮発性メモリへと自動的に前記データを書き込むように構成された制御器とを含み、
    前記インターフェースを介して受信された第一の指示に応答して、前記マッピングテーブルの第一データの有効状態が無効状態へと変更され、前記バッファメモリから前記不揮発性メモリへの前記第一データの自動的な書き込みを不可とし、
    前記無効化インジケータとは、バッファメモリから前記不揮発性メモリへデータが移されることを無効化させるために外部から入力される命令であり、
    上位のホストからの無効情報に従って、前記ホストと前記不揮発性メモリとの間の円滑なデータ伝送のために使用される前記バッファメモリに貯蔵されたデータに有効/無効情報のタグをつけて前記不揮発性メモリへのデータ複写動作を選別的に制御する
    ことを特徴とする貯蔵システム。
  2. 前記無効化インジケータはアンライト情報を含む
    ことを特徴とする請求項1に記載の貯蔵システム。
  3. アンライト情報は、削除するように任意選択されたバッファリングされたデータまたは削除されたファイルデータに対応する無効情報を示す
    ことを特徴とする請求項2に記載の貯蔵システム。
  4. 前記制御器は前記無効化インジケータに応答して選択されたバッファリングされたデータを無効化させるように構成された
    ことを特徴とする請求項1に記載の貯蔵システム。
  5. 前記制御器は前記無効化インジケータに応答して前記無効化されるべきバッファリングされたデータの無効化を示す書き込み状態情報を貯蔵して、前記貯蔵された書き込み状態情報に応答して前記バッファメモリから前記不揮発性メモリへの前記無効化されたバッファリングされたデータの伝送を防止するように構成される
    ことを特徴とする請求項4に記載の貯蔵システム。
  6. 前記制御器は前記バッファメモリ内の貯蔵限界そして/または前記不揮発性メモリの遊休状態に応答して複写動作をトリガするように構成され、
    前記複写動作は前記バッファメモリから前記不揮発性メモリへの前記無効化されたバッファリングされたデータ伝送を無視する間、前記バッファメモリから前記不揮発性メモリへ有効なバッファリングされたデータを伝達することを含む
    ことを特徴とする請求項5に記載の貯蔵システム。
  7. 前記制御器は前記無効化されるべきバッファリングされたデータの無効化に応答して前記無効化されるべきバッファリングされたデータの無効化によって占有される前記バッファメモリ内の貯蔵空間を再使用が可能にするように構成された
    ことを特徴とする請求項4に記載の貯蔵システム。
  8. 前記バッファメモリは不揮発性そして/または揮発性半導体メモリを含み、前記不揮発性メモリは不揮発性半導体メモリそして/または磁気不揮発性メモリを含む
    ことを特徴とする請求項1に記載の貯蔵システム。
  9. データを貯蔵するように構成された不揮発性メモリと、インターフェースと、前記不揮発性メモリに前記インターフェースを介して書き込まれるデータをバッファリングするように構成されたバッファメモリと、前記バッファメモリに書き込まれたデータが有効なデータであるか否かの状態を格納するマッピングテーブルと、無効化インジケータに応答して前記不揮発性メモリに前記バッファリングされたデータを選択的に伝達する場合に、前記バッファメモリから前記不揮発性メモリへと自動的に前記データを書き込むように構成された制御器を含んだ貯蔵システムと、
    前記バッファメモリにデータを伝送して、データ修正動作に応答して前記貯蔵システムに前記無効化インジケータを提供するホストとを含み、
    前記インターフェースを介して受信された第一の指示に応答して、前記マッピングテーブルの第一データの有効状態が無効状態へと変更され、前記バッファメモリから前記不揮発性メモリへの前記第一データの自動的な書き込みを不可とし、
    前記無効化インジケータとは、バッファメモリから前記不揮発性メモリへデータが移されることを無効化させるために外部から入力される命令であり、
    上位のホストからの無効情報に従って、前記ホストと前記不揮発性メモリとの間の円滑なデータ伝送のために使用される前記バッファメモリに貯蔵されたデータに有効/無効情報のタグをつけて前記不揮発性メモリへのデータ複写動作を選別的に制御する
    ことを特徴とするコンピューティングシステム。
  10. 前記無効化インジケータはアンライト命令を含む
    ことを特徴とする請求項9に記載のコンピューティングシステム。
  11. 前記ホストはファイルデータの削除に応答して前記アンライト命令を発生するように構成された
    ことを特徴とする請求項10に記載のコンピューティングシステム。
  12. 前記制御器は前記無効化インジケータに応答して選択されたバッファリングされたデータを無効化させるように構成された
    ことを特徴とする請求項9に記載のコンピュータシステム。
  13. 前記制御器は前記無効化インジケータに応答して前記無効化されるべきバッファリングされたデータの無効化を示す書き込み状態情報を貯蔵して、前記貯蔵された書き込み状態情報に応答して前記バッファメモリから前記不揮発性メモリへの前記無効化されたバッファリングされたデータの伝送を防止するように構成される
    ことを特徴とする請求項12に記載のコンピューティングシステム。
  14. 前記制御器は前記バッファメモリ内の貯蔵限界そして/または前記不揮発性メモリの遊休状態に応答して複写動作をトリガするように構成され、
    前記複写動作は前記バッファメモリから前記不揮発性メモリへの前記無効化されたバッファリングされたデータ伝送を無視する間、前記バッファメモリから前記不揮発性メモリへ有効なバッファリングされたデータを伝達することを含む
    ことを特徴とする請求項13に記載のコンピューティングシステム。
  15. 前記制御器は前記無効化されるべきバッファリングされたデータの無効化に応答して前記無効化されたバッファリングされたデータによって占有される前記バッファメモリ内の貯蔵空間を再使用が可能にするように構成された
    ことを特徴とする請求項12に記載のコンピューティングシステム。
  16. 前記バッファメモリは不揮発性そして/または揮発性半導体メモリを含み、前記不揮発性メモリは不揮発性半導体メモリそして/または磁気不揮発性メモリを含む
    ことを特徴とする請求項9に記載のコンピューティングシステム。
  17. 不揮発性メモリと、インターフェースと、前記インターフェースを介して前記不揮発性メモリに書き込まれるデータを貯蔵するように構成されたバッファメモリと、前記バッファメモリに書き込まれたデータが有効なデータであるか否かの状態を格納するマッピングテーブルと、を含んだ貯蔵システムの動作方法において、
    外部から前記バッファメモリに貯蔵されるデータと係わる無効化インジケータが入力される段階と、
    前記入力された無効化インジケータに応答して前記バッファメモリに貯蔵されたデータを前記不揮発性メモリに選択的に伝送する場合に前記バッファメモリから前記不揮発性メモリへと自動的に前記データを書き込む段階とを含み、
    前記インターフェースを介して受信された第一の指示に応答して、前記マッピングテーブルの第一データの有効状態が無効状態へと変更され、前記バッファメモリから前記不揮発性メモリへの前記第一データの自動的な書き込みを不可とし、
    前記無効化インジケータとは、バッファメモリから前記不揮発性メモリへデータが移されることを無効化させるために外部から入力される命令であり、
    上位のホストからの無効情報に従って、前記ホストと前記不揮発性メモリとの間の円滑なデータ伝送のために使用される前記バッファメモリに貯蔵されたデータに有効/無効情報のタグをつけて前記不揮発性メモリへのデータ複写動作を選別的に制御する
    ことを特徴とする動作方法。
  18. 前記無効化インジケータはアンライト情報を含む
    ことを特徴とする請求項17に記載の動作方法。
  19. アンライト情報は、削除するように任意選択されたバッファリングされたデータまたは削除されたファイルデータに対応する無効情報を示す
    ことを特徴とする請求項18に記載の動作方法。
  20. 前記入力された無効化インジケータに応答して前記バッファメモリに貯蔵されたデータを前記不揮発性メモリに選択的に送る段階は、
    前記無効化インジケータに応答して前記バッファメモリに貯蔵された選択されたデータを無効化させる段階と、
    前記バッファメモリから前記不揮発性メモリへの前記無効化されたデータ伝送を禁止する段階とを含む
    ことを特徴とする請求項17に記載の動作方法。
  21. 前記無効化インジケータに応答して前記バッファメモリに貯蔵された選択されたデータを無効化させる段階は前記無効化インジケータに応答して前記無効化されたデータの無効化を示す書き込み状態情報を貯蔵する段階を含み、
    前記バッファメモリから前記不揮発性メモリへの前記無効化されたデータ伝送を禁止する段階は前記貯蔵された書き込み状態情報に応答して前記バッファメモリから前記不揮発性メモリへのデータ伝送を禁止する段階とを含む
    ことを特徴とする請求項20に記載の動作方法。
  22. 前記バッファメモリ内の貯蔵限界そして/または前記不揮発性メモリの遊休状態に応答して複写動作を実行する段階をさらに含み、
    前記複写動作は前記バッファメモリから前記不揮発性メモリへの前記無効化されたバッファリングされたデータ伝送を無視する間、前記バッファメモリから前記不揮発性メモリへ有効なデータを伝達する段階を含む
    ことを特徴とする請求項20に記載の動作方法。
  23. 前記無効化されたデータの無効化に応答して前記無効化されたバッファリングされたデータによって占有される前記バッファメモリ内の貯蔵空間を再使用が可能にする段階をさらに含む
    ことを特徴とする請求項20に記載の動作方法。
  24. 前記バッファメモリは不揮発性そして/または揮発性半導体メモリを含み、前記不揮発性メモリは不揮発性半導体メモリそして/または磁気不揮発性メモリを含む
    ことを特徴とする請求項17に記載の動作方法。
  25. 不揮発性メモリ内のデータ貯蔵を制御するシステムにおいて、
    インターフェースと、
    前記インターフェースを介して前記不揮発性メモリに書き込まれるデータをバッファリングするように構成されたバッファメモリと、
    前記バッファメモリに書き込まれたデータが有効なデータであるか否かの状態を格納するマッピングテーブルと、
    外部から入力された無効化インジケータに応答して前記不揮発性メモリに前記バッファリングされたデータを選択的に伝達する場合に、前記バッファメモリから前記不揮発性メモリへと自動的に前記データを書き込むように構成された制御器とを含み、
    前記インターフェースを介して受信された第一の指示に応答して、前記マッピングテーブルの第一データの有効状態が無効状態へと変更され、前記バッファメモリから前記不揮発性メモリへの前記第一データの自動的な書き込みを不可とし、
    前記無効化インジケータとは、バッファメモリから前記不揮発性メモリへデータが移されることを無効化させるために外部から入力される命令であり、
    上位のホストからの無効情報に従って、前記ホストと前記不揮発性メモリとの間の円滑なデータ伝送のために使用される前記バッファメモリに貯蔵されたデータに有効/無効情報のタグをつけて前記不揮発性メモリへのデータ複写動作を選別的に制御する
    ことを特徴とするシステム。
  26. 前記無効化インジケータはアンライト情報を含む
    ことを特徴とする請求項25に記載のシステム。
  27. アンライト情報は、削除するように任意選択されたバッファリングされたデータまたは削除されたファイルデータに対応する無効情報を示す
    ことを特徴とする請求項26に記載のシステム。
  28. 前記制御器は前記無効化インジケータに応答して選択されたバッファリングされたデータを無効化させるように構成された
    ことを特徴とする請求項25に記載のシステム。
  29. 前記制御器は前記無効化インジケータに応答して前記無効化されるべきバッファリングされたデータの無効化を示す書き込み状態情報を貯蔵して、前記貯蔵された書き込み状態情報に応答して前記バッファメモリから前記不揮発性メモリへの前記無効化されたバッファリングされたデータの伝送を防止するように構成される
    ことを特徴とする請求項28に記載のシステム。
  30. 前記制御器は前記バッファメモリ内の貯蔵限界そして/または前記不揮発性メモリの遊休状態に応答して複写動作をトリガするように構成され、
    前記複写動作は前記バッファメモリから前記不揮発性メモリへの前記無効化されたバッファリングされたデータ伝送を無視する間、前記バッファメモリから前記不揮発性メモリへ有効なバッファリングされたデータを伝達することを含む
    ことを特徴とする請求項29に記載の貯蔵システム。
  31. 前記制御器は前記無効化されるべきバッファリングされたデータの無効化に応答して前記無効化されたバッファリングされたデータによって占有される前記バッファメモリ内の貯蔵空間を再使用が可能にするように構成された
    ことを特徴とする請求項28に記載のシステム。
  32. 前記バッファメモリは不揮発性そして/または揮発性半導体メモリを含む
    ことを特徴とする請求項25に記載のシステム。
  33. 前記バッファメモリは相異なっている読み出し/書き込み機能を有する少なくとも二つの揮発性メモリを含む
    ことを特徴とする請求項25に記載のシステム。
JP2005365508A 2004-12-21 2005-12-19 バッファメモリに貯蔵されたデータを無効化させるスキームを有する貯蔵システム及びそれを含んだコンピューティングシステム Active JP5420814B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020040109826A KR100578143B1 (ko) 2004-12-21 2004-12-21 버퍼 메모리에 저장된 데이터를 무효화시키는 스킴을 갖는저장 시스템 및 그것을 포함한 컴퓨팅 시스템
KR10-2004-0109826 2004-12-21

Publications (2)

Publication Number Publication Date
JP2006178983A JP2006178983A (ja) 2006-07-06
JP5420814B2 true JP5420814B2 (ja) 2014-02-19

Family

ID=36580375

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005365508A Active JP5420814B2 (ja) 2004-12-21 2005-12-19 バッファメモリに貯蔵されたデータを無効化させるスキームを有する貯蔵システム及びそれを含んだコンピューティングシステム

Country Status (6)

Country Link
US (3) US7802054B2 (ja)
JP (1) JP5420814B2 (ja)
KR (1) KR100578143B1 (ja)
CN (1) CN1821977B (ja)
DE (1) DE102005063250A1 (ja)
TW (1) TWI298167B (ja)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100578143B1 (ko) 2004-12-21 2006-05-10 삼성전자주식회사 버퍼 메모리에 저장된 데이터를 무효화시키는 스킴을 갖는저장 시스템 및 그것을 포함한 컴퓨팅 시스템
KR100876084B1 (ko) * 2007-02-13 2008-12-26 삼성전자주식회사 플래시 저장 장치로 삭제 정보를 전달할 수 있는 컴퓨팅시스템
US8122193B2 (en) 2004-12-21 2012-02-21 Samsung Electronics Co., Ltd. Storage device and user device including the same
US7571286B2 (en) * 2006-08-24 2009-08-04 International Business Machines Corporation Reduced memory traffic via detection and tracking of temporally silent stores
JP2008090626A (ja) * 2006-10-02 2008-04-17 Sony Corp 転送装置、転送システム、プログラムおよび転送方法
KR100826500B1 (ko) * 2006-10-23 2008-05-02 삼성전자주식회사 비휘발성 반도체 메모리 장치 및 상기 비휘발성 반도체메모리 장치의 데이터 복구 방법
US7554855B2 (en) * 2006-12-20 2009-06-30 Mosaid Technologies Incorporated Hybrid solid-state memory system having volatile and non-volatile memory
KR100866959B1 (ko) * 2007-02-13 2008-11-05 삼성전자주식회사 불휘발성 메모리 장치의 부분 페이지 데이터 기입 방법
JP4561800B2 (ja) * 2007-09-25 2010-10-13 沖電気工業株式会社 データ同期システム及び方法
KR20100054402A (ko) * 2008-11-14 2010-05-25 삼성전자주식회사 스토리지를 갖는 컴퓨팅 장치와, 상기 스토리지에 대한 관리 장치 및 방법과, 파일 시스템이 기록된 기록 매체
JP5448428B2 (ja) * 2008-11-27 2014-03-19 三菱電機株式会社 データ管理システム及びデータ管理方法及びデータ管理プログラム
US20100191896A1 (en) * 2009-01-23 2010-07-29 Magic Technologies, Inc. Solid state drive controller with fast NVRAM buffer and non-volatile tables
TWI396090B (zh) * 2009-02-18 2013-05-11 Silicon Motion Inc 快閃記憶裝置、資料儲存系統、以及傳送特殊命令至快閃記憶裝置之方法
US9123409B2 (en) 2009-06-11 2015-09-01 Micron Technology, Inc. Memory device for a hierarchical memory architecture
KR20110024147A (ko) * 2009-09-01 2011-03-09 삼성전자주식회사 저항성 메모리 장치의 저항 드리프트를 보상할 수 있는 메모리 시스템 및 메모리 시스템의 데이터 처리 방법
EP2504771B1 (en) * 2009-11-25 2015-04-29 Telefonaktiebolaget LM Ericsson (publ) Addressable fifo
KR101691997B1 (ko) * 2010-07-22 2017-01-02 삼성전자 주식회사 영상처리장치 및 그 제어방법
WO2012051600A2 (en) * 2010-10-15 2012-04-19 Kyquang Son File system-aware solid-state storage management system
US11232022B2 (en) 2010-10-29 2022-01-25 Samsung Electronics Co., Ltd. Memory system, data storage device, user device and data management method thereof having a data management information matching determination
US9135037B1 (en) 2011-01-13 2015-09-15 Google Inc. Virtual network protocol
CN102654852A (zh) * 2011-03-03 2012-09-05 安凯(广州)微电子技术有限公司 一种异步数据读写控制方法、装置及系统
US9237087B1 (en) 2011-03-16 2016-01-12 Google Inc. Virtual machine name resolution
US9063818B1 (en) 2011-03-16 2015-06-23 Google Inc. Automated software updating based on prior activity
US8533796B1 (en) 2011-03-16 2013-09-10 Google Inc. Providing application programs with access to secured resources
US8595716B2 (en) 2011-04-06 2013-11-26 Robert Bosch Gmbh Failsafe firmware updates
US9075979B1 (en) 2011-08-11 2015-07-07 Google Inc. Authentication based on proximity to mobile device
US8966198B1 (en) 2011-09-01 2015-02-24 Google Inc. Providing snapshots of virtual storage devices
US20130145097A1 (en) * 2011-12-05 2013-06-06 Qualcomm Incorporated Selective Access of a Store Buffer Based on Cache State
US8958293B1 (en) 2011-12-06 2015-02-17 Google Inc. Transparent load-balancing for cloud computing services
US8800009B1 (en) 2011-12-30 2014-08-05 Google Inc. Virtual machine service access
US8983860B1 (en) 2012-01-30 2015-03-17 Google Inc. Advertising auction system
US8996887B2 (en) 2012-02-24 2015-03-31 Google Inc. Log structured volume encryption for virtual machines
US20130242425A1 (en) 2012-03-16 2013-09-19 Toshiba America Electronics Components, Inc. Write reordering in a hybrid disk drive
US8677449B1 (en) 2012-03-19 2014-03-18 Google Inc. Exposing data to virtual machines
US9069806B2 (en) * 2012-03-27 2015-06-30 Google Inc. Virtual block devices
KR101938210B1 (ko) 2012-04-18 2019-01-15 삼성전자주식회사 낸드 플래시 메모리, 가변 저항 메모리 및 컨트롤러를 포함하는 메모리 시스템의 동작 방법
US9767025B2 (en) * 2012-04-18 2017-09-19 Qualcomm Incorporated Write-only dataless state for maintaining cache coherency
KR101925868B1 (ko) 2012-05-17 2018-12-06 삼성전자주식회사 모듈러 계산 유닛 및 그것을 포함하는 보안 시스템
KR101929984B1 (ko) 2012-05-17 2018-12-18 삼성전자주식회사 모듈러 곱셈기 및 그것의 모듈러 곱셈 방법
DE102013105356A1 (de) 2012-05-29 2013-12-05 Samsung Electronics Co., Ltd. Verfahren zum Betreiben von nichtflüchtigen Speichervorrichtungen, die effiziente Fehlererkennung unterstützen
KR101996004B1 (ko) 2012-05-29 2019-07-03 삼성전자주식회사 비휘발성 메모리 장치의 프로그램 방법 및 그것의 메모리 시스템
KR102000634B1 (ko) 2012-06-07 2019-07-16 삼성전자주식회사 비휘발성 메모리 장치 및 그것의 소거 방법
KR101975406B1 (ko) 2012-07-11 2019-05-07 삼성전자주식회사 비휘발성 메모리 장치 및 그것을 포함하는 메모리 시스템 및 그것의 메모리 블록 관리, 소거, 및 프로그램 방법들
KR102020466B1 (ko) * 2012-10-04 2019-09-10 에스케이하이닉스 주식회사 버퍼 메모리 장치를 포함하는 데이터 저장 장치
MX364783B (es) * 2012-11-20 2019-05-07 Thstyme Bermuda Ltd Estructuras de unidades de estado sólido.
CN102981782B (zh) * 2012-11-28 2016-08-03 华为技术有限公司 数据处理方法及装置
CN104731520B (zh) * 2013-12-24 2019-06-25 联想(北京)有限公司 一种信息处理方法以及一种电子设备
US10241715B2 (en) 2014-01-31 2019-03-26 Hewlett Packard Enterprise Development Lp Rendering data invalid in a memory array
KR102218712B1 (ko) 2014-02-11 2021-02-22 삼성전자주식회사 저장 장치의 어드레스 맵핑 방법 및 저장 장치의 데이터 독출 방법
KR102344834B1 (ko) 2014-09-24 2021-12-29 삼성전자주식회사 솔리드 스테이트 드라이브 및 이를 포함하는 컴퓨팅 시스템
US9665743B2 (en) * 2015-02-26 2017-05-30 Whitecanyon Software, Inc. Selective storage device wiping system and method
KR102610846B1 (ko) * 2016-05-13 2023-12-07 한국전자통신연구원 고속 분산 저장 장치 및 방법
KR102545166B1 (ko) * 2016-07-26 2023-06-19 삼성전자주식회사 파일을 안전하게 삭제하는 호스트, 스토리지 시스템 및 호스트의 동작방법
WO2018036626A1 (en) 2016-08-25 2018-03-01 Huawei Technologies Co., Ltd. Apparatus and method for software self test
CN106354432A (zh) * 2016-08-30 2017-01-25 北京小米移动软件有限公司 数据修改方法及装置
US10289561B2 (en) 2017-08-08 2019-05-14 Samsung Electronics Co., Ltd. Nonvolatile memory devices and methods of controlling the same
DE102017124805B4 (de) * 2017-10-24 2019-05-29 Infineon Technologies Ag Speicheranordnung und verfahren zum zwischenspeichern von speicherinhalten
CN108153491B (zh) * 2017-12-22 2021-06-25 深圳市瑞驰信息技术有限公司 一种可关闭部分服务器的存储方法及架构
KR102144124B1 (ko) * 2019-04-22 2020-08-13 고려대학교 산학협력단 하이브리드 메인 메모리 시스템의 비휘발성 메모리의 데이터 관리 방법 및 장치

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4433374A (en) * 1980-11-14 1984-02-21 Sperry Corporation Cache/disk subsystem with cache bypass
JPH01284941A (ja) * 1988-05-11 1989-11-16 Nec Corp 情報処理装置
KR900003744B1 (ko) 1988-06-27 1990-05-30 제일제당 주식회사 세라티오 펩티다제(Serratiopeptidase)를 생산하는 미생물 및 이를 이용한 세라티오펩티다제의 생산방법
JP2783285B2 (ja) * 1988-08-10 1998-08-06 株式会社日立製作所 情報処理装置
JPH05303528A (ja) * 1992-04-27 1993-11-16 Oki Electric Ind Co Ltd ライトバック式ディスクキャッシュ装置
US6549974B2 (en) 1992-06-22 2003-04-15 Hitachi, Ltd. Semiconductor storage apparatus including a controller for sending first and second write commands to different nonvolatile memories in a parallel or time overlapped manner
JP3328321B2 (ja) 1992-06-22 2002-09-24 株式会社日立製作所 半導体記憶装置
JPH06131123A (ja) 1992-10-22 1994-05-13 Fujitsu Ltd 計算機の外部記憶装置
US5594926A (en) 1993-07-19 1997-01-14 Efar Microsystems, Inc. Hard disk accelerating system for computer
DE4423559A1 (de) 1993-11-09 1995-05-11 Hewlett Packard Co Datenverbindungsverfahren und Vorrichtung für Multiprozessor-Computersysteme mit gemeinsamem Speicher
US6026027A (en) * 1994-01-31 2000-02-15 Norand Corporation Flash memory system having memory cache
US5561823A (en) 1994-03-14 1996-10-01 Conner Peripherals, Inc. Monitor system for determining the available capacity of a READ buffer and a WRITE buffer in a disk drive system
US5696929A (en) 1995-10-03 1997-12-09 Intel Corporation Flash EEPROM main memory in a computer system
US5802344A (en) 1995-11-03 1998-09-01 International Business Machines Corporation Method and apparatus for dynamic segment allocation in log structured arrays
JPH09297677A (ja) 1996-05-02 1997-11-18 Fujitsu Ltd 一部のデータ群を消去可能としたfifoバッファ
KR100251950B1 (ko) 1997-06-26 2000-04-15 윤종용 데이타 저장장치의 버퍼 룸 로직과 그 제어방법
JPH1153235A (ja) 1997-08-08 1999-02-26 Toshiba Corp ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム
JPH11194899A (ja) 1997-12-26 1999-07-21 Toshiba Corp ディスク記憶システム及び同システムに適用するデータ更新方法
US6321318B1 (en) * 1997-12-31 2001-11-20 Texas Instruments Incorporated User-configurable on-chip program memory system
JPH11273243A (ja) 1998-03-20 1999-10-08 Toshiba Corp ディスク装置及び同装置に適用されるライトバッファ制御方法
US6349362B2 (en) 1998-08-31 2002-02-19 International Business Machines Corporation Scheme to partition a large lookaside buffer into an L2 cache array
US6601147B1 (en) 1999-03-31 2003-07-29 International Business Machines Corporation Computer system and method for maintaining an integrated shared buffer memory in a group of interconnected hosts
JP3473483B2 (ja) * 1999-03-31 2003-12-02 日本電気株式会社 キャッシュ記憶装置およびキャッシュ記憶制御方法
KR100393991B1 (ko) * 2000-02-02 2003-08-06 엘지전자 주식회사 영상 복호화기 및 그의 버퍼 제어 방법
US6910107B1 (en) 2000-08-23 2005-06-21 Sun Microsystems, Inc. Method and apparatus for invalidation of data in computer systems
JP2002269065A (ja) 2001-03-08 2002-09-20 Mitsubishi Electric Corp プログラム可能な不揮発性メモリを内蔵したマイクロコンピュータ
US6915396B2 (en) 2001-05-10 2005-07-05 Hewlett-Packard Development Company, L.P. Fast priority determination circuit with rotating priority
US6708251B1 (en) 2001-05-31 2004-03-16 Keen Personal Media, Inc. Disk drive having separate interfaces for host commands and audiovisual data
JP2003015928A (ja) 2001-07-04 2003-01-17 Nec System Technologies Ltd フラッシュメモリのデータ格納装置及びそれに用いるデータ格納方法
US6675276B2 (en) * 2001-11-13 2004-01-06 Eastman Kodak Company Method for providing extensible dos-fat system structures on one-time programmable media
JP2003199014A (ja) 2001-12-27 2003-07-11 Toshiba Corp ディスク記憶装置及びコマンド処理方法
JP4082913B2 (ja) 2002-02-07 2008-04-30 株式会社ルネサステクノロジ メモリシステム
JP3703439B2 (ja) 2002-03-19 2005-10-05 Necマイクロシステム株式会社 データ転送制御装置及び方法
KR100841436B1 (ko) * 2002-08-08 2008-06-25 삼성전자주식회사 영상 기록/재생 장치 및 그 기억장치 제어방법
US20040193656A1 (en) * 2003-03-28 2004-09-30 Pizzo Michael J. Systems and methods for caching and invalidating database results and derived objects
US20050138296A1 (en) * 2003-12-18 2005-06-23 Coulson Richard L. Method and system to alter a cache policy
US7313682B2 (en) * 2004-04-29 2007-12-25 Alcatel Lucent Method and system for updating boot memory that stores a fail-safe reset code and is configured to store boot code and boot updater code
US7113402B2 (en) 2004-10-01 2006-09-26 Lenovo (Singapore) Pte. Ltd. Systems, apparatus and method for reducing dust on components in a computer system
KR100578143B1 (ko) 2004-12-21 2006-05-10 삼성전자주식회사 버퍼 메모리에 저장된 데이터를 무효화시키는 스킴을 갖는저장 시스템 및 그것을 포함한 컴퓨팅 시스템

Also Published As

Publication number Publication date
US20100318754A1 (en) 2010-12-16
US20060136676A1 (en) 2006-06-22
CN1821977A (zh) 2006-08-23
US7802054B2 (en) 2010-09-21
JP2006178983A (ja) 2006-07-06
DE102005063250A1 (de) 2006-06-29
TW200634844A (en) 2006-10-01
US20070130442A1 (en) 2007-06-07
TWI298167B (en) 2008-06-21
KR100578143B1 (ko) 2006-05-10
US8051258B2 (en) 2011-11-01
CN1821977B (zh) 2011-02-23

Similar Documents

Publication Publication Date Title
JP5420814B2 (ja) バッファメモリに貯蔵されたデータを無効化させるスキームを有する貯蔵システム及びそれを含んだコンピューティングシステム
TWI765289B (zh) 儲存系統
TWI682278B (zh) 記憶體系統及控制方法
JP4422652B2 (ja) 漸進的マージ方法及びそれを利用したメモリシステム
JP5413572B2 (ja) メモリストレージ装置及びその制御方法
US20080028132A1 (en) Non-volatile storage device, data storage system, and data storage method
JP2018073040A (ja) メモリシステム
JP2011128998A (ja) 半導体記憶装置
JP2010186340A (ja) メモリシステム
KR20180126118A (ko) 데이터 저장 장치 및 그것의 동작 방법
EP3446221B1 (en) Adapted block translation table (btt)
TW202001573A (zh) 記憶系統
JP4745465B1 (ja) 半導体記憶装置及び半導体記憶装置の制御方法
JP2004295865A (ja) 自動ブーティングシステム及び自動ブーティング方法
WO2015015589A1 (ja) 情報処理装置、メモリダンプ方法、およびメモリダンププログラム
CN113805791A (zh) 由存储设备向主机传送数据重定位信息以提高系统性能
US8527733B2 (en) Memory system
KR20100121389A (ko) 플래시 메모리를 기반으로 하는 저장 장치 및 그것을 포함한 사용자 장치
JP2005115561A (ja) フラッシュrom制御装置
TWI715408B (zh) 快閃記憶體控制器、記憶體裝置以及存取快閃記憶體模組之方法
JP2006099802A (ja) 記憶制御装置およびキャッシュメモリの制御方法
JP2007310447A (ja) データ記憶装置およびこの初期化方法
KR20080021211A (ko) 버퍼 메모리에 저장된 데이터를 무효화시키는 스킴을 갖는컴퓨팅 시스템
JP2011175666A (ja) 半導体記憶装置及び半導体記憶装置の制御方法
JP2013109404A (ja) 情報処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111018

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120118

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120619

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121019

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20121026

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20121116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130926

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131121

R150 Certificate of patent or registration of utility model

Ref document number: 5420814

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250