%20TD%20-%20Hohe%20Auslastung%20des%20nicht%20ausgelagerten%20Pools.png)
Ich habe mich mit einem Speicherleck befasst und mithilfe von Poolmon, Xperf und Windows Performance Analyzer untersucht, was der Übeltäter ist. Der SO ist ein Windows Embedded 7 – 32 Bit: Ich denke, dass das nominale Limit des nicht ausgelagerten Pools sehr niedrig ist, vielleicht 256 MB (ich kann das tatsächliche Limit nicht finden, nach 200/250 MB habe ich Probleme mit meiner C#-Software).
Ich habe festgestellt, dass die Prozesse mit dem Poolmon-Tag 'TD' den größten Teil des nicht ausgelagerten Pools verwenden: Ich habe versucht, nach diesem TAG zu suchen in
- C:\Windows\System32\Treiber
- C:\Windows\SysWow64\Treiber
- C:\Programme
aber erfolglos.
Für diese Forschung folgte ichdieser Beitrag.
Dies ist das Poolmon-Bild:
Nachdem ich pool.etl
mit xperf eine Datei erstellt hatte, öffnete ich sie in WPA und lokalisierte die nicht ausgelagerten Prozesse mithilfe dieses unbekannten Tags. Ich fand die Prozesse, aber laut WPA handelt es sich bei beiden um „unbekannte“ Prozesse:
Hier ist dasLink zu pool.etl.
Für diese Analyse folgte ichDasposten und ich habe diesen Befehl verwendet:
xperf -on PROC_THREAD+LOADER+POOL -stackwalk PoolAlloc+PoolFree+PoolAllocSession+PoolFreeSession -BufferSize 2048 -MaxFile 1024 -FileMode Circular && timeout -1 && xperf -d C:\pool.etl
Irgendwelche Vorschläge?
Wie geht es jetzt weiter und was kann ich tun?