CN108804571B - 一种数据存储方法、装置以及设备 - Google Patents

一种数据存储方法、装置以及设备 Download PDF

Info

Publication number
CN108804571B
CN108804571B CN201810501304.4A CN201810501304A CN108804571B CN 108804571 B CN108804571 B CN 108804571B CN 201810501304 A CN201810501304 A CN 201810501304A CN 108804571 B CN108804571 B CN 108804571B
Authority
CN
China
Prior art keywords
chain table
unit
data
idle
directory
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
CN201810501304.4A
Other languages
English (en)
Other versions
CN108804571A (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.)
Hunan Bojiang Information Technology Co Ltd
Original Assignee
Hunan Bojiang Information Technology 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 Hunan Bojiang Information Technology Co Ltd filed Critical Hunan Bojiang Information Technology Co Ltd
Priority to CN201810501304.4A priority Critical patent/CN108804571B/zh
Publication of CN108804571A publication Critical patent/CN108804571A/zh
Application granted granted Critical
Publication of CN108804571B publication Critical patent/CN108804571B/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

一种数据存储方法、装置以及设备
技术领域
本发明涉及计算机领域,特别涉及一种数据存储方法、装置、设备以及一种计算机可读存储介质。
背景技术
随着固态硬盘的广泛应用,使得相关应用产品的高速存储性能得到了快速提高。但是在嵌入式环境中,处理器性能有限,致使运算复杂的文件***成为影响高速文件化存储性能的重要因素。
一般的,文件***按照链接分配方式,会将同属于一个文件的已使用空间管理单元链表项通过地址信息链接成一个链表,链表的起始地址保存在对应文件的目录链表项中,链表的末尾单独用结束标记。但是,在存储文件时,这种方式每分配一个未使用的空间时,都需要按照空间单元的排列顺序的查找一遍空间地址,这在记录大容量文件时造成了极大地性能浪费。
例如,目前嵌入式高速存储方案通常采用两种方法:一是移植FAT32文件***,另一个是只支持顺序写入的简化文件***。
对于移植FAT32文件***,这种方法可以实现完整的文件管理增、删、查、改功能,但是其空间管理单元小、空闲簇查找复杂、访问请求多,需要消耗大量的时间,而在嵌入式环境中对高速存储要求较高,因此这种方法难以满足需求。
对于只支持顺序写入的简化文件***,这种方法大都采用增大空间管理单元来减少空闲空间分配和访问请求,然而,虽然这类型的方案存储速度得到了保证,但由于只支持顺序写入,文件管理上有功能缺失,根本不支持记录过程中的删除和修改。
综上可知,如何降低嵌入式环境中文件***的运算复杂程度,是亟待本领域技术人员解决的问题。
发明内容
本发明的目的是提供一种数据存储方法、装置、设备以及一种计算机可读存储介质,用以解决传统应用于嵌入式环境中的文件存储***运算比较复杂的问题。
为解决上述技术问题,本发明提供了一种数据存储方法,应用于嵌入式环境,包括:
预先在文件***设置空闲单元链表,所述空闲单元链表保存有所述文件***中未使用的单元链表项;
响应于用户在所述文件***存储数据的请求,依次从所述空闲单元链表取出单元链表项存储所述数据,直至所述数据存储完毕,其中,所述单元链表项中保存有指向存储所述数据的下一个单元链表项的指针。
其中,所述响应于用户在所述文件***存储数据的请求,依次从所述空闲单元链表取出单元连表项存储所述数据,直至所述数据存储完毕,包括:
预先设置所述文件***的空闲目录链表,所述空闲目录链表保存有所述文件***中未使用的目录链表项;
响应于用户在所述文件***存储数据的请求,从所述空闲目录链表中取出目录链表项,并依次从所述空闲单元链表取出单元连表项存储所述数据,直至所述数据存储完毕;
确定用于存储所述数据的第一个单元链表项,并将所述第一个单元链表项的标识信息保存到所述目录链表项中。
其中,在所述确定用于存储所述数据的第一个单元链表项,并将所述第一个单元链表项的标识信息保存到所述目录链表项中之后,包括:
将取出的所述目录链表项保存到非空闲目录链表中,并将取出的所述单元链表项保存到非空闲单元链表中,所述非空闲目录链表项保存有所述文件***中已使用的目录链表项,所述非空闲单元链表中保存有所述文件***中已使用的单元链表项;
响应于用户在所述文件***查询数据的请求,遍历所述非空闲目录链表,确定所述非空闲目录链表中与所述数据相对应的目录链表项;
根据所述目录链表项中的所述标识信息,确定存储所述数据的第一个单元链表项;
根据所述第一个单元链表项以及所述指针,确定存储所述数据的各个单元链表项,并将各个所述单元链表项中所保存的数据返回给用户。
其中,在所述根据所述第一个单元链表项以及所述指针,确定存储所述数据的各个单元链表项,并将各个所述单元链表项中所保存的数据返回给用户之后,包括:
响应于用户删除所述数据的请求,删除各个所述单元链表项中保存的数据,并将所述单元链表项保存到所述空闲单元链表中;
删除与所述数据相对应的目录链表项中的所述标识信息,并将所述目录链表项保存到所述空闲目录链表中。
本发明还提供了一种数据存储装置,应用于嵌入式环境,包括:
空闲单元链表设置模块:用于预先在文件***设置空闲单元链表,所述空闲单元链表保存有所述文件***中未使用的单元链表项;
存储模块:用于响应于用户在所述文件***存储数据的请求,依次从所述空闲单元链表取出单元链表项存储所述数据,直至所述数据存储完毕,其中,所述单元链表项中保存有指向存储所述数据的下一个单元链表项的指针。
其中,所述存储模块包括:
空闲目录链表设置单元:用于预先设置所述文件***的空闲目录链表,所述空闲目录链表保存有所述文件***中未使用的目录链表项;
存储单元:用于响应于用户在所述文件***存储数据的请求,从所述空闲目录链表中取出目录链表项,并依次从所述空闲单元链表取出单元连表项存储所述数据,直至所述数据存储完毕;
标识信息保存单元:用于确定用于存储所述数据的第一个单元链表项,并将所述第一个单元链表项的标识信息保存到所述目录链表项中。
其中,所述装置包括:
非空闲链表项保存模块:用于将取出的所述目录链表项保存到非空闲目录链表中,并将取出的所述单元链表项保存到非空闲单元链表中,所述非空闲目录链表项保存有所述文件***中已使用的目录链表项,所述非空闲单元链表中保存有所述文件***中已使用的单元链表项;
目录链表项确定模块:用于响应于用户在所述文件***查询数据的请求,遍历所述非空闲目录链表,确定所述非空闲目录链表中与所述数据相对应的目录链表项;
单元链表项确定模块:用于根据所述目录链表项中的所述标识信息,确定存储所述数据的第一个单元链表项;
数据返回模块:用于根据所述第一个单元链表项以及所述指针,确定存储所述数据的各个单元链表项,并将各个所述单元链表项中所保存的数据返回给用户。
其中,所述装置包括:
单元链表项数据删除模块:用于响应于用户删除所述数据的请求,删除各个所述单元链表项中保存的数据,并将所述单元链表项保存到所述空闲单元链表中;
目录链表项数据删除模块:用于删除与所述数据相对应的目录链表项中的所述标识信息,并将所述目录链表项保存到所述空闲目录链表中。
此外,本发明还提供了一种数据存储设备,应用于嵌入式环境,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序以实现如上所述的数据存储方法中的步骤。
最后,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的数据存储方法的步骤。
本发明所提供的一种数据存储方法,应用于嵌入式***,该方法预先在文件***设置了空闲单元链表,空闲单元链表中保存有文件***中未使用的单元链表项,这样,在用户请求存储数据时,就能够直接从空闲单元链表中取出单元链表项来存储数据,直到数据存储完毕。可见,该方法避免了每分配一个单元都需要重新遍历一遍所有单元的问题,有效降低了嵌入式环境中文件***的运算复杂程度。
本发明还提供了一种数据存储装置、设备以及一种计算机可读存储介质,其作用与上述方法的作用相对应,这里不再赘述。
附图说明
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种数据存储方法实施例的实现流程图;
图2为本发明提供的经过划分的存储空间的结构图;
图3为本发明提供的一种数据存储装置的结构框图。
具体实施方式
本发明的核心是提供一种数据存储方法、装置、设备以及一种计算机可读存储介质,有效降低了嵌入式环境中文件***的运算复杂程度。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面对本发明提供的一种数据存储方法实施例进行介绍,参见图1,该实施例包括:
步骤S10:预先在文件***设置空闲单元链表,所述空闲单元链表保存有所述文件***中未使用的单元链表。
需要说明的是,在一般的硬盘空间管理结构中,文件和文件空间均采用链接分配方式的空间管理结构,在这种结构中,如图2所示,一般将整个存储空间划分为四个部分:硬盘信息空间20、分区信息空间21、分区链表项空间22和数据空间23。
本实施例主要与分区链表空间相关,分区链表项空间包括单元链表区。通常情况下,硬盘会被划分为若干个分区,各个分区之间相互独立,而单元链表项空间负责记录着一个分区的数据空间按显式链接分配方式进行管理的地址信息,即单元链表项,一个单元链表项对应数据空间的一个空间单元。各个空间单元按照一定顺序排列,因此,在存储数据的时候,一般需要按照顺序逐个查找空闲的空间单元。
而在本实施例中,预先设置有空闲单元链表,空闲单元链表指的是保存有文件***中未使用,即未被分配的单元链表项的集合,各个单元链表项之间以链表的形式相互关联。具体的,可以在创建文件***的过程中,就为每个分区设置空闲单元链表,至于空闲单元链表的起始位置信息以及大小等可以保存在分区信息空间中。在文件***格式化的时候,可以将文件***中所有未使用的单元链表项按照物理空间顺序添加到空闲单元链表中。
值得注意的是,这里的空闲单元链表并非一次添加完成的,也就是说,一个单元链表项究竟是空闲还是非空闲状态可能随着时间发生变化的,因此,空闲单元链表响应的也会是动态变化的。具体的,在用户请求分配单元链表项来存储数据时,可以将分配给用户的单元链表项移出空闲单元链表,例如,相对应的,可以设置一个非空闲单元链表,将分配给用户的单元链表项保存到非空闲单元链表中。相反的,在用户请求删除数据的时候,可以将单元链表项从非空闲单元链表移到空闲单元链表,以便于后期分配。
步骤S11:响应于用户在所述文件***存储数据的请求,依次从所述空闲单元链表取出单元链表项存储所述数据,直至所述数据存储完毕,其中,所述单元链表项中保存有指向存储所述数据的下一个单元链表项的指针。
如上所述,本实施例设置有空闲单元链表,空闲单元链表里保存有文件***中未使用的单元链表项,因此,在用户请求存储数据的时候,不需要查找空闲的单元链表项,就可以直接从空闲单元链表中获得空闲单元链表项来存储数据。
此外,每个单元链表项中不仅仅保存有数据,还保存有指向存储数据的下一个单元链表项的指针,因此,可以实现将数据存储在非连续的物理空间,达到了更好利用存储空间的目的,存储方式也更加灵活。
值得一提的是,本实施例中可以设置如上所述的非空闲单元链表,当响应于用户存储数据的请求,依次从空闲单元链表取出单元链表项来存储数据时,可以将该单元链表项保存到非空闲单元链表中。那么,当用户请求查询数据的时候,可以直接从非空闲单元链表来获取数据,不需要遍历空闲的单元链表项,从而减小了运算量。
下面对本实施例中一种更为优选的实施方式进行介绍:
如图2所示,上面提到的分区链表项空间22不仅仅包括单元链表区,还包括目录链表区。目录链表区记录着一个分区的数据空间中存储的文件信息,这些目录链表项还记录着与其相邻的目录链表项的地址信息,类似于隐式链接分配方式。
一般的,在存储数据时,不仅仅需要请求分配空闲单元链表项,来存储数据,还需要请求分配目录链表项,来存储数据信息,例如数据的大小,起止地址等信息。因此,本实施例在设置上述空闲单元链表的同时,还设置有空闲目录链表,具体的实现方式如下:
预先设置所述文件***的空闲目录链表,所述空闲目录链表保存有所述文件***中未使用的目录链表。在文件***存储数据时,可以先从所述空闲目录链表中取出目录链表项;然后再依次从所述空闲单元链表取出单元连表项存储所述数据,直至所述数据存储完毕;最后可以将用于存储数据的第一个单元链表项,和/或最后一个单元链表项的标识信息保存到所述目录链表项中。
需要特别注意的是,本实施例中,可以设置相对应的非空闲目录链表。由于目录链表中保存有数据的起止地址信息,而一个起始或终止地址与一个数据文件相对应,此外,本实施例中采用链表结构,每个地址上不仅保存数据,还保存有指向下一个地址的指针,因此,在用户查找一个数据的时候,就可以根据目录链表项唯一确定一个数据文件。而设置非空闲目录链表项,可以避免查询数据时遍历空闲目录链表项,从而有效的减小了运算量。
与单元链表相对应的,本实施例中目录链表项是不是空闲状态也是随着时间变化的,因此,目录链表也是动态变化的。例如,在用户请求删除数据时,会删除各个所述单元链表项中保存的数据,并将所述单元链表项保存到所述空闲单元链表中;此外,还会删除与数据相对应的目录链表项中的一些数据信息,比如数据的起始地址信息,并将所述目录链表项保存到所述空闲目录链表中。需要说明的是,这里删除的不仅仅是起始地址信息,而是与数据相关的一系列的信息。
综上可知,本实施例所提供的一种数据存储方法,应用于嵌入式***,该方法预先在文件***设置了空闲单元链表,空闲单元链表中保存有文件***中未使用的单元链表项,这样,在用户请求存储数据时,就能够直接从空闲单元链表中取出单元链表项来存储数据,直到数据存储完毕。可见,该方法避免了每分配一个单元都需要遍历一遍所有单元的问题,有效降低了嵌入式环境中文件***的运算复杂程度。
下面对本发明实施例提供的数据存储装置进行介绍,下文描述的数据存储装置与上文描述的数据存储方法可相互对应参照。
本实施例提供的数据存储装置,应用于嵌入式***,参见图3,该装置具体包括:
空闲单元链表设置模块30:用于预先在文件***设置空闲单元链表,所述空闲单元链表保存有所述文件***中未使用的单元链表。
存储模块31:用于响应于用户在所述文件***存储数据的请求,依次从所述空闲单元链表取出单元链表项存储所述数据,直至所述数据存储完毕,其中,所述单元链表项中保存有指向存储所述数据的下一个单元链表项的指针。
其中,所述存储模块包括:
空闲目录链表设置单元:用于预先设置所述文件***的空闲目录链表,所述空闲目录链表保存有所述文件***中未使用的目录链表;
存储单元:用于响应于用户在所述文件***存储数据的请求,从所述空闲目录链表中取出目录链表项,并依次从所述空闲单元链表取出单元连表项存储所述数据,直至所述数据存储完毕;
标识信息保存单元:用于确定用于存储所述数据的第一个单元链表项,并将所述第一个链表项的标识信息保存到所述目录链表项中。
其中,所述装置包括:
非空闲链表项保存模块:用于将取出的所述目录链表项保存到非空闲目录链表中,并将取出的所述单元链表项保存到非空闲单元链表中,所述非空闲目录链表项保存有所述文件***中已使用的目录链表项,所述非空闲单元链表中保存有所述文件***中已使用的单元链表项;
目录链表项确定模块:用于响应于用户在所述文件***查询数据的请求,遍历所述非空闲目录链表,确定所述非空闲目录链表中与所述数据相对应的目录链表项;
单元链表项确定模块:用于根据所述目录链表项中的所述标识信息,确定存储所述数据的第一个单元链表项;
数据返回模块:用于根据所述第一个单元链表项以及所述指针,确定存储所述数据的各个单元链表项,并将各个所述单元链表项中所保存的数据返回给用户。
其中,所述装置包括:
单元链表项数据删除模块:用于响应于用户删除所述数据的请求,删除各个所述单元链表项中保存的数据,并将所述单元链表项保存到所述空闲单元链表中;
目录链表项数据删除模块:用于删除与所述数据相对应的目录链表项中的所述标识信息,并将所述目录链表项保存到所述空闲目录链表中。
本实施例提供的数据存储装置用于实现前述的数据存储方法,因此,该装置中的具体实施方式可见前文中的一种数据存储方法的实施例部分,例如,空间单元链表设置模块30和存储模块31,分别用于实现上述一种数据存储方法中步骤S10和S11。所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再展开介绍。
另外,由于本实施例提供的数据存储装置用于实现前述的数据存储方法,因此,其作用与上述方法的作用相对应,这里不再赘述。
此外,本发明还提供了一种数据存储设备,应用于嵌入式环境,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序以实现如上所述的数据存储方法中的步骤。
最后,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的数据存储方法的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的一种数据存储方法、装置、设备以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (6)

