У Windows XP, здавалося б, немає ресурсів, але доступна безліч оперативної пам’яті та своп


12

Цей мене турбує роками, і поки я не зміг знайти адекватне рішення.

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

Там це ЗАВЖДИ вільна оперативна пам'ять. Наприклад, зі мною це просто трапилося, і я мав понад концерт безкоштовної оперативної пам’яті. Немає вірусів, шпигунських програм чи іншої дурниці - це проблема із ресурсами Windows , але питання полягає в тому, з якого ресурсу вона закінчується, як це визначити, і як це запобігти?

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

То що ж саме відбувається? Симптоми:

  • натискання клавіші alt більше не перетворює список - воно миттєво переходить до наступного вікна, дуже схоже на те, як працює Alt-Esc, однак у цьому випадку це пов'язано з недостатньою кількістю ресурсів, щоб підняти альт- меню вкладки

  • випадкові програми випадковим чином збиваються з посиланням на випадкові помилки, помилки в пам'яті, системні ресурси, неможливість робити системні дзвінки тощо.

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

  • Сама Windows , ніколи не скаржиться втекти з оперативної пам'яті, віртуальна пам'ять, або взагалі нічого, але він працює з чого - то .

Єдиною підказкою, яку мені вдалося знайти та застосувати виправлення сьогодні, було це обмеження на робочому столі . Я не підтвердив роботу виправлення, оскільки пройшло недостатньо часу. А поки що думки кожного?

Відповіді:


12

Може бути витік ручки в запущеній програмі. У мене була помилка в одній із моїх програм, яка виявляла ці проблеми, в результаті появи нових програм виникли б проблеми з відсутніми або неповними панелями інструментів, файли-> відкриті діалоги не відображаються, вкладка альт не працює належним чином, і дивні помилки тощо.

У диспетчері завдань ви можете скористатися меню «Перегляд»> «Стовпці», щоб показати стовпці для обробки, а також об’єкти користувача та gdi, які обидва використовують ручки, якщо ви знайдете програму з великою кількістю там, вона може стати винуватцем.

На жаль, що саме таке "висока кількість", повністю залежить від програми.

Зокрема, зверніть увагу на будь-яку програму, для якої кількість ручок постійно збільшується, оскільки це може свідчити про такий витік.


1
Ах, зараз ми кудись дістаємось. Ймовірна причина І спосіб її відстеження. Дякую, тим часом проголосували. Буде стежити за винуватцями. Поки що в Firefox, Probe2 (від Asus), Winamp та Flash CS4 найвища кількість об'єктів GDI - понад 1000 у кожному. У кажана 701, і я буду його пильно стежити.
Артем Русаковський,

Якщо чесно, це не так погано звучить.
Лассе В. Карлсен

Гей, ну система наразі не виходить з ладу, так що, справді, це не відбувається.
Артем Русаковський

Гаразд, система зараз виходить з ладу. Ось підрахунок найгірших об’єктів GDI: firefox - 2382, probe2 - 1375, winamp - 1239, flash - 1069, snagiteditor - 971, thebat - 758. Найвищий за ручками: справді підозрілий spoolsv.exe з 11456 ручками, ftprush - 5972, Система - 2702, svchost.exe - 2384, csrss.exe 1238, firefox - 1170, спалах - 1036, затемнення - 962. Хрм ...
Артем Русаковський,

Так, схоже, мені потрібно перезапустити, щоб зміни Heap набули чинності, як зазначено тут support.microsoft.com/default.aspx?scid=kb;EN-US;184802 . Було б чудово дізнатися, де саме я максимум, хоча.
Артем Русаковський

6

Це тому, що Windows так називає "кучу настільних комп'ютерів", де живе більшість об’єктів графічного інтерфейсу, меню, піктограми та що у вас є. І цей простір досить обмежений, і, що важливіше, фіксований за розмірами.

Див. Q126962: На купі настільних комп'ютерів для рішення та прочитайте Реймонда Чена для отримання додаткової інформації.


Так, я це згадав у кінці запитання. Дякую за додаткову інформацію про це. Це гідна допоміжна відповідь поки що.
Артем Русаковський

О, вибачте, не помітили цього останнього речення :) Але це саме причина, ви можете перевірити, який процес, використовуючи більшість ручок у Process Explorer, вбити його, і тільки це виправить симптоми.
vava

2

Термін "ресурси" або "системні ресурси" в Windows відноситься до різних об'єктів (наприклад, ручок вікон) всередині операційної системи. Windows обмежує простір, відведений на ресурси, щоб вони не могли використовувати всю системну пам'ять. Ось чому у вас багато вільної пам’яті, але недостатньо простору ресурсу.

Марк Русинович та Девід Соломон (про славу Winternals та Sysinternals ) написали книгу, в якій детально описуються кишки Windows: Windows Internals. Четверте видання охоплює Windows 2000, XP та Server 2003, і ​​воно доступне самостійно або як частина набору ресурсів Windows Server 2003. П'яте видання вийде в червні 2009 року, і воно охоплюватиме Windows Vista та Server 2008. Один або обидва ці томи можуть вам допомогти, але будьте попереджені: це не просто читання у суботу-полудень!


1

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


Дійсно, це може бути так, але у комп’ютерів, у яких у мене це трапляється, немає жодного обладнання - деякі - ноутбуки, деякі - настільні. Взагалі, існує віддалена можливість, що неприємні помилки в різних драйверах нападуть на всі мої машини, але це малоймовірно. Проблема, швидше за все, лежить глибше в ОС, як свідчить остання посилання в моєму дописі. Час покаже, але це не рішення, яке я шукаю. Вибачте :)
Артем Русаковський

Крім того, я шукаю способи діагностування, кількісного визначення та нульової оцінки проблемних ресурсів. Будь-які вказівники там були б непогані.
Артем Русаковський,

Провідник процесів ( technet.microsoft.com/en-us/sysinternals/bb896653.aspx ) - це перший інструмент, який я використовую - на що витрачаються ресурси? І скільки пам’яті ми говоримо тут? Чи є щонайменше 1 Гб у кожній із цих машин чи менше?

Я також використовую розширений диспетчер завдань ( extensoft.com/?p=free_task_manager ), щоб утримувати трохи кращі вкладки щодо того, що відбувається, ніж вбудований.

О, і нарешті, verifier.exe ( support.microsoft.com/kb/244617 ) може допомогти діагностувати та усунути проблеми з драйверами.

0

"дійсно підозрілий spoolsv.exe з 11456 ручками"

Це штукатурка завдання друку ... Чи чекаєте роботи, які потребують друку, або це потребує видування?

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


0

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


Ні, я цього не маю - всі установки Windows XP страждають від цієї проблеми, принаймні, коли ви використовуєте їх на рівні енергетичного користувача.
Артем Русаковський

Я користувач електроенергії серед споживачів енергії, і зустрічаюся з такими проблемами дуже рідко. Я думаю, ти запускаєш якісь хитрі програми.
Джеймі Ханрахан
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.