内存管理的方法、装置以及终端设备制造方法及图纸

技术编号:19592995 阅读:28 留言:0更新日期:2018-11-28 04:45
本申请实施例提供了一种内存管理的方法、装置以及终端设备。该方法包括:当检测到内存空间申请请求时,确定发送该请求的应用程序所属系统,然后基于所述发送该请求的应用程序所属系统,确定该系统对应的内存空间,然后从确定出的该系统对应的内存空间中为该应用程序分配内存。本申请实施例实现了避免数据从一个系统泄露至另一个系统,提高内存管理的安全性。

【技术实现步骤摘要】
内存管理的方法、装置以及终端设备
本申请涉及内存管理
,具体而言,本专利技术涉及一种内存管理的方法、装置以及终端设备。
技术介绍
内存是计算机中重要的部件之一,用于暂时存放中央处理器(CPU,CentralProcessingUnit)中的运算数据,以及与硬盘等外部存储器交换的数据,由于计算机所有的应用程序均在内存中运行,内存是否稳定也决定了计算机能否稳定地运行,因此如何对内存进行管理成为一个重要的问题。现有技术中对内存进行管理的方法为设置所有的应用程序均对内存进行共享,当某一应用程序运行申请占用部分内存空间时,将空闲的内存空间分配给该应用程序,并且当该应用程序运行结束时,释放对应的内存空间。然而,当通过现有技术中的方式对内存进行管理时,直接将内存中空闲的内存空间分配至该应用程序,而分配给该应用程序的空闲空间可能存在上一次使用该内存空间的其它系统中的应用程序的数据信息,因此当将空闲空间分配给该应用程序之后,可能导致将某一系统中的数据泄露至另一个系统,从而导致系统数据泄露,进而导致对内存进行管理的安全性较低。
技术实现思路
本申请的目的旨在至少能解决上述的技术缺陷之一,特别是对内存进行管理的安全性较低的技术缺陷。第一方面,提供了一种内存管理的方法,该方法包括:当检测到内存空间申请请求时,确定发送该请求的应用程序所属系统;基于所述发送该请求的应用程序所属系统,确定该系统对应的内存空间;从确定出的该系统对应的内存空间中为该应用程序分配内存。第二方面,提供了一种内存管理的装置,该装置包括:确定模块,用于当检测到内存空间申请请求时,确定发送该请求的应用程序所属系统;所述确定模块,还用于基于所述发送该请求的应用程序所属系统,确定该系统对应的内存空间;分配模块,用于从所述确定模块确定出的该系统对应的内存空间中为该应用程序分配内存。第三方面,提供了一种终端设备,该终端设备包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行根据第一方面所示的内存管理的方法。第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所示的内存管理的方法。本申请实施例提供了一种内存管理的方法、装置、终端设备以及计算机可读存储介质,与现有技术中从共享内存直接为应用程序分配内存相比,本申请实施例中当检测到内存空间申请请求时,确定发送该请求的应用程序所属系统,然后基于发送该请求的应用程序所属系统,确定该系统对应的内存空间,并从确定出的该系统对应的内存空间中为该应用程序分配内存,即本申请实施例中每个系统对应一个内存空间,在为应用程序分配内存空间时,从该应用程序所属系统对应的内存空间中为该应用程序分配内存,从而可以避免将一个系统中的数据泄露至其它系统,进而可以提高对内存进行管理的安全性。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。图1为本申请实施例提供的一种内存管理的方法流程示意图;图2为本申请实施例提供的一种内存管理的装置结构示意图;图3为本申请实施例提供的另一种内存管理的装置结构示意图;图4为本申请实施例提供的一种内存管理的终端设备的结构示意图。具体实施方式下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本专利技术的限制。本
技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。首先对本申请涉及的几个名词进行介绍和解释:容器技术是一种非常实用的内核虚拟化技术,可以提供轻量级的虚拟化,以便隔离进程和资源。通过容器技术并且借助于Namespace技术和cgroup技术再加上一些额外的系统间隔离技术,可以实现在同一台设备上同时提供多个系统的运行支撑环境,从而支持多种不同类型的系统应用。容器技术通过使用Namespace机制将位于不同容器间的进程、网络、消息、文件系统、UTS和用户隔离开来。对每个容器中的系统而言,他们都认为自己是独立运行与一个专用的手机平台上。Namespaces:LinuxNamespaces机制提供一种资源隔离方案,PID、进程间通信(Inter-ProcessCommunication,IPC)、Network等系统资源不再是全局性的,而是属于某个特定的namespace;每个namespace里面的资源对其它namespace都是透明的。cgroup技术:全称为controlgroup,即一组进程的行为控制;比如,若限制进程/bin/sh的CPU使用为20%,则可以建一个CPU占用为20%的cgroup,然后将/bin/sh进程添加到这个cgroup中。下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。以下实施例提供了一种内存管理的方法,应用于多系统终端设备,该多系统终端设备包括至少两个操作系统。其中,该操作系统可以为容器操作系统,容器操作系统是通过容器技术进行系统隔离的。实施例一本申请实施例提供了一种内存管理的方法,如图1所示,该方法包括:步骤S101、当检测到内存空间申请请求时,确定发送该请求的应用程序所属系统。对于本申请实施例,当某一应用程序运行需要占用内存空间时,确定该应用程序所属的操作系统。例如,操作系统1中安装有应用程序1以及应用程序2,操作系统2中安装有应用程序3、应用程序4以及应用程序5,当应用程序1运行需要占用内存空间时,确定该应用程序1对应的操作系统为操作系统1。步骤S102、基于发送该请求的应用程序所属系统,确定该系统对应的内存空间。对于本申请实施例,各个操作系统可能对应不同的内存空间;或者各个操作系统共享内存,根据预设规则确定每个操作系统当前对应的内存空间。例如,预设规则可以为基于各块内存上次被占用的操作系统,确定每个操作系统当前对应的内存空间。步骤S103、从确定出的该系统对应的内存空间中为该应用程序分配内存。对于本申请实施例,基于步骤S102中确定出的发送该请求的应用程序所属系统对应的内存空间中,为该应用程序分配预设大小的内存空间;或者基于步骤S102中确定出的发送该请求的应本文档来自技高网
...