1.一种数据存储方法,应用于嵌入式环境,其特征在于,包括:
预先在文件***设置空闲单元链表,所述空闲单元链表保存有所述文件***中未使用的单元链表项;
响应于用户在所述文件***存储数据的请求,依次从所述空闲单元链表取出单元链表项存储所述数据,直至所述数据存储完毕,其中,所述单元链表项中保存有指向存储所述数据的下一个单元链表项的指针;
所述响应于用户在所述文件***存储数据的请求,依次从所述空闲单元链表取出单元连表项存储所述数据,直至所述数据存储完毕,包括:
预先设置所述文件***的空闲目录链表,所述空闲目录链表保存有所述文件***中未使用的目录链表项;
响应于用户在所述文件***存储数据的请求,从所述空闲目录链表中取出目录链表项,并依次从所述空闲单元链表取出单元连表项存储所述数据,直至所述数据存储完毕;
确定用于存储所述数据的第一个单元链表项,并将所述第一个单元链表项的标识信息保存到所述目录链表项中;
在所述确定用于存储所述数据的第一个单元链表项,并将所述第一个单元链表项的标识信息保存到所述目录链表项中之后,包括:
将取出的所述目录链表项保存到非空闲目录链表中,并将取出的所述单元链表项保存到非空闲单元链表中,所述非空闲目录链表保存有所述文件***中已使用的目录链表项,所述非空闲单元链表中保存有所述文件***中已使用的单元链表项;
响应于用户在所述文件***查询数据的请求,遍历所述非空闲目录链表,确定所述非空闲目录链表中与所述数据相对应的目录链表项;
根据所述目录链表项中的所述标识信息,确定存储所述数据的第一个单元链表项;
根据所述第一个单元链表项以及所述指针,确定存储所述数据的各个单元链表项,并将各个所述单元链表项中所保存的数据返回给用户。
2.如权利要求1所述的方法,其特征在于,在所述根据所述第一个单元链表项以及所述指针,确定存储所述数据的各个单元链表项,并将各个所述单元链表项中所保存的数据返回给用户之后,包括:
响应于用户删除所述数据的请求,删除各个所述单元链表项中保存的数据,并将所述单元链表项保存到所述空闲单元链表中;
删除与所述数据相对应的目录链表项中的所述标识信息,并将所述目录链表项保存到所述空闲目录链表中。
3.一种数据存储装置,应用于嵌入式环境,其特征在于,包括:
空闲单元链表设置模块:用于预先在文件***设置空闲单元链表,所述空闲单元链表保存有所述文件***中未使用的单元链表项;
存储模块:用于响应于用户在所述文件***存储数据的请求,依次从所述空闲单元链表取出单元链表项存储所述数据,直至所述数据存储完毕,其中,所述单元链表项中保存有指向存储所述数据的下一个单元链表项的指针;
所述存储模块包括:
空闲目录链表设置单元:用于预先设置所述文件***的空闲目录链表,所述空闲目录链表保存有所述文件***中未使用的目录链表项;
存储单元:用于响应于用户在所述文件***存储数据的请求,从所述空闲目录链表中取出目录链表项,并依次从所述空闲单元链表取出单元连表项存储所述数据,直至所述数据存储完毕;
标识信息保存单元:用于确定用于存储所述数据的第一个单元链表项,并将所述第一个单元链表项的标识信息保存到所述目录链表项中;
装置包括:
非空闲链表项保存模块:用于将取出的所述目录链表项保存到非空闲目录链表中,并将取出的所述单元链表项保存到非空闲单元链表中,所述非空闲目录链表保存有所述文件***中已使用的目录链表项,所述非空闲单元链表中保存有所述文件***中已使用的单元链表项;
目录链表项确定模块:用于响应于用户在所述文件***查询数据的请求,遍历所述非空闲目录链表,确定所述非空闲目录链表中与所述数据相对应的目录链表项;
单元链表项确定模块:用于根据所述目录链表项中的所述标识信息,确定存储所述数据的第一个单元链表项;
数据返回模块:用于根据所述第一个单元链表项以及所述指针,确定存储所述数据的各个单元链表项,并将各个所述单元链表项中所保存的数据返回给用户。
4.如权利要求3所述的装置,其特征在于,所述装置包括:
单元链表项数据删除模块:用于响应于用户删除所述数据的请求,删除各个所述单元链表项中保存的数据,并将所述单元链表项保存到所述空闲单元链表中;
目录链表项数据删除模块:用于删除与所述数据相对应的目录链表项中的所述标识信息,并将所述目录链表项保存到所述空闲目录链表中。
5.一种数据存储设备,应用于嵌入式环境,其特征在于,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序以实现如权利要求1或2所述的数据存储方法中的步骤。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1或2所述的数据存储方法的步骤。
CN201810501304.4A 2018-05-23 2018-05-23 一种数据存储方法、装置以及设备 Active CN108804571B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810501304.4A CN108804571B (zh) 2018-05-23 2018-05-23 一种数据存储方法、装置以及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810501304.4A CN108804571B (zh) 2018-05-23 2018-05-23 一种数据存储方法、装置以及设备

