zoukankan      html  css  js  c++  java
  • 【转】Android系统中Fastboot和Recovery所扮演的角色。

    Android 刷机过程中 Fastboot 和 Recovery 的作用是什么?

    自己在知乎的一篇回答,,现在翻出来放到博客,希望可以解答更多人的疑惑,抑或有什么理解上的错误,也望网友指出~

    今天恰好和同事讨论了下Fastboot。在我看来提问者首先应该了解Fastboot和Recovery在安卓系统中的扮演什么角色,我们再去讨论它们在刷机过程中的作用。

    首先来说下Fastboot的功能吧,Fastboot一般由boot和loader两个模块组成,boot负责安卓设备上电后初始化一些最基本的参数,类似CPU时钟,寄存器初始化。而loader负责去引导系统,例如从Emmc上读多大空间到内存,然后CPU开始从内存某地址开始执行,其实安卓系统抑或Recovery模块也就是在这一步被加载的。

    而Recovery实际上是一个mini的系统,对Fastboot中的loader而言,安卓系统和Recovery是同级别的,开机的时候,loader可以去加载他们中的任何一个,你可以理解Recovery是一个只具有恢复出厂和升级功能的系统,注意Fastboot我们一般不认为它是一个系统。但是它具有一些功能模块类似tftp等。

    所以Android刷机的时候,使用Fastboot一般都是线刷,也就是PC上的刷机软件通过和Fastboot通讯,将PC上的刷机包通过Fastboot的桥梁作用,写入至安卓设备的EMMC,而Recovcey升级一般都是我们说的卡刷,它负责读取SD卡中的升级包去升级,其实在这一步我们就知道Recovery是支持文件系统的,它可以去读取SD卡中的文件,而Fastboot一般不具有这样的功能。

    最后的最后,来回答提问者的问题

    Android通过Fastboot刷机 >>> Fastboot的作用是开机后初始化硬件环境,实现最小系统,然后和PC上的刷机软件通讯,将PC上的刷机包写入至Emmc中,实现刷机。Recovery此时不起作用。

    Android通过Recovery刷机 >>> Fastboot的作用是开机后初始化硬件环境,实现最小系统,然后引导Recovery启动,在Recovery中读取升级包数据,将升级包数据写至Emmc。这种方式,Fastboot和Recovery都起到各自的功能。

    from:https://www.cnblogs.com/Onlyou/p/7979317.html

  • 相关阅读:
    Checking Types Against the Real World in TypeScript
    nexus pip proxy config
    go.rice 强大灵活的golang 静态资源嵌入包
    几个golang 静态资源嵌入包
    rpm 子包创建学习
    Rpm Creating Subpackages
    ava 类似jest snapshot 功能试用
    ava js 测试框架基本试用
    The Architectural Principles Behind Vrbo’s GraphQL Implementation
    graphql-compose graphql schema 生成工具集
  • 原文地址:https://www.cnblogs.com/xuan52rock/p/11544166.html
Copyright © 2011-2022 走看看