zImage与uImage的区别

时间:2021-04-06 16:38:39

在编译Linux内核时,通常都是生成zImage,

它是一般情况下默认的压缩内核映像文件。

而实际上,zImage是通过压缩内核文件vmlinux后,再加上一段解压启动代码得到。


而uImage是u-boot使用bootm命令引导的Linux压缩内核映像文件格式,

是使用工具mkimage对普通的压缩内核映像文件(zImage)加工而得。

它是uboot专用的映像文件,它是在zImage之前加上一个长度为 64字节的“头”

说明这个内核的版本、加载位置、生成时间、大小等信息;其0x40之后与zImage没区别

这使得u-boot在引导内核时,就能自动找到内核的内置。


其实就是自动和手动的区别,有了uImage头部的描述,u-boot就知道对应Image的信息,

如果没有头部则需要自己手动去确定那些参数。