Issue No. 08 - August (1992 vol. 18)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.153383
<p>The authors investigate the dynamic scheduling of tasks with well-defined timing constraints. They present a dynamic uniprocessor scheduling algorithm with an O(n log n) worst-case complexity. The preemptive scheduling performed by the algorithm is shown to be of higher efficiency than that of other known algorithms. Furthermore, tasks may be related by precedence constraints, and they may have arbitrary deadlines and start times (which need not equal their arrival times). An experimental evaluation of the algorithm compares its average case behavior to the worst case. An analytic model used for explanation of the experimental results is validated with actual system measurements. The dynamic scheduling algorithm is the basis of a real-time multiprocessor operating system kernel developed in conjunction with this research. Specifically, this algorithm is used at the lowest, threads-based layer of the kernel whenever threads are created.</p>
hard real-time tasks; real-time threads; dynamic scheduling; timing constraints; worst-case complexity; preemptive scheduling; precedence constraints; real-time multiprocessor operating system kernel; computational complexity; network operating systems; real-time systems; scheduling
H. Zhou and K. Schwan, "Dynamic Scheduling of Hard Real-Time Tasks and Real-Time Threads," in IEEE Transactions on Software Engineering, vol. 18, no. , pp. 736-748, 1992.