CN101408880A - 使用分割文件元数据的文件管理方法和装置 - Google Patents

使用分割文件元数据的文件管理方法和装置 Download PDF

Info

Publication number
CN101408880A
CN101408880A CNA2008101079509A CN200810107950A CN101408880A CN 101408880 A CN101408880 A CN 101408880A CN A2008101079509 A CNA2008101079509 A CN A2008101079509A CN 200810107950 A CN200810107950 A CN 200810107950A CN 101408880 A CN101408880 A CN 101408880A
Authority
CN
China
Prior art keywords
node
file
metadata
file metadata
section point
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.)
Granted
Application number
CNA2008101079509A
Other languages
English (en)
Other versions
CN101408880B (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 CN101408880A publication Critical patent/CN101408880A/zh
Application granted granted Critical
Publication of CN101408880B publication Critical patent/CN101408880B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1847File system types specifically adapted to static storage, e.g. adapted to flash memory or SSD
    • 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/0608Saving storage space on 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/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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1041Resource optimization
    • G06F2212/1044Space efficiency improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7205Cleaning, compaction, garbage collection, erase control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7207Details relating to flash memory management management of metadata or control data

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)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

如闪存之类的存储器中的文件管理,包括在存储器中存储包括第一类型文件元数据的第一节点、包括文件数据的第二节点和包括第二类型文件元数据的第三节点,所述第二类型文件元数据包括文件状态以及第一和第二节点的存储位置信息。第三节点可包括:包括第二节点的存储位置信息的节点;以及包括索引表的节点,所述索引表将第二节点的存储位置信息的存储位置交叉引用到第一节点的存储位置。可以提供方法和装置。

Description

