倔强顽童小焱 发表于 2019-5-17 09:21:12

FreeRTOS动态改变时间片大小

想请问一下,FreeRTOS里在宏定义处有一个设置时间片大小的宏,那可以在其他代码中修改宏的值,改变时间片大小吗?
现在我想做的是调度算法的优化,在同优先级调度的情况下,如果任务最后的截止时间小于时间片大小,就改变时间片的值,使任务直接运行完成。
现在对底层还不了解,好多东西弄不出来,挺着急的,有熟悉的嵌友可以提供一下帮助吗,谢谢了。

eric2013 发表于 2019-5-17 10:10:22

FreeRTOS不支持
FreeRTOS虽然支持时间片调度,但是不支持时间片个数的设置,可以理解为仅支持1个时间片
http://www.armbbs.cn/forum.php?mod=viewthread&tid=21135&fromuid=58
(出处: 安富莱电子论坛)


倔强顽童小焱 发表于 2019-5-17 10:31:58

eric2013 发表于 2019-5-17 10:10
FreeRTOS不支持
FreeRTOS虽然支持时间片调度,但是不支持时间片个数的设置,可以理解为仅支持1个时间片
h ...

谢谢,现在我做的是调度算法的优化,这个不行的话,如果你了解可以推荐一些其他的优化策略给我吗,现在挺着急的,刚刚学FreeRTOS,做的是调度算法的优化,感觉现在能力有限,完成不了毕设任务,马上就要提交了,内心好煎熬,:Q:L

eric2013 发表于 2019-5-17 10:41:18

倔强顽童小焱 发表于 2019-5-17 10:31
谢谢,现在我做的是调度算法的优化,这个不行的话,如果你了解可以推荐一些其他的优化策略给我吗,现在挺 ...

你这个是的研究方向稍有问题,执行时间小于时间片,你可以释放CPU权限的。无需修改时间片。

倔强顽童小焱 发表于 2019-5-17 10:46:50

eric2013 发表于 2019-5-17 10:41
你这个是的研究方向稍有问题,执行时间小于时间片,你可以释放CPU权限的。无需修改时间片。

这个我暂时还不太了解,就是如果任务截止时间小于时间片,可以继续执行该任务吗,这个阶段不执行任务切换,减少切换的损耗,这个可行吗

倔强顽童小焱 发表于 2019-5-17 11:32:20

eric2013 发表于 2019-5-17 10:41
你这个是的研究方向稍有问题,执行时间小于时间片,你可以释放CPU权限的。无需修改时间片。

请问如何使任务继续执行,而不发生时间片调度切换,谢谢

eric2013 发表于 2019-5-17 14:02:48

倔强顽童小焱 发表于 2019-5-17 11:32
请问如何使任务继续执行,而不发生时间片调度切换,谢谢

现在有个问题就是你的这个毕设主题方向是不是确定就是这个了。

倔强顽童小焱 发表于 2019-5-17 20:05:44

eric2013 发表于 2019-5-17 14:02
现在有个问题就是你的这个毕设主题方向是不是确定就是这个了。

现在毕设主要是弄FreeRTOS调度算法的优化,是已经确定了,感觉自己能力有限,对底层也不太了解,也想不出具体要优化一些啥的,挺着急的,马上也快要交了,特别难受的。

eric2013 发表于 2019-5-18 11:23:05

倔强顽童小焱 发表于 2019-5-17 20:05
现在毕设主要是弄FreeRTOS调度算法的优化,是已经确定了,感觉自己能力有限,对底层也不太了解,也想不出 ...

时间片调度方向可以搞的东西少,不同写出东西来。别的方向倒是有一些可以研究的。

倔强顽童小焱 发表于 2019-5-18 16:15:54

eric2013 发表于 2019-5-18 11:23
时间片调度方向可以搞的东西少,不同写出东西来。别的方向倒是有一些可以研究的。

现在也没什么时间了,就是刚好看到了一个时间片优化了,如今就是能起一些作用,稍微有一点提升就行,毕竟毕设这个任务要完成,好捉急啊。:'(

eric2013 发表于 2019-5-19 00:56:13

倔强顽童小焱 发表于 2019-5-18 16:15
现在也没什么时间了,就是刚好看到了一个时间片优化了,如今就是能起一些作用,稍微有一点提升就行,毕竟 ...

刚好看到你就搞这个,稍微随意了些,这个方向没啥搞头。搞个低功耗都比这个有东西写

倔强顽童小焱 发表于 2019-5-19 11:02:57

eric2013 发表于 2019-5-19 00:56
刚好看到你就搞这个,稍微随意了些,这个方向没啥搞头。搞个低功耗都比这个有东西写

哎,可惜已经确定了,现在也没办法了,当初也根本不知道的,现在只能自己瞎折磨了,:L,就是希望随便能完成就行了。
页: [1]
查看完整版本: FreeRTOS动态改变时间片大小