bootloader内核 根文件的关系
一般来说,为了使开发板成功运行linux系统,我们需要完成以下三个方面的开发工作:
- bootloader(启动装载)
- kernel(内核)
- rootfs(根文件系统)
bootloader:
对于bootloader,我们一般用u-boot来制作。
当开发板烧写了u-boot并启动后,你可以使用命令行来控制开发板进行一些简单硬件操作和配置(内存、网络、文件系统和启动等等),并且命令风格和linux很相似,所以也可以把u-boot看作一个封装了各种硬件外设驱动(裸机)的Shell程序。
由于u-boot集成了网络功能(如tftp工具),因此开发板在烧写好u-boot后,我们可以通过网络上传linux内核,将kernel镜像文件直接加载开发板内存中去,达到动态加载的目的,这样就不用非得先把kernel烧写到mmc和sd卡中再去加载和执行。使用u-boot可以直接将内存中的镜像文件写入mmc和sd卡,也可以从mmc和sd卡将镜像读到内存中。
Kernel: