U-Boot作为Bootloader,具备多种引导内核启动的方式。常用的go和bootm命令可以直接引导内核映像启动。U-Boot与内核的关系主要是内核启动过程中参数的传递。
bootm命令调用do_bootm函数。这个函数专门用来引导各种操作系统映像,可以支持引导Linux、vxWorks、QNX等操作系统。引导Linux的时候,调用do_bootm_linux()函数。
do_bootm_linux()函数是专门引导Linux映像的函数,它还可以处理ramdisk文件系统的映像。这里引导的内核映像和ramdisk映像,必须是U-Boot格式的。U-Boot格式的映像可以通过mkimage工具来转换,其中包含了U-Boot可以识别的符号。
u-boot bootm命令浅析 http://blog.chinaunix.net/u1/47239/showart_377972.html
U-BOOT的内存镜像分布图 http://blog.chinaunix.net/u3/99507/showart_2107730.html
U-BOOT下使用bootm引导内核方法 1 http://hi.baidu.com/mudgao/blog/item/29b9fca9ae5d4ff61f17a2e7.html
U-BOOT下使用bootm引导内核方法 2 http://hi.baidu.com/mudgao/blog/item/7504a54c2b7459f3d62afce7.html