google近日正式发布了安卓11。对于这个最新一代安卓系统,所带来的新功能新特性,自然颇具价值。不过考虑到国内往往会对原生安卓的功能进行种种魔改,其实对于国内用户来说,影响有限。
安卓11对国内生态影响最大的,可能还是一些底层变化,这也较少为人提及。
没错,安卓11的底层又有了不少大变化!所带来的剧变,会深刻影响广大用户,今天就一起来聊聊吧。
刷机不再变砖?recovery分区成为历史!
如果你是一名安卓刷机玩家,一定知道recovery这个名词。这是安卓系统中,用于恢复系统的模式,无论是厂商官方升级系统,还是玩家刷入第三方rom,通常需要通过recovery来进行。在安卓机中,还专门划分了一个分区来放置recovery,但这在安卓11中要成为历史了。
传统的recovery升级模式,如果写入system系统分区的数据有误,那么机器可能就无法启动,刷机玩家应该很熟悉这一类“变砖”的情况,甚至厂商ota偶尔也会“变砖”。要如何避免?事实上,近年的新安卓机使用a/b分区机制,很多安卓机已经不需要recovery来引导升级。
android系统启动方式的变更,之前需要经由recovery,使用a/b分区机制后直接通过boot来引导启动
在采用了a/b分区机制的安卓机中,当系统需要升级的时候,会将新的系统写入其中一个分区,写入成功后则从该分区启动;如果写入失败,或者启动失败,则从原分区启动,这相当于两个系统分区相互备份,大大减少了系统升级的故障率。
安卓11的机制也与此相似。出厂预装安卓11的机器,取消了recovery分区,而且对a/b分区机制进行了一定程度的改变。安卓11需要升级系统的时候,会将新系统的数据和现在的系统数据进行对比校验,将差异部分写入另一个分区而不是系统分区;
之后,利用新数据启动系统,如果系统顺利启动,那么就将差异数据写入到系统分区,启动失败则抛弃差异数据,用原来系统分区的数据启动。
安卓11这个新机制既有a/b分区的可靠性优点,也无需像a/b分区那样占据大量的额外空间。
无论如何,recovery分区都已经遭到了遗弃,预装安卓11的机器,出厂就没有recovery分区,boot分区更多承担起了以前recovery分区的工作。recovery是刷机不可或缺的工具,刷机玩家何去何从?恐怕得另觅出路了。
安卓11是有史以来最容易升级的安卓?
我们知道,google一直为解决系统碎片化问题做努力,力求设备能够升级最新版本的安卓。
为此,google作了很多努力,例如在安卓8.0中推行了project treble机制,将系统(android os framework)单独分区,和硬件驱动(vendor implementation)分离,此后厂商可以为设备单独推送新版安卓,而不需要重新适配驱动。
project treble将google的安卓系统框架和硬件供应商提供的驱动作了分离
project treble大大简化了安卓系统的升级流程,但这还不够。在安卓10当中,google推行了project mainline,将系统进一步细分模块化。
在安卓10中,14个系统组件被mainline化,媒体解码器、权限控制器、网络组件等系统组件,都可以像普通app一样,通过应用商店来更新——很多朋友发现,今年安卓机的gpu驱动竟然能够独立更新,就得益于此。
在安卓11中,google又进一步对安卓组件进行细分,安卓的组件模块达到了20个之多,安卓的系统维护将会变得前所未有地灵活。
不仅如此,google还将改制推行到了系统内核当中,安卓的linux系统内核升级将会变得更加灵活。
在当前的安卓系统中,linux系统内核升级大体需要经历三个步骤。首先,google选定一个linux lts版本作为安卓内核,打上安卓运行所需要的patch;
接着,google将这个内核提交给高通等soc供应商,供应商再次将其打造成为适配soc的内核;
最后,三星等设备商再让内核适配不同的元器件,再次为内核打上各种patch,让内核成为真正可以在安卓机上运行的版本。
传统的android系统linux内核升级流程,需要经由重重环节,非常麻烦
由于步骤繁琐,因此当前的安卓机一旦出厂,linux内核就很少变动,即使是google旗下的pixel设备,内核也依然只是较为老旧的linux 4.14。
而在安卓11中,情况有所变化,google将系统内核进行了模块化修改,内核被分成了generic kernel image(gki)和其他gki模块。
如果想要升级linux版本,google可以直接面向安卓机推送gki,手机直接升级gki即可,再也不需要经历从soc厂商到手机设备厂商的繁琐步骤。
android 11开始,内核进行了模块化,一个gki内核可以通用于市面上的大量安卓机
据了解,安卓11的这一特性,在内核版本高于linux 5.4以上的设备上,是要求强制执行的。
可以说,如果安卓11的设备出厂内核版本就是linux 5.4以上,那它有可能会是史上最容易升级的安卓。
安卓存储目录文件夹乱象彻底解决?
相信不少人发现,安卓机用久了以后,存储目录下就会多出很多奇奇怪怪的文件夹,这些文件夹是由各种app生成的,这其实是一个历史遗留问题。
安卓机的内部存储目录一度非常小,例如经典的milestone的rom只有512m,需要用sd卡扩展存储空间,因此安卓app往往会将文件保存在外部存储目录下(也就是sdcard目录)。
而安卓在4.3版本前并没有提供外部存储目录的规范,app习惯在sdcard目录中随意建立自己的文件夹,这个习惯一直保留到如今。
现在,尽管安卓建立了sdcard目录的存储规范,例如安卓系统规定app如果要在内部存储空间建立文件夹,需要建立到/data/data/目录下,在外部存储空间则需要建立在/sdcard/android/data/目录下。
然而这一规范并非是强制性的,很多app由于使用第三方sdk等各种各样的原因,视安卓的存储目录规范不见,依然在sdcard目录下自建文件夹,安卓存储目录的混乱由此而来。
在安卓11中,文件夹乱象终于有望得到彻底解决。安卓11将不再允许app在sdcard建目录和文件,app只能够往特定目录的私人文件夹写入数据。
目前某些app已经开始为此做准备,例如新版qq将存储目录从/sdcard/tencent/变更到了/sdcard/android/data/com.tencent.mobileqq/tencent/,就是为了适应安卓的存储新机制。
总结
除了上文所提到的,安卓11还有很多非常有意义的更新,例如更强大的隐私保护、改进的通知系统等等,这里就不一一列举了。
总的来说,安卓11是一个从里到外都进行了重大改革的版本,它解决了安卓的很多历史问题,大家共同期待吧。
责编ajx
迎接智能电网的电力挑战
未来十年大数据分析的发展趋势 AI、IoT也离不开它
基于Web服务器和S3C2410处理器实现温室茶树培养监测系统的设计
研究前沿:Nature Nanotechnology-石墨烯 | 量子摩擦制冷
真4K画质才过瘾,超大屏智能电视购买小窍门
Android 11变化:刷机不再变砖?Recovery分区成为历史!
51单片机指令助记符及其相关符号的记忆方法
新舟700飞机研制批大部件总装制造已进入下线交付期
企业如何在移动应用程序开发中利用人工智能和区块链
电路板缺陷检测
河南省实现县城以上城区5G网络全覆盖
TCP是如何实现可靠传输 HTTP与HTTPS的区别
华为鸿蒙操作系统再次被质疑 国产是原罪
室内仓储库房温湿度监测系统485总线解决方案
ios10.3正式版发布,节省2g内存,更新11大功能你满意吗?
低温与高海拔对控制器和逆变器影响
CMOS传感器和FPGA如何改变机器视觉世界
关于FPGA在汽车领域的的应用
机器人正在取代你的工作 你还不慌张吗
连拓精密科技多通道电动牙刷防水气密性检测难点突破