CN102902709B - 一种固定空间分配的文件存储系统及实现方法 - Google Patents

一种固定空间分配的文件存储系统及实现方法 Download PDF

Info

Publication number
CN102902709B
CN102902709B CN201210274695.3A CN201210274695A CN102902709B CN 102902709 B CN102902709 B CN 102902709B CN 201210274695 A CN201210274695 A CN 201210274695A CN 102902709 B CN102902709 B CN 102902709B
Authority
CN
China
Prior art keywords
data
file
write
read
data file
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
CN201210274695.3A
Other languages
English (en)
Other versions
CN102902709A (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.)
Fujian chuanggao Zhilian Technology Co.,Ltd.
Original Assignee
Jiangsu Wanlian New Trillion Mdt Infotech Ltd (foreign Joint Ventures)
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 Jiangsu Wanlian New Trillion Mdt Infotech Ltd (foreign Joint Ventures) filed Critical Jiangsu Wanlian New Trillion Mdt Infotech Ltd (foreign Joint Ventures)
Priority to CN201210274695.3A priority Critical patent/CN102902709B/zh
Publication of CN102902709A publication Critical patent/CN102902709A/zh
Application granted granted Critical
Publication of CN102902709B publication Critical patent/CN102902709B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

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

Abstract

本发明属于网络多媒体技术领域,特别是涉及一种固定空间分配的文件存储系统及实现方法。其中固定空间分配的文件存储系统,包括用于获取磁盘信息、对文件分配固定空间的系统初始化模块、文件单元和读/写模块;文件单元包括头文件和数据文件,头文件记录数据文件的信息列表;数据文件包括索引部分和数据部分。读/写模块,主要是通过查询头文件信息列表获取读/写的数据文件,查询该数据文件的索引部分中记录的使用信息和地址信息,从而获取读/写数据的地址,根据该地址读取或写入数据。本发明通过预先固定分配所有的空间,减少了对整个磁盘的索引操作,很大程度上提高了文件存储系统的实时性与稳定性。

Description

