SuperFetch

SuperFetch ist eine Speichermanagementtechnik, welche mit dem Betriebssystemen Windows Vista im Workstation- und Heimanwenderbereich, sowie mit Server 2008 im Serverbereich, eingeführt[1] wurde und bis Windows 10 1803 bzw. Server 2008 R2 ein integraler Bestandteil des Betriebssystems war. In allen neueren Versionen von Windows findet diese Technik allerdings keine Anwendung mehr und wurde durch SysMain abgelöst[1]. Grundlage für SuperFetch ist der Speichervorgriff (engl. prefetching).

Vorgehen

Häufig benötigte Inhalte langsamer Speichermedien werden automatisch im Hintergrund in schnelleren Speichermedien (vor allem dem Arbeitsspeicher (RAM), aber auch in Flash-Speichern – durch ReadyBoost und Turbo Memory) bereitgestellt, die dadurch nahezu vollständig ausgefüllt werden. Das ist kein Nachteil, da der Speicher direkt wieder vom Betriebssystem freigegeben wird, wenn ein Programm mehr Arbeitsspeicher benötigt.

Entscheidungen

Die Entscheidung, welche Inhalte zwischengespeichert werden, basiert auf folgenden Methoden:

  • Anlegen historischer Daten über den Bedarf
  • Bereitstellen von Inhalten gemäß der historischen Daten
  • Neuanordnung von erwarteten mehreren kleinen Zugriffen in einen großen Zugriff
  • die Methoden des Prefetcher von Windows XP, insbesondere das erneute Bereitstellen kürzlich verdrängter Inhalte, sobald wieder genug schnellerer Speicher frei geworden ist

Modi

In der Windows-Registrierungsdatenbank können verschiedene Modi eingestellt werden – das geschieht über den Registryschlüssel HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters in der Variable EnableSuperFetch. Folgende Werte sind vorgesehen:

  • 0: SuperFetch deaktiviert
  • 1: Den Start von Programmen beschleunigen
  • 2: Den Bootvorgang beschleunigen
  • 3: Bootvorgang und das Starten von Programmen beschleunigen (Standardeinstellung)

Bewertung

Positiv an SuperFetch ist, dass Programme im Arbeitsspeicher schneller gestartet werden können. Das kann sich bemerkbar machen, wenn die Festplatte durch andere Aufgaben, wie z. B. einen Virenscan, ausgelastet ist.

Weil Microsoft SuperFetch für Windows-Versionen vor Vista nicht anbietet, haben andere Anbieter wie beispielsweise eBoostr diese Lücke gefüllt.

Negativ ist, dass der Systemstart verlangsamt werden kann. Es wird nicht geprüft, ob das Vorladen überhaupt sinnvoll ist. Bei SSDs benötigt man kein Superfetch. Es wird auch nicht unbedingt berücksichtigt, ob eine Datei wirklich häufig genutzt wird. Gelegentliche Nutzung genügt, um Superfetch aktiv werden zu lassen, was z. B. bei Images von virtuellen Maschinen relativ sinnfrei ist. Festplatten werden durch überflüssige Ladevorgänge unnötig gestresst, was die Haltbarkeit verkürzen kann.

Einzelnachweise

  1. a b Archiveddocs: Windows Administration: Inside the Windows Vista Kernel: Part 2. Abgerufen am 14. September 2022 (deutsch).