第一章uboot理论详解

一、什么是uboot

  1. PC机的启动流程
    (1)PC上电后,自动启动部署在PC机主板上(ROM)的BIOS程序;
    (2)BIOS程序初始化内存和硬盘,从硬盘中将操作系统读到内存中;
    (3)CPU跳转到内存中执行操作系统程序直到启动;
    (4)当操作系统启动时,BIOS任务完成,二者在执行时间上无交集的;

  2. 嵌入式启动流程
    (1)开发板启动方式与pc机方式相同,区别是设备不同,即BIOS替换为uboot,硬盘替换为flash;uboot存储在支持启动的flash中;
    (2)Android启动方式与开发板相同,区别是操作系统启动后加载根文件系统及以后的过程不一样;
    总结:uboot类似于PC机的BIOS,用来引导操作系统启动的一段裸机程序。

  3. uboot需要的满足条件
    (1)自身支持开机启动。uboot是开机后执行的第一个程序,因此对于不同的设备,必须对uboot源码进行移植和修改(start.S文件)以匹配当前设备的硬件;
    (2)支持整个系统在flash上的烧录下载。整个系统包括:uboot、kernel、rootfs等的镜像文件;
    (3)能够管理部分SoC级和板级的硬件。uboot引导操作系统时需要初始化flash和SDRAM以及其他的硬件操作,因此需要能够管理硬件。SoC级:内部外设,如串口等;板级:外部外设,如网卡灯;
    (4)uboot的作用就是启动内核,因此当操作系统启动时,uboot任务已经完成,uboot程序就会结束;

上一篇:冒泡排序法


下一篇:uboot mkimage使用详解