[发明专利]数据文件的动态更新方法及装置有效
申请号: | 201310526090.3 | 申请日: | 2013-10-30 |
公开(公告)号: | CN103530420B | 公开(公告)日: | 2017-07-04 |
发明(设计)人: | 陈飞;朱超;王超 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京市浩天知识产权代理事务所(普通合伙)11276 | 代理人: | 宋菲,刘兰兰 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据文件 动态 更新 方法 装置 | ||
1.一种数据文件的动态更新方法,包括:
当数据文件需要更新时,将更新后的数据文件存储到第二共享内存,其中,更新前的数据文件存储在第一共享内存中;
将预设的最新数据文件的存储地址从所述第一共享内存的地址变更为所述第二共享内存的地址;其中,所述最新数据文件的存储地址存储在代理共享内存中,且所述代理共享内存中进一步存储有所述最新数据文件的相关信息;其中,所述预设的最新数据文件的存储地址通过第一变量表示;
当有进程访问所述数据文件时,根据所述预设的最新数据文件的存储地址,查找并访问所述第二共享内存中存储的更新后的数据文件;其中,所述进程获取所述第一变量的值,将所述第一变量的值与本地存储的第二变量的值进行比较,其中,所述第二变量用于表示所述进程当前使用的数据文件的存储地址;若比较结果不同,则卸载所述第二变量对应的共享内存,将所述第一变量的值赋给所述第二变量后加载所述第二变量对应的共享内存,然后查找并访问所述第二变量对应的存储地址中的数据文件。
2.如权利要求1所述的方法,其中,所述将预设的最新数据文件的存储地址从所述第一共享内存的地址变更为所述第二共享内存的地址的步骤包括:将所述第一变量的值从所述第一共享内存的地址变更为所述第二共享内存的地址。
3.如权利要求1所述的方法,其中,所述第二变量为全局变量。
4.如权利要求1-3任一所述的方法,其中,所述数据文件为IPQuery数据文件,所述进程为PHP进程。
5.一种数据文件的动态更新装置,包括:
存储单元,适于当数据文件需要更新时,将更新后的数据文件存储到第二共享内存,其中,更新前的数据文件存储在第一共享内存中;
变更单元,适于将预设的最新数据文件的存储地址从所述第一共享内存的地址变更为所述第二共享内存的地址;其中,所述最新数据文件的存储地址存储在代理共享内存中,且所述代理共享内存中进一步存储有所述最新数据文件的相关信息;其中,所述预设的最新数据文件的存储地址通过第一变量表示;
查找单元,适于当有进程访问所述数据文件时,根据所述预设的最新数据文件的存储地址,查找并访问所述第二共享内存中存储的更新后的数据文件;其中,所述查找单元具体用于:获取所述第一变量的值,将所述第一变量的值与本地存储的第二变量的值进行比较,其中,所述第二变量用于表示所述进程当前使用的数据文件的存储地址;若比较结果不同,则卸载所述第二变量对应的共享内存,将所述第一变量的值赋给所述第二变量后加载所述第二变量对应的共享内存,然后查找并访问所述第二变量对应的存储地址中的数据文件。
6.如权利要求5所述的装置,其中,所述变更单元用于将所述第一变量的值从所述第一共享内存的地址变更为所述第二共享内存的地址。
7.如权利要求5所述的装置,其中,所述第二变量为全局变量。
8.如权利要求5-7任一所述的装置,其中,所述数据文件为IPQuery数据文件,所述进程为PHP进程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310526090.3/1.html,转载请声明来源钻瓜专利网。