嵌入式系统论文成绩评定表嵌入式系统论文一.嵌入式系统的发展趋势在信息和知识经济时代,使当今的计算机科学技术的发展会越来越深入到国民生活的方方面面,特别是高性能多核处理器、光纤与Myrinet等高速网络和高性能分布计算的标准工具更是推动了集群计算从高性能计算向高效能计算更是的转变。
而与此同时我们又面临着但如何管理调度庞大的资源集合,充分发挥每个部件的工作能力和降低系统耗能的压力,进一步如何使计算和通信无所不在并成为普通用户都能方便享用的服务,跨越移动计算、嵌入式系统、自然人机交互、软件结构等多个研究领域的普适计算技术正在发挥着作用,还存在实现上下文感知和应用无缝迁移等问题需要解决。
另一方面,利用通信、嵌入式计算和传感器等技术,人们研制出了各种具有感知、计算和通信等能力的微型传感器,通过这些无线传感器网络人们可以在任何时间、地点和任何环境条件下协作地实时监测、感知、采集网络分布区域内的各种环境或监测对象的信息,并对这些信息进行处理,获得详尽准确的信息,传送到需要这些信息的用户。
因此,这种网络系统被广泛地应用于国防军事、国家安全、环境监测、交通管理、医疗卫生、制造业、反恐抗灾等领域。
综上所述,嵌入式系统正是以其组网灵活﹑可靠性高﹑抗干扰能力强﹑低功耗和网络容量大等特点在计算机应用领域发挥着显著的作用。
嵌入式控制器体积小、可靠性高、功能强、灵活方便等许多优点,其应用已深入到多个领域。
如分布式光纤管道安全监测系统。
众所周知,管道输送是一种经济方便的运输方式,在石油和天然气运输中具有独特优势,石油行业对长距离输油气管道安全预警系统的需求主要有以下:(1)对管道周边环境的长距离全天候的实时监控;(2)传感器采集的数据有智能信息处理的能力;(3)对新的地质环境及新的破坏手段的自适应能力。
根据已有的监测系统,提出长距离输油气管线安全预警系统的实现模型,信号采集、光电转换以及PGC解调由分布式光纤光相位传感系统完成,该系统同时进行振动源定位。
解调后的土壤振动信号经USB口传入一块运行嵌入式Windows XP系统的855主板,在此系统上运行的程序实现土壤振动信号的分析与破坏性行为的模式分类。
分类后产生的报警信号经串口发往值守报警终端FU,FU为一块运行嵌入式Linux系统的ARM板卡。
与此同时,振动片段的原始信号以及破坏性行为的识别结果将通过网口传往FST(服务器),在FST 上。
每个FST接收来自8个基站的信号,即对应8个FU和8块855主板,这样,每个FST的监控距离达400Km,可实现区域级的管道安全监控与预警,通过FST 的级联可实现国家级覆盖的管道安全监控与预警。
二.BootLoaderBootLoader代码是芯片复位后进入操作系统之前执行的一段代码,主要用于完成由硬件启动到操作系统启动的过渡,从而为操作系统提供基本的运行环境,如初始化CPU、堆栈、存储器系统等。
BootLoader代码与CPU芯片的内核结构、具体型号、应用系统的配置及使用的操作系统等因素有关,其功能类似于PC机的BOIS程序。
通常,BootLoader是严重地依赖于硬件而实现的,特别是在嵌入式世界。
因此,在嵌入式世界里建立一个通用的BootLoader几乎是不可能的。
尽管如此,我们仍然可以对BootLoader归纳出一些通用的概念来,以指导用户特定的BootLoader设计与实现。
下面我们介绍几种常用的Bootloader:1. ARMBootArmboot是一个bootloader,是为基于ARM或者StrongARM CPU的嵌入式系统所设计的。
它支持多种类型的Flash;允许映像文件经由bootp、、tftp 从网络传输;支持从串口线下载S-record或者binary文件;允许内存的显示及修改;支持jffs2文件系统等。
2. PPCBootPPCBoot是德国DENX小组开发的用于多种嵌入式CPU的Bootloader引导程序,主要由德国的工程师Wolfgang Denk和Intemet上的一群自由开发人员对其进行维护和开发。
支持PowerPC、ARM、MIPS、m68K等多种处理器平台,易于裁剪和调试。
PPCBoot遵循GPL(通用公共许可)公约,完全开放源代码。
3. U-Bootu-boot是sourceforge网站上的一个开放源代码的项目。
它可对powerpc、MPC5xx、MPC8xx、MPC82xx、MPC7xx、MPC74xx、ARM(ARM7、ARM9、StrongARM、Xscale)、MIPS、X86等处理器提供支持,支持的嵌入式操作系统有linux、Vx-work、NetBSD、QNX、RTEMS、ARTOS、LynxOS等,主要用来开发嵌入式系统初始化代码bootloader。
u-boot最初是由PPCboot发展而来的,它对PowerPC系列处理器的支持最完善,对linux操作系统的支持最好。
源代码开放的u-boot软件项目经常更新,是学习硬件底层代码开发的很好样例。
目前已成为Armboot和PPCboot 的替代品。
4. RedBootRedBoot是一个专门为嵌入式系统定制的开发工具,最初由Redhat开发,是嵌入式操作系统eCos的一个最小版本,现在交由自由软件组织FSF管理,遵循GPL的发布协议。
集Bootloader、调试、Flash烧写于一体。
支持串口、网络下载,执行嵌入式应用程序。
既可以用在产品的开发阶段(调试功能),也可以用在最终的产品上(Flash更新、网络启动)。
5. BlobBlob是Boot Loader Object的缩写,是一款功能强大的Bootloader。
它遵循GPL,源泉代码完全开放。
Blob既可以用来简单的调试,也可以启动Linux kernel。
Blob最初是Jan-Derk Bakker和Erik Mouw为一块名为LART(Linux Advanced Radio Terminal)的板子写的,该板使用的处理器是StrongARM SA-1100。
现在Blob已经被移植到了很多CPU上,包括S3C44B0。
6. ViViVivi 是韩国mizi 公司开发的bootloader, 适用于ARM9处理器。
Vivi 有两种工作模式:启动加载模式和下载模式。
启动加载模式可以在一段时间后(这个时间可更改)自行启动linux内核,这时vivi的默认模式。
在下载模式下,vivi为用户提供一个命令行接口,通过接口可以使用vivi提供的一些命令。
三.嵌入式操作系统与通用操作系统的比较嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。
作为嵌入式系统的重要组成部分,嵌入式操作系统 EOS(Embedded Operating System)是随着嵌入式系统的发展而出现的,是嵌入式系统发展到一定阶段的产物。
嵌入式操作系统的出现,大大提高了嵌入式系统的开发效率,同时也促进了嵌入式的发展。
嵌入式操作系统并不是简单嵌入的操作系统,它除了具有通用操作系统的基本特点外,在小巧、实时性、可装卸、可固化代码、强稳定性、弱交互性、具备统一接口等方面有突出的特点。
四.当前常见的嵌入式操作系统作为在嵌入式操作系统市场通用的三种系统,Linux 、VxWorks 、Windows CE 在实时性、内核大小、调度算法、通信能力和开发环境等方面都有自己的特点,下面就对这几种系统的特点做一分析。
VxWorks操作系统是美国 WindRiver公司于 1983年设计开发的一种嵌入式实时操作系统,依据其良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域占据一席之地。
它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通讯、军事演习、弹道制导、飞机导航等。
应用实例包括美国的 F-16、FA-18战斗机、B-2 隐形轰炸机、火星探测器、爱国者导弹等。
VxWorks的特点有:1.VxWorks 的实时性做得非常好,其系统本身的开销很小,进程调度、进程间通信、中断处理等系统公用程序精练而有效,它们造成的延迟很短。
2.可裁剪性 VxWorks的可裁剪性,可以使开发者根据自己应用程序的需要来选择操作系统中部件,用户没用到的功能模块都可以去掉。
3.VxWorks的开发环境 Tornado是一个友好的开发环境,它可以运行在多种主机上,包括 Sun、HP、Dec、Mips等,主机的操作系统则支持 Unix、Windows NT等。
系统使用的流行图形界面方便使用者较快地理解和掌握。
VxWorks支持应用程序的动态链接和动态下载。
而 VxWorks具有的可视化图形界面的调试工具。
Windows CE(下称 Wince)是微软开发的一个源码开放的、紧凑的、高效和可扩展的操作系统,适用于各种嵌入式系统和产品。
它拥有多线程、多任务、确定性的实时、完全抢先式优先级的操作系统环境,专门面向只有有限资源的硬件环境。
同时,它的模块化设计方式使得系统开发人员和应用开发人员能够为多种多样的产品来定制它,例如手持电脑、专用的工业控制器以及消费用电子产品等。
Wince的特点有:1)Wince的实时性支持包括以下内容:支持嵌套的中断,这可以让高优先级的中断立即被响应;更好的线程响应,高优先级的中断服务线程调度延迟的上限更加紧了;更多的优先级别, 256个优先级别给予开发人员更大的灵活性来控制嵌入式系统的调度;以及更好的控制,对线程时间片级的控制可以支持对调度机制更大的控制。
2)WinCE的内核可以很小,最小内核可以不足 350kB,因为系统的大部分功能都在各自的功能模块中实现。
3)Wince对通信的支持是十分灵活的:从网络或台式机下载文件;基于Wince 的设备之间的信息交换;发送和接收电子邮件;向服务器发送数据;浏览Internet;阅读条形码等。
Wince能支持多种通信硬件,如串行电缆、红外线收发器,无线收发器、调制解调器和条形码阅读器等。
Wince支持两种基本的通信技术:串行通信和网络通信。
4.支持超过 1400个 Win32 API,有了这些 API,开发者就能利用大量其他的编程资源、工具、软件例子以及文档来进行开发工作,降低了培训成本,缩短了进入市场的时间。
5.Wince的模块化设计使得它能够在大量的平台上定制使用,开发者可以使用满足平台系统需求的最小软件模块和组件集合来设计嵌入式系统平台,从而使内存用量最小并最大可能地提供操作系统的性能。