一种固定空间分配的文件存储系统及实现方法
技术领域
本发明属于网络多媒体技术领域,特别是涉及一种固定空间分配的文件存储系统及实现方法。
背景技术
现有的数据存储系统大多数都是基于文件的存储系统,存储数据的稳定性主要基于文件系统本身。在这种基于文件的存储系统中,存在一个文件索引区,这个区储存着所有数据的相关信息,包括位置,大小,存入时间,等等。在数据存储过程中,需要不断地对该文件索引信息进行改写,在这种情况下,当突然发生断电或者系统死机时,文件索引信息未来得及保存,从而可能导致整个文件存储系统的崩溃,尤其是在现在一些特殊的存储设备中,如SD卡,其数据的稳定性又与物理数据块的读写次数有非常大的关系。
目前可使用裸设备作为基础进行存储系统的设计以解决存储数据的稳定性,裸设备的方式是将整体储存区域当作一个空间,设计者可以依据自有的规范读写数据,其下层开发需要基于操作系统提供的接口,而对于上层的开发,裸设备的操作接口往往是不可见的,这在很大程度上增加了开发的难度。
发明内容
为解决上述现有技术中的问题,本发明设计了一种固定空间分配的文件存储系统,以解决存储数据的稳定性问题。
为实现上述发明目的,本发明提出了这样一种技术方案:一种固定空间分配的文件存储系统,包括系统初始化模块、文件单元和读/写模块;
其中系统初始化模块,主要用于获取磁盘信息、对文件分配固定空间。
文件单元包括头文件和数据文件,头文件记录数据文件的信息列表,主要是数据文件的使用状态;数据文件包括索引部分和数据部分,索引部分记录数据文件的数据部分的使用信息和地址信息。
读/写模块,主要功能是通过查询头文件信息列表获取读/写的数据文件,查询该数据文件的索引部分中记录的使用信息和地址信息,从而获取读/写数据的地址,根据该地址读取或写入数据。
进一步地,数据部分的使用信息包括数据标签。
数据文件的使用状态分为已使用、正在使用和未使用三种
进一步地,读/写模块由磁盘管理子模块、数据文件管理子模块、索引管理子模块、数据管理子模块组成,其中,磁盘管理子模块,用于管理头文件,对数据文件的信息列表进行管理;数据文件管理子模块,用于管理数据文件,对各数据文件的索引部分和数据部分进行管理;索引管理子模块,用于管理数据文件的索引部分;数据管理子模块,用于向数据文件的数据部分读/写数据。
本发明还提供了一种固定空间分配的文件存储系统的实现方法,包括
步骤(1):系统初始化:获取磁盘信息,对文件的固定空间进行分配,并创建文件单元;
步骤(2):完成数据文件中数据的读/写。
进一步地,在步骤(1)中,文件单元包括头文件和数据文件,系统初始化模块创建的文件单元至少包括头文件,即初始化头文件的信息列表,记录各数据文件的使用状态,文件单元中的数据文件可以在数据读写过程中逐渐创建。其中数据文件的使用状态分为已使用、正在使用和未使用。
更进一步描述,在步骤(2)中数据的读写由读/写模块完成,其中读/写模块包括磁盘管理子模块、数据文件管理子模块、索引管理子模块、数据管理子模块;所述磁盘管理子模块,用于管理头文件,对数据文件的信息列表进行管理;所述数据文件管理子模块,用于管理数据文件,对各数据文件的索引部分和数据部分进行管理;所述索引管理子模块,用于管理数据文件的索引部分;所述数据管理子模块,用于向数据文件的数据部分读/写数据。
当读/写模块完成写操作时,磁盘管理子单元接收到数据写入命令后,通过调用数据文件管理子模块查询信息列表中各数据文件的使用状态,根据使用状态选择目标写入文件;数据文件管理子模块调用索引管理子模块,查询目标写入文件索引部分的地址信息,再发送写入命令给数据管理子单元,向该地址信息写入数据。同时,在写入数据后,更新索引部分中新写入数据对应的使用信息和地址信息。
当读/写模块完成读操作时,磁盘管理子模块接收到数据读取命令后,通过调用数据文件管理子系统查询信息列表中各数据文件的使用状态,根据使用状态选择目标读取文件;数据文件管理子单元调用索引管理子单元,查询目标读取文件的使用信息,通过使用信息对应的地址信息,向数据管理子单元发送读取命令读取数据。
本发明的有益效果是:通过预先固定分配所有的空间,从而减少了对整个磁盘的索引操作,很大程度上提高了文件存储系统的实时性与稳定性,与现有技术相比,本发明更能适用于嵌入式设备的存储应用,解决数据读/写不稳定的问题,取得最实时以及最高效的读/写效果。
附图说明
图1为文件存储系统示意图;
图2 为数据文件单元组成图;
图3为读/写模块架构图;
图4为文件存储系统的实现方法的流程图。
具体实施方式
下面以VFAT文件为基础的音视频数据的存储为具体实施例进一步说明:
本文件存储系统由文件单元、系统初始化模块和读写模块三部分组成。其中,文件单元包括两个部分,头文件和数据文件,如图1所示。定义头文件为FILE0,数据文件为FILE1、FILE2、……、FILEn。头文件FILE0中,存储有所有数据文件FILE1、FILE2、……、FILEn的信息列表,包括各数据文件的使用状态, 其中使用状态可以包括三种:“未使用”、“已使用”和“正在使用”。各数据文件FILE1、FILE2、……、FILEn也包括两个组成部分,索引部分Index和数据部分Data,如图2所示,索引部分Index记录了本数据文件的数据部分Data的使用信息和地址信息,其中使用信息可以为数据标签,在该实施例中,数据标签可以指音视频数据产生的时间,地址信息用于记录数据的地址,与数据标签相互对应。
该系统的系统初始化模块主要获取磁盘信息和完成对文件的固定空间分配。例如,获取SD卡的信息,并定义头文件的大小为Akbyte,各数据文件的大小为Bkbyte,其中A与B可以相同,也可以不同,其大小可以依据实际需求而定,如针对录像需求,可以将A,B都定义为32。既符合使用需求,又提高了性能,还能减少对硬盘的读写操作次数。然后根据大小来创建头文件FILE0和数据文件FILE1、FILE2、……、FILEn,可选择地,仅头文件FILE0在系统初始化模块中被创建,而各数据文件也可以在数据的读写过程中逐渐被创建。头文件FILE0的创建主要是指,初始化头文件中的信息列表,记录各数据文件的使用状态。由于所有的空间预先固定分配,也就减少了对磁盘的索引操作。
该系统的读/写模块完成数据文件FILE1、FILE2、……、FILEn中数据的读/写。通过查询头文件FILE0的信息列表中数据文件的使用状态获取可以读/写的数据文件,然后再查询该数据文件的索引部分INDEX中记录的使用信息和地址信息,就可以获取读/写数据的地址,并根据该地址读取或写入数据。设计时,写入的规律是依次写入,而且是FILEn写满,接着写入FILEn+1。
该读/写模块如图3所示,可以包括磁盘管理子单元、数据文件管理子单元、索引管理子单元、数据管理子单元。其中磁盘管理子单元用于管理头文件FILE0,主要实现对头文件中信息列表的管理,可以查找或修改信息列表中各数据文件对应的空间大小及其使用状态。数据文件管理子单元用于管理各数据文件FILE1、FILE2、……、FILEn,主要实现对各数据文件的索引部分INDEX和数据部分DATA的管理,可以接收索引管理子系统传来的地址信息,向数据管理子单元发送读/写命令。索引管理子单元用于管理本数据文件的索引部分INDEX,可以查找或修改本数据文件中数据的读/写地址。数据管理子单元用于向数据文件的数据部分DATA读写数据。
如图4所示为本发明一种固定空间分配的文件存储系统的实现方法的流程图,包括
步骤(1):系统初始化:获取磁盘信息,对文件的固定空间进行分配,并创建文件单元;
步骤(2):完成数据文件中数据的读/写。
其中步骤(1)中的文件单元包括头文件和数据文件,系统初始化模块创建的文件单元至少包括头文件,即初始化头文件的信息列表,记录各数据文件的使用状态,文件单元中的数据文件可以在数据读写过程中逐渐创建。
上述的数据文件的使用状态分为已使用、正在使用和未使用。
在步骤(2)中的数据的读/写由读/写模块完成,读/写模块包括磁盘管理子模块、数据文件管理子模块、索引管理子模块、数据管理子模块;所述磁盘管理子模块,用于管理头文件,对数据文件的信息列表进行管理;所述数据文件管理子模块,用于管理数据文件,对各数据文件的索引部分和数据部分进行管理;所述索引管理子模块,用于管理数据文件的索引部分;所述数据管理子模块,用于向数据文件的数据部分读/写数据。
在写入数据时,磁盘管理子单元接收到数据写入命令后,通过调用数据文件管理子系统查询数据文件信息列表中各数据文件的使用状态,根据该使用状态选择目标写入的数据文件。优选地,以“正在使用”、“未使用”的优先级顺序选择写入的数据文件,例如当数据文件FILE1对应的使用状态为“已使用”,数据文件FILE2对应的使用状态为“正在使用”时,优先选择数据文件FILE2为目标写入文件。然后数据文件管理子单元调用索引管理子单元,通过索引管理子单元查询目标写入文件FILE2索引部分INDEX中的最大的地址信息,再发送写入命令给数据管理子单元,向该地址信息的下一地址写入数据,同时还更新索引部分INDEX中新写入数据对应的数据标签和地址信息。据此,完成了数据的写入。
在读取数据时,磁盘管理子单元接收到数据读取命令后,通过调用数据文件管理子系统查询数据文件信息列表中各数据文件的使用状态,根据该使用状态选择目标读取的数据文件。优选地,以“已使用”、“正在使用”的优先级顺序选择读取的数据文件,例如当数据文件FILE1对应的使用状态为“已使用”,数据文件FILE2对应的使用状态为“正在使用”时,优先选择数据文件FILE1为目标读取文件。然后数据文件管理子单元调用索引管理子单元,通过索引管理子单元查询目标读取文件FILE1的索引部分INDEX中的数据标签,如果查找到了对应的数据标签,则通过该数据标签对应的地址信息,向数据管理子单元发送读取命令,读取该地址信息的数据,如果未查找到对应的数据标签,则选择FILE2继续查找,直到找到对应的数据标签为止。据此,完成了数据的读取。

