Часть 1.
1. Назначение ОС. Функции ОС. ОС как многоуровневая виртуальная машина. Понятие процесса, ресурса. Эволюция ОС, тенденции в развитии ОС.
2. Принципы построения ОС. Классификация ОС по различным признакам.
3. Многозадачность. Понятие процесса, контекста и дескриптора процесса. Виды многозадачности, их достоинства и недостатки. Жизненный цикл процесса. Многопоточность.
4. Понятие ресурса ОС. Управление ресурсами. Проблемы управления ресурсами, связанные с многозадачностью ОС. Проблема синхронизации процессов. Средства синхронизации. Проблема взаимной блокировки процессов.
5. Общая характеристика ОС Windows. Архитектура Windows.
6. Шаблон программы для Windows. Понятие сообщения. Принципы создания окон и обработки сообщений
...............
12) Организация памяти в Windows. Виртуальная память. Виртуальные адресные пространства 32-разрядных процессов, структура адресного пространства. Достоинства и недостатки используемой организации памяти.
13. Многозадачность и проблема организации обмена информацией между приложениями. Обзор средств Windows для межпроцессного обмена информацией.
14. Многозадачность и проблема синхронизации. Обзор и характеристика средств синхронизации, предоставляемых Windows.
15. Различные способы отслеживания временных интервалов в Windows-программе. Достоинства и недостатки.
16. Модели памяти для 16- и 32-разрядных приложений Windows. Проблема фрагментации памяти.
17. Особенности планирования потоков в Windows. Приоритеты процессов и потоков, обработка межпоточных сообщений.
18. Инверсия приоритетов.
Часть 2.
1-2. Семафоры Дейкстры. Организация критических секций с использованием абстрактных семафоров.
3. Особенности прохождения и обработки сообщения WM_PAINT. Различные способы получения контекста устройства отображения.
4. Работа с битовыми образами при помощи функций GDI. Задача отображения битовых образов. Рисование в невидимом буфере в памяти. Примеры программирования.
........
16) Синтаксис описания ресурсов и примеры программирования. Использование диалогов из ресурсов.
17. Организация обмена информацией между процессами при помощи сообщений. Примеры программирования.
18. Организация обмена информацией между процессами при помощи отображения файлов на память.
19. Примеры использования критических секций и мутексов Windows для синхронизации потоков и процессов.
20. Примеры использования событий и семафоров Windows для синхронизации потоков и процессов.
21. Модели вызова процедур, поддерживаемые Delphi. Проблемы, связанные с использованием DLL, написанных на различных языках программирования.
22. Страничный механизм организации памяти Windows. Декодирование линейного 32-разрядного виртуального адреса.
23. Функции ожидания. Примеры использования.
24. Анализ листинга программы, реализующей прием данных с последовательного порта.