.dvfree (Free Memory)

The .dvfree command frees a memory allocation owned by the target process.

.dvfree [/d] BaseAddress Size 

Parameters

/d
Decommits the allocation, but does not actually release the pages containing the allocation. If this option is used, the debugger calls VirtualFreeEx with the dwFreeType parameter equal to MEM_DECOMMIT. If this option is not used, the value MEM_RELEASE is used. See the Microsoft Windows SDK for details.

BaseAddress
Specifies the virtual address of the beginning of the allocation.

Size
Specifies the amount of memory to be freed, in bytes. The actual memory freed will always be a whole number of memory pages.

Environment

Item Description
Modes user mode only
Targets live debugging only
Platforms all

Remarks

The .dvfree command calls VirtualFreeEx to free an existing memory allocation. Unless the /d option is specified, the pages containing this memory are released.

This command can be used to free an allocation made by .dvalloc (Allocate Memory). It can also be used to free any block of memory owned by the target process, but freeing memory that was not acquired through .dvalloc will naturally pose risks to the stability of the target process.