- •Вопросы и литература по курсу аос (по всем вопросам должен быть представлен краткий рукописный конспект в общей тетради)
- •Структура программного обеспечения персонального компьютера.
- •Понятие операционной системы персонального компьютера. Основные интерфейсы компьютерной системы.
- •Краткая история операционных систем.
- •Доисторический период
- •Первый период (1945-1955)
- •Основные функциональные компоненты ос.
- •Подсистема управления процессами
- •Управления памятью
- •Управление файлами и внешними устройствами
- •Защита данных и администрирование
- •Интерфейс прикладного программирования
- •Пользовательский интерфейс
- •Сетевые и распределенные операционные системы.
- •Требования к современным операционным системам.
- •Базовая архитектура операционной системы. Понятие ядра системы. Классификация операционных систем в зависимости от особенностей архитектуры ядра.
- •По архитектуре ядра системы можно разделить на:
- •-2) Слоистая архитектура ядра
- •Аппаратная зависимость и переносимость операционных систем.
- •Совместимость операционных систем и множественные прикладные среды.
- •Подсистема управления процессами, основные задачи. Понятие многозадачности.
- •Многозадачность в системах пакетной обработки, разделения времени и реального времени. Системы пакетной обработки.
- •Системы разделения времени
- •Системы реального времени
- •Состояния потока
- •Планирование и диспетчеризация потоков
- •Квантование – каждому потоку последовательно выделяется квант процессорного времени.
- •Алгоритмы планирования, основанные на приоритетах
- •Смешанные алгоритмы планирования
- •Приоритеты и концепции планирования потоков в Windows 2000, ос Unix System V и os/2. Система ос Unix System V Release 4
- •Система os/2
- •Система Windows 2000
- •Планирование процессов и потоков в системах реального времени.
- •Назначение
- •Механизм прерываний
- •Реализация системных вызовов. Использование механизма прерываний для реализации системных вызовов.
- •Понятие гонок
- •Критическая секция кода и исключение гонок
- •Блокирующие переменные
- •Понятие семафора и его использование для целей синхронизации.
- •Синхронизация и проблема тупиков.
- •Синхронизирующие объекты в операционных системах.
- •Методы распределения памяти
- •Фиксированные разделы
- •Динамические разделы
- •Перемещаемые разделы
- •Остальные методы требуют использования внешней памяти
- •Свопинг
- •Виртуальная память
- •Страничная организация памяти
- •2 Базисных свойства страничной организации:
- •Сегментное распределение памяти
- •Сегментно-страничное распределение
- •Организация виртуальной памяти, преобразование адреса.
- •Обмен данными между процессами на основе виртуальной памяти.
- •Аппаратная поддержка сегментной организации памяти в системах на основе процессоров с архитектурой ia32. Небольшое вступление про процессоры ia-32 и аппаратную поддержку мультипрограммирования
- •Регистры сегментов
- •Управляющие регистры:
- •Регистры системных адресов
- •Регистры отладки и тестирования
- •Средства поддержки сегментной организации памяти в процессорах Пентиум (собственно ответ на билет)
- •Итак, процесс обратился за памятью. Что происходит?
- •Защита данных в системах с сегментной организацией памяти на основе процессоров с архитектурой ia32.
- •Привилегии подробнее:
- •Смешанная сегментно-страничная организация памяти в системах на основе процессоров с архитектурой ia32. Трансляция адреса. Буфер ассоциативной трансляции (tlb).
- •Кэширование данных
- •Принципы работы кэш - памяти.
- •Проблема согласования данных.
- •Вытеснение данных из кэШа
- •Случайное отображение
- •Детерминированный способ отображения
- •Управление памятью в реальном режиме адресации на примере консоли Windows xp.
- •Задачи подсистемы управления внешними устройствами.
- •Организация параллельной работы устройств ввода-вывода и процессора
- •Согласование скоростей обмена
- •Разделение устройств и данных между процессами
- •Обеспечение удобного и логического интерфейса между устройствами и остальной частью системы
- •Поддержка широкого спектра драйверов с возможностью расширения
- •Динамическая загрузка и выгрузка драйверов.
- •Поддержка синхронных и асинхронных операций ввода-вывода
- •Поддержка нескольких файловых систем.
- •Типы файлов
- •Иерархическая структура фс
- •Имена файлов
- •Монтирование
- •У файла есть:
- •Логическая организация файла:
- •Физическая организация данных на диске.
- •Физическая организация файла.
- •Связанный спискок кластеров дисковой памяти
- •Связанный список индексов – фс фат.
- •Файловые операции.
- •Универсальные действия:
- •Стандартные файлы ввода и вывода, перенаправление ввода-вывода.
- •Файловые системы Unix (s5 и ufs).
- •Обзор семейства операционных систем Microsoft Windows.
- •Системный реестр: структура системного реестра Windows;
- •Импорт и экспорт данных системного реестра;
- •Предопределенные ключи системного реестра;
Свопинг
Свопинг – (swapping) – образы процессов выгружаются/загружаются ЦЕЛИКОМ.
Плюсы:
- простота реализации
Минусы:
- избыточность. Для активизации процесса и начала его работы вовсе не нужны ВСЕ коды и данные процесса. А для освобождения памяти под другой процесс вовсе не надо первый полностью выгружать на диск.
- замедляет работу системы
- неэффективно используется память
- невозможно исполнять процессы, виртуальное адресное пространство которых больше имеющейся оперативы.
Поэтому свопинг в современных ОС практически не используется. Только кое-где в Юниксе он остался как дополнительный к виртуальной памяти механизм, применяющийся при перегрузках ОС.
Виртуальная память
Виртуальная память (virtual memory) - более совершенный механизм, на диск выгружаются только части процессов.
Ключевая проблема виртуальной памяти – преобразование виртуальных адресов в физические. Оно осуществляется по разному, в зависимости от способа структуризации виртуальной памяти.
Существует 3 класса реализации виртуальной памяти:
- Страничная ВП – данные перемещаются страницами – частями фиксированного и небольшого размера
- Сегментная ВП – данные перемещаются сегментами – частями произвольного размера, организованными по смыслу.
- Сегментно-страничная ВП – ВАП делится на сегменты, сегменты – на страницы. Единица перемещения – страница.
Для временного хранения информации на диске ОС отводит специальную область – специальный файл, называемый файлом свопинга, файлом подкачки или страничным файлом. Чем он больше – тем больше приложений может ОС выполнять одновременно.
Но надо не забывать, что чем он больше, тем медленнее все пашет.
Размер файла подкачки в современных ОС настраивается администратором.
Страничная организация памяти
Виртуальное адресное пространство каждого процесса делится на страницы фиксированного размера, последняя страница дополняется фиктивной областью
Оперативная память машины тоже делится на страницы (блоки, кадры).
Размер страницы выбирается равным степени 2, так проще преобразовывать адреса.
Для каждого процесса ОС создает таблицу страниц – структуру с записями о всех ВИРТУАЛЬНЫХ СТРАНИЦАХ процесса.
Запись в таблице называется ДЕСКРИПТОРОМ СТРАНИЦЫ. Он содержит:
- номер физической страницы, куда загружена виртуальная
- признак присутствия (есть ли страница в памяти)
- признак модификации (1 – когда произошла запись по этому адресу)
- признак обращения к страницу (бит доступа) – в 1 при каждом обращения.
Последние три в современных процессорах устанавливаются аппаратно.
Таблица страниц хранится в памяти, ее адрес – часть контекста процесса.
ОС обращается к памяти:
- получает номер виртуальной страницы процесса
- идет в Таблицу Страниц и находит там нужный дескриптор
- смотрит бит присутствия – если 1, то заменяет виртуальный адрес тем физическим адресом, который для нее указан
- если 0 – генерируется ошибка страницы, процесс – блокируется, активизируется новый.
- вызывается программа обработки страничного прерывания. Она находит страницу на диске и загружает ее в память (с выгружением или без другой страницы);
- если страница, которую надо выгрузить, была модифицирована – ее переписывают на диск.
- страница обнуляется (чтобы нельзя было использовать инфу выгруженной страницы)
