Введение
Глава 1. Архитектура, назначение и функции операционных систем
1.1. Понятие операционной системы, операционной среды и операционной оболочки
1.2. Эволюция операционных систем
1.3. Назначение, состав и функции ОС
1.4. Архитектура операционной системы
1.5. Классификация операционных систем
1.6. Эффективность ОС
1.7. Совместимость и множественные прикладные среды
1.8. Виртуальные машины как современный подход к реализации множественных прикладных сред
..1.8.1. История развития мониторов виртуальных машин
..1.8.2. Проблемы и методы виртуализации Монитор виртуальных машин
..1.8.3. Новые технологии виртуализации
..1.8.4. Виртуализация серверов с архитектурой Intel
..1.8.5. Классификация виртуальных машин
..1.8.6. Эффекты виртуализации. Виртуальные центры данных
1.9. Прикладные рабочие среды виртуальных машин
Глава 2. Организация вычислительного процесса
2.1. Концепция процессов и потоков. Задание, процессы, потоки (нити), волокна
2.2. Мультипрограммирование. Формы многопрограммной работы
2.3. Управление процессами и потоками
..2.3.1. Основные функции управления процессами и потоками
..2.3.2. Роль процессов, потоков и волокон в мультипрограммировании
2.4. Создание процессов и потоков. Модели процессов и потоков
..2.4.1. Процессы
..2.4.2. Потоки и их модели
2.5. Планирование заданий, процессов и потоков
..2.5.1. Виды планирования
..2.5.2. Алгоритмы планирования потоков
..2.5.3. Алгоритмы приоритетного планирования
2.6. Взаимодействие и синхронизация процессов и потоков
..2.6.1. Общие положения
..2.6.2. Конкуренция процессов в борьбе за ресурсы
..2.6.3. Сотрудничество с использованием разделения
..2.6.4. Сотрудничество с использованием связи
2.7. Методы взаимоисключений
..2.7.1. Требования к программным алгоритмам организации взаимодействия процессов
..2.7.2. Запрет прерываний
..2.7.3. Блокирующие переменные
..2.7.4. Строгое чередование
..2.7.5. Флаги готовности
..2.7.6. Алгоритм Петерсона
..2.7.7. Алгоритм булочной (Bakery algorithm)
2.8. Аппаратная поддержка взаимоисключений
..2.8.1. Команда Test-and-Set (Проверить и присвоить 1)
..2.8.2. Команда Swap (Обменять значения)
2.9. Семафоры и мониторы
..2.9.1. Семафоры Дейкстры
..2.9.2. Мониторы Хоара и Хансена
2.10. Взаимоблокировки (тупики)
2.11. Синхронизирующие объекты ОС
2.12. Аппаратно-программные средства поддержки мультипрограммирования
2.13. Системные вызовы
2.14. Архитектура современных микропроцессоров
..2.14.1. Многонитевая архитектура микропроцессоров
..2.14.2. Многоядерная архитектура микропроцессоров
..2.14.3. Многоядерные архитектуры и программирование
Глава 3. Управление памятью. Методы, алгоритмы и средства
3.1. Организация памяти современного компьютера
..3.1.1. Логическая и физическая организация памяти
..3.1.2. Виртуальная память
3.2. Функции ОС по управлению памятью
3.3. Распределение памяти
..3.3.1. Классификация методов распределения памяти
..3.3.2. Распределение памяти фиксированными разделами
..3.3.3. Распределение памяти динамическими разделами
..3.3.4. Динамическое распределение памяти перемещаемыми разделами
3.4. Страничная организация виртуальной памяти
..3.4.1. Методы структуризации виртуального адресного пространства
..3.4.2. Страничная организация виртуальной памяти
3.5. Оптимизация функционирования страничной виртуальной памяти
..3.5.1. Структуризация виртуального адресного пространства
..3.5.2. Буфер быстрого преобразования адреса
..3.5.3. Оптимизация размера страницы
..3.5.4. Управление страничным обменом
..3.5.5. Управление резидентным множеством
3.6. Сегментная организация виртуальной памяти
3.7. Сегментно-страничная виртуальная память
Глава 4. Подсистема ввода-вывода. Файловые системы
4.1. Устройства ввода-вывода
4.2. Назначение и задачи подсистемы ввода-вывода
..4.2.1. Основные функции подсистемы ввода-вывода
..4.2.2. Организация параллельной работы устройств ввода-вывода и процессора
..4.2.3. Согласование скоростей обмена и кэширования данных
..4.2.4. Разделение устройств и данных между процессами
..4.3.5. Обеспечение логического интерфейса между устройствами и системой
..4.2.6. Поддержка широкого спектра драйверов
..4.2.7. Динамическая загрузка и выгрузка драйверов
..4.2.8. Поддержка синхронных и асинхронных операций ввода-вывода
4.3. Многослойная (иерархическая) модель подсистемы ввода-вывода
..4.3.1. Общая схема
..4.3.2. Драйверы
4.4. Файловые системы
..4.4.1. Основные понятия. Цели и задачи файловой системы
..4.4.2. Архитектура файловой системы
4.5. Организация файлов и доступ к ним
..4.5.1. Типы, именование и атрибуты файлов
..4.5.2. Логическая организация файла
..4.5.3. Каталоговые системы
4.6. Физическая организация файловой системы
..4.6.1. Информационная структура магнитных дисков
..4.6.2. Физическая организация и адресация файла
..4.6.3. Физическая организация FAT-системы
4.7. Файловые операции
..4.7.1. Набор файловых операций
..4.7.2. Способы выполнения файловых операций
..4.7.3. Контроль доступа к файлам
Глава 5. Распределенные операционные системы и среды
5.1. Недостатки сосредоточенных
и изолированных систем
5.2. Понятие компьютерной сети. Преимущества объединения
5.3. Терминология компьютерных сетей
5.4. Сетевые операционные системы
5.5. Сетевые службы и сетевые сервисы
5.6. Одноранговые и серверные сетевые ОС
5.7. Службы каталогов сетевых серверных ОС
..5.7.1. Понятие службы каталогов
..5.7.2. Архитектура Active Directory
..5.7.3. Контроллеры домена и сайты
..5.7.4. Управление объектами Active Directory
5.8. Концепция распределенной обработки в сетевых ОС
..5.8.1. Модели распределенных приложений
..5.8.2. Передача сообщений в распределенных системах
..5.8.3. Вызов удаленных процедур
..5.8.4. Сетевые файловые системы
Глава 6. Безопасность, диагностика и восстановление ОС после отказов
6.1. Понятие безопасности. Требования безопасности
6.2. Классификация угроз безопасности
..6.2.1. Виды угроз и атак
..6.2.2. Атаки изнутри системы. Злоумышленники. Взломщики. Методы вторжения
..6.2.3. Случайная потеря данных
6.3. Атаки на систему снаружи. Зловредное программное обеспечение
6.4. Системный подход к обеспечению безопасности
6.5. Политика безопасности
6.6. Выявление вторжений
6.7. Базовые технологии безопасности
..6.7.1. Шифрование
..6.7.2. Односторонние функции шифрования
..6.7.3. Аутентификация, пароли, авторизация, аудит
..6.7.4. Технология защищенного канала
6.8. Технологии аутентификации
..6.8.1. Сетевая аутентификация на основе многоразового пароля
..6.8.2. Аутентификация с использованием одноразового пароля
..6.8.3. Аутентификация информации
6.9. Система Kerberos
6.10. Средства восстановления и защиты ОС от сбоев
..6.10.1. Защита системных файлов операционных систем
..6.10.2. Безопасный режим загрузки операционной системы
..6.10.3. Консоль восстановления
..6.10.4. Диск аварийного восстановления
..6.10.5. Загрузочная дискета
..6.10.6. Установочные дискеты
..6.10.7. Резервное копирование и восстановление
Глава 7. Сетевые операционные системы
7.1. Виды и требования, предъявляемые к сетевым операционным системам
7.2. Операционная система UNIX
..7.2.1. История системы UNIX
..7.2.2. Общая характеристика ОС UNIX
..7.2.3. Интерфейсы системы UNIX
..7.2.4. Структура ядра системы UNIX
..7.2.5. Загрузка UNIX
..7.2.6. Оболочка UNIX
..7.2.7. Утилиты UNIX
..7.2.8. Процессы в системе UNIX
..7.2.9. Системные вызовы управления процессами в UNIX
..7.2.10. Системные вызовы управления потоками
..7.2.11. Реализация процессов в UNIX
..7.2.12. Планирование в системе UNIX
..7.2.13. Управление памятью в системе UNIX
..7.2.14. Алгоритм замещения страниц
..7.2.15. Ввод-вывод в системе UNIX
7.3. Операционная система Windows
..7.3.1. История создания и развития
..7.3.2. Структура системы Windows 2000
..7.3.3. Уровень ядра
..7.3.4. Исполняющая система
..7.3.5. Драйверы устройств
..7.3.6. Реализация объектов
..7.3.7. Подсистемы окружения
..7.3.8. Файловая система Windows 2000
..7.3.9. Сжатие файлов и шифрующая файловая система
..7.3.10. Безопасность в Windows 2000
Глава 8. Интерфейсы ОС и средства поддержки мультипрограммирования
8.1. Интерфейс прикладного программирования
..8.1.1. Основные определения
..8.1.2. Классификация системных вызовов
..8.1.3. Программирование системных вызовов
..8.1.4. Реализация интерфейса прикладного программирования
8.2. Интерфейс пользователя
..8.2.1. Типы интерфейсов
..8.2.2. Консоль
..8.2.3. Графическая среда
..8.2.4. Пользовательский интерфейс приложений
..8.2.5. Архитектура, управляемая событиями
8.3. Аппаратные средства поддержки многопрограммной работы компьютера
..8.3.1. Общая характеристика средств поддержки мультипрограммирования
..8.3.2. Регистры процессора
..8.3.3. Особенности адресации памяти и преобразования адресов
..8.3.4. Система прерываний и приоритетов
..8.3.5. Привилегии и защита информации
..8.3.6. Применение кэш-памяти
..8.3.7. Средства измерения времени
Глава 9. Эффективность, мониторинг и оптимизация операционных систем
9.1. Сложность создания эффективных ОС
9.2. Основные понятия эффективности ОС
9.3. Виды показателей эффективности ОС
9.4. Обобщенные показатели эффективности ОС
9.5. Частные показатели эффективности операционных систем
9.6. Причины снижения производительности современных компьютерных систем
9.7. Настройка и оптимизация ОС – путь к повышению производительности компьютерной системы
9.8. Инструменты мониторинга и оптимизации операционных систем
Литература