uImage zImagelinux
vmlinux 编译出来的最原始的内核文件,未压缩。spa
zImage 是vmlinux通过gzip压缩后的文件。blog
uImage U-boot专用的映像文件,它是在zImage以前加上一个长度为0x40(64)的tag。在生成的时候,须要添加“LOADADDR=0x8000”。它是在zImage以前加上一个长度为64字节的“头”,说明这个内核的版本、加载位置、生成时间、大小等信息;其0x40以后与zImage没区别。ip
以下图,在生成zImage时,须要添加“LOADADDR=0x8000”。zImage大小是3558128,而uImage是3558192。it
bootz bootm编译
对于ARM来说,能够透过bootz kernel_addr initrd_address dtb_address的命令来启动内核,即dtb_address做为bootz或者bootm的最后一次参数,第一个参数为内核映像的地址,第二个参数为initrd的地址,若不存在initrd,能够用"-"代替。im
如:bootz ${loadaddr} - ${fdtaddr}img
booti,引导ARM64 kernel image----Image;gzip
bootz,引导ARM kernel image----zImage;文件
bootm,引导u-boot自定义的kernel image----uImage。