Linux小知识-4:vmlinuz简单介绍

vmlinuz是可引导的、压缩的内核。“vm”表明“Virtual Memory”。Linux 支持虚拟内存,不像老的操做系统好比DOS有640KB内存的限制。Linux可以使用硬盘空间做为虚拟内存,所以得名“vm”。vmlinuz是可执行的Linux内核,它位于/boot/vmlinuz,它通常是一个软连接。  linux

vmlinuz的创建有两种方式。一是编译内核时经过“make zImage”建立,而后经过:“cp /usr/src/linux-2.4/arch/i386/linux/boot/zImage /boot/vmlinuz”产生。zImage适用于小内核的状况,它的存在是为了向后的兼容性。二是内核编译时经过命令make bzImage建立,而后经过:“cp /usr/src/linux-2.4/arch/i386/linux/boot/bzImage /boot/vmlinuz”产生。bzImage是压缩的内核映像,须要注意,bzImage不是用bzip2压缩的,bzImage中的bz容易引发误解,bz表示“big zImage”。 bzImage中的b是“big”意思。spa

zImage(vmlinuz)和bzImage(vmlinuz)都是用gzip压缩的。它们不只是一个压缩文件,并且在这两个文件的开头部份内嵌有gzip解压缩代码。因此你不能用gunzip 或 gzip –dc解包vmlinuz。操作系统

内核文件中包含一个微型的gzip用于解压缩内核并引导它。二者的不一样之处在于,老的zImage解压缩内核到低端内存(第一个640K),bzImage解压缩内核到高端内存(1M以上)。若是内核比较小,那么能够采用zImage 或bzImage之一,两种方式引导的系统运行时是相同的。大的内核采用bzImage,不能采用zImage。  ip

vmlinux是未压缩的内核,vmlinuz是vmlinux的压缩文件。内存

vmlinux 是ELF文件,即编译出来的最原始的文件。 编译

vmlinuz应该是由ELF文件vmlinux通过OBJCOPY后,并通过压缩后的文件 兼容性

zImage是vmlinuz通过gzip压缩后的文件,适用于小内核兼容

bzImage是vmlinuz通过gzip压缩后的文件,适用于大内核gzip

一般状况下是不能用vmlinuz解压缩获得vmlinux的文件

相关文章
相关标签/搜索