ПРОГРАММА ЭКЗАМЕНА

по курсу "Системное программное обеспечение"

для студентов 3 курса специальности

"Программное обеспечение информационных технологий"

(3-5 семестр)

Преподаватель – , доцент кафедры ИВТ ГрГУ, к. т.н.

Наименование темы

Основные понятия и определения

Основные навыки и умения

Классификация программного обеспечения.

Классификация программного обеспечения. Классификация системного программного обеспечения. Требования к системному программному обеспечению.

Разработка системного программного обеспечения в соответствии с требованиями.

Структура магнитного диска. Физическая организация хранения информации на магнитном диске. Дисковые утилиты.

Структура магнитного диска. Физическая организация хранения информации на магнитном диске. Дисковые утилиты. Разбиение диска на разделы. Утилиты для просмотра и редактирования содержимого разделов (томов). Тестирование и "лечение" испорченных дисков.

Использование дисковых утилит.

Просмотр и редактирование дисков. Тестирование и "лечение" испорченных дисков.

Загрузка операционной системы. Менеджеры загрузки.

Загрузочные секторы. Порядок загрузки операционной системы (несколько примеров). Менеджеры загрузки.

Работа с менеджерами загрузки. Установка. Использование.

Структура компакт дисков и DVD дисков.

Структура CD диска. Структура DVD диска. Системы управления файлами на CD и DVD дисках.

Использование знаний при разработке системного программного обеспечения.

Файловая система FAT. Особенности файловых систем VFAT и FAT32.

Структура файловой системы FAT. Структура диска с файловой системой FAT. Системная область. Таблица разбиения диска. Корневой каталог. Таблица FAT. Особенности файловых систем VFAT и FAT32.

Использование знаний при разработке системного программного обеспечения.

Файловая система HPFS.

Основные особенности. Структура раздела HPFS. Принципы размещения файлов и хранения информации о расположении файлов. Структура и размещение каталогов. Надежность хранения данных в HPFS. Монтируемые файловые системы.

Использование знаний при разработке системного программного обеспечения. Монтирование файловых систем.

Файловая система NTFS.

Основные особенности. Структура тома NTFS. Master File Table. Представление файлов. Атрибуты файлов. Организация каталогов. Ограничение доступа к файлам и каталогам.

Использование знаний при разработке системного программного обеспечения. Установка атрибутов файлов.

Файловые системы ОС UNIX (s5, ufs).

Файловые системы ОС UNIX (s5, ufs). Структура диска. Информация, хранящаяся в суперблоке. Область индексных дескрипторов. Адресация блоков файла. Организация несанкционированного доступа к файлам. Организация каталогов. Специальные файлы.

Использование знаний при разработке системного программного обеспечения.

Файловая система ОС Linux Ext2FS.

Особенности организации файловой системы ОС Linux Ext2FS.

Использование знаний при разработке системного программного обеспечения.

Организация оперативной памяти.

Модели использования оперативной памяти. Сегментированная модель. Страничная модель. Сегментно-страничная модель. Плоская модель памяти. Достоинства и недостатки способов распределения памяти.

Использование знаний при разработке системного программного обеспечения.

Режимы работы микропроцессора.

Основные характеристики реального режима. Ключевые моменты защищенного режима. Переход микропроцессора в защищенный режим.

Реализация перехода микропроцессора в защищенный режим работы.

Системные регистры микропроцессора.

Системные регистры микропроцессора. Назначение регистров. Использование. Доступность пользователю.

Использование системных регистров.

Структуры данных защищенного режима. Поддержка сегментированной модели памяти.

Дескрипторные таблицы GDT, LDT, IDT. Назначение и расположение таблиц. Формат дескрипторов.

Создание дескрипторных таблиц.

Структуры данных защищенного режима. Поддержка страничной модели памяти.

Таблицы страниц PDE, PTE. Принципы создания и хранения таблиц. Формат дескриптора страницы.

Создание таблиц страниц.

Система прерываний 32-разрядных микропроцессоров i80x86. Работа системы прерываний в реальном режиме.

Общая классификация прерываний. Средства для реализации механизма прерываний. Работа системы прерываний в реальном режиме.

Обработка прерываний. Разработка и реализация обработчиков прерываний.

Система прерываний 32-разрядных микропроцессоров i80x86. Обработка прерывания в защищенном режиме.

