Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Создание процессов. В разделе 3.1 обсуждались события, влекущие за собой создание новых процессов



В разделе 3.1 обсуждались события, влекущие за собой создание новых процессов. Ознакомившись со структурами данных, связанными с процессами, опишем вкратце этапы создания этих процессов.

Если операционная система по какой-либо причине (см. табл. 3.1) приняла решение создать процесс, она может сделать это следующим образом.

1. Присвоить новому процессу уникальный идентификатор. На этом этапе в первичную таблицу процессов вносится новая запись.

2. Выделить пространство для процесса. Сюда включаются все элементы образа процесса. Операционная система должна знать, сколько места нужно для пользовательского адресного пространства (для программ и данных) и для пользовательского стека. Эти значения могут назначаться по умолчанию исходя из типа процесса, или могут быть установлены на основе запроса пользователя при создании задания. Если процесс порождается другим процессом, родительский процесс может передать операционной системе необходимые величины, помес­тив их в запрос на создание процесса. Если вновь создающийся процесс будет использовать какую-то часть адресного пространства совместно с другими про­цессами, необходимо установить соответствующие связи. И, наконец, нужно выделить место для управляющего блока процесса.

3. Инициализировать управляющий блок процесса. Информация о процессе содержит его идентификатор, а также некоторые другие идентификаторы, например идентификатор родительского процесса. Информация о состоянии процессора обычно инициализируется нулевыми значениями, за исключением счетчика команд (который содержит точку входа в программу) и указателей системного стека (задающие границы стека процесса). Инициализация управляющей информации происходит на основе значений, установленных по умолчанию, с учетом атрибутов из запроса на создание процесса. Например, состояние процесса обычно инициализируется значением "готов" или "готов и приос­тановлен". Что касается приоритета, то по умолчанию он может быть установлен минимальным, если не поступил явный запрос на установку более высокого приоритета. Поначалу процесс может не владеть никакими ресурсами (типа устройств ввода-вывода или файлов), если не сделан явный запрос или если эти ресурсы не были переданы по наследству от родительского процесса.

4. Установить необходимые связи. Если операционная система, например, поддерживает очередь планируемых заданий в виде списка со связями, тоновый процесс необходимо поместить в список готовых или готовых приостановленных процессов.

5. Создать или расширить другие структуры данных. Операционная система может, например, поддерживать для каждого процесса файл с учетом используемых ресурсов, который позже будет использован для оценки производительности системы.





Дата публикования: 2014-11-04; Прочитано: 258 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...