CN103257928A - 闪存设备数据管理方法和系统 - Google Patents

闪存设备数据管理方法和系统 Download PDF

Info

Publication number
CN103257928A
CN103257928A CN2013101321096A CN201310132109A CN103257928A CN 103257928 A CN103257928 A CN 103257928A CN 2013101321096 A CN2013101321096 A CN 2013101321096A CN 201310132109 A CN201310132109 A CN 201310132109A CN 103257928 A CN103257928 A CN 103257928A
Authority
CN
China
Prior art keywords
data
certain page
writing
identifier
mapping tables
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
CN2013101321096A
Other languages
English (en)
Other versions
CN103257928B (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.)
Shenzhen Netcom Electronics Co Ltd
Original Assignee
Shenzhen Netcom 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 Shenzhen Netcom Electronics Co Ltd filed Critical Shenzhen Netcom Electronics Co Ltd
Priority to CN201310132109.6A priority Critical patent/CN103257928B/zh
Publication of CN103257928A publication Critical patent/CN103257928A/zh
Application granted granted Critical
Publication of CN103257928B publication Critical patent/CN103257928B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种闪存设备数据管理方法和系统。所述方法包括:将闪存设备的存储区域划分为公共存储区域和私有存储区域,所述私有存储区域用来存储数据映射表;当对所述公共存储区域的某页或多页的写入数据完全相同时,则将所述某页或多页的写入数据标示虚拟写标识符,获取相同数据,将所述相同数据转化为对应的数据值位,并将所述虚拟写标识符及对应的数据值位记录在所述数据映射表内;当对所述公共存储区域的某页的写入数据不相同时,则将所述写入数据实际写入对应的所述公共存储区域的某页内。上述闪存设备数据管理方法和系统,减少了数据的写入,提高了写入数据的效率,节省了写入数据的时间,且节省了公共存储区域的空间。

Description

