实验3内核编译实验.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验3内核编译实验

实验3 Linux内核编译实验 本章重点 了解Linux内核源代码的目录结构及各目录的相关内容 了解Linux内核各配置选项内容和作用 掌握Linux内核配置文件的作用 掌握Linux内核的编译过程 掌握将新增内核代码加入到Linux内核结构中的方法 本章导读 在计算机科学中,内核是操作系统最基本的部分。它是为众多应用程序提供对计算机硬体的安全访问的一部分软件,这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬体操作多长时间。直接对硬体操作是非常覆杂的,所以内核通常提供一种硬体抽象的方法来完成这些操作。硬件抽象隐藏了复杂性,为应用软件和硬件提供了一套简洁,统一的接口,使程序设计更为简单。 3.1、内核源代码目录介绍内核的配置Linux内核的配置系统由个部分组成 (2)、配置文件 config.in :给用户提供配置选择的功能;config:内核配置文件,包括由用户选择的配置选项,用来存放内核配置后的结果; (3)、配置工具:包括对配置脚本中使用的配置命令进行解释 make menuconfig(或make config、make xconfig)对Linux内核进行配置后,产生.config)。顶层 Makefile 读 .config 中的配置选择顶层 Makefile产生vmlinux )和内核模块(module)两个任务为了达到此目的,顶层 Makefile 递归进入到内核的各个子目录中,分别调用位于这些子目录中的 Makefile。至于到底进入哪些子目录,取决于内核的配置。顶层Makefile中include arch/$ ARCH /Makefile指定特定 CPU 体系结构下的 Makefile,这个Makefil包含了平台相关的信息。 各个子目录下的 Makefile 同样也根据 .config)给出的配置信息,构造出当前配置下需要的源文件列表,并在文件最后有 include $ TOPDIR /Rules.make。顶层 Makefile 定义并向环境中输出了许多变量,为各个子目录下的 Makefile 传递一些信息。有些变量,比如 SUBDIRS,不仅在顶层 Makefile 中定义并且赋初值,而且在 arch/*/Makefile 还作了扩充。 (1)、Make config:内核配置,调用./scripts/Configure按照arch/i386/config.in来进行配置。命令执行后产生文件.config,其中保存着配置信息。下次在做make config时将产生新的.config文件,原文件config更名为config.old 2 、 make dep:寻找依存关系。产生两个文件. depend和.hdepend,其中.hdepend表示每个.h文件都包含其他哪些嵌入文件。而.depend文件有多个,在每个会产生目标文件 .o 文件的目录下均有,它表示每个目标文件都依赖于哪些嵌入文件 .h 3 、make clean:清除以前构核所产生的所有的目标文件,模块文件,核心以及一些临时文件等,不产生任何文件 4 、 make rmproper:删除所有以前在构核过程所产生的所有文件,及除了做make clean 外,还要删除.config,.depend等文件,把核心源码恢复到最原始的状态。下次构核时必须进行重新配置; 5 、make,make zImage, make bzImage: (a)、make:构核。通过各目录的Makefile文件进行,会在各个目录下产生一大堆目标文件,如核心代码没有错误,将产生文件vmlinux,这就是所构的核心。并产生映像文件system.map通过各目录的makefile文件进行。.version文件中的数加1,表示版本号的变化。 b 、make zImage:在make的基础上产生压缩的核心映像文件./arch/$ ARCH /boot/zImage以及./arch/$ ARCH /boot/compressed目录下产生一些临时文件。 c 、make bzImage:在make的基础上产生压缩比例更大的的核心映像文件./arch/$ ARCH /boot/bzImage以及./arch/$ ARCH /boot/compressed目录下产生一些临时文件。在核心太大时进行 3.4、内核编译过程,以实例介绍 3.4.1内核移植的准备 内核包:linux-.tar.gz 官方下载: /pub/linux/kernel/v2.6/linux-.tar.bz2 BusyBox 是标准 Linux 工具的一个单个可执行实现。BusyBox 包含了一些简单的工具,例如 cat 和 echo,还包含了一些更大、更复杂的工具,例如 grep、find

文档评论(0)

liudao + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档