[发明专利]低内存安卓设备下提高游戏流畅度的方法在审
申请号: | 201610085536.7 | 申请日: | 2016-01-29 |
公开(公告)号: | CN105760228A | 公开(公告)日: | 2016-07-13 |
发明(设计)人: | 刘刚 | 申请(专利权)人: | 珠海汇迪科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 广东省珠海市高新区唐*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 设备 提高 游戏 流畅 方法 | ||
技术领域
本发明涉及安卓开发领域,特别涉及安卓性能优化和内存优化技术领域。
背景技术
目前,市面上的安卓设备,比如手机、平板电脑,大部分内存配置都在512MB以上,安卓官方公布的数据也要求系统总内存最低不少于512MB。但由于消费电子领域竞争日益激烈,各大厂家方案商都在想尽办法缩减成本,于是内存低于256MB的安卓设备就有了市场,通过内存的缩减,可将产品价格做到更低,性能方面也会折损,因此这类产品往往面向儿童市场或者礼品市场。现有技术下,低内存安卓设备启动后,所剩内存非常小,只有几十兆字节,运行小游戏还比较顺畅,但运行大型游戏,比如神庙逃亡,就会严重卡顿。
大型游戏对内存的占用很大,空闲内存会在游戏加载的瞬间被分配殆尽,当空闲内存无法满足新的分配需求时,系统就进入复杂而繁琐的内存回收环节。内存回收的一个主要目的,就是将可以回收的文件系统缓存转化为空闲内存,供应用程序分配。内存回收的耗时主要体现在:
1.内存回收算法非常复杂,会对系统的物理页面进行检查、标记、迁移、释放等操作,虽然单个物理页面的这些操作不需要花费多少时间,但一次分配请求通常需要几百KB、几MB、甚至几十MB的数据,包含非常多的物理页面,因此总来看就比较耗时了。
2.应用层常常需要分配大块的连续物理内存,而系统可用的剩余内存往往是零散的,这就要求将零散的内存进行整理,组合成大的连续物理内存。整理的过程包括,将这些零散内存原来的内容,拷贝到新的空闲内存区域,为这些新区域重新建立虚拟内存页表。内容拷贝和页面建立都需要花费一定的时间,因此导致整个内存分配过程比较耗时。
由于在空闲内存不足时,每一笔新的内存分配请求都可能会导致内存回收操作,而游戏启动和运行过程中,有非常多的内存分配请求,因此处理器的时间被严重消耗在内存回收过程中了,导致应用层无法及时得到响应,出现游戏界面严重卡顿的现象。
发明内容
为了克服低内存(内存低于256MB)安卓设备运行大型游戏卡顿的不足,本发明提供了一种低内存安卓设备下提高游戏流畅度的方法。
本发明的目的是:当系统内存紧张时,尽可能地避免内存分配过程中可能出现的复杂而繁琐的内存回收环节,适时地将文件系统缓存直接释放掉,以得到较多的空闲内存,满足应用层的瞬时需要。文件系统缓存属于可直接丢弃的内存,其作用是可以提高文件访问的速度,当从磁盘介质读取文件时,将文件内容缓存到内存中,下次读取时直接从内存中获取,内存读取的速率远远高于磁盘读取,因此这样能提高文件读取的效率。但当空闲内存很少时,系统性能的瓶颈不在文件读取速度,而是在内存分配的速度上。因此为了提高内存分配的速度,需要把文件系统缓存快速清除掉,转换成空闲内存。否则,空闲内存的不足将导致内存分配时,进入复杂繁琐的内存回收流程,严重影响游戏的流畅度。
本发明解决其技术问题所采用的技术方案是:在安卓应用层中,开启一个定时器,每隔5秒获取系统空闲内存和文件系统缓存的大小,若发现空闲内存小于20MB,或者文件系统缓存大于总内存的三分之一时,将文件系统缓存清除,释放给系统,以转换成空闲内存。当空闲内存小于20MB时,说明系统空闲内存已经严重不足,此时应用层申请内存时,极有可能导致内存回收操作,因此需要及时增大空闲内存。当文件系统缓存大于总内存的三分之一时,文件系统缓存对文件读取的作用,已经不那么明显,而且此时空闲内存即使大于20MB,也是所剩不多,若应用层申请大块的连续物理内存,极有可能导致内存回收或者分配失败,因此要清除掉文件系统缓存,以获得更多的空闲内存。
本发明的有益效果是:使得在低内存设备上,系统剩余可用内存能尽量以空闲内存的形式存在,减少内存分配可能出现的内存回收操作,提高应用程序分配内存成功的概率,提升大型游戏运行的流畅度。
附图说明
下面结合附图和实施例对本发明进一步说明。
图1是安卓应用层申请内存的一般流程。
图2是本发明的实现方式。
具体实施方式
图1是安卓应用层申请内存的一般流程:
101,应用层通过malloc接口申请内存;
102,内核态通过page_alloc申请物理内存;
103,若空闲的物理内存充足,则分配成功,跳转到步骤106,否则进入内存整理,跳转到步骤104;
104,内核态内存整理,比较耗时的过程;
105,内存整理完后,空闲的物理内存充足,则分配成功跳转到步骤106,否则分配失败跳转到步骤107;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海汇迪科技有限公司,未经珠海汇迪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610085536.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种进程处理方法及装置
- 下一篇:一种操作系统部署方法及系统