J'ai une machine Windows 7 qui continue à fonctionner avec peu de RAM. Je peux voir la RAM libre _ descendre pendant quelques heures jusqu'à ce que la machine ne réponde plus. J'ai vérifié la liste des processus et aucun d'entre eux ne prend autant de RAM.
J'ai également vérifié le nombre de descripteurs par processus et divers autres indicateurs, mais je ne comprends toujours pas pourquoi la machine manque de RAM.
Existe-t-il un bon moyen de vérifier comment la mémoire est utilisée dans Windows?
Modifier
Voici le résultat de tasklist
quelques minutes avant que la machine ne réponde plus:
Image Name PID Session Name Session# Mem Usage
========================= ======== ================ =========== ============
System Idle Process 0 Services 0 24 K
System 4 Services 0 300 K
smss.exe 196 Services 0 1,024 K
csrss.exe 272 Services 0 4,336 K
wininit.exe 320 Services 0 4,184 K
csrss.exe 332 Console 1 3,516 K
winlogon.exe 372 Console 1 6,316 K
services.exe 416 Services 0 8,112 K
lsass.exe 432 Services 0 10,088 K
lsm.exe 440 Services 0 3,664 K
svchost.exe 548 Services 0 8,152 K
svchost.exe 620 Services 0 6,564 K
svchost.exe 660 Services 0 15,764 K
LogonUI.exe 724 Console 1 18,428 K
svchost.exe 768 Services 0 7,992 K
svchost.exe 828 Services 0 9,724 K
svchost.exe 852 Services 0 28,092 K
svchost.exe 176 Services 0 13,096 K
spoolsv.exe 824 Services 0 10,608 K
svchost.exe 952 Services 0 11,632 K
svchost.exe 1076 Services 0 8,524 K
fshoster32.exe 1120 Services 0 9,148 K
fsorsp.exe 1200 Services 0 8,036 K
fsgk32.exe 1324 Services 0 3,084 K
cygrunsrv.exe 1552 Services 0 5,852 K
conhost.exe 1864 Services 0 2,996 K
sshd.exe 1896 Services 0 7,804 K
FSMA32.EXE 2024 Services 0 1,628 K
svchost.exe 1320 Services 0 5,092 K
fssm32.exe 1704 Services 0 2,196 K
FSHDLL64.EXE 2120 Services 0 644 K
SearchIndexer.exe 3260 Services 0 13,596 K
sshd.exe 138920 Services 0 8,696 K
sshd.exe 138448 Services 0 8,696 K
sshd.exe 138660 Services 0 8,696 K
bash.exe 137924 Services 0 5,380 K
bash.exe 137820 Services 0 3,832 K
SAV32CLI.EXE 136344 Services 0 133,868 K
WmiPrvSE.exe 139444 Services 0 7,168 K
sshd.exe 139672 Services 0 8,692 K
sshd.exe 139876 Services 0 8,684 K
bash.exe 139992 Services 0 5,432 K
bash.exe 140040 Services 0 3,996 K
bash.exe 140200 Services 0 5,400 K
bash.exe 139424 Services 0 4,048 K
typeperf.exe 139300 Services 0 5,372 K
sleep.exe 138268 Services 0 2,272 K
sshd.exe 139612 Services 0 7,168 K
sshd.exe 137720 Services 0 5,700 K
bash.exe 139524 Services 0 5,304 K
bash.exe 138952 Services 0 3,756 K
tasklist.exe 137580 Services 0 5,164 K
bash.exe 139460 Services 0 5,452 K
bash.exe 139796 Services 0 104 K
À ce stade, wmic OS get FreePhysicalMemory /Value
indique environ 400 Mo de mémoire disponible sur 2 Go.
RamMap:
Gestionnaire de tâches:
La mémoire haute provient d'une utilisation élevée Table Table . Pour voir quels processus l'utilisent, , installez Windows Performance Toolkit , ouvrez une invite de commande en tant qu'administrateur et exécutez cette commande:
xperf -on ReferenceSet -BufferSize 1024 -MaxFile 512 -FileMode Circular && timeout 5 && xperf -d MemUsage.etl
Ouvrez le MemUsage.etl
avec Windows Performance Analyzer (WPA.exe), faites glisser le graphique "ResidentSet" dans la liste de graphiques de gauche dans le volet d'analyse:
Maintenant, déplacez la colonne "Catégorie de page" sur le côté gauche et développez l'entrée "Table de page":
Ici, vous voyez les processus qui ont une utilisation élevée de la table. Sur le site de droite (après la ligne bleue), vous voyez l'utilisation de la mémoire du tableau de pages en Mo pour chaque processus.
les seules choses "étranges" que je peux voir ici sont les suivantes:
scan.exe
qui éloigne maintenant 98% de l'unité centrale de traitementfssm32.exe
qui a 9 millions de défauts de page. fssm32.exe
ressemble à un programme du scanner de virus f-secure.SAV32CLI.EXE
qui stocke encore 130 Mo + de mémoire. il semble que vous vous sentiez mieux protégé si vous exécutiez 2 analyseurs de virus: f-secure et sophos en même temps.pour moi, la capture d'écran rammap me convient parfaitement: vous avez un pool de ~ 400 Mo de fichiers en cache, dont 85 Mo en utilisation active, 300 Mo + en mode veille (ce qui signifie qu'ils sont libérés dès que vous avez besoin de plus de mémoire vive). En regardant votre quantité de processus sshd.exe et bash.exe, cela semble également légitime.
la meilleure façon d'apprendre le fonctionnement interne de la gestion de la mémoire par Windows est le suivant: http://channel9.msdn.com/Events/TechEd/NorthAmerica/2011/WCL405 .. vous utilisez déjà certains des outils développés par l’orateur.