Archiv für den Tag ‘windows 7’

SSD-Optimierungen für Windows 7 - Teil 2

Datum09. April 2012 · Kommentare0 Kommentare

Im ersten Teil habe ich einige Möglichkeiten beschrieben, Windows 7 und Vista fit für eine SSD zu machen und dabei gleichzeitig unnötige Schreibzugriffe zu Gunsten der Lebendauer der SSD zu reduzieren. Im Web sind jedoch noch viele weitere Tipps im Umlauf, die teilweise überflüssige Optimierungen vorschlagen aber auch teilweise ganz nützlich sein können. Im Folgenden also noch ein paar weitere Tuningmaßnahmen für Windows 7 und Vista und eine Übersicht der überflüssigen Methoden.

Intel X25-M SATA Solid-State Drive (SSD)

Weitere Tuningmaßnahmen

Prefetcher deaktivieren

In Windows XP führte Microsoft den sogenannten Prefetching-Mechanismus ein. Dieser dient dazu, häufig benutzte Dateien für den Bootvorgang oder den Start von Programmen besser zu organisieren. Normalerweise sind nämlich diese Dateien gewissermaßen über die Festplatte verstreut und der Schreib-/Lesekopf muss sich immer wieder neu positionieren, um diese Dateien gänzlich zu lesen. Eventuell muss die selbe Datei sogar mehrmals gelesen werden, wodurch sich dieser Prozess wiederholen kann. Stark vereinfacht beschrieben, zeichnet der Prefetcher nun auf, welche Dateien (und Fragmente dieser Dateien) beim Booten und Starten häufig benötigter Programme gebraucht werden und sortiert sie alle drei Tage mit Hilfe der Windows Defragmentierung so um, dass sie sequentiell – also ohne Neupositionierung des Schreib-/Lesekopfes – gelesen werden können (siehe dazu auch Microsoft Windows Internals).
Weil bei einer SSD der Zugriff auf verschiedene Speicherzellen wahlfrei erfolgen kann, ist eine solche automatische Optimierung natürlich unnötig und darf getrost abgeschaltet werden, um Speicherplatz und Schreibzugriffe zu sparen. Hierzu ist ein Eingriff in die Systemregistrierung erforderlich. Der zu ändernde Wert EnablePrefetcher befindet sich unter HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters. Normalerweise ist hier ein Wert von 3 vorgegeben, wodurch der Bootprozess und Programmstart optimiert wird. Als SSD-Besitzer sollte man ihn auf 0 ändern, um den Prefetcher vollständig abzuschalten. Ein Neustart ist anschließend noch erforderlich.

Persönliche Anwendungsdaten verschieben

Webbrowser (z.B. Firefox oder Chrome) und Mailprogramme (z.B. Thunderbird) sind Beispiele für Programme, die ihre Anwendungsdaten bevorzugt unter C:\Users\[Benutzername]\AppData\ ablegen und dadurch für vermehrte Schreibzugriffe verantwortlich sind, wenn C:\ die Systempartition auf der SSD ist. Wenn sie an diesem Ort auf der SSD liegen, sorgen sie jedoch nicht unbedingt für erhöhte Anwendungsperformance. Sie können also, wenn vorhanden, auf eine herkömmliche Festplatte verschoben werden, was zum einen Schreibzugriffe einsparen kann und zum anderen lassen sich Backups vereinfachen, weil sie an einem zentralen Ort gesammelt werden können.

Unnötige Maßnahmen

Auslagerungsdatei deaktivieren

Ein häufig vorgeschlagener Tipp, um Schreibzugriffe zu reduzieren ist, die Auslagerungsdatei (Swap) vollständig abzuschalten. Wenn genügend Arbeitsspeicher (RAM) zur Verfügung steht, mag das kein Problem sein. Sollte jedoch einmal mehr Speicher benötigt werden als vorhanden ist, kann Windows nun nicht mehr einen Teil des RAM auf der Festplatte oder SSD auslagern und so „Platz schaffen“. Daher sollte auch bei ausreichend großem Arbeitsspeicher die Auslagerungsdatei erhalten bleiben und lediglich in der Größe reduziert werden (wie im vorigen Teil beschrieben), um SSD-Speicherplatz zu sparen. Zudem kommen Untersuchungen von Microsoft selbst zu dem Schluss, dass das Verhältnis von Lese- zu Schreibzugriffen auf die Auslagerungsdatei (pagefile.sys) rund 40:1 ist, also nach 40 lesenden gerade einmal ein schreibender Zugriff erfolgt. Bei ausreichend großem RAM sollten theoretisch noch weniger oder gar keine Schreibzugriffe nötig sein.

