Курс Операционные системы кафедры ИУ5 МГТУ им. Баумана.
Добро пожаловать на курс «Операционные системы». Курс посвящён фундаментальным концепциям проектирования, архитектуры и функционирования современных операционных систем.
Состав курса
Курс состоит из 2 частей:
- Основы операционных систем
- Углубленное изучение операционных систем
Основы операционных систем
Первая часть "Основы операционных систем" состоит из 8 разделов, охватывающих все ключевые подсистемы операционной системы:
Раздел 1 — Введение в операционные системы
Основы: определение ОС как менеджера ресурсов и виртуальной машины, логическая и физическая модели процессов, графы состояний, классификация процессов.
Раздел 2 — Управление ресурсами
Формальное описание ресурсов, их классификация, дескрипторы процессов (PCB), процессы и cgroups — механизмы контроля вычислительных ресурсов.
Раздел 3 — Прерывания
Механизм прерываний как основа асинхронного взаимодействия: аппаратная и программная обработка, классификация, векторизация, маскирование.
Раздел 4 — Взаимодействие процессов
Типы взаимодействия параллельных процессов, middleware, отношения между процессами (precedence, mutual exclusion, producer-consumer, readers-writers).
Раздел 5 — Синхронизация процессов
Аппаратные и программные механизмы синхронизации: семафоры Дейкстры, мьютексы, каналы, алгоритмы для распределённых систем.
Раздел 6 — Взаимоблокировки и многопоточные ОС
Условия возникновения deadlock, стратегии предотвращения, алгоритм банкира, процессы и потоки, многоуровневое планирование.
Раздел 7 — Управление памятью
Виртуальное адресное пространство, непрерывное и не непрерывное распределение, страничная и сегментная организация, алгоритмы вытеснения страниц.
Раздел 8 — Планирование и ввод/вывод
Диспетчеризация процессов (FCFS, RR, priority), аппаратная поддержка I/O, программная архитектура подсистемы ввода/вывода, буферизация.
Структура каждого раздела
Каждый раздел содержит:
- Лекционный материал — теоретические основы с подробными объяснениями и примерами
- Практические задания — лабораторные работы, выполняемые в операционной системе Альт Линукс (версия 11), охватывающие работу с процессами, памятью, прерываниями, синхронизацией и устройствами ввода/вывода
Цели курса
По окончании курса студент будет знать:
- Архитектуру и основные функции операционных систем
- Механизмы управления процессами, памятью и устройствами
- Принципы синхронизации и предотвращения взаимоблокировок
И сможет:
- Анализировать состояние процессов и ресурсов в Linux
- Программировать межпроцессное взаимодействие и синхронизацию
- Настраивать и оптимизировать работу подсистем ОС