【技术保护点】
1.一种内存管理的方法,其特征在于,包括:当检测到内存空间申请请求时,确定发送该请求的应用程序所属系统;基于所述发送该请求的应用程序所属系统,确定该系统对应的内存空间;从确定出的该系统对应的内存空间中为该应用程序分配内存。

【技术特征摘要】
1.一种内存管理的方法,其特征在于,包括:当检测到内存空间申请请求时,确定发送该请求的应用程序所属系统;基于所述发送该请求的应用程序所属系统,确定该系统对应的内存空间;从确定出的该系统对应的内存空间中为该应用程序分配内存。2.根据权利要求1所述的方法,其特征在于,基于所述发送该请求的应用程序所属系统,确定该系统对应的内存空间;从确定出的该系统对应的内存空间中为该应用程序分配内存,包括:基于所述发送该请求的应用程序所属系统,确定该系统所属内存池;从该系统所属内存池中为该应用程序分配内存。3.根据权利要求2所述的方法,其特征在于,基于所述发送该请求的应用程序所属系统,确定该系统所属内存池,之前还包括:为各个系统分配对应的内存池;确定该系统所属内存池,之后还包括:当该系统所属内存池中内存空间不足时,从其它系统对应的内存池中确定待分配给该应用程序的内存空间;清空所述待分配给该应用程序的内存空间,并将清空后的内存空间分配给该应用程序。4.根据权利要求2或3任一项所述的方法,其特征在于,所述方法还包括:当检测到某一应用程序停止运行时,将该应用程序所占用的内存空间释放给该应用程序所属系统对应的内存池。5.根据权利要求1所述的方法,其特征在于,基于所述发送该请求的应用程序所属系统,确定该系统对应的内存空间;从确定出的该系统对应...

【专利技术属性】
技术研发人员:朱少峰
申请(专利权)人:北京元心科技有限公司
类型:发明
国别省市:北京,11

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

1