[go: up one dir, main page]

CN101261567B - 管理数据存储的系统和方法 - Google Patents

管理数据存储的系统和方法 Download PDF

Info

Publication number
CN101261567B
CN101261567B CN200810009905XA CN200810009905A CN101261567B CN 101261567 B CN101261567 B CN 101261567B CN 200810009905X A CN200810009905X A CN 200810009905XA CN 200810009905 A CN200810009905 A CN 200810009905A CN 101261567 B CN101261567 B CN 101261567B
Authority
CN
China
Prior art keywords
memory
file
characteristic information
information
memory portion
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
CN200810009905XA
Other languages
English (en)
Other versions
CN101261567A (zh
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 CN101261567A publication Critical patent/CN101261567A/zh
Application granted granted Critical
Publication of CN101261567B publication Critical patent/CN101261567B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47JKITCHEN EQUIPMENT; COFFEE MILLS; SPICE MILLS; APPARATUS FOR MAKING BEVERAGES
    • A47J43/00Implements for preparing or holding food, not provided for in other groups of this subclass
    • A47J43/04Machines for domestic use not covered elsewhere, e.g. for grinding, mixing, stirring, kneading, emulsifying, whipping or beating foodstuffs, e.g. power-driven
    • A47J43/07Parts or details, e.g. mixing tools, whipping tools
    • A47J43/0727Mixing bowls
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • AHUMAN NECESSITIES
    • A21BAKING; EDIBLE DOUGHS
    • A21CMACHINES OR EQUIPMENT FOR MAKING OR PROCESSING DOUGHS; HANDLING BAKED ARTICLES MADE FROM DOUGH
    • A21C1/00Mixing or kneading machines for the preparation of dough
    • A21C1/14Structural elements of mixing or kneading machines; Parts; Accessories
    • A21C1/1485Doors; Closures; Operating, e.g. safety, mechanisms therefor
    • AHUMAN NECESSITIES
    • A21BAKING; EDIBLE DOUGHS
    • A21CMACHINES OR EQUIPMENT FOR MAKING OR PROCESSING DOUGHS; HANDLING BAKED ARTICLES MADE FROM DOUGH
    • A21C1/00Mixing or kneading machines for the preparation of dough
    • A21C1/14Structural elements of mixing or kneading machines; Parts; Accessories
    • A21C1/149Receptacles, e.g. provided with means for carrying or guiding fluids, e.g. coolants
    • 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • 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]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5641Multilevel memory having cells with different number of storage levels

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Food Science & Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Read Only Memory (AREA)

Abstract

提供一种管理数据存储的系统和方法。在一个实施例中,所述方法包括:基于接收的表示文件内容的特性的特性信息,确定将接收的文件存储在多个存储器部分的哪部分。例如,多个存储器部分中的至少两个在相同的存储器中。再例如,多个存储器部分中的至少两个在不同的存储器中。接收的特性信息可包括文件名、文件的文件名的扩展名、文件类型和代表所述文件的符号信息中的至少一个。

Description

管理数据存储的系统和方法
本申请要求于2007年2月9日提交的第2007-13894号韩国专利申请的优先权,其全部内容包含于此,以资参考。
                         技术领域
本发明涉及管理数据存储的系统和方法。
                         背景技术
存在许多不同类型的存储装置和系统。例如,存在各种类型的非易失性存储装置。即使当断电时,非易失性存储器也保留其上存储的数据。相反地,当断电时,易失性存储器丢失其上存储的数据。动态随机存取存储器(DRAM)是易失性存储器的例子。
存在许多不同类型的非易失性存储器。只读存储器(ROM)、可编程只读存储器(PROM)、闪速存储器、电可擦除可编程只读存储器(EEPROM)都是通常由一或多个半导体集成电路芯片实施的固态存储器的例子。其他类型的非易失性存储器包括软盘、硬盘、光盘等。不同类型的非易失性存储器通常以不同的存储容量和不同的存取速度为特点。
通常,由计算机或处理系统对存储器进行存取。总的来说,这些不同类型的处理系统被称为主机系统。主机系统采用了称为文件系统的用于存储和组织文件以及文件包含的数据的系统。文件系统可使用如上所述的一种或多种存储器。因此,文件系统可能涉及保持存储器中存储的文件的物理位置。文件系统常常被认为是实现用于数据的存储、分级组织、操作、导航、存取和检索的一套抽象数据类型。
                         发明内容
