三种常用的嵌入式操作系统分析与比较

三种常用的嵌入式操作系统分析与比较
三种常用的嵌入式操作系统分析与比较

三种常用的嵌入式操作系统分析与比较

摘要:提要三种常用的嵌入式操作系统——Palm OS、Windows CE、Linux;在此基础上、分析、比较这三种嵌入式操作系统,给出它们之间的异同点及各自的适用范围。

1 嵌入式系统与嵌入式操作系统

1.1 嵌入式系统

嵌入式系统是以嵌入式计算机为技术核心,面向用户、面向产品、面向应用,软硬件可裁减的,适用于对功能、可靠性、成本、体积、功耗等综合性能有严格要求的专用计算机系统。

嵌入式系统应具有的特点是:高可靠性;在恶劣的环境或突然断电的情况下,系统仍然能够正常工作;许多嵌入式应用要求实时性,这就要求嵌入式操作系统具有实时处理能力;嵌入式系统和具体应用有机地结合在一起,它的升级换代也是具体产品同步进行;嵌入式系统中的软件代码要求高质量、高可靠性,一般都固化在只读存储器中或闪存中,也就是说软件要求固态化存储,而不是存储在磁盘等载体中。

1.2 嵌入式操作系统

嵌入式操作系统EOS (Embedded Operating System)是一种用途广泛的系统软件,过去它主要应用于工业控制和国防系统领域。EOS负责嵌入系统的全部软、硬件资源的分配、调度作,控制、协调并发活动;它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。目前,已推出一些应用比较成功的EOS产品系列。随着Internet技术的发展、信息家电的普及应用及EOS的微型化和专业化,EOS开始从单一的弱功能向高专业化的强功能方向发展。嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固化以及应用的专用性等方面具有较为突出的特点。EOS是相对于一般操作系统而方的,它除具备了一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件处理等外,还有以下特点:

①可装卸性。开放性、可伸缩性的体系结构。

②强实时性。EOS实时性一般较强,可用于各种设备控制当中。

③统一的接口。提供各种设备驱动接口。

④操作方便、简单、提供友好的图形GUI,图形界面,追求易学易用。

⑤提供强大的网络功能,支持TCP/IP协议及其它协议,提供TCP/UDP/IP/PPP协议支持及统一的MAC 访问层接口,为各种移动计算设备预留接口。

⑥强稳定性,弱交互性。嵌入式系统一旦开始运行就不需要用户过多的干预,这就要负责系统管理的EOS 具有较强的稳定性。嵌入式操作系统的用户接口一般不提供操作命令,它通过系统的调用命令向用户程序提供服务。

⑦固化代码。在嵌入式系统中,嵌入式操作系统和应用软件被固化在嵌入式系统计算机的ROM中。辅助存储器在嵌入式系统中很少使用,因此,嵌入式操作系统的文件管理功能应该能够很容易地拆卸,而用各种内存文件系统。

⑧更好的硬件适应性,也就是良好的移植性。

国际上用于信息电器的嵌入式操作系统有40种左右。现在,市场上非常流行的EOS产品,包括3Com 公司下属子公司的Palm OS,全球占有份额达50%,Microsoft公司的Windows CE不过29%。在美国市场,Palm OS更以80%的占有率远超Windows CE。开放源代码的Linux很适于做信息家电的开发。比如:中科红旗软件技术有限公司开发的红旗嵌入式Linux和美商网虎公司开发的基于Xlinux 的嵌入式操作系统“夸克”。“夸克”是目前全世界最小的Linux,它有两具很突出的特点,就是体积小和使用GCS编码。

2 三种常用的嵌入式操作系统

2.1 Palm OS

Palm是3Com公司的产品,其操作系统为Palm OS。Palm OS是一种32位的嵌入式操作系统。Palm 提供了串行通信接口和红外线传输接口,利用它可以方便地与其它外部设备通信、传输数据;拥有开放的OS应用程序接口,开发商可根据需要自行开发所需的应用程序。Palm OS是一套具有术强开放性的系统,现在有大约数千种专用为Palm OS编写的应用程序,从程序内容上看,小到个人管理、游戏,大到行业解决方案,Palm OS无所不包。在丰富的软件支持下,基于Palm OS的掌上电脑功能得以不断扩展。

Palm OS是一套专门为掌上电脑开发的OS。在编写程序时,Palm OS充分考虑了掌上电脑内存相对较小的情况,因此它只占有非常小的内存。由于基于Palm OS编写的应用程序占用的空间也非常小(通常只有几十KB),所以,基于Palm OS的掌上电脑(虽然只有几MB的RAM)可以运行众多应用程序。由于Palm产品的最大特点是使用简便、机体轻巧,因此决定了Palm OS应具有以下特点。

①操作系统的节能功能。由上掌上电脑要求使用电源尽可能小,因此在Palm OS的应用程序中,如果没有事件运行,则系统设备进入半休眠(doze)的状态;如果应用程序停止活动一段时间,则系统自动进入休眠(sleep)状态。

②合理的内存管理。Palm的存储器全部是可读写的快速RAM,动态RAM(Dynamic RAM)类似于PC 机上的RAM,它为全局变量和其它不需永久保存的数据提供临时的存储空间;存储RAM(Storage RAM)类似于PC机上的硬盘,可以永久保存应用程序和数据。

③Palm OS的数据是以数据库(database)的格式来存储的。数据库是由一组记录(records)和一些数据库头信息组成的。为保证程序处理速度和存储器空间,在处理数据的时候,Palm OS不是把数据从存储堆(Storage Heap)拷贝到动态堆(Dynamic Heap)后再进行处理,而是在存储堆中直接处理。为避免错误地调用存储器地址,Palm OS规定,这一切都必须调用其内存管理器里的API来实现。

Palm OS与同步软件(HotSync)结合可以使掌上电脑与PC机上的信息实现同步,把台式同的功能扩展到了掌上电脑。Palm应用范围相当广泛,如:联络及工作表管理、电子邮件及互联网通信、销售人员及组别自动化等等。Palm外围硬件也十分丰富,有数码相机、GPS接收器、调制解调器、GSM无线电话、数码音频播放设备、便携键盘、语音记录器、条码扫描、无线寻呼接收器、探测仪。其中Palm与GPS结合的应用,不但可以作导航定位,还可以结合GPS作气候的监测、地名调查等。

2.2 Windows CE

Windows CE是微软开发的一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作。它是精简的Windows 95。Windows CE的图形用户界面相当出色。其中CE中的C代表袖珍(Compact)、消费(Consumer)、通信能力(Connectivity)和伴侣(Companion);E代表电子产品(Electronics)。与Windows 95/98、Windows NT不同的是,Windows CE是所有源代码全部由微软自行开发的嵌入式新型操作系统,其操作界面虽来源于Windows 95/98,但Windows CE是基于Win32 API

重新开发的、新型的信息设备平台。Windows CE具有模块化、结构化和基于Win32应用程序接口以及与处理器无关等特点。Windows CE不仅继承了传统的Windows图形界面,并且在Windows CE平台上可以使用Windows 95/98上的编程工具(如Visual Basic、Visual C++等)、使用同样的函数、使用同样的界面网格,使绝大多数的应用软件只需简单的修改和移植就可以在Windows CE平台上继续使用。

Windows CE的设计目标是:模块化及可伸缩性、实时性能好,通信能力强大,支持多种CPU。它的设计可以满足多种设备的需要,这些设备包括了工业控制器、通信集线器以及销售终端之类的企业设备,还有像照相机、电话和家用娱乐器材之类的消费产品。一个典型的基于Windows CE的嵌入系统通常为某个特定用途而设计,并在不联机的情况下工作。它要求所使用的操作系统体积较小,内建有对中断的响应功能。

Windows CE的特点有:

①具有灵活的电源管理功能,包括瞬眠/唤醒模式。

②使用了对象存储(object store)技术,包括文件系统、注册表及数据库。它还具有很多高性能、高效率的操作系统特性,包括按需换页、共享存储、交叉处理同步、支持大容量堆(heap)等。

③拥有良好的通信能力。广泛支持各种通信硬件,亦支持直接的局域连接以及拨号连接,并提供与PC、内部网以及Internet的连接,还提供与Windows 9x/NT的最佳集成和通信。

④支持嵌套中断。允许更高优先级别的中断首先得到响应,而不是等待低级别的ISR完成。这使得该操作系统具有嵌入式操作系统所要求的实时性。

