vxworks操作系统基础

vxworks操作系统基础

ID:18648792

大小:99.00 KB

页数:29页

时间:2018-09-19

vxworks操作系统基础_第1页
vxworks操作系统基础_第2页
vxworks操作系统基础_第3页
vxworks操作系统基础_第4页
vxworks操作系统基础_第5页
资源描述:

《vxworks操作系统基础》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1实时操作系统概述31.1实时操作系统31.2基本概念32VxWorks的系统综述42.1VxWorks42.2Tornado63VxWorks操作系统基础73.1VxWorks的任务73.1.1多任务73.1.2任务的状态迁移83.1.3Wind内核的任务调度93.1.4任务控制93.1.5任务扩展性123.1.6任务错误状态:errno133.1.7任务异常处理143.1.8共享代码和代码重入143.1.9VxWorks的系统任务173.2任务间通信183.2.1共享数据结构183.2.2互斥183

2、.2.3信号量Semaphores193.2.3.1二值信号量203.2.3.2互斥信号量223.2.3.3计数信号量233.2.3.4信号量的特殊参数243.2.4消息队列243.2.5管道263.2.6跨网络的任务间通信263.2.7信号263.3中断服务代码273.3.1应用代码与中断连接273.3.2中断堆栈283.3.3ISRs的一些特殊限制283.3.4中断级别的异常283.3.5保持高中断级别293.3.6对高中断级别的ISRs的一些附加限制293.3.7中断与任务间的通信293.4看门狗

3、计时器WatchdogTimers294VxWorks中的函数库:304.1TaskLib:304.2ErrnoLib:304.3SigLib:314.4LstLib:314.5MemLib:32注:本文档主要是对VxWorks内核的一个简单介绍;由于word经常把一句话的第一个字母变成大写,所以文中函数名的第一个字母的大小写可能不对。1实时操作系统概述1.1实时操作系统在计算的早期开发的操作系统的最原始的结构形式是一个统一的实体(monolithic)。在这样的系统中,提供的不同功能的模块,如处理器管

4、理、内存管理、输入输出等,通常是独立的。他们在执行过程中并不考虑其他正在使用中的模块,各个模块都以相同的时间粒度运行,即严格按时间片分时方式运行。由于现代实时环境需要许多不同的功能,以及在这样的环境中存在的并发活动所引起的异步性和非确定性,操作系统变得更加复杂。所以早期操作系统的统一结构的组织已经被更加精确的内部结构所淘汰。层次结构的起点----内核操作系统的最好的内部结构模型是一个层次性的结构,最低层是内核。这些层次可以看成为一个倒置的金字塔,每一层都建立在较低层的功能之上。内核仅包含一个操作系统执行

5、的最重要的低层功能。正象一个统一结构的操作系统,内核提供了在高层软件与下层硬件之间的抽象层。然而,内核仅提供了构造操作系统其他部分所需的最小操作集。对一个实时内核的要求。一个实时操作系统内核需满足许多特定的实时环境所提出的基本要求,这些包括:多任务:由于真实世界的事件的异步性,能够运行许多并发进程或任务是很重要的。多任务提供了一个较好的对真实世界的匹配,因为它允许对应于许多外部事件的多线程执行。系统内核分配CPU给这些任务来获得并发性。抢占调度:真实世界的事件具有继承的优先级,在分配CPU的时候要注意到

6、这些优先级。基于优先级的抢占调度,任务都被指定了优先级,在能够执行的任务(没有被挂起或正在等待资源)中,优先级最高的任务被分配CPU资源。换句话说,当一个高优先级的任务变为可执行态,它会立即抢占当前正在运行的较低优先级的任务。快速灵活的任务间的通信与同步:在一个实时系统中,可能有许多任务作为一个应用的一部分执行。系统必须提供这些任务间的快速且功能强大的通信机制。内核也要提供为了有效地共享不可抢占的资源或临界区所需的同步、互斥机制。方便的任务与中断之间的通信:尽管真实世界的事件通常作为中断方式到来,但为了

7、提供有效的排队、优先化和减少中断延时,我们通常希望在任务级处理相应的工作。所以需要杂任务级和中断级之间存在通信。性能边界:一个实时内核必须提供最坏情况的性能优化,而非针对吞吐量的性能优化。我们更期望一个系统能够始终以50微妙执行一个函数,而不期望系统平均以10微妙执行该函数,但偶尔会以75微妙执行它。特殊考虑:由于对实时内核的要求的增加,必须考虑对内核支持不断增加的复杂功能的要求。这包括多进程处理,Ada和对更新的、功能更强的处理器结构如RISC的支持。拥有其它名字的内核许多商用化的内核支持的功能远强于

8、上面所列的要求。在这方面,他们不是真正的内核,而更象一个小的统一结构的操作系统。因为他们包含简单的内存分配、时钟管理、甚至一些输入输出系统调用的功能。1.2基本概念任务(TASK):任务是由计算机所执行的一项活动,它包括一个程序和于这个程序有关的数据、程序状态及计算机资源等。进程(PROCESS):在UNIX操作系统里,任务被称作进程。任务和进程都可以作为调度单位被内核调度执行,但在一些既有任务又有进程的系统里任务和进程是有区别的,主要表现

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。