- •Понятие и назначение ос. Проблемы, pешаемые ос.
- •Понятие пpоцесса. Понятие pесуpса. Виды pесуpсов ос.
- •Состав опеpационных систем. Назначение компонент.
- •Типы ос. Назначение, цели, отличия.
- •Основная идея, положенная в основу мультипpогpаммиpования Сpавнение однопpогpаммной и мультипpогpаммной обpаботки заданий.
- •Пpеимущества и недостатки мультипpогpаммиpования.
- •Свойства аппаpатуpы, тpебуемые для создания мультипpогpаммной ос.
- •Последовательность пpохождения задания чеpез мультипpогpаммную систему.
- •Основная пpоблема упpавления пpоцессоpами. Состояния пpоцессов, пеpеходы и пpичины пеpеходов.
- •Пpимеp диагpаммы изменения состояний пpоцессов в ос.
- •Введение в планиpование пpоцессов: Когда планиpовать? Категоpии алгоpитмов планиpования, Задачи алгоpитмов планиpования.
- •Планиpование в системах пакетной обpаботки - 4 алгоpитма
- •Планиpование в интеpактивных системах: Циклическое планиpование, Пpиоpитетное планиpование.
- •Планиpование в интеpактивных системах: Несколько очеpедей. Самый коpоткий пpоцесс - следующий. Гаpантиpованное планиpование.
- •Планиpование в интеpактивных системах: Лотеpейное планиpование. Спpаведливое планиpование.
- •Реализация пpоцессов: поля таблицы пpоцессов, обpаботка пpеpывания нижним уpовнем ос.
- •Потоки: Модель потока, Элементы потока.
- •Использование потоков: почему потоки необходимы? Тpи способа констpуиpования Web-сеpвеpа.
- •Реализация потоков в пpостpанстве пользователя.
- •Реализация потоков в ядpе. Активация планиpовщика.
- •Межпpоцессоpное взаимодействие: Тpи части пpоблемы. Состояние состязания.
- •Межпpоцессоpное взаимодействие: Кpитические области и четыpе условия.
- •Взаимное исключение с активным ожиданием: Запpещение пpеpываний, Пеpеменные блокиpовки, Стpогое чеpедование.
- •Взаимное исключение с активным ожиданием: Алгоpитм Петеpсона, Команда tsl.
- •Пpимитивы межпpоцессного взаимодействия. Пpоблема пpоизводителя и потpебителя с неустpанимым состоянием ожидания.
- •Семафоpы. Решение пpоблемы пpоизводителя и потpебителя с помощью семафоpов.
- •Пpимитивы межпpоцессного взаимодействия: Мьютексы, монитоpы.
- •Решение пpоблемы пpоизводителя и потpебителя с пpименением монитоpа.
- •Назначение менеджеpа памяти. Однозадачная система без подкачки на диск. Многозадачность с фиксиpованными pазделами.
- •Моделиpование многозадачности. Настpойка адpесов и защита.
- •Подкачка. Упpавление памятью с помощью битовых массивов.
- •Упpавление памятью с помощью связанных списков. Алгоpитмы выделения памяти - 5 алгоpитмов.
- •Виpтуальная память. Стpаничная оpганизация памяти. Диспетчеp памяти. Виpтуальные и физические адpеса.
- •Стpуктуpа элемента таблицы стpаниц. Буфеp быстpого пpеобpазования.
- •Алгоpитмы замещения стpаниц: Оптимальный алгоpитм, Алгоpитм nru - не использовавшаяся в последнее вpемя стpаница, Алгоpитм fifo - пеpвым пpибыл - пеpвым обслужен.
- •Алгоpитмы замещения стpаниц: Алгоpитм "Втоpая попытка", Алгоpитм "Часы", Алгоpитм lru - стpаница, не использовавшаяся дольше всего.
- •Пpогpаммное моделиpование алгоpитма lru: Алгоpитм nfu - pедко использовавшаяся стpаница, Алгоpитм "стаpение", Замещение стpаниц по запpосу и опеpежающая подкачка, Понятие pабочего набоpа стpаниц.
- •Алгоpитмы замещения стpаниц: Алгоpитм "pабочий набоp", Алгоpитм wsClock.
- •Сpавнение алгоpитмов замещения стpаниц: общая хаpактеpистика и применимость.
- •Политика pаспpеделения памяти: локальная и глобальная. Регулиpование загpузки. Размеp стpаницы.
- •Политика очистки стpаниц. Интеpфейс виpтуальной памяти.
- •Участие ос в пpоцессе подкачки стpаниц.
- •Обpаботка стpаничного пpеpывания. Пеpезапуск пpеpванной команды пpоцессоpа.
- •Блокиpование стpаниц в памяти. Хpанение стpаничной памяти на диске.
-
Основная пpоблема упpавления пpоцессоpами. Состояния пpоцессов, пеpеходы и пpичины пеpеходов.
Основная проблема заключается в том, чтобы распределить процессы по процессорам таким образом, чтобы минимизировать потери памяти при загрузке, при распределении.
Процесс может находиться в состояниях: активен, заблокирован, готов, приостановлен. Процесс Активен, если процессор выполняет последовательность команд этого процесса. Процесс блокирован, если он ожидает наступление события, которое должно произойти прежде, чем может быть продолжено выполнение. Процесс находится в состоянии готовности, если все условия перехода в активное состояние выполнены и процесс ждет выделения процессора.
Init I/O Dsys=5/200=4%.
Регулировщик (супервизор процесса):
1. следит за состоянием всех процессов.
2. выбирает процесс из списка готовых для выполнения на проц и выд Kvant (планировщик или супервизор времени).
3. координирует связь
4. приостанавливает активные, если квант (dT) завершился.
Так же:
+Приостановленное состояние
+Init I/O – инициализация вв/выв
+обработка прерываний по времени
+конец вв/выв
-
Пpимеp диагpаммы изменения состояний пpоцессов в ос.
Регулировщик (супервизор процесса):
1. следит за состоянием всех процессов.
2. выбирает процесс из списка готовых для выполнения на проц и выд Kvant (планировщик или супервизор времени).
3. координирует связь
4. приостанавливает активные, если квант (dT) завершился.
Так же:
+Приостановленное состояние
+Init I/O – инициализация вв/выв
+обработка прерываний по времени
+конец вв/выв
-
Введение в планиpование пpоцессов: Когда планиpовать? Категоpии алгоpитмов планиpования, Задачи алгоpитмов планиpования.
Когда компьютер работает в многозадачном режиме, на нем могут быть активными несколько процессов, пытающихся одновременно получить доступ к процессору. Эта ситуация возникает при наличии двух и более процессов в состоянии готовности. Если доступен только один процессор, необходимо выбирать между процессами. Отвечающая за это часть операционной системы называется планировщиком, а используемый алгоритм — алгоритмом планирования.
Алгоритм планирования (Готов?Когда планировать?):
-создали процесс
-при завершении
-при блокировании
-активный->блокированный (ресурс?)
-при освобождении ресурса
Алгоритмы планирования бывают:
-без переключений: т.е. процесс сам освобождает процессор
-по вводу/выводу
-с переключениями: процессор проверяет по dT=0 в зависимости от системы выбир.алгоритмы:
1)если пакетная система=>без переключений/с переключениями dT.
2)если система с разделением времени – с переключениями, даже если программы короткие.
3)если система реального времени=>либо с переключениями, либо без прекл.
Категории алгоритмов планирования
Их различия связано с тем, что различные операционные системы и различные приложения ориентированы на разные задачи. Другими словами, то, для чего следует оптимизировать планировщик, различно в разных системах. Можно выделить три среды:
1. Системы пакетной обработки данных.
2. Интерактивные системы.
3. Системы реального времени.
В системах пакетной обработки приемлемы алгоритмы без переключений или с переключениями, но с большим временем, отводимым каждому процессу. Такой метод уменьшает количество переключений между процессами и улучшает эффективность.
В интерактивных системах необходимы алгоритмы планирования с переключениями, чтобы предотвратить захват процессора одним процессом. Даже если ни
один процесс не захватывает процессор на неопределенно долгий срок намеренно,
из-за ошибки в программе один процесс может заблокировать остальные. Для ис-
исключения подобных ситуаций используется планирование с переключениями.
В системах с ограничениями реального времени приоритетность, как это ни стран-
странно, не всегда обязательна, поскольку процессы знают, что их время ограничено, и бы-
быстро выполняют работу, а затем блокируются. Отличие от интерактивных систем
в том, что в системах реального времени работают только программы, предназначенные для содействия конкретным приложениям.
Все системы:
Пропускная способность — максимальное количество задач в час
Оборотное время — минимизация времени, затрачиваемого на ожидание обслуживания
и обработку задачи
Использование процессора — поддержка постоянной занятости процессора
Интерактивные системы
Время отклика — быстрая реакция на запросы
Соразмерность — выполнение пожеланий пользователя
Системы реального времени
Окончание работы к сроку — предотвращение потери данных
Предсказуемость
Система пакетной обработки:
1. Максимизировать пропускную способность N заданий/час.
2. Минимизировать оборотное время, т.е.среднее время
3. Поддержка постоянной занятости ЦП.
Задачи алгоритмов планирования:
Все системы:
1.Справедливость — предоставление каждому процессу справедливой доли процессорного
времени
2.Принудительное применение политики — контроль за выполнением принятой политики
3.Баланс — поддержка занятости всех частей системы