使用分割文件元数据的文件管理方法和装置
相关申请交叉引用
本申请根据35U.S.C§119要求2007年10月12日递交的韩国专利申请No.10-2007-0103183的优先权,其整体公开内容一并于此用作参考。
技术领域
本发明涉及存储系统和方法,更具体地,涉及文件管理系统和方法。
背景技术
闪存(flash memory)通常电可擦除和/或可编程,且通常用于相对大单元的数据存储。例如,闪存广泛用于计算机和计算机控制装置的操作系统和其他计算机程序的存储,以及例如数码相机和音乐播放器之类的消费产品的视频、音频和/或其他媒体文件的存储。
图1示出了闪存的常规使用。CPU 11和随机存取存储器(RAM)14通过总线15通信,该总线可以包括数据线和控制信号线。RAM 14可用于临时存储程序代码如操作系统和应用程序,以及CPU 11对之进行操作的数据。闪存控制器12也连接到总线15,且控制总线15和闪存13之间的数据传输,该闪存13可用于CPU 11和RAM 14所使用的信息的非易失存储。例如,在一些应用中,引导程序可存储在闪存13中,CPU 11可通过闪存控制器12加载引导程序。在其他应用中,数据,例如音频和视频文件,可通过闪存控制器12在闪存13和总线15之间传输。
在一些应用中,RAM 14可用于支持管理闪存13的文件系统。参考图2,应用程序21可通过文件系统管理器22读取和写入数据,该文件系统管理器22通过闪存翻译逻辑(FTL)23与闪存24相接口,该闪存翻译逻辑23将面向硬盘的地址信息,即扇区地址,转换为闪存地址信息,例如块和页地址信息。FTL 24例如可以实现在闪存控制器中,如上面参照图1描述的闪存控制器12。
多种不同的文件系统可以用于闪存。图3示出了常规FAT(文件分配表)文件系统,包括BIOS参数块BPB区、FAT表区、目录项区和数据区。闪存翻译逻辑FTL将FAT文件系统中的扇区号转换为块和页号,从而FAT表、目录项和数据存储在闪存中的特定块和页位置。
图4和5示出了在NAND闪存应用中使用FAT文件系统时可能发生的操作示例。参考图4,来自FAT系统的扇区6的信息由闪存翻译层FTL映射为闪存的块0、页2。参考图5,如果修改块0页2中的数据,扇区6重映射为块0中的新页3。具体地,闪存翻译层FTL可在闪存中搜索空白页,且将修改的数据写入该空白页。随后将先前的页标记为无效,直到执行“碎片收集”程序以擦除无效页,从而它们可以被释放以用于以后的写入。
由于FAT文件系统最初开发用于与闪存具有不同特性的硬盘驱动器,已经开发了更适合于闪存特性的其他类型文件系统。这些文件系统的例子包括JFFS和JFFS2,记载在2001年在Ottawa Linux Symposium发表的David Woodhouse的文章“JFFS:The Journalling Flash File System”中。
发明内容
本发明的一些实施例提供了在存储器中管理文件的方法,包括:在闪存中存储包括第一类型文件元数据的第一节点、包括文件数据的第二节点和包括第二类型文件元数据的第三节点,第二类型元数据包括文件状态以及第一和第二节点的存储位置信息。在一些实施例中,该方法还可包括:读取第三节点以检索第一节点和/或第二节点的存储位置信息,并基于检索的存储位置信息访问第一节点和/或第二节点。第一类型元数据可以包括与第二类型元数据相比改变更少的信息。例如,第一类型元数据可包括文件识别信息和/或文件创建信息,而第二类型元数据可包括文件状态信息。
根据另外的实施例,第三节点包括:包括第二节点的存储位置信息的节点;以及包括索引表的节点,索引表将第二节点的存储位置信息的存储位置交叉引用到第一节点的存储位置。该方法还可包括:基于索引表,检索包括第一类型元数据的节点的存储位置;响应于检索的存储位置,读取包括第一类型元数据的节点;从读取的包括第一类型元数据的节点中识别第一节点;检索包括与所识别的第一节点相对应的第二节点的存储位置信息的节点的存储位置;以及响应于所检索的包括与所识别的第一节点相对应的第二节点的存储位置信息的节点的存储位置,访问第二节点。
该方法还可包括执行文件写入操作,其中将文件数据和第二类型文件元数据作为新节点写入存储器中,而不将第一类型元数据写入存储器的新节点中。在另外的实施例中,以周期或非周期的方式,间歇写入包括文件数据的各个部分的新节点以及包括第二类型元数据的新节点,所述第二类型元数据包括针对包括数据的所述部分的节点的存储位置信息。
本发明另外的实施例提供了在存储器中管理文件的方法,包括:管理包括文件识别信息的第一类文件元数据以及包括文件状态信息和文件存储位置信息的第二类文件元数据,分别作为存储器中的第一和第二类型节点。在对文件的一系列文件写入操作中,第二类型节点可以比第一类型节点更频繁地写入存储器。在对文件的文件写入操作中,将新的第二类型节点写入新的存储位置,而不写入新的第一类型节点。
根据本发明另外的实施例,一种装置包括:配置成与存储器通信的存储控制电路;和文件系统管理电路,与存储控制电路可操作地连接,且配置成使得存储控制电路在存储器中存储包括第一类型文件元数据的第一节点、包括文件数据的第二节点和包括第二类型文件元数据的第三节点,第二类型元数据包括文件状态以及第一节点和第二节点的存储位置元数据。本发明另外的实施例提供了计算机程序产品,包括计算机可读存储介质中包含的计算机程序代码,该计算机程序代码包括:程序代码,配置成在存储器中存储包括第一类型文件元数据的第一节点、包括文件数据的第二节点和包括第二类型文件元数据的第三节点,所述第二类型元数据包括文件状态以及第一和第二节点的存储位置信息。另外的实施例提供了存储装置,包括非易失性存储介质,其中文件存储为包括第一类型文件元数据的第一节点、包括文件数据的第二节点和包括第二类型文件元数据的第三节点,第二类型元数据包括文件状态信息以及第一和第二节点的存储位置信息。
附图说明
图1是示出了常规计算系统体系结构的示意框图。
图2-5是示出了常规的基于FAT的闪存文件系统的示意框图。
图6是示出了根据本发明一些实施例的文件系统的示意框图。
图7是示出了图6的文件系统的装置和操作的示意框图。
图8是示出了根据本发明的一些实施例用于向使用图6的文件系统的闪存中写入文件的操作的流程图。
图9是示出了根据本发明的一些实施例用于从图6的闪存中读取文件的操作的流程图。
图10是示出了根据本发明一些实施例的文件系统的示意框图。
图11是示出了用于图10中文件系统的装置和操作的示意框图。
图12是示出了根据本发明的一些实施例用于向使用图10的文件系统的闪存中写入文件的操作的流程图。
图13是示出了根据本发明的一些实施例用于从使用图10的文件系统的闪存中读取文件的操作的流程图。
图14是示出了根据本发明另外的实施例用于支持文件系统的装置和操作的示意框图。
图15是示出了根据本发明的一些实施例用于向使用图10的文件系统闪存中写入文件的操作的流程图。
具体实施方式
以下,参考示出本发明实施例的附图更充分的描述本发明。然而,本发明可以许多不同形式实现,且不应解释为受限于此处提出的实施例。相反,提供这些实施例使得公开充分而完整,且将本发明的范围充分传达给本领域的技术人员。
在附图中,为了清楚,元件的尺寸或结构可理想化或放大。可以理解的是,当将元件称作“连接到”或“耦合到”另一元件,它可以直接连接到或耦合到另一元件,或可以存在插入元件。相反,当将元件称作“直接连接到”或“直接耦合到”另一元件,则不存在插入元件。相同数字始终指示相同元件。正如此处所使用,术语“和/或”包括一个或多个相关所列项目的任意或所有组合。
可以理解的是,尽管这里可以使用术语第一、第二、第三等描述各种元件、组件和/或部分,这些元件、组件和/或部分不应为这些术语限制。这些术语仅仅用于将一个元件、组件或部分与另一元件、组件和/或部分区分。因此,在不脱离本发明教导的情况下,下面讨论的第一元件、组件或部分可以称之为第二元件、组件或部分。
这里使用的术语仅仅是为了描述具体实施例,而不是限制本发明。正如此处使用的,单数形式也意味着包括复数形式,除非上下文中另外明确指出。进一步可以理解的是,在说明中使用的术语“包括”说明存在所说的特征、整数、步骤、操作、元件和/或组件,但是不排除存在或增加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组合。
除非有另外的定义,此处使用的所有术语(包括技术和科学术语)具有与本发明所属领域的普通技术人员的通常理解相同的含义。进一步可以理解的是,术语,例如在常用词典中定义的那些,应解释为具有与相关技术和本发明的背景一致的含义,而不应解释为理想化的或过于刻板的理解,除非这里明确的如此定义。
下面描述在应用于闪存装置时本发明的特定实施例。然而,可以理解的是,本发明可以应用于其他类型存储系统,包括但不限制于其他类型固态存储装置、磁存储系统和光存储系统。
本发明的一些实施例源于如下认识:通过区分相对“静态”的文件元数据(如文件名、创建日期等)与更“动态”的元数据(如文件大小、最后编辑日期等),可以在装置中,尤其是具有如闪存之类的特征(例如块擦除和类似约束条件)的装置中,实现文件的更有效存储。这些不同类型的信息可以两种不同类型的存储“节点”,即独立的存储单元,存储在存储器中,从而每次以新数据更新文件时不需要重写“静态”元数据。这可以减少一系列更新消耗的存储空间量,从而减少可归因于存储管理功能的开销,例如碎片收集。
图6示出了根据本发明的一些实施例在闪存600中实现的文件系统610。根据文件系统610,使用三种不同类型节点将文件存储在闪存600中。第一类型节点611包括动态文件元数据,例如倾向于频繁改变的文件元数据,如文件大小、最后修改时间、文件分配信息等。第二类型节点612包括静态文件元数据,例如倾向于不那么频繁改变的文件元数据,如文件ID、创建时间、文件名等。第三类型节点613包括文件数据,例如不同于元数据的数据,如数字、图形、文本、音频和/或视频数据。第一类型节点611,即动态元数据节点,包括第二和第三类型节点612、613的闪存位置信息(例如存储地址),从而可以访问动态元数据节点611以找到静态元数据节点612和数据节点613。如下面详细描述的,这种设置的使用可在修改文件时减少对闪存的数据再写入,因为静态元数据节点612可以在若干次文件修改中保持不变,从而在每次对闪存进行文件写入操作时不需要重写该元数据节点。
附图7示出了根据本发明的一些实施例用于在闪存720中实现包括动态元数据节点721、静态元数据节点722和数据节点723的文件系统的装置和方法。在处理器710(该处理器710例如可以包括如微处理器之类的计算装置以及相关存储器)上执行的应用程序712向在处理器710上执行的文件系统管理器713提供数据。文件系统管理器713设置成存储和检索来自闪存720的数据。如图所示,文件系统管理器713可包括闪存空间管理器714,闪存空间管理器714设置成为闪存720中的文件管理提供空间管理功能,例如空闲存储位置的识别和选择以及无效存储位置的碎片收集。文件系统管理器713还可包括文件元数据管理器715,文件元数据管理器715设置成维护动态元数据节点721和静态元数据节点722。
应当理解,节点721、722和723可以以多种不同方式设置在闪存内。例如,数据节点723可沿块/页边界存储,例如,每个数据节点723可以对应于页。节点721、722和723也可设置成利用闪存720的存储空间中限定的分区(partition)。例如,如图7所示,静态数据节点722和数据节点723可以依次存储在闪存装置720的“数据块”中,而动态数据节点721存储在存储装置720的“元块”(meta block)中。这在根据下面参照图9描述的方式进行读取操作期间,在试图访问静态元数据节点和数据节点722和723的存储位置信息时,可以有助于动态元数据节点721的检索,因为文件元数据管理器715可以将对文件动态元数据的检索限制在装置720的“元块”,而不必通过存储装置720的数据块进行读取。应当理解,可以使用其他类型的分割方法。
图8示出了根据本发明的一些实施例,将文件写入使用如上所述的文件系统的闪存中的示例操作。如果存在新的静态元数据,例如,如果新创建文件和/或改变静态元数据如文件名,则将静态元数据存储在闪存的静态元数据节点中(方框810、820)。如果静态元数据不是新的,例如,如果文件已经存储在闪存中且仅仅要改变动态元数据或数据,则已存储文件的静态元数据保持不变。如果存在新数据,则将数据存储在一个或多个数据节点中(方框830、840)。如果不存在新数据,例如,如果创建了文件且不包括数据,则可以绕过数据存储。文件写入操作将随着在闪存的动态元数据节点中存储动态元数据而结束,动态元数据包括静态元数据节点和创建的任何数据节点的闪存位置信息(方框850)。
图9示出了根据本发明另外的实施例从使用如上所述的文件系统的闪存中读取文件的示例操作。为了读取文件,读取闪存中存储的一个或多个动态元数据节点,以获得与之相关联的静态元数据节点的闪存位置信息(方框910)。使用该位置信息访问一个或多个静态元数据节点,以获得闪存中存储的文件的文件识别信息(方框920)。如果定位了与所请求的文件相对应的静态元数据节点,则使用与该静态元数据节点相关联的动态元数据节点中的闪存位置信息访问包含文件数据的数据节点(方框930、940)。如果在静态元数据节点的搜索中没有定位到文件,可产生错误消息(例如,“文件未发现”)(方框930、950)。
根据本发明另外的实施例,上述文件系统可通过增加交叉引用静态文件元数据节点和动态文件元数据节点的第四种类型文件存储节点进一步修改,从而文件定位不需要涉及到搜索闪存中存储的所有动态元数据节点。这种设置可帮助减少支持文件系统所需要的系统存储器(例如RAM)的数量。
图10示出了根据本发明另外的实施例使用文件系统1010设置的闪存1000。在文件系统1010中,文件存储在闪存1000中,使用第一类型节点1011,其包括索引表,所述索引表对文件动态元数据节点1012的闪存位置信息与静态元数据节点1013的闪存位置信息进行交叉引用。类似于上面参照图6-9描述的实施例,动态元数据节点1012包括动态文件元数据,例如,倾向于频繁改变的文件元数据,如文件大小、最后修改时间、文件分配信息等。静态元数据节点1013包括静态文件元数据,例如,倾向于不那么频繁改变的文件元数据,如文件ID、创建日期、文件名等。类似于上面描述的实施例,一个或多个数据节点1014包括来自文件的数据。动态元数据节点1012包括静态元数据节点1013和数据节点1014的闪存位置信息,从而可访问动态元数据节点1012以找到静态元数据节点1013和数据节点1014。
图11示出了根据本发明的一些实施例用于在闪存1120中实现包括文件的索引表节点1121、动态元数据节点1122、静态元数据节点1123和一个或多个数据节点1124的文件系统的装置和方法。在处理器1110上执行的应用程序1112向在处理器1110上执行的文件系统管理器1113提供数据。文件系统管理器1113设置成存储和检索来自闪存1120的数据。如图所示,文件系统管理器1113可包括闪存空间管理器1114,闪存空间管理器1114设置成为闪存1120中的文件管理提供空间管理功能,例如空闲存储位置的识别和选择以及无效存储位置的碎片收集。文件系统管理器1113还包括文件元数据管理器1115,文件元数据管理器1115设置成管理动态元数据节点1122和静态元数据节点1123。文件系统管理器1113进一步包括文件索引管理器1116,文件索引管理器1116设置成维护文件索引表节点1121,文件索引表节点1121交叉引用动态元数据节点1122和静态元数据节点1123的闪存位置信息。
图12示出了根据本发明的一些实施例,将文件写入使用以上参照图10和11所述的文件系统的闪存中的示例操作。如果存在新的静态元数据,例如,如果创建新文件,则将静态元数据存储在闪存的静态元数据节点中(方框1210、1220)。如果静态元数据不是新的,例如,如果文件已存储在闪存中且仅仅要改变数据和动态元数据,则已存储文件的静态元数据保持不变。如果存在新数据,则将数据存储在一个或多个数据节点中(方框1230、1240)。如果不存在新数据,例如,如果文件新创建且不包括数据,则可绕过数据存储。随后将动态元数据存储在闪存的动态元数据节点中,动态元数据包括静态元数据节点和创建的任何数据节点的闪存位置信息(方框1250)。将交叉引用静态元数据节点和动态元数据节点的闪存位置信息的信息存储在闪存中的文件索引表节点中(方框1260)。
图13示出了根据本发明另外的实施例从使用以上参照图10和11所述的文件系统的闪存中读取文件的示例操作。为了读取文件,访问闪存中存储的文件索引表节点(方框1310)。使用来自文件索引表节点的位置信息,读取闪存中存储的一个或多个静态元数据节点,以试图找到所请求的文件(方框1320)。如果发现了合适的静态元数据节点,则使用从索引表获得的位置信息访问相应动态元数据节点(方框1330、1340)。如果没有发现相应的静态元数据节点,可产生错误消息(方框1360)。如果定位了与所请求的文件相对应的静态元数据节点,则可使用与该静态元数据节点相关联的动态元数据节点中的闪存位置信息访问包括文件数据的数据节点(方框1350)。
根据本发明另外的实施例,可以修改以上参照图6-9或10-13所述的文件系统,以允许以分段形式将文件存储在闪存中。该方法例如在减少将文件写入闪存时发生数据损坏的危险方面可能是有利的,尤其对于如媒体文件等小量数据可丢失而不完全破坏该文件价值的文件。
图14示出了根据本发明的一些实施例在闪存中实现这种系统的装置和方法。在处理器1410(该处理器1410例如可包括如微处理器之类的计算装置以及相关存储器)上执行的应用程序1412向在处理器1410上执行的文件系统管理器1413提供数据。文件系统管理器1413设置成存储和检索来自闪存1420的数据。如图所述,文件系统管理器1413可包括闪存空间管理器1414,闪存空间管理器1414设置成为闪存1420中的文件管理提供空间管理功能,例如空闲存储位置的识别和选择以及无效存储位置的碎片收集。文件系统管理器1413还包括文件元数据管理器1415,文件元数据管理器1415设置成使用静态元数据节点1423和动态元数据节点1422a-c存储文件,其中动态元数据节点1422a-c在下面参照图15讨论的断续(intermittent incremental)文件写入操作中在创建相应数据节点1424a-c的同时进行创建。文件系统管理器1413进一步包括文件索引管理器1416,文件索引管理器1416设置成管理文件索引表节点1421,文件索引表节点1421交叉引用动态元数据节点1422a-c和静态元数据节点1423的闪存位置信息。
与以上参照图10-13描述的实施例不同,在图14所示的文件系统中,文件以断续方式存储在闪存中。例如,在一些实施例中,可周期性写入文件数据的一部分,在每个连续写入周期中写入新的、更新的动态元数据节点1422a-c。参照图14,例如,在第一周期,在对数据节点1424a进行写入时,写入动态元数据节点1422a,该动态元数据节点1422a包括数据节点1424a和静态元数据节点1423的闪存位置信息。在随后的周期中,写入第二数据节点1424b,同时写入新的动态元数据节点1422b,该动态元数据节点1422b包括第一数据节点1424a、第二数据节点1424b和静态元数据节点1423的闪存位置信息,从而新的动态元数据节点1422b取代第一动态元数据节点1422a。可以在文件的下个写入周期对第三数据节点1424c和第三动态元数据节点1422c执行类似操作。
图15示出了根据本发明的一些实施例用于根据以上参照图14所述以分段方式将文件写入闪存中的示例操作。如果存在新的静态元数据,例如,如果新创建文件,则将静态元数据存储在闪存的静态元数据节点中(方框1510、1520)。如果静态元数据不是新的,例如,如果文件已经存在且其静态元数据不变,则已存储在闪存中的文件的静态元数据保持不变。如果存在新数据,则将数据存储在一个或多个数据节点中(方框1530、1540)。以递归环(recursive loop)的方式,将文件数据的部分逐步写入闪存中(方框1540),同时将动态元数据存储在动态元数据节点(方框1550)中并将索引表存储在索引表节点中(方框1560)。对数据节点、动态元数据节点和索引表节点进行递归写入,直到文件不再有数据需要存储(方框1570)。如果不存在新的数据,例如,如果文件新创建且不包括数据,可绕过数据存储。应当理解,以上面参照图14和15描述的方式存储的文件可使用基本上与上面参照图13描述的相同操作来读取,除了访问与相应于所需文件的静态节点相对应的动态元数据节点的操作(方框1340)可涉及访问最后写入的动态元数据节点,该动态元数据节点包括通过一系列间断写入周期(例如,参照图14描述的写入周期)写入的数据节点的闪存位置信息。
应当理解,在一些实施例中,间断写入周期可以是非周期性的和/或在每个周期可写入不同量的数据。在其他实施例中,可基于文件类型和/或其他因素选择性地执行周期和非周期写入操作,且可基于文件类型和/或其他因素选择性应用根据图6-9和10-13的间断操作和写入操作。例如,相对短的文件和/或数据完整性对其重要的文件可使用上面参照图10-13描述的操作进行写入,而较长的文件和/或不太重要的文件可使用参照图14和15讨论的操作进行存储。
上文是对本发明的说明且不应解释为其限制。尽管已经描述了本发明的一些示例性实施例,但是本领域的技术人员可以容易的理解,可能做出对示例性实施例的许多修改而不实际脱离本发明的新颖教导和优点。因此,所有这些修改应包含在权利要求限定的本发明的范围内。因此,可以理解的是,上文是对本发明的说明而不应解释为局限于所公开的具体实施例,且对公开实施例的修改以及其他实施例应包含在所附权利要求的范围内。

