Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проверочные и экзамен / Вопросы к экзамену по операционным системам 080500.doc
Скачиваний:
394
Добавлен:
25.02.2015
Размер:
1.18 Mб
Скачать
  1. Модель жизненного цикла процесса.

Жизненный цикл процесса.

Двухуровневая модель: исполняется и не исполняется.

  • Любому процессу при его рождении присваивается статус «не исполняется».

  • Как только планировщик выбирает этот процесс для исполнения, процесс получает статус «исполняется».

  • Поле исполнения он может завершиться, либо снова получить статус «не исполняется» и ожидать время на исполнение.

В данной модели невозможно различить, по какой причине процесс получил статус «не исполняется». Данная модель сейчас нигде не реализуется.

Трехуровневая модель: исполняется, готовность состояния процесса, ожидание.

  • Процесс при порождении может выполняться.

  • Из готовности планировщик переводит процесс в статус «исполняется».

  • После исполнения процесс либо завершается, либо отправляется в ожидание. За состоянием ожидания следит определенный процесс ядра ОС.

  • После прерывания ожидания процесс переходит в статус готовности. И снова к исполнению.

Любая современная ОС поддерживает данную модель.

Пятиуровневая модель: исполняется, готовность, ожидание, рождение, завершение.

  • Рождение – растянутый этап, на котором ОС решает, стоит ли рождать этот процесс. На этом этапе у процесса нет PCB.

  • После рождения процесс переходит в статус «готовность».

  • Из готовности планировщик переводит процесс в статус «исполняется».

  • После исполнения процесс либо завершается, либо отправляется в ожидание. За состоянием ожидания следит определенный процесс ядра ОС.

  • После прерывания ожидания процесс переходит в статус готовности. И снова к исполнению.

  • Завершение – растянутый этап завершения процесса: освобождения памяти, нахождение родителя. Процесс находится в завершении значительное время пока ОС в поисках.

Семиуровневая модель: пятиуровневая модель + исключительная ситуация + зомби-состояние (только для Linux).

  • Если в процессе исполнения возникает ошибка, процесс отправляется в исключительную ситуацию. После решения ошибки из исключительной ситуации процесс получает статус готовности.

  • Выход из зомби процесса не всегда возможен.

  1. Виды планирования и их место в жизненном цикле процесса.

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

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

Вид планирования

Выполняемые функции

Долгосрочное

Решение о добавлении задания (процесса) в пул выполняемых в системе

Среднесрочное

Решение о добавлении процесса к числу процессов, полностью или частично размещенных в основной памяти

Краткосрочное

Решение о том, какой из доступных процессов (потоков) будет выполняться процессором

Планирование ввода-вывода

Решение о том, какой из запросов процессов (потоков) на операцию ввода-вывода будет выполняться свободным устройством ввода-вывода

ИЗ ЛЕКЦИЙ:

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

1. Краткосрочное планирование (между готовностью и исполнением процессов, на уровне диспетчеризации процессов) – не сильно влияет на работу ОС.

2. Долгосрочное планирование (между рождением и статусом готовности) – надолго меняется работа ОС.

3. Среднесрочное планирование (1. между готовностью процесса в оперативной памяти и готовностью процессов не в оперативной памяти; 2. между ожиданием в оперативной памяти и не в оперативной памяти) – сбрасывание из оперативной памяти не скоро выполняющихся процессов.

4. Планирование доступа к отдельным устройствам – например, планирование устройств ввода-вывода, планировщик будет столько, сколько устройств ввода-вывода.