Wenn jemand von euch noch mehr Optimierungstipps kennt und sie womöglich sogar verwendet, dann ab damit in die Kommentare.

Bild: Intel Free Press via Flickr

SSD-Optimierungen für Windows 7

Datum13. Februar 2012 · Kommentare3 Kommentare

Im Web kursieren eine Vielzahl an Tipps, um Windows 7 (und unter Umständen Windows Vista) für eine SSD als Systemplatte zu optimieren. Dazu zählen einfache Tweaking-Methoden zur Geschwindigkeitserhöhung, Maßnahmen, um unnötige Schreibzugriffe zu vermeiden oder deren Anzahl zu reduzieren und Maßnahmen um Speicherplatz einzusparen. Aus gegebenem Anlass möchte ich einmal meine ganz persönlichen Tuningmaßnahmen vorstellen und erläutern.

SSD-Optimierungen (eigene Aufnahme unter Creative Commons License [BY-NC-SA])

Grundsätzliche Überlegungen

Die Speicherzellen einer SSD sind Halbleiter-Bauelemente und vertragen nur eine begrenzte Anzahl an Schreibzyklen. In den günstigen Modellen sind überwiegend MLC-Speicherzellen anzutreffen, in denen pro Zelle nicht nur ein Bit, sondern zwei oder mehr gespeichert werden. Dadurch sind, verglichen mit teureren SLC-Speicherzellen, höhere Speicherdichten und folglich Kosteneinsparungen möglich, welche an den Kunden weitergegeben werden. MLC-Speicher besitzt jedoch eine deutlich niedrigere Anzahl an (garantierten) Schreibzyklen als SLC-Speicher. Die Herstellerangaben reichen hier üblicherweise von 5.000 bis 10.000 Zyklen bei MLC- und rund 100.000 bei SLC-Bausteinen (siehe hier).
Im ersten Moment mögen diese Angaben für MLC-Speicher erschreckend niedrig wirken, nichtsdestoweniger sollten sie aus zwei Gründen keinen Anlass zu übermäßiger Sorge bereiten: Zum Ersten werden im gewöhnlichen PC-Alltag viel weniger Daten geschrieben als gelesen und zum Zweiten sorgen sogenannte Wear-Levelling-Algorithmen der Hersteller dafür, dass Schreiboperationen gleichmäßig auf alle zur Verfügung stehenden Speicherzellen verteilt werden (siehe hier). Infolgedessen wird auf jede Zelle verhältnismäßig selten geschrieben und die Lebensdauer der gesamten SSD ist merklich höher als die einer einzelnen Zelle. Bei einer Crucial m4 (64 GB) konnten bisher beispielsweise fast 370 TB geschrieben werden, ohne dass die SSD versagte oder per S.M.A.R.T. einen Fehler meldete (mehr und genauere Angaben). Bei einer typischen Nutzung von 20 GB pro Tag ergibt sich daraus eine theoretische Lebensdauer von circa 50 Jahren (370 TB × 1000 GB/TB ÷ 20 GB/Tag ÷ 365 Tage/Jahr). Mehr als genug also für den durchschnittlichen Nutzer, wobei die meisten SSD-Hersteller deutlich kürzere Laufzeiten garantieren (bei Intel 5 Jahre) und die Erwartung, je nach Modell, irgendwo dazwischen liegen dürfte (für weitere Informationen siehe c't Magazin 22/2011, S. 150).

Optimierungen und Tuningmaßnahmen

Optimierungsmaßnahmen sollen zum Einen dazu beitragen, das Potential der SSD auszuschöpfen und zum Anderen unnötige Schreibzyklen zu reduzieren, wobei letzteres nur für ältere, sehr günstige und/oder unzuverlässigere SSDs wichtig ist. Im Folgenden also meine persönlichen Optimierungen.

Ruhezustand deaktivieren

In vielen Betriebssystemen, so auch Windows 7 und Vista, kann der Rechner in einen bestimmten stromlosen Zustand versetzt werden, bei dem später das Weiterarbeiten an gleicher Stelle möglich ist. Dazu wird das aktuelle Abbild des Arbeitsspeichers (ergo der Systemzustand) auf die Festplatte geschrieben um es später zurückzuschreiben und das System in den Zustand vor dem Abschalten zu versetzen (sog. „Suspend to Disk“ oder S4), wodurch ein Anwender seine Betriebssystemsitzung inklusive offener Anwendungen direkt fortsetzen kann. Windows schreibt das RAM-Abbild in die Datei hiberfil.sys, welche genauso groß ist, wie der vorhandene RAM. Um Schreibzyklen und auch Speicherplatz auf der SSD zu sparen, sollte lieber der Bereitschaftsmodus (im Windows-Jargon „Energie sparen“, eigentlich „Suspend to RAM“) genutzt werden, der nur den RAM nach dem Abschalten noch mit Energie versorgt und nur sehr wenig Strom benötigt. Der Ruhezustand kann über die Kommandozeile mit Administratorrechten deaktiviert werden, wodurch auch besagte Datei gelöscht wird.

powercfg -h off

Speicherabbilder deaktivieren

Bei einem Systemabsturz wird von Windows ein Abbild des Arbeitsspeichers (Memory-Dump) auf die Festplatte geschrieben, um daraus Debug-Informationen gewinnen zu können. Für die meisten Anwender ist das eher sinnlos und durch Deaktivieren können Schreibzyklen eingespart werden:

Startknopf ▷ Rechtsklick auf Computer ▷ Eigenschaften ▷ Erweiterte Systemeinstellungen ▷ Einstellungen... unter Starten und Wiederherstellen und (Kein) im Menü unter Debuginformationen wählen.

Indexierung abschalten

Die Indexierung von Dateien dient dem schnelleren Auffinden selbiger bei einer Suche. Weil eine SSD von Haus aus schon deutlich schnellere Zugriffszeiten besitzt, kann man sehr gut darauf verzichten.

Startknopf ▷ Linksklick auf Computer ▷ Rechtklick auf die SSD ▷ Eigenschaften ▷ Zulassen, dass für Dateien auf diesem Laufwerk […] abwählen, Änderungen auf alle Unterordner anwenden lassen und auftretende Meldungen entsprechend bestätigen.

Zuverlässigkeitsüberwachung deaktivieren

Von diesem Dienst haben wohl nur die Wenigsten etwas mitbekommen. Der sogenannte Reliability Monitor ist dafür zuständig, die Systemstabilität zu überwachen und zu bewerten, kostet dafür jedoch Systemleistung. Abschalten kann man ihn durch folgenden Befehl in der Kommandozeile mit Administratorrechten:

schtasks.exe /change /disable /tn \\Microsoft\\Windows\\RAC\\RacTask

Größe der Auslagerungsdatei reduzieren

Sofern man über genügend Arbeitsspeicher (> 4 GB) im System verfügt, kann man die Größe der pagefile.sys (unter Linux der sogenannte Swap-Bereich) verkleinern, um wertvollen Speicherplatz auf der SSD zu sparen.

Startknopf ▷ Rechtsklick auf Computer ▷ Eigenschaften ▷ Erweiterte Systemeinstellungen ▷ Einstellungen... unter Leistung anklicken ▷ Erweitert ▷ Ändern. Auslagerungsdateigröße für alle Laufwerke automatisch verwalten abwählen, die SSD auswählen und Benutzerdefinierte Größe wählen. Bei Anfangsgröße und Maximale Größe jeweils 1024 eintragen und auf Festlegen klicken.

Anschließend wird nur noch ein Gigabyte Auslagerungsspeicher zur Verfügung stehen.

Systemwiederherstellung abschalten

Ein Tipp der eher mit Vorsicht zu genießen ist, weil hierdurch keine Wiederherstellungspunkte beim Einspielen von Updates und Installieren einiger Programme mehr gesetzt werden. Manche Anwender fühlen sich dadurch sicherer und haben vermutlich schon einmal genutzt, um das System zurückzusetzen. Wer keine Verwendung dafür hat, kann sie gänzlich deaktivieren und so Speicherplatz und Schreibzyklen einsparen.

Startknopf ▷ Rechtsklick auf Computer ▷ Eigenschaften ▷ Computerschutz ▷ SSD auswählen und auf Konfigurieren klicken. Computerschutz deaktivieren wählen und durch OK bestätigen.

Temp-Ordner verlegen

Den Ordner für temporäre Programmdateien kann man, sofern vorhanden, auf eine herkömmliche Festplatte verschieben und so Speicherplatz und auch wieder Schreibzyklen sparen.

Startknopf ▷ Rechtsklick auf Computer ▷ Eigenschaften ▷ Erweiterte Systemeinstellungen ▷ Umgebungsvariablen. Im Bereich Benutzervariablen für … bei den Werten für TEMP und TMP jeweils auf Bearbeiten... klicken und die Werte anpassen (z.B. auf D:\\Temp) und durch OK bestätigen.

Fortsetzung folgt …

Im nächsten Teil dann noch ein paar Optimierungsmethoden und Erläuterungen, warum ich einige Optimierungen für weniger sinnvoll erachte.

Windows 7: Stromversorgung von USB-Geräten beim sicheren Entfernen abschalten

Datum20. Januar 2012 · Kommentare0 Kommentare

Seit Windows Vista wird die Stromversorgung von USB-Geräten beim Nutzen der Option "Hardware sichern entfernen und Medium auswerfen" nicht mehr standardmäßig abgeschaltet. In den Vorgängerversionen (XP, 2000) und unter Linux ist das aber immer noch der Fall und gerade bei externen Festplatten sehr nützlich, weil deren Controller dabei explizit angewiesen werden, die Lese- und Schreibköpfe in die Parkposition zu fahren (genauere Beschreibung hier).

Glücklicherweise kann man jedoch über einen Eintrag in der Systemregistrierung von Windows 7 und Vista das ursprüngliche Verhalten wiederherstellen. Dazu muss der DWORD-Wert DisableOnSoftRemove im Pfad HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\usbhub\hubg auf 1 gesetzt werden. Über eine kleine Registry-Datei kann man das Ganze auch automatisieren und per Doppelklick eintragen lassen. Dazu einfach den nachfolgenden Code in einer Textdatei speichern, die Dateierweiterung auf „.reg“ ändern und die Datei ausführen.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\usbhub\hubg]
"DisableOnSoftRemove"=dword:00000001

