手机总是容易满内存,到底是什么在占内存?

2021-12-19科技477

问这个问题,应该是Android手机的玩家吧,而且你对Android的内存机制也不了解,简单来说,Android中的内存就是给你用的,不用还不正常,根本不用担心内存怎么只剩下几百M呢。

像我们这些在Windows陪伴下成长起来的玩家,“内存不足”经常遇到,但是Android有着与Windows完全不一样的内存管理机制,Windows上的那一套,对Android并没用。

Android中可用内存是个没意义的数字

Windows中一旦程序被关闭,分配的内存也就释放出来,然而在Android中运行过的应用绝大多数是从前台转入到后台,并保留在内存中并不会也不需要主动释放,这样下次再运行该应用时,可以更快的启动。

无论手机的物理内存有多大,Android都能将其充分利用,将需要用到的数据从硬盘读入到内存,以提高数据访问性能,也就是说,在Android系统中,可用内存越小,表明其调用的数据就越多,访问的命中率就越高,系统也就越快。

你可能会问,当打开的应用越来越多,占用的内存总会爆满的,那怎么办呢?

Android有着优秀的内存回收机制

Android使用了一个名为Low Memory Killer(LMK)的机制来管理内存,当内存出现不足时,LMK就开始挥舞屠刀杀掉一些进程以获得新的内存空间。

Android有一套独特的进程管理,它会以oom_adj来表示进程的重要性,oom_adj的值越小,则重要性越高,oom_adj的值越大,该进程被系统选中杀掉的可能性越高。

Android默认的进程管理策略

为了更好的评估进程的重要性,Android将进程分为六类,如下所述:

前台进程:oom_adj=0,指正在当前屏幕上显示的进程和一些系统进程,一旦你回到主界面 或切换到其它程序,当前进程变为隐藏进程,前台进程是不会杀掉的;

可见进程:oom_adj=1,可见进程虽然不在前台,但依然可见,如widget、输入法等,这部分进程也非常重要,基本上不可能被杀掉;

次要服务:oom_adj=2,目前正在运行的一些服务,如下载、播放音乐,它们虽然属于次要服务,但与系统息息相关,一般也不会被杀掉;

隐藏进程:oom_adj=7,这个很容易理解,当应用从前台转入到后台后,也就成为隐藏进程了,通常一键清理内存就是清掉这些隐藏进程;

内容提供者:oom_adj=14,没有程序实体,只提供内容供别的程序去用的,比如日历供应节点,显然这类进程最有可能被先杀掉;

空进程:oom_adj=15,有些程序在程序退出后,依然会在进程中驻留一个空进程,这个进程里没有任何数据在运行,作用往往是提高该程序下次的启动速度或者记录程序的一些历史信息,这类进程无疑是要最先被杀掉的。

Android的内存管理机制非常适合嵌入式系统,能充分发挥出硬件的潜力,当内存越大,它的优势就越明显。

Android手机需要清内存吗?不需要

那么Android手机到底要不要清内存?结论是:不需要!其实这个结论也适用iPhone手机。

相关文章

提前避谷歌专利大棒 手机巨头无奈开发自主OS

  在开源软件大行其道的今天,手机操作系统已不再那么神秘,任何有足够财力、人力的企业,依赖现有的开源资源,都可以比较容易地推出一个能够运行的手机操作系统。   于是乎,基于Android衍生出来的手机操作系统如雨后春笋般迅速显露于市场。如三星的TouchWiz 、摩托的Blur、LG Optimus...

有谁用过神舟的电脑,客观评价一下怎么样?

近期是九代酷睿+GTX 16系显卡游戏本集中上市的时间,从目前已经上市的游戏本来看,价格多集中在5K-9K之间,其中搭载GTX 1660 Ti显卡的游戏本价格要稍高一些,不过比起RTX游戏本来说还是便宜不少。   要说最具性价比的游戏本,一定非神舟莫属。比如神舟的战神Z7-CT5NA,这是一款搭载了...

如何将ca根证书安装到收信任的根证书颁发机构存储区中?

一般情况下操作系统(手机)内置了CA权威机构的根证书,就按这个提示来看,应该是某个APP在你的根证书目录下安装了其自己签发的根证书。 而浏览器、操作系统中的CA根机构证书有哪些,是由CA论坛决定,所以上述行为操作系统视其有风险! 具体要查看Android中的根证书,大多机型查看方法: 设置 - 安全...

怎么卸载流氓软件?

[谢邀],我换了台K016,(可插移动,联通卡打电话,还可插储存卡,但均未插),系统自带了N多流氓软件,获取Root权限才能卸载,但因此会导致手机崩溃,便打消了主意。先把用不着的应用隐藏了。应用太多,很占内存,差不多占到49%将近一半!我看了下,用的微信有48个好友,发的信息很频繁,但占内存还不到1...

急需买一部手机,内存大耐用的。买什么牌子和型号的呢?

如果只是需要大内存的手机,那每一家品牌都能满足,但有两点不得不提醒一下: 1、中端机、低端机、高端机、旗舰机对于“大内存”的定义不一样,对于中低端机来说256G就是大内存了,而高端机、旗舰机则有512G的,甚至还有1T的版本, 2、越是高端、越是大牌的手机大内存溢价越高。简单来说,普通品牌的256G...

电脑内存够用的情况下,再加一根内存有多大的提升?

内存永远是不够用的,别看你现在够用,随着时间的推移系统和应用程序版本的不断更新,他们占用的资源会越来越多,最后就会出现启动和运行程序时明显的响应缓慢,整个操作也会不流畅起来! 因此,现在有条件的情况下,能加内存就加内存!至于怎么加自然也是有策略讲究的。 1、加内存的准备工作想要添加内存就先要做一些准...

准备换一部手机,小米5、三星a9100、魅族pro6和mx6大家什么建议?

首先,手机要用三年,那么最主要的是手机内存和存储够用,那样的话,先不论品牌,手机内存从未来三年来看,4G大内存是起步,6G是主流,8G是顶级,64G闪存够用,128G更好;当然,除了容量大小,还有内存和闪存的读写速度,米5采用的最新的UFS2.0闪存和LPDDR4内存,而魅族PRO6,MX6,三星A...

什么叫OMS操作系统?

OMS      为中国移动“深度定制”的移动操作系统。   OMS是基于Linux内核,采用Android源代码,但在业务层和用户体验层与此前的谷歌手机完全不一样。   移动业务层面:OMS在终端手机上完整深度订制了“飞信、快讯、无线音乐随身听、139邮箱、移动梦网、号簿管家、百宝箱等”中国移动数...

什么配置可以玩守望先锋吗?

这个问题,我亲身体会。那么,要玩守望,有大致三种分类,最低或者较低画质和30~40帧,中等画质和40~60帧,最高画质40~60帧。这个游戏我建议帧数至少30,越高越好,低于30没法玩。至于为什么这么分呢,因为我最开始的时候就是为了帧数,把画质调的最低,因为只能最低,毕竟,显卡是核显,cpu双核降频...

Android软件是什么?

  Android软件就是可以在安卓系统上运行的软件。   Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。