24    Процессы. Понятие. Создание процесса. Дескриптор и контекст процесса.

Процесс - единица работы ОС, определяемая содержанием исполняемого кода задачи, загруженного в память. Т.е. процесс-это участок памяти, куда загружено с кодом и данными приложение. Для процесса ОС распределяет все ресурсы (гл. память). Но процесс-это единица - только участок памяти. Чтобы процесс делал действие надо в нем создать поток (хотя бы один). Поток - независимая последовательность вычисленных операций, содержащихся в процессе. Каждый процесс загружен в отдельный, защищенный участок памяти. И общаться друг с другом они могут только через ОС. Потоки получают возможность доступа  друг к другу в пределах одного процесса. Т.о. в пределах одного процесса можно разделить операции (напр. По скорости выполнения: медл.-1 поток, быстр.-2-й). Для потока характерно последовательный переход процессора от 1 команды к др. Для создания процесса надо: 1.создать описатель процесса - это одна(обычно) или несколько информационных структур - дескриптор процесса. Он содержится в памяти. Содержит данные о том, где в памяти содержатся данные модули и данные о степени привилегии процесса для процессора. 2.загрузка кодов и данных в память. Надо найти модуль на диске, найти свободную память и загрузить модуль в память. 3.определение ресурсов, которые необходимы процессу. При этом ОС распределяет все ресурсы, кроме процесса о времени. 4.создать хотя бы один поток, для этого надо сгенерировать еще одну информационную структуру-описатель потока.

Информация в дескрипторе процесса: 1.идентификатор процесса. 2.тип процесса. 3.приоритет процесса. 4.переменная состояния - сведения о состоянии процесса в дан. момент(чтобы можно было приостановить процесс и потом вернуться к нему). 5.адрес защищенной зоны памяти, в которой хранится процесс. 6.свед-я о ресурсах, которые нужны процессу. 7.параметры времени запуска(состояние в момент запуска процесса). Дескриптор создается для каждого процесса, все дескрипторы объединяются в таблице процессов, которая хранится в области памяти доступной только для ядра ОС. Контекст процесса необходим, чтобы можно было восстановить работу процесса после остановки. Содержание контекста процесса: 1.содержимое регистров процессора. 2.информация о всех открытых файлах и незавершенных операциях ввода\вывода.   Контекст хранится в области ОС, но уже не в области ядра, т.е. там где содержатся серверы или модули ОС.

 

Hosted by uCoz