Virtual Devices (3.1) (vdag31qh.hlp) (
Table of Contents;
Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software,
purely for historical purposes.
If you're looking for up-to-date documentation, particularly for programming,
you should not rely on the information found here, as it will be woefully
out of date.
_PageGetSizeAddr
◄Up► ◄Next► ◄Previous►
────────────────────────────────────────────────────────────────────────────
include vmm.inc
VMMcall _PageGetSizeAddr, <hMem, flags>
mov ecx, eax ; zero in eax and edx if error
or ecx, edx
jz error
mov [Pages], eax ; number of pages in memory block
mov [Address], edx ; ring-0 linear address of memory block
The _PageGetSizeAddr service returns the size and linear address of an
existing block of memory.
Parameter Description
────────────────────────────────────────────────────────────────────────────
hMem Specifies a handle identifying the memory block for which to
return information. This handle must have been previously created
using the _PageAllocate or _PageReAllocate service.
flags Specifies the operation flags. This parameter must be set to
zero.
Return Value
The EAX register contains the number of pages in the memory block, and EDX
register contains the ring-0 linear address of the memory block. The EAX and
EDX registers both contain zero to indicate an error, such as an invalid
memory handle.
Comments
The returned number of pages specifies the total size of the block, not just
the number of pages currently present.
Uses
EAX, EDX
See Also
_PageAllocate, _PageReAllocate
♦