- •Вопросы и литература по курсу аос (по всем вопросам должен быть представлен краткий рукописный конспект в общей тетради)
- •Структура программного обеспечения персонального компьютера.
- •Понятие операционной системы персонального компьютера. Основные интерфейсы компьютерной системы.
- •Краткая история операционных систем.
- •Доисторический период
- •Первый период (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;
- •Импорт и экспорт данных системного реестра;
- •Предопределенные ключи системного реестра;
Управление памятью в реальном режиме адресации на примере консоли Windows xp.
Задачи подсистемы управления внешними устройствами.
Подсистема управления внешними устройствами тесно связана с файловой системой.
Наиболее важные ее задачи:
Организация параллельной работы устройств ввода-вывода и процессора
Каждое устройство ввода-вывода снабжается контроллером. Контроллер взаимодействует с драйвером – программой, предназначенной для управления устройством. Контроллер принимает от драйвера разные задачи и инфу, после чего может спокойно работать какое-то время, никого не трогая.
ОС должна:
Спланировать в системе реального времени (так работают внешние устройства) запуск и остановку множества разных драйверов, обеспечив приемлемое время реакции каждого драйвера.
По минимуму грузить процессор задачами ввода-вывода, дав ему возможность заниматься делом.
Эта задача обычно решается через многоуровневую приоритетную схему обслуживания по прерываниям – все устройства делятся по уровням приоритета, и шлют свои прерывния диспетчеру прерываний ОС.
Согласование скоростей обмена
Устройства с разной скоростью отдают и обрабатывают инфу. Для решения этой проблемы обычно применяют БУФЕРИЗАЦИЮ данных в ОП. Доступ к буферу, соответственно, синхронизируется.
Но ОП может не хватить (когда большие объемы инфы) – тогда либо:
на диске выделяют место, спул файл, куда инфу девают.
Используют большую буферную память в контроллерах внешних устройств.
Кэширование данных – для сокращения реальных операций ввода-вывода
Разделение устройств и данных между процессами
Устройства ввода вывода могут предоставляться:
В монопольное юзание
В разделяемое юзание
ОС должна:
Обеспечивать контроль доступа (прав пользователей и тд) к устройству в целом
То же к отдельным его частям (разным файлам на диске)
Отслеживать захваты и освобождения монопольно используемых устройств
Оптимизировать последовательность работ для совместно используемых
Разграничивать порции данных нескольких процессов друг от друга при разделяемом использовании
Хранить очередь заданий для каждого устройства
Обеспечение удобного и логического интерфейса между устройствами и остальной частью системы
Обычно используется самая удобная – файловая модель периферийного устройства – как базовый интерфейс.
Если ее не хватает, то над ней надстраиваются более содержательная модель для устройств конкретного типа.
Поддержка широкого спектра драйверов с возможностью расширения
Это ооочень важно для рынка
Нужен четкий и удобный интерфейс между дровами и другими компонентами ОС
(открытость интерфейса драйвера)
Интерфейс драйвер-ядро должен быть стандартизирован
Интерфейс драйвер-устройство нужно стандартизировать, если ОС сама взаимодействует с устройством
Для поддержки разработки драйверов производители ОС выпускают ДДК –драйвер девелопмент кит – набор средств для написания драйверов, отладчики, компиляторы и тд.
Динамическая загрузка и выгрузка драйверов.
Загрузка драйверов бывает:
Динамическая (без перезагрузки ОС) – современно и правильно
Статическая (с перезагрузкой)