⑤更好的线程响应能力。对高级别IST(中断服务线程)的响应时间上限的要求更加严格,在线程响应能力方面的改进,帮助开发人员掌握线程转换的具体时间,并通过增强的监控能力和对硬件的控制能力帮助他们创建新的嵌入式应用程序。

⑥256个优先级别。可以使开发人员在控制嵌入式系统的时序安排方面有更大的灵活性。

⑦Windows CE的API是Win32 API的一个子集,支持近1500个Win32 API。有了这些API,足可以编写任何复杂的应用程序。当然,在Windows CE系统中,所提供的API也可以随具体应用的需求而定。

在掌上型电脑中,Windows CE包含如下一些重要组件:Pocket Outlook及其组件、语音录音机、移动频道、远程拨号访问、世界时钟、计算器、多种输入法、GBK字符集、中文TTF字库、英汉双向词典、袖珍浏览器、电子邮件、Pocket Office、系统设置、Windows CE Services软件。

2.3 Linux

Linux是一个类似于Unix的操作系统。它起源于芬兰一个名为Linus Torvalds的业余爱好,但是现在已经是最为流行的一款开放源代码的操作系统。Linux从1991年问世到现在,短短10年的时间内已发展成为一个功能强大、设计完善的操作系统,伴随网络技术进步而发展起来的Linux OS已成为Microsoft公司的DOS和Windows 95/98的强劲对手。Linux系统不仅能够运行于PC平台,还在嵌入式系统方面大放光芒,在各种嵌入式Linux OS迅速发展的状况下,Linux OS逐渐形成了可与Windows CE等EOS进行抗衡的局面。目前正在开发的嵌入式系统中,49%的项目选择Linux作为嵌入式操作系统。Linux现已成为嵌入式操作的理想选择。

中科红旗软件技术有限公司开发的红旗嵌入式Linux正在成为许多嵌入式设备厂商的首选。在不到一年的时间内,红旗公司先后推出了PDA、机顶盒、瘦客户机、交换机用的嵌入式Linux系统,并且投入了实际应用。现以红旗嵌入式Linux为例来讲解嵌入式Linux OS的特点:

①精简的内核,性能高、稳定,多任务。

②适用于不同的CPU,支持多种体系结构,如X86、ARM、MIPS、ALPHA、SPARC等。

③能够提供完善的嵌入式GUI以及嵌入式X-Windows。

④提供嵌入式浏览器、邮件程序、MP3播放器、MPEG播放器、记事本等应用程序。

⑤提供完整的开发工具和SDK,同时提供PC上的开发版本。

⑥用户可定制,可提供图形化的定制和配置工具。

⑦常用嵌入式芯片的驱动集,支持大量的周边硬件设备,驱动丰富。

⑧针对嵌入式的存储方案,提供实时版本和完善的嵌入式解决方案。

⑨完善的中文支持,强大的技术支持,完整的文档。

⑩开放源码,丰富的软件资源,广泛的软件开发者的支持,价格低廉,结构灵活,适用面广。

3 三种嵌入式操作系统的比较

3.1 Linux OS与Windows Ce的比较

嵌入式Linux OS与Windows CE相比的优点:第一,Linux是开放源代码的,不在存黑箱技术,遍布全球的众多Linux爱好者都是Linux开发者的强大技术支持者;而Windows CE是非开放性OS,使第三方很难实现产品定制。第二,Linux的源代码随处可得,注释丰富,文档齐全,易于解决各种问题。第三,Linux的内核小、效率高;而Windows CE在这方面是笨拙的,占用过多的RAM,应用程序庞大。第四,Linux是开放源代码的OS,在价格上极具竞争力,适合中国国情。Windows CE的版权费用是厂家不得不考虑的因素。第五,Linux不仅支持x86芯片,还是一个跨平台的系统。到目前为止,它可以支持20~30种CPU,很多CPU(包括家电业的芯片)厂商都开始做Linux的平台移植工作,而且移植的速度远远超过Java的开发环境。如果今天采用Linux环境开发产品,那么将来更换CPU时就不会遇到更换平台的困扰。第六,Linux内核的结构在网络方面是非常完整的,它提供了对包括十兆位、百兆位及千兆位的以太网络,还有无线网络、Token ring(令牌环)和光纤甚至卫星的支持。第七,Linux在内核结构的设计中考虑适应系统的可裁减性的要求,Windows CE在内核结构的设计中并未考虑适应系统的高度可裁减性的要求。

嵌入式Linux OS与Windows CE相比的弱点:第一,是开发难度较高,需要很高的技术实力;第二,是核心调试工具不全,调试不太方便,尚没有很好的用户图形界面;第三,与某些商业OS 一样,嵌入式Linux占用较大的内存,当然,人们可以去掉部分无用的功能来减小使用的内存,但是如果不仔细,将引起新的问题;第四,有些Linux的应用程序需要虚拟内存,而嵌入式系统中并没有或不需要虚拟内存,所以并非所有的Linux应用程序都可以在嵌入式系统中运行。

3.2 Palm OS与Windows CE的比较

3Com公司的Palm OS是掌上电脑市场中较为优秀的嵌入式操作系统,是针对这一市场专门设计的系统。它有开放的操作系统应用程序接口(API),支持开发商根据需要自行开发所需的应用程序,具有十分丰富的应用程序。在掌上电脑市场上独占其霸主地位已久。

从技术层面上讲,Palm OS是一套专门为掌上电脑开发的操作系统,具有许多Windows CE无法比拟的优势;Windows CE过于臃肿,不适合应用在廉价的掌上电脑中。

Palm OS是一套具有极强开放性的系统。开发者向用户免费提供Palm OS的开发工具,允许用户利用该工具在Palm OS基础上方便地编写、修改相关软件。与之相比,Windows CE的开发工具就显得复杂多了,这使得一般用户很难掌握。这也Palm OS与Windows CE的另一个主要区别。

我们从常用EOS的大小、可开发定制、互操作性、通用性、实时性及应用领域几个方面,通过表1来归纳如下:

表1

适用的应用领域

应用领域较广,特别适

用于掌上电脑的开发应用领域较广。WindowsC是为新

一代非传统的PC设备而设计的,

这些设备包括掌上电脑、手持电

脑以及用于车载电脑等

由于Linu内核结构及功能等

原因,嵌入式Linu 应用领域

非常广泛,特别适于进行信

息家电的开发

结语

Palm OS、Windows CE、Linux这三种嵌入式操作系统各有不同的特点,不同的用途;但Linux比Palm OS和Windows CE更小、更稳定,而且Linux是开放的OS,在价格上极具竞争力。如今整个市场尚未成型,嵌入式操作系统也未形成统一的国际标准,而且Linux的一系列特征又为我们开发国产的嵌入式操作系统提供了方便,因此,我们有机会在这个未成熟的市场上占有一席之地。

系统分类: 汽车电子

用户分类: 单片机基础

标签: 无标签

来源: 转贴

发表评论阅读全文(282) | 回复(4)

5

本周最热门”中出现,认为够“牛”就投上一票吧!" AutoHide="false">

基于裸机编程的实时系统

发表于2008-1-13 3:27:40

摘要在系统控制过程中,实时性是系统性能的一个重要测试指标。应用实时操作系统是保证实时性的一种普遍方法,但是一些资源相对缺乏的单片机是不适合用操作系统的。本文介绍在中低档控制系统中,在不采用实时操作系统的情况下,如何对多个任务进行控制,以达到实时性要求的方法。

关键词嵌入式系统单片机实时操作系统

引言

在嵌入式控制系统的设计中,如何对被控制的多个任务进行有效协调,使其动作顺序合理、响应速度快捷,往往是设计者所考虑的一个很重要的方面,也是衡量检验一个系统的综合性能的重要指标。为了在多个任务的协调控制中满足实时性的要求,设计者往往会考虑在系统中嵌入目前流行的某种实时操作

系统。现在也有一些通过验证的比较优秀的实时操作系统可供选择,有的源代码甚至是免费提供的,网上也有大量的移植成功的源代码范例。基于实时操作系统编程可以大大缩短开发的周期,实时性也有足够的保证。基于实时操作系统编程的代价之一是,增加了程序代码的长度;代价之二是,需要较多的RAM空间,在不扩展片外存储器的情况下,中低档单片机是难以胜任的。另一方面,大部分中低档应用系统通过合理的设计,采用基于裸机编程(没有实时操作系统)的方法,也可以保证一定的实时性,从而达到实时控制的要求,这是本文所要介绍的内容。

1 系统设计原理

1.1 通过定时中断间隔的设计来保证实时性

