[发明专利]一种用于内存文件系统的文件数据一致性更新方法有效

专利信息
申请号: 201510773274.9 申请日: 2015-11-13
公开(公告)号: CN105404667B 公开(公告)日: 2018-08-24
发明(设计)人: 沙行勉;陈咸彰;诸葛晴凤;孙志龙;陈俊熹 申请(专利权)人: 重庆大学
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 重庆大学专利中心 50201 代理人: 唐开平
地址: 400044 *** 国省代码: 重庆;50
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种用于内存文件系统的文件数据一致性更新方法,包括以下步骤:1,在进程初始化时,系统在内核空间为进程打开一个伪文件;2,进程请求更新“目标文件”,内存文件系统按照需要更新的数据量,一次性分配全部所需的物理内存给伪文件;3,构建伪文件中索引数据页的数据结构,称为“数据索引”;4,调用一次数据拷贝函数,把新数据一次性全部写入伪文件;5,使用一个原子操作,把伪文件的数据索引插入目标文件的数据索引中相应的位置;6,进程结束,删除该进程对应的伪文件。本发明的优点是:对于数据量较大的更新操作,避免了大量数据拷贝函数调用以及原子操作,可以在保证文件数据更新一致性的情况达到较高的性能。
搜索关键词: 一种 用于 内存 文件系统 文件 数据一致性 更新 方法
【主权项】:
1.一种用于内存文件系统的文件数据一致性更新方法,其特征是,包括以下步骤:步骤1,在进程初始化时,系统在内核空间为进程打开一个伪文件;步骤2,进程请求更新“目标文件”,内存文件系统按照需要更新的数据量,一次性分配全部所需的物理内存给伪文件;步骤3,构建伪文件中索引数据页的数据结构,称为“数据索引”;步骤4,调用一次数据拷贝函数,把新数据一次性全部写入伪文件:步骤1),读取伪文件的内核虚拟地址空间VF的起始虚拟地址;步骤2),获取用户的写文件请求在目标文件中的偏移位置Offset;即用户要求从目标文件的第Offset个字节的位置开始写新数据;步骤3),根据Offset和内存页面的大小计算出一个伪文件数据在目标文件中的偏移量POff,设文件系统中使用的一个内存页面的大小为Pszie,POff=Offset‑Offset%Psize;步骤4),从POff开始,从目标文件中拷贝一个物理页面大小Psize的数据到伪文件的起始位置;步骤5),在伪文件中,从Offset%Psize的位置开始,用一个数据拷贝操作写入用户写请求的全部数据,此时,伪文件写新数据已全部完成;步骤5,使用一个原子操作,把伪文件的数据索引插入目标文件的数据索引中相应的位置;步骤6,进程结束,删除该进程对应的伪文件。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆大学,未经重庆大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201510773274.9/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top