Claims (25)

1.一种在存储器中管理文件的方法,该方法包括:
在存储器中存储包括第一类型文件元数据的第一节点、包括文件数据的第二节点和包括第二类型文件元数据的第三节点,所述第二类型文件元数据包括文件状态以及第一和第二节点的存储位置信息。
2.根据权利要求1的方法,进一步包括:执行文件写入操作,其中将文件数据和第二类型文件元数据作为新节点写入存储器中,而不将第一类型文件元数据写入存储器的新节点中。
3.根据权利要求2的方法,进一步包括:周期写入包括文件数据的各个部分在内的新节点以及包括第二类型文件元数据的新节点,所述第二类型文件元数据包括针对包括文件数据的所述部分在内的节点的存储位置信息。
4.根据权利要求1的方法,其中,第三节点包括:包括第二节点的存储位置信息在内的节点;以及包括索引表的节点,所述索引表将第二节点的存储位置信息的存储位置交叉引用到第一节点的存储位置。
5.根据权利要求4的方法,进一步包括:
基于索引表,检索包括第一类型文件元数据的节点的存储位置;
响应于所检索的存储位置,读取包括第一类型文件元数据的节点;
从读取的包括第一类型文件元数据的节点中识别第一节点;
检索包括与所识别的第一节点相对应的第二节点的存储位置信息在内的节点的存储位置;和
响应于所检索的包括与所识别的第一节点相对应的第二节点的存储位置信息在内的节点的存储位置,访问第二节点。
6.根据权利要求1的方法,进一步包括:
读取第三节点,以检索第一节点和/或第二节点的存储位置信息;和
基于所检索的存储位置信息,访问第一节点和/或第二节点。
7.根据权利要求1的方法,其中,第一类型文件元数据包括与第二类型文件元数据相比改变更少的信息。
8.根据权利要求1的方法,其中,第一类型文件元数据包括文件识别信息和/或文件创建信息,第二类型文件元数据包括文件状态信息。
9.根据权利要求1的方法,其中,存储器设置成多个块,每个块包括多个页,且向第二节点分配页。
10.一种在存储器中管理文件的方法,该方法包括:
管理包括文件识别信息的第一类文件元数据以及包括文件状态信息和文件存储位置信息的第二类文件元数据,分别作为存储器中的第一和第二类型节点。
11.根据权利要求10的方法,其中,在对文件的一系列写入操作中,第二类型节点与第一类型节点相比更频繁地被写入存储器。
12.根据权利要求10的方法,包括:在对文件的文件写入操作中,将新的第二类型节点写入新的存储位置,而不写入新的第一类型节点。
13.一种装置,包括:
存储控制电路,设置成与存储器通信;和
文件系统管理器电路,与存储控制电路可操作地连接,并配置成使得存储控制电路在存储器中存储包括第一类型文件元数据的第一节点、包括文件数据的第二节点和包括第二类型文件元数据的第三节点,所述第二类型文件元数据包括文件状态以及第一和第二节点的存储位置元数据。
14.根据权利要求13的装置,其中,文件系统管理器电路设置成进行文件写入操作,其中将文件数据和第二类型文件元数据作为新节点写入存储器中,而不将第一类型文件元数据写入存储器的新节点中。
15.根据权利要求14的装置,其中,文件系统管理器电路设置成周期写入包括文件数据的各个部分在内的新节点以及包括第二类型文件元数据的新节点,所述第二类型文件元数据包括针对包括文件数据的所述部分在内的节点的存储位置信息。
16.根据权利要求13的装置,其中,第三节点包括:包括第二节点的存储位置信息在内的节点以及包括索引表的节点,所述索引表将第二节点的存储位置信息的存储位置交叉引用第一节点的存储位置。
17.根据权利要求13的装置,其中,第一类型文件元数据包括与第二类型文件元数据相比改变更少的信息。
18.根据权利要求13的装置,其中,第一类型文件元数据包括文件识别信息和/或文件创建信息,第二类型文件元数据包括文件状态信息。
19.一种计算机程序产品,包括计算机可读存储介质中包含的计算机程序代码,该计算机程序代码包括:
程序代码,设置成在存储器中存储包括第一类型文件元数据的第一节点、包括文件数据的第二节点和包括第二类型文件元数据的第三节点,所述第二类型文件元数据包括文件状态以及第一和第二节点的存储位置信息。
20.根据权利要求19的计算机程序产品,其中,计算机程序代码进一步包括:程序代码,设置成进行文件写入操作,其中将文件数据和第二类型文件元数据作为新节点写入存储器中,而不将第一类型文件元数据写入存储器的新节点中。
21.根据权利要求20的计算机程序产品,其中,计算机程序代码进一步包括:程序代码,设置成周期写入包括文件数据的各个部分在内的新节点以及包括第二类型文件元数据的新节点,所述第二类型文件元数据包括针对包括文件数据的所述部分在内的节点的存储位置信息。
22.根据权利要求19的计算机程序产品,其中,第三节点包括:包括第二节点的存储位置信息在内的节点;以及包括索引表的节点,所述索引表将第二节点的存储位置信息的存储位置交叉引用到第一节点的存储位置。
23.一种存储装置,包括:
存储介质,其中文件存储为包括第一类型文件元数据的第一节点、包括文件数据的第二节点和包括第二类型文件元数据的第三节点,所述第二类型文件元数据包括文件状态信息以及第一和第二节点的存储位置信息。
24.根据权利要求23的装置,其中,第三节点包括:包括第二节点的存储位置信息在内的节点;以及包括索引表的节点,所述索引表将第二节点的存储位置信息的存储位置交叉引用到第一节点的存储位置。
25.根据权利要求23的装置,其中,第一类型文件元数据包括与第二类型文件元数据相比改变更少的信息。
CN200810107950.9A 2007-10-12 2008-05-21 使用分割文件元数据的文件管理方法和装置 Expired - Fee Related CN101408880B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR10-2007-0103183 2007-10-12
KR1020070103183A KR101433859B1 (ko) 2007-10-12 2007-10-12 불휘발성 메모리 시스템 및 그것의 파일 데이터 관리 방법
KR1020070103183 2007-10-12
US12/015,878 2008-01-17
US12/015,878 US7970806B2 (en) 2007-10-12 2008-01-17 Methods and apparatus for file management using partitioned file metadata

