Non-preemptive scheduling is known for its lower efficiency in meeting
temporal constraints when compared to preemptive scheduling. However,
it is still used in certain cases such as in small multi-tasking
kernels for embedded systems based on simple microprocessors and,
mainly, in message scheduling over serial broadcast buses. Both cases
are typically found in control applications requiring the periodic
execution (or transmission) of a set of tasks (or messages) with low
jitter. This paper shows how such low jitter can be achieved using
inserted idle-time in order to circumvent the typical blocking caused
by non-preemptive scheduling. A schedulability analysis for the case
of fixed priorities is also presented which is based on existing
analysis for preemptive scheduling. Current work is being developed
for the case of dynamic priorities.