《朱老师物联网大讲堂》学习笔记
学习地址:www.zhulaoshi.org
uboot做什么的呢?
简单说就是启动操作系统内核,
但是操作系统的启动涉及很多东西,
所以启动过程会有很多步骤。
计算机系统中,cpu(运算器+控制器)为核心,
同时组成部件也非常多,
有很多不同类型的计算机系统,因此组成部件也不同,
如果不涉及过多的细节,可以理解为计算机系统运行的核心部件就是:
cpu + 外部存储器(flash/硬盘) + 内部存储器( DDR...)
在开始讲启动过程前,要先明说下,
载pc机种,bios程序在主板上,操作系统部署在硬盘上,
典型pc启动过程:
执行bios(pc中是norflash),负责初始化内存和硬盘,从硬盘将os镜像读取到ddr中,然后跳转到ddr中去执行os直到启动(os启动后bios就无用了)
在典型的嵌入式系统中,没有bios,但是有bootloader,uboot部署在flash(能作为启动设备的),os也部署在flash上(以前说过,嵌入式系统没有硬盘),这两个flash可以是一个,也可以不是同一个。
启动过程:先执行uboot(一种bootloader),uboot负责初始化ddr,初始化flash,将os从flash读取到ddr中,然后启动os(os启动后uboot就无用了)。
bios变成uboot,硬盘变成flash,
android系统启动和linux几乎一样,在内核启动后,加载根文件系统开始不一样。
uboot:
1.启动系统内核,
2.部署计算机,
3.驱动硬盘等硬件,
4.提供一个命令行。