Claims (4)

1.一种固定空间分配的文件存储系统,其特征在于包括系统初始化模块、文件单元和读/写模块,所述系统初始化模块,主要用于获取磁盘信息、对文件分配固定空间;所述文件单元包括头文件和多个数据文件,头文件记录数据文件的信息列表,主要是数据文件的使用状态;数据文件包括索引部分和数据部分,索引部分记录数据文件的数据部分的使用信息和地址信息;所述读/写模块通过查询头文件信息列表获取读/写的数据文件,查询该数据文件的索引部分中记录的使用信息和地址信息,从而获取读/写数据的地址,根据该地址读取或写入数据;所述固定空间分配的文件存储系统的实现方法,包括以下步骤:
(1)系统初始化:获取磁盘信息,对文件的固定空间进行分配,并创建文件单元;
(2)完成数据文件中数据的读/写;
所述步骤(1)中,文件单元包括头文件和多个数据文件,系统初始化模块创建的文件单元至少包括头文件,即初始化头文件的信息列表,记录各数据文件的使用状态,文件单元中的数据文件可以在数据读写过程中逐渐创建;所述数据文件的使用状态分为已使用、正在使用和未使用;
所述步骤(2)中数据的读/写由读/写模块完成,读/写模块包括磁盘管理子模块、数据文件管理子模块、索引管理子模块、数据管理子模块;所述磁盘管理子模块,用于管理头文件,对数据文件的信息列表进行管理;所述数据文件管理子模块,用于管理数据文件,对各数据文件的索引部分和数据部分进行管理;所述索引管理子模块,用于管理数据文件的索引部分;所述数据管理子模块,用于向数据文件的数据部分读/写数据;
所述步骤(2)中读/写模块完成写操作的步骤包括:磁盘管理子单元接收到数据写入命令后,通过调用数据文件管理子模块查询信息列表中各数据文件的使用状态,根据使用状态选择目标写入文件;数据文件管理子模块调用索引管理子模块,查询目标写入文件索引部分的地址信息,再发送写入命令给数据管理子单元,向该地址信息写入数据;同时,在写入数据后,更新索引部分中新写入数据对应的使用信息和地址信息;
所述步骤(2)中读/写模块完成读操作的步骤包括:磁盘管理子模块接收到数据读取命令后,通过调用数据文件管理子系统查询信息列表中各数据文件的使用状态,根据使用状态选择目标读取文件;数据文件管理子单元调用索引管理子单元,查询目标读取文件的使用信息,通过使用信息对应的地址信息,向数据管理子单元发送读取命令读取数据。
2.如权利要求1所述的固定空间分配的文件存储系统,其特征在于读/写模块由磁盘管理子模块、数据文件管理子模块、索引管理子模块、数据管理子模块组成;所述磁盘管理子模块,用于管理头文件,对数据文件的信息列表进行管理;所述数据文件管理子模块,用于管理数据文件,对各数据文件的索引部分和数据部分进行管理;所述索引管理子模块,用于管理数据文件的索引部分;所述数据管理子模块,用于向数据文件的数据部分读/写数据。
3.如权利要求1所述的固定空间分配的文件存储系统,其特征在于所述头文件记录的数据文件的使用状态分为已使用、正在使用和未使用三种。
4.如权利要求1所述的固定空间分配的文件存储系统,其特征在于所述索引部分记录数据文件的数据部分的使用信息包括数据标签。
CN201210274695.3A 2012-08-02 2012-08-02 一种固定空间分配的文件存储系统及实现方法 Active CN102902709B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210274695.3A CN102902709B (zh) 2012-08-02 2012-08-02 一种固定空间分配的文件存储系统及实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210274695.3A CN102902709B (zh) 2012-08-02 2012-08-02 一种固定空间分配的文件存储系统及实现方法