本发明涉及管理数据存储的方法。
在一个实施例中,所述方法包括:基于接收的表示文件内容的特性的特性信息,确定将接收的文件存储在多个存储器部分的哪部分。例如,多个存储器部分中的至少两个在相同的存储器中。再例如,多个存储器部分中的至少两个在不同的存储器中。
接收的特性信息可包括文件名、文件的文件名的扩展名、文件类型和代表所述文件的符号信息中的至少一个。
在一个实施例中,生成用于存储接收的文件的输入/输出层信息,将标签插入到输入/输出层以指示确定的存储器部分。
在另一实施例中,所述方法包括接收用于存储文件的输入/输出信息。所述输入/输出信息包括地址信息、命令和标签。所述方法还包括:基于所述标签,确定将文件存储在多个存储器部分的哪部分。
本发明还涉及一种管理数据存储的系统。
在一个实施例中,所述系统包括存储器系统和主机系统。所述存储器系统至少包括第一存储器部分和第二存储器部分。所述主机系统基于接收的表示文件内容的特性的特性信息确定将文件存储在第一存储器部分和第二存储器部分的哪部分中。
在另一实施例中,所述系统包括第一存储器、第二存储器和主机系统。所述主机系统基于接收的表示文件内容的特性的特性信息确定将文件存储在第一存储器和第二存储器的哪个中。
主机系统可包括用于第一存储器和第二存储器的具有单一输入/输出驱动器的输入/输出层,所述单一输入/输出驱动器基于主机系统的确定生成用于存储与文件关联的数据的输入/输出信息。或者,主机系统可包括具有用于第一存储器的第一输入/输出驱动器和用于第二存储器的第二输入/输出驱动器的输入/输出层,所述第一输入/输出驱动器和所述第二输入/输出驱动器基于主机系统的确定分别存储与文件关联的数据。
在另一实施例中,将模块布置在主机系统和第二存储器之间。所述模块包括第一存储器和存储器控制器。所述存储器控制器接收与文件关联的数据和主机系统的确定的指示,并将接收的数据存储在指示的第一存储器和第二存储器中的一个中。
                         附图说明
通过给出以下的详细描述和仅作为示例给出的附图,本发明将被更全面地理解,其中,相同的标号指示不同的附图中相应的部件,其中:
图1示出根据本发明的一个实施例的系统。
图2示出根据本发明的一个实施例的用于管理数据存储的方法的流程图。
图3A示出根据本发明的过滤驱动器的存储器选择操作的一个实施例。
图3B示出用作文件名的若干符号和文件的特性描述。
图4A和图4B示出过滤驱动器在I/O层输出的什么位置附上标签的示例性实施例。
图5-6示出根据本发明的过滤驱动器的存储器选择操作的另一实施例。
图7示出根据本发明的过滤驱动器的存储器选择操作的另一实施例。
图8示出根据本发明的另一实施例的用于管理数据存储的方法的流程图。
图9-11均示出根据本发明的另一实施例的系统。
                       具体实施方式
