为什么我的内存扩展完了还是8g(我把内存扩展到32G后)

首先,还是问大家这两个问题:你的手机内存(“运存”)有多大?你认为安卓手机多大的内存够用?

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(1)

首先,果子说下自己的答案,我正在使用的小米 10 Pro 搭载的为 12G 内存,真实可用大小为 11596M 。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(2)

果子认为:在目前正常情况下,12G 内存已经足矣。继续增大其实对实际体验影响微乎其微,还不如多做内存优化。

而最近大家应该也有看到了,目前各大手机都陆续推出了内存融合(扩展)技术,在用户现有内存下“扩大”容量。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(3)

甚至,中兴高管吕钱浩还暗示将推出 20G 内存手机!

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(4)

看到这里果子默不作声,拿起自己的手机,反手将手机内存再扩充了 20G !

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(5)

现在 32G 内存的手机来了,还可以更大,但没必要!

这内存扩展到底是个什么东西?它究竟是营销噱头,还是说可以真正提升用户体验?它有什么优劣?

废话不多说,咱们来好好聊聊。

内存&虚拟内存

内存,即为随机存取存储器(英语:Random Access Memory,缩写:RAM)内存主要是和 CPU(处理器)直接交换数据的。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(6)

* 三星 12G 内存芯片

严格的讲:内存就是内存,没有运行内存这一说法。设备所有的软件、进程都需要在内存中运行。

因此,想要手机打开应用快、不杀后台。就需要高速以及大容量内存。现在部分游戏手机都用上 18G 物理内存了。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(7)

而当时早期的安卓手机,由于技术原因,2G 内存都算的上旗舰配置,而大众群体大多是 1G 甚至 512M 的内存配置。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(8)

并且,由于 Android 系统是基于 Linux 的,因此那时候就出现了最早的安卓内存扩展概念,即虚拟内存。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(9)

同 Windows 一致,安卓的虚拟内存原理也异曲同工。也是通过在存储空间划分一部分空间,充当 RAM 使用

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(10)

如果,你是一位老安卓发烧友,一定记得上面这两个软件。

没错,这就是 2014 年前后盛行的内存扩展软件

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(11)

果子翻出自己的老古董 红米1s 依旧可以正常运行。

在那个普遍硬件性能不高的年代,利用内存扩展软件,提升了一大批手机的应用体验,杀后台,挂不住应用的状况有所缓解。

内存扩展原理

但是,内存扩展依旧是有局限性的。

其实现原理即为在本地分配交换分区后,生成一个对应大小的 swap 文件,所占用的存储区域就被称为虚拟内存。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(12)

在设备使用过程中,依旧会优先使用真实内存当内存不足时,系统就自动释放不常用的应用,并将其保存在 swap 空间中

当用户切回应用时,系统自动从 swap 空间读取数据,再恢复到真实内存中,最终实现交换。

简单的来讲,正因为交换分区的存在,虚拟内存并不是越大越好。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(13)

如同文章开始所展示的,果子已经在 /data/ 目录下创建了 20G 的虚拟内存,通过检测工具测试可正常加载使用。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(14)

但是在真实使用下表现如何呢?

在打开一波应用后,我们发现,即使手机物理内存占用高达近 80% ,交换分区的虚拟内存依旧处于较低的占用

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(15)

因此,这里就不得出提出另一个关于虚拟内存调度的概念 swappiness 。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(16)

简单的来讲,swappiness 的数值对应使用虚拟内存的权重,该数值越大,系统就会越积极的使用虚拟内存。

有人可能会说:那直接调整到最积极,不就能多使用虚拟内存了?但事实并非这么简单。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(17)

首先,就是速度问题,由于使用存储作为内存,即使今天的 UFS 闪存芯片,其 I/O 性能依旧不如物理内存。

其次,由于 swap 交换分区的特性,不可能随时优先使用虚拟内存

并且 swappiness 值过大,会导致后台进程频繁回收释放,并载入存储的情况。(下文会详细解释)

优劣总结

优点:

对于目前的主流设备而言,适量的内存扩展,确实可以提升后台能力,提升使用体验。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(18)

目前各家的定制系统,由于动画、动态渲染等视觉效果会占据更多的资源。并且,目前许多品牌为了极致的性价比,依旧使用 6G 内存。

因此,低内存设备的体验确实不能让人满意,而现在引入内存扩展,可缓解这些问题。

缺点:

目前,虚拟内存读写性能不如物理内存,很容易出现切换应用后,停顿一下才加载出来的情况,造成体验的割裂感。

而且,如果想提升手机的后台能力,就需要使用更大的虚拟内存权重。

这就越容易出现后台应用频繁回收资源到存储空间,而上述的卡顿会越发严重

并且,虚拟内存并不是越大越好,占额外空间就不说了。许多时候杀后台并不是内存不够用了,而是系统的内存策略问题(点名 MIUI )。

虚拟内存不管多大,能使用的都是都很有限的,果子就已经删除了 20G 的虚拟内存,娱乐一下而已。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(19)

还有一点:由于内存的特性,长时间都会处于读写状态。因此,会一定程度减少闪存(存储空间)的寿命。

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(20)

不过这个大家不用过于担心。目前而言,闪存寿命足矣维持到你换下一台手机的时候。前不久 ColorOS 官方也回复过该疑问。

总得来讲,目前各大厂商推出内存扩展,并不是什么新鲜东西,虽可以解决一部分用户的体验问题,但具体效果还是因人而异的

为什么我的内存扩展完了还是8g(我把内存扩展到32G后)(21)

最后果子想说:整这么大的内存闹哪样啊?需要整治的是目前的毒瘤应用环境!

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页