2012-02-27 85 views
0

在嵌入式项目中,我们在决定哪些调度策略,以use.For某些测试用例传递面临的困难,我们需要使用SCHED_OTHER和其他一些测试情况下,我们需要使用SCHED_RR。但如果我们对一些任务和其他设置SCHED_RRSCHED_OTHER,所有的测试用例passing.Was其合法以及是否有任何额外的副作用,在同一项目中的两个政策的这种用法?在同一个项目中使用2种不同的调度策略

+0

为了更清晰我的查询,我有服务任务,口译员任务等。他们将完成通过FrontPanel从用户那里获得输入的工作,并且执行所提供的步骤。如果我设置了策略SCHED_OTHER,那么自动运行的情况就像自动从前面板获取所有输入并连续执行其任务超过5小时一样失败。但是如果我将该策略设置为SCHED_RR,那么它将通过。由于循环赛对高优先级的任务有一定的重要性,因此可能会运行。但对于某些情况下的此政策,我手动提供的输入不被接受。帮帮我 – Gughan 2012-02-28 12:28:07

回答

0

我假设你在谈论Linux?那么是的,完成一些使用SCHED_RR运行的任务以及其他使用SCHED_OTHER运行的任务是完全可以接受的。

请注意,SCHED_RR任务总是会在SCHED_OTHER任务之前运行。因此,如果将任务设置为SCHED_RR,则测试运行得更好并不奇怪。需要注意的是,您的SCHED_RR任务可能会使用100%的CPU,并且会瘫痪SCHED_OTHER任务。当你说某些输入信息正在下降时,可能会发生这种情况。

迈克尔

相关问题