Publications (2)

Publication Number Publication Date
CN108804571A CN108804571A (zh) 2018-11-13
CN108804571B true CN108804571B (zh) 2021-11-05

Family

ID=64091469

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810501304.4A Active CN108804571B (zh) 2018-05-23 2018-05-23 一种数据存储方法、装置以及设备

Country Status (1)

Country Link
CN (1) CN108804571B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109325005B (zh) * 2018-12-03 2022-04-22 联想(北京)有限公司 一种数据处理方法和电子设备
CN111897745B (zh) * 2019-05-05 2024-04-05 兆易创新科技集团股份有限公司 一种数据存储方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101582092A (zh) * 2009-06-12 2009-11-18 中兴通讯股份有限公司 一种实现保存内存中的数据的方法及装置
CN102455976A (zh) * 2010-11-02 2012-05-16 上海宝信软件股份有限公司 一种中间件内存管理方案
WO2012119420A1 (zh) * 2011-08-26 2012-09-13 华为技术有限公司 一种数据包的并发处理方法及设备
CN103257928A (zh) * 2013-04-16 2013-08-21 深圳市江波龙电子有限公司 闪存设备数据管理方法和***
CN104573571A (zh) * 2015-02-04 2015-04-29 郑州信大捷安信息技术股份有限公司 一种智能卡安全文件***的生成方法
CN107615253A (zh) * 2015-06-01 2018-01-19 深圳市大疆创新科技有限公司 用于存储器架构的***和方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7111289B2 (en) * 2001-12-21 2006-09-19 Agere Systems, Inc. Method for implementing dual link list structure to enable fast link-list pointer updates

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101582092A (zh) * 2009-06-12 2009-11-18 中兴通讯股份有限公司 一种实现保存内存中的数据的方法及装置
CN102455976A (zh) * 2010-11-02 2012-05-16 上海宝信软件股份有限公司 一种中间件内存管理方案
WO2012119420A1 (zh) * 2011-08-26 2012-09-13 华为技术有限公司 一种数据包的并发处理方法及设备
CN103257928A (zh) * 2013-04-16 2013-08-21 深圳市江波龙电子有限公司 闪存设备数据管理方法和***
CN104573571A (zh) * 2015-02-04 2015-04-29 郑州信大捷安信息技术股份有限公司 一种智能卡安全文件***的生成方法
CN107615253A (zh) * 2015-06-01 2018-01-19 深圳市大疆创新科技有限公司 用于存储器架构的***和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
空闲内存管理、位图、空闲链表;Unique-you;《CSDN》;20180503;全文 *

