Архитектура современных операционных систем

39 Пример простейшего командного процессора с использованием рассмот- ренных функций приведен на рис. 2.21.: while(1) { cmd=prompt() cmd=verify(cmd) Rv=fork() if(rv==0) { exec(cmd) exit(1) } else s=wait() } Рис. 2.21. Планирование выполнения процессов Unix - система с разделением времени, поэтому время центрального про- цессора выделяется процессам квантами. Отличительной особенностью являет- ся то, что при выделении времени ЦП основным критерием является уже ис- пользованное процессом процессорное время. С каждым процессом связано понятие приоритета и использованного времени ЦП. Для хранения этих вели- чин в системной таблице процессов (СТП) имеются специальные поля: PRTY, CPU. У пользовательских процессов приоритет периодически пересчитывается, причем при этом пересчете учитывается поле CPU. Обычно пересчет приорите- та для пользовательских процессов происходит при переходе процесса из си- стемного в пользовательский режим, а также периодически раз в секунду.

RkJQdWJsaXNoZXIy MTY0OTYy