文件格式:vmlinux(vmlinuz)\.img\uImage
制作工具:make zImage;make bzImage\mkinitrd\make uImage
--------------------------------------------------------------------------------------------------------------------------------------------------------------
一、Image、zImage和uImage的区别
内核编译(make)之后会生成两个文件,一个是Image,一个是zImage,其中Image为内核映像文件,而zImage为内核的一种映像压缩文件,Image大约为4M,而zImage不到2M。uImage是uboot专用的映像文件,它是在zImage之前加上一个长度为64字节的“头”,说明这个内核的版本、加载位置、生成时间、大小等信息;其0x40之后与zImage没什么区别。
所以uImage和zImage都是压缩后的内核映像,而uImage是uboot专用的映像文件,是用mkimage工具根据zImage制作而来的。
二、uImage的制作
(编译uboot源码,编译成功后载uboot/tools目录下会生成mkimgage工具,将mkimage工具拷贝到/usr/bin/目录下即可。)
mkimage工具
内核编译完后zImage在内核根目录下,mkimage工具在u-boot根目录下的tools文件夹中,将zImage和mkimage放在同一个目录下,执行:
./mkimage -A arm -O linux -T kernel -C none -a 30008000 -e 30008000 -n linux-2.6.26 -d zImage uImage2.6.26
就将zImage转换成uImage了。