- •Конспект лекций по курсу: «Операционные системы. Ч.1»
- •Введение
- •Аппаратные средства.
- •Центральный процессор.
- •Разрядность шины памяти.
- •Архитектура процессора.
- •Процессорное ядро.
- •Декодер.
- •Регистры процессора.
- •Многопроцессорные и многоядерные системы.
- •Многоядерные системы.
- •Оперативная память.
- •Адресация оп.
- •Ввод-вывод.
- •Прерывания.
- •Внешние устройства.
- •Классификация ос.
- •Основные понятия ос.
- •Структура ос.
- •Программная структура ос.
- •Программная структура ядра.
- •Интерфейсы системы вызовов.
- •Понятие мобильной ос.
- •Микроядерная архитектура.
- •Основные компоненты ос
- •Процессы и потоки.
- •Потоки.
- •Взаимодействие процессов, потоков.
- •Управление памятью.
- •Организация виртуальной памяти в ос.
- •Организация виртуальной памяти.
- •Сегментно-страничное распределение.
- •Преобразование адресов.
- •Буферы быстрого преобразования адреса.
- •Инвертированные таблицы страниц.
- •Алгоритмы замещения страниц.
- •Распределение виртуального адресного пространства.
- •Очистка страниц.
- •Перезапуск прерванной команды процессора.
- •Хранение страничной памяти на диске.
- •Реализация виртуальной памяти ос multics.
- •Виртуальная память в ос с аппаратной платформой Intel Pentium.
- •Защита памяти.
- •Ввод-вывод.
- •Контроллеры устройств.
- •Обмен данными с реальной оп.
- •Принципы программной реализации управления вводом-выводом.
- •Программная организация ввода-вывода.
- •Уровни реализации ввода-вывода.
- •Обработчики прерываний
- •Драйверы устройств.
- •Управление внешними устройствами.
- •Службы времени.
- •Алфавитно-цифровые терминалы.
- •Программное обеспечение ввода.
- •Программное обеспечение вывода.
- •Датчики.
- •Управление электропотреблением.
- •Файловые системы.
- •Логическая и физическая организация файлов.
- •Файловая система msdos.
- •Организация нескольких логических разделов.
- •Надежность файловой системы.
- •Производительность фс.
- •Файловая система cdr.
- •Формат записи каталога.
- •Сжатие видеоинформации.
- •Стандарт mpeg (Motion Picture Expert Group).
- •Структура реальной оп.
- •Структура виртуальной оп виртуальной машины.
- •Организация вычислительного процесса.
- •Планирование и диспетчирование.
- •Обработка прерываний.
- •Управление памятью.
- •Управление внешней памятью.
- •Планирование и диспетчирование.
- •Управление вводом-выводом.
- •Средства программирования и инструментальные средства.
- •Сетевые возможности операционных систем.
- •Понятие dce.
- •Подходы к обеспечению безопасности информации в ос.
Перезапуск прерванной команды процессора.
Когда выполняется команда и происходит обращение к адресу, который выходит за пределы страницы, происходит прерывание по отсутствию страницы. Если страница в реальной ОП есть, то происходит преобразование и берется операнд из соответствующей рамки реальной ОП. После того, как страница загружена в рамку, команду вызвавшую прерывание необходимо запустить. Различают прерывание, вызванное по отсутствию страницы для выборки команды одного или двух операндов. Перезапуск команд осуществляется с помощью механизма слова состояния программы PSW, либо используются так называемые автоинкрементные режима адресации, т.е. увеличение или уменьшение значения тех или иных регистров (аппаратная поддержка).
Хранение страничной памяти на диске.
Простейшим способом для распределения виртуального адресного пространства и пространства страничного обмена является поддержка системных областей подкачки. Когда запускается процесс, то в зависимости от занимаемого адресного пространства процесса резервируется участок области подкачки размером не меньше, чем сам процесс. Как только процесс завершается, виртуальное адресное пространство и область подкачки освобождаются. Как правило, область подкачки управляется как список свободных участков. Ссылка на список области подкачки, отводимый процессу, хранится в таблицах, описывающих процесс. Адрес для записи виртуальной страницы определяется положением страницы внутри виртуального адресного пространства и прибавляется к началу выделенной области. Вытеснение/замещение страниц осуществляется в соответствии с таблицами, которые описывают определенным образом области, свободные для перемещения/вытеснения/замещения страницы из реальной ОП в область подкачки.
Пример.
Управление страничным обменом рассмотрим на примере ОС 20-25 летней давности. Страничный набор и область подкачки в ОС данного типа создается на этапе NIP. Страничный обмен управляется диспетчером страничного обмена. Управляющая информация для него следующая:
1. Таблица сегментов. SMT (segment main table).
2. Таблица страниц PMT.
Адрес страницы, индикатор доступности.
3. MBT (memory block table).
В SMT каждому сегменту соответствует одна строка. Строки упорядочены по номерам сегментов. Сегмент считается доступным, если индикатор доступности равен 0. Для всех сегментов в таблице сегментов виртуального пространства индикатор доступности равен 0.
В PMT каждой странице сегмента соответствует строка. Строки упорядочены по номерам.
XPT определяет таблицу внешних страниц. Содержит адрес виртуальной страницы в страничном наборе данных или области подкачки. MPT описывает блоки реальной ОП. Каждый блок может быть в одной из трех различных очередей:
1. Очередь свободных блоков - доступных для загрузки виртуальной страницы.
2. Очередь выделенных блоков - выделенные на текущем шаге планирования (диспетчирования) для замещения виртуальной страницы.
3. Очередь активных страниц - использующихся в настоящее время.
Информация о состоянии страниц формируется аппаратно. Фреймы оперативной памяти распределены по четырем очередям.
1. Фреймы, содержащие неизмененные страницы, к которым не было обращений.
2. Фреймы, содержащие измененные страницы, к которым не было обращений.
3. Фреймы, к которым было обращение по чтению.
4. Фреймы с измененными страницами.
Механизм управления следующий: до тех пор, пока очередь свободных блоков не пуста замещение страниц не происходит, алгоритм замещения включается в работу при пустой очереди свободных блоков. Для загрузки страницы из виртуального адресного пространства в реальную ОП используется компонента загрузчик. Для хранения области подкачки пространство на диске разбивается на теги, размером в страницу. Вся область подкачки представляется битовым массивом. 1 - тег занят, 0 - свободен. Обращение к тегу для записи/считывания осуществляется ОС с использованием таблицы, описывающей адрес цилиндра, головки и сектора каждого тега. При загрузке в реальную ОП из тега тег освобождается и готов к получению информации при вытеснении рамки.
