Windows XP apparentemente senza risorse ma con molta RAM e swap gratuiti disponibili


12

Questo mi ha infastidito per anni e finora non sono riuscito a trovare una soluzione adeguata.

Il problema si verifica praticamente in ogni installazione di XP che ho eseguito. Dopo aver aperto una varietà di programmi o il sistema che esegue programmi esistenti per un po ', Windows sembra esaurire le risorse, senza dirmelo.

C'è SEMPRE RAM libera. Ad esempio, mi è appena successo e ho avuto oltre un concerto di RAM libera. Non ci sono virus, spyware o altre assurdità: si tratta di un problema di risorse di Windows , ma la domanda è: da quale risorsa si sta esaurendo, come la si individua e come si può prevenirla?

A volte, questo accade dopo aver eseguito programmi specifici, ad esempio oggi è successo quando ho avviato Photoshop CS4 e Flash CS4 contemporaneamente. Ho anche notato che il riavvio di The Bat (client di posta elettronica di Ritlabs) sembra sbarazzarsi di questo problema per un po ', ma di nuovo, ciò accade su macchine che non hanno nemmeno installato The Bat.

Quindi cosa succede esattamente? I sintomi sono:

  • premendo alt-tab non viene più visualizzato l'elenco: passa alla finestra successiva all'istante, molto simile al modo in cui Alt-Esc funziona, tuttavia in questo caso è dovuto al fatto di non avere risorse sufficienti per visualizzare l'alt- menu scheda

  • i programmi casuali si arresterebbero in modo casuale, citando errori casuali, errori di memoria insufficiente, risorse di sistema, incapacità di effettuare chiamate di sistema, ecc.

  • i programmi casuali perderebbero parti casuali mancanti - ad esempio, i menu principali di Firefox potrebbero scomparire, richiamare selezioni parziali o non risalire più del tutto. IE potrebbe perdere alcune delle sue barre degli strumenti. Alcuni programmi potrebbero non essere ridisegnati o semplicemente diventerebbero grigi dove una volta si trovava l'interfaccia utente.

  • Windows stesso non si lamenta mai di rimanere senza RAM, memoria virtuale o altro, ma a corto di qualcosa .

L'unico indizio che sono riuscito a trovare e applicare oggi la correzione era questa limitazione dell'heap del desktop . Non ho confermato la correzione funzionante poiché non è trascorso abbastanza tempo. Nel frattempo, quali sono i pensieri di tutti?

Risposte:


12

Potrebbe trattarsi di una perdita di handle in un programma in esecuzione. Ho avuto un bug in uno dei miei programmi che presentava questi problemi, la visualizzazione di nuovi programmi avrebbe avuto problemi con barre degli strumenti mancanti o incomplete, finestre di dialogo file> aperte non visualizzate, tabulazione alt che non funzionava correttamente e strani errori, ecc.

In Task Manager puoi usare il menu Visualizza-> Colonne per mostrare le colonne per l'handle e gli oggetti utente e gdi, che usano entrambi gli handle, se trovi un programma con un numero elevato lì, potrebbe essere il colpevole.

Sfortunatamente, ciò che è esattamente un "numero elevato" dipende interamente dal programma.

In particolare, prestare attenzione a qualsiasi programma per il quale il conteggio delle maniglie è in costante aumento, poiché ciò potrebbe indicare una simile perdita.


1
Ah, ora stiamo arrivando da qualche parte. Una causa probabile E un modo per rintracciarlo. Grazie, votato nel frattempo. Monitorerà i colpevoli. Finora Firefox, Probe2 (di Asus), Winamp e Flash CS4 hanno il maggior numero di oggetti GDI - oltre 1000 ciascuno. The Bat ha 701 e lo seguirò da vicino.
Artem Russakovskii,

Ad essere sincero, non suona così male.
Lasse Vågsæther Karlsen,

Eh, beh, al momento il sistema non sta andando in crash, quindi non lo è.
Artem Russakovskii,

OK, il sistema si sta arrestando in questo momento. Ecco i conteggi dei peggiori oggetti GDI: firefox - 2382, probe2 - 1375, winamp - 1239, flash - 1069, snagiteditor - 971, thebat - 758. Massime per maniglie: uno spoolsv.exe davvero sospetto con 11.456 handle, ftprush - 5972, System - 2702, svchost.exe - 2384, csrss.exe 1238, firefox - 1170, flash - 1036, eclipse - 962. Hrm ...
Artem Russakovskii,