现在将参照附图更全面地描述示例性实施例。然而,示例性实施例可以以多种不同的形式来实施,而不应理解为限于这里阐述的实施例。提供这些示例性实施例以使本公开是彻底的,并将本发明的范围充分地传达给本领域技术人员。在一些示例性实施例中,没有详细描述已知处理、已知装置结构和已知技术,以避免对示例性实施例的不清楚的解释。贯穿说明书,附图中相同的标号始终表示相同的元件。
应该理解的是,当元件或层被称作在另一元件或层“上”、“连接到”或“结合到”另一元件或层时,该元件或层可以直接在另一元件或层上、直接连接或结合到另一元件或层,或者可以存在中间元件或中间层。相反,当元件被称作“直接”在另一元件“上”、“直接连接到”或“直接结合到”另一元件或层时,不存在中间元件或中间层。如在这里使用的,术语“和/或”包括一个或多个相关所列项的任意组合和所有组合。
应该理解的是,尽管在这里可使用术语第一、第二、第三等来描述不同的元件、组件、区域、层和/或部分,但是这些元件、组件、区域、层和/或部分不应该受这些术语的限制。这些术语仅是用来将一个元件、组件、区域、层或部分与另一个元件、组件、区域、层或部分区分开来。因此,在不脱离本发明的教导的情况下,下面讨论的第一元件、组件、区域、层或部分可被称作第二元件、组件、区域、层或部分。
为了便于描述,在这里可使用空间相对术语,如“在...之下”、“在...下方”、“下面的”、“在...上方”、“上面的”等,用来描述如在图中所示的一个元件或特征与其它元件或特征的关系。应该理解的是,空间相对术语意在包含除了在附图中描述的方位之外的装置在使用或操作时的不同方位。例如,如果附图中的装置被翻转,则描述为“在”其它元件或特征“下方”或“之下”的元件随后将被定位为“在”其它元件或特征“上方”。因而,术语“在...下方”可包括“在...上方”和“在...下方”两种方位。所述装置可被另外定位(旋转90度或者在其它方位),并对在这里使用的空间相对描述符做出相应的解释。
这里所使用的术语仅为了描述特定的实施例的目的,并不意图限制示例性实施例。除非上下文另外明确指出,否则这里所使用的单数形式也意图包括复数形式。还应理解的是,当在本说明书中使用术语“包含”和/或“包括”时,说明存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或附加一个或多个其它特征、整体、步骤、操作、元件、组件和/或它们的组。
在此参照作为本发明的理想实施例(和中间结构)的示意图的剖面图来描述本发明的示例性实施例。这样,预计会出现例如由制造技术和/或公差引起的图示的形状的变化。因此,示例性实施例不应该被理解为限于在此示出的区域的具体形状,而将包括例如由制造导致的形状偏差。例如,示出为矩形的注入区域可能在其边缘具有圆形或弯曲的特征和/或具有注入浓度的梯度,而不是从注入区域到非注入区域的二元变化。同样,通过注入形成的埋区会导致在埋区和通过其发生注入的表面之间的区域中的一些注入。因此,附图中示出的区域本质上是示意性的,它们的形状并不意图示出装置的区域的实际形状,也不意图限制示例性实施例。
除非另有定义,否则这里使用的所有术语(包括技术术语和科学术语)具有与本领域的普通技术人员所通常理解的意思相同的意思。还应理解的是,除非这里明确定义,否则术语(诸如在通用字典中定义的术语)应该被解释为具有与相关领域的语境中它们的意思一致的意思,而不以理想的或者过于正式的含义来解释它们。
图1示出根据本发明的一个实施例的存储器系统。如图所示,主机210通过存储器控制器220在存储器系统230中存储数据以及从存储器系统230检索数据。存储器系统230可具有至少第一类型和第二类型的一个存储器、多个存储器、一个存储器的一部分、或多个存储器部分。例如,单一存储器装置可具有不同类型的存储器部分,以下将作更详细的讨论。在图1中,第一类型的一个存储器、多个存储器、一部分或多个部分将被称为第一类型存储器232;第二类型的一个存储器、多个存储器、一部分或多个部分将被称为第二类型存储器234。
第一类型存储器232和第二类型存储器234可表现为若干不同的形式。例如,存储器系统230可以是闪速存储器系统,第一类型存储器232可以是单级单元(SLC),第二类型存储器234可以是多级单元(MLC)。众所周知,通过将存储器单元编程为多个不同临界状态的一个,MLC可在每个存储器单元存储大于一个比特。相反地,SLC存储器单元存储单一比特。与SLC相比,MLC具有较高的数据存储容量,但通常存取速度较慢。
作为另一例子,第一类型存储器232可以是PRAM、FRAM、MRAM、NOR闪速存储器或易失性存储器,第二类型存储器234可以是NAND闪速存储器或其他非易失性存储器,且其存取速度慢于第一类型存储器232的存取速度。
作为另一例子,第一类型存储器232可以是闪速存储器(MLC、SLC或其组合),第二类型存储器234可以是硬盘驱动器。第二类型存储器234也可以是代替硬盘驱动器的光盘驱动器(例如,DVD、BD等)。从这些例子可知,第一类型存储器232的存取速度快于第二类型存储器234的存取速度。
存储器控制器220包括固件222。固件222响应主机210将数据存储在第一类型存储器232和第二类型存储器234中的相应的一个。固件222也响应主机21O从第一类型存储器232和第二类型存储器234中的相应的一个检索数据。
物理上,主机210包括用于执行各种功能的一个或多个处理器和本地存储器,而概念上,主机210常被描述为具有根据前述功能的若干层。例如,如图1所示,主机210可包括应用层213、文件系统层214、过滤驱动器(filterdriver)层215和输入/输出(I/O)层216。应用层210正如它的名字所述,是运行应用程序的层;例如,文字处理应用程序,网页浏览应用程序等。数据经由应用层213到文件系统层214而被存储。
文件系统214执行众所周知的包括生成存储数据的逻辑地址的文件系统操作。文件系统214将命令、逻辑地址和数据传送给输入/输出层216。输入/输出层216包括用于存储器系统230的装置驱动器。装置驱动器将命令、逻辑地址和数据格式化为用于存储器系统230的格式。过滤驱动器215分析关于文件的信息以确定将文件存储在存储器232还是存储器234中,并将指示确定的存储器的标签插入到输入/输出层216的输出中。下面将参照图2对这些操作进行更详细的讨论。
图2示出根据本发明的一个实施例的用于管理数据存储的方法的流程图。为了说明的目的,将参照图1描述本实施例。如图所示,在步骤S100中,文件系统层214从应用层213接收存储所述数据的命令和数据。例如,命令可以是“保存”文件“name.ext”。通常,文件的“.ext”部分被称为文件扩展名,而文件的“name”部分是文件名。文件扩展名区分文件的类型。例如,扩展名“.txt”指示该文件是文本文件,扩展名“.pdf”指示该文件是PDF文件等。通常,当文件具有扩展名时,文件的“name”部分并不需要区分文件的类型。然而,存在不具有扩展名的文件。对于这些文件,文件名区分文件的类型。图3B示出用作文件名的若干符号和文件的特性描述。图3B也描述了文件的功能。此外,可存在由文件名和扩展名区分的文件。无论是文件名、文件扩展名或这二者,如果该信息区分了文件内容的特性,则该信息可被称为特性信息。还是参照图3B,所示类型的文件被称为元数据(meta data)。应该理解,涉及存储器存取和数据存储的操作可针对文件系统管理,如创建文件夹、改变目录信息等。
回到图2,在步骤S105中,文件系统层214响应于命令执行众所周知的文件系统操作。例如,文件系统层214根据文件系统的命令生成用于存储数据的逻辑地址。因为文件系统和文件系统层的操作是众所周知的,因此不进行详细描述。
在步骤S120中,I/O层216执行众所周知的I/O层操作。即,用于存储器系统230的装置驱动器将命令、逻辑地址和数据格式化为用于存储器系统230的格式。这种格式化的信息被称为I/O层输出或信息。下面将参照步骤S115对I/O输出进行更详细的描述。
与步骤S105的文件系统层操作同时发生的是,在步骤S110中执行过滤驱动器的存储器选择操作。将参照图3A对过滤驱动器的存储器选择操作进行详细描述。图3A示出根据本发明的过滤驱动器的存储器选择操作的一个实施例。
如步骤S300所示,过滤驱动器215接收用于接收的文件的特性信息。过滤驱动器215存储特性信息表。在所述表中,每条特性信息与第一类型存储器232和第二类型存储器234之一关联。在步骤S302中,过滤驱动器215确定接收的特性信息是否与存储的特性信息中的一条匹配。如果不匹配,则在步骤S304中,过滤驱动器215选择第一类型存储器232和第二类型存储器234中的默认的一个存储器。在一个实施例中,默认选择是较慢的第二类型存储器234。
如果在步骤S302中过滤驱动器215找到匹配,则过滤驱动器215选择与同接收的特性信息匹配的存储的特性信息关联的存储器232或存储器234。例如,在一个实施例中,用于元数据的特性信息可与第一类型存储器232关联,而用于其他数据的特性信息可与第二类型存储器234关联。在另一实施例中,与已知频繁被存取的数据关联的特性信息可与第一类型存储器232关联以利用这种较快存取类型的存储器。
回到图2,在步骤S115中,过滤驱动器215在I/O层输出上附上标签。所述标签指示将I/O层输出的数据存储在存储器232还是存储器234。图4A和图4B示出过滤驱动器在I/O层输出的什么位置附上标签的示例性实施例。如图4A和图4B所示,I/O层输出包括命令段、地址段和数据段。命令是由指示数据的存储的存储器控制器220识别的形式和类型。地址是由文件系统214生成的用于存储数据的逻辑地址,数据段包含将被存储的数据。
如图4A所示,命令至少包括标识命令的标识符以及备用或未使用的区域。在一个实施例中,可将标签插入到备用区域。应该理解,标签可取决于存储器系统中存储器的类型的数量。对于两种存储器类型,标签可以与单一比特一样短。然而,出于防错的目的,可使用多个冗余比特。
图4B示出将标签插入到I/O层输出的地址段中的地址信息之前的实施例。这里,配置地址段使其具有超过需要的比特长度。
回到图2,在步骤S130中,固件222对I/O层输出执行转换层操作。具体地,固件222将I/O层输出中的逻辑地址转换为由附于I/O层输出的标签指示的存储器(存储器232或存储器234)的物理地址。然后,在步骤S140中,固件222响应于I/O层输出中的命令将I/O层输出中的数据保存在存储器的物理地址中。
应该理解,以这种方式,主机210可控制数据被存储在存储器系统230的哪个存储器中。此外,主机可影响该控制,而无需考虑为存储器系统230的存储器创建的物理地址或文件系统214的逻辑寻址。
其后,将对根据本发明的另一实施例的过滤驱动器的存储器选择操作进行描述。在图2的步骤S110中,过滤驱动器215可执行图5-6的存储器选择操作,而不执行图3A的存储器选择操作。
如图5所示,在步骤S500中,过滤驱动器215将计数器与每个特性信息关联,并将存储器系统230中的默认的存储器与计数器关联。在一个实施例中,默认的存储器是较慢的第二类型存储器234。在步骤S502中,对于具有与同计数器关联的特性信息匹配的特性信息的文件的每一次存取,计数器增加。存取可包括存储文件、读取文件等。
如图6所示,在步骤S600中,过滤驱动器215接收特性信息。在步骤S602中,过滤驱动器215确定是否存在用于所述特性信息的计数器。如果不存在,则在步骤S604中,过滤驱动器215选择第一类型存储器232和第二类型存储器234中的默认的一个存储器。在一个实施例中,默认选择是较慢的第二类型存储器234。然后,在步骤S606中,过滤驱动器215创建并初始化用于接收的特性信息的计数器,将默认的存储器与所述计数器关联,并执行步骤S502的用于所述计数器的步骤。
回到步骤S602,如果存在计数器,则在S608中,过滤驱动器215确定计数器是否大于阈值计数。如果不是,则在步骤S612中,过滤驱动器215选择存储器系统230中的与计数器关联的存储器。如果计数器大于阈值,则在步骤S610中,过滤驱动器215将较快的第一类型存储器232与计数器关联。然后,执行步骤S612。阈值可根据经验确定并被设置为固定值。或者,可以预期,可开发使阈值适应操作条件的各种方法。
应该理解,该过滤驱动器存储器选择方法使得被频繁存取的类型的文件被存储在具有较快存取速度的存储器中。
也应该理解,如果两个以上的存储器类型被包括在存储器系统230中,则在图6的方法中可采用多个的阈值以改变与计数器关联的存储器。
其后,将参照图7对根据本发明的另一实施例的过滤驱动器的存储器选择操作进行描述。在图2的步骤S110中,过滤驱动器215可执行图7的存储器选择操作,而不是执行图3A或图5的存储器选择操作。
如图7所示,在步骤S702中执行图3A的存储器选择操作,在步骤S704执行图5-6的存储器选择操作。然后,在步骤S706,过滤驱动器215选择在步骤S702和S704中选择的较快的存储器。
图8示出根据本发明的另一实施例的用于管理数据存储的方法的流程图。除了过滤驱动器215从步骤S105的文件系统层操作的输出接收特性信息,图8的方法与图2的实施例中的方法相同。
应该理解,管理数据存储的方法并不限于图1的实施例的应用。相反地,这些方法可应用于采用不同存储类型的存储器系统的任何系统。图9-11生成这种系统的其他实施例。
参照图9,除了存储器控制器220被去除以及主机210被主机210’取代,图9的实施例与图1的实施例相同。除了存储器控制器的由存储器控制层212代表的功能已被包括在主机210’中,主机210’与主机210相同。除了上面指出的差异,本实施例的操作与上述参照图1所描述的相同。
或者,存储器控制器的功能可被包括在存储器系统230中,而不是被包括在主机210中。
参照图10,除了第一类型存储器232和第二类型存储器234不是单一存储器系统的部分,该实施例与图9的实施例相同。相反地,存储器232和存储器234的每一个均是被单独地存取和控制的存储器。因此,如图10所示,输入/输出层216包括第一装置驱动器和第二装置驱动器。两个装置驱动器都从过滤驱动器215接收标签,但仅是与选择的存储器232或存储器234关联的装置驱动器对输入/输出层信息进行格式化,并包括该标签。否则,本实施例的操作与以上详细描述的相同。
参照图11,除了第一类型存储器232和存储器控制器220形成存储模块630的部分,第二类型存储器234是单独的存储装置,本实施例与图1的实施例相同。应该理解,除了上面指出的差异,本实施例的操作与上述的相同。
对本发明进行了如上的描述,很明显可以以不同的方式对相同的内容进行变动。这样的变动被认为未脱离本发明,所有的这些修改都包括在本发明的范围内。

