使用非易失随机读写存储芯片动态管理文件存储区的方法_2

文档序号:9865135阅读:来源:国知局
及子存储区中的存储块信息;
[0028](24)解锁文件。
[0029]进一步地,步骤(3)检查g*l个存储块中的每一个存储块,如果存储块中已存储数据,将数据移至第1-ι个子存储区中g*l个存储块之外的空闲存储块中的方法包括以下步骤:
[0030](31)等待存储块中的数据对应的文件读写操作完成后,锁定文件;
[0031 ] (32)将存储块中的数据拷贝到第1-1个子存储区中g*l存储块之外的一个空闲存储块中;
[0032](33)更新文件目录区中文件对应的子存储区以及子存储区中的存储块信息;
[0033](34)解锁文件。
[0034]进一步地,步骤(I)中第i个子存储区需要动态调整的条件为:第i个子存储区中的空闲存储块的数量少于设定值。
[0035]本发明还提供一种利用MRAM存储小文件的存储结构,包括块存储设备与MRAM,MRAM包括文件存储区、文件目录区以及管理区,文件存储区用于存储小文件,文件存储区由N个地址连续并且相连接的子存储区组成,每个子存储区由相同大小的存储块组成,文件目录区记录每个文件对应的子存储区以及子存储区中的存储块信息,管理区存储子存储区的信息;文件存储区中相邻的子存储区采用上述使用非易失随机读写存储芯片动态管理文件存储区的方法进行管理。
[0036]这里小文件是指文件大小小于或等于块存储设备的一个页的文件。本发明中,采用MRAM协同NAND闪存或者硬盘等块设备一起存储文件,利用成本更低的块设备存储大文件,利用能够随机读写的MRAM存储小文件。
[0037]进一步地,存储结构和块存储设备一起用于存储文件,子存储区的最大的存储块的容量,小于或等于块存储设备的存储块的容量。
[0038]进一步地,创建文件时在合适的子存储区中选择一个空闲存储块分配给文件,合适的子存储区是指子存储区的存储块是能够容纳文件的最小的存储块。
[0039]进一步地,创建文件时在文件存储区中找不到合适的子存储区,将文件交给下一级软件处理。
[0040]由下一级软件决定存入缓存、直接写入块存储设备,或做其他处理。本发明的软件涉及对计算机文件系统的修改,如图1所示,文件系统的下一级软件是指NAND管理软件。由于有可能存在缓存机制。所以交给下一级软件处理不一定马上写回到NAND中,也可能留在MRAM的写缓存中。[0041 ]进一步地,文件修改后,如果文件的大小大于对应的子存储区的存储块的容量,在下一个子存储区中选择一个空闲存储块分配给文件,并释放对应的子存储区的存储块,如果所有后面的子存储区中都找不到空闲存储块,将文件交给下一级软件处理。
[0042]进一步地,文件修改后,如果文件的大小小于或等于对应的子存储区的上一个子存储区的存储块的容量,在上一个子存储区中选择一个空闲存储块分配给文件,并释放对应的子存储区的存储块。
[0043]在修改文件时,首先需要擦除的存储块较小,能够降低系统的负担;其次修改操作是在MRAM中完成,而不是在硬盘或NAND中完成,在MRAM中操作要比在硬盘或NAND中快得多,整个系统的性能会因此提升。另外减少了对块存储设备的写入,延长了系统寿命。
[0044]进一步地,文件存储区还用于存储大文件的尾页。这里大文件是指文件大小大于或等于块存储设备的一个页的文件,通常需要占用很多页的文件。有些大文件,例如日志文件,修改发生在大文件的尾页,使用MRAM中的文件存储区存储大文件的尾页,修改操作是在MRAM中完成,而不是在块存储设备中完成,进一步减少了对块存储设备的写入,延长了系统寿命O
[0045]与现有技术相比,本发明提供的使用非易失随机读写存储芯片动态管理文件存储区的方法以及利用MRAM存储小文件的存储结构,具有以下有益效果:
[0046](I)存储小文件采用的存储块的容量小于块存储设备的块的容量,因而能够提高存储空间的利用率;
[0047](2)相邻的子存储区采用上述使用非易失随机读写存储芯片动态管理文件存储区的方法进行管理,当一个子存储区的存储块用完或空闲存储块的数量少于设定值时,征用相邻的子存储区的存储空间,根据应用环境能够动态调整子存储区的存储块的数量,从而能够提尚存储空间的利用率;
[0048](3)在修改文件时,首先需要擦除的块较小,能够降低系统的负担;其次修改操作是在MRAM中完成,而不是在块存储设备中完成,在MRAM中操作要比在块存储设备中快得多,整个系统的性能会因此提升;
[0049](4)文件存储区还用于存储大文件的尾页,进一步减少了对块存储设备的写入,延长了系统寿命。
[0050]以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。
【附图说明】
[0051 ]图1是现有技术中文件操作流程图;
[0052]图2是本发明的一个实施例的利用MRAM存储小文件的存储结构的示意图;
[0053]图3是本发明的另一个实施例的利用MRAM存储小文件的存储结构的示意图。
【具体实施方式】
[0054]如图2所示,本发明的一个实施例的利用MRAM存储小文件的存储结构,包括MRAM与块存储设备,块存储设备为手机中的NAND闪存或计算机中的硬盘、固态硬盘(SSD)。
[0055]MRAM通过DDR DRAM接口与手机的主控芯片或计算机的CPU连接。
[0056]以下涉及对操作系统软件中文件系统的修改:
[0057]利用MRAM存储小文件的存储结构,包括块存储设备与MRAM,MRAM包括文件存储区、文件目录区以及管理区,文件存储区用于存储小文件,文件存储区由N个地址连续并且相连接的子存储区组成,每个子存储区由相同大小的存储块组成,文件目录区记录每个文件对应的子存储区以及子存储区中的存储块信息,管理区存储子存储区的信息;第i+Ι个子存储区与第i个子存储区的存储块的容量的比为不等于I的整数比,其中i为子存储区序号,I Si<N0
[0058]小文件是文件大小可以从10_20byte到几百个字节。具体文件大小为多少字节属于小文件,可根据不同的情况设定。设置不同存储块容量的子存储区,能够将不同大小的文件存储在不同存储块容量的子存储区,进一步提高的存储空间的利用率,降低系统的负担。
[0059]本实施例中,文件存储区划分成N个子存储区,每个子存储区由相同大小的存储块组成,第I个子存储区的存储块的容量最小,第2个子存储区的存储块的容量是第I个子存储区的2倍,第3个子存储区的存储块的容量是第2个存储区的2倍,以此类推,第N个子存储区由容量最大的存储块组成,最大存储块的容量应当小于或等于一个NAND页。
[0060]也就是m>n,m:η = 2:1,本实施例中,子存储区的存储块的容量由小到大,第i+Ι个子存储区与第i个子存储区的存储块的容量的比为m:n,m:n为相同的值2:1。
[0061]如果m〈n,第I个子存储区由容量最大的存储块组成,也就是子存储区的存储块的容量由大到小。当然子存储区的存储块的容量也可以不是由小到大或由大到小。
[0062]存储块的容量最小的子存储区,存储块容量选择128byte或者256byte比较合适,开始的几个子存储区,下一个存储区的存储块的容量应
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1