Abstract

This research addresses the timeliness of task execution in real-time systems. Specifically, we investigate the dynamic scheduling of tasks with well-defined timing constraints. We present a dynamic optimal uniprocessor scheduling algorithm with an O ( n log n ) worst case complexity. The preemptive scheduling performed by our algorithm is shown to be of higher efficiency than that of other algorithms presented in the literature. Furthermore, tasks may be related by precedence constraints, and they may have arbitrary deadlines and start times (which need not equal to their arrival times). To permit the algorithm’s experimental evaluation, we have embedded the algorithm in a real-time threads package developed for a shared memory multiprocessor. It has shown that the average case performance of the algorithm is much better than that of the worst case. It has also shown that dynamic task scheduling is possible for a large number of tasks with acceptable overhead. Current research concerns the dynamic algorithm’s extension to perform real-time scheduling on multiple processors as well as to schedule tasks with both timing constraints and different levels of criticalness.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call