ВУЗ:
Составители:
65
принципу обработки в порядке поступления, а процессор обслуживает имею-
щиеся в наличии процессы круговым (round-robin) методом (каждому процессу
в очереди отводится определенный промежуток времени, по истечении которо-
го процесс возвращается обратно в очередь, если он не был блокирован). Одна-
ко даже в таком простом примере, который был описан выше, подобная реали-
зация не является адекватной: некоторые из не выполняющихся процессов го-
товы к выполнению, в то время как другие являются заблокированными и ждут
окончания операции ввода-вывода. Таким образом, при наличии только одной
очереди диспетчер не может просто выбрать для выполнения первый процесс
из очереди. Перед этим он должен будет просмотреть весь список, отыскивая
незаблокированный процесс, который находится в очереди дольше других.
Естественнее было бы разделить все невыполняющиеся процессы на два
типа: готовые к выполнению и заблокированные. Такая схема показана на
рис. 27. Здесь добавлены еще два состояния, которые окажутся полезными в
дальнейшем. Опишем каждое из пяти состояний процессов, представленных на
диаграмме.
• Выполняющийся. Процесс, который выполняется в текущий момент
времени. В настоящей главе предполагается, что на компьютере установ-
лен только один процессор, поэтому в этом состоянии может находиться
только один процесс.
• Готовый к выполнению. Процесс, который может быть запущен, как
только для этого представится возможность.
• Блокированный. Процесс, который не может выполняться до тех пор,
пока не произойдет некоторое событие, например завершение операции
ввода-вывода.
• Новый. Только что созданный процесс, который еще не помещен опера-
ционной системой в пул выполнимых процессов. Обычно это новый про-
цесс, который еще не загружен в основную память.
• Завершающийся. Процесс, удаленный операционной системой из пула
выполнимых процессов.
Состояния «новый» и «завершающийся» представляют собой полезные
конструкции для управления процессами. Первое из них соответствует процес-
су, который был только что определен. Например, если новый пользователь
пытается войти в систему с разделением времени или в систему поступает но-
вое пакетное задание, операционная система может определить новый процесс
в два этапа. Во-первых, она выполняет всю необходимую рутинную работу:
процессу присваивается идентификатор, формируются все необходимые для
управления процессом таблицы. В этот период времени процесс находится в
состоянии нового. Это означает, что операционная система выполнила необхо-
Страницы
- « первая
- ‹ предыдущая
- …
- 63
- 64
- 65
- 66
- 67
- …
- следующая ›
- последняя »