CN1821977B - 对于缓存器使用无效指示符的装置和方法 - Google Patents
对于缓存器使用无效指示符的装置和方法 Download PDFInfo
- Publication number
- CN1821977B CN1821977B CN2005101316125A CN200510131612A CN1821977B CN 1821977 B CN1821977 B CN 1821977B CN 2005101316125 A CN2005101316125 A CN 2005101316125A CN 200510131612 A CN200510131612 A CN 200510131612A CN 1821977 B CN1821977 B CN 1821977B
- Authority
- CN
- China
- Prior art keywords
- buffer
- data
- invalid
- storage medium
- storage
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
一种存储系统包括被配置成存储数据的存储介质和被配置成缓存要被写入存储介质中的数据的缓存器。存储系统还包括被配置成响应从外部源接收的无效指示符而将缓存数据有选择地传送给存储介质的控制器。例如,无效指示符可以包括从外部源接收的不写信息,例如表示所选择的缓存数据对应于被删除的文件数据的信息。
Description
技术领域
本发明涉及一种计算系统和方法,具体地说,涉及一种包括具有缓存器的存储系统的计算系统。
背景技术
图1的框图示出了通常的计算系统。该计算系统包括例如主计算机系统的主机10和存储器20。主机10包括中央处理单元(未示出)和主存储器(未示出)。存储器20使用诸如小计算机系统互连(SCSI)接口、增强的小设备接口(ESDI)或者智能驱动电子(IDE)接口的标准化接口连接到主机10。存储器20包括诸如硬盘或软盘的存储介质22、缓存器24和控制器26。控制器26使用传统的接口连接到存储介质22和缓存器。缓存器24包括诸如静态随机存取存储器SRAM或动态随机存取存储器DRAM的存储器。缓存器24被用于改进存储器20的写性能。
图2示出了用于图1所示计算系统的示例性文件处理的图。当在诸如主机10的高层处执行应用程序时,该应用程序产生多个文件并且所产生的文件由诸如文件分配表(FAT)文件系统的文件系统进行管理。如果应用程序在所产生的文件中写数据,那么,在中央处理单元的控制下,写入的数据被发送给诸如存储器20的较低层。所发送的数据被暂时存储在存储器20的缓存器中。当主机10请求文件时,被请求文件的数据直接从存储器20传送给主机10的主存储器或被请求文件的数据经过缓存器24传送给主机10的主存储器。经过缓存器24传送的数据可以被暂时存储在缓存器24中。
由于与存储介质22的容量相比,缓存器24的容量通常是小的,所以,通常不可能将从主存储器传送给存储介质22的所有数据都存储在缓存器24中。因此,存储在缓存器24中的数据在控制器26的控制下被间歇地传送给存储介质22。从缓存器24到存储介质22的数据传送通常被自动执行而没有主机10的干预。例如,如果当主机10请求执行写操作时缓存器24缺少存储新数据的空间,或者如果存储器20处于其中在预定的时间周期内没有从主 机10接收到请求的空闲状态,暂时存储在缓存器24中的数据可以被自动地传送给存储介质22。
上述计算系统可能存在缺点。当删除经过主机10的应用程序处理过的文件数据时,由在主机10处的文件系统将所述数据处理成被删除的文件。即使是认为数据已经在主机10的这一层被删除了,但是该数据实际上仍然可能被存储在缓存器24中。这样,当缓存器24缺少存储新数据的空间时,存储在缓存器24中的数据可能在没有主机10的干预下被自动传送给存储介质22。虽然存储在缓存器中的数据由于在高层处被删除而变得无效,但是,由于控制器26通常不能确定存储在缓存器24中的数据的有效性,所以,该无效数据可能被不必要地写入存储介质22中。因此,存储器20的写性能可能被降低,并且存储器20的寿命会由于不必要的写操作而缩短。另外,不必要的写操作浪费了功率。
发明内容
在本发明的某些实施例中,存储系统包括被配置来存储数据的存储介质和被配置来缓存要被写入该存储介质中的数据的缓存器。该存储系统还包括被配置成响应从外部源接收的无效指示符而将缓存数据有选择地传送给所述存储介质的控制器。例如,无效指示符可以包括从外部源接收的不写信息,例如,表示所选择的缓存数据对应于被删除文件数据的信息。
在另一个实施例中,控制器被配置成响应所述无效指示符无效所选择的缓存数据。具体地说,控制器可以被配置成响应无效指示符而存储表示无效缓存数据的无效的写状态信息,并响应所存储的写状态信息而防止无效缓存数据从缓存器到存储介质的传送。
在本发明的又一个实施例中,所述控制器被配置成响应缓存器中的存储限制和/或存储介质的空闲状态而触发转录操作。所述转录操作包括在前述从缓存器向存储介质传送无效缓存数据的同时,将有效缓存数据从缓存器传送给存储介质控制器。根据另一个实施例,控制器还可以被配置成响应无效缓存数据的无效而使能由无效缓存数据占据的缓存器中存储空间再使用。
在本发明的某些实施例中,计算系统包括存储系统,该存储系统包括被配置成用于存储数据的存储介质、被配置成用于缓存要被写入所述存储介质中的缓存数据的缓存器和被配置成用于响应无效指示符而将缓存数据有选择地传送给所述存储介质的控制器。所述计算系统还包括被配置成向缓存器传送数据并响应在该主机处的数据修改操作而向存储系统提供无效指示符的主机。例如,无效指示符可以包括响应主机处文件数据的删除而产生的不写命令。
在本发明的另外的实施例中,提供用于操作包括存储介质和缓存器的存储系统,该缓存器被配置成存储将被写入所述存储介质中的数据。从诸如计算机主机的外部源接收与存储在缓存器中的数据相关的无效指示符。响应所接收的无效指示符,存储在缓存器中的数据被有选择地传送给所述存储介质。
根据本发明的某些实施例,用于控制在存储介质中存储的数据的系统包括被配置成缓存将被写入所述存储介质中的数据的缓存器,和被配置成响应从外部源接收的无效指示符将缓存数据有选择地传送给所述存储介质的控制器。
具体来讲,根据本发明的一个方面,提供了一种存储系统,该存储系统包括:存储介质,被配置成存储数据;缓存器,被配置成缓存要被写入所述存储介质的数据;接口,被配置成将包括中央处理单元和主存储器的主机与所述存储系统相耦接,并且从所述主机接收无效指示符;以及控制器,被配置成包括用于存储表示存储在缓存器中的数据为有效和/或无效的写状态信息的映射表,响应于由所述接口从所述主机接收的无效指示符而更新所述写状态信息,并且根据更新的写状态信息将缓存数据有选择地传送给所述存储介质,其中,所述映射表还存储表示所述缓存器和所述存储介质中的存储位置的位置信息,该位置信息与所述写状态信息相对应,其中所述主机被配置当一文件被删除时向所述控制器提供无效指示符,其中,所述控制器控制所述存储介质和所述缓存器,使得当从所述主机输入写命令时,所述控制器将与写命令相关的数据暂时存储到所述缓存器中,当所述缓存器缺少存储数据的空间或当所述存储介质空闲时,存储在所述缓存器中的全部或部分数据被传送给所述存储介质。
根据本发明的另一个方面,提供了一种计算系统,该计算系统包括:存储系统,其包括:存储介质,被配置成存储数据;缓存器,被配置成缓存要被写入存储介质中的数据;接口,被配置成将包括中央处理单元和主存储器的主机与所述存储系统相耦接,并且从所述主机接收无效指示符;以及控制器,被配置成包括用于存储表示存储在缓存器中的数据为有效和/或无效的写 状态信息的映射表,响应于由所述接口从所述主机接收的无效指示符而更新所述写状态信息,并且根据更新的写状态信息将缓存数据有选择地传送给存储介质的控制器,其中,所述映射表还存储表示所述缓存器和所述存储介质中的存储位置的位置信息,该位置信息与所述写状态信息相对应;和主机,被配置成响应在该主机处的数据修改操作而向缓存器传送数据并将无效指示符提供给存储系统的控制器,其中,所述控制器控制所述存储介质和所述缓存器,使得当从所述主机输入写命令时,所述控制器将与写命令相关的数据暂时存储到所述缓存器中,当所述缓存器缺少存储数据的空间或当所述存储介质空闲时,存储在所述缓存器中的全部或部分数据被传送给所述存储介质。
根据本发明的再一个方面,提供了一种操作存储系统的方法,该存储系统包括存储介质、缓存器和用于控制该存储介质和该缓存器的控制器,该缓存器被配置成暂时存储要被写入所述存储介质中的数据,该方法包括:从包括中央处理单元和主存储器的主机接收与存储在缓存器中的数据相关的无效指示符;和响应于所接收的无效指示符更新用于存储表示存储在缓存器中的数据为有效和/或无效的写状态信息的映射表中的写状态信息,并且根据更新的写状态信息将存储在缓存器中的数据有选择地传送给存储介质,其中,所述映射表还存储表示所述缓存器和所述存储介质中的存储位置的位置信息,该位置信息与所述写状态信息相对应,其中所述主机被配置当一文件被删除时向所述存储介质提供无效指示符,其中,所述控制器控制所述存储介质,使得当从所述主机输入写命令时,所述控制器将与写命令相关的数据暂时存储到所述缓存器中,当所述缓存器缺少存储数据的空间或当所述存储介质空闲时,存储在所述缓存器中的全部或部分数据被传送给所述存储介质。
根据本发明的再一个方面,提供了一种用于控制存储在存储介质中的数据的系统,所述系统包括:缓存器,被配置成缓存要被写入存储介质中的数据;接口,被配置成将包括中央处理单元和主存储器的主机与包括缓存器和控制器的存储系统相耦接,并且从所述主机接收无效指示符;以及控制器,被配置成包括用于存储表示存储在缓存器中的数据为有效和/或无效的写状态信息的映射表,响应于从由所述接口从所述主机接收的无效指示符更新所述写状态信息,并且根据更新的写状态信息将缓存数据有选择地传送给存储介质,其中,所述映射表还存储表示所述缓存器和所述存储介质中的存储位置的位置信息,该位置信息与所述写状态信息相对应,其中所述主机被配置 当一文件被删除时向所述控制器提供无效指示符,其中,所述控制器控制所述存储介质和所述缓存器,使得当从所述主机输入写命令时,所述控制器将与写命令相关的数据暂时存储到所述缓存器中,当所述缓存器缺少存储数据的空间或当所述存储介质空闲时,存储在所述缓存器中的全部或部分数据被传送给所述存储介质。
附图说明
用于提供对本发明的进一步理解并构成本申请一部分的附图与说明书一起示出了本发明的实施例,以解释本发明的原理。其中:
图1的框图示出了传统的计算机系统;
图2示出了图1所示计算系统的传统文件处理操作;
图3的框图示出了根据本发明某些实施例的包括存储系统的计算系统;
图4A和4B示出了根据本发明另外一些实施例的存储系统的映射表的图;
图5的流程示出了根据本发明附加实施例的用于管理存储在计算系统的存储系统中的数据的示例性操作;和
图6A-6C示出了根据本发明的再一些实施例的基于对存储在计算系统的存储介质中的缓存器中的数据的无效信息的示例性写操作。
具体实施方式
下面将结合附图描述本发明的特定示例性实施例。但是,本发明可以多种不同的形式实施和不局限于这里所描述的实施例。提供这些实施例是使本披露更加彻底和完整,且对于本领域的普通技术人员来讲能够全部覆盖本发明的范围。在附图中,相同数字表示相同的元件。应当理解,当一个元件被称做“被连接”或“被耦合”到另外一个元件时,它可以是被直接连接或耦合到其它元件,或者是存在介入元件。此外,这里所使用的“被连接”或“被耦合”可以包括被无线连接或耦合/
这里所使用的术语仅被用于描述特定实施例的目的且不试图限制本发明。如在这里使用的,单数形式“一个”和“所述”试图包括多种形式,除非有其他特殊的描述。还应当理解,当使用于本说明书中时,术语“包括(动词)”、“包括(动词)”、“包括(分词)”和/或“包括(分词)”规定存在所述特性、整数、步骤、操作、元件和/或部件,但不排除存在或附加一个或多个其它特性、整数、步骤、操作、元件、部件和/或它们的组合。
除非另有规定,这里所使用的所有术语(包括技术和科学术语)都具有本发明所属技术领域普通技术人员所理解的共同含义。还应当理解,诸如在公用字典中所定义的术语应当被解释为具有在相关技术的上下文和本发明说明书中所坚持的它们含义的意义,除非另有定义,并不以过分理想化和过度社交意义对其进行解释。
应当理解,虽然这里所使用的术语“第一”和“第二”被用于描述各种元件,但这些元件并不受这些术语的限制。这些术语仅仅被用于从一个元件识别另一个元件。因此,术语“第一”可以被称做术语“第二”。类似的术语“第二”也可以被称做术语“第一”而不脱离本发明的教导。如这里所使用的,术语“和/或”包括相关列表术语的一个或多个的任一和所有组合。符号“/”可以被用做与“和/或”相关的简化符号。
在本发明中,“不写”、“擦除”或“删除”命令、请求或信息表示输入给存储系统以无效存储在缓存器中的数据和避免其从缓存器传送给存储介质的命令或其它信息。数据从缓存器向存储介质的传送称做“清洗”或“转录”操作。
图3的框图示出了根据本发明某些实施例的计算系统1000。计算系统1000包括主机系统100和存储系统200。存储系统200可以包括例如使用诸如SCSI、ESDI或IDE接口的标准化接口耦合到主机系统100的存储器件。将意识到可以使用包括非标准化接口的其它类型的接口来耦合主机系统100和存储系统200。存储系统200可以包括与主机系统100集成在一起的存储器。
主机系统100包括中央处理单元(CPU)110和存储器120。存储器120可以包括主机系统100的主存储器。应用程序121和文件系统122被包含在存储器120中。文件系统122可以包括一个或多个具有文件分配表(FAT)的 文件系统或其它文件系统。
当要删除全部或某些被应用程序121处理的文件数据时,主机系统100向存储系统200输出不写命令。主机系统100例如可以将该不写命令伴随与要被删除的数据的地址和/或尺寸相关的信息一起发送给存储系统200。
诸如图2所示的FAT文件系统可以包括主引导记录(MBR)、分区引导记录(PBR)、第一和第二文件分配表(主FAT、复制FAT)和引导目录。例如可以使用诸如包括数据的文件名和用于达到文件被存储地方的目录树的路径的两项信息识别存储在或将要存储在存储系统200中的数据。目录的每个条目存储诸如文件长度(例如,32字节长)、文件名、扩展名、文件属性字节、最后修改日期和时间、文件大小和启动群集的连接的信息。
预定的字符可以被用做表示被删除文件的文件名的第一字符。例如,十六近制数字节码E5h可以被指定给被删除文件的文件名的第一字符,以用做表示该文件已经被删除的标记。当文件被删除时,CPU 110可以指定预定的字符作为被删除文件的文件名的第一字符和输出与被删除文件对应的不写命令和/或其它无效信息给存储系统200。
继续参看图3,存储系统200包括存储介质220、缓存器240和控制器260。当在存储系统200的较高层处认为文件的数据已经被删除时和无效指示符已经被输入给存储系统200时,存储系统220防止将存储在缓存器220中的数据写入存储介质260中。所述无效指示符可以包括与删除数据的地址和大小相关的信息一起的不写命令。
存储介质220可以存储诸如文本、图像、音乐和节目的所有类型数据。字节存储介质220可以是诸如磁盘或闪存的非易失存储器。但是,应当理解,存储介质220并不局限于非易失存储器。
缓存器240被用于缓存在主机系统100和存储介质220之间传送的数据。缓存器240可以包括诸如动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)的高速易失性存储器和/或诸如磁阻随机存取存储器(MRAM)、参量随机存取存储器(PRAM)、铁电随机存取存储器(FRAM)、NAND闪存或NOR闪存的非易失性存储器。
缓存器240用做写缓冲器。例如,缓存器240可以响应主机系统100的请求暂时存储将要写到存储介质220中的数据。可以有选择地使用缓存器240的写缓冲器功能。有时,在“写旁路(write bypass)”操作中,从主机系统 传送的数据可以被直接传送给存储介质220而不被存储到缓存器240中。缓存器240也可以用作读缓冲器。例如,缓存器240可以暂时存储从存储介质220中读出的数据。虽然图3仅示出了一个缓存器,但可以提供两个或多个缓存器。在这种实施例中,每个缓存器可以被专门用做写缓冲器或读缓冲器,或者可以被用做写和读缓冲器。
控制器260控制存储介质220和缓存器240。当从主机系统100输入读命令时,控制器260控制存储介质220以使得存储在存储介质220中的数据被直接传送给主机系统100或者使得存储在存储介质220中的数据经过缓存器240被传送给主机系统100。当从主机系统100输入写命令时,控制器260将与写命令相关的数据暂时存储到缓存器240中。当缓存器240缺少存储附加数据的空间或当存储介质200空闲时,存储在缓存器240中的全部或部分数据被传送给存储介质220。当在预定的时间内没有从主机系统100接收到请求时,存储系统200可以被认为是空闲的。
控制器260保持与存储介质220和缓存器240的地址映射信息和用于存储表示所存储数据有效/无效的写状态信息的映射表261。利用从外部设备提供的无效信息(例如,指示符)更新所述写状态信息。控制器260基于在映射表261中的写状态信息控制存储介质220和缓存器240以将存储在缓存器240中的全部或部分数据写入存储介质220中。在本发明的某些实施例中,存储介质220和缓存器240可以使用闪存来实施。
如上所述,本发明所示实施例的存储系统200确定是否通过参考写状态信息将存储在缓存器240中的全部或部分数据传送给存储介质220。即,本发明的存储系统200从诸如主机系统100的外部源设备接收不写或其它表示存储在缓存器中的数据是无效数据的信息。响应该不写或其它无效指示符,存储系统200防止将无效数据从缓存器240写入存储介质220中。换言之,存储系统200指定表示存储在缓存器240中的数据无效的标记并基于所指定的标记将存储在缓存器240中的数据有选择地传送给存储介质220。因此,存储系统200的写性能可以得到改善,从而减少了由不必要写操作所引起的存储系统200寿命的缩短。此外,可以减少由不必要写操作引起的功耗。
图4A和4B示出了根据本发明实施例的可以由图3的控制器260使用的示例性映射表图。在图4A和4B中,“BBN”表示缓存器240的块数。“DCN”表示存储介质220的群集数,和“WS1”表示指出存储在缓存器240中的数据 有效或无效的写状态信息。在所示的实施例中,假设缓存器240的块大小与具有多个扇区的群集的大小相同。但是,存储介质220不必被限制于该假设。例如,存储介质220的分配单元可以对应于磁盘的扇区,或者闪存的页、扇区或块。在图4A和4B中,用“X”表示无效数据,用“V”表示有效数据。
在图4A中,假设与三个文件对应的数据集文件1、文件2和文件3被作为有效数据存储在缓存器240中。数据集文件1、文件2和文件3可能还没有存储到存储介质220中。如上所述,当缓存器240缺少存储新数据的空间时或存储介质220变成空闲时,所存储的文件数据集文件1、文件2和文件3被传送给存储介质220。控制器260根据从主机系统100传送的无效信息更新存储在缓存器240中的文件数据集文件1、文件2和文件3的写状态信息。例如,在主机系统100中删除文件数据集文件2并且主机系统100将文件数据集文件2的无效信息发送给控制器260,该无效信息表示文件数据集文件2已经在主机系统100处被删除。当控制器260接收文件数据集文件2的无效信息时,控制器260将文件数据集文件2的写状态信息WS1改变为“X”以指出文件数据集文件2是无效的。
图5的流程示出了根据本发明某些实施例的用于管理存储在计算机系统的存储系统中的数据的示例性操作。如上所述,图2所示的存储系统200包括用于存储数据的存储介质220和用于暂存要被写入存储介质220中的数据的缓存器240。如图5所示,在步骤S110,确定不写或其它无效信息是否被提供给存储系统200。在步骤S200,响应不写或其它无效信息,暂时存储在缓存器240中的全部或部分对应数据被标记为无效。在无效之后,无效的数据不能被写入存储介质220中。
图6A-6C示出了根据本发明的另外一些实施例的示例性数据管理操作的图。如上结合图2所述,存储系统200的控制器260通过参照映射表261将存储在缓存器240中的数据传送给存储介质220。参见图6A,假设作为有效数据在缓存器240中存储有三个文件数据集文件1、文件2和文件3。存储系统200的控制器260基于与所存储文件数据集文件1、文件2和文件3对应的映射表261中的写状态信息来确定存储在缓存器240中的哪个数据是无效数据。如图6A所示,当全部的文件数据集文件1到文件3都被映射表261标记为有效时,控制器260控制缓存器240和存储介质220将文件数据集文件1、文件2和文件3从缓存器240传送到存储介质220中的相应位置。
如果无效信息包括例如不写命令,那么,该无效数据文件的地址信息和该无效数据文件的大小信息在传送相应数据给存储介质220之前被输入给控制器260,控制器260使与该无效信息相关的数据无效。例如,如图6B所示,如果无效数据对应于文件数据集文件2,那么,控制器260更新与文件数据集文件2相关的映射表261的写状态信息WS1以指示文件数据集文件2是无效的。控制器260然后可以基于映射表261中的写状态信息SW1确定存储在缓存器240中的哪个数据是无效的。如图6B所示,在映射表261中,文件数据文件1和文件3被标记为有效数据而文件数据文件2被标记为无效数据。因此,在前述将文件数据文件2传送给存储介质220的相应位置处的同时,控制器260控制缓存器240和存储介质220将文件数据集文件1和文件3传送到存储介质220的相应位置处。被无效文件数据集文件2占据的缓存器240中的空间可以在后续新的写/读操作中用于存储新的数据。
在图6C所示的另一个例子中,假设只有一个数据文件集文件1被存储在缓存器240中。如果在将数据文件集文件1传送给存储介质220之前无效信息被输入给控制器260,那么,控制器260无效数据文件集文件1。具体地说,控制器260更新与文件数据集文件1相关的映射表261的写状态信息WS1以示出文件数据集文件1是无效的。在更新之后,控制器260然后可以通过参考与文件数据集文件1相关的映射表261的写状态信息WS1确定存储在缓存器240中的数据是否是无效的。如图6C所示,由于写状态信息WS1的“X”状态,所以,文件数据集文件1不被传送给存储介质220。因此,当存储介质220空闲时,可以防止无效数据的传送。被无效数据占据的缓存器240的空间可以在后续的写操作中用于存储新的数据。
尽管无效数据已经被写入存储介质220中,与存储在存储介质220中的无效数据相关的文件不受所存储无效数据的影响。此外,控制器260可以将无效数据有选择地传送给存储介质220。即,虽然存储在缓存器240中的数据被不写命令无效,但控制器260可以将所述无效数据有选择地传送给存储介质220。
上述存储系统200通过参照包括表示存储在缓存器240中的数据是无效还是有效的写状态信息的所述映射表控制缓存器240和存储介质220之间的数据传送操作。如上所述,数据的写状态信息可以从外部源提供给存储系统200。另外,所述数据可以是由外部源读出和修改的新数据。将理解根据本发 明各实施例的存储系统不仅可以被用在计算系统中,也可以被用在硬盘上或在诸如MP3播放器或便携电子设备的闪存中存储数据的设备。通过减少从缓存器到存储介质的无效数据的传送,能够改善存储系统的写性能和/或寿命。另外,可以减少与不必要写操作相关的功耗。
对于本领域普通技术人员很明显,可以对本发明做出各种修改和变化。即,如果所述修改和变化落入所附权利要求及其等效物的范围之内,本发明将试图覆盖所有这些修改和变化。
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所述的系统,其中,所述缓存器包括至少两个具有不同读/写功能的易失存储器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR109826/04 | 2004-12-21 | ||
KR1020040109826A KR100578143B1 (ko) | 2004-12-21 | 2004-12-21 | 버퍼 메모리에 저장된 데이터를 무효화시키는 스킴을 갖는저장 시스템 및 그것을 포함한 컴퓨팅 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1821977A CN1821977A (zh) | 2006-08-23 |
CN1821977B true CN1821977B (zh) | 2011-02-23 |
Family
ID=36580375
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005101316125A Active CN1821977B (zh) | 2004-12-21 | 2005-12-15 | 对于缓存器使用无效指示符的装置和方法 |
Country Status (6)
Country | Link |
---|---|
US (3) | US7802054B2 (zh) |
JP (1) | JP5420814B2 (zh) |
KR (1) | KR100578143B1 (zh) |
CN (1) | CN1821977B (zh) |
DE (1) | DE102005063250A1 (zh) |
TW (1) | TWI298167B (zh) |
Families Citing this family (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8122193B2 (en) | 2004-12-21 | 2012-02-21 | Samsung Electronics Co., Ltd. | Storage device and user device including the same |
KR100876084B1 (ko) * | 2007-02-13 | 2008-12-26 | 삼성전자주식회사 | 플래시 저장 장치로 삭제 정보를 전달할 수 있는 컴퓨팅시스템 |
KR100578143B1 (ko) | 2004-12-21 | 2006-05-10 | 삼성전자주식회사 | 버퍼 메모리에 저장된 데이터를 무효화시키는 스킴을 갖는저장 시스템 및 그것을 포함한 컴퓨팅 시스템 |
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 | 삼성전자주식회사 | 저항성 메모리 장치의 저항 드리프트를 보상할 수 있는 메모리 시스템 및 메모리 시스템의 데이터 처리 방법 |
WO2011063832A1 (en) * | 2009-11-25 | 2011-06-03 | Telefonaktiebolaget L M 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 | 安凯(广州)微电子技术有限公司 | 一种异步数据读写控制方法、装置及系统 |
US8533796B1 (en) | 2011-03-16 | 2013-09-10 | Google Inc. | Providing application programs with access to secured resources |
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 |
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 |
US9767025B2 (en) * | 2012-04-18 | 2017-09-19 | Qualcomm Incorporated | Write-only dataless state for maintaining cache coherency |
KR101938210B1 (ko) | 2012-04-18 | 2019-01-15 | 삼성전자주식회사 | 낸드 플래시 메모리, 가변 저항 메모리 및 컨트롤러를 포함하는 메모리 시스템의 동작 방법 |
KR101925868B1 (ko) | 2012-05-17 | 2018-12-06 | 삼성전자주식회사 | 모듈러 계산 유닛 및 그것을 포함하는 보안 시스템 |
KR101929984B1 (ko) | 2012-05-17 | 2018-12-18 | 삼성전자주식회사 | 모듈러 곱셈기 및 그것의 모듈러 곱셈 방법 |
KR101996004B1 (ko) | 2012-05-29 | 2019-07-03 | 삼성전자주식회사 | 비휘발성 메모리 장치의 프로그램 방법 및 그것의 메모리 시스템 |
DE102013105356A1 (de) | 2012-05-29 | 2013-12-05 | Samsung Electronics Co., Ltd. | Verfahren zum Betreiben von nichtflüchtigen Speichervorrichtungen, die effiziente Fehlererkennung unterstützen |
KR102000634B1 (ko) | 2012-06-07 | 2019-07-16 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 그것의 소거 방법 |
KR101975406B1 (ko) | 2012-07-11 | 2019-05-07 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 그것을 포함하는 메모리 시스템 및 그것의 메모리 블록 관리, 소거, 및 프로그램 방법들 |
KR102020466B1 (ko) * | 2012-10-04 | 2019-09-10 | 에스케이하이닉스 주식회사 | 버퍼 메모리 장치를 포함하는 데이터 저장 장치 |
JP6465806B2 (ja) * | 2012-11-20 | 2019-02-06 | アイ. ペドル,チャールズ | ソリッドステートドライブアーキテクチャ |
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 | 삼성전자주식회사 | 파일을 안전하게 삭제하는 호스트, 스토리지 시스템 및 호스트의 동작방법 |
CN108292260B (zh) * | 2016-08-25 | 2021-01-05 | 华为技术有限公司 | 用于软件自测试的装置和方法 |
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 | 고려대학교 산학협력단 | 하이브리드 메인 메모리 시스템의 비휘발성 메모리의 데이터 관리 방법 및 장치 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6026027A (en) * | 1994-01-31 | 2000-02-15 | Norand Corporation | Flash memory system having memory cache |
Family Cites Families (38)
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 |
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 | 삼성전자주식회사 | 버퍼 메모리에 저장된 데이터를 무효화시키는 스킴을 갖는저장 시스템 및 그것을 포함한 컴퓨팅 시스템 |
-
2004
- 2004-12-21 KR KR1020040109826A patent/KR100578143B1/ko active IP Right Grant
-
2005
- 2005-09-20 US US11/230,994 patent/US7802054B2/en active Active
- 2005-12-15 CN CN2005101316125A patent/CN1821977B/zh active Active
- 2005-12-19 JP JP2005365508A patent/JP5420814B2/ja active Active
- 2005-12-21 DE DE102005063250A patent/DE102005063250A1/de not_active Withdrawn
- 2005-12-21 TW TW094145485A patent/TWI298167B/zh active
-
2007
- 2007-02-09 US US11/673,228 patent/US20070130442A1/en not_active Abandoned
-
2010
- 2010-08-23 US US12/860,961 patent/US8051258B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6026027A (en) * | 1994-01-31 | 2000-02-15 | Norand Corporation | Flash memory system having memory cache |
Also Published As
Publication number | Publication date |
---|---|
US20060136676A1 (en) | 2006-06-22 |
KR100578143B1 (ko) | 2006-05-10 |
US8051258B2 (en) | 2011-11-01 |
JP2006178983A (ja) | 2006-07-06 |
DE102005063250A1 (de) | 2006-06-29 |
US7802054B2 (en) | 2010-09-21 |
TW200634844A (en) | 2006-10-01 |
US20100318754A1 (en) | 2010-12-16 |
US20070130442A1 (en) | 2007-06-07 |
CN1821977A (zh) | 2006-08-23 |
TWI298167B (en) | 2008-06-21 |
JP5420814B2 (ja) | 2014-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1821977B (zh) | 对于缓存器使用无效指示符的装置和方法 | |
US11640353B2 (en) | Memory system, data storage device, user device and data management method thereof | |
EP2631916B1 (en) | Data deletion method and apparatus | |
JP4422652B2 (ja) | 漸進的マージ方法及びそれを利用したメモリシステム | |
US10275361B2 (en) | Managing multiple namespaces in a non-volatile memory (NVM) | |
US9256542B1 (en) | Adaptive intelligent storage controller and associated methods | |
US20080028132A1 (en) | Non-volatile storage device, data storage system, and data storage method | |
US9778860B2 (en) | Re-TRIM of free space within VHDX | |
KR100794312B1 (ko) | 명령어 자동 처리 유니트를 포함한 메모리 컨트롤러 및그를 포함한 메모리 시스템 | |
JP2013242908A (ja) | ソリッドステートメモリ、それを含むコンピュータシステム及びその動作方法 | |
JP2006221627A (ja) | 複数のマッピング技法を採用した適応型フラッシュメモリ制御装置及びそれを含むフラッシュメモリシステム | |
US20190188130A1 (en) | Data Storage Device and Non-Volatile Memory Control Method | |
CN113126910A (zh) | 存储设备及其操作方法 | |
CN108628542B (zh) | 一种文件合并方法及控制器 | |
TW202001573A (zh) | 記憶系統 | |
CN113805791A (zh) | 由存储设备向主机传送数据重定位信息以提高系统性能 | |
US12045163B2 (en) | Storage device for classifying data based on stream class number, storage system, and operating method thereof | |
TWI715408B (zh) | 快閃記憶體控制器、記憶體裝置以及存取快閃記憶體模組之方法 | |
KR100977709B1 (ko) | 플래시메모리 저장장치 및 그에 따른 관리 방법 | |
KR102210536B1 (ko) | 비휘발성 메모리 장치의 데이터 관리 시스템 및 그 방법 | |
US20210303212A1 (en) | Data processing method and memory controller utilizing the same | |
KR20080021211A (ko) | 버퍼 메모리에 저장된 데이터를 무효화시키는 스킴을 갖는컴퓨팅 시스템 | |
CN102023925A (zh) | 固态硬盘及其使用方法 | |
KR20220165128A (ko) | 메모리 시스템 및 데이터 처리 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |