Функция PsChargePoolQuota (ntifs.h)
PsChargePoolQuota квоту пула сборов указанного типа пула в указанный процесс.
Синтаксис
void PsChargePoolQuota(
[in] PEPROCESS Process,
[in] POOL_TYPE PoolType,
[in] ULONG_PTR Amount
);
Параметры
[in] Process
Указатель на процесс, квота которого должна взиматься.
[in] PoolType
Тип квоты пула для оплаты, которая может быть одной из следующих:
- NonPagedPool
- PagedPool
- NonPagedPoolCacheAligned
- PagedPoolCacheAligned
NonPagedPoolMustSucceed и NonPagedPoolCaolCacheAlignedMustS типы пулов устарели и больше не должны использоваться.
[in] Amount
Количество байтов для оплаты квоты пула для этого процесса.
Возвращаемое значение
Никакой
Замечания
Если для процесса недостаточно квоты, квота не взимается, а PsChargePoolQuota вызывает исключение со значением состояния STATUS_QUOTA_EXCEEDED. Вызывающие абоненты отвечают за обработку этого исключения. Таким образом, вызовы PsChargePoolQuota должны быть упакованы в обработчик исключений, предоставленный драйвером.
Каждый успешный вызов PsChargePoolQuota должен соответствовать последующему вызову PsReturnPoolQuota.
Дополнительные сведения об управлении памятью см. в управления памятью.
Требования
Требование | Ценность |
---|---|
целевая платформа | Всеобщий |
заголовка | ntifs.h (include Ntifs.h) |
библиотеки | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |