Hello folks,
This is more likely a question for QNX4 kernel developers - a customer
confused me a bit with it, trying last resort - does anyone know that?
Let’s imagine that one of several same-priority processes which have a
round-robin scheduling asinged to them is pre-empted by a higher
priority process in the middle of its timeslice. When it gets the CPU
back, will it get the rest of the interrupted timeslice, or a new
whole one?
A bit weird question, but I got really curious about that myself. )
Thanks a bunch.
Nikolai Gorbunov <n.gorbunov@swd.ru> wrote:
Hello folks,
This is more likely a question for QNX4 kernel developers - a customer
confused me a bit with it, trying last resort - does anyone know that?
Let’s imagine that one of several same-priority processes which have a
round-robin scheduling asinged to them is pre-empted by a higher
priority process in the middle of its timeslice. When it gets the CPU
back, will it get the rest of the interrupted timeslice, or a new
whole one?
My understanding is that it gets the rest of the pre-empted timeslice.
If it didn’t, it could end up running forever, and that would be bad.
A bit weird question, but I got really curious about that myself. > > )
Not all that weird.
-David
QNX Training Services
dagibbs@qnx.com
So if it is interrupted after 9/10ths of its time slice, when it is
rescheduled how do you give it 1/10th of a time slice?
Any why?
David Gibbs <dagibbs@qnx.com> wrote in message
news:93kobp$jbt$1@nntp.qnx.com…
Nikolai Gorbunov <> n.gorbunov@swd.ru> > wrote:
Hello folks,
This is more likely a question for QNX4 kernel developers - a customer
confused me a bit with it, trying last resort - does anyone know that?
Let’s imagine that one of several same-priority processes which have a
round-robin scheduling asinged to them is pre-empted by a higher
priority process in the middle of its timeslice. When it gets the CPU
back, will it get the rest of the interrupted timeslice, or a new
whole one?
My understanding is that it gets the rest of the pre-empted timeslice.
If it didn’t, it could end up running forever, and that would be bad.
A bit weird question, but I got really curious about that myself. > > )
Not all that weird.
-David
QNX Training Services
dagibbs@qnx.com
Bill at Sierra Design <BC@sierradesign.com> wrote:
So if it is interrupted after 9/10ths of its time slice, when it is
rescheduled how do you give it 1/10th of a time slice?
Well, the resolution may not make it down to the 9/10 vs 1/10 – depending
on the relationship between the timeslice and the ticksize. (The OS can
only see time in units of a tick.)
But, my understanding is that the OS does try to do this.
-David
QNX Training Services
dagibbs@qnx.com
I assume that means that if there was a fraction of a tick, then when the
higher priority process releases the processor then teh lower priority
process gets the remainder of the current tick.
David Gibbs <dagibbs@qnx.com> wrote in message
news:93lenp$2bh$1@nntp.qnx.com…
Bill at Sierra Design <> BC@sierradesign.com> > wrote:
So if it is interrupted after 9/10ths of its time slice, when it is
rescheduled how do you give it 1/10th of a time slice?
Well, the resolution may not make it down to the 9/10 vs 1/10 – depending
on the relationship between the timeslice and the ticksize. (The OS can
only see time in units of a tick.)
But, my understanding is that the OS does try to do this.
-David
QNX Training Services
dagibbs@qnx.com