欢迎来到天天文库
浏览记录
ID:30417617
大小:219.04 KB
页数:7页
时间:2018-12-29
《实验四linux内核编译阅读linux内核b源码b》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实验四Linux内核编译、阅读Linux内核源码一.实验目的1.了解Linux内核的版本和组成2.掌握Linux系统内核的编译操作方法3.了解Linux系统内核的配置方法4.通过阅读Linux的内核源码,学习系统调用的执行流程,为深入学习内核原理打下牢固基础二.实验工具与设备1.准备最新的Linux操作系统内核,或装有Linux操作系统的计算机并能直接连入Internet2.实验设备:计算机三.实验内容1.实验预备知识内核是一个操作系统的核心,负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。Linux的一个重要特点是其源代码的公
2、开性,所有的内核源程序都可以在/usr/src/linux下找到,大部分应用软件也遵循GPL而设计,任何人都可以获取相应的源程序代码。全世界任何一个软件工程师都可以将自己认为优秀的代码加入到其中,由此带来的一个明显好处,是修补漏洞的快速以及对最新软件技术的利用。Linux的内核是这些特点最直接的代表。Linux作为一个自由软件,在广大爱好者的支持下,内核版本不断更新。新的内核修订了旧内核的bug,并增加了许多新的特性。如果用户想要使用这些新特性,或想根据自己的系统度身定制一个更高效、更稳定的内核,就需要重新编译内核。通常,更新的内核支持更多的硬件,具备更好的进程
3、管理能力,运行速度更快、更稳定,并且会修复老版本中发现的许多漏洞等。经常选择升级更新的系统内核,是Linux用户的必要操作内容。为了正确合理地设置内核编译配置选项,只编译系统需要功能的代码,原因如下。(1)自己定制编译的内核运行更快(具有更少的代码)。(2)系统将拥有更多的内存(内核部分将不会被交换到虚拟内存中)。(3)不需要的功能编译进入内核,可能会增加被系统攻击者利用的漏洞。(4)将某种功能编译为模块方式比编译到内核的方式速度要慢一些。内核编译模式可以分为编译到内核和编译成模块两种模式。要增加对某部分功能的支持,例如网络等,可以把相应部分编译到内核中(bui
4、ld-in),也可以把该部分编译成模块(module)动态调用。如果编译到内核中,在内核启动时就可以自动支持相应部分的功能,其优点是方便、速度快,机器启动即可使用这部分功能。其缺点是使内核变得庞大起来,无论是否需要这部分功能,它都会存在。建议将经常使用的部分直接编译到内核中,如网卡;如果编译成模块,则生成对应的.o文件,使用时可以动态加载,优点是不会使内核过分庞大,缺点是必须得由用户自己来调用这些模块。2.下载新内核在http://www.kernel.org/pub/linux/kernel可以下载Linux的最新内核代码。内核的源代码按内核版本(v2.4、v
5、2.5等)组织到多个不同的目录中。在每个目录中,文件被冠以“linux-x.y.z.tar.gz”和“linux-x.y.z.tar.bz2”等,这些就是Linux内核的源代码。同时存在一些类似“patch-x.y.z.gz”和“patch-x.y.z.bz2”的文件,这是用来更新前面完整的内核源代码的补丁包。本实验从http://www.kernel.org/pub/linux/kernel/v2.4/linux-2.4.20.tar.gz下载linux-2.4.20.tar.gz内核,并将下载的内核linux-2.4.20.tar.gz保存在“/usr/sr
6、c”目录下。3.内核解包编译内核前,应对下载的内核文件进行解包,操作方法如下。(1)用以下命令将当前目录改到/usr/src下:cd/usr/src(2)如果/usr/src目录下存在一个“linux”的目录,应将其改名为“linux.old”;如果不存在,则直接执行以下命令:tarxzvf./linux-2.4.20.tar.gz(3)执行该命令后,内核源代码被释放到一个新的“linux-2.4.20”目录下。注意:目录名可能因版本的不同而有所区别。为方便起见,将该目录名字改为“linux”,操作命令如下:mvlinux-2.4.20linux4.配置内核Li
7、nux提供多种配置内核的方法,可以根据需要与爱好使用下面命令中的一个。makeconfig命令:基于文本配置界面的配置命令。makemenuconfig命令:基于文本菜单配置界面的配置命令。makexconfig命令:基于图形窗口模式配置界面的配置命令。本实验以基于图形窗口模式配置界面的配置命令为例配置内核,具体操作步骤如下。(1)用以下命令将当前目录改到解包文件目录“/usr/src/linux”下:cd/usr/src/linux(2)点选菜单进行配置(可和下面的(3)结合进行配置)KDE->选项->系统->Linux内核配置程序进入配置窗口后,在Patht
8、oKernelSourc
此文档下载收益归作者所有