2

Предыстория: у меня в машине 16 ГБ памяти.

Когда моя машина использует уже 15 ГБ памяти, и мое приложение выделяет еще один кусок памяти в 2 ГБ, у меня заканчивается физическая память, и появляется место подкачки (должно) и используется доступное дисковое пространство. Вместо этого Windows полностью зависает. Почему это происходит? Я думал, что Windows (пользовательский процесс) никогда не выстраивает связанные с памятью процессы / потоки / os-память. Почему это блокирует тогда?

Я ожидаю, что мой процесс зависает, но почему это происходит со всей ОС? Одна идея: это связано с объемом памяти 2 ГБ, который блокирует управление внутренней памятью до тех пор, пока это не будет успешно выполнено. Поэтому блокируются и другие процессы. Я не уверен, имеет ли это смысл. Что вы думаете об этом?

2 ответа2

2

Я предполагаю, что Windows может использовать файл подкачки (он не отключен, и в файле подкачки есть место), и, заморозив, вы имеете в виду, что реакция почти мгновенная, как минуты.

Если Windows находится под давлением памяти (недостаточно ОЗУ), она начинает выгружать данные из ОЗУ в файл жесткого диска / страницы. Точный алгоритм обмена данными является очень сложным, но в целом это наименее используемая память, которая не заблокирована от обмена (некоторые страницы ядра, драйверы жесткого диска и т.д. Заблокированы). Он может даже менять части файла explorer.exe и некоторых других важных процессов графического интерфейса или брандмауэра / антивируса. Когда вы пытаетесь взаимодействовать с графическим интерфейсом, он должен загрузить его обратно с жесткого диска, который очень медленный по сравнению с оперативной памятью, и я видел случаи, когда требуется хотя бы 15 минут, чтобы хотя бы частично разморозить рабочий стол.

Если вы хотите продолжить расследование, я рекомендую использовать монитор производительности. В Windows 8 вы можете получить к нему доступ через taskmanager-> performance-> ressource monitor, но он также может использоваться в старых системах Windows. В Windows 8 вы даже можете увидеть, какой процесс и какой файл является виновником.

0

Прочитав вопрос и комментарии, я думаю, что могу ответить ...

Это то, как работает любой другой компьютер Windows, из того, что вы сказали.

Ваш ответ будет ... "Жесткие диски медленные"

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