0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

谷歌要求Android 11设备必须使用A/B分区 可降低更新之后设备无法启动的可能性

工程师邓生 来源:快科技 作者:振亭 2020-04-08 10:20 次阅读

4月8日消息,据XDA报道,谷歌要求Android 11设备必须使用A/B分区,以便支持无缝更新,这样做可以大幅降低设备更新变砖、死机的几率。

事实上,谷歌在Android 7.0时代就已经推出了这种全新的系统更新方式,只是当时谷歌并未强制要求厂商去推行,它叫做A/B seamless update,这里称其为A/B无缝更新。

既然是一种全新的更新方式,自然是跟以前传统系统更新方式有所区别。传统的系统更新方式需要将手机置入Recovery模式安装更新,安装更新往往要花上几分钟到十几分钟不等,这个过程中你什么事情都做不了。原厂Recovery会将更新的临时文件存放进/cache分区里,这也就是/cache分区的主要目的。

按照谷歌的说法,A/B系统更新(也称为无缝更新)的目标是确保在无线下载 (OTA) 更新期间在磁盘上保留一个可正常启动和使用的系统。采用这种方式可以降低更新之后设备无法启动的可能性,这意味着用户需要将设备送到维修和保修中心进行更换和刷机的情况将会减少,其他某些商业级操作系统(例如ChromeOS)也成功使用了A/B更新机制。

A/B无缝更新基本的工作原理

假设你现在运行的是位于A部分的底层和上层系统。

如果你的OTA更新包是增量更新包,更新包会自动将这些A部分的底层和上层分区校验完整性,然后按照更新包里的内容更新之后写到B部分的对应分区里。更新完成之后,手机会问你是否重启,此时重启之后,底层会自动将下一个要启动的系统切换到B部分,重启之后就是已经更新之后的系统。

那么到了B部分之后,下一个更新来了怎么办呢?

同样的,也是将B部分的底层和上层分区校验完整性,然后按照更新包里的内容更新之后写到A部分的对应分区里,然后让你重启,并切换到A状态。

当前已经有越来越多的厂商在他们新推出的手机使用这种更新方式了,可以明显看出这是将来Android阵营的一大趋势。

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Android
    +关注

    关注

    12

    文章

    3851

    浏览量

    125639
  • 谷歌
    +关注

    关注

    27

    文章

    5858

    浏览量

    103251
收藏 人收藏

    评论

    相关推荐

    操作FreeRTOS时,执行__WFI()导致系统滴答中断无法唤醒设备怎么解决?

    1、在操作FreeRTOS时,本想着是在空闲钩子中执行__WFI()以降低设备功耗,等系统滴答中断自动唤醒设备继续执行,运行中发现执行__WFI()之后设备
    发表于 04-24 08:29

    Windows 11 26080预览版发布后,旧设备可能无法启动

    微软于今年2月份开始在Windows 11预览版中实施新规,要求CPU必须支持SSE4.2和PopCnt指令集。然而,此前未满足此条件的旧设备可通过特定方法规避这些限制。
    的头像 发表于 04-23 14:40 203次阅读

    FX3通过USB3.0引导烧录固件后设备无法识别的原因?怎么解决?

    不会出现烧录后设备无法识别的问题),再通过USB3.0线和接口进行测速,测速始终为46.5MBps左右,无法达到3.0的速度····有朋友知道为什么嘛?可以确定自己用的是3.0的线和接口,驱动也是没有问题的。
    发表于 02-27 07:50

    谷歌宣布停止"非A/B"更新支持,三星等厂商面临更新的调整

    对于熟悉谷歌Pixel手机的消费者来说,“无缝更新”并不陌生。利用活动分区和非活动分区执行后台更新,当
    的头像 发表于 02-22 09:51 152次阅读

    谷歌Android 15开发者预览版遇问题,OTA更新暂停

    谷歌Android Developer官网发表声明,因发现“已知问题”,将暂时关闭Android 15 DP1的OTA更新订阅服务。谷歌
    的头像 发表于 02-21 14:08 163次阅读

    如何从USB设备更新软件?

    您们好! 我想通过我的USB设备口,来更新我的软件,那么我怎么操作比较安全呢? 可以直接接收数据然后写入FLASH,但是这样可有点风险,一旦更新过程中断电, 那么整台机器就要重
    发表于 01-12 07:39

    英特尔无线蓝牙设备无法启动代码10

    无线蓝牙设备在现代生活中扮演着重要的角色,因为它们使我们能够方便地与其他设备进行通信和传输文件。然而,有时候我们可能会遇到一个常见的问题,即蓝牙设备
    的头像 发表于 01-04 17:30 1843次阅读

    如何在Ubuntu Linux上释放/boot分区中的空间

    在Ubuntu Linux上,/boot分区是用于存储启动相关的文件的。随着时间的推移,这个分区可能会变满,导致系统无法安装新的内核和
    的头像 发表于 11-28 10:04 324次阅读

    提高PCB设备可靠的技术措施

    。国内外大量事实已证明了这一点,产品设计应采用模块化设计方法。 (2)采用模块和标准部件。 模块和标准部件是经过大量试验和广泛使用后证明为高可靠的产品,因而能充分消除设备的缺陷和隐患,也为出现问题之后
    发表于 11-22 06:29

    如何利用单片机(MCU)来降低医疗设备的功耗要求

    电子发烧友网站提供《如何利用单片机(MCU)来降低医疗设备的功耗要求.pdf》资料免费下载
    发表于 11-16 14:58 1次下载
    如何利用单片机(MCU)来<b class='flag-5'>降低</b>医疗<b class='flag-5'>设备</b>的功耗<b class='flag-5'>要求</b>

    Windows 10版本20H2无法识别u-bot快速启动怎么处理?

    5, 这将是一个“ Pocketbook Pro903” 设备 。 我想回想一下上述进程确实需要我们手动安装/更新谷歌 USB 驱动器, 第一次是连接主机的 Android
    发表于 11-13 06:53

    51单片机能做指纹锁,被heck的可能性大吗?

    51单片机能做指纹锁,被heck的可能性大吗?求大神解答
    发表于 10-28 06:06

    电脑无法识别的usb设备怎么解决

    Android系统插上USB连接到电脑,提示"无法识别的USB设备"
    的头像 发表于 10-10 16:20 2937次阅读
    电脑<b class='flag-5'>无法</b>识别的usb<b class='flag-5'>设备</b>怎么解决

    Android(Q)10 上的分区外部存储访问

    、ONnePlus 7T、谷歌 Pixel ***等都已经升级到 Android 10 的支持,不少应用市场也要求应用需要针对 Android 10 进行适配,其中最大的变更之一就是
    的头像 发表于 05-26 11:00 607次阅读
    <b class='flag-5'>Android</b>(Q)10 上的<b class='flag-5'>分区</b>外部存储访问

    iTOP-RK3568开发板Uboot参数-内核启动参数cmdline

    boot.veritymode=enforcing 表示验证固件的完整 androidboot.slot_suffix= 表示用于 OTA 升级,选择指定是从 a 启动还是
    发表于 05-17 15:44