WHvMapGpaRange

Bir bölümün konuk fiziksel adres alanı aralığını çağıranın işlemindeki belleğe eşler.

Sözdizimi

// Guest physical or virtual address
typedef UINT64 WHV_GUEST_PHYSICAL_ADDRESS;
typedef UINT64 WHV_GUEST_VIRTUAL_ADDRESS;


// Flags used by WHvMapGpaRange
typedef enum WHV_MAP_GPA_RANGE_FLAGS
{
    WHvMapGpaRangeFlagNone              = 0x00000000,
    WHvMapGpaRangeFlagRead              = 0x00000001,
    WHvMapGpaRangeFlagWrite             = 0x00000002,
    WHvMapGpaRangeFlagExecute           = 0x00000004,
    WHvMapGpaRangeFlagTrackDirtyPages   = 0x00000008,
} WHV_MAP_GPA_RANGE_FLAGS;

// Enables bitwise operators on the WHV_MAP_GPA_RANGE_FLAGS enumeration.
DEFINE_ENUM_FLAG_OPERATORS(WHV_MAP_GPA_RANGE_FLAGS);

HRESULT
WINAPI
WHvMapGpaRange(
    _In_ WHV_PARTITION_HANDLE Partition,
    _In_ VOID* SourceAddress,
    _In_ WHV_GUEST_PHYSICAL_ADDRESS GuestAddress,
    _In_ UINT64 SizeInBytes,
    _In_ WHV_MAP_GPA_RANGE_FLAGS Flags
    );

Parameters

Partition

Bölüm nesnesi için tanıtıcı.

SourceAddress

Eşlemenin kaynağı olan çağıranın işlemindeki bellek bölgesinin sayfaya hizalanmış adresini belirtir.

GuestAddress

VM'nin fiziksel adres alanında hedef adresi belirtir.

SizeInBytes

Eşlenecek bayt sayısını belirtir.

Flags

Eşleme için erişim bayraklarını belirtir.

Dönüş Değeri

İşlev başarılı olursa, dönüş değeri olur S_OK.

Açıklamalar

Bir bölümün GPA alanında bir aralık için eşleme oluşturmak, çağıranın işlemindeki bir bölgeyi bu aralığın yedekleme belleği olarak ayarlar. İşlem, belirtilen GPA sayfaları için önceki eşlemelerin yerini alır.

Requirements

Requirement Değer
Desteklenen en düşük Windows Windows 10, sürüm 1803 (x64); Windows 11, sürüm 24H2, derleme 26100.3915 (Arm64)
Header WinHvPlatform.h
Kütüphane WinHvPlatform.lib
DLL WinHvPlatform.dll
Architecture x64, Arm64

Ayrıca bakınız