Claims (20)

1.一种管理数据存储的方法,包括:
基于接收的区分文件内容的特性的特性信息,确定将接收的文件存储在多个存储器部分的哪部分,
其中,接收的特性信息包括文件名、文件的文件名的扩展名、文件类型和代表所述文件的符号信息中的至少一个,
其中,多个存储器部分包括第一存储器部分和第二存储器部分,所述第一存储器部分和所述第二存储器部分分别是单级存储器单元存储器部分和多级存储器单元存储器部分,
其中,所述多个存储器部分为闪速存储器的部分,
所述单级存储器单元存储器部分针对每个存储器单元存储单一比特,所述多级存储器单元存储器部分针对每个存储器单元存储大于一个比特。
2.如权利要求1所述的方法,其中,所述多个存储器部分的每部分具有不同的存取速度。
3.如权利要求2所述的方法,其中,确定步骤包括:
保持多个存储的特性信息与所述多个存储器部分的关联,使得每个存储的特性信息与所述多个存储器部分之一关联;
辨别接收的特性信息是否与所述多个存储的特性信息之一匹配;
如果接收的特性信息与所述多个存储的特性信息之一匹配,则选择与同接收的特性信息匹配的存储的特性信息关联的存储器部分作为存储接收的文件的存储器部分。
4.如权利要求3所述的方法,还包括:
从应用层接收接收的特性信息。
5.如权利要求3所述的方法,还包括:
从文件系统层接收接收的特性信息。
6.如权利要求3所述的方法,还包括:
在用于存储接收的文件的输入/输出层信息中插入标签,所述标签标识选择的存储器。
7.如权利要求6所述的方法,还包括:
从应用层接收接收的特性信息。
8.如权利要求6所述的方法,还包括:
从文件系统层接收接收的特性信息。
9.如权利要求3所述的方法,还包括:
生成用于存储接收的文件的输入/输出层输出信息,所述输入/输出层输出信息包括将接收的文件存储在选择的存储器部分的命令。
10.如权利要求9所述的方法,还包括:
从应用层接收接收的特性信息。
11.如权利要求9所述的方法,还包括:
从文件系统层接收接收的特性信息。
12.如权利要求2所述的方法,其中,确定步骤包括:
基于与存储的文件关联的特性信息,监视对存储的文件的存取频率;
基于监视的存取频率和接收的特性信息,选择所述多个存储器部分的一个。
13.如权利要求12所述的方法,其中
监视步骤,对从所述多个存储器部分存取存储的具有相同特性信息的文件的次数进行计数;和
选择步骤基于与同接收的特性信息匹配的特性信息关联的计数来选择所述多个存储器部分中的一个。
14.如权利要求13所述的方法,其中,如果与同接收的特性信息匹配的特性信息关联的计数超过阈值,则选择步骤选择具有快于当前存储部分的存取速度的存储器部分以存储接收的文件。
15.如权利要求12所述的方法,还包括:
在用于存储接收的文件的输入/输出层信息中插入标签,所述标签标识选择的存储器部分。
16.如权利要求12所述的方法,还包括:
生成用于存储接收的文件的输入/输出层输出信息,所述输入/输出层输出信息包括将接收的文件存储在选择的存储器部分的命令。
17.一种管理数据存储的方法,包括:
接收用于存储文件的输入/输出信息,所述输入/输出信息包括地址信息、命令和标签;
基于所述标签,确定将文件存储在多个存储器部分的哪部分,
其中,接收的特性信息包括文件名、文件的文件名的扩展名、文件类型和代表所述文件的符号信息中的至少一个,
其中,多个存储器部分包括第一存储器部分和第二存储器部分,所述第一存储器部分和所述第二存储器部分分别是单级存储器单元存储器部分和多级存储器单元存储器部分,
其中,所述多个存储器部分为闪速存储器的部分,
所述单级存储器单元存储器部分针对每个存储器单元存储单一比特,所述多级存储器单元存储器部分针对每个存储器单元存储大于一个比特。
18.如权利要求17所述的方法,其中,标签被布置在命令的备用区域中。
19.如权利要求17所述的方法,其中,标签被添加到地址信息。
20.一种管理数据存储的系统,包括:
存储器系统,至少包括第一存储器部分和第二存储器部分,其中,所述第一存储器部分和所述第二存储器部分分别是单级存储器单元存储器部分和多级存储器单元存储器部分;
主机系统,基于接收的区分文件内容的特性的特性信息确定将文件存储在第一存储器部分和第二存储器部分中的哪部分中,其中,接收的特性信息包括文件名、文件的文件名的扩展名、文件类型和代表所述文件的符号信息中的至少一个;
存储器控制器,接收与文件关联的数据和主机系统的确定的指示,并将接收的数据存储在单级存储器单元部分和多级存储器单元部分中的所指示的一个存储器中,
其中,所述第一存储器部分和所述第二存储器部分为闪速存储器的部分,
所述单级单元存储器部分针对每个存储器单元存储单一比特,所述多级单元存储器部分针对每个存储器单元存储大于一个比特。
CN200810009905XA 2007-02-09 2008-02-13 管理数据存储的系统和方法 Active CN101261567B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR1020070013894 2007-02-09
KR1020070013894A KR100854032B1 (ko) 2007-02-09 2007-02-09 메모리 시스템 및 그것의 데이터 저장 방법
KR10-2007-0013894 2007-02-09
US12/003,465 US20080195679A1 (en) 2007-02-09 2007-12-26 Systems and methods for managing data storage
US12/003465 2007-12-26

