内核镜像格式

Linux内核镜像格式:

1)原始编译版本,vmlinux

        vmlinux是可引导的、未压缩、可压缩的内核镜像,vm代表Virtual Memory。

        它是由用户对内核源码编译得到的最原始的内核文件,实质是elf格式的文件。这种格式的镜像文件多存放在PC机上。

2)非压缩版本,Image

        Image是经过objcopy处理的只包含二进制数据的内核代码,它已经不是elf格式了,但这种格式的内核镜像还没有经过压缩。

        objcopy是一种格式的目标文件转换成另一种格式的目标文件的工具。通过使用binary作为输出目标(-o binary),可产生一个原始的二进制文件,实质上是将所有的符号和重定位信息都将被抛弃,只剩下二进制数据。

3)压缩版本,zImage

        zImage是Image经过gzip压缩形成的,所以它的大小比Image小。为了能使用zImage这个压缩版本,必须在它的开头加上解压缩的代码,将zImage解压缩之后才能执行,因此它的执行速度比Image要慢。但考虑到嵌入式系统的存储空容量一般都比较小,内核要常驻内存,采用zImage可以占用较少的存储空间,因此牺牲一点性能上的代价也是值得的,所以一般嵌入式系统均采用压缩的内核映像文件,即zImage。
        zImage是ARMLinux常用的一种压缩映像文件。

4)uboot专用版本,uImage

        uImage是U-boot专用的映像文件,它是在zImage之前加上一个长度为0x40的“头”,说明这个映像文件的类型、加载位置、生成时间、大小等信息。如果直接从uImage的0x40位置开始执行,zImage和uImage没有任何区别。

转自:linux 内核镜像格式_bobuddy的博客-CSDN博客_linux内核镜像格式

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值