【技术实现步骤摘要】
一种内存管理方法和装置
本专利技术涉及通信
,特别涉及一种内存管理方法和装置。
技术介绍
计算机中所有程序的运行都是在内存中进行的,同时内存还是用于暂时存放中央处理器(CentralProcessingUnit,简称CPU)中的运算数据、与外部磁盘等外部存储器交换数据的媒介。因此,内存的使用对计算机性能的影响非常大。对嵌入式终端来说尤其如此,Android系统是一款基于Linux内核,面向移动终端的操作系统,其所有可用的内存仅限于系统随机存取存储器(Random-AccessMemory,简称RAM)。Android系统中,当应用退出时,不清理其所占的内存,Linux内核进程也相应的继续存在,即“退出但不关闭”,从而使得用户调用程序时能够在第一时间得到响应。当系统内存不足时,将激活内存回收过程。例如,当使用手机一段时间后,后台存在大量的系统服务和应用,为了提高用户体验,减少启动时间,在应用切到后台后,操作系统会尽量保留该应用所占的内存。但是由于内存大小的限制,当在内存不足时,启动一个新的应用或申请一块新的内存时,触发操作系统内核的内存回收过程,即将最近最少使 ...
【技术保护点】
一种内存管理方法,其特征在于,所述方法包括:确定内存中需要换出的内存页面;对于每个需要换出的内存页面,根据所述内存页面,生成用于对所述内存页面执行回收的工作任务;确定专用工作线程,并将每个所述工作任务分配给所述专用工作线程执行。
【技术特征摘要】
1.一种内存管理方法,其特征在于,所述方法包括:确定内存中需要换出的内存页面;对于每个需要换出的内存页面,根据所述内存页面,生成用于对所述内存页面执行回收的工作任务;确定专用工作线程,并将每个所述工作任务分配给所述专用工作线程执行。2.根据权利要求1所述的方法,其特征在于,确定内存中需要换出的内存页面,包括:对于内存的最近最少使用LRU链表中的每个页框,若确定所述页框已脏且允许回写,或者允许换出,确定所述页框内的内存页面为需要换出的内存页面;或者对于内存的LRU链表中的每个页框,若根据指示确定所述页框需要回收且根据内存的扫描控制结构信息确定需要移除所述页框与进程的所有映射关系,确定所述页框中的内存页面为需要换出的内存页面。3.根据权利要求2所述的方法,其特征在于,对于每个需要换出的内存页面,根据所述内存页面,生成用于对所述内存页面执行回收的工作任务,包括:按照设定的工作任务格式,生成需要换出的内存页面对应的工作任务,所述工作任务中包含所述内存页面所在的页框的页框描述符、所述扫描控制结构信息、用于指示是否更新页框的转换表项内容的标志位和单页框回收函数;其中,所述单页框回收函数用于执行如下处理:根据所述页框描述符、所述标志位和所述扫描控制结构中的目标虚拟内存空间VMA字段,移除对应的页框与进程的所有映射关系;根据所述页框描述符、所述页框对应的地址空间和所述扫描控制结构信息,将所述页框内的数据写入至交换分区或回写至文件系统中。4.根据权利要求1所述的方法,其特征在于,确定内存中需要换出的内存页面,包括:对于每个指定的进程,遍历所述进程的各VMA对应的各级页目录和各页表,其中:对于当前遍历的VMA,确定所述当前遍历的VMA对应的页表项对应的页框,并将所确定的页框从LRU链表中隔离,并存储至隔离页链表中;若所述隔离页链表中的页框数目达到设定阈值或即将遍历下一个VMA,将所述隔离页链表中存储的页框确定为需要换出的内存页面。5.根据权利要求4所述的方法,其特征在于,对于每个需要换出的内存页面,根据所述内存页面,生成用于对所述内存页面执行回收的工作任务,包括:按照设定的工作任务格式,生成需要换出的内存页面对应的工作任务,所述工作任务中包含所述隔离页链表、所述隔离页链表中的页框对应的VMA和页框链表回收函数。6.一种内存管理方法,其特征在于,所述方法包括:在确定发生缺页异常时,确定当前访问的内存地址对应的内存页面已从所述内存换出;生成用于对已换出的内存页面执行换入的工作任务,所述工作任务中包含已换出的内存页面在交换分区或交换缓存中的位置信息、当前访问的内存地址、已换出的内存页面所属进程的VMA、用于为已换出的内存页面在所述内存中分配页框的页框分配标识、及页面异步换入函数;确定专用工作线程,并将每个所述工作任务分配给所述专用工作线程执行。7.根据权利要求6所述的方法,其特征在于,所述方法还包括:确定已换出的内存页面在所述交换分区或所述交换缓存中的相邻页面;对于每个相邻页面,生成用于对所述相邻页面执行换入的工作任务,所述工作任务中包含所述相邻页面在所述交换分区或所述交换缓存的位置信息、当前访问的内存地址、已换出的内存页面所属的进程的VMA、用于为已换出的内存页面在所述内存中分配页框的页框分配标识、及页面异步换入函数;确定专用工作线程,并将每个所述工作任务分配给所述专用工作线程执行。8.一种内...
【专利技术属性】
技术研发人员:陈秋林,姚旺来,应云剑,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。