一种内存分配方法组成比例

技术编号:39679190 阅读:10 留言:0更新日期:2023-12-11 18:56
本申请涉及一种内存分配方法

【技术实现步骤摘要】
一种内存分配方法、装置、设备及存储介质


[0001]本申请涉及计算机操作系统
,具体涉及一种内存分配方法

装置

设备及存储介质


技术介绍

[0002]目前,在基于微内核操作系统运行应用程序时,电子设备会随机向该应用程序的进程分配内存

[0003]但是,上述方法中,电子设备向该应用程序的进程分配内存的时候,可能会造成内存资源浪费,影响内存分配的高效性和准确性


技术实现思路

[0004]本申请提供一种内存分配方法

装置

设备及存储介质,以至少解决相关技术中基于微内核操作系统运行应用程序时,电子设备向该应用程序的进程分配内存的时候,可能会造成内存资源的浪费,进而影响内存分配的高效性和准确性的技术问题

本申请的技术方案如下:
[0005]根据本申请涉及的第一方面,提供一种内存分配方法,应用于电子设备,该电子设备包括微内核以及服务组件,包括:接收目标进程发送的目标内存分配请求,该目标内存分配请求包括目标容量,该目标内存分配请求用于请求从内存池中为该目标进程分配内存,该目标进程为该微内核中包括的进程或者为该服务组件中包括的进程;在该内存池的可用内存容量大于或等于该目标容量的情况下,基于该目标容量,从内存池中为该目标进程分配内存

[0006]根据上述技术手段,本申请可以在接收到该目标进程发送的目标内存分配请求后,确定内存池的可用容量是否大于或等于该目标内存分配请求中包括的目标容量,在该内存池的可用内存容量大于或等于目标容量的情况下,说明该内存池中的可用容量可以满足该目标进程的容量需求,此时电子设备可以基于该目标容量,准确地

有效地从内存池中为该目标进程分配内存

[0007]在一种可能的实施方式中,上述在该内存池的可用内存容量大于或等于该目标容量的情况下,基于该目标容量,从内存池中为该目标进程分配内存,具体可以包括:确定该目标进程是否为该微内核中包括的进程;在该目标进程为该微内核中包括的进程的情况下,确定该内存池中的共享内存的容量是否大于或等于该目标容量,该共享内存用于存储多个相同类型的进程的数据信息;在该内存池中的共享内存的容量大于或等于该目标容量的情况下,基于该目标容量,从该共享内存中为该目标进程分配内存

[0008]根据上述技术手段,本申请可以确定该目标进程是否为目标进程,并且在该目标进程为该目标组件的进程的情况下,说明该目标进程为该微内核中包括的进程,此时电子设备可以准确地确定出该目标进程所需内存为共享内存,此时电子设备再确定该内存池中的共享内存的容量是否大于或等于该目标容量,并在该内存池中的共享内存的容量大于或
等于目标容量的情况下,电子设备可以基于该目标容量,准确地

有效地从共享内存中为该目标进程分配内存

[0009]在一种可能的实施方式中,上述在该内存池的可用内存容量大于或等于该目标容量的情况下,基于该目标容量,从内存池中为该目标进程分配内存,具体还可以包括:确定该目标进程是否为该服务组件中包括的进程;在该目标进程为该服务组件中包括的进程的情况下,确定该内存池中的私有内存的容量是否大于或等于该目标容量,该私有内存用于存储一个进程的数据信息;在该内存池中的私有内存的容量大于或等于该目标容量的情况下,基于该目标容量,从该私有内存中为该目标进程分配内存

[0010]根据上述技术手段,在该目标进程不为该目标组件的进程的情况下,说明该目标进程为该服务组件中包括的进程,此时电子设备可以准确地确定出该目标进程所需内存为私有内存,此时电子设备再确定该内存池中的私有内存的容量是否大于或等于该目标容量,并在该内存池中的共享内存的容量大于或等于目标容量的情况下,电子设备可以基于该目标容量,准确地

有效地从私有内存中为该目标进程分配内存

[0011]在一种可能的实施方式中,上述方法还包括:在该内存池中存在多个非连续内存碎片的情况下,对该多个非连续内存碎片进行聚类操作,以使得该多个非连续内存碎片合并为连续内存

[0012]根据上述技术手段,在该内存池中存在多个非连续内存碎片的情况下,说明该内存池中存在空闲内存碎片,此时电子设备可以对该多个非连续性内存碎片中每个非连续内存碎片进行聚类操作,以使得该多个非连续性内存碎片可以有效地合并为连续内存,进而在增加内存利用率

