
ОС / Voprosy_Operatsionnye_Sistemy
.docЭкзаменационные вопросы по курсу «Операционные системы»
Общесистемные вопросы:
-
Понятие операционной системы. Компоненты и классификация компьютерных систем. Архитектура фон Неймана. Классификация компьютерных архитектур. История ОС. Развитие концепций и возможностей ОС(Windows, UNIX, Отечественные ОС).
-
Основные компоненты ОС. Особенности ОС для mainframes; ОС с разделением времени (time sharing); ОС реального времени. ОС для ПК и КПК. Параллельные компьютерные системы. SMP-архитектура. Распределенные компьютерные системы. Общая структура и виды серверов в клиент-серверных системах. Кластерные вычислительные системы.
-
Вычислительные среды. Архитектура и функционирование компьютерных систем. Функции прерываний, обработка прерываний. Архитектура и методы ввода/вывода. Таблица состояний устройств.
-
Архитектура прямого доступа к памяти. Структура и иерархия памяти. Кеширование. Аппаратная защита. Режимы исполнения. Защита памяти. Защита ввода/вывода. Защита процессора.
-
Архитектура и основные компоненты ОС. Функции ОС. Системные вызовы. Способы передачи параметров. Исполнение программ в MS-DOS и UNIX. Коммуникационные модели между процессами в UNIX.
-
Подход к созданию ОС на основе уровней абстракции. Структура и уровни абстракции MS-DOS, UNIX, OS/2, систем с микроядром, Windows NT. Виртуальные машины. JVM. .NET framework. Реализация ОС. Генерация ОС. Механизмы (mechanisms) и политики (policies).
-
Процессы. Состояния процесса. PCB. Переключение процессов. Переключение контекста процессов. Очереди процессов. Диспетчеры процессов.
-
Создание и уничтожение процессов. Дерево процессов. Виды процессов. Взаимодействие процессов - проблема «производитель-потребитель»
-
Реализация взаимодействия процессов. Прямая/косвенная связь. Буферизация. Синхронизация косвенной связи. Сокеты. RPC, RMI. Marshalling.
-
Потоки. Виды потоков. Модели многопоточности. PThreads.
-
Организация многопоточности в различных ОС. Потоки в JVM.
-
Планирование и диспетчеризация процессора. Критерии оптимизации. Стратегии FCFS и SJF. Оценка длины следующего периода активности.
-
Диспетчеризация по приоритетам. Стратегия RR. Многоуровневые очереди. Оценка результатов планирования.
-
Синхронизация процессов. Проблема критической секции. Аппаратная поддержка синхронизации.
-
Семафоры. Классические проблемы синхронизации.
-
Критические области. Мониторы. Синхронизация в Solaris и в Windows NT 5.
-
Тупики – модель системы. Характеристики тупиков. Граф распределения ресурсов. Обработка и предотвращение тупиков. Безопасное состояние.
-
Алгоритм банкира. Обнаружение тупиков. Восстановление после тупика.
-
Управление памятью. Логическое и физическое адресное пространство. Динамическая загрузка, линковка. Оверлеи. Своппинг. Смежное распределение памяти. Динамическое выделение памяти. Фрагментация. Страничная организация памяти. Трансляция адресов. Ассоциативная память. Защита памяти.
-
Иерархические, хешированные, инвертированные таблицы страниц памяти. Разделяемые страницы. Сегментная организация памяти. Сегментно-страничная организация памяти.
-
Виртуальная память. Обработка страниц по требованию. Совместное использование страниц. Файлы, отображаемые в память. Замещение страниц.
-
Замещение страниц – алгоритмы FIFO, оптимальный, LRU, и их модификации. Распределение памяти. Thrashing. Модель рабочего множества.
-
Понятие файла. Структура, атрибуты и типы файлов. Операции над файлами. Методы доступа к файлам с примерами. Структура директорий и типичная организация файловой системы. Операции над директориями. Логическая организация (структура) директорий.
-
Монтирование файловых систем. Защита файловых систем и управление доступом. Структура файловой системы. Блок управления файлом. Виртуальные файловые системы. Методы размещения файлов. Управление свободной памятью. Способы повышения эффективности и производительности файловых систем.
-
Система ввода/вывода (I/O). Типовая структура шины ПК. Порты устройств для ПК. Опрос устройств. Цикл I/O, управляемый прерыванием. Вектор прерываний. Программный интерфейс I/O – характеристики, I/O модули ядра, типы устройств I/O, способы организации I/O, подсистема I/O ядра, структура данных I/O ядра, жизненный цикл запроса на I/O.
Вопросы по конкретным ОС:
-
Linux – обзор, история создания, ядро, дистрибутивы поставки и лицензирование, принципы проектирования.
-
Linux – компоненты ОС, модули ядра, драйверы.
-
Linux – управление процессами.
-
Linux – планирование, SMP.
-
Linux – управление памятью, виртуальная память.
-
Linux – исполнение и загрузка программ, виды линковки, файловые системы.
-
Linux – I/O, взаимодействие процессов, общая память.
-
WindowsNT – обзор, история, принципы проектирования, архитектура системы.
-
WindowsNT – ядро: описание, процессы и потоки, планирование, обработка прерываний.
-
WindowsNT – executive: управление объектами, виртуальной памятью.
-
WindowsNT – executive: управление процессами, LPC, I/O, безопасностью, plug-n-play.
-
WindowsNT – файловая система: описание, методы восстановления, безопасность, управление томами, сжатие данных.
-
WindowsNT – программный интерфейс.