Ah, sembra che sia necessario riavviare per rendere effettive le modifiche di Heap, come specificato qui support.microsoft.com/default.aspx?scid=kb;EN-US;184802 . Sarebbe bello scoprire esattamente dove sto andando al massimo però.
Artem Russakovskii,

6

Questo perché Windows ha il cosiddetto "heap del desktop" in cui vivono la maggior parte degli oggetti della GUI, menu, icone e cosa hai. E questo spazio è piuttosto limitato e, cosa più importante, ha dimensioni fisse.

Vedi Q126962: Sull'heap del desktop per la soluzione e leggi Raymond Chen per ulteriori informazioni.


Sì, l'ho menzionato alla fine della mia domanda. Grazie per maggiori informazioni. Questa è una risposta di aiuto decente finora.
Artem Russakovskii,

Oh, scusa, non ho notato l'ultima frase :) Ma questo è esattamente il motivo, potresti controllare quale processo usando la maggior parte degli handle in Process Explorer, ucciderlo e solo questo risolverà i sintomi.
vava,

2

Il termine "risorse" o "risorse di sistema" su Windows si riferisce a vari oggetti (come le maniglie delle finestre) all'interno del sistema operativo. Windows limita lo spazio assegnato alle risorse, in modo che non possano utilizzare tutta la memoria di sistema. Ecco perché hai un sacco di memoria libera ma non abbastanza spazio per le risorse.

Mark Russinovich e David Solomon (di fama di Winternals e Sysinternals ) hanno scritto un libro che descrive dettagliatamente le viscere di Windows: Windows Internals. La quarta edizione riguarda Windows 2000, XP e Server 2003 ed è disponibile da sola o come parte del Resource Kit di Windows Server 2003. La quinta edizione uscirà a giugno 2009 e riguarderà Windows Vista e Server 2008. Uno o entrambi questi volumi potrebbero essere di aiuto per te, ma attenzione: questa non è solo una lettura del sabato pomeriggio!


1

I driver e altre cose abbastanza lontane da giocare all'interno o intorno al kernel, possono causare grossi problemi quando non funzionano correttamente - ed è un collo di bottiglia che non è sempre visibile nell'ovvio CPU, memoria o I / O del disco percorsi.


In effetti, potrebbe essere così, ma i computer che ho avuto questo si verificano sulla condivisione senza hardware - alcuni sono laptop, altri desktop. In generale, c'è una remota possibilità che cattivi bug in diversi driver affliggano tutte le mie macchine, ma è improbabile. È molto probabile che il problema sia più profondo all'interno del sistema operativo, come suggerisce l'ultimo link nel mio post. Il tempo lo dirà, ma questa non è la soluzione che sto cercando. Mi dispiace :)
Artem Russakovskii,

Inoltre, sto cercando modi per diagnosticare, quantificare e concentrarsi sulle risorse problematiche. Qualsiasi suggerimento sarebbe bello.
Artem Russakovskii,

Process explorer ( technet.microsoft.com/en-us/sysinternals/bb896653.aspx ) è il primo strumento che utilizzerei: che cosa sta consumando risorse? E quanta memoria stiamo parlando qui? C'è almeno 1 GB in ciascuna di queste macchine o meno?

Uso anche Extended Task Manager ( extensoft.com/?p=free_task_manager ) per tenere d'occhio un po 'meglio quello che sta succedendo rispetto a quello integrato.

Oh, e infine, verifier.exe ( support.microsoft.com/kb/244617 ) può aiutare a diagnosticare e risolvere i problemi del driver.

0

"uno spoolsv.exe davvero sospetto con 11.456 handle"

Questa è la cosa dello spooler del lavoro di stampa ... Hai dei lavori di stampa in attesa o che devi spazzare via?

Driver della stampante corrotto?


0

Hai installato una sorta di "software di ottimizzazione"? La maggior parte di questi giocherellano con impostazioni che non dovrebbero. E la maggior parte applica impostazioni che migliorano solo le prestazioni confrontabili ma riducono le prestazioni del carico di lavoro reale (ad es. Interattività) ruotando le manopole del gestore della memoria.


No, non lo sono - tutte le installazioni di Windows XP soffrono di questo problema, almeno quando le usi a livello di utente esperto.
Artem Russakovskii,

Sono un utente esperto tra utenti esperti e vedo tali problemi solo molto raramente. Penso che tu stia eseguendo alcuni programmi ingannevoli.
Jamie Hanrahan,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.