Modeling operating systems schedulers with multi-stack-queue grammars
This original method for specifying and checking the sequences of events taking place in process scheduling brings the classical syntax-directed approach of compilation to this new area. The formal language of scheduling events cannot be specified by BNF grammars, but we use instead the Augmented BNF grammars, which combine breadth-first and depth-first derivations. Their recognizers feature one or more FIFO or LIFO tapes. The basic scheduling policies are covered: FCFS, time-slicing, mutex. Combined policies, such as readers/writers and background/foreground, are obtainable by composition. Constraints on the minimum number of data structures (i.e. queues) for priority scheduling policies may be proved by using a pumping lemma. The construction of schedule checkers is presented in the form of augmented LL(1) parsers. For scheduling algorithms, such as shortest job first, which depend on parameters and in particular on time, a syntax-directed approach is proposed, which adds semantic attributes and functions to the underlying augmented BNF grammar.
KeywordsSchedule Algorithm Schedule Policy First Come First Serve Pushdown Automaton Input Head
Unable to display preview. Download preview PDF.
- Breveglieri, L., Cherubini, A., Crespi Reghizzi, S: Real-Time Scheduling by Queue Automata, in LNCS Formal Techniques in Real-Time and Fault-Tolerant Systems’ 92, n. 571, (J. Vytopil, ed.), pp. 131–148, Springer Verlag, 1992Google Scholar
- Breveglieri, L., Cherubini, A. Citrini, C., Crespi Reghizzi, S.: Multi-Pushdown Stack Languages and Grammars, International Journal of Foundation of Computer Science, World Scientific, n., pp., 1996Google Scholar
- Breveglieri, L., Cherubini, A., Crespi Reghizzi, S: Syntax-Directed Scheduling, Int. Rep. 98-048, Dip. di Elettronica e Informazione, Politecnico di Milano, 1998Google Scholar
- Cherubini, A., Citrini, C., Crespi Reghizzi, S., Mandrioli, D.: Breadth and Depth Grammars and Dequeue Automata International Journal of Foundations of Computer Science, World Scientific, vol. 1, n. 3, pp. 219–232, 1990Google Scholar
- Floyd, R., Beigel, R.: The Language of Machines, Freeman, 1994Google Scholar
- Ginsburgh, S.: The mathematical Theory of Context-free Languages, McGraw-Hill, New York, 1968Google Scholar
- Manna, Z.: Mathematical Theory of Computation, McGraw Hill, New York, 1974Google Scholar
- Galvin, P., Silberschatz, A.: Operating Systems Concepts, Addison Wesley, Reading, 1994Google Scholar