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-модуля
Что такое экспорт
Рынки акций - перейти
Вексельное обращение - перейти
Рынок облигаций - перейти
Фондовая торговля - перейти
Дэйтрейдинг онлайн - перейти
Внутридневной трейдинг - перейти
Игра на бирже - перейти
Фондовый рынок РФ - перейти
Ценные бумаги в РФ - перейти
Технический анализ на биржах РФ - перейти
Фьючерсы - перейти
Фьючерсы - перейти
Фьючерсные контракты - перейти
Срочные контракты - перейти
Теханализ фьючерсов - перейти