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

Задачи дисциплины:

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

-  методов системного администрирования, настройки и конфигурирования ОС;

особенностей практической реализации  реально существующих ОС.

Краткое содержание разделов (тем, модулей)

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

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

Классификация операционных систем. Основные принципы их построения. Процесс – основной агент в операционной системе. Марковская модель процесса с дискретными состояниями и непрерывным временем перехода. Диаграмма состояний процесса. Ресурс как основной объект распределения в операционной системе, классификация ресурсов. Виртуализация – основной принцип решения задач, стоящих перед ОС.

2.   Процессы в операционных системах и методы управления ими

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

3.  Двухуровневая схема управления процессами. Управление на основе компиляции и интерпретации

Разделение задач по характеру использования ресурсов. Задачи и содержание долгосрочного планирования. Интерпретативный  и компилятивный принципы реализации долгосрочного планирования. Реализация схемы управления заданиями в операционной системе майнфрэймов. Задача краткосрочного планирования. Планировщик (супервизор) задач и его взаимодействие с Главным планировщиком. Особенности реализации двухуровневой схемы управления в операционной системе UNIX

4. Организация мультипрограммной работы. Дисциплины распределения процессорного времени

Состав модулей операционной системы, необходимый для мультипрограммной обработки данных. Необходимость защиты системы и пользователей. Ядро системы и его функции. Структуры данных ядра, защищенный и незащищенный режимы работы, переключение между режимами. Контекст процесса

5.  Параллельные процессы. Ситуации взаимоисключения и взаимной блокировки процессов

Управляющие конструкции для описания параллелизма. Критические участки параллельных процессов. Примитивы взаимоисключения. Семафоры и мониторы как средство управления параллельными процессами

6.  Организация межпроцессных взаимодействий

Взаимодействие процессов в ОС. Механизмы IPC – неименованные и именованные каналы, очереди сообщений, семафоры, разделяемые сегменты памяти. Сокеты

7. Задачи операционной системы по управлению ресурсом памяти. Дисциплины распределения памяти

Иерархии памяти в вычислительной системе. Основные стратегии , реализуемые в задаче управления памятью. Дисциплины распределения памяти – однопользовательская, многозадачная с фиксированным числом разделов, многопользовательская с переменным числом разделов. Защита памяти при реализации различных дисциплин. Системные затраты на управление памятью – «сборка мусора».

8.  Организация виртуальной памяти. Страничное, сегментное и комбинированное распределения

Концепция виртуальной памяти. Механизм динамического отображения адресов. Страничное, сегментное и комбинированное сегментно- страничное отображение. Защита данных при использовании виртуальной памяти. Стратегии подкачки страниц

9.  Управление информацией и организация файловой системы. Современные архитектуры файловых систем

Задачи файловой системы по управлению информацией. Иерархические файловые системы. Сравнительная характеристика реализации файловой системы в DOS/Windows и UNIX. Средства файловой системы для защиты информации

10. Задачи операционных систем по управлению устройствами. Блочные и символьные драйверы

Подсистема управления вводом- выводом. Драйверы устройств. Асинхронный и синхронный драйверы. Драйверы блочных и символьных устройств. Базовая система ввода- вывода (BIOS).