闪存设备数据管理方法和系统
技术领域
本发明涉及存储设备领域,特别是涉及一种闪存设备数据管理方法和系统。
背景技术
闪存设备包括SD(Secure Digital Memory Card,安全数码卡)卡、固态硬盘、U盘等,其在日常生活中应用越来越普遍,它的写入、擦除速度成为衡量闪存设备性能的重要指标,提高闪存设备的写擦除速度将大大提高数据处理效率,有利于扩展闪存设备的应用。闪存设备包括控制器、存储模块,存储模块中页是最小的读写单位,块是最小的擦除单位。
以FAT文件系统的闪存设备为例,FAT文件系统分为FAT区域、目录区域、数据区域。
FAT区域最重要的是FAT分配表,它包括数据存取的链接表,指示簇是如何存储的,具体指每个文件在闪存设备中存储器分布的每个簇的地址关系,链接表同时记录逻辑地址与物理地址之间的映射关系,每次对闪存的读写、擦除等操作都将更新链接表。
目录区域是在根目录中存储文件和目录信息的目录表,目录表里面保存每个文件或目录使用的条目。每个条目记录名字、扩展名、属性、创建日期、文件/目录数据第一个簇的地址,最后是文件/目录的大小等信息。
数据区域是实际的文件和目录数据存储的区域。
当存储文件时,操作系统首先在目录区中找到空区写入文件名、大小和创建时间等相应信息,然后在数据区找到闲置空间将文件保存,并将数据区域的第一个簇写入目录区,同时将文件的链接表存储在FAT区。
由于闪存设备的上述特性,删除闪存设备中某文件的数据,并不是在闪存设备的物理块上直接将该文件数据删除,而是将该文件目录名的第一个字节变更为E5h(该标记的意思是表示该数据是无效数据),之后在FAT表中删除该文件的链表,数据本身并没有被清除。此时用户查看闪存中的数据时,被删除的上述文件数据是显示为已经被删除,但此文件数据实际上还存在闪存设备的物理块中,并未删除,是因为在闪存FAT区中,该文件数据的相关链表信息被删除,目录项标示为无效,从而被操作系统认为是无效数据,不显示给用户。
现有技术中向闪存设备中写入数据的步骤为:操作系统预将待写数据到闪存设备内某块时,当某块(此块称为被交换块)内有部分页的数据是有效的,有部分页的数据是无效时,首先找一个交换块将被交换块内的所有数据搬移到交换块内,之后再将待写数据写到被交换块内相应的页。
在此写入过程中,由于已删除的数据一直存在闪存设备内,对操作系统来说,这些数据是被删除的无效数据,然而闪存设备的控制器却不能识别其内存储的数据哪些已经被用户删除,是无效数据,哪些是有效数据。故在搬移数据的时候,控制器仍然将无效数据搬到交换块上,在这个过程中无效数据也被搬移,从而导致整个过程非常耗时,影响数据的写入效率,还增加了对闪存设备的磨损。
发明内容
基于此,有必要针对现有技术中闪存设备的数据写入效率低的问题,提供一种能提高数据写入效率的闪存设备数据管理方法。
此外,还有必要针对现有技术中闪存设备的数据写入效率低的问题,提供一种能提高数据写入效率的闪存设备数据管理系统。
一种闪存设备数据管理方法,包括:
将闪存设备的存储区域划分为公共存储区域和私有存储区域,所述私有存储区域用来存储数据映射表;
当对所述公共存储区域的某页或多页的写入数据完全相同时,则将所述某页或多页的写入数据标示虚拟写标识符,获取相同数据,将所述相同数据转化为对应的数据值位,并将所述虚拟写标识符及对应的数据值位记录在所述数据映射表内;
当对所述公共存储区域的某页的写入数据不相同时,则将所述写入数据实际写入对应的所述公共存储区域的某页内。
在其中一个实施例中,所述方法还包括:
当对所述公共存储区域的某页的写入数据不相同时,将所述某页的写入数据标示实际写标识符,并将所述实际写标识符记录在所述数据映射表内。
在其中一个实施例中,所述方法还包括:
当读取某页内的数据时,读取所述数据映射表;
判断所述某页对应的数据映射表内是否有虚拟写标识符,若有,则获取所述虚拟写标识符对应的数据值位,将所述数据值位转化为对应的相同数据,返回所述对应的相同数据,若无,则从所述公共存储区域的某页内获取数据,并返回所述数据。
在其中一个实施例中,所述方法还包括:
当擦除某页内的数据时,判断所述某页对应的数据映射表内是否有虚拟写标识符或实际写标识符;
若有,则将所述某页对应的数据映射表内的虚拟写标识符或实际写标识符删除,并重新标示无效标识符;
若无,则直接在所述某页对应的数据映射表内标示无效标识符;
更新所述数据映射表。
在其中一个实施例中,所述方法还包括:
当对所述某页再次写入数据且识别到所述某页对应的数据映射表中有无效标识符时,直接擦除所述无效标识符对应的无效数据。
一种闪存设备数据管理系统,包括:
划分模块,用于将闪存设备的存储区域划分为公共存储区域和私有存储区域,所述私有存储区域用来存储数据映射表;
标记处理模块,用于当对所述公共存储区域的某页或多页的写入数据完全相同时,则将所述某页或多页的写入数据标示虚拟写标识符,获取相同数据,将所述相同数据转化为对应的数据值位,并将所述虚拟写标识符及对应的数据值位记录在所述数据映射表内;
写入模块,用于当对所述公共存储区域的某页的写入数据不相同时,则将所述写入数据实际写入对应的所述公共存储区域的某页内。
在其中一个实施例中,所述标记模块还用于当对所述公共存储区域的某页的写入数据不相同时,将所述某页的写入数据标示实际写标识符,并将所述实际写标识符记录在所述数据映射表内。
在其中一个实施例中,所述系统还包括:
读取模块,用于当读取某页内的数据时,读取所述数据映射表;
第一判断模块,用于判断所述某页对应的数据映射表内是否有虚拟写标识符;
返回模块,用于当所述某页对应的数据映射表内有虚拟写标识符时,获取所述虚拟写标识符对应的数据值位,将所述数据值位转化为对应的相同数据,返回所述对应的相同数据,以及当所述某页对应的数据映射表内无虚拟写标识符时,从所述公共存储区域的某页内获取数据,并返回所述数据。
在其中一个实施例中,所述系统还包括:
第二判断模块,用于当擦除某页内的数据时,判断所述某页对应的数据映射表内是否有虚拟写标识符或实际写标识符;
无效标示模块,用于当所述某页对应的数据映射表内有虚拟写标识符或实际写标识符时,将所述某页对应的数据映射表内的虚拟写标识符或实际写标识符删除,并重新标示无效标识符,以及当所述某页对应的数据映射表内无虚拟写标识符和实际写标识符时,直接在所述某页对应的数据映射表内标示无效标识符;
更新模块,用于更新所述数据映射表。
在其中一个实施例中,所述系统还包括:
删除模块,用于当对所述某页再次写入数据且识别到所述某页对应的数据映射表中有无效标识符时,直接擦除所述无效标识符对应的无效数据。
上述闪存设备数据管理方法和系统,当某页或多页内写入数据相同时,仅需给某页或多页内数据标示虚拟写标识符,并获取相同数据,将相同数据转换为对应的数据值位,将虚拟写标识符及对应的数据值位记录在数据映射表内,不需将数据真实写入到公共存储区域的相应的页内,减少了数据的写入,提高了写入数据的效率,节省了写入数据的时间,且节省了公共存储区域的空间。
附图说明
图1为一个实施例中闪存设备数据管理方法的流程图;
图2为一个实施例中读取数据的流程图;
图3为一个实施例中无效公共存储区域内数据的流程图;
图4为一个实施例中闪存设备数据管理系统的结构示意图;
图5为另一个实施例中闪存设备数据管理系统的结构示意图;
图6为又一个实施例中闪存设备数据管理系统的结构示意图。
具体实施方式
下面结合具体的实施例及附图对闪存设备数据管理方法和系统的技术方案进行详细的描述,以使其更加清楚。
如图1所示,在一个实施例中,一种闪存设备数据管理方法,包括:
步骤S102,将闪存设备的存储区域划分为公共存储区域和私有存储区域,该私有存储区域用来存储数据映射表。
其中,公共存储区域用来存储写入数据。私有存储区域用来存储数据映射表以及公共存储区域内各块或各页存储数据的属性,该属性可包括数据大小、数据是否相同等。数据映射表用来记录公共存储区域内数据相应的标识符,若某页或多页的数据完全相同,则标示该相同页的数据为虚拟写标识符,若某页内的数据不同,则标示该某页的数据为实际写标识符。此外,数据映射表还用于记录标识符与页之间的映射关系、公共存储区域内哪些页有数据或无数据等。
私有存储区域内的数据是根据公共存储区域内的数据变化做相应的变化,未经授权时,用户不能向该私有存储区域存储数据或修改数据。当公共存储区域内的数据发生变化时,获取授权的用户可对私有存储区域内的数据进行变更,如对数据映射表进行修改、删除或擦除等操作。
步骤S104,当对该公共存储区域的某页或多页的写入数据完全相同时,则将该某页或多页的写入数据标示虚拟写标识符,获取相同数据,将所述相同数据转化为对应的数据值位,并将该虚拟写标识符及对应的数据值位记录在该数据映射表内。
具体的,当对L0页内写入数据全为00,则在该数据映射表内L0页数据的标记符设置为相同数据标记符,即虚拟写标识符,例如相同数据标记符可以设置为1,并将相同数据转换为对应的数据值位,在数据映射表中记录虚拟写标识符及对应的数据值位,该数据值位可与相同数据相同,即为00,也可不同,如相同数据00转换为对应的数据值位为0;当对L1页内写入数据全为01,则在该数据映射表内L1页数据的标记符设置为相同数据标记符,例如相同数据标记符可设置为1,并将相同数据转换为对应的数据值位,在数据映射表中记录虚拟写标识符及对应的数据值位,该数据值位可与相同数据相同,即为01,也可不同,如相同数据01转换为对应的数据值位为1。本实施例中,因设置相同数据标记符1表示有一页或多页的数据内容相同,相同的数据为数据值位的数据,即00或01。该00未写入到公共存储区域L0页,该01未写入到公共存储区域L1页内,即虚拟写,故将该某页或多页的写入数据标示虚拟写标识符。
另外,闪存设备中读写数据的最小单位为页,擦除最小单元为块,故数据映射表中可以以页为单位,也可以以块为单元建立映射关系,即标识符可表示一页或多页、一块或多块内数据的属性。
步骤S106,当对该公共存储区域的某页的写入数据不相同时,则将该写入数据实际写入对应的该公共存储区域的某页内。
具体的,当对L2页的写入数据不相同时,将该不相同的数据写入到公共存储区域的L2页内。
此外,当对该公共存储区域的某页的写入数据不相同时,将该某页的写入数据标示实际写标识符,并将该实际写标识符记录在该数据映射表内。例如对L2页写入数据不相同时,可将L2页数据的标记符设置为不同数据标记符,例如可以设置为0,其数据值位为空或者其它无意义的符号,如“#”等。因某页的写入数据不同时,需要将数据实际写入到对应的公共存储区域的某页内,故将该某页的写入数据标示实际写标识符,可设置实际写标识符所对应的数据值位,该数据值位为空或其它无意义的符号。此外,写入数据不同时,也可只需标示实际写标识符,不需设置数据值位。
上述闪存设备数据管理方法,当某页或多页内写入数据相同时,仅需给某页或多页内数据标示虚拟写标识符,并获取相同数据,将相同数据转换为对应的数据值位,将虚拟写标识符及对应的数据值位记录在数据映射表内,不需将数据真实写入到公共存储区域的相应的页内,减少了数据的写入,提高了写入数据的效率,节省了写入数据的时间,且节省了公共存储区域的空间。
进一步的,如图2所示,在一个实施例中,上述闪存设备数据管理方法,还包括读取数据的步骤,具体包括:
步骤S202,当读取某页内的数据时,读取该数据映射表。
具体的,当主机读取闪存设备内的数据时,首先读取私有存储区域内的数据映射表,判断某页在数据映射表中是否有虚拟写标识符,若有,则获取虚拟写标识符对应的数据值位,将数据值位转化为对应的相同数据,将该相同数据返回给主机,若无,则从公共存储区域内的某页内获取数据,然后将该数据返回给主机。
步骤S204,判断该某页对应的数据映射表内是否有虚拟写标识符,若有,执行步骤S206,若无,执行步骤S208。
步骤S206,获取虚拟写标识符对应的数据值位,将数据值位转化为对应的相同数据,返回对应的相同数据。
例如L0的虚拟写标识符为1,获取L0的虚拟标识符对应的数据值位00,将数据值位00转换为对应的相同数据00,将相同数据00返回给主机。
此外,因闪存的页的容量固定,如页容量为4KB,数据值位为0,对应的相同数据为00,读数据时将数据值位0转化为相同数据00,相同数据00只占2字节,而页容量为4KB,需将该相同数据转化为4KB字节大小的等值数据,即将00复制成4KB大小,然后将该4KB容量内的所有数据返回给主机。
步骤S208,从该公共存储区域的某页内获取数据,并返回该数据。
上述闪存设备管理方法中读取数据时,首先读取数据映射表,判断在数据映射表中是否有读取的页的虚拟写标识符,若有,则获取虚拟标识符对应的数据值位,将该数据值位转化为对应的相同数据,并返回该相同数据,减少了从公共存储区域内某页读取数据的寻址时间,提高了读取数据的速度。
进一步的,如图3所示,在一个实施例中,上述闪存设备数据管理方法,还包括无效公共存储区域内数据的步骤,具体包括:
步骤S302,当擦除某页内的数据时,判断该某页对应的数据映射表内是否有虚拟写标识符或实际写标识符,若有,执行步骤S304,若无,执行步骤S306。
步骤S304,将该某页对应的数据映射表内的虚拟写标识符或实际写标识符删除,并重新标示无效标识符,再执行步骤S308。
步骤S306,直接在该某页对应的数据映射表内标示无效标识符。
步骤S308,更新该数据映射表。
上述闪存设备数据管理方法,通过在某页对应的数据映射表内删除已有的虚拟写标识符或实际写标识符,标示无效标识符,即标示该某页内的数据为无效数据,该标记操作简单,快速,相比于传统将闪存设备恢复到出厂时的读写性能需使用专用的硬件复位,或使用Trim和Erase命令删除全盘数据,速度快。
进一步的,在一个实施例中,上述闪存设备数据管理方法,还包括:当对该某页再次写入数据且识别到该某页对应的数据映射表中有无效标识符时,直接擦除该无效标识符对应的无效数据,再写入数据。
数据映射表中有无效标识符,可直接擦除该无效数据,不需进行数据搬移操作,节省了搬移无效数据的时间,也省略了寻址的时间,节省了写入数据的时间,减少了对闪存设备的摩擦,提高了闪存的使用寿命。
如图4所示,在一个实施例中,一种闪存设备数据管理系统,包括划分模块420、标记处理模块440和写入模块460。其中:
划分模块420,用于将闪存设备的存储区域划分为公共存储区域和私有存储区域,该私有存储区域用来存储数据映射表。
其中,公共存储区域用来存储写入数据。私有存储区域用来存储数据映射表以及公共存储区域内各块或各页存储数据的属性,该属性可包括数据大小、数据是否相同等。数据映射表用来记录公共存储区域内数据相应的标识符,若某页或多页的数据完全相同,则标示该相同页的数据为虚拟写标识符,若某页内的数据不同,则标示该某页的数据为实际写标识符。此外,数据映射表还用于记录标识符与页之间的映射关系、公共存储区域内哪些页有数据或无数据等。
私有存储区域内的数据是根据公共存储区域内的数据变化做相应的变化,未经授权时,用户不能向该私有存储区域存储数据或修改数据。当公共存储区域内的数据发生变化时,获取授权的用户可对私有存储区域内的数据进行变更,如对数据映射表进行修改、删除或擦除等操作。
标记处理模块440,用于当对该公共存储区域的某页或多页的写入数据完全相同时,则将该某页或多页的写入数据标示虚拟写标识符,获取相同数据,将所述相同数据转化为对应的数据值位,并将该虚拟写标识符及对应的数据值位记录在该数据映射表内。
具体的,当对L0页内写入数据全为00,则在该数据映射表内L0页数据的标记符设置为相同数据标记符,即虚拟写标识符,例如相同数据标记符可以设置为1,并将相同数据转换为对应的数据值位,在数据映射表中记录虚拟写标识符及对应的数据值位,该数据值位可与相同数据相同,即为00,也可不同,如相同数据00转换为对应的数据值位为0;当对L1页内写入数据全为01,则在该数据映射表内L1页数据的标记符设置为相同数据标记符,例如相同数据标记符可设置为1,并将相同数据转换为对应的数据值位,在数据映射表中记录虚拟写标识符及对应的数据值位,该数据值位可与相同数据相同,即为01,也可不同,如相同数据01转换为对应的数据值位为1。本实施例中,因设置相同数据标记符1表示有一页或多页的数据内容相同,相同的数据为数据值位的数据,即00或01。该00未写入到公共存储区域L0页,该01未写入到公共存储区域L1页内,即虚拟写,故将该某页或多页的写入数据标示虚拟写标识符。另外,闪存设备中读写数据的最小单位为页,擦除最小单元为块,故数据映射表中可以以页为单位,也可以以块为单元建立映射关系,即标识符可表示一页或多页、一块或多块内数据的属性。
写入模块460,用于当对该公共存储区域的某页的写入数据不相同时,则将该写入数据实际写入对应的该公共存储区域的某页内。
具体的,当对L2页的写入数据不相同时,将该不相同的数据写入到公共存储区域的L2页内。
此外,标记处理模块440还用于当对该公共存储区域的某页的写入数据不相同时,将该某页的写入数据标示实际写标识符,并将该实际写标识符记录在该数据映射表内。例如对L2页写入数据不相同时,可将L2页数据的标记符设置为不同数据标记符,例如可以设置为0,其数据值位为空或者其它无意义的符号,如“#”等。因某页的写入数据不同时,需要将数据实际写入到对应的公共存储区域的某页内,故将该某页的写入数据标示实际写标识符,可设置该实际写标识符所对应的数据值位,且该数据值位为空或其它无意义的符号。此外,写入数据不同时,也可只需标示实际写标识符,不需设置数据值位。
上述闪存设备数据管理系统,当某页或多页内写入数据相同时,仅需给某页或多页内数据标示虚拟写标识符,并获取相同数据,将相同数据转换为对应的数据值位,将虚拟写标识符及对应的数据值位记录在数据映射表内,不需将数据真实写入到公共存储区域的相应的页内,减少了数据的写入,提高了写入数据的效率,节省了写入数据的时间,且节省了公共存储区域的空间。
进一步的,如图5所示,在一个实施例中,上述闪存设备数据管理系统,除了包括划分模块420、标记处理模块440和写入模块460,还包括读取模块480、第一判断模块482和返回模块484。其中:
读取模块480,用于当读取某页内的数据时,读取该数据映射表。
第一判断模块482,用于判断该某页对应的数据映射表内是否有虚拟写标识符。
返回模块484,用于当该某页对应的数据映射表内有虚拟写标识符时,获取虚拟写标识符对应的数据值位,将数据值位转化为对应的相同数据,返回对应的相同数据,以及当该某页对应的数据映射表内无虚拟写标识符时,从该公共存储区域的某页内获取数据,并返回该数据。
例如L0的虚拟写标识符为1,获取L0的虚拟标识符对应的数据值位00,将数据值位00转换为对应的相同数据00,将相同数据00返回给主机。
上述闪存设备管理系统中读取数据时,首先读取数据映射表,判断在数据映射表中是否有读取的页的虚拟写标识符,若有,则获取虚拟写标识符对应的数据值位,将数据值位转化为对应的相同数据,返回对应的相同数据,减少了从公共存储区域内某页读取数据的寻址时间,提高了读取数据的速度。
进一步的,如图6所示,在一个实施例中,上述闪存设备数据管理系统,除了包括划分模块420、标记处理模块440、写入模块460、读取模块480、第一判断模块482和返回模块484,还包括第二判断模块486、无效标示模块488、更新模块490和删除模块492。其中:
第二判断模块486,用于当擦除某页内的数据时,判断该某页对应的数据映射表内是否有虚拟写标识符或实际写标识符。
无效标示模块488,用于当该某页对应的数据映射表内有虚拟写标识符或实际写标识符时,将该某页对应的数据映射表内的虚拟写标识符或实际写标识符删除,并重新标示无效标识符,以及当该某页对应的数据映射表内无虚拟写标识符和实际写标识符时,直接在该某页对应的数据映射表内标示无效标识符。
更新模块490,用于更新该数据映射表。
删除模块492,用于当对该某页再次写入数据且识别到该某页对应的数据映射表中有无效标识符时,直接擦除该无效标识符对应的无效数据。
上述闪存设备数据管理系统,通过在某页对应的数据映射表内删除已有的虚拟写标识符或实际写标识符,标示无效标识符,即标示该某页内的数据为无效数据,该标记操作简单,快速,相比于传统将闪存设备恢复到出厂时的读写性能需使用专用的硬件复位,或使用Trim和Erase命令删除全盘数据,速度快。数据映射表中有无效标识符,可直接擦除该无效数据,不需进行数据搬移操作,节省了搬移无效数据的时间,也省略了寻址的时间,节省了写入数据的数据,减少了对闪存设备的摩擦,提高了闪存的使用寿命。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、闪存等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种闪存设备数据管理方法,包括:
将闪存设备的存储区域划分为公共存储区域和私有存储区域,所述私有存储区域用来存储数据映射表;
当对所述公共存储区域的某页或多页的写入数据完全相同时,则将所述某页或多页的写入数据标示虚拟写标识符,获取相同数据,将所述相同数据转化为对应的数据值位,并将所述虚拟写标识符及对应的数据值位记录在所述数据映射表内;
当对所述公共存储区域的某页的写入数据不相同时,则将所述写入数据实际写入对应的所述公共存储区域的某页内。
2.根据权利要求1所述的闪存设备数据管理方法,其特征在于,所述方法还包括:
当对所述公共存储区域的某页的写入数据不相同时,将所述某页的写入数据标示实际写标识符,并将所述实际写标识符记录在所述数据映射表内。
3.根据权利要求1所述的闪存设备数据管理方法,其特征在于,所述方法还包括:
当读取某页内的数据时,读取所述数据映射表;
判断所述某页对应的数据映射表内是否有虚拟写标识符,若有,则获取所述虚拟写标识符对应的数据值位,将所述数据值位转化为对应的相同数据,返回所述对应的相同数据,若无,则从所述公共存储区域的某页内获取数据,并返回所述数据。
4.根据权利要求2所述的闪存设备数据管理方法,其特征在于,所述方法还包括:
当擦除某页内的数据时,判断所述某页对应的数据映射表内是否有虚拟写标识符或实际写标识符;
若有,则将所述某页对应的数据映射表内的虚拟写标识符或实际写标识符删除,并重新标示无效标识符;
若无,则直接在所述某页对应的数据映射表内标示无效标识符;
更新所述数据映射表。
5.根据权利要求4所述的闪存设备数据管理方法,其特征在于,所述方法还包括:
当对所述某页再次写入数据且识别到所述某页对应的数据映射表中有无效标识符时,直接擦除所述无效标识符对应的无效数据。
6.一种闪存设备数据管理系统,其特征在于,包括:
划分模块,用于将闪存设备的存储区域划分为公共存储区域和私有存储区域,所述私有存储区域用来存储数据映射表;
标记处理模块,用于当对所述公共存储区域的某页或多页的写入数据完全相同时,则将所述某页或多页的写入数据标示虚拟写标识符,获取相同数据,将所述相同数据转化为对应的数据值位,并将所述虚拟写标识符及对应的数据值位记录在所述数据映射表内;
写入模块,用于当对所述公共存储区域的某页的写入数据不相同时,则将所述写入数据实际写入对应的所述公共存储区域的某页内。
7.根据权利要求6所述的闪存设备数据管理系统,其特征在于,所述标记处理模块还用于当对所述公共存储区域的某页的写入数据不相同时,将所述某页的写入数据标示实际写标识符,并将所述实际写标识符记录在所述数据映射表内。
8.根据权利要求6所述的闪存设备数据管理系统,其特征在于,所述系统还包括:
读取模块,用于当读取某页内的数据时,读取所述数据映射表;
第一判断模块,用于判断所述某页对应的数据映射表内是否有虚拟写标识符;
返回模块,用于当所述某页对应的数据映射表内有虚拟写标识符时,获取所述虚拟写标识符对应的数据值位,将所述数据值位转化为对应的相同数据,返回所述对应的相同数据,以及当所述某页对应的数据映射表内无虚拟写标识符时,从所述公共存储区域的某页内获取数据,并返回所述数据。
9.根据权利要求7所述的闪存设备数据管理系统,其特征在于,所述系统还包括:
第二判断模块,用于当擦除某页内的数据时,判断所述某页对应的数据映射表内是否有虚拟写标识符或实际写标识符;
无效标示模块,用于当所述某页对应的数据映射表内有虚拟写标识符或实际写标识符时,将所述某页对应的数据映射表内的虚拟写标识符或实际写标识符删除,并重新标示无效标识符,以及当所述某页对应的数据映射表内无虚拟写标识符和实际写标识符时,直接在所述某页对应的数据映射表内标示无效标识符;
更新模块,用于更新所述数据映射表。
10.根据权利要求9所述的闪存设备数据管理系统,其特征在于,所述系统还包括:
删除模块,用于当对所述某页再次写入数据且识别到所述某页对应的数据映射表中有无效标识符时,直接擦除所述无效标识符对应的无效数据。
CN201310132109.6A 2013-04-16 2013-04-16 闪存设备数据管理方法和系统 Active CN103257928B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310132109.6A CN103257928B (zh) 2013-04-16 2013-04-16 闪存设备数据管理方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310132109.6A CN103257928B (zh) 2013-04-16 2013-04-16 闪存设备数据管理方法和系统

