感谢支持
我们一直在努力

Linux内核知识学习笔记

版本

Linus树

Linux内核最初创始人–Linus Torvalds管理一个Linus树,linus树也称为主线(mainline)。一般指的upstream,“上游”,也指这个linus树或者各种开发树。

linus树是以2.6.x这样的三个数字来表示。比如Linux 2.6.18-164.el5xen 的linus树中的内核版本就是2.6.18

stable树

这个是针对某个具体的内核版本进行bug修复,使其更加稳定的树。这个树的版本号是在linus树的版本号后加一个数字。比如Linux 2.6.18-164.el5xen 的linus树中的内核版本就是2.6.18,stable版本是164。

发布版内核

基于linus树或者stable树添加特有扩展和bug修改,以满足一些特定的用户的需求而发行的一些版本就叫做发行版。比如Fedora,Ubuntu,CentOS等。

获取上游内核可以从http://www.kernel.org获取

Linux Kernel 的详细介绍:请点这里
Linux Kernel 的下载地址:请点这里

推荐阅读:

怎样在 Ubuntu 上安装 Linux 3.11 内核 http://www.linuxidc.com/Linux/2013-09/89674.htm

Ubuntu 13.10 (Saucy Salamander) 内核已升级至 Linux Kernel 3.10 RC5 http://www.linuxidc.com/Linux/2013-06/86110.htm

如何对内核进行编译

1 获取源代码

2 设置

3 编译

4 根据发布版生成相应的源码包

5 安装内核印象和模块

 

比如ubuntu发布版必要的源码包是:

libncurses5-dev  基于控制台(文字界面)设置时需要

qt3-dev-tools  基于窗口(图形界面)设置时需要

g++ 基于窗口(图形界面)设置时需要

kernel-package

fakeroot

dpkg-dev

 

具体步骤

1 获取源码:

apt-get install linux-source

cp /usr/src/linux-source-XXXX.tar.bz2  /home/yejianfeng/

cd /home/yejianfeng

tar xjf linux-source-XXXX.tar.bz2

2 设置

cd  /home/yejianfeng/linux-source-XXXX

make menuconfig

exit — 保存修改

(退出可以看到根目录下有个.config文件就是配置)

3 编译

make

11.18 —

4 安装内核

make modules_install

make install

遇到问题:

第二步 make menuconfig的时候出现错误:

** Unable to find the ncurses libraries or the

*** required header files.

*** ‘make menuconfig’ requires the ncurses libraries.

***

*** Install ncurses (ncurses-devel) and try again.

***

解决方法:

apt-get install libncurses5-dev

内核模块

Linux内核是单内核(monolithic kernel),也就是所有的内核功能都集成在一个内核空间内。但是内核具有模块功能,可以将各个功能做成模块添加到内核空间中去。

内核模块是可以动态添加到Linux内核空间的,文件扩展名为ko

赞(0) 打赏
转载请注明出处:服务器评测 » Linux内核知识学习笔记
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