Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Презентации лекций в одном файле

.pdf
Скачиваний:
15
Добавлен:
27.05.2024
Размер:
10.25 Mб
Скачать

Структура PCB

PCB хранит информацию:

Уникальный идентификатор процесса, пользователь

Состояние в котором находится процесс

Текущий приоритет

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

Содержимое регистров процесса

Адресное пространство (и стеки)

Связанные устройства ввода-вывода (файлы)

Область хранения регистров (для рестарта)

Граф состояний процесса

Порождение

Допуск к планированию

Готовность

Событие

произошло

Прерывание по таймеру ( t)

Выбран для исполнения

Активное

Активное

Ожидание

события

Ожидание

Time - out

Завершение

работы

Завершение

Управление процессами

На однопроцессорных системах в каждый момент времени выполняется только один процесс

В мультипроцессорных системах процессоры могут исполнять как общий, так и различные процессы

Операции над процессами

Создание / Завершение

Приостановка / Запуск

Блокирование / Разблокирование

Изменение приоритета процесса

Граф состояний процесса (2)

Порождение

Допуск к планированию

Готовность

Приостановлен - готов

Прерывание по таймеру ( t)

 

 

Завершение

Выбран для

 

работы

исполнения

 

 

 

Активное

Завершение

 

 

Time - out

Ожидание Ожидание события

Активное

Приостановленное

Событие произошло Приостановлен -

блокирован

Резюме

Существует несколько типов ОС …….

Основная функция ОС – управление процессами

Для описания процесса в ОС используется

PCB

Основные состояния процесса отображаются на графе состояний

ОС управляет всеми переходами на этом графе

Прерывание.

это событие, при котором меняется последовательность команд, выполняемых процессором.

Что происходит после прерывания?

Управление передается ОС

ОС запоминает состояние прерванного процесса (например в PCB)

Передача управления соответствующей программе обработчику прерывания

Обработка прерываний

IRQ0

IRQ1

IRQ2

0/1

IRQ7

 

0 1 2 3 4 5 6 7

&

&

&

&

&

 

 

 

 

 

 

 

MEM

 

 

 

 

 

 

IH table

 

 

 

 

 

 

 

 

 

 

CPU

 

ADR IH0

 

 

 

 

N IRQ

 

 

ADR IH1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

IH1

4*NIRQ+ADRIHtable=ADRIH

Регистр маски

Типы прерываний.

SVC прерывание (super visor call instruction) - программа вызывает супервизор – ОС, то есть требует системную услугу.

 

 

 

 

 

 

IH

 

 

 

 

 

 

 

 

 

 

 

программа

 

SVC

 

ОС

 

обработка

 

ОС

пользователя

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

то есть SVC – механизм не позволяет получать программе пользователя системные ресурсы без контроля со стороны ОС (механизм доступа, паролей и так далее)

Типы прерываний (продолжение).

I/O прерывание: инициатор – устройство ввода-вывода (изменение его состояния)

Внешнее прерывание (оператор, другой процессор)

Прерывание по рестарту (при сигнале рестарт процессору)

Прерывание по ошибке программы

Прерывание по ошибке ЭВМ

Обработчики прерываний.

Для каждого типа прерывания существует свой

IH (interrupt handler) = обработчик прерываний.

Система передает управление IH способом

PSW (program status word) - слово состояния

программы – управляет порядком выполнения

команд и содержит информацию о процессе.

PSW бывает: текущее(current), новое(new), старое(old).

Как реализуется этот механизм?