Windows Vista – SuperFetch & ReadyBoost
Erstmals veröffentlicht auf TECHNET am März 29, 2007
Heute werden wir zwei neue Vista-Leistungsverbesserungen diskutieren, SuperFetch & ReadyBoost. Wir werden auch die Vista-RAM-Nutzung diskutieren, da diese alle zusammenarbeiten.
Erstens ist SuperFetch eine Erweiterung des Prefetchers, den Sie wahrscheinlich in früheren Windows-Versionen erwähnt haben. Der Prefetcher ist für die Speicherung von Programminformationen verantwortlich, damit häufig verwendete Programme und Prozesse schneller ausgeführt werden können. In Vista wurde der Prefetcher optimiert und so geändert, dass er im Caching viel aggressiver und intelligenter ist, um eine noch höhere Leistung zu erzielen. Diese neue Funktionalität wird SuperFetch genannt.
SuperFetch verfolgt, welche Anwendungen Sie am häufigsten verwenden, und lädt diese Informationen in den Arbeitsspeicher, sodass Programme schneller geladen werden, als wenn jedes Mal auf die Festplatte zugegriffen werden müsste. Windows SuperFetch priorisiert die Programme, die Sie gerade verwenden, gegenüber Hintergrundaufgaben und passt sich Ihrer Arbeitsweise an, indem es die am häufigsten verwendeten Programme verfolgt und diese vorab in den Speicher lädt. Mit SuperFetch werden Hintergrundaufgaben weiterhin ausgeführt, wenn sich der Computer im Leerlauf befindet. Wenn die Hintergrundaufgabe jedoch abgeschlossen ist, füllt SuperFetch den Systemspeicher erneut mit den Daten, mit denen Sie vor der Ausführung der Hintergrundaufgabe gearbeitet haben. Wenn Sie jetzt zu Ihrem Schreibtisch zurückkehren, werden Ihre Programme weiterhin so effizient ausgeführt wie vor Ihrer Abreise. Es ist sogar intelligent genug, um zu wissen, an welchem Tag es ist, wenn Sie an bestimmten Tagen häufiger verschiedene Anwendungen verwenden.
OK, wie ist die RAM-Nutzung betroffen? Möglicherweise haben Sie bemerkt, dass Vista tendenziell einen viel größeren Prozentsatz des System-RAM verwendet als unter Windows XP. Es ist nicht ungewöhnlich, den Task-Manager auf einem Vista-Computer anzuzeigen, auf dem mehrere GB RAM installiert sind und weniger als 100 MB RAM als frei angezeigt werden. Hier ist zum Beispiel ein Screenshot des Task-Managers von dem Computer, an dem ich gerade arbeite.
Wie Sie sehen können, verfügt dieser Computer über 4 GB RAM und verwendet nur etwa 2,2 GB, wenn man bedenkt, welche Anwendungen ich geöffnet habe (ich verwende derzeit Outlook 2007, Word 2007, Windows Live Writer Beta , mehrere Instanzen von IE7 mit mehreren geöffneten Registerkarten und einige meiner täglichen Tools). Es zeigt jedoch freien physischen Speicher von nur 59 MB. Auf den ersten Blick scheint dies ein Grund zur Sorge zu sein, und dies macht die Menschen tendenziell etwas nervös, aber sobald Sie die Auswirkungen von SuperFetch berücksichtigen, wird dieser Zustand weniger besorgniserregend.
Viele Menschen neigen dazu, RAM als eine Art Ressource zu betrachten, und wenn es aufgebraucht ist, glauben sie, dass sie ein Problem haben. In Wirklichkeit ist RAM jedoch eher ein Cache. Wenn Ihr System nur einen kleinen Prozentsatz Ihres Caches verwendet, ist dies eine enorme Verschwendung. Stellen Sie sich vor, wie Ihr Prozessor funktionieren würde, wenn sein L2-Cache nie mehr als 25% seiner Kapazität verbrauchen würde. L2-Cache ist eine kleine Menge an Hochgeschwindigkeitsspeicher, der einen Hochgeschwindigkeitszugriff auf die am häufigsten aufgerufenen Daten des Systems ermöglicht.
In früheren Windows-Versionen war der Prefetcher beim Auffüllen des Arbeitsspeichers nicht sehr aggressiv. Mit Windows Vista versucht SuperFetch jedoch sein Bestes, um so viel RAM wie möglich zu verwenden, denn wenn Sie es haben, können Sie es genauso gut nutzen.
Wie Sie vielleicht im obigen Screenshot sehen, werden nur etwa 2,2 GB RAM verwendet, der Rest jedoch nicht als frei angezeigt. Dies liegt daran, dass die Daten im Cache als sehr niedrig eingestuft werden Priorität und jeder Prozess, der hereinkommt und RAM verwenden muss, löscht diese Daten transparent für den Benutzer oder Prozess. Der Speicher wird also verwendet, aber was die Prozesse betrifft, ist er leer. Das läuft also darauf hinaus, dass selbst wenn Sie sehen, dass Sie sehr wenig physischen Speicher frei haben, es höchstwahrscheinlich nichts zu befürchten gibt, es funktioniert nur SuperFetch. Wenn Sie jedoch mehrere Programme haben, die viel RAM verwenden, kann dies immer noch zu einer Erschöpfung der Systemressourcen führen, dies kann jedoch im Diagramm zur Speichernutzung im Task-Manager angezeigt werden. Wenn Sie SuperFetch deaktivieren, verhält sich Windows Vista in Bezug auf den Prefetcher eher wie Windows XP. SuperFetch erkennt und verwendet auch automatisch jede Kapazität, die von Speichergeräten bereitgestellt wird, die für ReadyBoost und ReadyDrive für hochleistungsfähiges Festplatten-Caching erweitert wurden.
Nachdem wir SuperFetch eingeführt haben, gehen wir zu ReadyBoost über. Wenn wir über Möglichkeiten zur Verbesserung der Leistung eines Computers sprechen, denken wir zuerst daran, einem System Speicher (RAM) hinzuzufügen. Je mehr Speicher ein System hat, desto seltener muss es auf die Festplatte zugreifen, um Anwendungen auszuführen. Das Hinzufügen von RAM zu einem System ist jedoch nicht immer eine praktikable Option – entweder weil die Maschine keine Kapazität für zusätzliche Erweiterungen hat oder weil RAM selbst nicht billig ist. Denken Sie daran – es ist wichtig, dass Sie den Unterschied zwischen SuperFetch, das intelligentes Caching mit verfügbarem RAM durchführt, und mehreren Programmen verstehen, die aufgrund des verwendeten Arbeitsspeichers zu einer Erschöpfung der Ressourcen führen.
Also, was bringt ReadyBoost auf den Tisch? ReadyBoost ist eine neue Funktion, mit der Windows Vista nichtflüchtigen Flash-Speicher wie einen USB-Stick oder eine SD-Karte verwenden kann, um die Systemleistung zu verbessern. Festplatten eignen sich hervorragend für große sequentielle E / A. In diesen Situationen wird ReadyBoost nicht verwendet. Die Handhabung kleiner Datenträgertransaktionen ist auf Solid-State-Speicher im Vergleich zu Festplatten viel schneller, aber der Kompromiss ist, dass die kontinuierliche Durchsatzrate eines USB-Sticks oder einer SD-Karte nicht gut gegen eine Festplatte stapelt. ReadyBoost erstellt eine Kopie eines Teils des Festplatten-Cache und legt sie auf dem Flash-Speicher. Alle Seiten auf dem Gerät werden durch eine Seite auf der Festplatte gesichert.
Der Festplattencache wird vom System zum Zwischenspeichern kürzlich verwendeter Daten verwendet. ReadyBoost verwendet die intelligente Speicherverwaltung von Windows SuperFetch, um kleine Datenmengen auszuwählen, die nur langsam aus dem Festplattencache abgerufen werden können, und erstellt eine Kopie davon auf dem Flash-Laufwerk. Es ist wichtig, sich daran zu erinnern, dass dies nur eine Kopie ist, so dass selbst wenn der Stick nicht angeschlossen ist, keine Daten verloren gehen und das System weiterläuft. Das Nettoergebnis ist, dass das System, wenn es auf kleine Teile nicht zusammenhängender Daten zugreifen muss, diese viel schneller vom Flash-Laufwerk als von der Festplatte abrufen kann. Wenn das System auf größere Datenmengen zugreifen muss, verwendet es einfach die Festplatte. An dieser Stelle ist es wichtig darauf hinzuweisen, dass wir AES-128 verwenden, um alles zu verschlüsseln, was wir auf das Gerät schreiben.
OK – was sind die Richtlinien für die Verwendung von ReadyBoost? Allgemein, Es wird empfohlen, mindestens a zu haben 1:1 verhältnis von Solid-State-Speicher zu RAM. Wenn Sie also 2 GB RAM haben, sollten Sie mindestens einen 2 GB USB-Stick oder eine SD-Karte haben. Das wäre das ideale Minimum. Am anderen Ende des Spektrums könnten Sie ein 2,5: 1-Verhältnis von Solid-State-Speicher zu RAM haben. Die Obergrenze für Flash, die für ReadyBoost verwendet werden kann, beträgt jedoch 4 GB (aufgrund der Einschränkungen des FAT32-Dateisystems).
Welche Art von Geschwindigkeitssteigerungen werden Sie wahrscheinlich sehen? In aller Ehrlichkeit – es wird von System zu System variieren. Auf einem Computer mit nur 1 GB RAM, der stark genutzt wird, bietet ReadyBoost eine spürbare Leistungssteigerung. Umgekehrt werden auf einem System mit 4 GB RAM, das nicht wirklich durch die Anwendungsnutzung beansprucht wird, die Vorteile von ReadyBoost nicht ohne weiteres ersichtlich sein.
Hier haben Sie es – eine kurze Einführung in ReadyBoost. Alles, was Sie tun müssen, ist einen kompatiblen Stick anzuschließen und die Option „Mein System mit ReadyBoost beschleunigen“ in der AutoPlay-Oberfläche auszuwählen. Die Konfigurationsoptionen von ReadyBoost sind sehr einfach – wie Sie auf dem Bild links sehen können, haben Sie zwei Möglichkeiten, wenn Sie Ihr Gerät anschließen – ob ReadyBoost verwendet werden soll oder nicht und wie viel Speicherplatz auf dem Gerät Ready Boost zugewiesen werden soll. Für nicht-technische Benutzer kann das Öffnen des Gehäuses ihrer Heimsysteme und das Hinzufügen von RAM eine entmutigende Aufgabe sein, aber es sollte einfach genug sein, zum lokalen Computergeschäft zu gehen und einen kostengünstigen, kompatiblen USB-Stick abzuholen!
Hier sind die Voraussetzungen für ein ReadyBoost-kompatibles USB-Gerät:
- Der USB-Stick muss mindestens USB sein 2.0
- Das Gerät muss in der Lage sein, 3,5 MB / s für 4 KB zufällige Lesevorgänge gleichmäßig über das gesamte Gerät und 2,5 MB / s für 512 KB zufällige Schreibvorgänge gleichmäßig über das Gerät auszuführen.
- Der USB-Stick muss mindestens 64 MB freien Speicherplatz haben