Publications (2)

Publication Number Publication Date
CN101261567A CN101261567A (zh) 2008-09-10
CN101261567B true CN101261567B (zh) 2013-01-02

Family

ID=39686780

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810009905XA Active CN101261567B (zh) 2007-02-09 2008-02-13 管理数据存储的系统和方法

Country Status (4)

Country Link
US (1) US20080195679A1 (zh)
JP (1) JP2008198200A (zh)
KR (1) KR100854032B1 (zh)
CN (1) CN101261567B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7849275B2 (en) * 2007-11-19 2010-12-07 Sandforce, Inc. System, method and a computer program product for writing data to different storage devices based on write frequency
KR20100107089A (ko) * 2009-03-25 2010-10-05 삼성전자주식회사 저장 장치 및 이를 포함하는 데이터 저장 시스템
US8769241B2 (en) * 2009-12-04 2014-07-01 Marvell World Trade Ltd. Virtualization of non-volatile memory and hard disk drive as a single logical drive
US20120054420A1 (en) * 2010-08-31 2012-03-01 Jeonguk Kang Storage device and stream filtering method thereof
KR101989018B1 (ko) 2012-06-25 2019-06-13 에스케이하이닉스 주식회사 데이터 저장 장치의 동작 방법
KR102103543B1 (ko) * 2013-11-28 2020-05-29 삼성전자 주식회사 내부 하드웨어 필터를 포함하는 일체형 데이터 저장 장치, 이의 동작 방법, 및 상기 데이터 저장 장치를 포함하는 시스템
KR102251811B1 (ko) * 2015-01-02 2021-05-13 삼성전자주식회사 하드웨어 필터를 포함하는 데이터 저장 장치 및 상기 데이터 저장 장치를 포함하는 데이터 처리 시스템
CN105426117B (zh) * 2015-10-27 2018-11-16 浪潮(北京)电子信息产业有限公司 一种系统性能优化方法及装置
CN105892937B (zh) * 2016-02-23 2020-09-25 联想(北京)有限公司 一种信息处理方法及电子设备
KR102742808B1 (ko) 2019-12-12 2024-12-16 에스케이하이닉스 주식회사 메모리 컨트롤러 및 이의 동작 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1247608A (zh) * 1997-02-27 2000-03-15 国际商业机器公司 用于分级存储管理系统的转换廉价磁盘冗余阵列

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01287761A (ja) * 1988-05-14 1989-11-20 Fujitsu Ltd 半導体記憶装置
KR0135789B1 (ko) * 1995-01-27 1998-06-15 김광호 고밀도 저장기기에 있어서 데이타 검출방법 및 장치
US5832501A (en) * 1996-12-31 1998-11-03 Apple Computer, Inc. Method and system for filtering file manager attribute values
US6785767B2 (en) * 2000-12-26 2004-08-31 Intel Corporation Hybrid mass storage system and method with two different types of storage medium
CA2365375A1 (en) * 2001-12-18 2003-06-18 Ibm Canada Limited-Ibm Canada Limitee Optimizing source code for iterative execution
US6715041B2 (en) 2002-01-28 2004-03-30 M-Systems Flash Disk Pioneers Ltd. Non-volatile memory device with multiple ports
US7386531B2 (en) * 2002-12-19 2008-06-10 Mathon Systems, Inc. System and method for managing content
US7627552B2 (en) * 2003-03-27 2009-12-01 Microsoft Corporation System and method for filtering and organizing items based on common elements
KR20050116714A (ko) * 2004-06-08 2005-12-13 삼성전자주식회사 저전력 캐시장치
US8275802B2 (en) * 2004-06-17 2012-09-25 International Business Machines Corporation Optimized least recently used lookup cache

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1247608A (zh) * 1997-02-27 2000-03-15 国际商业机器公司 用于分级存储管理系统的转换廉价磁盘冗余阵列

