Мы рассматривали функции для работы с виртуальной памятью. Для работы с небольшими областями памяти используются кучи. В DOS кучей являлась вся свободная память.
Каждая программа имеет следующую структуру.
/////////////// |
главная куча стек локальная куча переменные код ехе файла |
свободная
память
куча
данные
При работе с кучей используются следующие функции.
HeapCreate(…) – создание кучи. HeapDestroy(…) – уничтожение кучи. HeapAlloc(…) – выделение блока в куче.
HeapFree(…) – освобождение блока в куче. GetProcessHeap(…) – определение идентификатора кучи, предоставляемой процессу по умолчанию.