小白请教一些内核编译的问题
时间:2010-07-13
来源:互联网
原来是在arm下进行开发,现在要移植arm下的东西到X86
arm下的内核是通过交叉编译然后make zImage得到的zImage镜像,然后通过网络下载的方式加载的。
现在在X86下是直接拷贝内核源码到安装好的linux操作系统中,然后make install, 在boot下多了一个vmlinuz.2.6.21.4的一个镜像文件,看到grub的menulist启动用的就是这个
那么zImage和这个vmlinuz.2.6.21.4有何区别呢?
还有以前我是用的busybox定制的文件系统,那么现在我还想用busybox定制文件系统,然后用自己的内核+自己的文件系统,而不是用安装光盘的,应该怎么弄呢?
arm下的内核是通过交叉编译然后make zImage得到的zImage镜像,然后通过网络下载的方式加载的。
现在在X86下是直接拷贝内核源码到安装好的linux操作系统中,然后make install, 在boot下多了一个vmlinuz.2.6.21.4的一个镜像文件,看到grub的menulist启动用的就是这个
那么zImage和这个vmlinuz.2.6.21.4有何区别呢?
还有以前我是用的busybox定制的文件系统,那么现在我还想用busybox定制文件系统,然后用自己的内核+自己的文件系统,而不是用安装光盘的,应该怎么弄呢?
作者: 527639827 发布时间: 2010-07-13
Linux 基本内核有两个版本:zImage 和bzImage,前者大小限制在大约 508 KB,后者用于更大的内核(最大约 2.5 MB)。通常,现代的 Linux 发行商都使用 bzImage 内核格式以支持更多的特性。您可能会认为,由于 zImage 中的“z”表示 gzip 压缩,那么 bzImage 中的“bz”表示这里使用的是 bzip2 压缩。但是,“b”只是表示“big”,使用的还是 gzip 压缩。两种情况下,由于都是安装在 /boot/ 目录中,所以基本内核通常都被重新命名为 vmlinuz。通常,文件 /vmlinuz 会是一个指向某个版本名称文件的链接,比如 /boot/vmlinuz-2.6.10-5-386。
如果你想要zImage的话,应该在make install之前make zImage的。
我不知道你的busybox是怎么回事,如果是普通Linux版本的话,make install以后,安装程序会自动更新的grub.conf文件,在其中添加用新内核启动的选项。
新的内核,会从/lib/modules/`uname -r`中加载module。如果你编译了新的内核,那么/lib/modules中,应该会有对应新内核版本的文件夹。
如果你想要zImage的话,应该在make install之前make zImage的。
我不知道你的busybox是怎么回事,如果是普通Linux版本的话,make install以后,安装程序会自动更新的grub.conf文件,在其中添加用新内核启动的选项。
新的内核,会从/lib/modules/`uname -r`中加载module。如果你编译了新的内核,那么/lib/modules中,应该会有对应新内核版本的文件夹。
作者: mengyingchuxian 发布时间: 2010-07-16
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28