欢迎来到天天文库
浏览记录
ID:11946709
大小:4.48 MB
页数:114页
时间:2018-07-15
《嵌入式系统基础实验指导书》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、嵌入式系统实验电子指导书2010年4月114一、嵌入式Linux开发基础知识随着后PC时代的到来,嵌入式系统技术已经成为了一个万众瞩目的焦点。目前已广泛应用于信息家电、数据网络、工业控制、医疗卫生、航空航天等众多领域。巨大的市场潜力,无穷的商机,吸引了各路英豪纷踵沓来。硬件方面,各大电子厂商相继推出了自己的专用嵌入式芯片,漫天而至的是mp3,PDA,无线上网装置,让人们充分感受到了这股强劲之势;软件方面,在Vxworks、pSOS、Neculeus和WindowsCE等嵌入式操作系统引领下,也出
2、现了空前繁荣的局面,但这些专用操作系统都是商业化产品,其高昂的价格使许多面向低端产品的小公司望而却步,并且其源代码的封闭性也大大限制了开发者的积极性。近两年在我国登陆并蓬勃发展的Linux,也已广泛应用于各类计算应用,不仅包括IBM的微型Linux腕表、手持设备(PDA和蜂窝电话)、因特网装置、客户机、防火墙、工业机器人和电话基础设施设备,甚至还包括了基于集群的超级计算机。Linux在高端服务器的优越表现及其天生具有的突出特点,就注定它必将在低端嵌入式系统中再次给人们以惊喜,而基于嵌入式Linu
3、x操作系统的应用,必定给我们未来的工作和生活带来翻天覆地的变化。1.1嵌入式Linux简介Linux正在嵌入式开发领域稳步发展。Linux使用GPL,所有对特定开发板、PDA、掌上机、可携带设备等使用嵌入式Linux感兴趣的人都可以从因特网上免费下载其内核和应用程序,并开始移植和开发。许多Linux改良品种迎合了嵌入式市场,它们包括RTLinux(实时Linux)、uclinux(用于非MMU设备的Linux)、MontavistaLinux(用于ARM、MIPS、PPC的Linux分发版)、A
4、RM-Linux(ARM上的Linux)和其它Linux系统。嵌入式Linux的发展比较迅速。NEC、索尼已经在销售个人视频录像机等基于Linux的消费类电子产品,摩托罗拉则计划在其未来的大多数手机上使用Linux,IBM也制定了在手持机上运行Linux的计划。数年来,“Linux标准库”组织一直在从事对在服务器上运行的Linux进行标准化的工作,现在,嵌入式计算领域也开始了这一工作。嵌入式Linux标准吸引了“Linux标准库”以及Unix114组织中有益的元素。在嵌入式系统中使用Linux的
5、优点和缺点虽然大多数Linux系统运行在PC平台上,但Linux也是嵌入式系统的可靠主力。Linux的安装和管理比UNIX更加简单灵活,这对于那些UNIX专家们来说又是一个优点,因为Linux中有许多命令和编程接口同传统的UNIX一样。但是对于习惯于WINDOWS操作系统的人来说,需要记忆大量的命令行参数却是一个缺点。随着LINUX社团的不断努力,linux的人机界面开发环境正在不断完善。典型的Linux系统经过打包,在拥有硬盘和大容量内存的PC机上运行,嵌入式系统不需要这么高的配置。一个功能完
6、备的Linux内核要求大约1MB内存。而Linux微内核只占用其中很小一部分内存,包括虚拟内存和所有核心的操作系统功能在内,只需占用系统约100K内存。只要有500K的内存,一个有网络栈和基本实用程序的完全的Linux系统就可以在一台8位总线(SX)的Intel386微处理器上运行的很好了。由于内存要求常常是需要的应用所决定的,比如Web服务器或者SNMP代理,Linux系统甚至可以仅使用256KBROM和512KBRAM进行工作。因此它是一个瞄准嵌入式市场的轻量级操作系统。与传统的实时操作系统
7、相比(RTOS),采用象嵌入式Linux这样的开放源码的操作系统的另外一个好处是Linux开发团体看来会比RTOS的供应商更快地支持新的IP协议和其它协议。例如,用于Linux的设备驱动程序要比用于商业操作系统的设备驱动程序多,如网络接口卡(NIC)驱动程序以及并口和串口驱动程序。核心Linux操作系统本身的微内核体系结构相当简单。网络和文件系统以模块形式置于微内核的上层。驱动程序和其它部件可在运行时作为可加载模块编译到或者是添加到内核。这为构造定制的可嵌入系统提供了高度模块化的构件方法。而在典
8、型情况下该系统需结合定制的驱动程序和应用程序以提供附加功能。嵌入式系统也常常要求通用的功能,为了避免重复劳动,这些功能的实现运用了许多现成的程序和驱动程序,它们可以用于公共外设和应用。Linux可以在外设范围广泛的多数微处理器上运行,并早已经有了现成的应用库。Linux用于嵌入式的因特网设备也是很合适的,原因是它支持多处理器系统,该特性使Linux具有了伸缩性。因而设计人员可以选择在双处理器系统上运行实时应用,提高整体的处理能力。例如,您可以在一个处理器运行GUI,同时在另一个处理器上运行Lin
此文档下载收益归作者所有