Операционные системы 09.03.02 Информационные системы и технологии Цель дисциплины – формирование у будущих бакалавров комплексного представления о современных архитектурах информационных систем, моделях их функционирования и особенностях реализации информационных систем в различных предметных областях. Процесс изучения дисциплины направлен на формирование следующих компетенций: ОК-4, ПК-11, ПК-12, ПК-15, ПК-29, ПК-30, ПК-31. В результате изучения курса «Операционные системы» бакалавры должны: Знать: основные принципы организации и функционирования вычислительных систем, комплексов и сетей ЭВМ, основывающихся на использовании ОС различной архитектуры и назначения; Уметь: использовать современные системные программные средства и операционные системы; Владеть: навыками выбора архитектуры и функционального состава ОС для решения различных задач, конфигурирования, администрирования и управления процессами ОС. Содержание дисциплины Тема 1. Понятие операционной системы (ОС). Назначение и основные определения операционной системы. Состав и функции операционной системы. Эволюция операционных систем. Архитектуры операционных систем. Классификация операционных систем. Тема 2. Ресурс. Классификация ресурсов. Операционная среда (прикладная среда). Процесс. Поток. Диаграмма состояний последовательного исполнения. Прерывания. Типы и приоритеты прерываний. Планирование заданий процессов и потоков. Взаимодействие и синхронизация процессов и потоков. Проблемы взаимодействия и синхронизации. Конкуренция процессов в борьбе за ресурсы. Сотруднич6ество с использованием разделения. Методы взаимоисключений. Взаимоблокировки (тупики). Мультипрограммирование. Формы многопрограммной работы. Аппаратно-программные средства мультипрограммирования. Системы прерываний. Системные вызовы. Тема 3. Простое непрерывное распределение памяти. Случаи одной и нескольких исполняемых задач. Сегментное распределение памяти. Страничное распределение памяти. Сегментно-страничное распределение памяти.Плоская модель памяти. Распределенная разделяемая память. Тема 4. Структуры данных ОС, связанные с процессом. Адресное пространство процесса в различных ОС. Среда выполнения процесса. Создание процесса. Диаграмма состояний однопотокового процесса. Завершение процесса. Группирование процессов. Функции управления процессами (примеры реализаций). Управление процессами через пользовательский интерфейс Тема 5. Структуры данных ОС, связанные с потоком. Локальная память потока. Создание потока. Управление выполнением потока. Уничтожение потока. Функции управления потоками (примеры реализаций). Тема 6. Взаимодействие процесса с ОС. Интерфейс прикладных программ. Взаимодействие процессов. Синхронизация. Критические ресурсы и критические секции процессов. Использование блокировки памяти. Алгоритм Деккера. Использование операции "проверка и установка". Семафорные примитивы Дийкстры. Мьютексы. Задачи "поставщик-потребитель", "читатели-писатели". Объекты синхронизации Windows NT/2000/XP (Процесс, поток, задание, файл, консольный ввод, изменение в файловой системе, события с автосбросом или сбросом вручную, ожидаемый таймер с автосбросом или сбросом вручную, семафор, мьютекс, критическая секция). Посылка синхронных сообщений. Вызовы удаленных процедур. Проблема тупиков. Мониторы. Синхронизация в распределенных системах. Взаимодействие процессов. Обмен данными. Сигналы. Сообщения. Очереди сообщений, алгоритмы выборки сообщений и управления очередями сообщений. Файлы, проецируемые в память. Именованные и неименованые каналы. Почтовые ящики. Сокеты. Тема 7. Основные концепции организации ввода-вывода. Многослойная модель подсистемы ввода-вывода. Синхронный и асинхронный ввод-вывод. Управляющие структуры. Драйверы устройств. Типы драйверов. Структура драйвера. Алгоритмы буферизации (кэширования). Тема 8. Назначение и выполняемые задачи. Логическая структура файловых систем. Типы объектов файловых систем. Атрибуты объектов файловых систем. Набор типовых операций над объектами файловой системы. Разделы дискового устройства. Файловые системы FAT,VFAT,FAT32. Файловая система NTFS. Файловые системы ext2/ext3. Тема 9. Понятие виртуализации в вычислениях. Организация параллельных вычислений. Мультипроцессорные системы. Кластерные системы. Тема 10. Повышение стабильности работы системы. Интеллектуальные компоненты ОС. Трехмерные интерфейсы. Альтернативные системы ввода-вывода.