Hello, Let me start with what I am trying to do: I want to launch a couple of RTX tasks and to force each task to execute for a constant amount of time, after which the scheduler will select another task to run (round robin scheduling will be nice). I have gotten it to work by blocking all tasks on an event, then waking up the appropriate task using a monitor task when the running task execution period has elapsed. but that requires each task (except the monitor of course) to give up its time slice and wait on an event, while I want it to be transparent to the tasks - a task will loss the CPU because the monitor found out that it exceeded its time slice, without taking any other action. and I do not want to replicate what RTX can already offer (assuming it can). the problem is that as far I as could find in the RL-ARM documentation, RTX does not offer such functionality. do you have an idea how I could better tackle this problem? note: I need to have control over the next task to execute so that I can measure its execution time, unless, of course, there exists a feature that I missed!
I have disabled round robin multitasking, now trying to adjust task priorities (it looks promising...). please let me know if you can offer any advise. thanks.
I have disabled round robin multitasking,
Disabled, or enabled? To me, it sounds like round robin multitasking is exactly what you are looking for.
now trying to adjust task priorities (it looks promising...).
If you have a group of tasks that should equally share the CPU, then they need to have the same priority.
Christoph, Thanks for your reply. It seems that RTX allcates a time slice of 5[ms] to each task if round-robin is enabled. so I disabled it, which allows me to deliberately "starve" other tasks which is good only for testing of course. I was able to force the scheduler pick my task by increasing its priority. I will report once I'm out of the woods!
ok, this is not working.
round robin scheduling will be nice
Why did you disable the RTX round robin scheduling? Is the amount of time to big/small? What is wrong with it?
Stefan, I was just fooling around. I was asked to solve a certain problem in a way that I know cannot provide a stable system so I tried to bend the rules a little. Even considered recompiling RTX to get it done. Tomorrow, I will convince the right person to drop it...