- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 嵌入式Linux系统构建 6.1 Linux内核的裁剪和编译 Linux内核裁剪的目的是根据应用的需要,裁剪掉嵌入式应用中不需要的功能和代码,留下必要的功能和代码,可以减小内核尺寸,较少存储器需求,降低嵌入式系统功耗,教学系统体积。内核裁减集的原理是打开一个菜单,让开发人员在其中选择所需要的功能、特色、配置和参数,配置工具为选择的功能定义相应的C语言宏,并通过编译命令的-D选项传给内核源程序,内核源代码中对宏定义进行检查,使用条件编译的手段,将对仅需要的特色和功能进行编译,生成内核,而未选择的功能和特色则不进行编译,从而达到裁剪内核的目的。 Linux内核的裁剪工作包括内核配置、内核编译、根文件系统构建等工作,具体过程介绍如下。 6.1.1重新编译生成一个新的X86系统内核 # cp linux-2.4.20.bz2 /usr/src/ # cd /usr/src # tar zfvj linux-2.4.20.bz2 # ln -s linux-2.4.20 linux # cd linux 或 # cd /usr/src/linux-2.4.20-8 2) 清理源代码树 # make mrproper make mrproper命令会删除所有的编译生成文件、内核配置文件(.config文件)和各种备份文件,所以几乎只在第一次执行内核编译前才用这条命令。 3) 进入menuconfig配置菜单: # make menuconfig删除编译生成文件,但保留内核的配置文件.config # make clean2) 对内核配置阶段选择的功能和特色进行依赖关系分析,这些功能运行所需要的特色和代码添加到裁剪后的内核中。 # make dep # make zImage 4) 编译可加载模块(即内核选项中选择为M的选项),编译时间跟M选项的数量有关将编译好的modules拷贝到/lib/modules下# make modules_inatall (4) 最终生成的压缩映像的路径 arch/i386/boot/zImage (5) 用新的内核启动Linux 1) 将新内核复制到/boot目录 ? ?? ? # cp /usr/src/linux/arch/i386/boot/bzImage??/boot/vmlinuz-x.y.z2)?将启动映象文件复制到/boot目录 ?? ? # cp /usr/src/linux/System.map /boot/System-x.y.z.map3)??修改启动设置文件目前大多数使用的都是grub启动,需要修改/boot/grub/grub.conf,添加相应的启动信息,添加内容的最简单格式如下:title 显示在启动菜单上的名称root 根文件系统挂载分区kernel 压缩过的内核文件名initrd 根文件系统文件名? ?? ?? ?? ???如:? ?? ?? ?? ???title My new kernel? ?? ?? ?? ???root (hd0,2)? ?? ?? ?? ???kernel /boot/vmlinuz-x.y.z? ?? ?? ?? ???initrd /boot/initrd-x.y.z.img重新编译生成一个新的系统内核 # cd /arm2410s/kernel-2410s 2) 进入menuconfig配置菜单# make menuconfig (2)编译生成新的内核 1)删除编译生成文件,但保留内核的配置文件.config # make clean2) 对内核配置阶段选择的功能和特色进行依赖关系分析,这些功能运行所需要的特色和代码添加到裁剪后的内核中。 # make dep # make zImage # make modules (4) 最终生成的压缩映像的路径 arch/arm/boot/zImage 6.2 根文件系统的制作 6.2.1 根文件系统的结构 根文件系统包括支持Linux正常运行所需的程序和数据,如系统命令文件、运行库、系统进程代码和配置文件,包括: 基本文件系统结构:/dev,/proc,/bin,/etc,/lib,/usr,/tmp,/var,/home,/mnt 基本程序运行所需函数库:glibc, uclibc 基本系统配置文件: rc, inittab 必要的设备支持文件: /dev/hd*, /dev/tty*, /dev/fda0 必要的系统命令:sh, ls, cp, mv, rz, ifconfig 6.2.2 制作根文件系统映像 本节讲述如何在旧的根文件系统中加入新命令或文件的过程。 (1)将旧的根文件系统解压缩到一个目录中
您可能关注的文档
最近下载
- 高压液氧泵原理、结构及检修、结构及检修课件.pptx VIP
- 内蒙古版五年级上册综合实践活动全册教学设计教案.pdf
- 抗战胜利80周年党课:铭记历史担使命,砥砺奋进新征程(附文稿).pptx VIP
- 2025年基本医疗保险管理.pptx VIP
- 千岛湖汽车客运北站发车时刻表.doc VIP
- 跟动物学“智慧”..ppt VIP
- 理事会理事候选人会员代表推荐表.docx VIP
- 人民医院被服库采购、驻店及配送服务项目(2包:巾单辅料等被服类) 投标方案(技术标).doc VIP
- 环保行业管道直饮水行业解读与项目盈利性分析:自来水的消费升级.docx VIP
- 2025粤港「组装合成」模块化建筑跨境贸易指南.pdf VIP
文档评论(0)