Hi,
I have 2 questions on the RT part in DROPS:
1.) I have 2 RT working threads, each with 3 timeslices: Thread 1: period=10ms ts1=30ms prio1=50 ts2=10ms prio2=30 ts3=20ms prio3=50
Thread 2: period=10ms ts1=20ms prio1=40 ts2=5ms prio2=30 ts3=10ms prio3=40
Assume both threads are ready at the same time. So thread 1 starts and does its work until it releases the voluntarily or it's preempted by its preempter-thread. So say it releases voluntarily after 20ms.
Who will get the left 10ms? I guess nobody. Or can I assign my left time to a specific thread, say ts2 of thread 1, that is has 20ms after recognizing that ts1 was finished 10ms earlier?I could do with l4_rt_change_timeslice(), but this would probably not work for the the current period! (or yes?)
I could even imagine that it would work in my case described above, as thread 2 would be next after ts1 of thread 1, but consider thread 2 didn't exist...
2.) Consider we have a deadline miss. And we say l4_rt_next_period(): would it wait for the beginning of the next (which means: period 1: deadline miss period 2: call next period (because we think we're still in period 1)+ wait to end of period period 3: normal work) Or do I have to care that we do not call l4_rt_next_period() in case of a deadline miss?
BTW: I compiled the fiasco-kernel with apic+one shot mode. But this should not be relevant for my question.
Regards, Rene
l4-hackers@os.inf.tu-dresden.de