Systematic programming of scheduling algorithms

This paper applies the technique of systematic (or structured) programming for programming scheduling algorithms as encountered in operating system design. Monitors are used for structuring scheduling algorithms and a synchronizing method is proposed for process scheduling. Some fairly difficult scheduling problems are solved systematically to illustrate the usefulness of the monitor concepts and the synchronizing method. Certain implementation aspects are also discussed.