vmlinux 是 ELF 格式的文件,但是在实际中我们不会使用 vmlinux,而是使用 zImage 或 uImage 这样的 Linux 内核镜像文件。那么 vmlinux、zImage、uImage 他们之间有什么区别呢?
vmlinux 是编译出来的最原始的内核文件,如下图:
Image 是 Linux 内核镜像文件,Image 保存在 arch/arm/boot 目录下,如下图:
zImage 是经过 gzip 压缩后的 Image
uImage 是老版本 uboot 专用的镜像文件
使用"make"、"make all"、"make zImage"这些命令就可以编译出 zImage 镜像