的开发模式称为交叉开发。运行在主机上的编译器(如GCC)编译程序产生目标机上运行的可执行程序的编译过程称为交易编译。嵌入式系统采用这种交叉开发、交叉编译的开发模式主要是因为嵌入式系统是种专用的计算机系统,采用量体裁衣、量身定制的方法制造,它的这种特点使其与通用PC机的开发与使用特点有很大的不同。
一个嵌入式系统的开发环境一般包括嵌入式目标板、开发用的宿主PC机和硬件调试器,他们之间通过串口、JTAG或BDM等调试接口和网络等接口互相连接。其中,嵌入式软件系统运行于嵌入式目标板上,这些软件所对应的程序开发和编译在宿主机上运行,程序的调试则由宿主机通过硬件调试器控制目标机执行相应的操作实现。
在运行嵌入式Linux的系统时,硬件调试器只在Bootloader程序开发以及Linux内核移植时有可能需要使用。应用程序的开发通常是Linux操作系统在嵌入式目标机上运行起来之后进行。此时,更多的是在宿主机上使用GDB通过网络与目标板通信,进行程序的调试。也就是硬件调试器多在底层软件开发调试时使用,对于应用程序的开发调试通常使用其他手段。
在交叉编译环境建立好之后,就可以在宿主机上利用交叉编译环境构造一个嵌入式Linux系统。Linux操作系统是由Linux内核和应用程序两大部分组成。Linux内核的开发主要是根据实际的需要进行内核裁剪和配置,然后用交叉编译器编译生成内核的二进制文件映像。对于许多自行设计的嵌入式系统,内核的开发还包括根据实际的硬件系统进行内核和外设驱动程序的移植开发。应用程序通常都放在Linux的根文件系统中。根文件系统主要存放了嵌入式的配置文件、设备文件、应用程序、动态链接库以及其他一些相关的程序和文件。通常最初的根文件系统只是一个基本的根文件系统,只包含了一些必要的系统支撑程序。
3 嵌入式Linux操作系统的应用
由于Linux具有对各种设备的广泛支持性,因此,能方便地应用在机顶盒、IA设备、PDA、掌上电脑、WAP手机、寻呼机、车载盒以及工业控制等智能信息产品中。
3.1 嵌入式工业控制网络的实现方案
基于嵌入式Linux的工控系统以嵌入式微处理器为核心来运行嵌入式Linux操作系统。应用程序可通过网络进行更新,并可通过键盘进行人机对话,数据可通过LCD现场显示,重要数据可用文件形式保存在Flash等闪存存储器中;数据和报警信息可通过串口向上位机传输,也可以通过以太网向工业以太网或Internet发布,用户还可通过网络实现远程监控和远程维护。更为关键的是,可充分利用Internet上已有的软件和协,迅速搭建前台数据采集系统,以实现测控系统和后台管理系统的通讯。
参考文献:
《ColdFire嵌入式系统设计》———曹建安,陶慧斌。西安电子科技大学出版社
《嵌入式操作系统开发与应用程序设计》——迟文丽,王金龙。清华大学出版社
何加铭主编.嵌入式32位微处理器系统设计与应用.电子工业出版社.2006年
张义磊,丁:涛,安吉宇.三星S3C2410在嵌入式工业控制系统中的应用.长春理工大学学 报.2004
魏洪兴,胡亮,曲学楼.嵌入式系统设计与实例开发实验教材Ⅱ一基于ARM9处理器与 Lmux操作系统.清华大学出版社.2005年
许海燕,付炎著.嵌入式系统技术与应用.机械工业出版社.2002年 DavidA.Rusling.朱珂等译.Lmux编程白皮书.机械工业出版社.2000年