《RTOS〔实时操作系统〕的必备特性.docx》由会员分享,可在线阅读,更多相关《RTOS〔实时操作系统〕的必备特性.docx(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、RTOS实时操作系统的必备特性xuzh导语:随着信息家电的普及,智能化、网络化将会无所不在,所有这些都离不开嵌入式软件随着信息家电的普及,智能化、网络化将会无所不在,所有这些都离不开嵌入式软件,而在嵌入式软件只中最核心的莫过于RTOSRealTimeOperatingSystem,实时操作系统。我们都非常熟悉Windows这样的操作系统,但却不一定熟悉嵌入式系统中常用的RTOS。如今,微软已经推出了Windows的嵌入式版本WindowsCE。而风行一时的Linux也在嵌入式系统中扮演着重要角色。这样看来,传统桌面操作系统和嵌入式操作系统的界限似乎也在淡化。事实终究怎样呢?RTOS的必备特性用
2、于嵌入式环境的操作系统RTOS与桌面操作系统有很多本质的不同。这些不同的特性导致产品开发的不同结果。嵌入式环境给人的第一印象就是占用空间小。所以,普通的Linux或Windows操作系统要变成嵌入式操作系统,首先就是要进展裁剪。然而,与桌面环境相比,嵌入式环境对于操作系统系统要求不仅仅是“小,二者在设计要求上有着本质的不同。这些不同主要表达在可裁剪性、实时性和可靠性等三个方面。随机应变可裁剪性从硬件环境来看,桌面操作系统具有标准化的CPU、存储和I/O架构,而嵌入式环境中的RTOS的硬件环境只有标准化的CPU,没有标准化的存储、I/O和显示器架构。从应用环境来看,桌面操作系统面向复杂多变的应用
3、,而RTOS面向单一设备的单一应用。从开发界面来看,桌面操作系统试图给开发人员提供一个“黑箱,让开发人员通过一系列标准的系统调用来使用操作系统中的功能,而嵌入式试图为开发人员提供一个“白箱,让开发人员可以自主控制系统的所有资源。总之,桌面操作系统的研究开发指导思想是尽可能在不改变自身的前提下具有广泛的适应性。也就是讲:不管应用环境怎么变化,最好都不要对自身内部产生什么影响,也不要求自身做过多的变化。反过来,应用于嵌入式环境的RTOS,在研发的时候就必须立足于改变自身、开放自身,让开发人员可以根据硬件环境和应用环境的不同而对操作系统进展灵敏的裁剪和配置,因为对于任何一个详细的嵌入式设备,它的功能
4、是确定的,因此只要从原有操作系统中把这个特定应用所需的功能拿进来即可。应当指出的是:假如一个操作系统平台只能依靠手工的方式去掉一些代码,这根本就不是可裁剪性。所谓可裁剪性是在软件工程阶段利用软件配置方法实现软件构件的“即插即用。可裁剪性带给用户的一个最直接的好处是硬件本钱降低,这对于本钱敏感的应用,如消费电子类设备,具有重要的现实意义。由于设备中只包含应用程序用到的那局部操作系统功能,这就使得系统变得简单、易把握,进而进步系统的可靠性。准确到位实时性许多人都把实时性理解为速度快。那么,速度快到什么程度才算是到达实时性呢?其实,所谓实时性,其核心含义在于确定性,而不是单纯的速度快。也就是讲,RT
5、OS所要求的是在规定的时间内做完应该做的事情,并且操作系统的行为执行线索是确定的,这是写出高可靠性程序的根底。假如完成同样的动作,有的时候快,有的时候慢,且执行线索千差万别,程序员无法把握,可靠性就无从保证。嵌入式系统为什么对实时性要求那么高呢?因为嵌入式系统主要是对仪器设备的动作进展监测控制的,而一般的桌面操作系统根本上是根据人在键盘和鼠标发出的命令进展工作。相对而言,仪器设备的动作具有严格的、机械的时序要求,而人的动作和反响在时序上并不那么严格。比方,用于控制火箭发动机的嵌入式系统,它所发出的指令不仅要速度快,而且多个发动机之间的时序要求非常严格,否那么就会差之毫厘、谬之千里。在这样的应用
6、环境中,非实时的普通操作系统无论怎样是无法适应的。假如我们所开发的设备并不是像航空航天器那样生命攸关或消费控制那样的关键任务系统,而是像消费电子类那样,即使出现错误也不会造成灾难性后果的设备,那么实时性严格地讲是确定性是否还具有现实意义呢?答案是肯定的!设备的高可靠性可以有效地降低维护本钱;软件运行效率高也会降低对CPU的要求,进而降低硬件本钱。对于消费电子产品这类价格特别敏感的产品,实时性、可靠性仍然是非常值得重视的问题。坚如磐石可靠性桌面操作系统与RTOS相比,另一个差异就是对于稳定性、可靠性方面的设计思路。一方面,桌面操作系统比拟庞大、复杂,而RTOS比拟小巧、简捷,而“越简单、越可靠,
7、越复杂、故障概率越大这又是一个常理。另一方面,更重要的是:桌面操作环境与嵌入式环境在设计思路上有一个重大的不同桌面环境假定应用软件与操作系统相比而言可以是不可靠的,而嵌入式环境假定应用软件与操作系统一样可靠。运行于嵌入式环境中的RTOS要求应用软件具有与操作系统同样的可靠性,这种设计思路对应用开发人员提出了更高的要求,同时也要求操作系统自身足够开放。著名的“木桶原理告诉我们,部分的缺乏会导致整体的缺陷。要保证系统的可靠性,必须保证系统中每一个局部都是可靠的,任何局部的不可靠都会导致系统整体的不可靠。大多数桌面系统都是上千万行代码的庞大而复杂的系统,即使有源代码程序员也难以把握。而且对开发人员来讲,桌面系统庞杂的细节是隐蔽在一个个的固定的接口下的,是一个黑箱,很难把握详细执行的线索。即便其内核是足够可靠的,但它的应用环境复杂多样、千差万别,其中常常有一些应用并不是那么稳定可靠,进而破坏了整体系统的可靠性。相反,RTOS对软件开发人员来讲是完全开放的,是一个白箱,允许开发人员非常清楚地解析和掌握操作系统内部情况,对存储器中的每一位和每一个I/O接口进展操作控制,进而可以设计出高效稳定的应用软件。