为了完成控制系统中多任务的实时响应要求,可以利用定时中断作为系统的时钟。每个中断的间隔作为时钟的最小基本单位,这个值要小于或等于被控制的各个任务中对时间要求最苛刻的任务的最大允许响应时间。定时间隔越短,响应越快捷,但系统CPU的负担也越重(因为CPU休眠的时间也越来越少)。这是一对相互矛盾的事物,需要设计者谨慎的协调才能达到最完美的效果。例如在配料控制系统中,如果加料速度为20 kg/s,要求配料误差为1 kg,则系统的实时性必须保证在50 ms之内。为了留有余地,可将定时中断间隔设置为20 ms。

1.2 通过对所有任务的及时“照看”来管理多任务

可以根据各个任务对实时性要求的不同程度,将任务分为不同的类型。对实时性要求越是苛刻的任务,就需要得到系统越频繁的“照看”。对于实时性要求不高的任务,系统对它的“照看”时间间隔可以长一些。例如,有两个任务A和B,任务A每秒必须“照看”10次,任务B每秒必须“照看”2次,则控制流程如图1所示。从图1中可以看出,任务A每隔0.1 s“照看”1次,任务B每隔0.5 s“照看”1次。对实时性要求基本相同的若干任务,可依次“照看”,其程序流程如图2所示。

图1 处理实时性要求不同的任务图2 处理实时性要求基本相同的任务

将所有任务都放在定时监控循环中来“照看”,就可以使各个任务得到实时“照看”,问题的关键是系统如何“照看”各个任务。如果某任务运行一次所需要的时间远小于定时间隔,则该任务可安排在系统“照看”它时完整地执行一次。在这种情况下,“照看”某任务和“运行”某任务是一回事。如果某任务的运行时间远大于定时间隔,例如在配料系统中,一次配料任务需要数十秒钟,而定时间隔只有20 ms,因此,在“照看”该任务时不可能等待它完成后再“照看”其他任务,否则系统就会崩溃。为此,系统对任何任务的“照看”时间

必须远小于定时间隔,只有这样才能保证系统在一个定时间隔中完成对所有任务的“照看”。由此可以看出,在本方法中,任何任务都不能较长时间单独占有CPU,而是在不断地得到系统的“照看”,通过“照看”来维持各个任务的正常运行。

1.3 将任务分解为若干状态

对于执行时间大于定时间隔的任务,其执行过程都是由若干不同状态构成的。在不同状态下,需要系统进行不同方式的“照看”,为此,为这个任务设置一个状态变量,以指示该任务当前的状态。当系统“照看”该任务时,首先读取该任务的状态变量,然后根据状态变量的值来执行对应的“照看”操作。

为了使系统能够及时从某个任务脱身,以便及时“照看”另外的任务,则任何“照看”操作都必须非常简短(远小于定时间隔)。如果某个任务的某种状态需要系统较长时间的“照看”(如进行一段比较复杂的数据处理),则必须将这个状态再分解为若干状态,直到每个状态需要的处理时间均比定时中断间隔短得多。也可以设置若干标志,将这些耗时的处理过程放在后台处理。

1.4 与实时操作系统的比较

①本方法没有优先级的概念,所有任务都一视同仁得到“照看”,不存在“任务调度”问题,从根本上简化了系统软件设计,也大大降低了对硬件资源的要求。

②本方法与“时间片轮回”方法类似,但有两点不同:第一是每个任务得到的“时间片”是不固定的,与该任务的当前状态有关,当该任务处于停止状态时,其“照看”操作所需要的时间就比较短,占用的“时间片”也就比较短;第二是以“照看”操作来划分“时间片”,每个任务的“照看”都是一个完整的过程,不存在被打断的情况,故不需要为每个任务配置“堆栈”。各个任务之间的通信和同步可以通过变量和标志来完成,实现起来也比较简单。

③由于本方法对处于“停止状态”的任务也要不停地“照看”,显然时间利用率不高,当系统任务数量较多或实时性要求很高时就难于胜任,故本方法只能在任务数量较少的中低档系统中采用;任务数量较多或实时性要求很高的系统,仍然应该采用基于实时操作系统的编程方法。

2 设计实例

现结合一个配料系统的设计实例来说明该类系统的设计方法。在配料系统中,配方中的每种成分都由一个独立的料斗来配置,并由一个独立的电子秤来计量。进行配料操作时,为了提高工作效率,各个料斗同时进行加料,达到配方中各自规定的重量后则停止加料。当所有料斗都完成加料过程后,便同时(或按预定顺序)出料,进行混合处理。各个料斗均出料结束后,间隔若干秒钟自动开始下一轮配料过程。

在该系统中有如下任务需要运行:

◆键盘管理任务。采集操作者的按键动作并解释执行,用来设置配方数据和配料次数,控制系统运行。

◆显示任务。显示系统当前状态和相关数据。

◆数据采集任务。读取各个电子秤当前的数据。

◆配料控制任务。根据配方要求和电子秤当前的数据来决定料斗的工作状态。

◆控制信号输出任务。根据料斗状态,输出相应的各路控制信号。

◆时钟任务。为系统提供时间基准,使各个任务可以按规定节奏来运行。

◆睡眠任务。让系统在空闲时间里进入睡眠状态,以提高系统的抗干扰能力。

系统的软件结构如图3所示。左边是主程序,只安排了睡眠任务;右边是定时中断子程序,安排了其他所有任务。

图3 系统软件结构示意图

除配料控制任务外,其他任务运行一次的时间均远小于定时间隔,在每次定时中断中均可以完整地运行一次,故采用普通的编程方法将其运行过程写出来即可。配料控制任务无法在一次定时中断里完成,只能用不断“照看”的方法来完成。如果配料任务的运行时间(运行周期)为40 s,定时中断间隔时间为20 ms,则每次配料过程都是通过2000次“照看”来实现的。设配方有四种成分,则系统有四个料斗并行工作,“配料控制”任务的“照看”操作实际上由“照看料斗1”、“照看料斗2”、“照看料斗3”、“照看料斗4”组成(如图2所示),即每次定时中断都要依次“照看”四个料斗。四个料斗的“照看”操作方式基本相同。由于配方数据的差异,四个料斗的状态不一定每时每刻都同步。如果不考虑加料时的“落差”现象,就一个料斗而言,“照看”操作内容设计如表1所列。

配料过程由键盘操作来启动(使“允许配料”标志=1),以后各次配料操作由前一次配料的状态5来启动,直到完成预定的配料次数。

从表1中可以看出,所有的“照看”操作都是由“判断-分支”结构组成,操作时间也很短,满足设计要求。

3 小结

表1

在实时多任务系统中,为了保证系统的实时性,采用实时操作系统是首选设计方案;但在中低档系统中,为了简化设计和降低成本,利用本文介绍的方法,基于裸机编程同样可以满足要求。在中低档系统占有很大比例的产品市场中,本文介绍的编程方法对降低成本和提高产品竞争力显然是有帮助的。

系统分类: 汽车电子

用户分类: 单片机基础

标签: 无标签

来源: 无分类

发表评论阅读全文(146) | 回复(0)

4

本周最热门”中出现,认为够“牛”就投上一票吧!" AutoHide="false">

利用串口与并口实现51内核单片机的在线编程

嵌入式操作系统简介以及发展史

嵌入式操作系统简介以及发展史 导语:嵌入式操作系统离我们生活并不远,甚至我们生活中处处都可见,比如各种路由器,机顶盒,洗衣机,空调,手机等。嵌入式操作系统的定义: 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用操作系统。嵌入式系统的发展:嵌入式操作系统并不是一个新生的事物,从20世纪80年代起,国际上就有了一些IT组织,公司开始进行商用嵌入式系统和专用操作系统的研发,这期间涌现了一些著名的嵌入式操作系统:windows CEVxWorkspSOSQNXPalm OSOS-9LynxOS目前,有很多商用嵌入式操作系统都在努力的为自己争取嵌入式市场的份额。但是,这些专用操作系统均属于商业化产品,价格昂贵,而且,他们的源码不公开,使得各自的嵌入式系统上的应用软件不能互相兼容。这导致了商业嵌入式系统对支持各种设备存在了很大的问题,使软件移植变得相当困难,但是,在这个时候,我们伟大的linux操作系统横空出世, 由于linux自身诸多的优点以及优势,吸引了许多开发商的 目光,使得linux成为了嵌入式操作系统的新宠。嵌入式操 作系统发展的四个阶段:第一阶段:无操作系统的嵌入式算法阶段,以单芯片为核心的可编程控制器的系统,具有监测,