Nach einem Neustart ist die Änderung übernommen und USB-Geräte werden beim „sicheren Entfernen“ sogleich vom Strom getrennt. Im Test klappte es mit einem USB-Stick und zwei externen Festplatten. In einem anderen Fall wurde bei einer externen Festplatte die Stromversorgung jedoch nicht abgeschaltet. Ein Grund konnte hierfür jedoch nicht gefunden werden.
Anzumerken ist auch noch, dass bei externen 3,5"-Festplattengehäusen mit separatem Netzteil die Stromabschaltung selbstredend nicht sinnvoll ist, weil der Strom für die Festplatte über das externe Netzteil und nicht über den USB-Anschluss bereitgestellt wird.

Simple Countdown v3 erschienen

Datum22. Januar 2011 · Kommentare0 Kommentare

Aller guten Dinge sind drei! Schon vor einigen Tagen habe ich eine neue Version meiner Gadget-Eigenentwicklung für die Windows Sidebar fertig gestellt. Nun ist das Update auch offiziell von Microsoft angenommen worden und so steht nun Simple Countdown in Version 3 zum offiziellen Download in der Windows Live Gallery bereit.

Simple Countdown v3

Grund für die neue Version war ein Fehler im Code, der unter gewissen Umständen dazu führte, dass der Countdown zu langsam läuft. So berichtete ein Nutzer, dass nach 8 Stunden eine Differenz von 10 Minuten zu beobachten war. Dieser Fehler wurde behoben und zusätzlich gibt es noch ein neues Design im halbtransparenten Look.