Publications (2)

Publication Number Publication Date
CN102902709A CN102902709A (zh) 2013-01-30
CN102902709B true CN102902709B (zh) 2016-09-28

Family

ID=47574942

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210274695.3A Active CN102902709B (zh) 2012-08-02 2012-08-02 一种固定空间分配的文件存储系统及实现方法

Country Status (1)

Country Link
CN (1) CN102902709B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104836798B (zh) * 2015-04-15 2018-11-20 国家计算机网络与信息安全管理中心 一种维护客户端连接信息的方法及装置
CN108241617B (zh) * 2016-12-23 2022-05-06 中国石油化工股份有限公司胜利油田分公司 一种油气生产实时数据存储系统及数据读取方法
CN109992535B (zh) * 2017-12-29 2024-01-30 华为技术有限公司 一种存储控制方法、装置和系统
CN108563532B (zh) * 2018-02-28 2021-01-19 深圳和而泰家居在线网络科技有限公司 数据处理方法及相关装置
CN108664578B (zh) * 2018-05-03 2020-10-20 中北大学 一种文件循环存储方法及系统
CN109284252B (zh) * 2018-09-11 2021-07-06 武汉虹信科技发展有限责任公司 一种通信设备中轻量级文件系统管理方法
CN113220639B (zh) * 2021-03-15 2022-04-15 上海航天测控通信研究所 一种面向空间应用的文件存储系统控制装置
CN112969043B (zh) * 2021-04-28 2021-08-24 北京优幕科技有限责任公司 媒体文件生成、播放方法及设备
CN114020691B (zh) * 2022-01-07 2022-05-13 广州奥凯信息咨询有限公司 读写分离的数据更新方法及其装置、kv存储系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073727A (zh) * 2011-01-12 2011-05-25 中国石油集团川庆钻探工程有限公司 一种用于描述地震资料数据的方法
CN102194011A (zh) * 2011-06-17 2011-09-21 北京互信互通信息技术股份有限公司 一种多路视频数据读写方法
CN102565851A (zh) * 2011-12-16 2012-07-11 中国石油集团川庆钻探工程有限公司地球物理勘探公司 地震资料数据的存储方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1921626A4 (en) * 2005-08-29 2008-10-01 Sony Corp RECORDING DEVICE, RECORDING METHOD, PLAYING DEVICE, PLAY PROCESS, PROGRAM AND RECORDING MEDIUM

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073727A (zh) * 2011-01-12 2011-05-25 中国石油集团川庆钻探工程有限公司 一种用于描述地震资料数据的方法
CN102194011A (zh) * 2011-06-17 2011-09-21 北京互信互通信息技术股份有限公司 一种多路视频数据读写方法
CN102565851A (zh) * 2011-12-16 2012-07-11 中国石油集团川庆钻探工程有限公司地球物理勘探公司 地震资料数据的存储方法

