Что может быть причиной такого высокого коммит-заряда в XP?

0

У меня возникали ошибки памяти при запуске виртуальных машин в VirtualBox, поэтому я проверил свою фиксацию и вот, это 1913 МБ!

У меня только 2 ГБ физической памяти.

После закрытия всех «приложений» у меня остается около 1800 МБ. Это большая часть моей оперативной памяти. Открывающий проводник процессов не показывает процессов, которые кажутся неупорядоченными, самая большая область памяти - это проводник процессов, занимающий около 26 МБ, а все остальное немного меньше.

Могут ли окна "вытекать" из памяти? Стоит ли подозревать драйвер или что-то вроде антивируса Symantec? Будет ли их использование памяти вообще отображаться в проводнике процессов?

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

thomasrutter
источник

Ответы:

4

Зафиксируйте заряд в основном максимальное потенциальное использование файла подкачки , Это не связано с оперативной памятью.

Windows в основном адресует память в файл подкачки, прежде чем какие-либо приложения используют ее, основываясь на текущем использовании файла подкачки. Плата за фиксацию не отражает текущее использование памяти, но отражает, сколько памяти Windows использует текущая адресация в файле подкачки.

Утилита диспетчера задач Windows на вкладке «Производительность» отображает три счетчика, связанных с начислением платы:

  • Всего количество используемого виртуального адресного пространства на основе файла подкачки, т. е. текущая стоимость фиксации. Соответствующий счетчик производительности называется «Committed Bytes».
  • предел максимально возможное значение для Total; это сумма текущего размера файла подкачки плюс физическая память, доступная для подкачки (это исключает ОЗУ, которое выделено для областей, не предназначенных для страниц). Соответствующий счетчик производительности называется «Commit Limit».
  • Пик это наибольшая сумма, которую удалось достичь общей сумме за фиксацию с момента последней перезагрузки компьютера.

Плата за фиксацию увеличивается при открытии и использовании любой программы и снижается при закрытии программы. Это также изменится, когда уже запущенные программы выделяют или освобождают частную виртуальную память; например, с API-интерфейсами VirtualAlloc и VirtualFree.

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

Еще немного информации доступно в Документация Windows XP ,

Andrew Moore
источник
Спасибо - я был в значительной степени осведомлен о том, что плата за коммит уже была, но меня озадачивает то, почему он поднимается до стратосферных уровней при работе виртуальных машин, но никогда не возвращается после завершения работы, что в конечном итоге приводит к ошибкам памяти.
thomasrutter
В этом случае это будет ошибка в мониторе VirtualBox. Очевидно, он выделял кучу для каждой запущенной виртуальной машины, а затем не освобождает ее при остановке виртуальной машины. Однако закрытие монитора должно заставить все это исчезнуть.
Jamie Hanrahan
1

Кажется, это проблема с VirtualBox.

Я отключил технологию виртуализации Intel в Virtualbox, как это было предложено на другом форуме, и проблем до сих пор не было.

thomasrutter
источник