RTOS的一些重要概念以及代码维护中的相应问题举例

RTOS特点:

必须要有一个中断,其服务要保证在一个给定的时间内完成,儿不管是否其它的事情发生。

 重要概念:

中断响应时间:发生中断->ISR第一条指令

即中断的发生到执行中断服务程序的第一个指令,中间间隔了多长时间。这包含了硬件与软件的开销。

硬件的开销部分,从中断到来,过了若干个周期才会把中断标志位IFR置位,然后通过对IFR的逻辑判断是否响应中断,需要的话,把指令流水线排空,然后去取中断服务表(vector)中的第一条指令;

软件的开销部分,因为RTOS中存在着关键代码区,这种关键代码区不允许在执行的时候被打断,如果被打断,就会出现不可恢复的错误,OS的内核就是这种关键代码区。所以在关键代码区中要关中断,当然用户写的代码如果认为是关键代码,可以在执行关键代码开始时关中断;

eg,每20微秒发生一次中断,中断服务程序处理时间是15微秒,OS的中断响应延迟是8微秒。这种情况就不能用RTOS。所以中断响应时间是RTOS的一条重要指标。

在实际代码维护中,却是是这样的,有一定中断响应延迟,例如(举例未完待续)。

抢先式调度:高任务一就绪就得到响应

 

一些RTOS的视频与文章:

http://v.youku.com/v_show/id_XNDMyODY1Njgw.html

http://v.youku.com/v_show/id_XMTU1MDkzMzgw.html

http://blog.csdn.net/coolbacon/article/category/816740

http://baike.baidu.com/link?url=h_EW_2VOdC-q1TFwNyuvKYwBC99f0zAFs-5JvdlFnpu7PYevRyPjnOo89PN-Big8wPHHcU_N3w0QI3PBFrY33_

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Micrium是领先的嵌入式间件供应商,它宣布μC/OS-III即将上市。μC/OS-III是用于嵌入式设计的,是扩大了功能的实时操作系统(RTOS)。μC/OS-III具有可以抢占的多任务,数量不受限制的任务和优先级,平等优先级的轮转任务调度(round robin)等特性,它的目标是针对嵌入式开发者。开发者在当前和未来的嵌入式系统项目需要节省时间。 Micrium的总裁兼首席执行官Labrosse 说:“μC/OS-III代表RTOS发展的进程。μC/OS-II诞生于1998年7月,具有丰富的现场至关重要的安全性认证,这限制了本来可以比较容易完成的改变。因此,μC/OS-II将仍然是一个Micrium产品。但是,μC/OS-III满足客户的要求,提供某些改进,解决当今复杂的设计,同时不牺牲现有的质量和干净的,人们已经习惯了的代码。我们的新产品正是如此。” μC/OS-III是可以抢占的多任务内核,始终运行进入就绪态的最重要的任务。μC/OS-III支持无限数量的任务,并允许在运行时,监测堆栈增长的任务。它还支持无限数量的优先级。然而,通常情况下,对于大多数应用,32至256个不同的优先级是足够的。 对于今天的设计,特别有用的是具有同等优先级的轮转调度的任务。μC/OS-III允许多个任务运行在同一优先级,每一个任务运行由用户指定的时间片。每个任务可以定义自己的时间单元,如果其完整的时间单元并不是必需的,每个任务可以放弃时间片。μC/OS-III还允许无限数量的内核对象,如任务,信号量,互斥,信号旗,消息队列,计时器和内存分区。μC/OS-III大部分是运行时可以配置。 μC/OS-III提供接近零的中断停用时间。μC/OS-III有一些内部数据结构和变量,需要获得原子访问权(不能够被打断的)。这些关键区域的保护由锁调度,而不是由禁用中断实现。中断被禁用的时钟周期几乎为零,确保了实时操作系统将能够响应一些最快的中断源。 支持的处理器包括:ARM7/9, Cortex-Mx, Nios-II, PowerPC, Coldfire, i.MX, Microblaze, H8, SH, M16C, M32C, Blackfin,等等。 Micrium是领先的嵌入式间件供应商,它宣布μC/OS-III即将上市。μC/OS-III是用于嵌入式设计的,是扩大了功能的实时操作系统(RTOS)。μC/OS-III具有可以抢占的多任务,数量不受限制的任务和优先级,平等优先级的轮转任务调度(round robin)等特性,它的目标是针对嵌入式开发者。开发者在当前和未来的嵌入式系统项目需要节省时间。 Micrium的总裁兼首席执行官Labrosse 说:“μC/OS-III代表RTOS发展的进程。μC/OS-II诞生于1998年7月,具有丰富的现场至关重要的安全性认证,这限制了本来可以比较容易完成的改变。因此,μC/OS-II将仍然是一个Micrium产品。但是,μC/OS-III满足客户的要求,提供某些改进,解决当今复杂的设计,同时不牺牲现有的质量和干净的,人们已经习惯了的代码。我们的新产品正是如此。” μC/OS-III是可以抢占的多任务内核,始终运行进入就绪态的最重要的任务。μC/OS-III支持无限数量的任务,并允许在运行时,监测堆栈增长的任务。它还支持无限数量的优先级。然而,通常情况下,对于大多数应用,32至256个不同的优先级是足够的。 对于今天的设计,特别有用的是具有同等优先级的轮转调度的任务。μC/OS-III允许多个任务运行在同一优先级,每一个任务运行由用户指定的时间片。每个任务可以定义自己的时间单元,如果其完整的时间单元并不是必需的,每个任务可以放弃时间片。μC/OS-III还允许无限数量的内核对象,如任务,信号量,互斥,信号旗,消息队列,计时器和内存分区。μC/OS-III大部分是运行时可以配置。 μC/OS-III提供接近零的中断停用时间。μC/OS-III有一些内部数据结构和变量,需要获得原子访问权(不能够被打断的)。这些关键区域的保护由锁调度,而不是由禁用中断实现。中断被禁用的时钟周期几乎为零,确保了实时操作系统将能够响应一些最快的中断源。 支持的处理器包括:ARM7/9, Cortex-Mx, Nios-II, PowerPC, Coldfire, i.MX, Microblaze, H8, SH, M16C, M32C, Blackfin,等等。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值