- •1 Операционная система
- •1.1 Состав ос и назначение ее компонентов (на примере ms dos)
- •1.2 История ос Первый период (1945 -1955):
- •Второй период (1955 - 1965):
- •Третий период (1965 - 1980):
- •Четвертый период (1980 - настоящее время):
- •1.3 Классификация ос
- •Процессы в ос
- •Состояния процесса
- •2.2 Планирование п-сов
- •Приложения
Процессы в ос
Процесс – совокупность использующихся команд, ассоциированных с ней ресурсов в текущий момент выполнения.
Состояния процесса
У процессов есть свои состояния (Рисунок 1).
Рождение
Готовность
Ожидание
Исполнение Закончил исполнение
Рисунок 1 – Диаграмма состояний процесса
создание п-са;
Одноразовые операции завершение п-са;
приостановка п-са;
запуск п-са;
Многоразовые операции блокирование п-са;
разблокирование п-са;
изменение приоритета п-са.
2.2 Планирование п-сов
Планирование - обеспечение поочередного доступа процессов к одному процессору.
Планировщик - отвечающая за это часть операционной системы.
Алгоритм планирования - используемый алгоритм для планирования.
Ситуации, когда необходимо планирование:
Когда создается процесс
Когда процесс завершает работу
Когда процесс блокируется на операции ввода/вывода, семафоре, и т.д.
При прерывании ввода/вывода.
2.2.1 Алгоритм планирования без переключений
Неприоритетный - не требует прерывание по аппаратному таймеру, процесс останавливается только когда блокируется или завершает работу.
2.2.2 Алгоритм планирования с переключениями
Приоритетный - требует прерывание по аппаратному таймеру, процесс работает только отведенный период времени, после этого он приостанавливается по таймеру, чтобы передать управление планировщику.
2.2.3 "Первый пришел - первым обслужен" (FIFO3).
Процессы ставятся в очередь по мере поступления.
Преимущества:
Простота;
справедливость (как в очереди покупателей, кто последний пришел, тот оказался в конце очереди)
Недостатки:
Процесс, ограниченный возможностями процессора может затормозить более быстрые процессы, ограниченные устройствами ввода/вывода.
2.2.4 "Кратчайшая задача - первая"
Преимущества:
Уменьшение оборотного времени;
справедливость (как в очереди покупателей, кто без сдачи проходит в перед)
Недостатки:
длинный процесс занявший процессор, не пустит более новые краткие процессы, которые пришли позже.
3FIFO - First In Fist Out
2.2.5 Наименьшее оставшееся время выполнения
Аналог предыдущего, но если приходит новый процесс, его полное время выполнения сравнивается с оставшимся временем выполнения текущего процесса.
2.2.6 Трехуровневое планирование
Планировщик доступа выбирает задачи оптимальным образом (например: процессы, ограниченные процессором и вводом/выводом).
Если процессов в памяти слишком много, планировщик памяти выгружает и загружает некоторые процессы на диск. Количество процессов находящихся в памяти, называется степенью многозадачности.
Рисунок 2 – Трехуровневое планирование
Системы реального времени делятся на:
жесткие (жесткие сроки для каждой задачи) - управление движением
гибкие (нарушение временного графика не желательны, но допустимы) - управление видео и аудио
Внешние события, на которые система должна реагировать, делятся:
периодические - потоковое видео и аудио
непериодические (непредсказуемые) - сигнал о пожаре
Что бы систему реального времени можно было планировать, нужно чтобы выполнялось условие (1):
(1)
,
где m - число периодических событий
i - номер события
P(i) - период поступления события
T(i) - время, которое уходит на обработку события
Т.е. перегруженная система реального времени является не планируемой.
Для планирования времени использования процессорного времени между пользователями используют следующую формулу (2).
, (2)
где t – время, отведенное пользователю;
T – общее время;
а – количество пользователей.
Заключение
В заключении можно подвести итоги и сравнить выпуски UNIX (Таблица 1), а также разные версии Windows (Таблица 2).
Таблица 1. Сравнение семейства UNIX
Таблица 2. Сравнение семейства Windows