Also Published As

Publication number Publication date
CN108804571A (zh) 2018-11-13

Similar Documents

Publication Publication Date Title
US8799601B1 (en) Techniques for managing deduplication based on recently written extents
KR101599177B1 (ko) 복합식 비휘발성 저장 디바이스를 위한 데이터 이송
CN107491523B (zh) 存储数据对象的方法及装置
US20150113230A1 (en) Directory storage method and query method, and node controller
CN110555001B (zh) 数据处理方法、装置、终端及介质
US11314689B2 (en) Method, apparatus, and computer program product for indexing a file
KR20170123336A (ko) 파일 조작 방법 및 장치
KR20200122994A (ko) 키 값 첨부
CN111459885B (zh) 一种数据的处理方法、装置、计算机设备和存储介质
CN105095113A (zh) 一种缓存管理方法和***
CN108804571B (zh) 一种数据存储方法、装置以及设备
CN104598652B (zh) 一种数据库查询方法及装置
CN111831691B (zh) 一种数据读写方法及装置、电子设备、存储介质
KR101806394B1 (ko) 모바일 dbms환경에서 트랜잭션에 특화된 색인 캐시의 구조를 갖는 데이터 처리 방법
CN107430546B (zh) 一种文件更新方法及存储设备
US8589652B2 (en) Reorganization of a fragmented directory of a storage data structure comprised of the fragmented directory and members
CN106294189B (zh) 内存碎片整理方法及装置
CN110955488A (zh) 一种持久性内存的虚拟化方法及***
US11366609B2 (en) Technique for encoding deferred reference count increments and decrements
CN111338569A (zh) 一种基于直接映射的对象存储后端优化方法
CN110825732A (zh) 数据查询方法、装置、计算机设备和可读存储介质
CN115904255A (zh) 一种数据请求方法、装置、设备及存储介质
CN111104435B (zh) 一种元数据组织方法、装置、设备及计算机可读存储介质
CN115509437A (zh) 存储***、网卡、处理器、数据访问方法、装置及***
US10169250B2 (en) Method and apparatus method and apparatus for controlling access to a hash-based disk

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant