Составители:
ОГЛАВЛЕНИЕ
Введение ............................................................................................................................... 5
Глава 1. Принципы разработки программ в современных ОС ................................. 12
§ 1.1. Операционные системы для ПЭВМ ................................................................. 12
1.1.1. ОС CP/M ......................................................................................................... 12
1.1.2. ОС DOS .......................................................................................................... 12
1.1.3. ОС OS/2 .......................................................................................................... 15
1.1.4. ОС UNIX ........................................................................................................ 16
1.1.5. ОС LINUX ...................................................................................................... 18
1.1.6. ОС QNX .......................................................................................................... 20
1.1.7. ОС WINDOWS ............................................................................................... 20
§ 1.2. Основы программирования в ОС Windows ..................................................... 26
1.2.1. Принципы взаимодействия ОС Windows с прикладными программами 27
1.2.2. Типы данных в Windows............................................................................... 30
1.2.3. Графический и консольный интерфейс ...................................................... 30
1.2.4. Создание элементарного графического окна ............................................. 32
1.2.5. Сходства и различия Windows 9x и Windows NT (2000, XP).................... 34
§ 1.3. Принципы разработки динамических библиотек ........................................... 35
1.3.1. Основные положения .................................................................................... 35
1.3.2. Главная функция DllMain() .......................................................................... 37
1.3.3. Экспортирование функций из DLL ............................................................. 38
1.3.4. Подключение DLL ........................................................................................ 40
Глава 2. Организация многозадачности в современных ОС ...................................... 45
§ 2.1. Общие принципы организации многозадачности .......................................... 45
2.1.1. Основные понятия и определения ............................................................... 45
2.1.2. Планирование и диспетчеризация ............................................................... 49
§ 2.2. Основы многозадачности в ОС Windows ........................................................ 56
2.2.1. Основные принципы многозадачности в Windows .................................... 56
2.2.2. API-функции для реализации механизма многозадачности ..................... 61
2.2.3. Синхронизация потоков ............................................................................... 69
2.2.4. Использование классов MFC для создания потоков ................................. 75
Глава 3. Прерывания и исключения ............................................................................... 77
§ 3.1. Система обработки прерываний ....................................................................... 77
§ 3.2. Общие принципы обработки исключений....................................................... 84
§ 3.3. Средства обработки исключений в Visual C++ ............................................... 86
Глава 4. Организация памяти в современных ОС ....................................................... 91
§ 4.1. Общие принципы организации памяти ............................................................ 91
§ 4.2. Способы распределения памяти ....................................................................... 93
4.2.1. Простое непрерывное распределение памяти ............................................ 93
4.2.2. Распределение памяти с перекрытием (оверлейные структуры) ............. 94
4.2.3. Распределение памяти разделами ................................................................ 95
4.2.4. Сегментное распределение памяти ............................................................. 97
4.2.5. Страничное распределение памяти ............................................................. 100
4.2.6. Сегментно-страничное распределение памяти .......................................... 102
§ 4.3. Организация памяти в ОС Windows ................................................................. 103
§ 4.4. Интерфейсы API-функций для управления памятью в ОС Windows ........... 109
4.4.1. API-функции для обеспечения работы с виртуальной памятью .............. 110
4.4.2. API-функции для обеспечения проецирования файлов ............................ 115
5
ОГЛАВЛЕНИЕ Введение ............................................................................................................................... 5 Глава 1. Принципы разработки программ в современных ОС ................................. 12 § 1.1. Операционные системы для ПЭВМ ................................................................. 12 1.1.1. ОС CP/M ......................................................................................................... 12 1.1.2. ОС DOS .......................................................................................................... 12 1.1.3. ОС OS/2 .......................................................................................................... 15 1.1.4. ОС UNIX ........................................................................................................ 16 1.1.5. ОС LINUX ...................................................................................................... 18 1.1.6. ОС QNX .......................................................................................................... 20 1.1.7. ОС WINDOWS ............................................................................................... 20 § 1.2. Основы программирования в ОС Windows ..................................................... 26 1.2.1. Принципы взаимодействия ОС Windows с прикладными программами 27 1.2.2. Типы данных в Windows............................................................................... 30 1.2.3. Графический и консольный интерфейс ...................................................... 30 1.2.4. Создание элементарного графического окна ............................................. 32 1.2.5. Сходства и различия Windows 9x и Windows NT (2000, XP).................... 34 § 1.3. Принципы разработки динамических библиотек ........................................... 35 1.3.1. Основные положения .................................................................................... 35 1.3.2. Главная функция DllMain() .......................................................................... 37 1.3.3. Экспортирование функций из DLL ............................................................. 38 1.3.4. Подключение DLL ........................................................................................ 40 Глава 2. Организация многозадачности в современных ОС...................................... 45 § 2.1. Общие принципы организации многозадачности .......................................... 45 2.1.1. Основные понятия и определения ............................................................... 45 2.1.2. Планирование и диспетчеризация ............................................................... 49 § 2.2. Основы многозадачности в ОС Windows ........................................................ 56 2.2.1. Основные принципы многозадачности в Windows.................................... 56 2.2.2. API-функции для реализации механизма многозадачности ..................... 61 2.2.3. Синхронизация потоков ............................................................................... 69 2.2.4. Использование классов MFC для создания потоков ................................. 75 Глава 3. Прерывания и исключения ............................................................................... 77 § 3.1. Система обработки прерываний ....................................................................... 77 § 3.2. Общие принципы обработки исключений....................................................... 84 § 3.3. Средства обработки исключений в Visual C++ ............................................... 86 Глава 4. Организация памяти в современных ОС ....................................................... 91 § 4.1. Общие принципы организации памяти............................................................ 91 § 4.2. Способы распределения памяти ....................................................................... 93 4.2.1. Простое непрерывное распределение памяти ............................................ 93 4.2.2. Распределение памяти с перекрытием (оверлейные структуры) ............. 94 4.2.3. Распределение памяти разделами ................................................................ 95 4.2.4. Сегментное распределение памяти ............................................................. 97 4.2.5. Страничное распределение памяти ............................................................. 100 4.2.6. Сегментно-страничное распределение памяти .......................................... 102 § 4.3. Организация памяти в ОС Windows ................................................................. 103 § 4.4. Интерфейсы API-функций для управления памятью в ОС Windows ........... 109 4.4.1. API-функции для обеспечения работы с виртуальной памятью .............. 110 4.4.2. API-функции для обеспечения проецирования файлов ............................ 115 5