Image , zImage 和 vmlinux的区别

来源:互联网 发布:中国电信宽带网络 编辑:程序博客网 时间:2024/06/05 13:29
我们知道,在我们make menuconfig配置好我们的内核之后,紧接着我们是make编译我们的内核。编译好后,我们可以看到:
 
在/arch/xxx/boot目录下有两个文件 Image 和 zImage 


在/arch/xxx/boot/compressed目录下有vmlinux这个文件


那么这几个关于内核的文件有什么区别呢?

Image: 是经过objcopy处理了的只包含内核代码和数据的一个文件,这个文件是一个Binary格式的文件,已经不是ELF格式的文件了,不过此时还没有经过压缩。

zImage: 是经过objcopy处理了的一个Binary格式的文件,也已经不是一个ELF格式的文件了。与Image不同的是,zImage这个文件是经过压缩了的文件,可以直接下到对应的地址执行的内核镜像。实际上,在zImage的映像中,包含未被压缩的部分。这部分中包含着解压缩程序,解压缩程序会解压映像中被压缩的部分。

vmlinux: 是由经过压缩的Image 和加入解压头文件组成的ELF格式文件

参考链接:http://blog.chinaunix.net/uid-792603-id-2546535.html
0 0