- •Часть 1
- •Жизненный цикл выполнения программы
- •Управление оперативной памятью
- •Вторая стратегия: Распределение разделами
- •Третья Стратегия : Выделение перемещаемыми разделами
- •Логическая схема алгоритма перемещения
- •Алгоритмы обслуживания и вытеснения страниц
- •Шестая стратегия: Сегментное распределение
- •Четвертая стратегия: Выделение страницами
- •Пятая стратегия: Выделение страниц по запросу
- •Реализация виртуальной памяти
- •Седьмая стратегия: Странично-сегментное распределение
- •Резюме (Итоги)
- •Семь схем распределения памяти
- •Методы обеспечения виртуальной памяти
- •Основные термины
- •Адресация
- •Эффекты
- •Управление процессами
- •Понятие дескриптора
- •Прерывания
- •Планирование и диспетчеризация процессов и задач
- •Планирование заданий в системах без мультипрограммирования
- •Диспетчеризация в системах с мультипрограммированием
- •Синхронизация заданий и процессов
- •Резюме по управлению процессами
- •Основные понятия:
- •Виды вычислительных процессов:
- •Управление процессами. Задачи:
- •Функциональные компоненты ос по управлению процессами:
- •Место функциональных компонентов на схеме «Жизненный цикл задания»
- •Прерывания и механизм прерывания:
- •Функции по управлению задачами:
- •Диспетчеризация:
- •Конфликтные ситуации:
- •Управление информацией и внешними устройствами
- •Файловая система
- •Задача 1. Минимизация операций в/в
- •Управление внешними устройствами
- •Накопители на магнитных дисках
- •Резюме: Управление информацией и внешними устройствами
- •Основные понятия
- •Единицы хранения информации:
- •2. Управление информацией.
- •3. Структура файловой системы:
- •4. Структуры данных:
- •5. Доступ к данным:
- •4. Физический уровень файловой системы:
Седьмая стратегия: Странично-сегментное распределение
Идея: Адресное пространство задания разбивается на куски – сегменты,а сегменты при размещении их в ОП разбиваются на куски фиксированного размера - страницы. Странице назначаются блоки оперативной памяти
+ Все достоинства сегментной схемы и страничной
– Фрагментация внутри последней страницы каждого сегмента
– Возможно явление пробуксовки (объемные по времени алгоритмы)
Резюме (Итоги)
Семь схем распределения памяти
Одиночное распределение (Dos. Более молодые версии Dos работают с одиночным распределением с перекрытием – оверлейная структура)
Распределение разделами
– статическое
– динамическое
– выделение перемешаемыми разделами (MVT(IBM 360/370))
Страничное распределение (статическое, по запросам) UNIX, W95/W98, WINNT
Странично-сегментное распределение (OS/2, WINNT, LINUX)
Методы обеспечения виртуальной памяти
Деление адресного пространства на куски
Взаимодействие с внешней памятью
Основные термины
Единицы деления адресного пространства заданий:
страница – кусок адресного пространства задания фиксированного размера;
сегмент – логически законченный кусок адресного пространства задания произвольного размера;
единицы управления физической оперативной памятью:
блок – кусок оперативной памяти фиксированного размера. Объем обычно равен объему страницы;
раздел - кусок оперативной памяти, выделенный заданию целиком. Объем обычно > или= объему задания;
сегмент - логически законченный кусок физической ОП произвольного размера
термины виртуальной памяти:
свопинг – кусок внешней памяти, куда задание загружается целиком;
файл подкачки – кусок внешней памяти, содержащей отдельные страницы адресного пространства
Правила обслуживания очередей – Используется при определения кандидата на получение памяти и кандидата на удаление из ОП.
FIFO – Windows NT
LIFO -
LRU (last recently used – реже всех используемый) – Unix, OS/2, Linux,
LFU (last frequenly used – дольше всех используемый)
Random
Адресация
Адресное пространство – область относительных адресов задания;
Относительный адрес – адрес, имеющий две составляющие SEG:OFFSET (это определение может применяться как относительно адр. пространства, так и относительно физической памяти);
Абсолютный адрес – адрес физической оперативной памяти – исполнительный адрес.
Эффекты
Фрагментация – наличие в физ. памяти выделенного, но не используемого куска
Пробуксовка – превалирование выполнения системных процессов над прикладными процессами; эффект для пользователя – программа долго выполняется.
Решето — разделение на мелкие фрагменты с течением времени
Управление процессами
Функции управления:
1. Отслеживание состояния занятости процессора каким-либо процессом (какое время и в каком режиме);
2. Решение о выделении времени процессора какому-либо процессу на основе какой-либо стратегии (существует очередь процессов на выполнение, значит, надо каким-то образом их из очереди выбирать на выполнение);
3. Выделение процессорного времени;
4. Освобождение процессора от процесса.
Говоря об управлении процессорами, мы будем говорить о вычислительных процессах.
Диаграмма состояний процессов:
ОС реального времени – ОС, которая управляет ВС, предназначенной для лтслеживания хода реально протекающих событий и процессов (например, выплавка металла, упраление станком и т.д.). ОС должна успевать реагировать на скорость протекания реальных событий и вести их обработку.
Существует следующая классификация вычислительных процессов:
1. Сист. Управляющие – наивысший приоритет(П/П реализации стратегий)
2. Сист. Обрабатывающие (П/П обработки прерываний)
3. Пользовательские – низший приоритет
В ОС реального времени наибольшим приоритетом обладает пользовательский процесс (особенно процессы ввода-вывода).
I. Состояние, когда процесс известен системе. Состояние бездействия необходимо в ОСРВ, т.к. между появл. процесса и выделением ему ресурсов может пройти достаточно большое время. Процесс требует мнимальных ресурсов.
II. Процесс конкурирует за получение ресурса. Все ресурсы, кроме времени процессора, процессу выделены.
III. Процессу выделены все ресурсы, и он запущен. В каждый момент времени в этом состоянии должен находиться только один процесс, если процессор один.
IV. Затребованные ресурсы не могут быть предоставлены или не завершился I/O.
1* События:
– по команде пользователя
– по вызову из другого задания
– при выборе из очереди
– по прерыванию от внешинх инициативных устройств
– при наступлении запланированного запуска программы
2* События:
– процесс завершается (либо в состоянии I, либо уничтожается)
– у процесса закончился квант времени процессора, либо появился более приоритетный процесс (переход III -> II)
– процесс блокируется, если появился запрос на I/O (III -> IV). После завершения I/O процесс деблокируется и вновь претендует на получение ресурсов (IV -> II)
Основной движущей силой, меняющей состояние процессов, является прерывание.
