- 1. Введение
- 2. Програмирование в Windows
- 2.1. Интерфейс прикладного программирования Win32
- 2.2. Системный реестр Windows
- 2.3. Структура системы Windows
- 2.3.1. Структура операционной системы
- 2.3.1.1. Уровень абстрагирования оборудования (HAL)
- 2.3.1.2. Уровень ядра
- 2.3.1.3. Отложенные вызовы процедур (DPC)
- 2.3.1.4. Асинхронные вызовы процедур (APC)
- 2.3.1.5. Диспетчерские объекты
- 2.3.1.6. Исполнительный уровень
- 2.3.1.7. Драйверы устройств
- 2.3.2. Загрузка операционной системы
- 2.3.3. Реализация диспетчера объектов
- 2.3.4. Подсистемы, DLL и службы пользовательского режима
- Тест - "Программирование в Windows"
- 3. Процессы и потоки
- 3.1. Процессы
- 3.1.1. Модель процесса
- 3.1.2. Создание процесса
- 3.1.3. Завершение процесса
- 3.1.4. Иерархии процессов
- 3.1.5. Состояния процессов
- 3.1.6. Реализация процессов
- 3.1.7. Моделирование режима многозадачности
- 3.2. Потоки
- 3.2.1. Применение потоков
- 3.2.2. Классическая модель потоков
- 3.2.3. Реализация потоков в пользовательском пространстве
- 3.2.4. Реализация потоков в ядре
- 3.3. Взаимодействие процессов
- 3.3.1. Состязательная ситуация
- 3.3.2. Критические области
- 3.3.3. Взаимное исключение с активным ожиданием
- 3.3.4. Семафоры
- 3.3.5. Мьютексы
- 3.3.6. Мониторы
- 3.4. Планирование
- 3.4.1. Введение в планирование
- 3.4.1.1. Поведение процесса.
- 3.4.1.2. Категории алгоритмов планирования
- 3.4.1.3. Задачи алгоритма планирования
- 3.4.2. Планирование в пакетных системах
- 3.4.2.1. Алгоритм "Первым пришел — первым обслужен"
- 3.4.2.2. Алгоритм "Сначала самое короткое задание"
- 3.4.2.3. Алгоритм "Приоритет наименьшему времени выполнения"
- 3.4.3. Планирование в интерактивных системах
- 3.4.3.1. Циклическое планирование
- 3.4.3.2. Приоритетное планирование
- 3.4.3.3. Гарантированное планирование
- 3.4.4. Планирование потоков
- Тест - "Процессы и потоки"
- 4. Управление памятью
- 4.1. Понятие адресного пространства
- 4.2. Свопинг
- 4.3. Управление свободной памятью
- 4.3.1. Управление памятью с помощью битовых матриц
- 4.3.2. Управление памятью с помощью связанных списков
- 4.4. Виртуальная память
- 4.4.1. Страничная организация памяти
- 4.4.2. Таблицы страниц
- 4.4.3. Ускорение работы страничной организации памяти
- 4.5. Алгоритмы замещения страниц
- 4.5.1. Оптимальный алгоритм замещения страниц
- 4.5.2. Алгоритм исключения недавно использовавшейся страницы
- 4.5.3. Алгоритм FIFO
- 4.5.4. Алгоритм «второй шанс»
- 4.5.5. Алгоритм «часы»
- 4.5.6. Алгоритм замещения наименее востребованной страницы
- 4.6. Сегментация
- Тест - "Управление памятью"
- 5. Файловые системы
- 5.1 Файлы
- 5.1.1. Имена файлов
- 5.1.2. Структура файла
- 5.1.3. Типы файлов
- 5.1.4. Доступ к файлам
- 5.1.5. Атрибуты файлов
- 5.1.6. Операции с файлами
- 5.2. Каталоги
- 5.2.1. Системы с одноуровневыми каталогами
- 5.2.2. Иерархические системы каталогов
- 5.2.3. Операции с каталогами
- 5.3. Реализация файловой системы
- 5.3.1. Структура файловой системы
- 5.3.2. Реализация файлов
- 5.3.2.1. Непрерывное размещение
- 5.3.2.2. Размещение с использованием связанного списка
- 5.3.2.3. Размещение с помощью связанного списка, использующего таблицу в памяти
- 5.3.2.4. I-узлы
- 5.3.3. Реализация каталогов
- 5.4. Управление файловой системой и ее оптимизация
- 5.4.1. Управление дисковым пространством
- 5.4.2. Резервное копирование файловой системы
- 5.4.3. Производительность файловой системы
- 5.4.4. Дефрагментация дисков
- Тест - "Файловые системы"
- Лабораторный практикум
- Введение
- Методичка подсчета баллов по лаботаротным работам
- Содержание отчета по лабораторной работе
- Лабораторная работа № 1. Функции получения системной информации
- Лабораторная работа № 2. Архитектура Windows
- Лабораторная работа № 3. Архитектура памяти Windows
- Лабораторная работа № 4. Процессы
- Лабораторная работа № 5. Потоки
- Лабораторная работа № 6. Межпроцессное взаимодействие
- Лабораторная работа № 7. Визуализация ОС
- Список литературы
- Данные о пособии