码迷,mamicode.com
首页 > 移动开发 > 详细

Android

时间:2017-09-22 10:02:20      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:外部存储   存储   程序   进程   针对   内存   主板   mtk   执行   

本文介绍android的启动流程。

一、Loader层

1. Boot ROM:
上电后,BootRom会被激活,引导芯片代码开始从预定义的地方(固化在ROM)开始执行,然后加载引导程序到RAM。

2. Boot Loader引导程序
Boot Loader是启动Android系统之前的引导程序,引导程序是OEM厂商或者运营商加锁和限制的地方,它是针对特定的主板与芯片的。OEM厂商要么使用很受欢迎的引导程序比如redboot、uboot、ARMboot等或者开发自己的引导程序,它不是Android操作系统的一部分。
Boot Loader主要作用是检查RAM,初始化硬件参数等功能。

3 Preloader:
(1)Preloader是MTK平台独有的防止芯片被Hack的一个loader,MTK平台的bootrom会先加载preloader到SRAM中,preloader会先去初始化一些HW组件,比如通信端口(USB/Uart),外部存储设备(Emmc or Nand),内存设备(DRAM Calibration)等,最后会Load LK到DRAM中并且run LK(U-boot)。
(2)LK会从外部存储设备load boot image,包括Linux kernel和Ramdisk到DRAM中.最后LK会跳到 Linux Kernel里去执行start kernel.
(3)linux kernel会先完成一些初始化动作,mount 根文件系统和启动第一个用户进程(init 进程)

Android

标签:外部存储   存储   程序   进程   针对   内存   主板   mtk   执行   

原文地址:http://www.cnblogs.com/cuthead/p/Android.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!