伺服,指示设备相配合的功能。应用在一些专业性极强的工业控制系统,使用古老的汇编语言进行系统的直接控制。第二阶段:以嵌入式CPU为基础,简单操作系统为核心的嵌入式操作系统,CPU种类繁多,通用性差,系统开销小,效率高,一般配备系统仿真器,操作系统有一定的兼容性,软件较为专业,用户界面不够友好,系统主要用来监测系统和应用程序运行。 第三阶段:通用的嵌入式实时操作系统阶段,以嵌入式操作系统为核心的嵌入式系统,能运行于各种微处理器上,兼容性好,内核小,效率高,具有高度的模块化和扩展化,有文件管理和目录管理,设备支持,多任务,网络支持,图形窗口以及用户界面等功能,具有大量的应用程序接口(API),软件非常丰富,代表就是linux。 第四阶段:以Internet为标志的嵌入式操作系统,这是一个正在迅速发展的阶段,现在非常多的嵌入式操作系统已经有了接入Internet的能力。通过一个综合网关。 常见的嵌入式操作系统:uC/OS-Ⅱ:uC/OS-Ⅱ是一个公开源码,结构小巧,实时内核的实时操作系统。是一种基于优先级的可抢占式的硬实时内核,其内核提供任务管理与调度,时间管理,任务同步和通信,内存管理,中断服务等功能。其内核最小可以编译至2KB左右。-RTLinux:RTLinux是一个源代码开放的具有硬实时特性的多任务操作系统,他是通

嵌入式系统教案(李震)

嵌入式系统教案(李震) -CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN

嵌入式系统教案(李震)

嵌入式系统教案 教材:《ARM9嵌入式系统设计—基于S3C2410与Linux(第二版)》,徐英慧,马忠梅,王磊,王琳编著,北京航空航天大学出版社 课时分配:理论课32学时,实验课8学时,共40学时 第1章嵌入式系统基础 一、教学目的: 介绍嵌入式系统的基本概念,包括嵌入式系统的概念、特点及应用,由本章了解嵌入式系统的基础知识,掌握嵌入式的发展方向。 学时分配:2学时 二、教学重点: 实时操作系统的多任务内核,实时操作系统的任务管理机制 三、教学难点: 理解和掌握嵌入式系统中任务间采用的共享数据结构和消息机制等两种通信方式,嵌入式系统的优先级继承,抢占式调度和非抢占式调度间的区别。 四、教学方法: 课题讲授及嵌入式系统在精细农业中的应用实例演示 五、教学过程设计:(2学时) 一、嵌入式系统概念 (一)嵌入式系统的定义 (二)嵌入式系统的组成 (三)嵌入式系统的特点 (四)嵌入式系统的应用 (五)实时系统 二、嵌入式处理器 (一)嵌入式处理器分类 (二)微控制器的定义及特点

(三)嵌入式微处理器的定义及特点,介绍主流的微处理器,包括ARM、MIPS、MC68K、PowerPC、X86微处理器等。 (四)DSP处理器的定义及特点 (五)片上系统的定义及特点 (六)典型的嵌入式处理器 三、嵌入式操作系统 (一)操作系统的概念和分类 (二)实时操作系统 (三)常见的嵌入式操作系统 四、实时操作系统的内核 (一)任务管理 (二)任务间的通信和同步 (三)存储器管理 (四)定时器和中断管理 五、嵌入式技术发展现状及趋势 六、思考题 1、什么是嵌入式系统它由哪几部分组成(作业) 2、嵌入式系统有何特点?(作业) 3、嵌入式处理器分为哪几类? 4、ARM英文原意是什么它是一个怎样的公司其处理器有何特点 5、什么事实时系统实时系统有何特点如何划分 6、实时操作系统常用的任务调度算法有哪几种? 第2章嵌入式系统开发过程 一、教学目的: 介绍嵌入式软件的开发过程和调试手段,使学生了解嵌入式软件与普通计算机软件在开发和调试上的区别。 学时分配:2学时

三种常用的嵌入式操作系统分析与比较

三种常用的嵌入式操作系统分析与比较 摘要:提要三种常用的嵌入式操作系统——Palm OS、Windows CE、Linux;在此基础上、分析、比较这三种嵌入式操作系统,给出它们之间的异同点及各自的适用范围。 1 嵌入式系统与嵌入式操作系统 1.1 嵌入式系统 嵌入式系统是以嵌入式计算机为技术核心,面向用户、面向产品、面向应用,软硬件可裁减的,适用于对功能、可靠性、成本、体积、功耗等综合性能有严格要求的专用计算机系统。 嵌入式系统应具有的特点是:高可靠性;在恶劣的环境或突然断电的情况下,系统仍然能够正常工作;许多嵌入式应用要求实时性,这就要求嵌入式操作系统具有实时处理能力;嵌入式系统和具体应用有机地结合在一起,它的升级换代也是具体产品同步进行;嵌入式系统中的软件代码要求高质量、高可靠性,一般都固化在只读存储器中或闪存中,也就是说软件要求固态化存储,而不是存储在磁盘等载体中。 1.2 嵌入式操作系统 嵌入式操作系统EOS (Embedded Operating System)是一种用途广泛的系统软件,过去它主要应用于工业控制和国防系统领域。EOS负责嵌入系统的全部软、硬件资源的分配、调度作,控制、协调并发活动;它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。目前,已推出一些应用比较成功的EOS产品系列。随着Internet技术的发展、信息家电的普及应用及EOS的微型化和专业化,EOS开始从单一的弱功能向高专业化的强功能方向发展。嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固化以及应用的专用性等方面具有较为突出的特点。EOS是相对于一般操作系统而方的,它除具备了一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件处理等外,还有以下特点: ①可装卸性。开放性、可伸缩性的体系结构。 ②强实时性。EOS实时性一般较强,可用于各种设备控制当中。 ③统一的接口。提供各种设备驱动接口。

嵌入式系统期末考试题库及答案

嵌入式系统期末考试题库及答案 《嵌入式系统》试题库 《嵌入式系统》试题库 一、填空题 1、嵌入式系统的基本定义为:以应用中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 2、从模块结构来看,嵌入式系统由三大部分组成,分别是:硬件、软件和开发平台。 3、从层次角度来看,嵌入式系统由四大部分组成,分别是:应用软件层、操作系统层、板级支持包(或硬件抽象层)和硬件层。 4、嵌入式产品的主要度量指标包括:上市时间、设计成本和产品质量。 5、嵌入式系统的设计过程包括:需求分析、规格说明、体系结构设计、构件设计、系统集成和系统测试。 6、需求分析包括:功能性需求分析和非功能性需求分析。 7、确定输入信号是数字信号还是模拟信号属于功能性需求。 8、确定系统的物理尺寸和重量属于非功能性需求。 9、在嵌入式系统的设计过程中,其中规格说明解决“做什么”。 10、在嵌入式系统的设计过程中,其中体系结构设计解决“如何做”。 11、在嵌入式系统的设计过程中,软硬件划分应该在体系结构设计阶段完成。12、在嵌入式系统的设计过程中,处理器的选择应该在体系结构设计阶段完成。13、在嵌入式系统的设计过程中,嵌入式操作系统的选择应该在体系结构设计阶段完成。14、在嵌入式系统的设计过程中,完成原理图设计应在构件设计阶段完成。15、在嵌入式系统的设计过程中,完成版图设计应在构件设计阶段完成。16、在嵌入式系统的设计过程中,完成软件设计应在构件设计阶段完成。 17、反映嵌入式系统设计人员的水平能力主要在于总体设计(需

求分析、规格说明和体系结构设计)和系统调试。 18、设计流程指的是设计过程中所经历的过程步骤。 19、设计重用技术主要分为基于IP 核的模块级重用和基于平台的系统级重用。20、软硬件协同设计由系统描述、软硬件划分、软硬件协同综合以及软硬件协同模拟与验证几个阶段组成。 21、嵌入式处理器的分类包括三种,分别是:嵌入式微处理器、微控制器(或单片机)和 第1 页共44 页 1 《嵌入式系统》试题库 数字信号处理器(DSP)。 22、列举常见的ARM 系列处理器:ARM7 系列、ARM9 系列、ARM11 系列、Cortex-M 系列、Cortex-R 系列、Cortex-A 系列等。 23、ARM 系列微处理器支持的数据类型有:字节、半字和字等三种类型。24、ARM 系列微处理器支持的字数据存储格式有:大端格式和小端格式。25、ARM 系列处理器通过执行BX 或者BLX 指令来实现工作状态的切换。26、列举常见的存储器类型:SRAM、DRAM、Flash、EEPROM 等。27、对于RAM 存储器主要有两种,分别是:SRAM 和DRAM。 28、在时钟信号边沿到来之前的一段时间内,数据信号必须保持稳定,这段时间称为器件的建立时间;在时钟信号边沿到来之后的一段时间内,数据信号必须保持稳定,这段时间称为器件的保持时间。 29、总线是在多于两个模块(设备、子系统)之间传送信息的公共通路。30、总线的功能是信息共享和交换。 31、总线由传输信息的物理介质和管理信息传输的协议组成。 32、挂接在总线上的设备依据启动总线事务的能力可以分为主设备和从设备。33、总线协议依据同步方式可分为同步时序协议和异步时序协议。34、总线仲裁方式可分为集中式仲裁和分布式仲裁。

