[发明专利]文件数据访问方法和计算机系统有效
| 申请号: | 201580001269.4 | 申请日: | 2015-08-20 |
| 公开(公告)号: | CN107209715B | 公开(公告)日: | 2019-09-27 |
| 发明(设计)人: | 于群;徐君;王元钢 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F12/02 | 分类号: | G06F12/02 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 文件 数据 访问 方法 计算机系统 | ||
本发明实施例公开了一种文件数据访问方法和计算机系统。在获取到进程对第一文件数据进行访问的访问信息时,通过页全局目录空间访问进程的页全局目录;基于对所述页全局目录的访问,根据所述第一文件数据在所述文件系统空间中的第一虚拟地址确定所述页全局目录中的第一页全局目录项,并将所述进程的文件页表的基地址链接到所述第一页全局目录项,所述文件页表指向所述文件数据的物理地址,以便所述处理器根据所述第一虚拟地址并通过所述页全局目录和所述文件页表索引得到所述第一文件数据在所述内存中的第一物理地址,以及根据所述第一物理地址对所述第一文件数据进行访问,实现在用户态下对第一文件数据的安全访问。
技术领域
本发明实施例涉及计算机系统领域,尤其涉及文件数据访问方法和计算机系统。
背景技术
文件系统,是一种存储和组织计算机数据的方法,采用文件形式来组织存储器中存储的数据,并定义文件的访问策略;严格地说,文件系统是一套实现了数据的存储、分级组织、存取等操作的数据管理软件。
传统的文件系统工作在内核态,而用户进程运行在用户态,若用户态运行的进程需要访问存储器中的文件,如对文件进行读/写操作,需要执行文件系统接口函数,执行文件系统接口函数属于系统调用,会从用户态切换到内核态,再在内核态下执行文件系统接口函数实现对存储器中文件的访问,完成文件访问后再从内核态切换回用户态,继续运行进程;两次用户态与内核态之间的切换占用资源,占用时间。
发明内容
有鉴于此,本发明实施例提供了一种文件数据访问方法和计算机系统;实现在用户态安全访问文件数据。
第一方面,本发明实施例提供了一种文件数据访问方法,所述方法应用于计算机系统,所述计算机系统包括处理器和内存,所述内存为非易失性存储器,所述处理器上运行操作系统,所述操作系统采用文件系统管理所述内存中的文件数据;
所述操作系统上运行的进程在初始化时被分配有用户空间和内核空间,所述进程的用户空间包括文件系统空间和页全局目录空间,所述页全局目录空间为页全局目录的虚拟地址空间,用于映射到所述页全局目录在所述内存中的物理地址空间,所述文件系统空间为所述文件数据的虚拟地址空间,用于映射到所述文件数据在所述内存中的物理空间;
所述方法包括:
在获取到所述进程对第一文件数据进行访问的访问信息时,通过所述页全局目录空间访问所述页全局目录;
基于对所述页全局目录的访问,根据所述第一文件数据在所述文件系统空间中的第一虚拟地址确定所述页全局目录中的第一页全局目录项,并将所述进程的文件页表的基地址链接到所述第一页全局目录项,所述文件页表指向所述文件数据的物理地址,以便所述处理器根据所述第一虚拟地址并通过所述页全局目录和所述文件页表索引得到所述第一文件数据在所述内存中的第一物理地址,以及根据所述第一物理地址对所述第一文件数据进行访问。
结合第一方面,在第一方面的第一种可能的实现方式中,所述方法还包括:
在对所述第一文件数据的访问结束时,断开所述所述文件页表的基地址与所述页全局目录中的第一页全局目录项之间的链接。
结合第一方面或者第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述内存中还记录有页全局目录页表,所述页全局目录页表指向所述页全局目录的基地址;
所述通过所述页全局目录空间访问所述页全局目录,包括:
获取所述页全局目录空间中的预设地址,根据所述预设地址索引到所述页全局目录中的第二页全局目录项;
根据所述第二页全局目录项查询所述页全局目录页表,并根据所述页全局目录页表指示的所述页全局目录页的基地址访问所述页全局目录。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580001269.4/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





