打印

谁愿意给我解释下 MCU 时间片轮转啊

[复制链接]
2257|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
guoqi|  楼主 | 2008-1-6 08:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
古道热肠| | 2008-1-6 10:44 | 只看该作者

这任务调度器不简单

任务调试器是总管,具有至高无上的权力,分任务给CPU做时,得作好多初始工作,把CPU内部的各种寄存器赋初值,安排好椎栈等等。。。。。然后叫CPU开始干当前的活,时间到,马上叫停,然后总管保存现场,安排CPU干其它的活,待下一个轮回,又恢复现场,继续执行未完成的事业。
  时间片轮转难度大,建议用任务轮转机制,任务完成了,放弃CPU的占用权,总管收回资源,完成其它任务。
  可参考操作系统的教材,有详细介绍。

使用特权

评论回复
地板
happystar| | 2008-1-6 12:21 | 只看该作者

re 主要是涉及到任务堆栈,保存上下文问题。

我也不懂,向大家请教。

使用特权

评论回复
5
原野之狼| | 2008-1-6 12:26 | 只看该作者

基于任务轮转就不需要任务堆栈及保存上下文

使用特权

评论回复
6
guoqi|  楼主 | 2008-1-6 12:37 | 只看该作者

to 2楼 and 5楼

能给大伙介绍下,基于任务轮转的调度工作原理。
难道是
switch(..)
{
   case 1:
   func1(..)
   break;
   case 2:
   func2(..)
   break;
}

不懂?

给我们这些没有弄懂的人科普一下,,,,,

使用特权

评论回复
7
原野之狼| | 2008-1-6 12:39 | 只看该作者

我贴的代码里面有。。。

使用特权

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

本版积分规则

11

主题

57

帖子

0

粉丝