Операционная система
Базовые понятия Операционная система – это комплекс программ, обеспечивающий контроль за существованием, распределением и использованием ресурсов ВС. Процесс – это совокупность машинных команд и данных, исполняющаяся в рамках ВС и обладающая правами на владение некоторым набором ресурсов. Разделяемые ресурсы – ресурсы, которые могут одновременно принадлежать двум или более процессам. Предварительная декларация ресурсов Динамическое дополнение списка ресурсов
Свойства ОС надежность защита эффективность предсказуемость
Ядро (kernel) – резидентная часть ОС, работающая в режиме супервизора. («обычно» работает в режиме физической адресации). аппаратура Интерфейсы системных вызовов (API – Application Program Interface) Динамически подгружаемые драйверы физических и виртуальных устройств Ядро ОС Динамически подгружаемые драйверы устройств: резидентные / нерезидентные работают в пользовательском режиме / в режиме супервизора «Системный вызов» - обращение к ОС за предоставление той или иной функции ( возможности, услуги, сервиса).
Структура ОС. Пример структурной организации классической системы Unix. Программы пользователя Библиотеки Интерфейс системных вызовов Файловая подсистема Взаимодействие между процессами Планировщик Управление памятью Буфер Байт- ориентированные устройства Блок- ориентированные устройства Драйверы устройств Уровень аппаратного обеспечения Аппаратное обеспечение Монолитное ядро. Уровень пользователя
Структура ОС. Микроядро Драйвер устройства... Управление процессами... Файловая система... аппаратура Микроядерная архитектура
Логические функции ОС управление процессами управление ОП планирование управление устройствами и ФС
Управление процессами Модельная ОС Буфер ввода процессов Формирование необходимых процессу структур данных Буфер обрабатываемых процессов Хранение находящихся в системе процессов
Жизненный цикл процесса Ожидает завершение операции ввода/вывода 2 Ожидает начала обработки ЦП 0 4 Обрабатывается ЦП 1 Ожидает продолжения обработки ЦП Завершен 7
Пакетная ОС Системы разделения времени ОС реального времени Типы операционных систем
Переключение выполнения процессов происходит только в одном из случаев: Выполнение процесса завершено Возникло прерывание Был фиксирован факт зацикливания процесса Пакетная ОС Пакет программ – некоторая совокупность программ, для выполнения каждой из которых требуется «значительное» время работы процессора
Переключение выполнения процессов происходит только в одном из случаев: Исчерпался выделенный квант времени Выполнение процесса завершено Возникло прерывание Был фиксирован факт зацикливания процесса Системы разделения времени Квант времени ЦП – некоторый фиксированный ОС промежуток времени работы ЦП
ОС реального времени Системы реального времени являются специализированными системами в которых все функции планирования ориентированы на обработку некоторых событий за время, не превосходящее некоторого предельного значение