常见的嵌入式操作系统

常见的嵌入式操作系统 分类:嵌入式操作系统2012-12-11 10:06 459人阅读评论(1) 收藏举报嵌入式操作系统 嵌入式操作系统与通用的操作相比较主要特点在于: 1.小内核,稳定可靠。 2.需要可装卸、可裁剪,以便能灵活应对各种不同的硬件平台。 3.面向应用,强实时性,可用于各种设备控制当中。 国际上常见的嵌入式操作系统大约有40种左,右如:Linux、uClinux、WinCE、PalmOS、Symbian、eCos、uCOS-II、VxWorks、pSOS、Nucleus、ThreadX 、Rtems 、QNX、INTEGRITY、OSE、C Executive 。他们基本可以分为两类,一类是面向控制、通信等领域的实时操作系统,如windriver公司的vxworks、isi的psos、qnx系统软件公司的qnx、ati的nucleus等;另一类是面向消费电子产品的非实时操作系统,这类产品包括个人数字助理(pda)、移动电话、机顶盒、电子书、webphone等,系统有Microsoft的WinCE,3Com 的Palm,以及Symbian和Google的Android等。 一、VxWorks VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),是T ornado嵌入式开发环境的关键组成部分。良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌人式实时操作系统领域逐渐占据一席之地。VxWorks具有可裁剪微内核结构;高效的任务管理;灵活的任务间通讯;微秒级的中断处理;支持POSIX 1003.1b实时扩展标准;支持多种物理介质及标准的、完整的TCP/IP网络协议等。 然而其价格昂贵。由于操作系统本身以及开发环境都是专有的,价格一般都比较高,通常需花费10万元人民币以上才能建起一个可用的开发环境,对每一个应用一般还要另外收取版税。一般不通供源代码,只提供二进制代码。由于它们都是专用操作系统,需要专门的技术人员掌握开发技术和维护,所以软件的开发和维护成本都非常高。支持的硬件数量有限。 二、Windows CE Windows CE与Windows系列有较好的兼容性,无疑是Windows CE推广的一大优势。其中WinCE3.0是一种针对小容量、移动式、智能化、32位、了解设备的模块化实时嵌人式操

ARM的十一种嵌入式操作系统

ARM的十一种嵌入式操作系统 ARM的十一种嵌入式操作系统 嵌入式LINUX 嵌入式Linux是将日益流行的Linux操作系统进行裁剪修改,使之能在嵌入式计算机系统上运行的一种操作系统。Linux做嵌入式 的优势,首先,Linux是开放源代码;其次,Linux的内核小、效率高,可以定制,其系统内核最小只有约134KB;第三,Linux是免费 的OS,Linux还有着嵌入式操作系统所需要的很多特色,突出的就是Linux适应于多种CPU和多种硬件平台而且性能稳定,裁剪性很好,开发和使用都很容易。同时,Linux内核的结构在网络方面是非常 完整的,Linux对网络中最常用的TCP/IP协议有最完备的支持。提 供了包括十兆、百兆、千兆的以太网络,以及无线网络, TokenRing(令牌环网)、光纤甚至卫星的支持。 移植步骤:1.Bootloader的移植;2.嵌入式Linux操作系统内核 的移植;3.嵌入式Linux操作系统根文件系统的创建;4.电路板上外 设Linux驱动程序的编写。 WinCE WinCE是微软公司嵌入式、移动计算平台的基础,它是一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设 备操作系统,它是精简的Windows95,WinCE的图形用户界面相当出色。WinCE是从整体上为有限资源的平台设计的多线程、完整优先权、多任务的操作系统。它的模块化设计允许它对于从掌上电脑到 专用的工业控制器的用户电子设备进行定制。操作系统的基本内核 需要至少200K的ROM。 一般来说,一个WinCE系统包括四层结构:应用程序、WinCE内 核映像、板级支持包(BSP)、硬件平台。而基本软件平台则主要由

嵌入式操作系统的发展现状

嵌入式操作系统的发展现状 【摘要】嵌入式操作系统是一种用途广泛的系统软件,负责嵌入系统的全部软、硬件资源的分配和调度工作,它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。随着Internet技术的发展、信息家电的普及应用及嵌入式操作系统的微型化和专业化,嵌入式操作系统开始从单一的弱功能向高专业化的强功能方向发展。 【关键词】嵌入式操作系统;嵌入式系统 1.引言 嵌入式操作系统EOS(Embedded Oper-ating System)是一种用途广泛的系统软件,它与嵌入式系统密不可分。嵌入式系统主要由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,它是集软硬件于一体的可独立工作的“器件”。 嵌入式技术的发展,大致经历了四个阶段:第一阶段是以单芯片为核心的可编程控制器形式的系统,同时具有与监测、伺服、指示设备相配合的功能。第二阶段是以嵌入式CPU为基础、以简单操作系统为核心的嵌入式系统。第三阶段是以嵌入式操作系统为标志的嵌入式系统。第四阶段是以基于Internet为标志的嵌入式系统,这是一个正在迅速发展的阶段。嵌入式系统的发展对嵌入式操作系统提出了更高的要求。因此,对嵌入式操作系统的结构、设计、用户界面等诸多方面进行深入研究,将有助于嵌入式系统的应用和发展。 2.嵌入式操作系统的发展状况 国外嵌入式操作系统已经从简单走向成熟,主要有Vxwork、QNX、Palm OS、Windows CE等。国内的嵌入式操作系统研究开发有2种类型,一类是基于国外操作系统二次开发完成的,如海信的基于Windows CE的机顶盒系统;另一类是中国自主开发的嵌入式操作系统,如凯思集团公司自主研制开发的嵌入式操作系统Hopen OS(“女娲计划”)等。 Windows CE内核较小,能作为一种嵌入式操作系统应用到工业控制等领域。其优点在于便携性、提供对微处理器的选择以及非强行的电源管理功能。内置的标准通信能力使Windows CE能够访问Internet并收发E-mail或浏览Web。除此之外,Windows CE特有的与Windows类似的用户界面使最终用户易于使用。Windows CE的缺点是速度慢、效率低、价格偏高、开发应用程序相对较难。 3Com公司的Palm OS在掌上电脑和PDA市场上独占其霸主地位,它有开放的操作系统应用程序接口(API),开发商可根据需要自行开发所需的应用程序。 QNX是由加拿大QSSL公司开发的分布式实时操作系统,它由微内核和一

嵌入式系统期末考试试卷 习题

1.下面哪一种工作模式不属于ARM特权模式(A)。 A.用户模式B.系统模式C.软中断模式D.FIQ模式 2.ARM7TDMI的工作状态包括( D )。 A.测试状态和运行状态B.挂起状态和就绪状态 C.就绪状态和运行状态D.ARM状态和Thumb状态 3.下面哪个Linux操作系统是嵌入式操作系统( B )。 A.Red-hat Linux B.uclinux C.Ubuntu Linux D.SUSE Linux 4.使用Host-Target联合开发嵌入式应用,( B )不是必须的。 A.宿主机B.银河麒麟操作系统 C.目标机D.交叉编译器 5.下面哪个不属于Linux下的一个进程在内存里的三部分的数据之一(A)。 A.寄存器段B.代码段 C.堆栈段D.数据段 选择题(共5小题,每题2分,共10分) 1.下面哪个系统属于嵌入式系统( D )。 A.“天河一号”计算机系统B.IBMX200笔记本电脑 C.联想S10上网本D.Iphone手机 2.在Makefile中的命令必须要以(A)键开始。 A.Tab键B.#号键 C.空格键D.&键 3.Linux支持多种文件系统,下面哪种不属于Linux的文件系统格式( B )。 A.Ext B.FA T32 C.NFS D.Ext3 4.下面哪种不属于VI三种工作模式之一( D )。 A.命令行模式B.插入模式 C.底行模式D.工作模式 5.下面哪一项不属于Linux内核的配置系统的三个组成部分之一( C )。 A.Makefile B.配置文件(config.in) C.make menuconfig D.配置工具 1.人们生活中常用的嵌入式设备有哪些?列举4个以上(1) 手机,(2) 机顶盒,(3) MP3,(4) GPS。(交换机、打印机、投影仪、无线路由器、车载媒体、PDA、GPS、智能家电等等。) 2.ARM9处理器使用了五级流水线,五级流水具体指哪五级:(5) 取指,(6) 译码,(7) 执行,(8) 缓冲/数据,(9) 回写。 3.在Makefile中的命令必须要以(10) Tab 键开始。 4.Linux支持多种文件系统,主要包括哪些(写出其中4中就行)(11) Ext,(12) VFA T,(13) JFS,(14) NFS。(JFS、ReiserFS、Ext、Ext2、Ext3、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等) 5.VI的工作模式有哪三种:(15) 命令行模式,(16) 插入模式,(17) 底行模式。