Also Published As

Publication number Publication date
US20080195679A1 (en) 2008-08-14
KR20080074584A (ko) 2008-08-13
JP2008198200A (ja) 2008-08-28
CN101261567A (zh) 2008-09-10
KR100854032B1 (ko) 2008-08-26

Similar Documents

Publication Publication Date Title
CN101261567B (zh) 管理数据存储的系统和方法
CN101853207B (zh) 存储装置
EP2299364B1 (en) Metadata redundancy schemes for non-volatile memories
US9626286B2 (en) Hardware and firmware paths for performing memory read processes
US8935459B2 (en) Heuristics for programming data in a non-volatile memory
KR100438012B1 (ko) 불휘발성 반도체 메모리 시스템의 제어방법
EP1909184B1 (en) Mapping information managing apparatus and method for non-volatile memory supporting different cell types
US8694766B2 (en) Device bootup from a NAND-type non-volatile memory
CN101535963A (zh) 具有可编程耐久性的快闪存储器
US20120198123A1 (en) Systems and methods for redundantly storing metadata for non-volatile memory
CN101246429B (zh) 将闪存模块用作主存储器的电子系统和相关系统引导方法
US20100211820A1 (en) Method of managing non-volatile memory device and memory system including the same
CN101918928A (zh) 包括一次写入存储器器件和多次写入存储器器件的用于计算机的存储子系统及相关方法
US11086772B2 (en) Memory system performing garbage collection operation and operating method of memory system
KR102691776B1 (ko) 메모리 시스템에서 멀티 스트림 동작을 제공하는 방법 및 장치
CN107544925B (zh) 存储器系统及加速引导时间的方法
US7222214B2 (en) Device-level address translation within a programmable non-volatile memory device
US11144249B2 (en) Storage system including nonvolatile memory module for converting random logical addresses to sequential logical addresses and operating method of the nonvolatile memory module
KR20190006687A (ko) 데이터 저장 장치 및 그것의 동작 방법
US11347433B2 (en) Method for performing sudden power off recovery management, associated memory device and controller thereof, and associated electronic device
CN111124294B (zh) 一种扇区映射信息的管理方法及装置、存储介质和设备
CN113093987A (zh) 控制存储器装置的控制器及其操作方法
KR20220005832A (ko) 메타 데이터 관리를 위한 메모리 시스템 및 메모리 시스템의 동작방법
US20240176519A1 (en) Operating methods, memory controllers, and memory systems

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