Современные операционные системы

Современные операционные системы
Процессы и потоки / Создание процесса

Создание процесса




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

Существуют четыре основных события, приводящие к созданию процессов:

1. Инициализация системы.

2. Выполнение работающим процессом системного вызова, предназначенного для создания процесса.

3. Запрос пользователя на создание нового процесса.

4. Инициация пакетного задания.

При запуске операционной системы создаются, как правило, несколько процессов. Некоторые из них представляют собой высокоприоритетные процессы, то есть процессы, взаимодействующие с пользователями и выполняющие для них определенную работу. Остальные являются фоновыми процессами, не связанными с конкретными пользователями, но выполняющими ряд специфических функций. Например, фоновый процесс, который может быть создан для приема входящих сообщений электронной почты, основную часть времени проводит в спящем режиме, активизируясь только по мере появления писем. Другой фоновый процесс, который может быть создан для приема входящих запросов на веб-страницы, размещенные на машине, просыпается при поступлении запроса с целью его обслуживания. Фоновые процессы, предназначенные для обработки какой-либо активной деятельности, связанной, например, с электронной почтой, веб-страницами, новостями, выводом информации на печать и т. д., называются демонами. Обычно у больших систем насчитываются десятки демонов. В UNIX для отображения списка запущенных процессов может быть использована программа ps. В Windows для этой цели может быть использован диспетчер задач. Скачать книги по военной технике в формате PDF.



Полное описание: Создание процесса




С этим описанием рассматриваются следующие темы:


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

Свопинг
Если у компьютера достаточный объем памяти для размещения всех процессов, то все рассмотренные до сих пор схемы будут в той или иной степени работоспособны. Но на практике суммарный объем оперативной памяти, необходимый для размещения всех процессов, зачастую значительно превышает имеющийся объем ОЗУ. На обычных Windows- или Linux-системах при запуске компьютера могут быть запущены около 40-60 или более процессов. Например, при установке приложения Windows зачастую выдаются команды, чтобы при по ... Читать

Процессы компьютера
Современные компьютеры, как правило, заняты сразу несколькими делами. Возможно, люди, привыкшие к работе с персональными компьютерами, не до конца осознают этот факт, поэтому рассмотрим ряд примеров. Сначала представим себе веб-сервер. К нему отовсюду приходят запросы, требующие предоставления веб-страниц. Когда приходит запрос, сервер проверяет, нет ли нужной страницы в кэше. Если она там присутствует, он отправляет эту страницу; если ее там нет, осуществляется запрос к диску для ее извлечения. ... Читать

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

Взаимодействие с пользователем
Если бы программа была рассчитана на работу только одного потока, то с начала создания резервной копии на диске и до его завершения игнорировались бы команды с клавиатуры или мыши. Пользователь ощущал бы это как слабую производительность. Можно было бы сделать так, чтобы события клавиатуры или мыши прерывали создание резервной копии на диске, позволяя достичь более высокой производительности, но это привело бы к сложной модели программирования, основанной на применении прерываний. Программная мо ... Читать