预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)国家知识产权局(12)发明专利申请(10)申请公布号CN114721973A(43)申请公布日2022.07.08(21)申请号202210188706.X(22)申请日2022.02.28(71)申请人福建星云电子股份有限公司地址350000福建省福州市马尾区快安马江大道石狮路6号1-4#楼(72)发明人李有财陈方平杨柳邹凤云(74)专利代理机构福州市鼓楼区京华专利事务所(普通合伙)35212专利代理师吴学林(51)Int.Cl.G06F12/04(2006.01)G06F12/02(2006.01)G06F21/64(2013.01)权利要求书2页说明书6页附图1页(54)发明名称一种基于内存映射的可变长数据存取方法及系统(57)摘要本发明提供了计算机技术领域的一种基于内存映射的可变长数据存取方法及系统,方法包括如下步骤:步骤S10、在内存中预留一映射空间,并创建一映射文件结构;步骤S20、获取不定长的映射数据,基于所述映射数据以及映射文件结构动态生成映射文件,并将所述映射文件映射至映射空间;步骤S30、从所述映射空间获取映射文件并进行校验;步骤S40、动态创建解析模型解析所述映射文件得到映射数据,完成所述映射数据的存取。本发明的优点在于:实现动态映射可变长数据,极大的提升了适用范围。CN114721973ACN114721973A权利要求书1/2页1.一种基于内存映射的可变长数据存取方法,其特征在于:包括如下步骤:步骤S10、在内存中预留一映射空间,并创建一映射文件结构;步骤S20、获取不定长的映射数据,基于所述映射数据以及映射文件结构动态生成映射文件,并将所述映射文件映射至映射空间;步骤S30、从所述映射空间获取映射文件并进行校验;步骤S40、动态创建解析模型解析所述映射文件得到映射数据,完成所述映射数据的存取。2.如权利要求1所述的一种基于内存映射的可变长数据存取方法,其特征在于:所述步骤S10中,所述映射文件结构具体包括一文件头以及一数据区;所述文件头至少包括总数据条数、数据总长度、可变数据总长度、第一校验值;所述数据区包括若干条映射内容,各所述映射内容至少包括定长数据、变长数据以及第二校验值。3.如权利要求1所述的一种基于内存映射的可变长数据存取方法,其特征在于:所述步骤S20具体为:获取不定长的映射数据,基于所述映射文件结构,统计所述映射数据的总数据条数、数据总长度以及可变数据总长度,并对所有的所述映射数据统一进行哈希计算得到第一校验值,基于所述总数据条数、数据总长度、可变数据总长度以及第一校验值动态生成文件头;将各所述映射数据划分为定长数据和变长数据,对所述定长数据和变长数据进行哈希计算计算第二校验值,基于各所述定长数据、变长数据以及第二校验值生成映射内容;基于所述文件头以及各映射内容动态生成映射文件,并将所述映射文件实时映射至映射空间。4.如权利要求2所述的一种基于内存映射的可变长数据存取方法,其特征在于:所述步骤S30具体包括:步骤S31、创建一用于访问所述映射文件的访问器,利用所述访问器访问内存中的映射文件;步骤S32、解析所述映射文件得到文件头以及数据区,判断所述数据区包含映射内容的条数是否等于总数据条数,若是,则进入步骤S33;若否,则结束流程;步骤S33、判断所述数据区中各映射内容的变长数据的长度之和是否等于可变数据总长度,若是,则进入步骤S34;若否,则结束流程;步骤S34、判断所述数据区中各映射内容的变长数据与定长数据的长度之和是否等于数据总长度,若是,则进入步骤S35;若否,则结束流程;步骤S35、基于所述映射文件携带的第一校验值和第二校验值,依次对所述文件头和映射内容进行哈希校验,若校验成功,则进入步骤S40;若校验失败,则结束流程。5.如权利要求2所述的一种基于内存映射的可变长数据存取方法,其特征在于:所述步骤S40具体为:基于所述映射文件的各映射内容的定长数据和变长数据的长度,动态创建对应数据类型的解析模型,进而利用各所述解析模型循环解析映射数据的定长数据和变长数据,以完成所述映射数据的存取。6.一种基于内存映射的可变长数据存取系统,其特征在于:包括如下模块:2CN114721973A权利要求书2/2页映射文件结构创建模块,用于在内存中预留一映射空间,并创建一映射文件结构;映射文件生成模块,用于获取不定长的映射数据,基于所述映射数据以及映射文件结构动态生成映射文件,并将所述映射文件映射至映射空间;映射文件校验模块,用于从所述映射空间获取映射文件并进行校验;映射文件解析模块,用于动态创建解析模型解析所述映射文件得到映射数据,完成所述映射数据的存取。7.如权利要求6所述的一种基于内存映射的可变长数据存取系统,其特征在于:所述映射文件结构创建模块中,所述映射文件结构具体包括一文件头以