文件存储系统及其文件存储控制方法技术方案

技术编号:13330351 阅读:82 留言:0更新日期:2016-07-11 20:44
一种文件存储系统及其文件存储控制方法,所述文件存储系统包括第一存储器、第二存储器以及控制单元;第一存储器为采用整块读写的非易失性存储器,第二存储器为支持随机存储的非易失性存储器,第二存储器比第一存储器具有更长的使用寿命以及同等或更快的读写速度;第二存储器包括第一存储区域,用于存储记录有文件相关信息的文件目录,所述文件相关信息包括文件存储所使用的存储块和页;所述控制单元用于在执行文件创建并发生数据写入操作时,将所述第一存储器中的一个空闲存储块分配给该文件,并在数据写入完成后更新存储于所述第一存储区域的文件目录。本发明专利技术技术方案既能降低文件碎片化以提高系统性能或延长存储器寿命,又能节省内存空间。

【技术实现步骤摘要】

本专利技术涉及文件存储
,特别涉及一种文件存储系统及其文件存储控制方法
技术介绍
现在计算机、智能手机、平板电脑中,用户数据、文件被存在硬盘,或者NAND闪存芯片中以及由NAND闪存组成的固态硬盘(SSD,SolidStateDrives)里。NAND和固态硬盘取代传统的机械硬盘又是一个产业发展的大趋势。NAND是一种整块读写的存储设备(blockdevice),最小可读取的单元叫页(page),最小可擦除的单元叫存储块或区块(block),一个block往往由很多page组成,block擦除后里面的page可以进行单独的写入(program)操作。可以参阅图1,在软件层面,手机和计算机中文件存储的架构一般如下:应用软件向操作系统发出打开、关闭、读、写文件指令;操作系统中的文件系统部分把读、写文件的指令转化为读、写存储块的指令;NAND驱动与管理软件接受读写存储块区的指令,进行缓存、写均衡等优化,向芯片发出读page、写block等指令;具体地,在手机中,NAND读写软件通常作为跟操作系统紧密相关的软件模块,在主控芯片上运行;在计算机中,NAND读写软件通常在固态硬盘控制器(SSDController)上运行。文件系统是操作系统软件中的一个重要部分,负责解决文件的存储问题。它会把文件划分成一个个的块,一般每一个块和NAND闪存中的一个page对应。每当一个新文件创建,文件系统会分配给它一个块,当一个块写满后,再分配一个新的块。由于系统中很多文件都在增长,一个文件中的不同的块常常地址不连续,这就叫文件的碎片化。并且,一个文件删除后,释放出的空闲块会被新的文件占用。所以,随着产品的使用,文件的碎片化会越来越严重。NAND闪存技术的发展推动了SSD产业。通常,SSD的结构如图2所示,SSD与主机之间使用高速串行接口如SATA、PICe等技术,SSD内部由用于存储数据的一组NAND芯片(即图2所示的NAND库),用于支持计算和缓存数据的内存(DDRDRAM),以及一个主控芯片(SSDController)组成。有时候还需要断电保护系统。多媒体卡(eMMC,EmbeddedMultiMediaCard)和安全数字存储卡(SD,SecureDigitalMemoryCard)等各种存储卡的架构与SSD类似,差别在于与主机接口的协议不同,且通常不用DRAM,而用少量集成在主控芯片(controller)内部的SRAM。NAND闪存的一个问题是其具有有限的寿命。NAND闪存里面的每一个page经过一定次数的擦写以后,就会永久失效不能继续使用。目前的产业发展趋势是NAND的容量和数据密度增长非常快,但却是以降低寿命为代价,可擦写次数从最初的10万次降低到目前的3000次左右。因为NAND闪存的以上特性,SSD内部的NAND管理软件比较复杂。为了不使某些经常发生写操作的块提前损坏,需要进行写均衡处理。文件系统软件所识别的逻辑地址和物理地址是不同的,需要一个表把二者对应起来。由于NAND擦除太慢,一般修改一内容时不在原来的块区更新,而是把新的内容写到一个新的块区,将旧块区标记为无效,等CPU空闲下来再擦除它。这样,逻辑地址与物理地址之间的对照表(逻辑-物理地址对照表)是不断动态更新的。这个表正比于SSD的总容量,存在DDRDRAM里,另外在NAND里面也有相应的标记。随着市场上SSD容量的迅速增加,这个表成为DRAM最大的消耗者。由于NAND的读写速度比DRAM慢得多,还可以利用一部分DRAM空间作读、写的缓存(Cache),提高整个SSD的性能。然而,引入写缓存产生了新的问题:一旦发生断电,DRAM缓存中尚未写入NAND的内容会丢失,造成系统丢失数据甚至整个文件系统的损坏。所以必须同时使用昂贵的、体积大的断电保护系统(一般由电池或者大量的电容器组成)。而逻辑-物理地址对照表,在发生断电后,是可以利用NAND中的数据重新构造的,尽管很费时间。NAND闪存一般在出厂时就有一些损坏的块,所以所有的NAND都伴随着一个坏块表,一般会被存储在NAND的指定区域或者在坏块上做标记。所以,一般NAND厂家提供的产品容量都大于标定值,留有一些备份块。NAND在使用过程中坏块可能还会不断出现。最常见的情况下是在写入或擦除时,芯片的状态显示可能会表示写入、擦除失败。此时NAND管理软件应该找到一个替代块,重新写入数据。较少的情况下,读出时也会因为纠错和校验而失败,此时数据通常能够通过多次重复读来恢复,但NAND管理软件可能会寻找替代块把数据转存过去。如果使用传统的机械硬盘存储文件,文件的碎片化是一个大问题,因为机械硬盘的磁头在寻找新的地址块时需要很长的时间,文件碎片化将导致系统的性能显著降低。如果使用NAND存储文件,虽然寻找新地址的时间基本不是问题,文件碎片化对系统性能的影响也比较小,但文件碎片化对NAND的使用寿命还是有很大影响的。另外,现在的NAND管理方式,要求SSD和存储卡等块存储设备维持一张逻辑页/物理页的对照表,这个对照表会消耗相当大的内存空间。
技术实现思路
本专利技术要解决的问题是因现有技术存储文件所产生的文件碎片化而导致的系统性能降低或存储器寿命缩短,以及维护逻辑页/物理页的对照表所导致的巨大内存消耗。为解决上述问题,本专利技术技术方案提供一种文件存储系统,包括:第一存储器、第二存储器以及控制单元;所述第一存储器为采用整块读写的非易失性(NV,NotVolatile)存储器,所述第二存储器为支持随机存储的非易失性存储器,所述第二存储器比所述第一存储器具有更长的使用寿命以及同等或更快的读写速度;所述第二存储器包括第一存储区域,所述第一存储区域用于存储记录有文件相关信息的文件目录,所述文件相关信息包括文件存储所使用的存储块和页;所述控制单元用于在执行文件创建并发生数据写入操作时,将所述第一存储器中的一个空闲存储块分配给该文件,并在数据写入完成后更新存储于所述第一存储区域的文件目录。可选的,所述第二存储器还包括第二存储区域,所述第二存储区域用于文件读/写操作时的缓存。可选的,所述文件目录中的每一个条目记录一个文件的文件相关信息,各个条目记录最先的m个存储块以及每个存储块中最先的n个页相应的信息,其他页的信息存储在这n个页中。可选的,所述文件目录还包括指向指针,用于在文件存储所使用存储本文档来自技高网
...

