【技术实现步骤摘要】
一种保护内存分配方法及装置
[0001]本申请涉及计算机
,特别涉及一种保护内存分配方法及装置。
技术介绍
[0002]目前,电子设备可以提供保护内存给请求方(如,应用程序、操作系统)使用,通常在电子系统启动时,就会默认预留一部分固定大小的内存空间作为保护内存。
[0003]但是,目前各种应用场景,对于保护内存的空间大小不同,如何配置大小合适的保护内存空间,以满足请求方的需求成为问题。
技术实现思路
[0004]本申请提供如下技术方案:
[0005]本申请一方面提供一种保护内存分配方法,包括:
[0006]响应于请求方的保护内存申请请求,判断预留的第一内存空间是否满足所述请求方的内存需求,所述第一内存空间为经过安全保护的内存空间;
[0007]若是,基于所述预留的第一内存空间,为所述请求方分配保护内存空间;
[0008]若否,从共享的第二内存空间中申请满足保护内存需求的内存空间,得到待保护内存空间,对所述待保护内存空间进行安全保护,得到第三内存空间;
[0009]至少基于所述第三内存空间,为所述请求方分配保护内存空间。
[0010]所述判断预留的第一内存空间是否满足所述请求方的内存需求,包括:
[0011]基于预留的第一内存空间对应的内存空间管理信息,确定预留的第一内存空间中是否包含满足所述请求方的内存需求且可使用的连续内存空间,所述内存空间管理信息表征所述预留的第一内存空间的使用情况。
[0012]基于所述预留的第一内存空 ...
【技术保护点】
【技术特征摘要】
1.一种保护内存分配方法,包括:响应于请求方的保护内存申请请求,判断预留的第一内存空间是否满足所述请求方的内存需求,所述第一内存空间为经过安全保护的内存空间;若是,基于所述预留的第一内存空间,为所述请求方分配保护内存空间;若否,从共享的第二内存空间中申请满足保护内存需求的内存空间,得到待保护内存空间,对所述待保护内存空间进行安全保护,得到第三内存空间;至少基于所述第三内存空间,为所述请求方分配保护内存空间。2.根据权利要求1所述的方法,所述判断预留的第一内存空间是否满足所述请求方的内存需求,包括:基于预留的第一内存空间对应的内存空间管理信息,确定预留的第一内存空间中是否包含满足所述请求方的内存需求且可使用的连续内存空间,所述内存空间管理信息表征所述预留的第一内存空间的使用情况。3.根据权利要求1或2所述的方法,基于所述预留的第一内存空间,为所述请求方分配内存空间,包括:从所述预留的第一内存空间中选择满足所述请求方的内存需求且可使用的连续内存空间;将满足所述请求方的内存需求且可使用的连续内存空间分配给所述请求方。4.根据权利要求1所述的方法,从共享的第二内存空间中申请满足保护内存需求的内存空间,得到待保护内存空间,包括:从共享的第二内存空间中申请满足所述请求方的内存需求且可使用的连续内存空间,得到待保护内存空间;所述至少基于所述第三内存空间,为所述请求方分配保护内存空间,包括:从所述第三内存空间中为所述请求方分配保护内存空间。5.根据权利要求4所述的方法,从共享的第二内存空间中申请满足所述请求方的内存需求且可使用的连续内存空间,得到待保护内存空间,包括:如果共享的第二内存空间中未被占用且连续的内存空间满足所述请求方的内存需求,从所述未被占用且连续的内存空间中申请满足所述请求方的内存需求且可使用的连续内存空间,得到待保护内存空间;如果共享的第二内存空间中未被占用且连续的内存空间不满足所述请求方的内存需求,对所述第二内存空间内的数据进行搬移操作,以获取满足所述请求方的内存需求的未被占用且连续的内存空间作为待保护内存空间。6.根据权利要求1所述的方法,所述从共享的第二内存空间中申请满足保护内存需求的内存空间,得到待保护内存空间,包括:若所述共享的第二内存空间内的可用空间不满足所述请求方的内存需求,确定所述请求方的内存需求和所述预留的第一内存空间中可使用的内存空间之间的差值;基于所述差值,从所述共享的第二内存空间中申请满足保护内存需求的内存空间,得到待保护内存空间;所述至少基于所述第三内存空间,为所述请求方分配保护内存空间,包括:基于所述预留的第一内存空间和所述第三内存空间,为所述请求方分配保护内存空
间。7.根据权利要求6所述的方法,所述第二内存空间和第一内存空间的物理地...
【专利技术属性】
技术研发人员:苏金洲,贾永泉,
申请(专利权)人:鼎道智芯上海半导体有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。