[发明专利]一种文件处理方法及系统有效
申请号: | 201210025896.X | 申请日: | 2012-02-07 |
公开(公告)号: | CN103246611A | 公开(公告)日: | 2013-08-14 |
发明(设计)人: | 陈卓;白子潘 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08;G06F17/30 |
代理公司: | 北京鑫媛睿博知识产权代理有限公司 11297 | 代理人: | 龚家骅 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件 处理 方法 系统 | ||
1.一种文件处理方法,其特征在于,操作系统中注册有内存访问异常处理函数,该方法包括:
当接收到打开文件的请求时,申请与所请求打开的文件对应的内存区域,并且设置所述内存区域的属性为不可读写;
当接收到读取文件的请求时,访问与所请求读取的文件对应的内存区域;若内存访问失败且失败原因为所述内存区域的属性为不可读写,则通过调用和执行所述内存访问异常处理函数,从磁盘中获取所请求读取的文件数据,将获取到的文件数据存储到所述内存区域,并将所述内存区域属性设置为可读写,从所述内存区域中读取文件数据;否则,从所述内存区域中读取文件数据。
2.如权利要求1所述的方法,其特征在于,所述内存访问异常处理函数包括设置文件指针函数和读文件函数,所述通过调用和执行内存访问异常处理函数,从磁盘中获取文件数据,包括:
通过调用和执行设置文件指针函数,在磁盘中定位到所述文件;
通过调用和执行读文件函数,根据所述文件在磁盘中的位置读取文件数据。
3.如权利要求1所述的方法,其特征在于,所述读取文件的请求为读取局部文件数据的请求;
通过调用和执行所述内存访问异常处理函数,从磁盘中获取的文件数据是所请求读取的局部文件数据。
4.如权利要求1-3之一所述的方法,其特征在于,所述当接收到打开文件的请求时,申请对应的内存区域,包括:当接收到打开文件的请求时,申请不小于所述文件大小的内存区域,并建立该内存区域与所述文件的对应关系。
5.如权利要求1所述的方法,其特征在于,该方法还包括:当接收到关闭文件的请求时,释放与请求关闭的文件对应的内存区域。
6.一种文件处理系统,其特征在于,操作系统中注册有内存访问异常处理函数,该文件读取系统包括:接收模块、第一处理模块、第二处理模块以及获取模块,其中:
接收模块,用于接收打开文件的请求,以及接收读取文件的请求;
第一处理模块,用于当所述接收模块接收到打开文件的请求时,申请与所请求打开的文件对应的内存区域,并且设置所述内存区域的属性为不可读写;
第二处理模块,用于当所述接收模块接收到读取文件的请求时,访问与所请求读取的文件对应的内存区域,若内存访问失败且失败原因为所述内存区域的属性为不可读写,则通过调用和执行所述内存访问异常处理函数,从磁盘中获取所请求读取的文件数据,将获取到的文件数据存储到所述内存区域,并将所述内存区域属性设置为可读写,调用所述获取模块从所述内存区域中读取文件数据;否则,调用所述获取模块从所述内存区域中读取文件数据;
获取模块,用于从所述内存区域中读取文件数据。
7.如权利要求6所述的文件处理系统,其特征在于,所述内存访问异常处理函数包括设置文件指针函数和读文件函数;
所述第二处理模块具体用于,通过调用和执行设置文件指针函数,在磁盘中定位到所述文件;通过调用和执行读文件函数,根据所述文件在磁盘中的位置读取文件数据。
8.如权利要求6所述的文件处理系统,其特征在于,所述读取文件的请求为读取局部文件数据的请求;
所述第二处理模块具体用于,通过调用和执行所述内存访问异常处理函数,从磁盘中获取的文件数据是所请求读取的局部文件数据。
9.如权利要求6-8之一所述的文件处理系统,其特征在于,所述第一处理模块具体用于,当所述接收模块接收到打开文件的请求时,申请不小于所述文件大小的内存区域,并建立该内存区域与所述文件的对应关系。
10.如权利要求6所述的文件处理系统,其特征在于,该系统还包括第三处理模块;
所述接收模块,还用于接收关闭文件的请求;
所述第三处理模块,用于当所述接收模块接收到关闭文件的请求时,释放与请求关闭的文件对应的内存区域。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210025896.X/1.html,转载请声明来源钻瓜专利网。