五大适合STM32的嵌入式操作系统

五大适合STM32的嵌入式操作系统 基于STM平台且满足实时控制要求操作系统,有以下5种可供移植选择。分别为μClinux、μC/OS-II、eCos、FreeRTOS和都江堰操作系统(djyos)。下面分别介绍这五种嵌入式操作系统的特点及不足。1、μClinuxμClinux是一种优秀的嵌入式Linux版本,其全称为micro-control Linux,从字面意思看是指微控制Linux。同标准的Linux相比, μClinux的内核非常小,但是它仍然继承了Linux操作系统的主要特性,包括良好的稳定性和移植性、强大的网络功能、出色的文件系统支持、标准丰富的API,以及TCP/IP网络协议等。因为没有MMU内存管理单元,所以其多任务的实现需要一定技巧。 μClinux在结构上继承了标准Linux的多任务实现方式,分为实时进程和普通进程,分别采用先来先服务和时间片轮转调度,仅针对中低档嵌入式CPU特点进行改良,且不支持内核抢占,实时性一般。 在内存管理上由于μClinux是针对没有MMU的处理器设计的,不能使用处理器的虚拟内存管理技术,只能采用实存储器管理策略。系统使用分页内存分配方式,在启动时对实际存储器进行分页。系统对内存的访问是直接的,操作系统对内存空间没有保护,多个进程可共享一个运行空间,所以,

即使是一个无特权进程调用一个无效指针也会触发一个地 址错误,并有可能引起程序崩溃甚至系统崩溃。 μClinux操作系统的中断管理是将中断处理分为两部分:顶半处理和底半处理。在顶半处理中,必须关中断运行,且仅进行必要的、非常少、速度快的处理,其他处理交给底半处理;底半处理执行那些复杂、耗时的处理,而且接受中断。因为系统中存在有许多中断的底半处理,所以会引起系统中断处理的延时。 μClinux对文件系统支持良好,由于μClinux继承了Linux完善的文件系统性能,它支持ROMFS、NFS、ext2、MS-DOS、JFFS等文件系统。但一般采用ROMFS文件系统,这种文件系统相对于一般的文件系统(如ext2)占用更少的空间。但是ROMFS文件系统不支持动态擦写保存,对于系统需要动态保存的数据须采用虚拟RAM盘/JFFS的方法进行处理。在对硬件的支持上,由于μClinux继承了Linux的大部分性能,所以至少需要512KB的RAM空间,lMB的ROM/Flash 空间。 在μClinux的移植方面,。μClinux是Linux针对嵌入式系统的一种改良,其结构比较复杂。移植μClinux,目标处理器除了需要修改与处理器相关的代码外,还需要足够容量的外部ROM和RAM。 综上可知,μClinux最大特点在于针对无MMU处理器设计,

嵌入式操作系统精彩试题集61374

第一章嵌入式系统概论 一.填空 1. 嵌入式系统是以嵌入式应用为目的、以计算机技术为基础的计算机系统。 2. 计算机系统按应用可以分为通用计算机系统和嵌入式计算机系统。 3. 嵌入式系统按软件结构可分为嵌入式单线程系统和嵌入式事件驱动系统。 4. 嵌入式系统按是否具有实时性能可分为嵌入式非实时系统和嵌入式实时系统。 5. 嵌入式实时系统除具有嵌入式系统的基本特征外,还具实时性和可靠性的重要特点。 6. 嵌入式系统的硬件架构是以嵌入式处理器为中心,由存储器,I/O设备,通信模块以及电源等必要的辅助接口组成。 7. 嵌入式系统的软件通常固态化存储在ROM、FLASH或NVRAM中。 8. 嵌入式系统的开发由于受到系统资源开销的限制,通常采用交叉开发环境。 9. 嵌入式系统开发采用的交叉开发环境是由宿主机和目标机组成的。 10. 嵌入式系统的设计是使用一组物理硬件和软件来完成所需功能的过程。 二.选择 1. 以下哪一项不属于嵌入式操作系统(C) A.VxWorks B. WinCE C. BSD D. uClinux 2. 以下关于嵌入式系统说确的是(A) A.以开发为中心 B 对实时,成本,功耗要求严格 C.软硬件协同 D 软件可剪裁 3. 以下关于嵌入式系统说确的是(A) A.嵌入的系统中可以共存多个嵌入式系统 B.对高性能要求严格

C.软硬件缺乏协同 D.不要时性 4. 对响应时间有严格要求的嵌入式系统是(A) A.嵌入式实时系统 B.嵌入式多线程系统 C.嵌入式多核系统 D.嵌入式轮转询问系统 5. 以下哪一项属于嵌入式系统不具备的特点(B) A.采用专用处理器 B. 跨平台可移植 C.软硬件协同一体化 D.小型化与有限资源 6. 嵌入式系统硬件的核心是(B) A.存储器 B.嵌入式微处理器 C.嵌入式微控制器 D.BSP 7. 嵌入式系统的软件部分不包括(A) A.DSP B.嵌入式操作系统 C.设备驱动程序D.应用程序 8. 对性能要求高的嵌入式系统是(C) A.嵌入式实时系统 B.嵌入式多线程系统 C.嵌入式多核系统 D.嵌入式轮转询问系统 9. 嵌入式应用软件的开发阶段不包括(D) A.交叉编译和 B.开发环境的建立 C.联机调试 D.应用程序模块加载 10. 为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都保存在(A) A.存储器芯片 B.磁盘 C.cache D.CDROM

LInux 嵌入式操作系统期末试题

1.简答题:请简单概括什么是嵌入式系统、并举出嵌入式系统的特点;(6分) 答: 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可剪裁,适用于应用系统,对功能、可靠性、成本、体积、功耗等方面有特殊要求的专用计算机系统; 其特点如下: (1)嵌入式系统是面向特定系统应用的。 (2)嵌入式系统涉及计算机技术、微电子技术、电子技术、通信和软件等各个行业; 是一个技术密集、资金密集、高度分散、不断创新的知识集成系统; (3)嵌入式系统的硬件和软件都必须具有高度可定制性;只有这样才能适应嵌入式系 统应用的需要,在产品价格和性能方面具备竞争力; (4)嵌入式系统的生命周期相当长。 (5)嵌入式系统不具备本地系统开发能力,通常需要有一套专门的开发工具和环境。 2.嵌入式操作系统的优势:1.低成本开发系统 2.可应用多种硬件平台 3.可定制内核 4. 性能优异 5.良好的网络支持 3.linux文件类型:1.普通文件 2.目录文件 3.链接文件 4.设备文件 a.块设备文件(硬 盘:/dev/hda1)b.字符设备(串行端口接口设备) 4.linux文件属性:访问权限:r:可读w:可写x:可执行用户级别:u:文件拥有者g:所 属用户组 o:其他用户第一个字符显示文件类型:-普通d目录 l 链接… 5.简答题:(6分) linux目录结构:/bin 存放linux常用操作命令的执行文件(二进制文件) /boot 操作系统启动时所需要的程序 /dev Linux系统中使用的外部设备 /etc 系统管理时所需要的各种配置文件和子目录 /etc/rc.d Linux启动和关闭时要用到的脚本 /etc/rc.d/init Linux默认服务的启动脚本 /home 系统中默认用户工作根目录 /lib 存放系统动态链接共享库 /mnt软驱、光驱、硬盘的挂载点 /proc存放系统核心与执行程序所需信息、 /root超级用户登陆时的主目录 /sbin 存放管理员常用系统管理程序 /usr存放用户应用程序和文件 /var存放日志信息(答六点即可) 6.编写一个shell文件:创建studen01 –student30这30个用户,用户组为class1,之 后编写shell文件,删除所有用户

