1 / 62
文档名称:

第5章__嵌入式Linux开发环境的搭建.ppt

格式:ppt   页数:62
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第5章__嵌入式Linux开发环境的搭建.ppt

上传人:wiztre 2013/11/13 文件大小:0 KB

下载得到文件列表

第5章__嵌入式Linux开发环境的搭建.ppt

文档介绍

文档介绍:第5章嵌入式Linux开发环境的搭建
嵌入式开发环境的搭建
U-Boot
嵌入式交叉编译环境的搭建
交叉开发概念模型
tftp
主机
目标板
下载内核映像
各种连接方式
挂接
NFS
文件系统
Linux系统
Cross-Tools-Chain
Linux内核
网线
串口线
并口线
USB电缆
JTAG电缆
根文件系统
BootLoader
很像Windows下面的超级终端, 作为被开发目标板的终端,实现目标板相关信息的显示与交互,适于在Linux通过超级终端对嵌入式设备的管理以及对嵌入操作系统的升级。
tftp服务
tftp是用来下载远程文件的最简单网络协议,它基于UDP协议而实现。嵌入式Linux的tftp开发环境包括两个方面:
一是嵌入式Linux宿主机的tftp-server支持
二是嵌入式linux目标机的tftp-client支持。
配置宿主机上的tftp服务,主要为以后下载相应的内核映像和文件系统做准备。在嵌入式Linux的开发过程中,开发者需要在Linux服务器上进行所有的软件开发,交叉编译后,通用tftp方式将可执行文件下载到嵌入式系统运行。
DHCP服务
目标板的Bootloader或者内核都需要分配IP地址。这可以通过动态主机配置协议(DHCP Dynamic Host Configuration Protocol)或者BOOTP协议实现。
BOOTP协议可以给计算机分配IP地址并且通过网络获取映像文件的路径;DHCP则是向后兼容BOOTP的协议拓展。
Linux操作系统的主机一般包含dhcpd的软件包,可以配置DHCP服务。配置服务的操作需要root用户的权限。
busybox
busybox是构造文件系统最常用的软件工具包,它被非常形象地称为嵌入式Linux系统中的“瑞士军刀”,因为它将许多常用的Linux命令和工具结合到了一个单独的可执行程序(busybox)中。
虽然与相应的GNU工具比较起来,busybox所提供的功能和参数略少,但在比较小的系统(例如启动盘)或者嵌入式系统中已经足够了。
busybox在设计上就充分考虑了硬件资源受限的特殊工作环境。它采用一种很巧妙的办法减少自己的体积:所有的命令都通过“插件”的方式集中到一个可执行文件中,在实际应用过程中通过不同的符号链接来确定到底要执行哪个操作。采用单一执行文件的方式最大限度地共享了程序代码,甚至连文件头、内存中的程序控制块等其他系统资源都共享了,对于资源比较紧张的系统来说,真是最合适不过了。在busybox的编译过程中,可以非常方便地加减它的“插件”,最后的符号链接也可以由编译系统自动生成。
NFS文件系统(1)
work File System的简称,最早是由Sun公司提出发展起来的,其目的就是让不同的机器、不同的操作系统之间通过网络可以彼此共享文件。NFS可以让不同的主机通过网络将远端的NFS服务器共享出来的文件安装到自己的系统中,从客户端看来,使用NFS的远端文件就像是使用本地文件一样。在嵌入式中使用NFS会使应用程序的开发变得十分方便,并且不用反复地进行烧写映像文件。
NFS的使用分为服务端和客户端,其中服务端是提供要共享的文件而客户端则通过挂载(“mount”)这一动作来实现对共享文件的访问操作。下面主要介绍NFS服务端的使用。在嵌入式开发中,通常NFS服务端在宿主机上运行,而客户端在目标板上运行。
NFS文件系统(2)
NFS服务端是通过读入它的配置文件“/etc/exports”来决定所共享的文件目录的。在这个配置文件中,每一行都代表一项要共享的文件目录以及所指定的客户端对它的操作权限。客户端可以根据相应的权限,对该目录下的所有目录文件进行访问。
[共享的目录] [客户端主机名称或IP] [参数1,参数2…]
在这里,主机名或IP是可供共享的客户端主机名或IP,若对所有的IP都可以访问,则可用“*”表示。这里的参数有很多种组合方式
U-Boot
Linux启动过程
自解压、跳到入口、初始化硬件、数据结构、驱动程序、挂接根文件系统。
从inittab获取运行级别,检测与初始化系统环境,启动与级别相应的服务项、启动终端等待用户登录;祖先进程,控制其他进程。
嵌入式系统由Bootloader完成
从预定地址执行(0xFFFF0000),硬件初始化,跳到启动盘第一扇区
将Linux内核映像装入内存,跳到内核映像入口。