关于单调速率算法的问题

15 views
Skip to first unread message

loveQ

unread,
Jul 26, 2009, 11:03:34 PM7/26/09
to RTEMS Chinese User Group
hello
问一个关于单调速率算法的问题
RTEMS中使用单调速率算法,对于同等优先级的任务,周期越短,优先级越高。那任务调度的时候是根据Thread_Control中的那些字
段识别出这个任务是单调任务,又根据那些字段使知道该任务周期的长短以设定任务的优先级呢?
(最近正在读单调周期部分,对这个问题不是很理解,也正在找答案)

冯强

unread,
Jul 26, 2009, 11:17:17 PM7/26/09
to RTEMS Chinese User Group
补充一下,如果是同等优先级,单调任务和正常任务共存,他们如何调度?

xu ray

unread,
Jul 27, 2009, 10:37:44 PM7/27/09
to rtems-chines...@googlegroups.com
对于单调周期调度,并不是完全依赖于线程调度机制来实现的。每个RMS任务都关联一个watchdog。
初始化RMS任务的时候,也初始化watchdog。在每次启动RMS任务,就将周期传入watchdog,操作系统通过监控watchdog状态来更新RMS任务的状态(比如是否正常完成,是否应该开始等等)
如果多种任务并存,则需要看各个任务的优先级。调度的时候还是以优先级为基础调度。任务周期不会改变任务本省的优先级。只是说,同等优先级情况下,短周期RMS任务比长周期的优先执行。
建议看看tmtest和sptest里面的例子,有条件的话用虚拟机运行一下。

2009/7/27 loveQ <fengqia...@yahoo.com.cn>



--
Thanks & Best Regards!

Ray, Xu

冯强

unread,
Jul 28, 2009, 2:14:58 AM7/28/09
to RTEMS Chinese User Group
thank you !!!

On Jul 28, 10:37 am, xu ray <rayx...@gmail.com> wrote:
> 对于单调周期调度,并不是完全依赖于线程调度机制来实现的。每个RMS任务都关联一个watchdog。

> 初始化RMS任务的时候,也初始化watchdog。在每次启动RMS任务,就将周期传入watchdog,操作系统通过监控watchdog状态来更新RMS-任务的状态(比如是否正常完成,是否应该开始等等)
> 如果多种任务并存,则需要看各个任务的优先级。调度的时候还是以优先级为基础调度。任务周期不会改变任务本省的优先级。只是说,同等优先级情况下,短周期RMS-任务比长周期的优先执行。
> 建议看看tmtest和sptest里面的例子,有条件的话用虚拟机运行一下。
>
> 2009/7/27 loveQ <fengqiang851...@yahoo.com.cn>

Reply all
Reply to author
Forward
0 new messages