12

Этот беспокоил меня годами, и до сих пор я не мог найти адекватного решения.

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

ВСЕГДА есть свободная оперативная память. Например, это случилось со мной, и у меня было больше свободной оперативной памяти. Вирусов, шпионских программ и прочих бессмысленных вещей нет - это проблема с ресурсами Windows, но вопрос в том, из какого ресурса у него заканчивается, как его определить и как его предотвратить?

Иногда это происходит после запуска определенных программ - например, сегодня это произошло, когда я запустил Photoshop CS4 и Flash CS4 одновременно. Я также заметил, что перезапуск The Bat (почтовый клиент от Ritlabs), похоже, на некоторое время избавляет от этой проблемы, но опять же, это происходит на машинах, на которых даже не установлен The Bat.

Итак, что именно происходит? Симптомы:

  • нажатие alt-tab больше не вызывает список - он просто мгновенно переходит к следующему окну, очень похоже на то, как работает Alt-Esc, однако в этом случае это происходит из-за нехватки ресурсов для вызова alt- меню вкладок

  • случайные программы случайным образом зависали, ссылаясь на случайные ошибки, ошибки нехватки памяти, системные ресурсы, неспособность выполнять системные вызовы и т. д.

  • случайные программы начнут пропускать случайные части - например, верхние меню Firefox могут исчезнуть, получить частичные выборки или перестать работать вообще. IE может потерять несколько своих панелей инструментов. Некоторые программы могут не перерисовываться или просто сереть там, где раньше был пользовательский интерфейс.

  • Сама Windows никогда не жалуется на нехватку ОЗУ, виртуальной памяти или чего-либо еще, но ей не хватает чего-то.

Единственная подсказка, которую мне удалось найти и применить сегодня, - это ограничение кучи рабочего стола. Я не подтвердил исправление работы, так как прошло недостаточно времени. А пока что у всех мысли?

6 ответов6

12

Может быть утечка дескриптора в программе, которую вы запускаете. У меня была ошибка в одной из моих программ, которая выявляла эти проблемы, при запуске новых программ возникали проблемы с отсутствующими или неполными панелями инструментов, не отображались диалоговые окна file-> open, некорректно работало табуляция, странные ошибки и т.д.

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

К сожалению, что именно означает "большое число", полностью зависит от программы.

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

6

Это потому, что в Windows есть так называемая "куча рабочего стола", в которой живут большинство объектов графического интерфейса, меню, значки и все, что у вас есть. И это пространство довольно ограничено и, что более важно, фиксировано по размеру.

См. Q126962: В куче рабочего стола для решения и прочитайте Raymond Chen для получения дополнительной информации.

2

Термин "ресурсы" или "системные ресурсы" в Windows относится к различным объектам (таким как дескрипторы окон) внутри операционной системы. Windows ограничивает пространство, выделенное для ресурсов, чтобы они не могли использовать всю системную память. Вот почему у вас много свободной памяти, но недостаточно места для ресурсов.

Марк Руссинович и Дэвид Соломон (из известности Winternals и Sysinternals ) написали книгу, которая подробно описывает внутренности Windows: Windows Internals. Четвертое издание охватывает Windows 2000, XP и Server 2003 и доступно само по себе или как часть Windows Server 2003 Resource Kit. Пятое издание будет выпущено в июне 2009 года и будет охватывать Windows Vista и Server 2008. Один или оба из этих томов могут быть полезны для вас, но имейте в виду: это не просто чтение субботним днем!

1

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

0

"действительно подозрительный spoolsv.exe с 11 456 дескрипторами"

Это спулер задания печати ...У вас есть ожидание печати или это нужно сдувать?

Поврежденный драйвер принтера?

0

Вы установили какое-то "программное обеспечение для настройки"? Большинство из них возиться с настройками они не должны. И большинство применяют настройки, которые только улучшают производительность, но снижают реальную производительность рабочей нагрузки (например, интерактивность), поворачивая ручки диспетчера памяти.

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