Цель дисциплины – дать представление об основных положениях интерфейса операционной среды, управлении основными ресурсами ЭВМ - задачами, памятью, устройствами ввода-вывода, файлами, о командных языках оболочек операционных систем (shell ).
Задачи дисциплины:
- одного из основных видов системного программного обеспечения – операционных систем (ОС) как средства организации обработки информации с помощью ЭВМ, управления ее основными ресурсами и поддержки пользовательского интерфейса;
- методов системного администрирования, настройки и конфигурирования ОС;
особенностей практической реализации реально существующих ОС.Краткое содержание разделов (тем, модулей)
1. Основные понятия теории операционных систем
Назначение операционных систем и реализуемые ими функции с точки зрения проблемного и системного программиста.
Классификация операционных систем. Основные принципы их построения. Процесс – основной агент в операционной системе. Марковская модель процесса с дискретными состояниями и непрерывным временем перехода. Диаграмма состояний процесса. Ресурс как основной объект распределения в операционной системе, классификация ресурсов. Виртуализация – основной принцип решения задач, стоящих перед ОС.
2. Процессы в операционных системах и методы управления ими
Уточненная диаграмма состояний процесса. Задачи ОС по переводу процесса из состояния в состояние. Структура блока управления процессом. Роль прерывания как фактора, определяющего момент вызова различных функций управления процессом
3. Двухуровневая схема управления процессами. Управление на основе компиляции и интерпретации
Разделение задач по характеру использования ресурсов. Задачи и содержание долгосрочного планирования. Интерпретативный и компилятивный принципы реализации долгосрочного планирования. Реализация схемы управления заданиями в операционной системе майнфрэймов. Задача краткосрочного планирования. Планировщик (супервизор) задач и его взаимодействие с Главным планировщиком. Особенности реализации двухуровневой схемы управления в операционной системе UNIX
4. Организация мультипрограммной работы. Дисциплины распределения процессорного времени
Состав модулей операционной системы, необходимый для мультипрограммной обработки данных. Необходимость защиты системы и пользователей. Ядро системы и его функции. Структуры данных ядра, защищенный и незащищенный режимы работы, переключение между режимами. Контекст процесса
5. Параллельные процессы. Ситуации взаимоисключения и взаимной блокировки процессов
Управляющие конструкции для описания параллелизма. Критические участки параллельных процессов. Примитивы взаимоисключения. Семафоры и мониторы как средство управления параллельными процессами
6. Организация межпроцессных взаимодействий
Взаимодействие процессов в ОС. Механизмы IPC – неименованные и именованные каналы, очереди сообщений, семафоры, разделяемые сегменты памяти. Сокеты
7. Задачи операционной системы по управлению ресурсом памяти. Дисциплины распределения памяти
Иерархии памяти в вычислительной системе. Основные стратегии , реализуемые в задаче управления памятью. Дисциплины распределения памяти – однопользовательская, многозадачная с фиксированным числом разделов, многопользовательская с переменным числом разделов. Защита памяти при реализации различных дисциплин. Системные затраты на управление памятью – «сборка мусора».
8. Организация виртуальной памяти. Страничное, сегментное и комбинированное распределения
Концепция виртуальной памяти. Механизм динамического отображения адресов. Страничное, сегментное и комбинированное сегментно- страничное отображение. Защита данных при использовании виртуальной памяти. Стратегии подкачки страниц
9. Управление информацией и организация файловой системы. Современные архитектуры файловых систем
Задачи файловой системы по управлению информацией. Иерархические файловые системы. Сравнительная характеристика реализации файловой системы в DOS/Windows и UNIX. Средства файловой системы для защиты информации
10. Задачи операционных систем по управлению устройствами. Блочные и символьные драйверы
Подсистема управления вводом- выводом. Драйверы устройств. Асинхронный и синхронный драйверы. Драйверы блочных и символьных устройств. Базовая система ввода- вывода (BIOS).
- Преподаватель: Михаил Аристов