хай всем! такой вопрос насколько часто ExAllocatePool(NonPagedPool) может возвращать 0 и в каких ситуациях? Я както на это не рассчитывал, но блин судя по всему такие ситуации нередки (на своём компе я этого не наблюдал, зато на других похоже на то). Толи это где то у меня указатель перезаписывается нулём, толи ExAllocatePool иногда возвращает ноль. У кого в практике такое было?
из MSDN ExAllocatePool returns NULL if there is insufficient memory in the free pool to satisfy the request. Otherwise the routine returns a pointer to the allocated memory
да но это я так понимаю случается если система загружена по полной программе (имею в виду в плане использования памяти), а тут так получается что это происходит просто в процессе работы.
максимальное количество NonPagedPool памяти жестко лимитировано - 256 метров но может быть и меньше - смотри в HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management проверь расход памяти твоим драйвером
помню я ошибся в драйвере одном, запрашивал вместо 500к памяти 500М памяти =) тогда я с этим столкнулся ))