Problem „Zwei Netzwerke bei einem Anschluss“ beheben

Datum24. Oktober 2010 · Kommentare0 Kommentare

In Windows Vista oder Windows 7 kommt es manchmal zu dem Problem, dass bei einem Netzwerkadapter und einem daran angeschlossenen Netzwerk trotzdem zwei Netzwerke erkannt werden und der Rechner dann keinen Zugang zum gewünschten Netzwerk oder dem Internet hat.

Eine Benutzerin hatte neulich das auch hier beschriebene Problem. Nach langem Suchen fand ich schließlich die Lösung und möchte sie nun kundtun, weil scheinbar noch mehr User das gleiche Problem haben.

Das Problem besteht in einem falschen oder überflüssigen Eintrag in der Routingtabelle, der dazu führt, dass eine Art Loopback eingerichtet wird und dadurch zwei Netzwerke erkannt werden.

Bild einer typischen Routingtabelle

Die Lösung besteht nun darin, die IPv4-Routingtabelle schlicht zu löschen:

route -f -4

Befehle von route

Keine Angst, die Routingtabelle wird in „modernen“ Netzwerken automatisch wieder richtig aufgebaut. Anschließend muss der Netzwerkadapter die IP-Adresse wieder neu beziehen und schon sollte das Netzwerk wie gewünscht funktionieren:

ipconfig -release
ipconfig -renew

Natürlich ist ein falscher Routingeintrag nur eine mögliche Ursache des Problems, aber in den meisten Fällen war es eben jene.