- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第1章 wind 内 核
1.1 内 核 概 述
VxWorks操作系统内核称为wind内核,下面从实时性能、核结构、调度特点等方面初步探讨。
1.1.1 实时内核
“实时”表示控制系统能够及时处理系统中发生的要求控制的外部事件。从事件发生到系统产生响应的反应时间称为延迟(Latency)。对于实时系统,一个最重要的条件就是延迟有确定的上界(这样的系统属于确定性系统)。满足这个条件后,根据这个上界大小再区分不同实时系统的性能。这里,“系统”是从系统论的观点讲的一个功能完整的设计,能够独立和外部世界交互,实现预期功能,包括实时硬件系统设计、实时操作系统设计、实时多任务设计3部分。后两者可以概括为实时软件系统设计。实现实时系统是这3部分有机结合的结果。
从另外一个角度,即实时程度看,可以把系统分为硬实时系统和软实时系统。硬实时系统是这样一种系统,它的时间要求有一个确定的底线(Deadline),超出底线的响应属于错误的结果,系统将会崩溃,上面所说的实时系统属于硬实时系统。对于软实时系统来说,“实时性”是个程度概念,在提交诸如中断、计时和调度的操作系统服务时,系统定义一个时间范围内的延迟。在该范围内,越早给出响应越有价值,只要不超出范围,晚点给出的结果价值下降,但可以容忍。
1.实时硬件系统设计
实时硬件系统设计是其他两部分的基础。实时硬件系统设计要求满足在软件系统充分高效的前提下,必须提供足够的处理能力。例如,硬件系统提供的中断处理逻辑能同时响应的外部事件数量、硬件反应时间、内存大小、处理器计算能力、总线能力等,以保证最坏情况下所有计算仍然得以完成。多处理的硬件系统还包括内部通信速率设计。当硬件系统不能保证达到实时要求时,可以确信整个系统不是实时的。
目前,各种硬件速度不断提高,先进技术大量涌现,硬件在大多数应用中已经不是实时系统的瓶颈。因而,实时系统的关键集中在实时软件系统设计,这方面也成了实时性研究的主要内容,也是最复杂的部分。许多场合甚至对实时系统和实时操作系统不加区分。
2.实时操作系统设计
先来看实时操作系统性能评价的几个主要指标:
中断延迟时间:从接收中断信号操作系统做出响应,并完成进入中断服务程序的时间;
任务切换时间:多任务之间进行切换所花费的时间;
系统响应时间:系统在发出处理要求到系统给出应答信号的时间。系统响应时间从整体上评价操作系统,综合了前面两个指标。
从实时性角度看,操作系统经历了前后台系统、分时操作系统和实时操作系统3个 阶段。
前后台系统其实没有操作系统,系统中只运行一个无限主循环,没有多任务的概念,但是通过中断服务程序响应外部事件。在前后台系统中,对外部事件的实时响应特性从两方面看。(1)中断延迟:主循环一般保持中断开放状态,因此前后台系统中断响应非常快,并且通常允许嵌套;(2)系统响应时间:需要经历一次主循环才能对中断服务程序中采集的外部请求进行处理,因此系统响应时间决定于主循环周期。
分时操作系统将系统计算能力分成时间片,按照一定的策略分配给各个任务,通常在分配过程中追求某种意义上的公平。分时操作系统不保证实时性。
实时操作系统(Real Time OS,RTOS)的目的是实现对外部事件的实时响应,即根据前面对实时性的定义,实时操作系统必须在确定的时间内给出响应。实时操作系统必须满足下面几个条件:
可抢占的内核;
可抢占的优先级调度;
中断优先级;
中断可嵌套;
系统服务的优先级由请求该服务的任务的优先级确定;
优先级保护(优先级翻转保护);
前述实时操作系统性能评价指标具有固定上界。
满足上面的必要条件后,内核内部具体的实现机制就决定了其实时性的优劣。VxWorks的wind是一个真正的实时微内核,满足上述条件。同时,wind采取单一实时地址空间,任务切换开销非常低,相当于在UNIX这样的主机上切换到相同进程内的另一个线程,并且没有系统调用开销。高效的实时设计使wind在从工业现场控制到国防、航空等众多领域中表现出优秀的实时性。
3.实时多任务设计
具备前面两个实时条件后,实时系统的最终实现就取决于实时多任务设计。这部分是最能体现系统设计者艺术的部分,也是最有挑战性的部分。这部分设计内容涵盖了一个完整的软件工程过程:需求分析(需求建模)、概要设计(设计建模)、模块设计、模块实现、调试、发布。和一般软件工程过程不同的是上述每一步中都需要考虑对实时性的满足,因此更加复杂、也许需要专门通过一本书的篇幅对此进行探讨。我们只简单分析设计过程中实时多任务设计需要面临的关键问题:多任务划分、多任务分配、多任务调度。“关键”是因为它们是决定系统实时性的主要因素,具体设计时还存在其他一些问题,如任务间通信机制选择,中断服务程序设计等,都对系统实时性产生重大影响,但不属于本质的问题。对多任务划分、多任
文档评论(0)