uboot、内核、根文件系统启动流程

【1】Uboot的启动流程
  Uboot的启动分为两个阶段。
  第一阶段:设置异常向量表,设置ARM核为svc模式,关cache和关mmu,
  关看门狗,初始化时钟,串口,内存,初始化栈空间,清bss。跳转到第二阶
  段。
  第二阶段:硬件的初始化,读取环境变量,将内核从emmc加载到内存中,
  调用内核

 【2】kernel的启动流程
  0.设置cpu为svc模式,关中断
  1. 为内核的解压做准备(内存,中断等等)
  2.内核自解压 (vmlinux.lds)
  3.跳转到入口地址执行(head.S--->main.c)start_kernel 执行内核
  4.硬件的初始化(初始mm  mmu  中断(request_irq),软中断初始化,内核定时器) (解析设备设备树,执行驱动)
  5.挂载根文件系统
  6.开启第一个用户进程init,执行linuxrc应用程序
 
【3】rootfs执行过程
  Linuxrc调用inittab文件(规定操作系统行为文件)获取操作系统行为。
  执行启动第一个脚本rcS,rcS中调用mount -a 挂载fstab中所有设备
  当控制台登录的时候,执行bin/sh命令,进入shell命令行(在进入前,会执行profile,设置环境变量)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值