Von: Nero24 30. September 2005 Letztes Update: 4. Oktober 2005
BOINC/SETI aus der RAMDisk
Etwas kompliziert wird es bei einem Programm, bei dem sowohl die Programmdateien, als auch die Daten am gleichen
Ort liegen. So ist es z.B. bei BOINC/SETI@Home. Für SETI-User lohnt es sich auch unter Umständen,
SETI auf einer RAMDisk zu platzieren. Hier sind jedoch nicht Performance-Aspekte der Grund, sondern die Lebensdauer
der Festplatte. Distributed Computing Anwendungen, die permanent im Hintergrund laufen, schreiben alle paar Sekunden
einen Zwischenstand ihrer Berechnungen auf die Festplatte. Das jedoch bedeutet, dass diese Festplatte im 24-Stundenbetrieb
auch Nachts, wenn sonst keiner mit dem PC arbeitet, permanent laufen muss, selbst wenn in den Energieoptionen
eingestellt ist, dass die Festplatte nach x Minuten Leerlauf abgeschaltet werden soll. Die Festplatte hat keinen
Leerlauf, daher läuft sie rund um die Uhr und dafür sind IDE-Festplatte im Gegensatz zu ihren SCSI-Verwandten
eigentlich nicht ausgelegt (wir berichteten). Kopiert man
den gesamten BOINC-Ordner jedoch auf die RAMDisk, hat die Festplatte ab sofort Ruhe und kann sich abschalten.
Dazu gehen wir ganz ähnlich vor, wie eben bei Firefox. Es gibt nur zwei Unterschiede: erstens müssen wir sicherstellen,
dass das BOINC-Verzeichnis beim Herunterfahren wieder auf die Festplatte gesichert wird, da sonst ja alles, was in
der Zwischenzeit berechnet und neu aus Berkeley geladen wurde, wieder weg ist. Und zweitens müssen wir sicherstellen,
dass der BOINCManager erst geladen wird, nachdem die Daten vollständig auf die RAMDisk kopiert wurden.
Den BOINCManager einfach hinter der ramrestore.bat in der Autostart-Gruppe zu stellen, ist keine sichere Methode,
da nicht gewährleistet ist, dass Windows die Verknüpfungen der Reihe nach abarbeitet. Nein, in diesem Fall
müssen wir den BOINC-Manager aus der Autostart-Gruppe heraus nehmen und über die ramrestore.bat starten.
Nur so ist sichergestellt, dass der Programmstart erst erfolgt, wenn der Kopiervorgang auf die RAMDisk zu Ende ist.
Dazu muss an das Ende der ramrestore.bat lediglich folgende Zeile angehängt werden:
start i:\BOINC\boincmgr.exe
Das "start" ist notwendig, damit BOINC in einem neuen Task gestartet wird und das Fenster danach
automatisch geschlossen werden kann.
So weit, so gut. Nun gilt es nur noch, die Daten beim Herunterfahren wieder auf die Platte zu kopieren. Das
kann man entweder primitiv machen oder elegant. Die primitive Lösung wäre, sich eine neue Batchdatei
namens ramsave.bat zu erstellen, darin mit dem Befehl
alles wieder zurückzusichern und am Ende der Batchdatei den Befehl
shutdown -s
zu setzen. So darf man
in Zukunft den Computer eben nicht mit "Start"/"Computer ausschalten" herunterfahren, sondern nur noch mit
der Batchdatei. Für Windows XP Home User dürfte das auch die einzige Lösung bleiben.
Windows 2000 und Windows XP Pro User dagegen können das ganze auch über die Gruppenrichtlinien realisieren. Dazu über
Start - Ausführen den Befehlt "gpedit.msc" eingeben. Dort dann unter "Windows-Einstellungen", "Scripts(Starten/Herunterfahren)"
als zusätzliches Herunterfahren-Skript einfach die ramesave.bat angeben, wobei in der ramsave.bat alles zu stehen hat,
was beim Herunterfahren von der RAMDisk auf die Platte zurückgesichert werden soll.
Diesen Artikel bookmarken oder senden an ...