第8讲 构建嵌入式Linux开发平台.pptVIP

  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文档。上传文档
查看更多
第8讲 构建嵌入式Linux开发平台.ppt

编译和配置Linux内核 在内核源代码的根目录下运行make menuconfig命令 Linux内核移植过程 SystemType子项界面 Linux内核移植过程 编译内核: 配置完成后,一个精简的Linux就已经设置完成。可在Linux内核源文件的根目录下使用make命令编译内核。 [root@vm-dev linux-]# make 生成内核镜像: 编译完成后,在Linux-内核的/boot/arch/arm目录下生成内核的镜像文件zImage。 Linux内核移植过程 加载Linux内核 使用交叉网线连接好宿主机和目标机; 设置宿主机的TCP/IP属性(必须保证宿主机与目标机的IP地址处于同一网段) 编译U-Boot时,在源代码tools目录下生成有一个mkimage可执行文件,用该文件可对刚编译Linux内核生成的zImage进行处理,以供U-Boot启动。 使用tftp下载内核映像文件。 Linux内核移植过程 根文件系统移植 根文件系统一直以来都是所有类Unix操作系统的一个重要组成部分,也可以认为是嵌入式Linux系统区别于其他一些传统嵌入式操作系统的重要特征,它给Linux带来了许多强大和灵活的功能,同时也带来了一些复杂性。 根文件系统概述 简单的说,根文件系统就是一种目录结构。 根文件系统就是要包括Linux启动时所必须的目录和关键性的文件。 Linux启动时需要有init目录下的相关文件; 在Linux挂载分区时Linux一定会找/etc/fstab这个挂载文件; 根文件系统中还包括了许多的应用程序bin目录等; 任何包括这些Linux系统启动所必须的文件都可以称为根文件系统。 Linux根文件系统目录结构 Linux的根文件系统以树型结构组织,包含内核和系统管理所需要的各种文件和程序; 一般说来根目录”/”下的顶层目录都有一些比较固定的命名和用途; linux根文件系统下一些主要目录的功用如下: /bin:二进制可执行命令; /dev:设备特殊文件; /etc:系统管理和配置文件; /etc/rc.d:启动的配置文件和脚本; /home:用户主目录的基点,比如用户user的主目录就是/home/user; /lib:标准程序设计库,又叫动态链接共享库; /sbin:系统管理命令,存放系统管理员使用的管理程序; /tmp:公用的临时文件存储点; /root:系统管理员的主目录; /mnt:系统提供让用户临时挂载其他的文件系统; /lost+found:这个目录平时是空的,用于存放系统非正常关机而留下“无家可归”的文件; /proc:虚拟的目录,是系统内存的映射; /var:某些大文件的溢出区,比如各种服务的日志文件; /usr:最庞大的目录,要用到的应用程序和文件几乎都在这个目录。其中主要包含: /usr/bin:众多的应用程序; /usr/sbin:超级用户的一些管理程序。 Linux根文件系统目录结构 BusyBox的init进程依次进行以下工作: 为init设置信号处理进程; 初始化控制台; 剖析inittab、/etc/inittab文件; 执行系统初始化的命令行。 执行所有会导致init暂停的inittab命令;(告诉init必须等到相应的进程完成之后才能继续执行。) 执行所有仅执行一次的inittab命令。(仅执行相应的进程一次,而且不会等待它完成。) 一旦完成以上工作,init进程便会循环执行以下工作: 1.执行所有终止时必须重新启动的inittab命令; 2.执行所有终止时必须重新启动但启动前必须先询问过用户的inittab命令。 Linux根文件系统引导过程 1.获得BusyBox源码 从网站下载。 解压源码,得到完整的BusyBox源码包. [root@vm-dev 2410-s]# tar -vxjf busybox-1.12.2.tar.bz2 [root@vm-dev 2410-s]# cd busybox-1.12.2 [root@vm-dev busybox-1.12.2]#ls 说明:BusyBox解压后,当前目录下自动新建一个名为busybox-1.12.2的子目录,可进入该目录查看BusyBox目录结构。 BusyBox根文件系统移植过程 2.修改Makefile文件 与Linux内核移植原因相同,需要修改Makefile中的ARCH和CROSS_COMPILE与本机的路径一致。 打开Makefile文件。 [root@vm-dev busybox-1.12.2]# vi Makefile 将Makefile文件的目标平台改为arm,交叉编译器前缀

文档评论(0)

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

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

1亿VIP精品文档

相关文档