系统启动流程

1.启动流程一览 

2.启动流程分析

1.上电后启动ROM中的代码
  • 从reset vector开始启动
  • 初始化stack空间
  • 找到并初始化启动设备(sd/nand/emmc)
  • 加载preloader到SRAM中,并跳转到preloader中执行代码
2.preloader执行
  • 创建c运行环境
  • 必要的硬件初始化
  • 加载ATF(安全相关)
  • 加载并跳转到lk执行
3.lk执行
  • 获取preloader中传递的参数
  • 使能mmu
  • 初始化必要的硬件设备
  • 设置启动模式
  • 加载并跳转到kernel执行
4.kernel执行
  • 函数执行入口stext
  • start kernel
  • boot param
  • kthread
  • kernel_init
  • init.rc

 

猜你喜欢

转载自www.cnblogs.com/ant-man/p/9087677.html