zImage:这是小内核的旧格式,有指令make zImage生成,仅适用于只有640K以下内存的linux kernel文件。 bzImage: big zImage,需要注意的是这个bz与bzip没有任何关系,适用于更大的linux kernel文件。现代处理器的linux镜像都是生成bzImage文件,同时,vmlinuz和bzImage是同一类型的文件,一般情况下这个和vmlinuz是同一个东西。
1.6、$(TOPDIR)\arch\i386\boot\compressed\makefile解析 生成bzImage所需要的压缩内核文件。将vmlniux文件,由elf格式转换成bin格式,并压缩,在文件头部再加上解压缩代码: ZIMAGE_OFFSET =0x1000BZIMAGE_OFFSET =0x100000ZLINKFLAGS = -Ttext$(ZIMAGE_OFFSET)$(ZLDFLAGS) BZLINKFLAGS = -Ttext$(BZIMAGE_OFFSET...
两者的不同之处在于,zImage解压缩内核到低端内存(第一个640K),bzImage解压缩内核到高端内存(1M以上)。如果内核比较小,那么采用zImage或bzImage都行,如果比较大应该用bzImage。 uImage:U-boot专用的映像文件,它是在zImage之前加上一个长度为0x40的TAG。 vmlinuz:bzImage/zImage文件的拷贝或指向bzImage/zImage的...
| make bzImage/zImage | make zImage和make bzImage则实现完全编译内核,二者生成的内核都是使用gzip压缩的,只要使用| 一个就够了,它们的区别在于使用make bzImage可以生成大一点的内核。建议大家使用make | bzImage命令。 | make all 编译所有了,包括kernel 以及 modules了。 +---+ 6 +---+ | make modu...
2、makedep这条命令是编译相关依赖文件。3、makezImage这条命令就是最终的编译命令。有时你可以直接用 make(2.6,X 版本上用)或 makebzImage(给 PC 机编译大内核时用)4、makeinstall这条命令可以把相关文件拷贝到默认的目录。当然在给嵌入式设备编译时这步可以不要。因为具体的内核安装还需要你手工进行。
| make zImage和make bzImage则实现完全编译内核,二者生成的内核都是使用gzip压缩的,只要使用| 一个就够了,它们的区别在于使用make bzImage可以生成大一点的内核。建议大家使用make | bzImage命令。 | make all 编译所有了,包括kernel 以及 modules了。
[menu]config 完成,如果你愿意 也可以手工运行 make bzImage #只编译并链接内核 core 和内置(答 Y 的)模块 2.6 应该不可以产生 zImage 的 make modules #将 M 的模块编译为.o,然后再将多个目标链接为.ko 这些文件分散在各个模块源码目录中 make modules_install #拷贝.ko模块文件到/lib/modules/ <新内核...
2.6内核已经简化了编译的步骤,主要执行make就会编译内核和模块,makedep已经不需要了make=makezImage和makemodules编译内核和模块makedep#配置完成之后执行,2.6中由make[menu]config完成,如果你愿意,也可以手工运行makebzImage#只编译并链接内核core和内置(答Y的)模块(2.6应该不可以产生zImage的)makemodules#将M的模块...
makemodules是编译模块,很多驱动还有功能在选的时候选成M的都是modules,不过直接make,不加任何参数,就是makeall,包含makemodules。不用额外加此make,但是在安装的时候makeinstall只是安装bzimage,Systemmap。没有把modules安装好,还要额外的makemodules_install,把模块放到/lib/modules文件夹一个和内核...
用户是创建内核的人。这些人输入诸如“make menuconfig”或“make bzImage”之类的命令。他们通常并不阅读或编辑内核 Makefile (或任何其它源代码)。 普 通开发者是开发诸如设备驱动程序、文件系统或网络协议的人。这些人需要为他们开发的子系统维护用于该子系统的子目录 Makefile。为了有效地完成这一维护任务,他们需...