网站客服:zx81024163 |

从谷歌到手机厂商,安卓对32位应用关上了大门

2023-07-22 07:01:34发布    浏览420次    信息编号:65112

友情提醒:凡是以各种理由向你收取费用,均有骗子嫌疑,请提高警惕,不要轻易支付。

从谷歌到手机厂商,安卓对32位应用关上了大门

对于很多帮别人安装过系统的朋友来说,可能首先会问自己想要32位还是64位。 之所以会问出这样的问题,是因为当时硬件发展的限制,一些市场定位比较低的配置基本上和64位没有机会。 但如果说32位是时代的眼泪,那么的32位无疑是谷歌的放纵。 毕竟,谁能想到,到了 2022 年,智能手机进入多核时代多年后,32 位应用程序仍然会在 端流行。

为了解决这个问题,谷歌几乎所有的应用商店都在劝说开发者“抛弃黑暗,转向光明”。 日前,有开发者透露,收到小米应用商店《关于关闭新应用32位单包上传入口的通知》,该通知显示,2022年4月1日发布的新应用将不再允许单独上传32位应用包,但游戏暂时不受限制。

同时,来自海外开发者论坛XDA的消息显示,提交到AOSP的代码更改了新的警告,只要用户在64位系统上运行32位应用程序,就会弹出警告。 该警告消息告诉用户该应用程序需要开发者更新以提高兼容性,并敦促用户检查更新或联系开发者。

没错,即使在今天,你打开几乎任何一个应用商店,仍然可以看到32位应用的存在,甚至有些32位应用是家喻户晓的国家级应用。 但作为对比,从 2013 年的 iOS 7 到 2017 年的 iOS 11,苹果只用了 4 年时间就完成了应用程序从 32 位到 64 位的迭代。 现在iOS生态系统中已经没有32位应用程序了。

然而事实上,谷歌开启 64位时代仅比苹果晚一年,而首款64位SoC(高通骁龙808)和系统(5.0)早在2014年就已亮相。

当高通骁龙808和5.0问世时,当时业界的主流观点是,搭载64位旗舰控制器的设备在2015年开始出货,随后iOS设备也转向64位架构。 2016年,大多数设备转向64位架构。 但事实证明,除了最后64位应用普及时间外,这个预测基本准确。 不仅如此,从2014年到2022年8年过去了,的64位应用程序仍然没有实现完全普及。

为什么平台64位应用程序的普及速度这么慢? 要回答这个问题,需要明确32位和64位这两个关键字的区别。

从冯·诺依曼机到今天大家熟悉的个人计算机,计算机设备都是采用二进制逻辑,即0和1(实际上是高电位和低电位)来表示信息,所以32位和64位分别指的是处理器在单位时间内一次可以处理的二进制位数。 32 位和 64 位。 在运行频率相同的情况下,显然64位处理器处理数据的速度更快,这也是理论上更强的64位的基础。

反之,用64位处理器运行32位应用程序就类似于“大马小车”。 当使用64位处理器计算32位应用程序时,实际上只需要在高电位上加“0”即可,这不会让用户感知到效率上的差异。

与此同时,长期的碎片化无疑也是谷歌迟迟下不了决心推广64位应用的原因之一。 就像的向后兼容性一样,大量的旧版本和机型此前占据了生态的半壁江山,而对于这部分用户的体验来说,的向后兼容性远胜于iOS。

由于32位应用程序可以以很少的成本运行在64位系统上,因此如果将应用程序完全转换为64位,其结果是那些仍在使用32位系统的用户将无法再使用它,这无疑代表着用户的流失。 而如果同时开发32位和64位版本,则意味着工作量实际上增加了。 由于32位应用程序仍然可以在新版本的系统中运行,并且效率上没有太大差异,自然会导致开发者不太愿意将32位应用程序升级到64位。

iOS和在推广64位应用方面效率存在差异,最关键的原因无疑是前者是一个封闭的生态系统,苹果的控制力相对较高。 第三方开发者在某种意义上可以被视为苹果的“工人”。 与不同的是,开放的生态创造了谷歌与开发者之间的关系,更接近传统的开发者社区。 两党是盟友也是合作者。 充其量,谷歌的吸引力更强,而第三方开发者则分散。

这种差异的结果是,一旦苹果改变了App Store的审核准则,开发者就得拿着指挥棒跳舞,而谷歌想要对应用的开发做出改变,却需要社区的支持。

如今,从应用商店到谷歌,他们都准备强制开发者将他们的应用程序升级到64位。 事实上,问题已经到了必须解决的地步。 32位的先天缺陷逐渐限制了平台软件生态的进步。

2020年10月,作为iOS和设备CPU指令集架构的开发商,ARM在开发者峰会上宣布,将从2022年开始在IP设计中逐步取消32位支持。一方面,碎片问题自 8.0以来逐渐得到缓解,另一方面,ARM的硬件限制会让32位应用程序影响用户体验,因此也使得升级到64位成为生态系统的一部分。

据小米介绍,在已经上市的高通骁龙8代1和联发科天玑9000平台上,32位应用仅支持在大CPU核心上运行,这会带来一些发热、功耗等体验问题。

对ARM架构有一定了解的朋友一定知道,目前主流的ARM架构芯片都采用big. 大小核切换技术,这是一种能够将正确的任务调度到正确的CPU核心上的技术,让大核心负责游戏等高负载任务,小核心负责听音乐、浏览网页等低负载任务。 但这种技术的代价是芯片的工作模式必须统一,不能是大核用指令集,小核用指令集。

局限性大。 技术以及ARM对32位应用程序的限制意味着一些本应在小核上运行的低负载应用程序被迫使用大核。 再加上这一代旗舰SoC本身在功耗和发热方面的表现,影响日常使用已经成为了必然。 你不妨想象一下,如果你只是用手机浏览微博、听音乐,此时手机就会开始发热。 谁能受得了? 通常消费者这个时候可能会抱怨手机本身的设计缺陷,但对于厂商来说,可以说是人坐在家里,锅从天上来。

即使抛开上述问题,32位应用程序也早已失去了未来。 除了数据处理性能上的差异外,32位和64位最大的区别在于支持的内存(请注意,这里的内存指的是地址空间,而不是物理内存)。 32位系统的最大寻址空间为2^32(约4GB),64位系统的最大寻址空间为2^64(16EB),这就导致64位应用程序可以使用动态内存分配将大于4GB的应用程序放入内存中进行处理,而32位应用程序则需要使用类似于“块读取”的复杂方法。

简单来说,32位应用理论上最多只支持4GB内存,而使用64位内存指针会导致应用“膨胀”,占用更多缓存和内存,增加消费者对更大内存和大容量闪存的需求。 要知道目前主流机型的内存至少已经从6GB开始,8GB是标配,12GB也并不少见,这无疑让64位应用程序更适合这个特性。

如今,从谷歌到苹果,再到各大手机厂商,移动办公和移动娱乐已经成为焦点。 毫无疑问,手机拥有更多的功能和更多的应用场景。 因此,具有先天缺陷的32位应用程序只能被束之高阁。

【本文图片来自网络】

提醒:请联系我时一定说明是从星空网上看到的!