Windows для профессионалов


Содержание


Работа с волокнами - часть 3
Программа-пример Counter
Программа-пример Counter - часть 2
Программа-пример Counter - часть 3
Виртуальное адресное пространство процесса
Как адресное пространство разбивается на разделы
Раздел для выявления нулевых указателей (Windows 2000 и Windows 98)
Раздел для совместимости с программами DOS и 16-разрядной Windows (только Windows 98)
Раздел для кода и данных пользовательского режима (Windows 2000 и Windows 98)
Раздел для кода и данных пользовательского режима (Windows 2000 и Windows 98) - часть 2
Раздел для кода и данных пользовательского режима (Windows 2000 и Windows 98) - часть 3
Закрытый раздел размером 64 Кб (только Windows 2000)
Раздел для общих MMF (только Windows 98)
Раздел для кода и данных режима ядра (Windows 2000 и Windows 98)
Регионы в адресном пространстве
Передача региону физической памяти
Физическая память и страничный файл
Физическая память и страничный файл - часть 2
Физическая память в страничном файле не хранится
Физическая память в страничном файле не хранится - часть 2
Атрибуты защиты
Защита типа "копирование при записи"
Специальные флаги атрибутов защиты
Подводя итоги
Подводя итоги - часть 2
Подводя итоги - часть 3
Блоки внутри регионов
Блоки внутри регионов - часть 2
Особенности адресного пространства в Windows 98
Особенности адресного пространства в Windows 98 - часть 2
Выравнивание данных
Выравнивание данных - часть 2
Выравнивание данных - часть 3
Выравнивание данных - часть 4
Выравнивание данных - часть 5
Глава 14 - Исследование виртуальной памяти
Системная информация
Системная информация - часть 2
Программа-пример SysInfo
Статус виртуальной памяти
Программа-пример VMStat
Программа-пример VMStat - часть 2
Определение состояния адресного пространства
Функция VMQuery
Функция VMQuery - часть 2
Функция VMQuery - часть 3
Программа-пример VMMap
Глава 15 - Использование виртуальной памяти в приложениях
Резервирование региона в адресном пространстве
Резервирование региона в адресном пространстве - часть 2
Резервирование региона в адресном пространстве - часть 3
Передача памяти зарезервированному региону
Резервирование региона с одновременной передачей физической памяти
В какой момент региону передают физическую память
В какой момент региону передают физическую память - часть 2
В какой момент региону передают физическую память - часть 3
Возврат физической памяти и освобождение региона
В какой момент физическую память возвращают системе
В какой момент физическую память возвращают системе - часть 2
Программа-пример VMAIloc
Программа-пример VMAIloc - часть 2
Изменение атрибутов защиты
Сброс содержимого физической памяти
Сброс содержимого физической памяти - часть 2
Программа-пример MemReset
Механизм Address Windowing Extensions (только Windows 2000)
Механизм Address Windowing Extensions (только Windows 2000) - часть 2
Механизм Address Windowing Extensions (только Windows 2000) - часть 3
Механизм Address Windowing Extensions (только Windows 2000) - часть 4
Механизм Address Windowing Extensions (только Windows 2000) - часть 5
Механизм Address Windowing Extensions (только Windows 2000) - часть 6
Программа-пример AWE
Глава 16 - Стек потока
Глава 16 - Стек потока - часть 2
Глава 16 - Стек потока - часть 3
Стек потока в Windows 98
Стек потока в Windows 98 - часть 2
Стек потока в Windows 98 - часть 3
Функция из библиотеки С/С++ для контроля стека
Функция из библиотеки С/С++ для контроля стека - часть 2
Программа-пример Summation
Программа-пример Summation - часть 2
Программа-пример Summation - часть 3
ГЛАВА 17 Проецируемые в память файлы
Проецирование в память EXE- и DLL-файлов
Проецирование в память EXE- и DLL-файлов - часть 2
Статические данные не разделяются несколькими экземплярами EXE или DLL
Статические данные не разделяются несколькими экземплярами EXE или DLL - часть 2
Статические данные разделяются несколькими экземплярами EXE или DLL
Статические данные разделяются несколькими экземплярами EXE или DLL - часть 2
Статические данные разделяются несколькими экземплярами EXE или DLL - часть 3
Статические данные разделяются несколькими экземплярами EXE или DLL - часть 4
Статические данные разделяются несколькими экземплярами EXE или DLL - часть 5
Программа-пример Applnst
Файлы данных, проецируемые в память
Метод 1: один файл, один буфер
Метод 2: два файла, один буфер
Метод 3: один файл, два буфера
Метод 4: один файл и никаких буферов
Использование проецируемых в память файлов
Этап1: создание или открытие объекта ядра "файл"
Этап 2: создание объекта ядра "проекция файла"
Этап 2: создание объекта ядра "проекция файла" - часть 2
Этап 2: создание объекта ядра "проекция файла" - часть 3
Этап 2: создание объекта ядра "проекция файла" - часть 4
Этап 3: проецирование файловых данных на адресное пространство процесса
Этап 3: проецирование файловых данных на адресное пространство процесса - часть 2
Этап 3: проецирование файловых данных на адресное пространство процесса - часть 3
Этап 4: отключение файла данных от адресного пространства процесса
Этап 4: отключение файла данных от адресного пространства процесса - часть 2
Этапы 5 и 6: закрытие объектов "проекция файла" и "файл"
Программа-пример FileRev
Программа-пример FileRev - часть 2
Обработка больших файлов
Обработка больших файлов - часть 2
Проецируемые файлы и когерентность
Базовый адрес файла, проецируемого в память
Базовый адрес файла, проецируемого в память - часть 2
Особенности проецирования файлов на разных платформах
Особенности проецирования файлов на разных платформах - часть 2
Особенности проецирования файлов на разных платформах - часть 3
Совместный доступ процессов к данным через механизм проецирования
Файлы, проецируемые на физическую память из страничного файла
Программа-пример MMFShare
Частичная передача физической памяти проецируемым файлам
Частичная передача физической памяти проецируемым файлам - часть 2
Программа-пример MMFSparse
Программа-пример MMFSparse - часть 2
Программа-пример MMFSparse - часть 3
ГЛАВА 18 Динамически распределяемая память
Стандартная куча процесса
Дополнительные кучи в процессе
Защита компонентов
Более эффективное управление памятью
Локальный доступ
Исключение издержек, связанных с синхронизацией потоков
Быстрое освобождение всей памяти в куче
Создание дополнительной кучи
Создание дополнительной кучи - часть 2
Выделение блока памяти из кучи
Изменение размера блока
Определение размера блока
Освобождение блока
Уничтожение кучи
Использование куч в программах на С++
Использование куч в программах на С++ - часть 2
Использование куч в программах на С++ - часть 3
Использование куч в программах на С++ - часть 4
Другие функции управления кучами
Другие функции управления кучами - часть 2
Глава 19 - DLL: основы
Глава 19 - DLL: основы - часть 2
DLL и адресное пространство процесса
DLL и адресное пространство процесса - часть 2
Общая картина
Общая картина - часть 2
Общая картина - часть 3
Создание DLL-модуля
Создание DLL-модуля - часть 2
Что такое экспорт



- Начало -