博客
关于我
【安卓开发系列 -- 系统分析】Framework -- Android 系统一般启动流程简介
阅读量:371 次
发布时间:2019-03-04

本文共 922 字,大约阅读时间需要 3 分钟。

Android系统启动流程简介

Android系统启动流程可分为几个关键阶段,每个阶段都有其特定的功能和作用。以下从高到低详细阐述各个层次的启动过程。

一、整体启动流程概述Android系统启动流程主要包含以下几个层次:

  • Loader层:包括BootRom和BootLoader
  • Kernel层:Android内核
  • Native层:init进程及相关系统服务
  • Framework层:AMS、PMS等核心服务
  • Application层:SystemUI、Launcher等用户应用
  • 二、详细启动流程解析

  • Bootloader引导程序Bootloader的主要职责包括:
    • 硬件初始化:完成设备的基础配置
    • 系统加载:将内核和根文件系统从存储设备加载到内存中
    • 加速启动:优化内核的启动效率
    1. Linux内核启动
      • 初始化软硬件环境:配置网络、存储、内存等
      • 加载驱动:安装设备相关的硬件驱动-挂载文件系统:完成根文件系统的访问准备内核启动完成后,会自动启动init进程,进入Android系统的启动阶段。
      1. init进程作为Linux系统中用户空间的第一个进程(进程号1),init进程的主要功能包括:
        • 文件系统管理
        • 属性服务提供
        • 解析init.rc脚本
        • 创建Zygote进程
        1. Zygote进程Zygote进程是Android系统中所有应用进程的父进程,其主要作用是:
          • 创建应用进程
          • 管理应用进程的生命周期
          • 提供基础的服务支持
          1. System Server进程System Server是Android系统的核心服务进程,主要功能包括:
            • 启动系统服务:ActivityManagerService、PackageManagerService、WindowManagerService等
            • 提供硬件服务:与HAL层通信
            • 应用程序接入:通过System Server获取系统服务句柄
            1. Launcher应用作为Android系统的第一个用户应用,Launcher的主要职责是:
              • 初始化桌面界面
              • 启动其他应用程序
              • 提供用户交互入口

              三、参考与致谢本文内容基于个人学习笔记,参考了多方资料,包括专业书籍和网络资源。在此对所有提供帮助的作者表示感谢。如有不当之处,请随时指出。

    转载地址:http://gvmr.baihongyu.com/

    你可能感兴趣的文章
    php模板引擎smarty
    查看>>
    php正则表达式模式
    查看>>
    php正则表达式的特殊字符含义
    查看>>
    PHP正则表达式获取武汉市的实时pm2.5数据并邮件发送phpmailer
    查看>>
    RabbitMQ + JMeter组合,优化你的中间件处理方式!
    查看>>
    PHP水仙花问题解法之一
    查看>>
    php没有解析是怎么回事,linux下php文件没有被剖析怎么办?_后端开发
    查看>>
    php注册页面实现注册后跳转页面
    查看>>
    PHP消息队列的实现方式与详解,值得一看
    查看>>
    PHP混合Go协程并发
    查看>>
    php源码中如何添加滚动公告,给WordPress网站添加滚动公告的方法
    查看>>
    PHP源码安装后如何新增模块
    查看>>
    php源码详细安装步骤,linux下php源码安装步骤
    查看>>
    php漏洞tips
    查看>>
    php版Zencoding之 phpstorm
    查看>>
    PHP版本升级5.4手记
    查看>>
    php版本升级总结
    查看>>
    php版本微信公众号开发
    查看>>
    php版的微信公众号开发演示
    查看>>
    php生成html文件的多种方法介绍
    查看>>