D3DDDI_RESERVEGPUVIRTUALADDRESS-Struktur (d3dukmdt.h)

D3DDDI_RESERVEGPUVIRTUALADDRESS wird mit pfnReserveGpuVirtualAddressCb verwendet, um einen Adressbereich im virtuellen GPU-Adressraum (Graphics Processing Unit) des aktuellen Prozesses zu reservieren.

Syntax

typedef struct D3DDDI_RESERVEGPUVIRTUALADDRESS {
  union {
          D3DKMT_HANDLE hPagingQueue;
          D3DKMT_HANDLE hAdapter;
  };
        D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS BaseAddress;
        D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS MinimumAddress;
        D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS MaximumAddress;
        D3DKMT_ALIGN64 D3DGPU_SIZE_T          Size;
  union {
          D3DDDIGPUVIRTUALADDRESS_RESERVATION_TYPE ReservationType;
          UINT                                     Reserved0;
  };
  union {
          D3DKMT_ALIGN64 UINT64 DriverProtection;
          D3DKMT_ALIGN64 UINT64 Reserved1;
  };
  [out] D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS VirtualAddress;
  union {
          D3DKMT_ALIGN64 UINT64 PagingFenceValue;
          D3DKMT_ALIGN64 UINT64 Reserved2;
  };
} D3DDDI_RESERVEGPUVIRTUALADDRESS;

Member

hPagingQueue

Pagingwarteschlange zum Synchronisieren des Vorgangs.

hAdapter

DirectX-Grafikadapterhandle.

BaseAddress

(Optional) Wenn nicht NULL, versucht der Videospeicher-Manager, diese Adresse als Basisadresse für den reservierten Bereich zu verwenden. Wenn der Bereich von BaseAddress bis BaseAddress+Size nicht frei ist, schlägt der Aufruf fehl. Wenn dieser Parameter nicht NULL ist, werden MinimumAddress und MaximumAddress ignoriert.

BaseAddress ist in Bytes und muss an der 64-KB-Grenze ausgerichtet werden.

Wenn NULL angegeben ist, wählt der Videospeicher-Manager die Basisadresse für die Zuordnung innerhalb der angegebenen MinimumAddress und MaximumAddress aus.

MinimumAddress

(Optional) Gibt die minimale virtuelle GPU-Adresse an, die für den reservierten Bereich berücksichtigt werden soll.

MinimumAddress ist in Bytes und muss an der Grenze von 64 KB ausgerichtet werden.

Dieser Parameter wird ignoriert, wenn BaseAddress != NULL.

MaximumAddress

(Optional) Gibt die maximale maximale virtuelle GPU-Adresse an, die für den reservierten Bereich berücksichtigt werden soll. Der Videospeicher-Manager garantiert, dass BaseAddress+Size<= MaximumAddress. Wenn dies auf NULL festgelegt ist, wird vom Videospeicher-Manager kein Grenzwert angewendet.

MaximumAddress ist in Bytes und muss an der Grenze von 64 KB ausgerichtet werden.

Dieser Parameter wird ignoriert, wenn BaseAddress != NULL.

Size

Geben Sie die Größe des zu reservierenden Bereichs in Bytes an. Muss ein Vielfaches von 64 KB sein.

ReservationType

Gibt den Reservierungstyp für virtuelle Adressen an.

Reserved0

Dieser Member ist reserviert und sollte auf 0 (null) festgelegt werden.

DriverProtection

Gibt den treiberspezifischen Schutz an.

Reserved1

Dieser Member ist reserviert und sollte auf 0 (null) festgelegt werden.

[out] VirtualAddress

Die reservierte virtuelle Adresse.

PagingFenceValue

Auslagerungszaunbezeichner für die Synchronisierung

Reserved2

Dieser Member ist reserviert und sollte auf 0 (null) festgelegt werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 10
Unterstützte Mindestversion (Server) Windows Server 2016
Kopfzeile d3dukmdt.h (einschließlich D3dumddi.h, D3dkmddi.h)

Weitere Informationen

pfnReserveGpuVirtualAddressCb