[0013]根据本申请提供的第二方面,提供一种内存分配装置,包括接收单元以及处理单元

该接收单元,用于接收目标进程发送的目标内存分配请求,该目标内存分配请求包括目标容量,该目标内存分配请求用于请求从内存池中为该目标进程分配内存,该目标进程为该微内核中包括的进程或者为该服务组件中包括的进程;该处理单元,用于在该内存池的可用内存容量大于或等于该目标容量的情况下,基于该目标容量,从内存池中为该目标进程分配内存

[0014]在一种可能的实施方式中,上述内存分配装置还包括确定单元;该确定单元,用于确定该目标进程是否为该微内核中包括的进程;该确定单元,用于在该目标进程为该微内核中包括的进程的情况下,确定该内存池中的共享内存的容量是否大于或等于该目标容量,该共享内存用于存储多个相同类型的进程的数据信息;该处理单元,还用于在该内存池中的共享内存的容量大于或等于该目标容量的情况下,基于该目标容量,从该共享内存中为该目标进程分配内存

[0015]在一种可能的实施方式中,上述内存分配装置还包括确定单元;该确定单元,用于确定该目标进程是否为该服务组件中包括的进程;该确定单元,用于在该目标进程为该服务组件中包括的进程的情况下,确定该内存池中的私有内存的容量是否大于或等于该目标容量,该私有内存用于存储一个进程的数据信息;该处理单元,还用于在该内存池中的私有内存的容量大于或等于该目标容量的情况下,基于该目标容量,从该私有内存中为该目标进程分配内存

[0016]在一种可能的实施方式中,该处理单元,还用于在该内存池中存在多个非连续内
存碎片的情况下,对该多个非连续内存碎片进行聚类操作,以使得该多个非连续内存碎片合并为连续内存

[0017]根据本申请提供的第三方面,提供一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行指令,以实现上述第一方面及其任一种可能的实施方式的方法

[0018]根据本申请提供的第四方面,提供一种计算机可读存储介质,当计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述第一方面中及其任一种可能的实施方式的方法

[0019]由此,本申请的上述技术特征具有以下有益效果:
[0020](1)
电子设备在接收到该目标进程发送的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种内存分配方法,其特征在于,应用于电子设备,所述电子设备包括微内核以及服务组件,包括:接收目标进程发送的目标内存分配请求,所述目标内存分配请求包括目标容量,所述目标内存分配请求用于请求从内存池中为所述目标进程分配内存,所述目标进程为所述微内核中包括的进程或者为所述服务组件中包括的进程;在所述内存池的可用内存容量大于或等于所述目标容量的情况下,基于所述目标容量,从内存池中为所述目标进程分配内存
。2.
根据权利要求1所述的内存分配方法,其特征在于,所述在所述内存池的可用内存容量大于或等于所述目标容量的情况下,基于所述目标容量,从内存池中为所述目标进程分配内存,包括:确定所述目标进程是否为所述微内核中包括的进程;在所述目标进程为所述微内核中包括的进程的情况下,确定所述内存池中的共享内存的容量是否大于或等于所述目标容量,所述共享内存用于存储多个相同类型的进程的数据信息;在所述内存池中的共享内存的容量大于或等于所述目标容量的情况下,基于所述目标容量,从所述共享内存中为所述目标进程分配内存
。3.
根据权利要求1所述的内存分配方法,其特征在于,所述在所述内存池的可用内存容量大于或等于所述目标容量的情况下,基于所述目标容量,从内存池中为所述目标进程分配内存,还包括:确定所述目标进程是否为所述服务组件中包括的进程;在所述目标进程为所述服务组件中包括的进程的情况下,确定所述内存池中的私有内存的容量是否大于或等于所述目标容量,所述私有内存用于存储一个进程的数据信息;在所述内存池中的私有内存的容量大于或等于所述目标容量的情况下,基于所述目标容量,从所述私有内存中为所述目标进程分配内存
。4.
根据权利要求1‑3中任一项所述的内存分配方法,其特征在于,所述方法还包括:在所述内存池中存在多个非连续内存碎片的情况下,对所述多个非连续内存碎片进行聚类操作,以使得所述多个非连续内存碎片合并为连续内存
。5.
一种内存分配装置,其特征在于,应用于电子设备,所述电子设备包括微内核以及服务组件,包括接收单元以及处理单元;所述接收单元,用于接收目标进程发送的目标内存分配请求,所述目标内存分配请求包括...

【专利技术属性】
技术研发人员:陈磊李毓强王晓伟
申请(专利权)人:重庆长安汽车股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1