嵌入式操作系统的种类与特点

1.3.1 嵌入式操作系统的种类、特点与发展 1.嵌入式操作系统的种类 一般情况下,嵌入式操作系统可以分为两类: 非实时操作系统:面向消费电子产品等领域,这类产品包括个人数字助理(PDA)、移动电话、机顶盒、电子书等。 实时操作系统RTOS(Real-Time Embedded Operating System):面向控制、通信等领域,如windriver公司的vxworks、isi的psos、qnx系统软件公司的qnx等。 (1)非实时操作系统 早期的嵌入式系统中没有操作系统的概念,程序员编写嵌入式程序通常直接面对裸机及裸设备。在这种情况下,通常把嵌入式程序分成两部分,即前台程序和后台程序。前台程序通过中断来处理事件,其结构一般为无限循环;后台程序则掌管整个嵌入式系统软、硬件资源的分配、管理以及任务的调度,是一个系统管理调度程序。这就是通常所说的前后台系统。一般情况下,后台程序也叫任务级程序,前台程序也叫事件处理级程序。在程序运行时,后台程序检查每个任务是否具备运行条件,通过一定的调度算法来完成相应的操作。对于实时性要求特别严格的操作通常由中断来完成,仅在中断服务程序中标记事件的发生,不再做任何工作就退出中断,经过后台程序的调度,转由前台程序完成事件的处理,这样就不会造成在中断服务程序中处理费时的事件而影响后续和其它中断。 实际上,前后台系统的实时性比预计的要差。这是因为前后台系统认为所有的任务具有相同的优先级别,即是平等的,而且任务的执行又是通过FIFO队列排队,因而对那些实时性要求高的任务不可能立刻得到处理。另外,由于前台程序是一个无限循环的结构,一旦在这个循环体中正在处理的任务崩溃,使得整个任务队列中的其它任务得不到机会被处理,从而造成整个系统的崩溃。由于这类系统结构简单,几乎不需要RAM/ROM的额外开销,因而在简单的嵌入式应用被广泛使用。 (2)实时操作系统 所谓实时性,就是在确定的时间范围内响应某个事件的特性。而实时系统是指能在确定的时间内执行其功能并对外部的异步事件做出响应的计算机系统。其操作的正确性不仅依赖于逻辑设计的正确程度,而且与这些操作进行的时间有关。“在确定的时间内”是该定义的核心。也就是说,实时系统是对响应时间有严格要求的。 实时系统对逻辑和时序的要求非常严格,如果逻辑和时序出现偏差将会引起严重后果。实时系统有两种类型:软实时系统和硬实时系统。软实时系统仅要求事件响应是实时的,并不要求限定某一任务必须在多长时间内完成;而在硬实时系统中,不仅要求任务响应要实时,而且要求在规定的时间内完成事件的处理。通常,大多数实时系统是两者的结合。实时应用软件的设计一般比非实时应用软件的设计困难。实时系统的技术关键是如何保证系统的实时性。实时操作系统可分为可抢占型和不可抢占型两类。 嵌入式实时操作系统在目前的嵌入式应用中用得越来越广泛,尤其在功能复杂、系统庞大的应用中显得愈来愈重要。 从某种意义上说,没有操作系统的计算机(裸机)是没有用的。在嵌入式应用中,只有把CPU嵌入到系统中,同时又把操作系统嵌入进去,才是真正的计算机嵌入式应用。 操作系统的实时性在某些领域是至关重要的,比如工业控制、航空航天等领域。想像飞机正在空中飞行,如果嵌入式系统不能及时响应飞行员的控制指令,那么极有可能导致空难事故。有些嵌入式系统应用并不需要绝对的实时性,比如PDA播放音乐,个别音频数据丢失并不影响效果。这可以使用软实时的概念来衡量。

几种嵌入式实时操作系统的研究分析与比较

几种嵌入式实时操作系统地分析与比较 2008-07-04 20:54 VxWorks、μClinux、μC/OS-II和eCos是4种性能优良并被广泛应用地实时操作系统.本文通过对这4种操作系统地主要性能进行分析与比较,归纳出它们地选型依据和适用领域. 1. 4种操作系统地介绍 (1)VxWorks VxWorks是美国WindRiver公司地产品,是目前嵌入式系统领域中应用很广泛,市场占有率比较高地嵌入式操作系统.VxWorks实时操作系统由400多个相对独立、短小精悍地目标模块组成,用户可根据需要选择适当地模块来裁剪和配置系统;提供基于优先级地任务调度、任务间同步与通信、中断处理、定时器和内存管理等功能,内建符合POSIX(可移植操作系统接口)规范地内存管理,以及多处理器控制程序;并且具有简明易懂地用户接口,在核心方面甚至町以微缩到8 KB. (2) μC/OS-II μC/OS-II是在μC-OS地基础上发展起来地,是美国嵌入式系统专家Jean J.Labrosse用C语言编写地一个结构小巧、抢占式地多任务实时内核.μC/OS-II能管理64个任务,并提供任务调度与管理、内存管理、任务间同步与通信、时间管理和中断服务等功能,具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点. (3)μClinux μClinux是一种优秀地嵌入式Linux版本,其全称为micro-control Linux,从字面意思看是指微控制Linux.同标准地Linux相比,μClinux地内核非常小,但是它仍然继承了Linux操作系统地主要特性,包括良好地稳定性和移植性、强大地网络功能、出色地文件系统支持、标准丰富地API,以及TCP/IP网络协议等.因为没有MMU内存管理单元,所以其多任务地实现需要一定技巧. (4)eCos eCos(embedded Configurable operating system),即嵌入式可配置操作系统.它是一个源代码开放地可配置、可移植、面向深度嵌入式应用地实时操作系统.最大特点是配置灵活,采用模块化设计,核心部分由小同地组件构成,包括内核、C语言库和底层运行包等.每个组件可提供大量地配置选项(实时内核也可作为可选配置),使用eCos提供地配置工具可以很方便地配置,并通过不同地配置使得eCos能够满足不同地嵌入式应用要求. 2. 性能分析与比较 任务管理、任务及中断间地同步与通信机制、内存管理、中断管理、文件系统、对硬件地支持和系统移植这几方面是实时操作系统地主要性能.下面就从这几个方面着手对上述4种操作系统进行分析与比较. 2.1 任务管理 任务管理是嵌入式实时操作系统地核心和灵魂,决定了操作系统地实时性

浅谈嵌入式系统的现状及发展前景

课程考核论文 课程名称信息学导论 学生姓名曾文静 学号1141304067 系、专业信息工程系电子科学与技术专业 2013年6 月15 日

浅谈嵌入式系统的现状及发展前景 摘要:从嵌入式系统的含义、特点、开发平台及其工业特征出发 ,深入阐述了嵌入式计算机技术的发展现状 ,展望了嵌入式系统产业在我国的广阔发展前景景。 1. 嵌入式系统的发展趋势及典型应用产品 在现在日益信息化的社会中,计算机和网络已经全面渗透到日常生活的每一个角落。对于我们每个人,需要的已经不再仅仅是那种放在桌上处理文档,进行工作管理和生产控制的计算机"机器";各种各样的新型嵌入式系统设备在应用数量上已经远远超过通用计算机,任何一个普通人可能拥有从大到小的各种使用嵌入式技术的电子产品,小到mp3,PDA等微型数字化产品,大到网络家电,智能家电,车载电子设备。而在工业和服务领域中,使用嵌入式技术的数字机床,智能工具,工业机器人,服务机器人也将逐渐改变传统的工业和服务方式。 近几年,嵌入式系统产品日臻完善,并在全世界各行业得到广泛应用。嵌入式系统产品的研制和应用已经成为我国信息化带动工业化、工业化促进信息化发展的新的国民经济增长点。 随着信息化、智能化、网络化的发展,嵌入式技术将全面展开,现在嵌入式已经成为通信和消费类产品的共同发展方向。总体来说,嵌入式系统分别在硬件和软件方面获得发展。嵌入式系统必将成为当今IT界的又一焦点,开发自主知识产权的嵌入式处理器和嵌入式操作系统,对于我们国家的民族IT产业来讲具有十分重要的战略意义。从国内IT市场来看,嵌入式系统及其产品在由家电产品和Internet衍生出来的新型市场中占有主导地位和独特份额。 在消费家电的智能化的今天,嵌入式更显重要。像我们平常见到的手机、PDA、电子字典、可视电话、VCD/DVD/MP3Player、数字相机(DC)、数字摄像机(DV)、U-Disk 、机顶盒(Set Top Box)、高清电视(HDTV )、游戏机、智能玩具、交换机、路由器、数控设备或仪表、汽车电子、家电控制系统、医疗仪器、航天航空设备等等,都是典型的嵌入式系统。据预测,随着Internet的迅速发展和廉价微处理器的出现,嵌入式系统将在日常生活里形成更大的应用领域。 例如,行车称重无线遥测调度系统:由贵溪冶炼厂和北京市自动化系统成套工程公司合作开发,用在贵溪冶炼车间。具体要求为系统前端由安装在行车上的行车工作站(3台)构成,行车工作站将行车称重信号转换成数字信号,并将采集的数字信号经

