可剥夺型内核与不可剥夺型内核的区别

        由于嵌入式系统只有一个CPU,因此在一个具体时刻只能允许多个任务中的一个任务使用CPU。根据系统中的任务获得使用CPU的权利的方式,多任务实时操作系统的内核分为可剥夺型内核和不可剥夺型内核两种类型。但无论在两种类型的内核中,每一种任务都必须具有一个唯一的优先级别来表示它获得CPU的权利。

        不可剥夺型内核也叫合作型多任务内核。在这种内核中,总是优先级别高的任务最先获得CPU的使用权。为防止某个任务始终霸占CPU的使用权,这种内核要求每个任务必须能主动放弃CPU的使用权。

        在可剥夺型内核中,CPU总是运行多个任务中优先级别最高的那个任务,即使CPU正在运行某个低级别的任务,当有高优先级别的任务准备就绪时,该优先级别的任务就会剥夺正在运行任务的CPU使用权,从而使自己获得CPU的使用权。

        由于可剥夺型内核实时性较好,所以目前大多数嵌入式实时操作系统是可剥夺型内核。

一、不可剥夺型内核的执行过程:
(1)当任务A运行时发生中断,进入中断服务程序,使更高优先级任务B就绪。
(2)中断服务执行完毕,返回,继续运行任务A。
(3)直到任务A结束,任务B才获得运行。

不可剥夺型内核原理图

    二、可剥夺型内核的执行过程:
(1)当任务A运行时发生中断,进入中断服务程序,使更高优先级任务B就绪。
(2)中断服务执行完毕,返回,任务B优先级较高,获得运行。
(3)直到任务B结束,任务A才获得运行。

可剥夺型内核原理图


 

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值