- •Вопросы и литература по курсу аос (по всем вопросам должен быть представлен краткий рукописный конспект в общей тетради)
- •Структура программного обеспечения персонального компьютера.
- •Понятие операционной системы персонального компьютера. Основные интерфейсы компьютерной системы.
- •Краткая история операционных систем.
- •Доисторический период
- •Первый период (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;
- •Импорт и экспорт данных системного реестра;
- •Предопределенные ключи системного реестра;
2 Базисных свойства страничной организации:
размер страницы = степени двойки
Степень – это количество младших разрядов смещения;
Все остальные разряды – номер страницы.
2 16 – значит 16 разрядов – это смещение.
смещения виртуальное и физическое равны (они отображаются непрерывно);
Преобразование виртуальных номеров страниц в физические при страничной организации:
Надо получить адрес нужного дескриптора в Таблице Страниц
Есть:
адрес начала таблицы страниц (АТ) – хранится в спец регистре процессора
длина записи в таблице страниц (Л) – системная константа
номер виртуальной страницы Р – это старшие разряды виртуального адреса (известен размер страницы)
Адрес дескриптора = АТ + (Р * Л);
Из дескриптора извлекается номер физической страницы – Н
К номеру физической страницы добавляется смещение С (младшие разряды виртуального адреса)
Типичная машинная инструкция требует 3-4 обращения к памяти (взять команду, данные, записать результаты). Каждое обращение – требует преобразования адреса либо обработку страничного прерывания. Это снижает производительность системы, поэтому нужна оптимизация виртуальной памяти:
Аппаратный механизм получения физического адреса по виртуальному
Размер страницы = степени двойки (можно заменить сложение конкатенаций, это проще);
Кэширование таблицы страниц (хранение наиболее часто используемых записей в регистрах);
Также для производительности важна частота ошибок страниц. Она зависит от размера страницы и алгоритмов вытеснения страниц из памяти.
Основной смысл алгоритмов: вытеснение страниц, к которым дольше всего НЕ БУДЕТ обращений.
Случайный выбор (т.к. предсказать сложно, дает неплохие результаты за счет отсутствия всяческих вычислений)
Страница, которая дольше всего не использовалась
Страница, к которой было меньше всего обращений за период времени (для каждой страницы ведется счетчик обращений)
Кроме того, используется принцип УПРЕЖДАЮЩЕЙ загрузки:
В память загружается не одна страница, а вместе с прилежащими к ней.
Второй важный критерий – размер страницы.
Чем больше размер страницы – тем меньше страничных прерываний
Чем больше размер – тем меньше записей в таблице страниц, тем меньше размер таблицы страниц, а она ведь хранится в памяти!
Но чем больше страница – тем больше фиктивная область
Типичный размер страницы – несколько килобайт – в Интел Пентиум – 4 килобайта.
Еще можно хранить в памяти не всю таблицу страниц:
Организуется несколько уровней таблицы страниц:
Виртуальные адреса делятся на разделы, а разделы делятся на страницы.
Размер раздела – тоже степень двойки
У каждого раздела своя таблица страниц
Размер таблицы страниц раздела = размеру страницы
Инфа о разделах собрана в таблицу разделов, именно она всегда в памяти
Адрес таблицы разделов – в специальном регистре процессора (игла в яйце, яйцо в утке….)
Итого:
Экономится память
Снижается производительность (добывание страницы занимает больше усилий и времени)
Размер страницы 2Н
Размер раздела – 2К
Н разрядов – смещение
К разрядов – номер виртуальной страницы
Что осталось – номер раздела
Также страничную организацию памяти можно использовать и без выгрузки разделов на диск. Она высоко реактивна и дает низкую фрагментацию – используется в ОС Novell Netware 3 и 4;