Publications (2)

Publication Number Publication Date
CN103257928A true CN103257928A (zh) 2013-08-21
CN103257928B CN103257928B (zh) 2016-01-13

Family

ID=48961861

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310132109.6A Active CN103257928B (zh) 2013-04-16 2013-04-16 闪存设备数据管理方法和系统

Country Status (1)

Country Link
CN (1) CN103257928B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105763745A (zh) * 2016-04-26 2016-07-13 努比亚技术有限公司 一种数据保护方法、装置及移动终端
CN108804571A (zh) * 2018-05-23 2018-11-13 湖南博匠信息科技有限公司 一种数据存储方法、装置以及设备
CN113641630A (zh) * 2017-03-27 2021-11-12 珠海极海半导体有限公司 一种flash存储器
CN113656080A (zh) * 2021-08-04 2021-11-16 湖北亿咖通科技有限公司 操作系统内核的启动方法、电子设备和机器可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101495972A (zh) * 2005-02-09 2009-07-29 Tc许可有限公司 具有单步读取和写入命令的rf标签系统
US20100088462A1 (en) * 2008-10-03 2010-04-08 Silicon Motion, Inc. Methods for handling data updating of flash memory and related memory cards
JP4563992B2 (ja) * 2006-12-26 2010-10-20 株式会社京都ソフトウェアリサーチ 多値フラッシュメモリおよび多値フラッシュメモリへのデータ書き込み方法
CN102722452A (zh) * 2012-05-29 2012-10-10 南京大学 一种内存冗余消除方法
CN102841850A (zh) * 2012-06-19 2012-12-26 记忆科技(深圳)有限公司 减小固态硬盘写放大的方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101495972A (zh) * 2005-02-09 2009-07-29 Tc许可有限公司 具有单步读取和写入命令的rf标签系统
JP4563992B2 (ja) * 2006-12-26 2010-10-20 株式会社京都ソフトウェアリサーチ 多値フラッシュメモリおよび多値フラッシュメモリへのデータ書き込み方法
US20100088462A1 (en) * 2008-10-03 2010-04-08 Silicon Motion, Inc. Methods for handling data updating of flash memory and related memory cards
CN102722452A (zh) * 2012-05-29 2012-10-10 南京大学 一种内存冗余消除方法
CN102841850A (zh) * 2012-06-19 2012-12-26 记忆科技(深圳)有限公司 减小固态硬盘写放大的方法及系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105763745A (zh) * 2016-04-26 2016-07-13 努比亚技术有限公司 一种数据保护方法、装置及移动终端
CN113641630A (zh) * 2017-03-27 2021-11-12 珠海极海半导体有限公司 一种flash存储器
CN108804571A (zh) * 2018-05-23 2018-11-13 湖南博匠信息科技有限公司 一种数据存储方法、装置以及设备
CN108804571B (zh) * 2018-05-23 2021-11-05 湖南博匠信息科技有限公司 一种数据存储方法、装置以及设备
CN113656080A (zh) * 2021-08-04 2021-11-16 湖北亿咖通科技有限公司 操作系统内核的启动方法、电子设备和机器可读存储介质
CN113656080B (zh) * 2021-08-04 2023-10-24 亿咖通(湖北)技术有限公司 操作系统内核的启动方法、电子设备和机器可读存储介质

