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

Вид материалаПрограмма дисциплины

Содержание


Обзор и классификация операционных систем.
Основы операционных систем.
Диспетчеризация и планирование.
Управление памятью.
Управление устройствами.
Файловые системы.
Безопасность и защита данных.
Вопросы проектирования.
Подобный материал:
Направление 010200 Математика и компьютерные науки

Профиль Все профили


Степень бакалавр

Программа

дисциплины Операционные системы


Семестры 1


Данный курс знакомит как с использованием операционных систем, так и с их проектированием и реализацией.


Содержание.


Архитектура ЭВМ и операционные системы (ОС).

Принципы фон Неймана. История развития ОС. Системы пакетной обработки. Роль и задачи ОС. Загрузка и функционирование типичной ОС.


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

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


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

Методы структуризации. Абстракции, процессы и ресурсы. Понятия программного интерфейса приложения (API) и интерфейса пользователя. Потребности приложений и эволюция программного и аппаратного обеспечения. Организация устройств, прерывания. Понятия режимов пользователя и супервизора, защита, режим ядра.


Диспетчеризация и планирование.

Диспетчеризация и переключение контекстов. Роль прерываний. Параллельное исполнение: преимущества и недостатки. Проблемы "взаимного исключения" и некоторые решения. Тупики: причины, условия, способы предотвращения. Модели и механизмы (семафоры, мониторы, условные переменные, рандеву). Проблема "читатель/писатель" и синхронизация. Вопросы многопроцессорности (спин-блокировка, реентерабельность). Вытесняющее и невытесняющее планирование. Планировщики и политики. Процессы и потоки. Предельные сроки выполнения операции и другие вопросы реального времени.


Управление памятью.

Обзор физической памяти и аппаратного обеспечения, предназначенного для управления памятью. Оверлеи, подкачка и разделы. Страничная и сегментная организации памяти. Стратегии вытеснения страниц. Рабочее множество и пробуксовка. Кэширование.


Управление устройствами.

Характеристики последовательных и параллельных устройств. Стратегии буферизации. Прямой доступ к памяти. Восстановление после сбоев.


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

Файлы: данные, метаданные, операции, организация, буферизация, файлы с последовательным и произвольным доступом. Директории: содержимое и структура. Файловые системы: деление на разделы, монтирование и демонтирование, виртуальные файловые системы. Стандартные методы реализации. Типичные ошибки файловых систем. Файлы, проецируемые в память. Специализированные файловые системы. Именование, поиск, доступ, резервное копирование.


Безопасность и защита данных.

Обзор безопасности системы. Механизмы и политики разграничения прав доступа. Методы и устройства обеспечения безопасности. Защита, доступ и аутентификация. Модели защиты. Защита памяти. Шифрование данных. Управление восстановлением.


Вопросы проектирования.

Методы декомпозиции системы (монолитная, многоуровневая, модульная, микроядерная модели). Эффективность, надежность, гибкость, переносимость, безопасность, совместимость. Влияние безопасности, сетевых технологий, мультимедиа, графических оконных интерфейсов и национальных особенностей.


Отказоустойчивость.

Фундаментальные понятия: надежность и доступность системы. Пространственная и временная избыточность. Методы реализации отказоустойчивости.


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

Какие параметры системы необходимо оценивать. Стратегии кэширования, подкачки, планирования, управления памятью, безопасности и другие. Методы сбора данных для оценки (механизмы профилирования и трассировки).


Языки сценариев.

Языки сценариев и их роль. Основные системные команды. Написание сценариев, передача параметров. Выполнение сценария. Влияние языков сценариев на программирование.