Vxworks 学习(一)介绍

Vxworks 学习(一)介绍

该系列文章是我根据多个博主以及相关书上内容整理的学习笔记,许多内容非原创。

实时操作系统

定义

实时操作系统(Real Time Operating System,简称RTOS)是指当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,调度一切可利用的资源完成实时任务,并控制所有实时任务协调一致运行的操作系统。提供及时响应和高可靠性是其主要特点。

分类以及功能

实时操作系统是保证在一定时间限制内完成特定功能的操作系统。实时操作系统有硬实时和软实时之分,硬实时要求在规定的时间内必须完成操作,这是在操作系统设计时保证的;软实时则只要按照任务的优先级,尽可能快地完成操作即可。我们通常使用的操作系统在经过一定改变之后就可以变成实时操作系统。
大体上,实时操作系统(RTOS)要求:

  • 多任务
  • 处理能被区分优先次序的进程线
  • 一个中断水平的充分数量

上述这段话,简而言之,硬实时要求响应必须在规定时间内完成,超过时间的响应即使正确,也无效;软实时是响应越快价值越高,超过时效的响应是正确的,但是价值很低。

因此一个RTOS内核必须满足许多特定的实时环境所提出的基本要求,这些包括:

  • 多任务:由于真实世界的事件的异步性,能够运行许多并发进程或任务是很重要的。多任务提供了一个较好的对真实世界的匹配,因为它允许对应于许多外部事件的多线程执行。系统内核分配CPU给这些任务来获得并发性。
  • 抢占调度:真实世界的事件具有继承的优先级,在分配CPU的时候要注意到这些优先级。基于优先级的抢占调度,任务都被指定了优先级, 在能够执行的任务(没有被挂起或正在等待资源)中,优先级最高的任务被分配CPU资源。换句话说,当一个高优先级的任务变为可执行态(Wind内核中称为就绪态Ready State),它会立即抢占当前正在运行的较低优先级的任务。
  • 快速灵活的任务间的通信与同步:在一个实时系统中,可能有许多任务作 为一个应用的一部分执行。系统必须提供这些任务间的快速且功能强大的通信机制。内核也要提供为了有效地共享不可抢占的资源或临界区所需的同步机制。
  • 方便的任务与中断之间的通信:尽管真实世界的事件通常作为中断方式到来,但为了提供有效的排队、优先化和减少中断延时,我们通常希望在任务级处理相应的工作(uC/OS-III内核采用了这种策略)。所以需要任务级和中断级之间存在通信。
  • 性能边界:一个实时内核必须提供最坏情况的性能优化,而非针对吞吐量的性能优化。我们更期望一个系统能够始终以50微妙(us)执行一个函数,而不期望系统平均以10微妙(us)执行该函数,但偶尔会以75微妙(us)执行它。
  • 特殊考虑:由于对实时内核的要求的增加,必须考虑对内核支持不断增加的复杂功能的要求。这包括多进程处理(比如VxWorks RTP),对更新的、功能更强的处理器结构(比如Multicore CPU)的支持。

相关设计

实时操作系统性能评价的几个主要指标:

  • 中断延迟时间:对一个实时操作系统来说,最重要的指标就是中断关了多长时间,所有实时系统在进入临界区代码段之前都要关中断,执行完临界代码之后再开中断。关中断的时间越长,中断延迟就越长。因此中断延迟时间可以表述为关中断的最长时间与开始执行中断服务子程序第一条指令的时间之和,有时也表述为从系统接收中断信号到操作系统做出响应,进入中断服务程序的时间。
  • 中断响应时间:中断响应时间定义为从中断发生到开始执行用户中断服务子程序代码来处理这个中断的时间。中断响应时间包括开始处理这个中断前的全部开销。中断响应时间包含了中断延迟时间,因此在考虑一个实时系统对外部中断的处理时间时,通常指考虑中断响应时间。典型地将执行用户代码之前保护现场,将CPU 的各寄存器推入堆栈的时间记为中断响应时间。
  • 任务切换时间:多任务之间进行切换所花费的时间,即从前一个任务开始保存上下文的第一条指令开始,到后一个任务恢复上下文开始运行第一条指令为止的时间段。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值