vmlinux、 Image, zImage、 uImage 的区别

本文详细介绍了Linux内核镜像文件vmlinux、zImage和uImage之间的区别。vmlinux是未经压缩的原始内核文件,Image是去掉一些辅助信息的vmlinux,而zImage是经过gzip压缩的Image。uImage则是老版本u-boot使用的带有头部信息的内核镜像,现代u-boot已主要支持zImage启动。
摘要由CSDN通过智能技术生成

来自正点原子《【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.5.2.pdf》

vmlinux 是 ELF 格式的文件,但是在实际中我们不会使用 vmlinux,而是使用 zImage 或 uImage 这样的 Linux 内核镜像文件。那么vmlinux、 zImage、 uImage 他们之间有什么区别呢?

①、 vmlinux 是编译出来的最原始的内核文件,是未压缩的,比如正点原子提供的 Linux 源码编译出来的 vmlinux 差不多有 16MB
在这里插入图片描述

②、 Image 是 Linux 内核镜像文件,但是 Image 仅包含可执行的二进制数据。 Image 就是使用 objcopy 取消掉 vmlinux 中的一些其他信息,比如符号表什么的。但是 Image 是没有压缩过的, Image 保存在 arch/arm/boot 目录下,其大小大概在 12MB 左右
在这里插入图片描述
相比 vmlinux 的 16MB, Image 缩小到了 12MB。

③、 zImage 是经过 gzip 压缩后的 Image,经过压缩以后其大小大概在 6MB 左右
在这里插入图片描述

④、 uImage 是老版本 uboot 专用的镜像文件, uImag 是在 zImage 前面加了一个长度为 64字节的“头”,这个头信息描述了该镜像文件的类型、加载位置、生成时间、大小等信息。但是新的 uboot 已经支持了 zImage 启动!所以已经很少用到 uImage 了,除非你用的很古老的 uboot。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

【ql君】qlexcel

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值