Ответы с форумов MSDN

Windows не видит всю установленную оперативную память

Date: 01.12.2021 10:49:25

Виртуальная память - это, строго говоря, адресное пространство процесса или ядра. Сумма физической памяти и файла подкачки называется выделенной памятью. Сообщение об ошибке здесь неправильное. 

Есть много причин, почему Windows не может использовать всю физическую память, от несовместимости планок с материнской платой до выставленных в msconfig программных ограничений. Но при всех этих случаях "лишняя" память обычно не видна системе и диспетчеру задач. Чтобы память была видна, но фактически не могла быть использована, о таком никогда не слышал. У меня памяти меньше, и подобного не наблюдается. Если запустить программу, которая в цикле бесконечно выделяет память, например такую в Powershell:

while($true){[void][System.Runtime.InteropServices.Marshal]::AllocHGlobal(10000)}

, то она сначала спокойно выжирает все доступные 7.9 ГБ ОЗУ, а затем включается расширение файла подкачки (у меня выставлено на автоматический размер), и далее она выжирает уже файл подкачки. От последнего я немало выпал в осадок, о таком легком способе заполнить жесткий диск хламом с космической скоростью я и не подозревал. Вероятно, она бы упала с ошибкой при достижении ограничения в 384 GB на Paged pool, но я не стал дожидаться. (Внимание, если собираетесь запускать приведенный выше скрипт, закройте все важные программы, так как они могут упасть или зависнуть)

Я бы порекомендовал задать вопрос на TechNet или форумах по железу, с приведением конфигурации компьютера и скриншотов из Aida. Возможно, там посоветуют что-нибудь осмысленное.


Автор: VadimTagil

Главная страница - Список тем - Репозиторий на GitHub