Ansicht umschalten
Avatar von
  • unbekannter Benutzer

19 Beiträge seit 20.08.2003

Wartezeiten beim Booten ... kein CPU-Problem!

Es ist schier unglaublich, wie schwer es zu sein scheint, neue
Lösungswege für alltägliche Probleme zu finden.

Eins vorweg: rotierende Magnetspeichertmedien waren eine Innovation,
als man Lochkarten und Magnetbänder ersetzt hat. Erstmals war es
möglich, Daten in einer "beliebigen" Reihenfolge zu lesen. Ergebnis
der Innovation war, dass Programme darauf ausgerichtet waren, dass
genau das ging. Leider sind Zugriffe auf kreisrunde Bahnen (statt
Spiralen) auch sequenziell, man kann nur einfacher mal die "Schicht"
ändern (Spur).

Warum nicht Back-to-the-Roots?

Problemstellung: Betriebssystem booten.
Lösungsansatz: Man nehme ein rotierendes Magnetspeichermedium auf dem
persistent ein Boot-Image abgelegt ist. Der Bootloader hat die
Aufgabe, dieses Image in den (heutzutage) reichlich vorhandenen
Arbeitsspeicher zu laden, sagen wir mal 500MB RAM-"Disk" für das
Kernsystem. Arbeitsspeicher wird ja idR für Anwendungsprogramme und
Daten gebraucht und ist daher für den Bootvorgang im Überfluss
verfügbar. Das Laden einer (nicht fragmentierten) Datei von
Festplatte geht heutzutage mit konventionell geschätzt 50MB/sec, ein
üppiges RAM-Disk Image wäre also nach 10sec geladen. Das könnte man
schon direkt in den POST-Prozess integrieren.

Das Betriebssystem kann dann durchaus massiv parallel starten (sofern
Abhängigkeiten das nicht verhindern), denn die Zugriffe auf eine
RAM-Disk sind nicht von langsamen Kopfbewegungen des rotierenden
Magnetspeichermediums abhängig.  Die Zugriffszeiten von rotierendem
Magnetspeicher und RAM liegen mehrere Zehnerpotenzen auseinander!

Nach dem Booten könnte das (geänderte) RAM-Disk Image im laufenden
Betrieb wieder auf die Platte geschrieben werden, damit es für den
nächsten Bootvorgang verfügbar ist (man denke nur an Snapshots).
Zentrale Elemente des Betriebssystems könnten read-only auf einer
reduzierten RAM-Disk verbleiben z.B. Systembibliotheken etc.

Das ist alles nichts neues, sonst würde ich es mir patentieren
lassen. Die Technologie wird längst eingesetzt, selbst mein PC XT vor
15 Jahren hatte eine 1.5MB RAM-Disk (als Zusatzkarte).

Kurzum: geht man von "PC-Anwendungen" im klassischen Sinne aus, ist
eine massive Prallelisierung von Rechenzeit NUR bei massiv paralleler
Verfügbarkeit der Daten  effizient. Rotierender Magnetspeicher ist
bestenfalls noch als persistenter Massenspeicher sinnvoll und es wird
Zeit, dass mechanische Speicher von der Bildfläche verschwinden.
Bewerten
- +
Ansicht umschalten