[发明专利]内存访问方法、芯片、电子设备及计算机可读存储介质在审
申请号: | 202111361771.X | 申请日: | 2021-11-17 |
公开(公告)号: | CN116136826A | 公开(公告)日: | 2023-05-19 |
发明(设计)人: | 黄强 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F12/06;G06F12/1009;G06F12/109;G06F9/50 |
代理公司: | 深圳市赛恩倍吉知识产权代理有限公司 44334 | 代理人: | 刘龄霞 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 访问 方法 芯片 电子设备 计算机 可读 存储 介质 | ||
本申请实施例提供了一种内存访问方法,涉及终端领域。在进程的启动参数中设置内存自管信息,以在用户空间建立第一虚拟地址区间与第一物理地址区间的映射,当接收到进程的内存访问请求时,从第一虚拟地址区间中选取与内存访问请求对应的第二虚拟地址区间;进入内核空间响应内存访问请求返回第三虚拟地址区间,记录第三虚拟地址区间与第二虚拟地址区间映射的物理地址的映射关系,及基于第三虚拟地址区间为进程分配虚拟内存。本申请实施例还提供一种电子设备、芯片及计算机可读存储介质。本申请通过预留一段映射了物理内存的虚拟地址区间,使得进程分配到的虚拟地址是已建立物理地址映射的,不会触发缺页异常,可实现进程内存访问的确定性。
技术领域
本申请涉及终端领域,尤其涉及一种内存访问方法、芯片、电子设备及计算机可读存储介质。
背景技术
在现有的操作系统(如安卓系统)中,内核可以为应用程序进程分配虚拟内存地址,使得应用程序进程可以较方便地访问内存,操心系统可以通过内存映射将虚拟内存地址映射到配物理内存地址。内核可以为应用程序进程维护一张页表,页表记录虚拟内存地址与物理内存地址的映射关系。当应用程序进程访问的虚拟内存地址在页表中查找不到时,操作系统产生一个缺页异常,进入内核空间分配物理内存地址、更新页表,最后再返回用户空间,恢复进程的运行,增加了进程访问内存的时延。
操作系统进入内核空间分配物理内存地址时,可能出现内存分配失败,触发内存回收,内存回收成功后再进行物理内存地址分配,进一步增加了进程访问内存的时延,对于时延要求较低的应用程序使用场景,影响用户的使用体验。
发明内容
有鉴于此,有必要提供一种内存访问方法,通过预留一段映射了物理内存的虚拟地址区间,进程分配到的虚拟地址是已建立物理地址映射的,可实现进程内存访问的确定性。
本申请实施例第一方面公开了一种内存访问方法,应用于电子设备,电子设备安装有操作系统,操作系统包括用户空间与内核空间。内存访问方法包括:在进程的启动参数中设置内存自管的配置信息,其中配置信息用于在用户空间建立第一虚拟地址区间与第一物理地址区间的映射关系;接收进程的内存访问请求,从第一虚拟地址区间中选取一段与内存访问请求对应的第二虚拟地址区间,其中第二虚拟地址区间与第一物理地址区间中的第二物理地址区间建立有映射关系;基于内存访问请求发起系统调用;进入内核空间响应系统调用,返回第三虚拟地址区间;在内核空间记录第三虚拟地址区间与第二物理地址区间的映射关系;基于第三虚拟地址区间响应内存访问请求,为进程分配虚拟内存。
通过采用该技术方案,通过在进程的启动参数中设置内存自管的配置信息,实现在进程本地管理一段映射了物理内存区间的虚拟地址区间,进程后续分配到的虚拟地址是已建立物理地址映射的,不会触发缺页异常,可实现进程内存访问的确定性,可满足部分对内存访问时延有较高要求场景的需求。
在一些实施例中,用户空间包括库函数,内存访问方法还包括:在库函数中建立第一虚拟地址区间与第一物理地址区间的映射关系。
通过采用该技术方案,在库函数中建立第一虚拟地址区间与第一物理地址区间的映射关系,实现在进程本地管理一段映射了物理内存的虚拟地址区间,例如在Libc库中建立第一虚拟地址区间与第一物理地址区间的映射关系。
在一些实施例中,配置信息包括第一物理地址区间,在库函数中建立第一虚拟地址区间与第一物理地址区间的映射关系,包括:库函数基于第一物理地址区间向操作系统发起虚拟内存分配请求;操作系统响应虚拟内存分配请求返回第一虚拟地址区间;库函数建立第一虚拟地址区间与第一物理地址区间的映射关系。
通过采用该技术方案,库函数向操作系统申请为本地管理的物理内存地址区间分配虚拟内存地址区间,再建立物理内存地址区间与虚拟内存地址区间的映射关系,实现在进程本地管理一段映射了物理内存的虚拟地址区间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111361771.X/2.html,转载请声明来源钻瓜专利网。