【技术保护点】
一种文件存储系统,其特征在于,包括:第一存储器、第二存储器以及控制单元;所述第一存储器为采用整块读写的非易失性存储器,所述第二存储器为支持随机存储的非易失性存储器,所述第二存储器比所述第一存储器具有更长的使用寿命以及同等或更快的读写速度;所述第二存储器包括第一存储区域,所述第一存储区域用于存储记录有文件相关信息的文件目录,所述文件相关信息包括文件存储所使用的存储块和页;所述控制单元用于在执行文件创建并发生数据写入操作时,将所述第一存储器中的一个空闲存储块分配给该文件,并在数据写入完成后更新存储于所述第一存储区域的文件目录。

【技术特征摘要】
1.一种文件存储系统,其特征在于,包括:
第一存储器、第二存储器以及控制单元;
所述第一存储器为采用整块读写的非易失性存储器,所述第二存储器为
支持随机存储的非易失性存储器,所述第二存储器比所述第一存储器具有更
长的使用寿命以及同等或更快的读写速度;
所述第二存储器包括第一存储区域,所述第一存储区域用于存储记录有
文件相关信息的文件目录,所述文件相关信息包括文件存储所使用的存储块
和页;
所述控制单元用于在执行文件创建并发生数据写入操作时,将所述第一
存储器中的一个空闲存储块分配给该文件,并在数据写入完成后更新存储于
所述第一存储区域的文件目录。
2.根据权利要求1所述的文件存储系统,其特征在于,所述第二存储器还包
括第二存储区域,所述第二存储区域用于文件读/写操作时的缓存。
3.根据权利要求1所述的文件存储系统,其特征在于,所述文件目录中的每
一个条目记录一个文件的文件相关信息,各个条目记录最先的m个存储块以
及每个存储块中最先的n个页相应的信息,其他页的信息存储在这n个页中。
4.根据权利要求3所述的文件存储系统,其特征在于,所述文件目录还包括
指向指针,用于在文件存储所使用存储块的数量大于m时,指向记录有该文
件后续所使用存储块和页的位置,该位置存储有该文件后续所使用的m个存
储块以及每个存储块中最先的n个页相应的信息。
5.根据权利要求1所述的文件存储系统,其特征在于,所述第二存储器还包
括第三存储区域,所述第三存储区域用于存储由所有空闲存储块的相应信息
所建立的空闲块信息链表,新释放的存储块的相应信息位于所述空闲块信息
链表的尾部,待分配的存储块的相应信息位于所述空闲块信息链表的头部。
6.根据权利要求1所述的文件存储系统,其特征在于,所述控制单元按顺序
分配已被分配的存储块内的空闲页;所述第二存储器还包括第四存储区域,
所述第四存储区域用于存储每一个已被分配的存储块中第一个空闲页以及所

\t有无效页相应信息。
7.根据权利要求1所述的文件存储系统,其特征在于,所述第二存储器为
MRAM,所述第一存储器为NAND闪存或固态硬盘。
8.根据权利要求1所述的文件存储系统,其特征在于,所述第二存储器通过
标准内存接口与所述控制单元相连。
9.根据权利要求1所述的文件存储系统,其特征在...

【专利技术属性】
技术研发人员:戴瑾
申请(专利权)人:上海磁宇信息科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1