Здравствуйте,
А>Собственно вопрос в сабже,- как в драйвере можно получить объем свободной памяти (ну или на крайний случай вообще доступную память)?
--
Попробуйте использовать функцию ZwQuerySystemInformation с запросами SystemBasicInformation, SystemPerformanceInformation, SystemMemoryUsageInformation.
А для чего это нужно? Ведь сразу же после получения этой информации доверять ей уже нет никакого смысла.
С уважением,
Геннадий Майко.
Re[2]: Определить объем свободной памяти в драйвере
От:
Аноним
Дата:
10.09.12 13:56
Оценка:
Здравствуйте, Геннадий Майко, Вы писали:
ГМ>Здравствуйте,
А>>Собственно вопрос в сабже,- как в драйвере можно получить объем свободной памяти (ну или на крайний случай вообще доступную память)? ГМ>-- ГМ>Попробуйте использовать функцию ZwQuerySystemInformation с запросами SystemBasicInformation, SystemPerformanceInformation, SystemMemoryUsageInformation.
ГМ>А для чего это нужно? Ведь сразу же после получения этой информации доверять ей уже нет никакого смысла.
ГМ>С уважением, ГМ>Геннадий Майко.
В этих запросах нет информации о доступной памяти в системе=(((
А>Собственно вопрос в сабже,- как в драйвере можно получить объем свободной памяти (ну или на крайний случай вообще доступную память)?
А что такое "доступная память"?
Как много веселых ребят, и все делают велосипед...
Re[3]: Определить объем свободной памяти в драйвере
Здравствуйте,
А>В этих запросах нет информации о доступной памяти в системе=(((
--
Насколько я понял, SystemBasicInformation->NumberOfPhysicalPages как раз и опишет доступную память в системе.
Здравствуйте, Аноним, Вы писали:
А>Собственно вопрос в сабже,- как в драйвере можно получить объем свободной памяти (ну или на крайний случай вообще доступную память)?
Объем доступной физ. памяти можно получить, передав строку "Kernel-WindowsMaxMemAllowedx64"(х64 системе) в сервисную функцию:
Здравствуйте, TSS_TSS, Вы писали:
TSS>Здравствуйте, Аноним, Вы писали:
А>>Собственно вопрос в сабже,- как в драйвере можно получить объем свободной памяти (ну или на крайний случай вообще доступную память)?
TSS>Объем доступной физ. памяти можно получить, передав строку "Kernel-WindowsMaxMemAllowedx64"(х64 системе) в сервисную функцию:
TSS>NTSTATUS ZwQueryLicenseValue( PUNICODE_STRING Name, ULONG *Type, PVOID Buffer, ULONG Length, ULONG *DataLength );
TSS>Для х86 систем соот-но строка будет "Kernel-WindowsMaxMemAllowedx86".