实验10 Linux内核编译课件.ppt

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验10 Linux内核编译课件

实验10 Linux内核编译 ;一、实验目的;二、实验工具与设备;三、实验预备知识; Linux作为一个自由软件,在广大爱好者的支持下,内核版本不断更新。新的内核修订了旧内核的bug,并增加了许多新的特性。如果用户想要使用这些新特性,或想根据自己的系统度身定制一个更高效、更稳定的内核,就需要重新编译内核。; 通常,更新的内核支持更多的硬件,具备更好的进程管理能力,运行速度更快、 更稳定,并且会修复老版本中发现的许多漏洞等。经常性地选择升级更新的系统内核,是Linux用户的必要操作内容。; 为了正确合理地设置内核编译配置选项,只编译系统需要功能的代码,原因如下。 (1)自己定制编译的内核运行更快(具有更少的代码)。 (2)系统将拥有更多的内存(内核部分将不会被交换到虚拟内存中)。 (3)不需要的功能编译进入内核,可能会增加被系统攻击者??用的漏洞。 (4)将某种功能编译为模块方式比编译到内核的方式速度要慢一些。; 内核编译模式可以分为编译到内核和编译成模块两种模式。要增加对某部分功能的支持,例如网络等,可以把相应部分编译到内核中(build-in),也可以把该部分编译成模块(module)动态调用。如果编译到内核中,在内核启动时就可以自动支持相应部分的功能,其优点是方便、速度快,机器启动即可使用这部分功能;其缺点是使内核变得庞大起来,无论是否需要这部分功能,它都会存在。建议将经常使用的部分直接编译到内核中,如网卡。如果编译成模块,则生成对应的.o文件,使用时可以动态加载,优点是不会使内核过分庞大,缺点是必须得由用户自己来调用这些模块。;四、实验内容和步骤;本实验从/pub/linux/kernel/v2.4/linux-2.4.20.tar.gz下载linux-2.4.20.tar.gz内核,并将下载的内核linux-2.4.20.tar.gz保存在“/usr/src”目录下。;2.内核解包 编译内核前,应对下载的内核文件进行解包,操作方法如下。 (1)用以下命令将当前目录改到/usr/src下: cd /usr/src (2)如果/usr/src目录下存在一个“linux”的目录,应将其改名为“linux.old”;如果不存在,则直接执行以下命令: tar xzvf /root/linux-2.4.20.tar.gz; (3)执行该命令后,内核源代码被释放到一个新的“linux-2.4.20”目录下。 注意:目录名可能因版本的不同而有所区别。 为方便起见,将该目录名字改为“linux”,操作命令如下: mv linux-2.4.20 linux;3.配置内核 Linux提供多种配置内核的方法,可以根据需要与爱好使用下面命令中的一个。 make config命令:基于文本配置界面的配置命令。 make menuconfig命令:基于文本菜单配置界面的配置命令。 make xconfig命令:基于图形窗口模式配置界面的配置命令。;本实验以基于图形窗口模式配置界面的配置命令为例配置内核,具体操作步骤如下。 (1)用以下命令将当前目录改到解包文件目录“/usr/src/linux”下: cd /usr/src/linux (2)用以下配置命令打开配置对话框: make xconfig 执行命令后,弹出配置对话框,如图10-1所示。 由图10-1可见,配置内核的选项很多。选择每一项配置时,可以有三个选择按钮,如图10-2所示。;图10-1 Linux内核配置对话框;图10-2 配置内核的选择按钮;每个按钮的意义如下。 y:将该功能编译进内核。 n:不将该功能编译进内核。 m:将该功能编译成可以在需要时动态插入到内核中的模块。 单击“Main Menu”按钮,返回主配置窗口;单击“Next”按钮,配置下一个配置项;单击“Prev”按钮,配置上一个配置项。; 在编译内核的过程中,大部分选项可以使用缺省值,只有部分要根据用户的需要进行更改。修改的原则是将与内核其他部分关系较远且不经常使用的部分功能代码编译成为可加载模块,有利于减小内核的长度,减小内核消耗内存,简化该功能相应的环境改变时对内核的影响;不需要的功能不选;与内核关系紧密而且经常使用的部分功能代码则直接编译到内核中。 以下是几个主要的配置项(其他配置内容参考附录3)。 ① Loadable module support:设置对可加载模块的支持,有以下三个选项。;? Enable loadable module support:除非准备把所有需要的内容都编译到内核里面,否则该项应该是必选的(y)。 ? Set version information on all module symbols:有关版本信息加载项,可以不选它(n)。 ? Kernel modul

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档