Freigeben über


PsChargePoolQuota-Funktion (ntifs.h)

Das PsChargePoolQuota-Routinegebührenpoolkontingent des angegebenen Pooltyps für den angegebenen Prozess.

Syntax

void PsChargePoolQuota(
  [in] PEPROCESS Process,
  [in] POOL_TYPE PoolType,
  [in] ULONG_PTR Amount
);

Parameter

[in] Process

Zeiger auf den Prozess, dessen Kontingent in Rechnung gestellt werden soll.

[in] PoolType

Typ des zu berechnenden Poolkontingents, das wie folgt sein kann:

  • NonPagedPool
  • PagedPool
  • NonPagedPoolCacheAligned
  • PagedPoolCacheAligned

Die Pooltypen NonPagedPoolMustSucceed und NonPagedPoolCacheAlignedMustS sind veraltet und sollten nicht mehr verwendet werden.

[in] Amount

Anzahl der Bytes, die mit dem Poolkontingent für diesen Prozess belastet werden sollen.

Rückgabewert

Keine

Bemerkungen

Wenn ein unzureichendes Kontingent für den Prozess vorhanden ist, wird das Kontingent nicht in Rechnung gestellt, und PsChargePoolQuota löst eine Ausnahme mit dem status Wert STATUS_QUOTA_EXCEEDED aus. Aufrufer sind für die Behandlung dieser Ausnahme verantwortlich. Daher müssen Aufrufe von PsChargePoolQuota innerhalb eines vom Treiber bereitgestellten Ausnahmehandlers umschlossen werden.

Jeder erfolgreiche Aufruf von PsChargePoolQuota muss durch einen nachfolgenden Aufruf von PsReturnPoolQuota abgeglichen werden.

Weitere Informationen zur Speicherverwaltung finden Sie unter Speicherverwaltung.

Anforderungen

Anforderung Wert
Zielplattform Universell
Header ntifs.h (include Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

Weitere Informationen

PsReturnPoolQuota