首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >vmlinuz和zImage的区别是什么?

vmlinuz和zImage的区别是什么?
EN

Unix & Linux用户
提问于 2016-04-14 15:02:51
回答 1查看 3.6K关注 0票数 5

我所知道的(如果我的理解是错误的,请改正):

vmlinuz:是一个压缩的、自解压缩的、可引导的Linux映像。一直都是ELF?怎么生成的?

zImage (或bzImage):是压缩、自解压缩、可引导的Linux映像.总是二进制的。由“make zImage”生成。

一些消息来源说,这实际上是相同的图像,如:这里这里

但看起来不是这样的。我已经构建了嵌入式Openwrt项目,并在执行"file vmlinuz“时获得了以下信息:

代码语言:javascript
复制
vmlinuz: ELF 32-bit MSB  executable, MIPS, MIPS32 rel2 version 1 (SYSV), statically linked, stripped

可以看出,它是ELF格式,而不是像zImage那样的二进制文件。

更令人困惑的是,当我在我的ubuntu vmlinuz上读到它时,我知道它不是ELF文件。

EN

回答 1

Unix & Linux用户

发布于 2016-04-14 15:50:47

vmlinuz是一样的。

如果您曾经运行过make install,您会注意到这一点。zImage或bzImage是安装到/boot/vmlinuz-$VERSION上的。

看起来,有些体系结构将其封装为ELF (而有些则没有)。x86上的Linux可能由于与引导程序(如LILO、syslinux等)的兼容性而没有ELF,而且我不知道它们可能不喜欢GRUB如何加载ELF文件。在其他架构上,它可能会因为同样的原因而被ELF所困。注意,解压缩后的图像始终是ELF (参见例如:)。

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/276489

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档