Классификация прерываний в защищенном режиме. Таблица дескрипторов прерываний. Типы шлюзов. Обработка прерывания в защищенном режиме.

Использование знаний при разработке системного программного обеспечения.

Основные понятия операционных систем.

Вычислительный процесс. Поток как средство распараллеливания вычислений. Планирование и диспетчеризация потоков (процессов). Понятие ресурса. Классификация ресурсов.

Использование знаний при разработке системного программного обеспечения.

Понятие операционной системы. Основные функции операционной системы.

Понятие операционной системы. Основные функции операционной системы.

Использование знаний при разработке системного программного обеспечения.

Классификация операционных систем.

Особенности алгоритмов управления ресурсами. Особенности аппаратных платформ. Типы многозадачных операционных систем. Архитектурные особенности ОС. Многопроцессорные ОС.

Использование знаний при разработке системного программного обеспечения.

Архитектура ОС.

Принципы построения операционных систем.

Модульность. Многократно используемые программные модули. Функциональная избирательность. Функциональная избыточность. Генерируемость. Принцип виртуализации. Принципы построения операционных систем. Независимость программ от внешних устройств. Принцип совместимости. Двоичная совместимость и совместимость на уровне исходных текстов. Переностимость ОС. Открытые и наращиваемые ОС. Обеспечение безопасности.

Использование знаний при разработке системного программного обеспечения.

Архитектура операционных систем.

Понятие архитектуры ОС. Микроядерные и монолитные операционные системы. Технология микроядра. Преимущества и недостатки каждого из подходов.

Использование знаний при разработке системного программного обеспечения.

Операционные системы реального времени.

Требования, предъявляемые к операционным системам реального времени. Проблемы проектирования и реализации ОС реального времени.

Использование знаний при разработке системного программного обеспечения.

Сетевые ОС. Функциональные компоненты сетевой ОС.

Понятие сетевой операционной системы. Сетевые и распределенные ОС. Функциональные компоненты сетевой ОС. Сетевые службы и сетевые сервисы. Подходы к построению сетевых ОС.

Разработка сетевых служб. Разработка менеджера сетевых служб.

Сетевые ОС. Одноранговые и серверные ОС.

Одноранговые сетевые операционные системы. Серверные сетевые операционные системы.

Использование знаний при разработке системного программного обеспечения.

Сетевые файловые системы. Вопросы организации клиентов и серверов.

Вопросы реализации сетевой файловой системы. Распределение клиентов и серверов по компьютерам. Размещение клиентов и серверов в операционной системе. Схемы реализации сетевого файлового сервера.

Использование знаний при разработке системного программного обеспечения.

Сетевые файловые системы. Вопросы реализации сетевой файловой системы.

Кэширование. Управление репликацией.

Сетевые файловые системы. Вопросы реализации сетевой файловой системы. Кэширование данных в сетевых файловых системах. Понятие и назначение репликации. Управление репликацией.

Использование знаний при разработке системного программного обеспечения.

Служба каталогов сетевой файловой системы.

Понятие. Назначение. Принципы организации службы каталогов. Стандарты для служб каталогов. Примеры служб каталогов.

Работа со службой каталогов ОС Windows NT.

Управление вводом/выводом в операционных системах. Режимы управления.

Основные задачи супервизора ввода/вывода. Режимы управления вводом/выводом. Структура драйвера.

Использование знаний при разработке системного программного обеспечения.

Управление вводом/выводом в операционных системах. Основные системные таблицы ввода/вывода.

Управление вводом/выводом в операционных системах. Основные системные таблицы ввода/вывода. Таблица оборудования. Таблица описания виртуальных логических устройств. Таблица прерываний. Процесс управления вводом/выводом.

Использование знаний при разработке системного программного обеспечения.

Управление вводом/выводом в операционных системах. Типы. Кэширование.

Синхронный и асинхронный ввод/вывод. Кэширование операций ввода/вывода. Техника упреждающего чтения. Управление очередью запросов на операции чтения/записи данных.

Использование знаний при разработке системного программного обеспечения.

Встроенные ОС. Операционная система PalmOS.

ОС для смарткарт. ОС для смартфонов.

Назначение встроенных ОС. Основные функции встроенных ОС. Проблемы реализации. Сравнительная характеристика. Основные возможности ОС PalmOS.

Использование знаний при разработке системного программного обеспечения.