Also Published As

Publication number Publication date
CN102902709A (zh) 2013-01-30

Similar Documents

Publication Publication Date Title
CN102902709B (zh) 一种固定空间分配的文件存储系统及实现方法
CN101840308B (zh) 一种分级存储系统及其逻辑卷管理方法
JP6890401B2 (ja) 多重モード格納管理装置、多重モード格納装置、及びその選別潜在露出(sue)マッピング動作方法
CN101419828B (zh) 一种模拟磁带串行模式的硬盘视频记录及检索方法
KR102541492B1 (ko) 다중 모드 동작들을 위해 다중 파티션을 포함하는 저장 장치, 및 그것의 동작 방법
US7849282B2 (en) Filesystem building method
CN104850358A (zh) 一种磁光电混合存储系统及其数据获取和存储方法
US20050216665A1 (en) Storage system and method for controlling block rearrangement
US7937522B2 (en) Method for flash memory data management
CN103488685B (zh) 一种基于分布式存储系统的碎片文件存储方法
US20080288710A1 (en) Semiconductor Memory Device and Its Control Method
CN104462240A (zh) 云存储中实现分级存储管理的方法和系统
CN102136290A (zh) 一种嵌入式实时视频文件存储方法
CN103226965B (zh) 基于时间位图的音视频数据存取方法
CN101576890B (zh) 一种新型碎片整理方法和系统
CN105786401A (zh) 服务器集群系统中的数据管理方法及装置
CN110018966A (zh) 一种存储器、存储系统、主机及数据操作、垃圾回收方法
US9558124B2 (en) Data storage system with passive partitioning in a secondary memory
WO2016107390A1 (zh) 一种管理磁盘文件的方法和装置
CN103713973A (zh) 一种基于hdd和ssd的混合存储备份方法及系统
CN103123645A (zh) 一种降低磁盘碎片的方法
CN104298697A (zh) 一种fat32格式的数据文件管理系统
KR20170065427A (ko) Ssd의 데이터 프로세싱 방법 및 장치
CN103092849A (zh) 文件系统簇管理方法
JP4502375B2 (ja) ファイルシステムおよびその制御方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20160224

Address after: 212006 Zhenjiang city of Jiangsu province science and technology park by twelve Dingmao Road 99, 41 floor of Building 2

Applicant after: Jiangsu Wanlian new trillion Mdt InfoTech Ltd (foreign joint ventures)

Address before: 212009 Zhenjiang City, Jiangsu province science and Technology Park Dingmao Road No. 470 room 955 twelve

Applicant before: He Jianyi

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210223

Address after: 350000 617, overseas Chinese Pioneer Park, 108 Jiangbin East Avenue, Fuzhou Development Zone, Fuzhou City, Fujian Province

Patentee after: CHUANGO SECURITY TECHNOLOGY Corp.

Address before: 212006 2nd floor, building 41, 99 jing12 Road, Dingmao science and technology new town, Zhenjiang City, Jiangsu Province

Patentee before: Jiangsu Wanlian Xinzhao Information Technology Co.,Ltd. (foreign joint venture)

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 350000 6th floor, building 3, Fuzhou Internet of things industrial innovation and development center, No. 136, Kuiqi Road, Mawei District, Fuzhou City, Fujian Province

Patentee after: Fujian chuanggao Zhilian Technology Co.,Ltd.

Address before: 350000 617, overseas Chinese Pioneer Park, 108 Jiangbin East Avenue, Fuzhou Development Zone, Fuzhou City, Fujian Province

Patentee before: CHUANGO SECURITY TECHNOLOGY Corp.