- •Конспект лекций по курсу: «Операционные системы. Ч.1»
- •Введение
- •Аппаратные средства.
- •Центральный процессор.
- •Разрядность шины памяти.
- •Архитектура процессора.
- •Процессорное ядро.
- •Декодер.
- •Регистры процессора.
- •Многопроцессорные и многоядерные системы.
- •Многоядерные системы.
- •Оперативная память.
- •Адресация оп.
- •Ввод-вывод.
- •Прерывания.
- •Внешние устройства.
- •Классификация ос.
- •Основные понятия ос.
- •Структура ос.
- •Программная структура ос.
- •Программная структура ядра.
- •Интерфейсы системы вызовов.
- •Понятие мобильной ос.
- •Микроядерная архитектура.
- •Основные компоненты ос
- •Процессы и потоки.
- •Потоки.
- •Взаимодействие процессов, потоков.
- •Управление памятью.
- •Организация виртуальной памяти в ос.
- •Организация виртуальной памяти.
- •Сегментно-страничное распределение.
- •Преобразование адресов.
- •Буферы быстрого преобразования адреса.
- •Инвертированные таблицы страниц.
- •Алгоритмы замещения страниц.
- •Распределение виртуального адресного пространства.
- •Очистка страниц.
- •Перезапуск прерванной команды процессора.
- •Хранение страничной памяти на диске.
- •Реализация виртуальной памяти ос multics.
- •Виртуальная память в ос с аппаратной платформой Intel Pentium.
- •Защита памяти.
- •Ввод-вывод.
- •Контроллеры устройств.
- •Обмен данными с реальной оп.
- •Принципы программной реализации управления вводом-выводом.
- •Программная организация ввода-вывода.
- •Уровни реализации ввода-вывода.
- •Обработчики прерываний
- •Драйверы устройств.
- •Управление внешними устройствами.
- •Службы времени.
- •Алфавитно-цифровые терминалы.
- •Программное обеспечение ввода.
- •Программное обеспечение вывода.
- •Датчики.
- •Управление электропотреблением.
- •Файловые системы.
- •Логическая и физическая организация файлов.
- •Файловая система msdos.
- •Организация нескольких логических разделов.
- •Надежность файловой системы.
- •Производительность фс.
- •Файловая система cdr.
- •Формат записи каталога.
- •Сжатие видеоинформации.
- •Стандарт mpeg (Motion Picture Expert Group).
- •Структура реальной оп.
- •Структура виртуальной оп виртуальной машины.
- •Организация вычислительного процесса.
- •Планирование и диспетчирование.
- •Обработка прерываний.
- •Управление памятью.
- •Управление внешней памятью.
- •Планирование и диспетчирование.
- •Управление вводом-выводом.
- •Средства программирования и инструментальные средства.
- •Сетевые возможности операционных систем.
- •Понятие dce.
- •Подходы к обеспечению безопасности информации в ос.
Организация вычислительного процесса.
1. Выполняется программа IPL. Считывается загрузчик ядра CP, который загружает ядро в реальную ОП.
2. Инициализация системы. Инициализация реальной ОП, реальных внешних устройств, виртуальной ОП CP, часов, таймеров. Всем ресурсам, необходимым для распределения, строятся управляющие блоки.
3. Инициализация и запуск штатных виртуальных машин в ОС. К ним относятся: виртуальная машина оператора ОС, ВМ учёта, ВМ дампа и т.д.
ВМ могут работать в спящем режиме (аналог фонового процесса). Если из ВМ появляется диагностическое сообщение, оно выводится на любой включенный терминал. Для входа в спящую ВМ нужно набрать её логин и пароль. С одного терминала можно работать с любой виртуальной машиной, набрав ее логин и пароль. Возможно, на одном терминале запускать несколько ВМ и переключаться между ними.
4. CP переходит в состояние ожидания запуска ВМ пользователя.
5. В случае ввода логина и пароля запускается виртуальная машины и в виртуальную память загружается ОС, обозначенная в оглавлении, и ей передаётся управление. Далее виртуальная машина работает под управлением ОС. Можно запускать пользовательские процессы в среду программирования, коммуникационные средства. Каждой виртуальной машине можно выполнять команды следующих типов:
1. Команды CP - в соответствии с заданным классом в оглавлении.
2. Команды по управлению виртуальной машиной. Например, включить виртуальное устройство.
3. Команды ОС, загруженные в виртуальную машину.
4. Команды по управлению различными программными средами, функционирующие под управлением ОС данной виртуальной машины. Если программная среда многопользовательская, для работы в ней можно подключать, в том числе и станции локальных сетей, т.е. со станции локальной сети работать через виртуальную машину со всеми ресурсами, доступными ей.
Планирование и диспетчирование.
С точки зрения положения в системе все виртуальные машины могут быть следующих типов:
ВМ находятся в очередях обслуживания E1, E2, Q1, Q2. Очереди Q1 и Q2 образуют 9 - список RunList.
Время реального ЦП предоставляется только активной ВМ. В текущий момент времени выполняется диспетчируемая ВМ. Каждая ВМ описывается так называемымм Vmblock. Vmblock образуют цепочку. Vmblock может находится в следующих очередях: E1, E2 - очередь планирования, Q1, Q2, RunList - очередь диспетчера. Список RunList включает ВМ, которых диспетчер может предоставить квант времени ЦП. Все остальные ВМ являются кандидатами на включение в RunList. Планирование и диспетчирование осуществляется по изменяемым алгоритмам. Для этого периодически управляющая программа CP оценивает производительность системы и включает различные алгоритмы планирования и диспетчирования. При диспетчировании выбор ВМ из RunList и предоставление кванта ЦП, при планировании - управление последовательностью и длительностью использования ЦП. Квант времени, выделяемый ВМ, может использоваться не полностью, например, в результате прерывания с последующей обработкой. Поэтому суммарное время, которое может находится ВМ в RunList, ограничено. Для ОС VM/SP V4 - 8, для пакетной - 4 кванта. Когда этот интервал исчерпан ВМ удаляется из RunList, а на её место одна из ВМ из очереди E1 или E2. Функции планирования и диспетчирования зависят от того, какой процесс выполнялся перед передачей управления диспетчеру. В ОС выделяются:
- системный процесс (SP);
- виртуальная машина или обслуживание виртуальной машины;
- состояние ожидания.
Службы времени.
CP моделирует для каждой ВМ следующие устройства:
1. Часы - непрерывный отсчет времени
2. Компаратор - вырабатывает прерывание, когда текущее время больше времени компаратора.
3. Интервальный таймер.
4. Таймер CPU.
5. Псевдотаймер. Используется ВМ, ОС которой не имеет своих служб отсчёта времени. Описывается в конфигурации виртуальной машины как внешнее устройство.
