嵌入式实时操作系统1

  • 格式:docx
  • 大小:22.54 KB
  • 文档页数:8

下载文档原格式

  / 8
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

嵌入式实时操作系统

嵌入式实时操作系统(Embedded Real-time Operation System,RTOS)。

1 嵌入式实时操作系统概念

当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的嵌入式操作系统。

2 嵌入式实时操作系统特点

1)多任务;

2)有线程优先级

3)多种中断级别

3 嵌入式实时操作系统应用

在工业控制、军事设备、航空航天等领域对系统的响应时间有苛刻的要求,这就需要使用实时系统。

采用嵌入式实时操作系统(简称RTOS)能够支持多任务,使得程序开发更加容易,便于维护,同时能够提高系统的稳定性和可靠性。

4 实时操作系统的必要性:

首先,嵌入式实时操作系统提高了系统的可靠性。

其次,提高了开发效率,缩短了开发周期。

实时操作系统的优缺点:

在嵌入式实时操作系统环境下开发实时应用程序使程序的设计和扩展变得容易,不需要大的改动就可以增加新的功能。通过将应用程序分割成若干独立的任务模块,使应用程序的设计过程大为简化;而且对实时性要求苛刻的事件都得到了快速、可靠的处理。通过有效的系统服务,嵌入式实时操作系统使得系统资源得到更好的利用。但是,使用嵌入式实时操作系统还需要额外的ROM/RAM 开销,2~5% 的CPU 额外负荷,以及内核的费用。

5 实时系统与非实时系统的根本区别

实时系统与非实时系统的根本区别在于:实时系统具有与外部环境及时交互作用的能力。也就是说实时系统从外部获取信息以及系统得出结论要在很短的限制时间内完成。

它具有嵌入式软件共有的可裁剪、低资源占用、低功耗等特点;实时任务之间可能还会有一些复杂的关联和同步关系,如执行顺序限制、共享资源的互斥访问要求等。

实时操作系统所遵循的最重要的设计原则是:采用各种算法和策略,始终保证系统行为的可预测性(predictability)。可预测性是指在系统运行的任何时刻,在任何情况下,实时操作系统的资源调配策略都能为争夺资源(包括CPU、内存、网络带宽等)的多个实时任务合理地分配资源,使每个实时任务的实时性要求都能得到满足。与通用操作系统不同,实时操作系统注重的不是系统的平均表现,而是要求每个实时任务在最坏情况下都要满足其实时性要求,也就是说,实时操作系统注重的是个体表现。

分时操作系统的基本设计原则是:尽量缩短系统的平均响应时间并提高系统的吞吐率,在单位时间内为尽可能多的用户请求提供服务。由此可以看出,分时操作系统注重平均表现性能,不注重个体表现性能。

6 uC/OS II

uC/OS-II是一个简洁、易用的基于优先级的嵌入式抢占式多任务实时内核。

uC/OS II(Micro Control Operation System Two)是一个可以基于ROM运行的、可裁减的、抢占式、实时多任务内核,具有高度可移植性,特别适合于微处理器和控制器,是和很多商业操作系统性能相当的实时操作系统(RTOS)。

uC/OS II最大程度上使用ANSI C语言进行开发,并且已经移植到近40多种处理器体系上,涵盖了从8位到64位各种CPU(包括DSP)。

主要特点有公开源代码,代码结构清晰、明了,注释详尽,组织有条理,可移植性好,可裁剪,可固化。内核属于抢占式,最多可以管理60个任务。

采用基于ARM9的S3C2410嵌入式微处理,可以使系统具备高性能的运算能力的同时便于与各种外设连接扩展,简化了硬件设计,维持小型化的同时降低了系统成本。uC/OS II作为一个源代码公开的操作系统,在具体应用中稳定可靠,并且支持uIPTCP/IP协议栈、ucGUI等,可扩展性强,功能强大。本系统采ARM9+uC/OS II开发设计,具有精度高、运行稳定、实时性好、抗干扰能力强、性价比高的特点,可以在各种工业场合中广泛应用,达到了设计的初衷μC/OS-II 作为一个嵌入式实时操作系统,自1992年以来,因其源代码的完全公开和优越性能,已为众多的爱好者和开发人员所了解并得到了广泛应用。

7 uC/OS II优缺点

具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点。

公开源代码:

实时性强

uC/OS-II主要用于小CPU,Vxworks用于高性能CPU,低端的CPU虽然可以裁减使用,但已经没有意义了,就等于拿大炮打蚊子。

1、在统计趋势上,uC/OS是否会越来越广泛?

2、据说开发uC/OS的公司Micrium是个小公司,该公司的商业模式是否能确保其一直活下去并发展起来?

3、在工业控制方面,uc/OS对比vxworks有什么优缺点?

4、uc/OS是否有类似linux的开源社区?

5、总体开发维护支持成本,uC是否相对Vxworks有优势?

6.uC的kernel和其它功能模块(FS,TCPIP)的集成,是否简单方便,对性能是否有影响?

7.driver的获取是否容易?

1. 在小芯片使用uC/OS-II肯定是一个趋势;

2. Micrium是个小公司,肯定能够活下去,因为购买版权的公司会越来越多,关键是便宜;

3. Vxworks当然优势更多,请咨询原厂更准确,应用的领域更广泛,很多高可信项目都使用了,但需要付更多银子;

4. uC/OS-II北航出版社有图书带光盘源代码,用于商业需要付费购买;

5. 差不多!其前提是全购买正版,当然Vxworks还是要强一些,而对于我们公司来说差不多;

6. 简约不简洁;

7. 自己搞定。

uC/ OS-II的源代码可以免费获得,只对商业应用收取少量许可证费,可以大大降低开发成本。同时,由于源码公开,开发者遇到问题时可方便的通过工n t e r n e t进行交流,获得广泛的技术支持。但与商业实时操作系统相比,在开发套件和技术支持方面还比较欠缺,软件包的功能还不是特别强大,有些驱动程序需要用户自己编写。

优先级设置

嵌入式操作系统支持多任务,每个任务都具有优先级,任务越重要,赋予的优先级应越高。

多任务调度机制

基于优先级抢占式调度:系统中每个任务都有一个优先级,内核总是将CPU 分配给处于就绪态的优先级最高的任务运行。

时间片轮转调度:让优先级相同的处于就绪状态的任务按时间片使用CPU,以防止同优先级的某一任务长时间独占CPU。

在一般情况下,嵌入式实时操作系统采用基于优先级抢占式调度与时间片轮