Здавалка
Главная | Обратная связь

Свойства и классификация процессов



Понятие процесса и ресурса в вычислительной системе

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

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

Состояния процесса

При исполнении программ на центральном процессоре чаще всего различают следующие характерные отдельные состояния:

- рождение - подготавливаются условия для первого исполнения на процессоре;

- активное состояние - программа исполняется на процессоре;

- ожидание - программа не исполняется на процессоре по причине занятости какого либо ресурса;

- готовность - программа не исполняется, но для ее исполнения предоставлены все необходимые ресурсы, кроме центрального процессора;

- окончание - нормальное или аварийное окончание исполнения программы, после которого процессор и другие ресурсы ей не предоставляются.

Процесс находится в каждом из своих допустимых состояний в течение некоторого времени, после чего переходит в какое-то другое допустимое состояние.

Рис. 1. Диаграмма состояний процесса

Для появления в вычислительной системе процесс должен пройти через состояние рождение. При рождении процесс получает в свое распоряжение адресное пространство, в которое загружается программный код процесса; ему выделяются стек и системные ресурсы; устанавливается начальное значение программного счетчика этого процесса и т.д. Родившийся процесс переводится в состояние готовность. Операционная система, пользуясь каким-либо алгоритмом планирования, выбирает один из готовых процессов и переводит его в состояние исполнение. В состоянии исполнение происходит непосредственное выполнение программного кода процесса. Покинуть это состояние процесс может по трем причинам:

- либо он заканчивает свою деятельность;

- либо он не может продолжать свою работу, пока не произойдет некоторое событие, и операционная система переводит его в состояние ожидание;

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

В конкретных операционных системах состояния процесса могут быть еще более детализированы, могут появиться некоторые новые варианты переходов из состояния в состояние. Так, например, модель состояний процессов для операционной системы Windows NT содержит 7 различных состояний, а для операционной системы UNIX — 9. Тем не менее, в принципе, все операционные системы подчиняются изложенной выше модели.

Свойства и классификация процессов

Для построения средств и механизмов, реализующих совместно систему управления процессами в составе ОС, требуется определить свойства процессов и провести их классификацию в соответствии с этими свойствами.

Процессы определяются временными характеристиками. Интервал времени между порождением и окончанием процесса называется интервалом существования процесса.

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







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.