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

       

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

Программа-пример Counter
Виртуальное адресное пространство процесса

Как адресное пространство разбивается на разделы
Раздел для выявления нулевых указателей (Windows 2000 и Windows 98)
Раздел для совместимости с программами DOS и 16-разрядной Windows (только Windows 98)
Раздел для кода и данных пользовательского режима (Windows 2000 и Windows 98)
Закрытый раздел размером 64 Кб (только Windows 2000)
Раздел для общих MMF (только Windows 98)
Раздел для кода и данных режима ядра (Windows 2000 и Windows 98)
Регионы в адресном пространстве



Передача региону физической памяти
Физическая память и страничный файл
Физическая память в страничном файле не хранится
Атрибуты защиты
Защита типа "копирование при записи"
Специальные флаги атрибутов защиты
Подводя итоги

Блоки внутри регионов
Особенности адресного пространства в Windows 98
Выравнивание данных

Глава 14 - Исследование виртуальной памяти
Системная информация
Программа-пример SysInfo
Статус виртуальной памяти
Программа-пример VMStat
Определение состояния адресного пространства
Функция VMQuery

Программа-пример VMMap
Глава 15 - Использование виртуальной памяти в приложениях
Резервирование региона в адресном пространстве
Передача памяти зарезервированному региону
Резервирование региона с одновременной передачей физической памяти
В какой момент региону передают физическую память

Возврат физической памяти и освобождение региона
В какой момент физическую память возвращают системе
Программа-пример VMAIloc
Изменение атрибутов защиты
Сброс содержимого физической памяти
Программа-пример MemReset

Механизм Address Windowing Extensions (только Windows 2000)
Программа-пример AWE
Глава 16 - Стек потока

Стек потока в Windows 98
Функция из библиотеки С/С++ для контроля стека
Программа-пример Summation
ГЛАВА 17 Проецируемые в память файлы
Проецирование в память EXE- и DLL-файлов

Статические данные не разделяются несколькими экземплярами EXE или DLL
Статические данные разделяются несколькими экземплярами EXE или DLL
Программа-пример Applnst
Файлы данных, проецируемые в память

Метод 1: один файл, один буфер
Метод 2: два файла, один буфер
Метод 3: один файл, два буфера
Метод 4: один файл и никаких буферов
Использование проецируемых в память файлов
Этап1: создание или открытие объекта ядра "файл"
Этап 2: создание объекта ядра "проекция файла"

Этап 3: проецирование файловых данных на адресное пространство процесса
Этап 4: отключение файла данных от адресного пространства процесса
Этапы 5 и 6: закрытие объектов "проекция файла" и "файл"
Программа-пример FileRev
Обработка больших файлов

Проецируемые файлы и когерентность
Базовый адрес файла, проецируемого в память
Особенности проецирования файлов на разных платформах
Совместный доступ процессов к данным через механизм проецирования
Файлы, проецируемые на физическую память из страничного файла
Программа-пример MMFShare
Частичная передача физической памяти проецируемым файлам

Программа-пример MMFSparse
ГЛАВА 18 Динамически распределяемая память
Стандартная куча процесса
Дополнительные кучи в процессе
Защита компонентов
Более эффективное управление памятью
Локальный доступ

Исключение издержек, связанных с синхронизацией потоков
Быстрое освобождение всей памяти в куче
Создание дополнительной кучи
Выделение блока памяти из кучи
Изменение размера блока
Определение размера блока
Освобождение блока
Уничтожение кучи
Использование куч в программах на С++

Другие функции управления кучами
Глава 19 - DLL: основы
DLL и адресное пространство процесса
Общая картина

Создание DLL-модуля
Что такое экспорт


Рынки акций - перейти
Вексельное обращение - перейти
Рынок облигаций - перейти

Фондовая торговля - перейти
Дэйтрейдинг онлайн - перейти
Внутридневной трейдинг - перейти
Игра на бирже - перейти
Фондовый рынок РФ - перейти
Ценные бумаги в РФ - перейти
Технический анализ на биржах РФ - перейти
Фьючерсы - перейти
Фьючерсы - перейти
Фьючерсные контракты - перейти

Срочные контракты - перейти
Теханализ фьючерсов - перейти