Also Published As

Publication number Publication date
CN103257928B (zh) 2016-01-13

Similar Documents

Publication Publication Date Title
US9747202B1 (en) Storage module and method for identifying hot and cold data
US8838875B2 (en) Systems, methods and computer program products for operating a data processing system in which a file delete command is sent to an external storage device for invalidating data thereon
US11782632B2 (en) Selective erasure of data in a SSD
CN101241472B (zh) 映射管理方法及系统
US8972426B2 (en) Storage device presenting to hosts only files compatible with a defined host capability
US20110145489A1 (en) Hybrid storage device
CN103608866A (zh) 用于闪存存储器的数据擦除方法及装置
CN100507919C (zh) 一种fat文件系统及其处理方法
US20090300082A1 (en) Method for memory space management
CN106326229B (zh) 一种嵌入式系统的文件存储方法和装置
CN106886370B (zh) 一种基于ssd去重技术的数据安全删除方法及系统
CN108628542B (zh) 一种文件合并方法及控制器
CN110489357B (zh) 一种用于可移动存储设备上隐藏数据的方法及系统
CN105718530A (zh) 文件存储系统及其文件存储控制方法
KR20130075018A (ko) 플래시 메모리 파일 시스템에 적용 가능한 데이터 업데이트 장치 및 방법
CN101763317A (zh) 磁介质数据清除方法
US11144508B2 (en) Region-integrated data deduplication implementing a multi-lifetime duplicate finder
CN103257928B (zh) 闪存设备数据管理方法和系统
CN102981975B (zh) 闪存数据的管理方法和系统
CN101303667B (zh) 建立磁盘空簇表及查找磁盘空簇的方法和装置
WO2020024933A1 (zh) 一种数据写入方法和服务端
CN110554843A (zh) 一种文件数据多个存储设备存储的方法及系统
CN103309619A (zh) 一种闪存数据存储方法
US9535796B2 (en) Method, apparatus and computer for data operation
CN108958657B (zh) 一种数据存储方法、存储设备及存储系统

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
CP01 Change in the name or title of a patent holder

Address after: 518057 A, B, C, D, E, F1, 8 Building, Financial Services Technology Innovation Base, No. 8 Kefa Road, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen jiangbolong electronic Limited by Share Ltd

Address before: 518057 A, B, C, D, E, F1, 8 Building, Financial Services Technology Innovation Base, No. 8 Kefa Road, Nanshan District, Shenzhen City, Guangdong Province

Patentee before: Shenzhen jiangbolong Electronic Co., Ltd.

CP01 Change in the name or title of a patent holder