为了账号安全,请及时绑定邮箱和手机立即绑定

请教下任务调度器为什么上锁?

请教下任务调度器为什么上锁?

ucos 任务调度器(调度器上锁函数OSSchedlock() )为什么要上锁 是在什么时候上锁,是在中断的时候来上锁吗
查看完整描述

2 回答

?
FFIVE

TA贡献1797条经验 获得超6个赞

书上讲的很清楚,是在嵌套的时候上锁,并且上锁和开锁函数成对出现,上锁之后不能进行各种信息交流例如信号量,上锁函数其实就是将嵌套层数加1的过程,可以说是一个保护环境、保护现场的作用吧。OSLockNesting是用来表示嵌套层数的。其实ucos里面时钟中断的处理函数就是一个查看优先级就绪表的过程,调度发生在中断的时候,中断的时候可能调度会发生,多层调度会发生嵌套,要上锁

查看完整回答
反对 回复 2023-03-06
?
PIPIONE

TA贡献1829条经验 获得超9个赞

是在嵌套的时候上锁,并且上锁和开锁函数成对出现,上锁之后不能进行各种信息交流例如信号量,上锁函数其实就是将嵌套层数加1的过程,可以说是一个保护环境、保护现场的作用吧。OSLockNesting是用来表示嵌套层数的。其实ucos里面时钟中断的处理函数就是一个查看优先级就绪表的过程,调度发生在中断的时候,中断的时候可能调度会发生,多层调度会发生嵌套,要上锁。

查看完整回答
反对 回复 2023-03-06
  • 2 回答
  • 0 关注
  • 137 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信