打印
[uCOS/RTOS]

问关于任务的抢占和切换。

[复制链接]
876|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wyq165|  楼主 | 2014-11-4 17:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
假如有两个任务
一个扫描任务,平时花费的时间是15MS。
一个是通信任务,负责从中断内收到数据帧,处理后返回。

通信任务讲究迅速,接到帧后能尽快的处理,然后回发。
而扫描任务却是很重要。
通信的任务采用中断接收帧后,通过信号量来触发。
而扫描任务是周期性的。
通信任务由于实时性要求高,优先级设高一些。
我想问: 扫描任务里面若不调用 延时这类可以在等待中放弃CPU所有权的函数。那平时通信任务没有触发的时候。系统内核是不是只在时钟节拍中断内才会检查任务就绪表。

相关帖子

沙发
hotyong| | 2014-11-6 11:18 | 只看该作者
不是,只要是被OS管理的中断都会在中断退出时检查就绪表,从而决定是回到原任务或者执行任务切换。
而一般情况除非必要都会将中断交给OS管理, 也就是一般在中断服务程序最后会有一行 OSIntExit(); 这个函数里就有查询就绪表

使用特权

评论回复
板凳
wyq165|  楼主 | 2014-11-6 19:29 | 只看该作者
本帖最后由 wyq165 于 2014-11-6 19:30 编辑
hotyong 发表于 2014-11-6 11:18
不是,只要是被OS管理的中断都会在中断退出时检查就绪表,从而决定是回到原任务或者执行任务切换。
而一般 ...


谢谢,我知道你说的情况。我是说中断不触发的时候(也就是通信任务一直没等到信号量,一直放弃CPU所有权)。


使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

40

主题

357

帖子

7

粉丝