3

Этот вопрос следует за предыдущим. Как мне точно проанализировать использование памяти в Windows 7?

Почему в системе, где реальные процессы потребляют только около 40% физической памяти (частный рабочий набор), а остальное каким-то таинственным образом поглощается операционной системой, ядро не позволяет процессам выделять больше памяти, даже если все еще около 800 МБ обнулено объем памяти?

объем памяти

Можно ли изменить настройки ядра, чтобы я мог использовать 100% оперативной памяти? Прямо сейчас, в диспетчере задач, когда я достигаю 80% использования памяти, ядро работает так, как если бы оно было на 100%, потому что это край, когда приложение начинает аварийно завершать работу и не может выделить память. Как мне высвободить эти 20%, чтобы я мог использовать всю имеющуюся у меня память до 100%? Почему эти 20% "зарезервированы" и для чего? Система Windows 7 64 бит с 4 ГБ оперативной памяти в общей сложности. Своп отключен по соображениям производительности. (жесткий диск очень медленный, а включение подкачки делает компьютер практически непригодным для использования)

2 ответа2

4

Закрытый рабочий набор не является полной памятью процесса:

Частные байты, рабочий набор, виртуальный размер

Виртуальный размер - это общий объем памяти, который может понадобиться программе. Многие программы не используют всю выделенную им виртуальную память, но они запрашивают ее, чтобы убедиться, что у них достаточно для выполнения любой операции, которую вы запрашиваете у них. Он также используется для сопоставленных с памятью файлов и других вещей, которые проще сделать в виде памяти (общие области памяти, IPC), но не строго связаны с процессом, запрашивающим личную память.

Чтобы это работало, ОС должна либо:

  • Предоставьте гарантию на память, что она будет доступна
  • Отклонить запрос памяти (большую часть времени он будет возвращаться при сбое / выходе приложения)

Обычно система выделяет эту неиспользуемую виртуальную память в файл подкачки, и тогда только те ее части, которые фактически используются, занимают физическую память. Однако, отключив файл подкачки, вы заставляете ОС использовать физическую память для предоставления этих гарантий. Это означает, что вы получите множество обнуленных страниц памяти, которые не могут быть выделены другому процессу.

Когда у вас есть файл подкачки, процессу требуется только где-то между объемом физической памяти в Working Set и Private Bytes . Когда вы отключаете файл подкачки, Windows должна выделить ему полный объем памяти Virtual Size или отклонить запрос памяти. (В мониторе ресурсов Windows это столбец « Commit , поскольку Windows выделяет этот объем виртуальной памяти процессу.

1

Монитор ресурсов должен показать, есть ли у вас свободная память.

Монитор ресурсов

Также см. Какие-либо преимущества или ущерб от удаления файла подкачки на компьютере с 8 ГБ ОЗУ?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .