5G|谷歌最终还是成了自己最讨厌的人的模样( 二 )



辣么新的问题来了——什么叫「寻址空间」捏?

别急 , 咱们把它“拆开”慢慢说~

众所周知~

App只要运行 , 就一定会占用内存 。

此时App的数据呢 , 都是按规律储存在内存里边的 。

就和咱们小区居民区里 , 每间屋子住的人都是相对固定的一样 。

数据 , 也是有“登记住处”滴~

而手机的每一次操作和运算 , 都需要CPU去内存里边 , 挨家挨户找对应的数据 , 然后提取出来 。

大家如果理解不了 , 那就把这行为 , 想象成小区物业扫楼找人吧 。

反正这一套操作 , 就叫作「寻址」 。

至于「空间」 , 就很好理解啦~

就是指这个小区(内存)有多大 , 可以塞多少人(数据)了 。

当然 , 内存和数据肯定是越大越好 。

So , 32位的「寻址空间」有多少呢?

2的32次方 , 也就是4294967296个字节 。

把字节单位换算过来 , 正正好好就是4个GB 。

这也就顺带解释了 , 为什么咱以前的电脑手机 , 在很长的一段时间里 , 内存顶天也就是4G的问题 。

因为当时大家采用的 , 主要都是32位的处理器+系统+App 。

它们三者 , 是相辅相成的 。

那如果实际搭载的内存 , 比4GB大呢——

是不是就可以让它突破自身极限 , 走上人生巅峰了呢~~

No , 这是没用的 。

这就像你问一个 , 只认识个位数的小朋友“10+1等于多少”一样 , 人家根本就无法理解两位数啊…

所以别说装个4G了 , 就算装400G , 「寻址空间」顶天也还是4个G 。

再说64位 。

别看它只比32多一倍而已 , 它的「寻址内存」可不得了 。

2的64次方——18446744073709551616个字节 。

换算过来 , 相当于16777216个TB 。

注意 , 单位是TB , 不是GB吼!(1TB=1024GB)

所以 , 64位和32位 , 从「寻址空间」的数量级来看 , 完全就不是一个级别的好吧 。

具体到实际使用 。

有了64位的加持 , 设备就可以非常轻松地让每款App , 都能分配到4G、甚至是更高的运行内存 。

从而让软件运算得更快 , 性能释放得更好 。

So , 这在一定程度也解释了 , 为啥咱现在的内存越来越不够用的问题 。

因为打一开始 , 它们就没想过要节省内存...

另外 , 根据谷歌开发者公布的数据来看 。

由于64位 , 还可以运行32位没有的寄存器和全新指令 , 所以在最终性能方面 , 可以有25%的提升 。

同时 , 当砍掉32位代码以及一些老久的指令集后 , 还能节省150MB的RAM内存占用 。

总之 , 我们的手机升级至纯64位架构后 。

不仅是性能释放还是软件速度 , 都要比32位的手机要快 , 甚至比之前兼容32位的64位手机还要好 。

按理说 , 又提速又省内存 , 这么好的事 , 大家应该喜闻乐见 , 早早更新升级架构才是 。

但结果呢 , 却恰恰相反 。

截至2022年的今年 , 仍有非常多的开发者和App还“坚挺”在32位 , 甚至连64位的单包都没有提交过 。

这 , 就把谷歌搞得很尴尬了...

这又是啥原因呢?

机哥经过一番了解发现 。

虽然开发者们确实有点不赏脸、不配合 。