[发明专利]访问内存的方法及计算机系统有效
| 申请号: | 201510531948.4 | 申请日: | 2015-08-27 |
| 公开(公告)号: | CN105159838B | 公开(公告)日: | 2018-06-26 |
| 发明(设计)人: | 裘稀石;郭志滨 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F12/02 | 分类号: | G06F12/02 |
| 代理公司: | 北京龙双利达知识产权代理有限公司 11329 | 代理人: | 秦卫中;肖鹂 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 映射 子区 页表 物理内存 内存 虚拟地址 业务使用 内核态 计算机系统 内核 转换 访问 非法访问 请求访问 异常处理 有效减少 映射区 触发 死机 监控 | ||
本发明公开了一种访问内存的方法及计算机系统。内核态的对等映射区包括第一对等映射子区和第二对等映射子区,第一对等映射子区和第二对等映射子区具有不同的页表,原有系统任务和原有内核业务使用第一对等映射子区的虚拟地址访问物理内存,该方法包括:当受监控内核业务使用第二对等映射子区的虚拟地址请求访问对应的物理内存时,根据第二对等映射子区的页表的存在present位判断页表转换是否正常;在页表转换异常的情况下,触发缺页异常,并执行缺页异常处理流程;在页表转换正常的情况下,访问物理内存。本发明实施例能够避免内核态内存非法访问造成的影响,提高了系统的可靠性,有效减少了系统的死机频率。
技术领域
本发明涉及计算机领域,尤其涉及访问内存的方法及计算机系统。
背景技术
可靠性、可用性、可维护性(Reliability、Availability、Serviceability,简称RAS)特性是目前高端服务器的一个重要特性。据统计,一分钟的宕机将会使行业造成几十甚至几百万美元的损失,因此系统的高可靠性是一个非常重要的指标,例如可靠性指标为99.999%时,意味着一年下来宕机时间不超过5分钟。
业务如果只涉及到用户态,那么内存非法访问一般会出现段错误(segmentfault)终止程序,这只影响业务自身,并不会对内核态造成干扰。目前内核的缺页异常(page fault)机制可以监测到用户态缺页导致的非法访问。
内核层面的内存是共享的,所有内核页表在系统启动时就已都建立好,内核态不会发生缺页异常。但如果业务是以模块形式涉及到内核态的访问,那么该业务的内存非法访问就有可能引起系统崩溃。例如,一些质量不高的第三方软件(如驱动、特性模块等)由于内存非法访问致使内核态发生缺页异常、访问非法地址等,最终造成系统崩溃、死机。例如,在手机等终端领域,由于开发的应用程序质量层次不齐,经常导致闪退、系统重启等。
发明内容
本发明实施例提供了一种访问内存的方法及计算机系统,能够避免内核态内存非法访问造成的影响,提高了系统的可靠性,有效减少了系统的死机频率。
第一方面,提供了一种访问内存的方法,内核态的对等映射区包括第一对等映射子区和第二对等映射子区,所述第一对等映射子区和所述第二对等映射子区具有不同的页表,原有系统任务和原有内核业务使用所述第一对等映射子区的虚拟地址访问物理内存,所述方法包括:当受监控内核业务使用所述第二对等映射子区的虚拟地址请求访问对应的物理内存时,根据所述第二对等映射子区的页表的存在present位判断页表转换是否正常;在所述页表转换异常的情况下,触发缺页异常,并执行缺页异常处理流程;在所述页表转换正常的情况下,访问所述物理内存。
结合第一方面,在第一种可能的实现方式中,所述执行缺页异常处理流程,包括:确定所述受监控内核业务是否已注册错误处理函数handler;在所述受监控内核业务已注册handler的情况下,执行所述注册的handler;在所述受监控内核业务未注册handler的情况下,执行缺省handler。
结合第一方面或第一种可能的实现方式中,在第二种可能的实现方式中,在所述受监控内核业务使用所述第二对等映射子区的虚拟地址请求访问对应的物理内存之前,所述方法还包括:使用内存分配接口为所述受监控内核业务分配所述物理内存;使用转换宏将所述物理内存对应的物理地址转换为所述第二对等映射子区的虚拟地址;使用所述内存分配接口为所述受监控内核业务返回所述第二对等映射子区的虚拟地址;将所述第二对等映射子区的页表的present位置位。
结合第二种可能的实现方式,在第三种可能的实现方式中,还包括:使用内存释放接口接收所述受监控内核业务返回的所述第二对等映射子区的虚拟地址;使用所述转换宏将所述第二对等映射子区的虚拟地址转换为所述物理地址;使用内存释放接口为所述受监控内核业务释放所述物理地址对应的所述物理内存;将所述第二对等映射子区的页表的present位清零。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510531948.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:聚光太阳能电力设备的连接
- 下一篇:一种软件动态测试运行数据提取方法





