2. Операционные системы. Вычислительный процесс. Основные и дополнительные состояния процесса. Прерывание. Операции над процессами.

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

Операционная система - комплекс программ, обеспечивающий:

- выполнение других программ;

- распределение ресурсов;

- планирование;

- ввод-вывод данных;

- управление данными;

- взаимодействие с оператором.

Операционную систему составляют: - монитор; - загрузчик; - супервизор; - планировщик; и - набор системных обслуживающих программ (утилит).

Вычислительный процесс представляет собой программу или задачу в стадии выполнения.

Основные состояния процесса:

1. Состояние активности, когда процесс обладает всеми необходимыми ресурсами и непосредственно выполняется процессором.

2. Состояние готовности, когда процесс имеет все требуемые для него ресурсы, он готов выполняться, однако процессор занят выполнением другого процесса.

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

Дополнительные состояния процесса:

1. Приостановка готовности, когда процесс готов, но задержан и не конкурирует за ЦП.

2. Приостановка блокировки, когда процесс блокирован и задержан. То есть также не будет конкурировать за ЦП.

Дополнительные состояния процессов кратковременны и обычно используются в ОС реального времени при перегрузках ЦП.

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

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

Операции над процессами: Создание; Уничтожение; Запуск; Блокировка; Приостановка; Возобновление; Изменение диспетчерского приоритета процесса (работа с очередями).

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

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

Уничтожение процесса означает удаление его из системы. Ресурсы возвращаются системе, имя процесса удаляется из списка, блок управления процессом освобождается.

Блок управления процессом (Program Control Block - PCB) является центральным объектом в ОС, который определяет процесс и содержит всю необходимую информацию о процессе.

PCB содержит определенные сведения: 1) Текущее состояние процесса (Program Status Word - PSW).(Всего 5 состояний); 2) Уникальный идентификатор процесса; 3) Приоритет;4) Указатели памяти процесса;4) Указатели выданных процессу ресурсов;5) Область сохранения регистров.

Когда ОС переключает ЦП с процесса на процесс, используется область сохранения регистров в PСB, чтобы запомнить информацию, необходимую для возобновления процесса, когда он снова получит ЦП.

Обработка прерываний состоит в следующем: 1)При возникновении прерывания, управление передается в ОС. 2)ОС запоминает состояние прерванного процесса (обычно в PCB прерванного процесса). 3)ОС анализирует тип прерывания и передает управление соответствующему обработчику прерываний. 4)После обработки прерывания ОС либо продолжает выполнять прерванный процесс, либо запускает готовый процесс с наивысшим приоритетом.

Hosted by uCoz