uC/OS-III系统的一些知识(3)(根据《嵌入式实时操作系统uC/OS》--Jean J. Labrosse)

本文详细介绍了uC/OS-III实时操作系统中的任务调度,包括调度触发点、任务切换过程以及中断处理机制。内容涵盖任务调度器的启动情况、任务切换的寄存器保存与恢复,中断的硬件机制、中断服务程序和中断嵌套的管理。还讨论了中断发布消息的直接模式和延迟模式,以及时钟节拍在任务延时和超时判断中的作用。
摘要由CSDN通过智能技术生成

1,任务调度:任务调度器(scheduler,dispatcher),在下列调度点时,调度器会自动启动:

a,任务释放信号里给另一个任务或者想另外一个任务发消息时。任务调用发布服务OSxxPost()时,如果用户指定禁止调度的参数OS_OPT_POST_NO_SCHED(),则不启动调度任务。

b,任务调用延时函数OSTimeDly(),或者OSTimeDlyHMSM(),当任务被插到等待延时的列表中后,启动scheduler。

c,任务等待事件发生而事件还没有发生,任务调用OSxxxPend()函数。

d,任务取消等待,当任务从某一内核对象(信号量,消息队列等)的等待列表中移除时,启动scheduler。

e,创建和删除任务时,启动scheduler。

f,删除一个内核对象

任务改变自身优先级或者其他任务的优先级

任务通过调用OSTaskSuspend()将自身挂起

任务接触挂起某一调用OSTaskSuspend()挂起的任务

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值