嵌入式操作系统期末考试答案

填空 1、嵌入式系统是以应用为中心、以计算机技术为基础、软硬件可裁剪、适用于应用系统,对(功能)、(可靠性)、(成本)、(体积)、(功耗)严格要求的专用计算机系统。 2、嵌入式系统开发采用的交叉开发环境是由(宿主机)和(目标机)组成的。 3、挂载设备到文件系统的命令是(mount),从文件系统中卸载设备命令是(umounts)。 4、在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面,进入vi之后,是处于 (命令)模式,要切换到(编辑)模式才能够输入文字。 5、GCC的编译流程分为4个步骤,分别为:(预处理),编译,(汇编),链接。 6、Linux系统的设备分为三类:(字符设备)、(块设备)和网络设备。 7、操作系统的功能包(处理机管理)、(存储管理)、(设备管理)、(信息管理)、(作业管理)。 选择 1、下面哪点不是嵌入式操作系统的特点。(C) (A)内核精简(B)专用性强(C)功能强大(D)高实时性 2、嵌入式Linux下常用的文件系统不包括以下哪一项(A) (A)nfs(B)romfs(C)yaffs(D)jffs 3、下面关于Shell的说法,不正确的是:(D) (A)操作系统的外壳(B)用户与Linux内核之间的接口程序(C)一个命令语言解释器(D)一种和C语言类似的程序语言 4、在Bootloader()模式下,目标机可以通过通信手段从主机更新系统。(B) (A)启动加载模式(B)下载模式(C)实时模式(D)保护模式 5、文件exer1的访问权限为rw-r--r--,现要增加所有用户的执行权限和同组用户的写权限,下列命令正确的是: (A) (A)chmoda+xg+wexer1(B)chmod765exer1(C)chmodo+xexer1(D)chmodg+wexer1 6、在vi编辑环境中,下面()选项不是从命令行模式切换到插入模式。(C) (A)i(B)o(C)ESC(D)a 7、shell变量名命名中不包括()。(D) (A)字母(B)数字(C)下划线(D)括号 8、下列关于字符设备说法不正确的是()。(C) (A)以字节为单位逐个进行I/O操作(B)字符设备中的缓存是可有可无的 (C)支持随机访问(D)字符设备可以通过设备文件节点访问 9、以下哪一项是是硬盘设备文件()。(B) (A)fd0(B)hda(C)eth1(D)ht0 10、共享内存通信机制的缺点是()。(B) (A)需要花费额外的内存空间(B)需要使用额为的同步机制 (C)需要额外硬件支持(D)通信过程中需要反复读取内存,时间开销大 简答题 1.嵌入式操作系统在哪些方面较为突出的特点并请列举出4种目前较常用的手机嵌入 式操作系统。 四个方面:系统实时高效性硬件的相关依赖性软件固态化应用的专用性 四种手机操作系统:Window Mobile SymbianOSAndriod OSE

适合STM32的嵌入式操作系统

一下是网络收集的几种适合stm32的嵌入式操作系统,打算最近都移植一下,先做个记录。 基于STM平台且满足实时控制要求操作系统,有以下4种可供移植选择。分别为μClinux、μC/OS-II、eCos、FreeRTOS和都江堰操作系统(djyos)。下面分别介绍这四种嵌入式操作系统的特点及不足。 1、μClinux μClinux是一种优秀的嵌入式Linux版本,其全称为micro-control Linux,从字面意思看是指微控制Linux。同标准的Linux相比,μClinux的内核非常小,但是它仍然继承了Linux操作系统的主要特性,包括良好的稳定性和移植性、强大的网络功能、出色的文件系统支持、标准丰富的API,以及TCP/IP网络协议等。因为没有MMU内存管理单元,所以其多任务的实现需要一定技巧。 μClinux在结构上继承了标准Linux的多任务实现方式,分为实时进程和普通进程,分别采用先来先服务和时间片轮转调度,仅针对中低档嵌入式CPU 特点进行改良,且不支持内核抢占,实时性一般。 在内存管理上由于μClinux是针对没有MMU的处理器设计的,不能使用处理器的虚拟内存管理技术,只能采用实存储器管理策略。系统使用分页内存分配方式,在启动时对实际存储器进行分页。系统对内存的访问是直接的,操作系统对内存空间没有保护,多个进程可共享一个运行空间,所以,即使是一个无特权进程调用一个无效指针也会触发一个地址错误,并有可能引起程序崩溃甚至系统崩溃。 μClinux操作系统的中断管理是将中断处理分为两部分:顶半处理和底半处理。在顶半处理中,必须关中断运行,且仅进行必要的、非常少、速度快的处理,其他处理交给底半处理;底半处理执行那些复杂、耗时的处理,而且接受中断。因为系统中存在有许多中断的底半处理,所以会引起系统中断处理的延时。 μClinux对文件系统支持良好,由于μClinux继承了Linux完善的文件系统性能,它支持ROMFS、NFS、ext2、MS-DOS、JFFS等文件系统。但一般采用ROMFS 文件系统,这种文件系统相对于一般的文件系统(如ext2)占用更少的空间。但是ROMFS文件系统不支持动态擦写保存,对于系统需要动态保存的数据须采用虚拟RAM盘/JFFS的方法进行处理。

嵌入式系统

第一章绪论 1.嵌入式系统的定义、特点和分类 2.嵌入式操作系统 3.嵌入式系统的选型 4.嵌入式系统的发展趋势 5.嵌入式系统的关键技术 6.嵌入式系统的应用 思考与练习 1.什么是嵌入式系统?嵌入式系统的特点是什么? 2.请说出嵌入式系统与其它商用计算机系统的区别。 3.嵌入式系统的关键技术有哪些? 4.请说明嵌入式系统技术发展及开发应用的趋势。 5.你知道嵌入式系统在我们日常生活中哪些设备中应用?说明其采用的处理器是什么?采用的哪一个嵌入式操作系统? 6.开发嵌入式系统的计算机语言主要有哪几种?分别用在什么场合?7. 嵌入式系统和专用集成电路的关系是什么? 第二章嵌入式系统设计方法 1. 需求分析与系统分析法 2.软硬件协同设计方法 3.嵌入式硬件开发方法 4.嵌入式软件开发方法 5.构件式开发方法 6.软件调试与软件测试方法 思考与练习 1.请说出嵌入式系统设计的主要方法及设计流程。在嵌入式系统开发的总体设计中,需要进行哪几方面的工作? 2.嵌入式硬件调试的主要方法及技术手段有哪些? 3.什么是构件式开发方法?说明该方法对嵌入式系统开发具有什么意义,并举例说明。4.需求分析阶段分为哪几个步骤?每个步骤完成什么工作? 5.在进行系统设计时,概要设计和详细设计的工作内容有什么不同? 6.在嵌入式系统实现阶段,需要选择开发平台,通常开发平台的选择包括哪些内容?7.在当今IT 时代,为了使产品尽快进入市场,就产品开发阶段,你认为有哪些方法可以加快产品的开发速度? 8.什么是“黑盒”测试?什么是“白盒”测试?什么是“灰盒”测试? 9.嵌入式系统开发中,使用软件组件技术有什么好处? 10.什么是知识产权核(Intellectual Property Core,简称IP Core)?指出“软知识产权核(Soft IP Core)”、“硬知识产权核(Hard IP Core)”、“固知识产权核(Firm IP Core)”的意义和差别。 11.根据嵌入式软件开发的不同阶段,嵌入式开发工具有哪些种类? 12.从底层硬件到上层应用,嵌入式软件的开发可以分为哪几种? 13.什么是交叉开发环境? 14.什么是OCD 调试方法?指出OCD 的主要形式JTAG 和BDM 的特点和区别? 15.嵌入式软件的调试运行环境和固化运行环境主要区别是什么?

相关文档
最新文档