Publications (2)

Publication Number Publication Date
CN101408880A true CN101408880A (zh) 2009-04-15
CN101408880B CN101408880B (zh) 2014-06-11

Family

ID=40535260

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810107950.9A Expired - Fee Related CN101408880B (zh) 2007-10-12 2008-05-21 使用分割文件元数据的文件管理方法和装置

Country Status (4)

Country Link
US (1) US7970806B2 (zh)
KR (1) KR101433859B1 (zh)
CN (1) CN101408880B (zh)
TW (1) TW200917031A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011095093A1 (zh) * 2010-02-08 2011-08-11 深圳市同洲电子股份有限公司 文件系统挂载方法、数据管理方法及相关装置
CN103067461A (zh) * 2012-12-18 2013-04-24 曙光信息产业(北京)有限公司 一种文件的元数据管理系统以及元数据管理方法
CN103310000A (zh) * 2013-06-25 2013-09-18 曙光信息产业(北京)有限公司 元数据管理方法
CN109407989A (zh) * 2018-10-18 2019-03-01 郑州云海信息技术有限公司 一种元数据刷写的方法和装置

Families Citing this family (252)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9692725B2 (en) 2005-05-26 2017-06-27 Citrix Systems, Inc. Systems and methods for using an HTTP-aware client agent
US9407608B2 (en) 2005-05-26 2016-08-02 Citrix Systems, Inc. Systems and methods for enhanced client side policy
US9621666B2 (en) 2005-05-26 2017-04-11 Citrix Systems, Inc. Systems and methods for enhanced delta compression
US8943304B2 (en) 2006-08-03 2015-01-27 Citrix Systems, Inc. Systems and methods for using an HTTP-aware client agent
US7756826B2 (en) * 2006-06-30 2010-07-13 Citrix Systems, Inc. Method and systems for efficient delivery of previously stored content
US8935302B2 (en) 2006-12-06 2015-01-13 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume
US9495241B2 (en) 2006-12-06 2016-11-15 Longitude Enterprise Flash S.A.R.L. Systems and methods for adaptive data storage
US20080140724A1 (en) 2006-12-06 2008-06-12 David Flynn Apparatus, system, and method for servicing object requests within a storage controller
US8370603B2 (en) * 2008-12-23 2013-02-05 Apple Inc. Architecture for address mapping of managed non-volatile memory
US8321647B2 (en) 2009-05-06 2012-11-27 Apple Inc. Multipage preparation commands for non-volatile memory systems
US8438453B2 (en) 2009-05-06 2013-05-07 Apple Inc. Low latency read operation for managed non-volatile memory
US8495332B2 (en) * 2009-07-24 2013-07-23 Apple Inc. Controller for optimizing throughput of read operations
US8838877B2 (en) * 2009-09-16 2014-09-16 Apple Inc. File system derived metadata for management of non-volatile memory
US8489907B2 (en) * 2009-09-16 2013-07-16 Apple Inc. Method of selective power cycling of components in a memory device independently by reducing power to a memory array or memory controller
US9063886B2 (en) 2009-09-18 2015-06-23 Apple Inc. Metadata redundancy schemes for non-volatile memories
US8726126B2 (en) * 2010-03-23 2014-05-13 Apple Inc. Non-regular parity distribution detection via metadata tag
US8775868B2 (en) 2010-09-28 2014-07-08 Pure Storage, Inc. Adaptive RAID for an SSD environment
US9244769B2 (en) 2010-09-28 2016-01-26 Pure Storage, Inc. Offset protection data in a RAID array
US8892981B2 (en) 2010-09-30 2014-11-18 Apple Inc. Data recovery using outer codewords stored in volatile memory
US8438139B2 (en) 2010-12-01 2013-05-07 International Business Machines Corporation Dynamic rewrite of files within deduplication system
US9824091B2 (en) 2010-12-03 2017-11-21 Microsoft Technology Licensing, Llc File system backup using change journal
WO2012083308A2 (en) 2010-12-17 2012-06-21 Fusion-Io, Inc. Apparatus, system, and method for persistent data management on a non-volatile storage media
US8620894B2 (en) 2010-12-21 2013-12-31 Microsoft Corporation Searching files
US8954647B2 (en) 2011-01-28 2015-02-10 Apple Inc. Systems and methods for redundantly storing metadata for non-volatile memory
US9229818B2 (en) 2011-07-20 2016-01-05 Microsoft Technology Licensing, Llc Adaptive retention for backup data
US10019353B2 (en) 2012-03-02 2018-07-10 Longitude Enterprise Flash S.A.R.L. Systems and methods for referencing data on a storage medium
KR20140069659A (ko) * 2012-11-29 2014-06-10 성균관대학교산학협력단 플래시 메모리용 파일 시스템
US9646039B2 (en) 2013-01-10 2017-05-09 Pure Storage, Inc. Snapshots in a storage system
US9069695B2 (en) 2013-03-14 2015-06-30 Apple Inc. Correction of block errors for a system having non-volatile memory
US11630585B1 (en) 2016-08-25 2023-04-18 Pure Storage, Inc. Processing evacuation events in a storage array that includes a plurality of storage devices
CN105335095B (zh) * 2014-08-11 2019-04-05 北京兆易创新科技股份有限公司 闪存文件系统的处理方法及装置
US9489132B2 (en) 2014-10-07 2016-11-08 Pure Storage, Inc. Utilizing unmapped and unknown states in a replicated storage system
US9716755B2 (en) 2015-05-26 2017-07-25 Pure Storage, Inc. Providing cloud storage array services by a local storage array in a data center
US11102298B1 (en) 2015-05-26 2021-08-24 Pure Storage, Inc. Locally providing cloud storage services for fleet management
US9594678B1 (en) 2015-05-27 2017-03-14 Pure Storage, Inc. Preventing duplicate entries of identical data in a storage device
US9444822B1 (en) 2015-05-29 2016-09-13 Pure Storage, Inc. Storage array access control from cloud-based user authorization and authentication
US10021170B2 (en) 2015-05-29 2018-07-10 Pure Storage, Inc. Managing a storage array using client-side services
US9300660B1 (en) 2015-05-29 2016-03-29 Pure Storage, Inc. Providing authorization and authentication in a cloud for a user of a storage array
US11503031B1 (en) 2015-05-29 2022-11-15 Pure Storage, Inc. Storage array access control from cloud-based user authorization and authentication
US9588691B2 (en) * 2015-06-10 2017-03-07 Pure Storage, Inc. Dynamically managing control information in a storage device
US9594512B1 (en) 2015-06-19 2017-03-14 Pure Storage, Inc. Attributing consumed storage capacity among entities storing data in a storage array
US10310740B2 (en) 2015-06-23 2019-06-04 Pure Storage, Inc. Aligning memory access operations to a geometry of a storage device
US10296236B2 (en) 2015-07-01 2019-05-21 Pure Storage, Inc. Offloading device management responsibilities from a storage device in an array of storage devices
US11461010B2 (en) 2015-07-13 2022-10-04 Samsung Electronics Co., Ltd. Data property-based data placement in a nonvolatile memory device
US10282324B2 (en) 2015-07-13 2019-05-07 Samsung Electronics Co., Ltd. Smart I/O stream detection based on multiple attributes
US10509770B2 (en) 2015-07-13 2019-12-17 Samsung Electronics Co., Ltd. Heuristic interface for enabling a computer device to utilize data property-based data placement inside a nonvolatile memory device
US9892071B2 (en) 2015-08-03 2018-02-13 Pure Storage, Inc. Emulating a remote direct memory access (‘RDMA’) link between controllers in a storage array
US9851762B1 (en) 2015-08-06 2017-12-26 Pure Storage, Inc. Compliant printed circuit board (‘PCB’) within an enclosure
US11294588B1 (en) 2015-08-24 2022-04-05 Pure Storage, Inc. Placing data within a storage device
US11625181B1 (en) 2015-08-24 2023-04-11 Pure Storage, Inc. Data tiering using snapshots
US10198194B2 (en) 2015-08-24 2019-02-05 Pure Storage, Inc. Placing data within a storage device of a flash array
US9384082B1 (en) 2015-10-23 2016-07-05 Pure Storage, Inc. Proactively providing corrective measures for storage arrays
US10514978B1 (en) 2015-10-23 2019-12-24 Pure Storage, Inc. Automatic deployment of corrective measures for storage arrays
US11360844B1 (en) 2015-10-23 2022-06-14 Pure Storage, Inc. Recovery of a container storage provider
US10284232B2 (en) 2015-10-28 2019-05-07 Pure Storage, Inc. Dynamic error processing in a storage device
US10374868B2 (en) 2015-10-29 2019-08-06 Pure Storage, Inc. Distributed command processing in a flash storage system
US9740414B2 (en) 2015-10-29 2017-08-22 Pure Storage, Inc. Optimizing copy operations
US10353777B2 (en) 2015-10-30 2019-07-16 Pure Storage, Inc. Ensuring crash-safe forward progress of a system configuration update
US9760479B2 (en) 2015-12-02 2017-09-12 Pure Storage, Inc. Writing data in a storage system that includes a first type of storage device and a second type of storage device
US11762764B1 (en) 2015-12-02 2023-09-19 Pure Storage, Inc. Writing data in a storage system that includes a first type of storage device and a second type of storage device
US11616834B2 (en) 2015-12-08 2023-03-28 Pure Storage, Inc. Efficient replication of a dataset to the cloud
US10326836B2 (en) 2015-12-08 2019-06-18 Pure Storage, Inc. Partially replicating a snapshot between storage systems
US10162835B2 (en) 2015-12-15 2018-12-25 Pure Storage, Inc. Proactive management of a plurality of storage arrays in a multi-array system
US11347697B1 (en) 2015-12-15 2022-05-31 Pure Storage, Inc. Proactively optimizing a storage system
US10346043B2 (en) 2015-12-28 2019-07-09 Pure Storage, Inc. Adaptive computing for data compression
US9886314B2 (en) 2016-01-28 2018-02-06 Pure Storage, Inc. Placing workloads in a multi-array system
US10572460B2 (en) 2016-02-11 2020-02-25 Pure Storage, Inc. Compressing data in dependence upon characteristics of a storage system
US9760297B2 (en) 2016-02-12 2017-09-12 Pure Storage, Inc. Managing input/output (‘I/O’) queues in a data storage system
US9959043B2 (en) 2016-03-16 2018-05-01 Pure Storage, Inc. Performing a non-disruptive upgrade of data in a storage system
US11995315B2 (en) 2016-03-16 2024-05-28 Pure Storage, Inc. Converting data formats in a storage system
US11112990B1 (en) 2016-04-27 2021-09-07 Pure Storage, Inc. Managing storage device evacuation
US9841921B2 (en) 2016-04-27 2017-12-12 Pure Storage, Inc. Migrating data in a storage array that includes a plurality of storage devices
US11809727B1 (en) 2016-04-27 2023-11-07 Pure Storage, Inc. Predicting failures in a storage system that includes a plurality of storage devices
US9811264B1 (en) 2016-04-28 2017-11-07 Pure Storage, Inc. Deploying client-specific applications in a storage system utilizing redundant system resources
US10303390B1 (en) 2016-05-02 2019-05-28 Pure Storage, Inc. Resolving fingerprint collisions in flash storage system
US11231858B2 (en) 2016-05-19 2022-01-25 Pure Storage, Inc. Dynamically configuring a storage system to facilitate independent scaling of resources
US9507532B1 (en) 2016-05-20 2016-11-29 Pure Storage, Inc. Migrating data in a storage array that includes a plurality of storage devices and a plurality of write buffer devices
US10691567B2 (en) 2016-06-03 2020-06-23 Pure Storage, Inc. Dynamically forming a failure domain in a storage system that includes a plurality of blades
US10452310B1 (en) 2016-07-13 2019-10-22 Pure Storage, Inc. Validating cabling for storage component admission to a storage array
US11706895B2 (en) 2016-07-19 2023-07-18 Pure Storage, Inc. Independent scaling of compute resources and storage resources in a storage system
US10459652B2 (en) 2016-07-27 2019-10-29 Pure Storage, Inc. Evacuating blades in a storage array that includes a plurality of blades
US10474363B1 (en) 2016-07-29 2019-11-12 Pure Storage, Inc. Space reporting in a storage system
US11886922B2 (en) 2016-09-07 2024-01-30 Pure Storage, Inc. Scheduling input/output operations for a storage system
US10671439B1 (en) 2016-09-07 2020-06-02 Pure Storage, Inc. Workload planning with quality-of-service (‘QOS’) integration
US10908966B1 (en) 2016-09-07 2021-02-02 Pure Storage, Inc. Adapting target service times in a storage system
US10146585B2 (en) 2016-09-07 2018-12-04 Pure Storage, Inc. Ensuring the fair utilization of system resources using workload based, time-independent scheduling
US10331588B2 (en) 2016-09-07 2019-06-25 Pure Storage, Inc. Ensuring the appropriate utilization of system resources using weighted workload based, time-independent scheduling
US10235229B1 (en) 2016-09-07 2019-03-19 Pure Storage, Inc. Rehabilitating storage devices in a storage array that includes a plurality of storage devices
US11960348B2 (en) 2016-09-07 2024-04-16 Pure Storage, Inc. Cloud-based monitoring of hardware components in a fleet of storage systems
US11481261B1 (en) 2016-09-07 2022-10-25 Pure Storage, Inc. Preventing extended latency in a storage system
US11531577B1 (en) 2016-09-07 2022-12-20 Pure Storage, Inc. Temporarily limiting access to a storage device
US11379132B1 (en) 2016-10-20 2022-07-05 Pure Storage, Inc. Correlating medical sensor data
US10007459B2 (en) 2016-10-20 2018-06-26 Pure Storage, Inc. Performance tuning in a storage system that includes one or more storage devices
US11620075B2 (en) 2016-11-22 2023-04-04 Pure Storage, Inc. Providing application aware storage
US10162566B2 (en) 2016-11-22 2018-12-25 Pure Storage, Inc. Accumulating application-level statistics in a storage system
US10198205B1 (en) 2016-12-19 2019-02-05 Pure Storage, Inc. Dynamically adjusting a number of storage devices utilized to simultaneously service write operations
US11461273B1 (en) 2016-12-20 2022-10-04 Pure Storage, Inc. Modifying storage distribution in a storage system that includes one or more storage devices
US10489307B2 (en) 2017-01-05 2019-11-26 Pure Storage, Inc. Periodically re-encrypting user data stored on a storage device
US11307998B2 (en) 2017-01-09 2022-04-19 Pure Storage, Inc. Storage efficiency of encrypted host system data
US11340800B1 (en) 2017-01-19 2022-05-24 Pure Storage, Inc. Content masking in a storage system
US10503700B1 (en) 2017-01-19 2019-12-10 Pure Storage, Inc. On-demand content filtering of snapshots within a storage system
US11163624B2 (en) 2017-01-27 2021-11-02 Pure Storage, Inc. Dynamically adjusting an amount of log data generated for a storage system
US11003381B2 (en) 2017-03-07 2021-05-11 Samsung Electronics Co., Ltd. Non-volatile memory storage device capable of self-reporting performance capabilities
US12056383B2 (en) 2017-03-10 2024-08-06 Pure Storage, Inc. Edge management service
US11675520B2 (en) 2017-03-10 2023-06-13 Pure Storage, Inc. Application replication among storage systems synchronously replicating a dataset
US11941279B2 (en) 2017-03-10 2024-03-26 Pure Storage, Inc. Data path virtualization
US10454810B1 (en) 2017-03-10 2019-10-22 Pure Storage, Inc. Managing host definitions across a plurality of storage systems
US10503427B2 (en) 2017-03-10 2019-12-10 Pure Storage, Inc. Synchronously replicating datasets and other managed objects to cloud-based storage systems
US11089105B1 (en) 2017-12-14 2021-08-10 Pure Storage, Inc. Synchronously replicating datasets in cloud-based storage systems
US10521344B1 (en) 2017-03-10 2019-12-31 Pure Storage, Inc. Servicing input/output (‘I/O’) operations directed to a dataset that is synchronized across a plurality of storage systems
US11803453B1 (en) 2017-03-10 2023-10-31 Pure Storage, Inc. Using host connectivity states to avoid queuing I/O requests
US11169727B1 (en) 2017-03-10 2021-11-09 Pure Storage, Inc. Synchronous replication between storage systems with virtualized storage
US11442825B2 (en) 2017-03-10 2022-09-13 Pure Storage, Inc. Establishing a synchronous replication relationship between two or more storage systems
US9910618B1 (en) 2017-04-10 2018-03-06 Pure Storage, Inc. Migrating applications executing on a storage system
US10459664B1 (en) 2017-04-10 2019-10-29 Pure Storage, Inc. Virtualized copy-by-reference
US11868629B1 (en) 2017-05-05 2024-01-09 Pure Storage, Inc. Storage system sizing service
US11609718B1 (en) 2017-06-12 2023-03-21 Pure Storage, Inc. Identifying valid data after a storage system recovery
US11340939B1 (en) 2017-06-12 2022-05-24 Pure Storage, Inc. Application-aware analytics for storage systems
US11989429B1 (en) 2017-06-12 2024-05-21 Pure Storage, Inc. Recommending changes to a storage system
US11016824B1 (en) 2017-06-12 2021-05-25 Pure Storage, Inc. Event identification with out-of-order reporting in a cloud-based environment
US12086651B2 (en) 2017-06-12 2024-09-10 Pure Storage, Inc. Migrating workloads using active disaster recovery
US10976962B2 (en) 2018-03-15 2021-04-13 Pure Storage, Inc. Servicing I/O operations in a cloud-based storage system
US12086650B2 (en) 2017-06-12 2024-09-10 Pure Storage, Inc. Workload placement based on carbon emissions
US11442669B1 (en) 2018-03-15 2022-09-13 Pure Storage, Inc. Orchestrating a virtual storage system
US10417092B2 (en) 2017-09-07 2019-09-17 Pure Storage, Inc. Incremental RAID stripe update parity calculation
US11422731B1 (en) 2017-06-12 2022-08-23 Pure Storage, Inc. Metadata-based replication of a dataset
US11593036B2 (en) 2017-06-12 2023-02-28 Pure Storage, Inc. Staging data within a unified storage element
US12061822B1 (en) 2017-06-12 2024-08-13 Pure Storage, Inc. Utilizing volume-level policies in a storage system
US10613791B2 (en) 2017-06-12 2020-04-07 Pure Storage, Inc. Portable snapshot replication between storage systems
US10853148B1 (en) 2017-06-12 2020-12-01 Pure Storage, Inc. Migrating workloads between a plurality of execution environments
US11210133B1 (en) 2017-06-12 2021-12-28 Pure Storage, Inc. Workload mobility between disparate execution environments
EP3612922A1 (en) 2017-06-12 2020-02-26 Pure Storage, Inc. Accessible fast durable storage integrated into a bulk storage device
US10884636B1 (en) 2017-06-12 2021-01-05 Pure Storage, Inc. Presenting workload performance in a storage system
US11592991B2 (en) 2017-09-07 2023-02-28 Pure Storage, Inc. Converting raid data between persistent storage types
US10552090B2 (en) 2017-09-07 2020-02-04 Pure Storage, Inc. Solid state drives with multiple types of addressable memory
US11561714B1 (en) 2017-07-05 2023-01-24 Pure Storage, Inc. Storage efficiency driven migration
US11477280B1 (en) 2017-07-26 2022-10-18 Pure Storage, Inc. Integrating cloud storage services
US10831935B2 (en) 2017-08-31 2020-11-10 Pure Storage, Inc. Encryption management with host-side data reduction
US12067466B2 (en) 2017-10-19 2024-08-20 Pure Storage, Inc. Artificial intelligence and machine learning hyperscale infrastructure
US11455168B1 (en) 2017-10-19 2022-09-27 Pure Storage, Inc. Batch building for deep learning training workloads
US10452444B1 (en) 2017-10-19 2019-10-22 Pure Storage, Inc. Storage system with compute resources and shared storage resources
US11861423B1 (en) 2017-10-19 2024-01-02 Pure Storage, Inc. Accelerating artificial intelligence (‘AI’) workflows
US10671435B1 (en) 2017-10-19 2020-06-02 Pure Storage, Inc. Data transformation caching in an artificial intelligence infrastructure
US11494692B1 (en) 2018-03-26 2022-11-08 Pure Storage, Inc. Hyperscale artificial intelligence and machine learning infrastructure
US10360214B2 (en) 2017-10-19 2019-07-23 Pure Storage, Inc. Ensuring reproducibility in an artificial intelligence infrastructure
US10484174B1 (en) 2017-11-01 2019-11-19 Pure Storage, Inc. Protecting an encryption key for data stored in a storage system that includes a plurality of storage devices
US10671494B1 (en) 2017-11-01 2020-06-02 Pure Storage, Inc. Consistent selection of replicated datasets during storage system recovery
US10509581B1 (en) 2017-11-01 2019-12-17 Pure Storage, Inc. Maintaining write consistency in a multi-threaded storage system
US10467107B1 (en) 2017-11-01 2019-11-05 Pure Storage, Inc. Maintaining metadata resiliency among storage device failures
US10817392B1 (en) 2017-11-01 2020-10-27 Pure Storage, Inc. Ensuring resiliency to storage device failures in a storage system that includes a plurality of storage devices
US10929226B1 (en) 2017-11-21 2021-02-23 Pure Storage, Inc. Providing for increased flexibility for large scale parity
US10936238B2 (en) 2017-11-28 2021-03-02 Pure Storage, Inc. Hybrid data tiering
US10990282B1 (en) 2017-11-28 2021-04-27 Pure Storage, Inc. Hybrid data tiering with cloud storage
US10795598B1 (en) 2017-12-07 2020-10-06 Pure Storage, Inc. Volume migration for storage systems synchronously replicating a dataset
US11036677B1 (en) 2017-12-14 2021-06-15 Pure Storage, Inc. Replicated data integrity
US10929031B2 (en) 2017-12-21 2021-02-23 Pure Storage, Inc. Maximizing data reduction in a partially encrypted volume
US10992533B1 (en) 2018-01-30 2021-04-27 Pure Storage, Inc. Policy based path management
US10942650B1 (en) 2018-03-05 2021-03-09 Pure Storage, Inc. Reporting capacity utilization in a storage system
US10521151B1 (en) 2018-03-05 2019-12-31 Pure Storage, Inc. Determining effective space utilization in a storage system
US11972134B2 (en) 2018-03-05 2024-04-30 Pure Storage, Inc. Resource utilization using normalized input/output (‘I/O’) operations
US11150834B1 (en) 2018-03-05 2021-10-19 Pure Storage, Inc. Determining storage consumption in a storage system
US11861170B2 (en) 2018-03-05 2024-01-02 Pure Storage, Inc. Sizing resources for a replication target
US10296258B1 (en) 2018-03-09 2019-05-21 Pure Storage, Inc. Offloading data storage to a decentralized storage network
US10917471B1 (en) 2018-03-15 2021-02-09 Pure Storage, Inc. Active membership in a cloud-based storage system
US11048590B1 (en) 2018-03-15 2021-06-29 Pure Storage, Inc. Data consistency during recovery in a cloud-based storage system
US12066900B2 (en) 2018-03-15 2024-08-20 Pure Storage, Inc. Managing disaster recovery to cloud computing environment
US11288138B1 (en) 2018-03-15 2022-03-29 Pure Storage, Inc. Recovery from a system fault in a cloud-based storage system
US11210009B1 (en) 2018-03-15 2021-12-28 Pure Storage, Inc. Staging data in a cloud-based storage system
US10924548B1 (en) 2018-03-15 2021-02-16 Pure Storage, Inc. Symmetric storage using a cloud-based storage system
US11095706B1 (en) 2018-03-21 2021-08-17 Pure Storage, Inc. Secure cloud-based storage system management
US11171950B1 (en) 2018-03-21 2021-11-09 Pure Storage, Inc. Secure cloud-based storage system management
US10838833B1 (en) 2018-03-26 2020-11-17 Pure Storage, Inc. Providing for high availability in a data analytics pipeline without replicas
US11436344B1 (en) 2018-04-24 2022-09-06 Pure Storage, Inc. Secure encryption in deduplication cluster
US11392553B1 (en) 2018-04-24 2022-07-19 Pure Storage, Inc. Remote data management
US12086431B1 (en) 2018-05-21 2024-09-10 Pure Storage, Inc. Selective communication protocol layering for synchronous replication
US10992598B2 (en) 2018-05-21 2021-04-27 Pure Storage, Inc. Synchronously replicating when a mediation service becomes unavailable
US11675503B1 (en) 2018-05-21 2023-06-13 Pure Storage, Inc. Role-based data access
US11954220B2 (en) 2018-05-21 2024-04-09 Pure Storage, Inc. Data protection for container storage
US11455409B2 (en) 2018-05-21 2022-09-27 Pure Storage, Inc. Storage layer data obfuscation
US10871922B2 (en) 2018-05-22 2020-12-22 Pure Storage, Inc. Integrated storage management between storage systems and container orchestrators
GB201810533D0 (en) * 2018-06-27 2018-08-15 Nordic Semiconductor Asa Hardware protection of files in an intergrated-circuit device
US11416298B1 (en) 2018-07-20 2022-08-16 Pure Storage, Inc. Providing application-specific storage by a storage system
US11403000B1 (en) 2018-07-20 2022-08-02 Pure Storage, Inc. Resiliency in a cloud-based storage system
US11632360B1 (en) 2018-07-24 2023-04-18 Pure Storage, Inc. Remote access to a storage device
US11146564B1 (en) 2018-07-24 2021-10-12 Pure Storage, Inc. Login authentication in a cloud storage platform
US11954238B1 (en) 2018-07-24 2024-04-09 Pure Storage, Inc. Role-based access control for a storage system
US11860820B1 (en) 2018-09-11 2024-01-02 Pure Storage, Inc. Processing data through a storage system in a data pipeline
US10671302B1 (en) 2018-10-26 2020-06-02 Pure Storage, Inc. Applying a rate limit across a plurality of storage systems
US12026381B2 (en) 2018-10-26 2024-07-02 Pure Storage, Inc. Preserving identities and policies across replication
US11023179B2 (en) 2018-11-18 2021-06-01 Pure Storage, Inc. Cloud-based storage system storage management
US11526405B1 (en) 2018-11-18 2022-12-13 Pure Storage, Inc. Cloud-based disaster recovery
US12026060B1 (en) 2018-11-18 2024-07-02 Pure Storage, Inc. Reverting between codified states in a cloud-based storage system
US11340837B1 (en) 2018-11-18 2022-05-24 Pure Storage, Inc. Storage system management via a remote console
US10963189B1 (en) 2018-11-18 2021-03-30 Pure Storage, Inc. Coalescing write operations in a cloud-based storage system
US12026061B1 (en) 2018-11-18 2024-07-02 Pure Storage, Inc. Restoring a cloud-based storage system to a selected state
US11650749B1 (en) 2018-12-17 2023-05-16 Pure Storage, Inc. Controlling access to sensitive data in a shared dataset
US11003369B1 (en) 2019-01-14 2021-05-11 Pure Storage, Inc. Performing a tune-up procedure on a storage device during a boot process
US11042452B1 (en) 2019-03-20 2021-06-22 Pure Storage, Inc. Storage system data recovery using data recovery as a service
US11221778B1 (en) 2019-04-02 2022-01-11 Pure Storage, Inc. Preparing data for deduplication
US11068162B1 (en) 2019-04-09 2021-07-20 Pure Storage, Inc. Storage management in a cloud data store
US11327676B1 (en) 2019-07-18 2022-05-10 Pure Storage, Inc. Predictive data streaming in a virtual storage system
US11853266B2 (en) 2019-05-15 2023-12-26 Pure Storage, Inc. Providing a file system in a cloud environment
US11126364B2 (en) 2019-07-18 2021-09-21 Pure Storage, Inc. Virtual storage system architecture
US11392555B2 (en) 2019-05-15 2022-07-19 Pure Storage, Inc. Cloud-based file services
US12001355B1 (en) 2019-05-24 2024-06-04 Pure Storage, Inc. Chunked memory efficient storage data transfers
US11797197B1 (en) 2019-07-18 2023-10-24 Pure Storage, Inc. Dynamic scaling of a virtual storage system
US11487715B1 (en) 2019-07-18 2022-11-01 Pure Storage, Inc. Resiliency in a cloud-based storage system
US11093139B1 (en) 2019-07-18 2021-08-17 Pure Storage, Inc. Durably storing data within a virtual storage system
US11861221B1 (en) 2019-07-18 2024-01-02 Pure Storage, Inc. Providing scalable and reliable container-based storage services
US11422751B2 (en) 2019-07-18 2022-08-23 Pure Storage, Inc. Creating a virtual storage system
US11526408B2 (en) 2019-07-18 2022-12-13 Pure Storage, Inc. Data recovery in a virtual storage system
KR20210076497A (ko) * 2019-12-16 2021-06-24 에스케이하이닉스 주식회사 스토리지 장치 및 그 동작 방법
US11086553B1 (en) 2019-08-28 2021-08-10 Pure Storage, Inc. Tiering duplicated objects in a cloud-based object store
US11693713B1 (en) 2019-09-04 2023-07-04 Pure Storage, Inc. Self-tuning clusters for resilient microservices
US12045252B2 (en) 2019-09-13 2024-07-23 Pure Storage, Inc. Providing quality of service (QoS) for replicating datasets
US11360689B1 (en) 2019-09-13 2022-06-14 Pure Storage, Inc. Cloning a tracking copy of replica data
US11797569B2 (en) 2019-09-13 2023-10-24 Pure Storage, Inc. Configurable data replication
US11573864B1 (en) 2019-09-16 2023-02-07 Pure Storage, Inc. Automating database management in a storage system
US11669386B1 (en) 2019-10-08 2023-06-06 Pure Storage, Inc. Managing an application's resource stack
US11943293B1 (en) 2019-12-06 2024-03-26 Pure Storage, Inc. Restoring a storage system from a replication target
US11709636B1 (en) 2020-01-13 2023-07-25 Pure Storage, Inc. Non-sequential readahead for deep learning training
US11720497B1 (en) 2020-01-13 2023-08-08 Pure Storage, Inc. Inferred nonsequential prefetch based on data access patterns
US11733901B1 (en) 2020-01-13 2023-08-22 Pure Storage, Inc. Providing persistent storage to transient cloud computing services
US12014065B2 (en) 2020-02-11 2024-06-18 Pure Storage, Inc. Multi-cloud orchestration as-a-service
US11637896B1 (en) 2020-02-25 2023-04-25 Pure Storage, Inc. Migrating applications to a cloud-computing environment
US11868622B2 (en) 2020-02-25 2024-01-09 Pure Storage, Inc. Application recovery across storage systems
US12038881B2 (en) 2020-03-25 2024-07-16 Pure Storage, Inc. Replica transitions for file storage
US11321006B1 (en) 2020-03-25 2022-05-03 Pure Storage, Inc. Data loss prevention during transitions from a replication source
US11301152B1 (en) 2020-04-06 2022-04-12 Pure Storage, Inc. Intelligently moving data between storage systems
US11630598B1 (en) 2020-04-06 2023-04-18 Pure Storage, Inc. Scheduling data replication operations
US11494267B2 (en) 2020-04-14 2022-11-08 Pure Storage, Inc. Continuous value data redundancy
US11921670B1 (en) 2020-04-20 2024-03-05 Pure Storage, Inc. Multivariate data backup retention policies
US11431488B1 (en) 2020-06-08 2022-08-30 Pure Storage, Inc. Protecting local key generation using a remote key management service
US11442652B1 (en) 2020-07-23 2022-09-13 Pure Storage, Inc. Replication handling during storage system transportation
US11349917B2 (en) 2020-07-23 2022-05-31 Pure Storage, Inc. Replication handling among distinct networks
US12079222B1 (en) 2020-09-04 2024-09-03 Pure Storage, Inc. Enabling data portability between systems
RU2754601C1 (ru) * 2020-12-18 2021-09-03 Акционерное Общество "Крафтвэй Корпорэйшн Плс" Способ инкрементального сохранения
US20220197944A1 (en) * 2020-12-22 2022-06-23 Netapp Inc. File metadata service
US11397545B1 (en) 2021-01-20 2022-07-26 Pure Storage, Inc. Emulating persistent reservations in a cloud-based storage system
US11853285B1 (en) 2021-01-22 2023-12-26 Pure Storage, Inc. Blockchain logging of volume-level events in a storage system
US12086649B2 (en) 2021-05-12 2024-09-10 Pure Storage, Inc. Rebalancing in a fleet of storage systems using data science
US11816129B2 (en) 2021-06-22 2023-11-14 Pure Storage, Inc. Generating datasets using approximate baselines
CN113434506B (zh) * 2021-06-29 2023-05-16 平安科技(深圳)有限公司 数据管理及检索方法、装置、计算机设备及可读存储介质
US11714723B2 (en) 2021-10-29 2023-08-01 Pure Storage, Inc. Coordinated snapshots for data stored across distinct storage environments
US11914867B2 (en) 2021-10-29 2024-02-27 Pure Storage, Inc. Coordinated snapshots among storage systems implementing a promotion/demotion model
US11893263B2 (en) 2021-10-29 2024-02-06 Pure Storage, Inc. Coordinated checkpoints among storage systems implementing checkpoint-based replication
US11922052B2 (en) 2021-12-15 2024-03-05 Pure Storage, Inc. Managing links between storage objects
US11847071B2 (en) 2021-12-30 2023-12-19 Pure Storage, Inc. Enabling communication between a single-port device and multiple storage system controllers
US12001300B2 (en) 2022-01-04 2024-06-04 Pure Storage, Inc. Assessing protection for storage resources
US11860780B2 (en) 2022-01-28 2024-01-02 Pure Storage, Inc. Storage cache management
US11886295B2 (en) 2022-01-31 2024-01-30 Pure Storage, Inc. Intra-block error correction
US12019877B2 (en) * 2022-07-18 2024-06-25 Micron Technology, Inc. Metadata allocation in memory systems

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070168698A1 (en) * 2005-11-03 2007-07-19 Coulson Richard L Recovering from a non-volatile memory failure

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3715690B2 (ja) 1995-08-02 2005-11-09 キヤノン株式会社 マルチメディアデータファイリングシステム
KR100542572B1 (ko) 2003-02-10 2006-01-11 삼성전자주식회사 파일의 용량 및 메모리 잔량 디스플레이 장치 및 방법
KR100597411B1 (ko) * 2004-08-04 2006-07-05 삼성전자주식회사 파일의 효율적인 데이터 관리를 위한 방법 및 장치
KR20060039373A (ko) 2004-11-02 2006-05-08 삼성전자주식회사 데이터 보호시스템 및 그 방법
US7457910B2 (en) * 2005-06-29 2008-11-25 Sandisk Corproation Method and system for managing partitions in a storage device
US20070005874A1 (en) * 2005-07-01 2007-01-04 Dan Dodge File system storing transaction records in flash-like media
US7970803B2 (en) * 2005-07-01 2011-06-28 Qnx Software Systems Gmbh & Co. Kg Optimized startup verification of file system integrity
KR100739722B1 (ko) 2005-08-20 2007-07-13 삼성전자주식회사 플래시 메모리 관리 방법 및 플래시 메모리 시스템
KR100654462B1 (ko) * 2005-08-24 2006-12-06 삼성전자주식회사 캐쉬 메모리를 메모리 블록으로 나누어 파일의 데이터를저장하는 캐쉬 방법 및 캐쉬 시스템
US20070143378A1 (en) * 2005-12-21 2007-06-21 Gorobets Sergey A Non-volatile memories with adaptive file handling in a directly mapped file storage system
KR100714709B1 (ko) * 2006-01-11 2007-05-04 삼성전자주식회사 숨김 영역 관리 장치 및 방법
KR20070096429A (ko) * 2006-03-24 2007-10-02 부산대학교 산학협력단 빠른 마운팅을 지원하는 낸드 플래시 메모리에 적용되는파일시스템
US8151323B2 (en) * 2006-04-12 2012-04-03 Citrix Systems, Inc. Systems and methods for providing levels of access and action control via an SSL VPN appliance
US10291724B2 (en) * 2007-10-10 2019-05-14 Core Wireless Licensing S.A.R.L. Method, apparatus and computer program product for enabling access to a dynamic attribute associated with a service point
US8140746B2 (en) * 2007-12-14 2012-03-20 Spansion Llc Intelligent memory data management

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070168698A1 (en) * 2005-11-03 2007-07-19 Coulson Richard L Recovering from a non-volatile memory failure

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011095093A1 (zh) * 2010-02-08 2011-08-11 深圳市同洲电子股份有限公司 文件系统挂载方法、数据管理方法及相关装置
CN103067461A (zh) * 2012-12-18 2013-04-24 曙光信息产业(北京)有限公司 一种文件的元数据管理系统以及元数据管理方法
CN103067461B (zh) * 2012-12-18 2016-03-30 曙光信息产业(北京)有限公司 一种文件的元数据管理系统以及元数据管理方法
CN103310000A (zh) * 2013-06-25 2013-09-18 曙光信息产业(北京)有限公司 元数据管理方法
CN103310000B (zh) * 2013-06-25 2017-06-16 曙光信息产业(北京)有限公司 元数据管理方法
CN109407989A (zh) * 2018-10-18 2019-03-01 郑州云海信息技术有限公司 一种元数据刷写的方法和装置
CN109407989B (zh) * 2018-10-18 2022-02-18 郑州云海信息技术有限公司 一种元数据刷写的方法和装置

