Программирование для Windows NT

       

Программирование для Windows NT

Аннотация
Введение
Управление памятью
Немного истории
Управление памятью в MS-DOS
Управление памятью в Microsoft Windows версии 3.1

Адресация памяти
Пулы памяти в Microsoft Windows версии 3.1
Виртуальная память в Microsoft Windows NT
Несегментированная модель памяти FLAT
Изолированные адресные пространства
Дескрипторы страниц памяти
Состояние страниц памяти

Функции для работы с виртуальной памятью
Получение виртуальной памяти
Освобождение виртуальной памяти
Три состояния страниц виртуальной памяти
Фиксирование страниц виртуальной памяти
Изменение типа разрешенного доступа для страниц памяти
Получение информации об использовании виртуальной памяти
Приложение VIRTUAL

Описание исходных текстов приложения
Определения и глобальные переменные

Функция WinMain
Функция WndProc
Функция WndProc_OnCreate
Функция WndProc_OnDestroy
Функция WndProc_OnCommand
Работа с пулами памяти
Пулы памяти в Microsoft Windows NT
Функции для работы с пулами памяти
Получение идентификатора стандартного пула

Создание динамического пула
Удаление динамического пула
Получение блока памяти из пула
Изменение размера блока памяти
Определение размера блока памяти
Освобождение памяти
Использование функций malloc и free
Старые функции управления памятью
Приложение HEAPMEM

Исходный текст приложения
Работа с динамическим пулом памяти
Работа со стандартным пулом памяти
/Span>Мультизадачность
Процессы и задачи в Microsoft Windows NT
Распределение времени между задачами
Классы приоритета процессов
Относительный приоритет задач

Проблемы синхронизации задач и процессов
Передача данных между процессами и задачами
Запуск задач
Функция CreateThread
Функция _beginthread
Функция _beginthreadex
Управление запущенными задачами
Изменение приоритета задачи

Определение приоритета задачи
Приостановка и возобновление выполнения задачи
Временная приостановка работы задачи
Завершение задачи
Освобождение идентификатора задачи
Приложение MultiSDI

Описание функций

Функция WndProc_OnPaint
Функция задачи PaintEllipse
Функция задачи PaintRect
Функция задачи PaintText
Приложение MultiMDI

Описание функций приложения
Функция WinMain
Функция FrameWndProc
Создание нового дочернего окна
Обработка сообщений от меню Window
Обработка сообщений от меню Priority
Функция ChildWndProc
Обработка сообщения WM_PAINT

Обработка сообщения WM_CLOSE
Обработка сообщения WM_RBUTTONDOWN
Обработка сообщения WM_COMMAND
Функция задачи ThreadRoutine
/Span>процессЫ
Запуск процесса
Параметры функции CreateProcess
LpCommandLine
LpThreadAttributes
BInheritHandles

DwCreationFlags
LpEnvironment
LpCurrentDirectory
LpStartupInfo
Cb
DwFlags
LpDesktop
LpTitle
DwY

DwYSize
DwYCountChars
DwFillAttribute
WShowWindow
HStdError
LpProcessInformation

Программирование для Windows NT

Завершение процесса
Приложение PSTART
Исходные тексты приложения
Определения и глобальные переменные
Функция WndProc_OnCommand

Функция StartProcess
Функция DlgProc
Функция DlgProc_OnInitDialog
Функция DlgProc_OnCommand
/Span>Синхронизация задач и процессов
Легко ли ждать
Ожидание завершения задачи или процесса

Ожидание завершения нескольких задач или процессов
Синхронизация задач с помощью событий
Создание события
Открытие события
Установка события
Cброс события
Функция PulseEvent
Приложения EVENT и EVENTGEN
Исходные тексты приложения EVENT

Исходные тексты приложения EVENTGEN
Последовательный доступ к ресурсам
Критические секции
Инициализация критической секции
Удаление критической секции
Вход в критическую секцию и выход из нее
Рекурсивный вход в критическую секцию

Работа задачи с несколькими критическими секциями
Объекты Mutex
Создание объекта Mutex
Освобождение идентификатора объекта Mutex
Открытие объекта Mutex
Как завладеть объектом Mutex
Освобождение объекта Mutex
Рекурсивное использование объектов Mutex
Блокирующие функции

Приложение MutexSDI
Синхронизация с использованием семафоров

Как работает семафор
Функции для работы с семафорами
Создание семафора
Уничтожение семафора
Открывание семафора
Увеличение значения счетчика семафора
Уменьшение значения счетчика семафора
Определение текущего значения счетчика семафора
Приложение SEMMDI

Обработка сообщений от меню Semaphore

/Span>Работа с файлами
Преимущества файловой системы NTFS
Операционная система MS-DOS и файловая система FAT
Операционная система Microsoft Windows версии 3.1
Операционная система Microsoft Windows for Workgroups

Операционная система Microsoft Windows 95
Файловая система HPFS
Основные характеристики файловой системы NTFS
Функции для работы с файлами
Универсальная функция CreateFile
Функция CloseHandle
Функции ReadFile и WriteFile

Функция FlushFileBuffers
Функция SetFilePointer
Функция SetEndOfFile
Функции LockFile и UnlockFile
Атрибуты файла
Размер файла
Набор флагов файла
Отметки времени для файла

Получение информации о файле по его идентификатору
Асинхронные операции с файлами
Еще несколько операций с файлами
Копирование файла
Перемещение файла
Удаление файла
Работа с каталогами

Определение текущего каталога
Определение системного каталога
Определение каталога Microsoft Windows NT
Изменение текущего каталога
Создание каталога
Удаление каталога
Изменение имени каталога
Просмотр содержимого каталога
Извещения от файловой системы

Информация о файловой системе
Определение количества дисковых устройств в системе
Определение типа устройства
Определение параметров логического устройства
Изменение метки тома
Прямое управление дисковым устройством
Литература

Предметный указатель

Содержание раздела