Ich habe mir die Xperf-Spuren mehrerer Benutzer angesehen und hier ntoskrnl.exe!SmKmStoreHelperWorker
beginnt die Funktion des Kernels, Speicher zuzuweisen.
(Zum Vergrößern auf das Bild klicken)
Ich habe das auf sysinternals entdeckt .
Ich habe Microsoft danach gefragt und die Antwort lautet, dass dies beabsichtigt ist. Dies hängt mit der Komprimierung des Systemspeichers zusammen.
In der Ankündigung von Windows 10 Build 10525 erklärte Microsoft dies ein wenig :
In Windows 10 haben wir dem Speichermanager ein neues Konzept hinzugefügt, das als Komprimierungsspeicher bezeichnet wird. Hierbei handelt es sich um eine speicherinterne Sammlung komprimierter Seiten. Dies bedeutet, dass nicht verwendete Seiten komprimiert werden, anstatt sie auf die Festplatte zu schreiben , wenn der Memory Manager unter Speicherdruck steht . Dadurch wird der pro Prozess verwendete Arbeitsspeicher reduziert, sodass Windows 10 mehr Anwendungen gleichzeitig im physischen Arbeitsspeicher verwalten kann. Dies trägt auch zu einer besseren Reaktionsfähigkeit in Windows 10 bei. Der Komprimierungsspeicher befindet sich im Arbeitsbereich des Systemprozesses.Da der Systemprozess den Speicher im Speicher hält, wird sein Arbeitssatz genau dann größer, wenn Speicher für andere Prozesse verfügbar gemacht wird. Dies ist im Task-Manager sichtbar und der Grund dafür, dass der Systemprozess anscheinend mehr Speicher als in früheren Versionen beansprucht.
Anstatt Speicherdaten in die Auslagerungsdatei zu schreiben, werden sie komprimiert. Und dieser komprimierte Speicher wird im Systemprozess angezeigt.
Microsoft hat weitere Details im Hub veröffentlicht. Winbeta hat einen Artikel erstellt, der weitere Details enthält.
Anscheinend lag der Grund dafür in der Entscheidung von Microsoft, UWP-Apps auszusetzen, wenn sie nicht im Vordergrund standen, ähnlich wie bei einigen Smartphone-Betriebssystemen. Windows 8-Benutzer haben verstanden (vielleicht auch nicht), dass Apps, die nicht auf dem Bildschirm angezeigt werden, erst ausgeführt werden, wenn der Benutzer wieder zu ihnen wechselt. Der Ansatz "Alles oder Nichts" wird mit Windows 10 aktualisiert, wobei eine Ebene zwischen der Auslagerungsdatei und der normalen Auslagerungsaktivität eingefügt wird. Wenn nun Probleme mit dem Speicherdruck auftreten, bestimmt MM, welche Seiten in einem Prozess namens Zuschneiden in die geänderte Liste verschoben werden sollen.Die geänderte Liste ist eine sekundäre Liste von Auslagerungsdateien, die eine Liste von Standby-Auslagerungsdateien sichert. Eine Sicherungsliste wird erfasst, wenn der Speicher von einem anderen Prozess aus der Standby-Liste wiederhergestellt wird und der ursprüngliche Prozess nach seiner Seite sucht. Anstatt alles oder nichts komprimiert Windows 10 MM nicht verwendete Seiten, anstatt sie auf die Festplatte zu schreiben. Mit weniger Schreiben sollte das Ergebnis dank der Komprimierung weniger Festplattenvorgänge sein, und jetzt können mehr Daten im Speicher gespeichert werden.
Laut dem Windows-Team nimmt der komprimierte Speicher in der Praxis etwa 40% der unkomprimierten Größe ein. Aufgrund eines typischen Geräts, auf dem eine typische Arbeitslast ausgeführt wird, schreibt Windows 10 Seiten nur 50% so oft auf die Festplatte wie frühere Versionen von das Betriebssystem. „Wenn alles nach Plan verläuft, kann es für Windows-Benutzer zu kürzeren Wartezeiten für alle Geräte und einer längeren Lebensdauer auf Systemen mit flashbasierten Festplatten kommen .
Dekomprimierung ist auch etwas, für das Windows 10 gut geeignet ist. Windows 10 verwendet die Kombination aus Parallelisierbarkeit und sequentiellen Lesevorgängen, um Seiten in den Speicher zu bringen, die einmal aufgerufen wurden. Die neue Dekomprimierung sollte zu einer schnelleren Erfahrung führen, da Windows 10 gleichzeitig Daten dekomprimiert und sie mit mehreren CPUs parallel liest. Ältere Windows-Versionen haben sich aufgrund der Übertragungsraten zwischen den Datenträgern möglicherweise träge angefühlt.
Microsoft hat auch ein Video auf Channel 9 veröffentlicht, in dem die Funktion erläutert wird.
Speicherkomprimierung in Windows 10 RTM
https://channel9.msdn.com/Blogs/Seth-Juarez/Memory-Compression-in-Windows-10-RTM
In diesem Video diskutierte Mehmet Iyigun einige Zeit darüber, warum der Systemprozess in Windows 10 etwas mehr Speicher beansprucht und warum dies eine gute Sache ist. Ein Prozess, der mehr Speicher benötigt, klingt nach einer schlechten Sache - bis ich mehr über Speicherverwaltung, Paging und Hard- / Soft-Page-Fehler verstanden habe. Es stellt sich heraus, dass das Betriebssystem einige clevere Optimierungen vornimmt, die es Ihren Prozessen ermöglichen, einen Teil des Arbeitsspeichers zu verkleinern, ihn jedoch nicht unbedingt auf die Festplatte auslagern. Der Arbeitsspeicher bleibt nicht nur im RAM erhalten, sondern er wird auch komprimiert, wodurch harte Seitenfehler seltener auftreten. Die Ergebnisse sollten für eine schnellere Erfahrung sorgen.
In den neuesten TH2-Builds hat Microsoft die Beschreibung im Task-Manager aktualisiert und zeigt nun auch, dass der SYSTEM-Prozess Folgendes hostet compressed memory
:
um Verwirrungen über die "hohe" Nutzung zu vermeiden.
Im Windows 10 Anniversary Update, das im August 2016 veröffentlicht wurde, hat Microsoft die Komprimierung in einen Pseudoprozess extrahiert, der aufgerufen wurde Memory Compression
, um die Benutzer nicht länger zu verwirren, warum SYSTEM so viel Speicher benötigt:
Es sieht jedoch so aus, als ob Taskmgr diesen Prozess nicht anzeigt, sondern nur ProcessExplorer / ProcessHacker. Der Taskmgr zeigt nur die Größe des komprimierten Speichers in der Übersicht an:
Wenn Sie in Taskmgr den Mauszeiger über das Diagramm für den verwendeten Speicher halten, wird eine QuickInfo angezeigt, in der die Menge der komprimierten Daten angegeben ist.
In dieser Demo werden 388MB auf 122MB komprimiert, sodass mit der Komprimierung 267MB eingespart werden.