Also Published As

Publication number Publication date
US20090100115A1 (en) 2009-04-16
KR20090037705A (ko) 2009-04-16
KR101433859B1 (ko) 2014-08-27
CN101408880B (zh) 2014-06-11
TW200917031A (en) 2009-04-16
US7970806B2 (en) 2011-06-28

Similar Documents

Publication Publication Date Title
CN101408880B (zh) 使用分割文件元数据的文件管理方法和装置
US11520697B2 (en) Method for managing a memory apparatus
JP4633802B2 (ja) 不揮発性記憶装置及びデータ読み出し方法及び管理テーブル作成方法
CN1078364C (zh) 存储器管理方法
US10140026B2 (en) Data storage device and data maintenance method thereof
US9606746B2 (en) Shiftable memory supporting in-memory data structures
US8402202B2 (en) Input/output control method and apparatus optimized for flash memory
US8650379B2 (en) Data processing method for nonvolatile memory system
CN101147133A (zh) 闪速存储器中的直接文件数据编程及删除
KR100703807B1 (ko) 블록 방식의 메모리에서 데이터의 변경 유형에 따라 블록을관리하는 방법 및 장치
US8332575B2 (en) Data management systems, methods and computer program products using a phase-change random access memory for selective data maintenance
CN108345433B (zh) 用于最大化的可去重存储器的方法、存储器系统和产品
CN1936866A (zh) 具有资料还原功能的闪存记忆体存储机制
CN102306124A (zh) Nand Flash芯片硬件驱动层的实现方法
KR20080038368A (ko) 데이터 파일을 직접 저장하는 재프로그램가능 비휘발성메모리에 파일 데이터의 인덱싱
CN1542624A (zh) 一种在Flash文件系统中加快逻辑块映射速度的方法
US20060224817A1 (en) NOR flash file allocation
US20120072657A1 (en) System and method to write data using phase-change ram
KR100479170B1 (ko) 메모리 억세스 제어장치 및 방법
CN101297274A (zh) 用于实现命令同步以支持多线程非易失性存储器文件系统的方法
US8122183B2 (en) Data managing method for flash memory and flash memory device using the same

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140611

Termination date: 20150521

EXPY Termination of patent right or utility model