文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Linux内核编译及加载

Linux内核编译及加载

时间:2010-09-19  来源:璀璨



内核编译:(转载自刘同学)
一.首先下载新的内核源代码。可以到网站:www.kernel.org下载。
二.例如我下载的是linux-2.6.35.4.tar.bz2
   将源代码包复制到放源码的目录下,如/usr/src.
   解压缩源码包,输入命令:tar jxzf linux-2.6.35.4.tar.bz2
四.在编译新内核之前确保已有
安装包:
build-essential kernel-package,
gcc,make,
libncurses5-dev(在执行make menuconfig中用到);
命令:
mkinitramfs,
mkisofs;
若没有则用命令:sudo apt-get install 安装包或命令名称
五.准备工作做好了就开始编译了。进入要编译源码的目录,如linux-2.6.35.4
一次执行下面的命令:
  • sudo make menuconfig(配置内核参数,如果只是尝试,可以忽略,如果想让其做服务器,就应该手动配置,可参考这个网站http://lamp.linux.gov.cn/Linux/kernel_options.html)
  • sudo make dep //这一步有时是不需要的,因为我在编译时就不需要,系统直接提示:unessary
  • sudo make clean //做一点清除工作,把没用的中间文件删除掉
  • sudo make
  • sudo make modules //编译模块
  • sudo make modules_install //安装模块
  • sudo mkinitramfs -o /boot/initrd-2.6.30.img 2.6.30 //生成内核镜像文件
  • sudo make install //安装内核
经过上面的工作,2.6.30内核就算已经编译成功了
5,接下来就是修改启动选项,将你所编译成功的内核加载到启动选项中:
sudo gedit /boot/grub/menu.lst
复制一个启动选项,然后只修改很少部分,如我是这样修改的:
复制一份这样一份:
title        Ubuntu 9.04, kernel 2.6.28-14-generic
uuid        56ec4d75-8894-405a-b262-48ca12e86586
kernel        /boot/vmlinuz-2.6.28-14-generic root=UUID=56ec4d75-8894-405a-b262-48ca12e86586 ro locale=zh_CN quiet splash
initrd        /boot/initrd.img-2.6.28-14-generic
quiet
然后将其修改为:
title        Test Ubuntu 9.04, kernel 2.6.30
uuid        56ec4d75-8894-405a-b262-48ca12e86586
kernel        /boot/vmlinuz-2.6.30 root=UUID=56ec4d75-8894-405a-b262-48ca12e86586 ro locale=zh_CN quiet splash
initrd        /boot/initrd-2.6.30.img
看见了吗,就只将蓝色部分换成红色部分就OK了,很简单,然后重启进入新的选项!(注:也可以使用ls /boot 命令查看你编译内核成功后生成的内核镜像和初始化文件)


加载驱动代码目录和子目录:(Makefile和Kconfig)
例如要在内核源码drivers下新建目录lf下新增如下用于test driver的树形目录;


一.在新增lf目录下要创建test.c,    test_net.c,   test_user.c.
    以及cpu目录,cpu目录里要包含有cpu.c文件。
二.在lf目录下要包含如下Kconfig文件:
   

相关阅读 更多 +
排行榜 更多 +
像素赛车手mod版下载

像素赛车手mod版下载

赛车竞速 下载
王朝时代高级版官方下载

王朝时代高级版官方下载

策略塔防 下载
像素鸟游戏中文版下载

像素鸟游戏中文版下载

休闲益智 下载