3.6 KiB
📘 Zusammenfassung: VB Zuverlässigkeit und Virtualität – Computerarchitektur
🔒 Zuverlässigkeit (Dependability)
🛑 Begriffe
-
Fault: Fehler in einem Bauteil (temporär oder permanent)
-
Failure: System liefert nicht die spezifizierte Leistung
-
MTTF (Mean Time To Failure): mittlere Betriebsdauer bis zum Ausfall
-
MTTR (Mean Time To Repair): mittlere Reparaturzeit
-
MTBF (Mean Time Between Failures): MTTF+MTTRMTTF + MTTR
-
Verfügbarkeit (Availability):
Availability=MTTFMTTF+MTTRAvailability = \frac{MTTF}{MTTF + MTTR}
-
Verbesserungen:
-
MTTF erhöhen: Fehlervermeidung, Fehlertoleranz
-
MTTR verringern: bessere Diagnose & Reparaturprozesse
-
🧮 Fehlererkennung & Korrektur
✅ Hamming-Codes
-
Hamming-Distanz 3: Single Error Correction (SEC), Double Error Detection (DED)
-
SEC/DED:
-
Erkennt bis zu 2 Fehler
-
Korrigiert einen Fehler
-
-
ECC DRAM: Schützt 64 Bit mit zusätzlichen 8 Bit (insg. 72 Bit)
🖥 Virtualisierung
📦 Virtuelle Maschinen (VMs)
-
Host-System emuliert Gastbetriebssystem & Hardware
-
Vorteile:
-
Isolation mehrerer Gäste
-
Bessere Ressourcennutzung
-
Sicherheit & Zuverlässigkeit
-
-
Beispiele:
-
System-VMs: VMware, VirtualBox
-
Language-VMs: JavaVM
-
Container (lightweight): Docker
-
⚙ Virtual Machine Monitor (VMM)
-
Verwaltet die Zuordnung von virtuellen zu physischen Ressourcen
-
Traps bei privilegierten Instruktionen
-
Emuliert Timer & I/O-Geräte für Gäste
🗺 Virtueller Speicher (Virtual Memory)
🧱 Grundlagen
-
Nutzt Hauptspeicher als Cache für Festplatte
-
Programme erhalten eigenen virtuellen Adressraum
-
Page Table: Zuordnung virtueller zu physischer Adressen
-
Page Fault: Seite nicht im Speicher → OS lädt sie nach
🚀 Optimierungen
-
Translation Lookaside Buffer (TLB): Cache für Seitentabelleneinträge
-
LRU (Least Recently Used): Ersetzt selten genutzte Seiten
-
Write-Back Cache: Schreibt geänderte Seiten nur bei Ersetzung zurück
🔥 Speicherhierarchie & Multiprozessoren
🏎 Cache-Kohärenz
-
Problem: mehrere Caches → inkonsistente Daten
-
Lösungen:
-
Snooping-Protokolle: Caches überwachen Busaktivitäten
-
Directory-based Protokolle: zentrale Verzeichnisse verwalten Status
-
-
Memory Consistency: Sicherstellen, dass alle Prozessoren Änderungen sehen
⚠️ Fallacies & Pitfalls
-
Schlechte Speicherlokalität (z. B. Spaltenweise Iteration)
-
Geringe Assoziativität bei vielen Kernen → Konfliktmisses
-
VM-Implementierung auf ISAs ohne Virtualisierungs-Support erschwert
📜 Fazit
✅ Fast memories are small, large memories are slow → Memory Hierarchy mit Caching notwendig
✅ Zuverlässigkeit durch Fehlertoleranz & Fehlerkorrektur verbessern
✅ Virtualisierung & Virtual Memory: Schlüsseltechnologien moderner Systeme
✅ Multiprozessorsysteme benötigen Kohärenzprotokolle
📝 Für die Klausur merken
✅ Unterschied Fault ↔ Failure ↔ Error
✅ Hamming-Codes: SEC/DED, ECC
✅ Vorteile/Nachteile von Virtualisierung
✅ Virtual Memory: Page Table, TLB, Page Fault Handling
✅ Cache-Kohärenz: Snooping vs. Directory-Protokolle
✅ Bedeutung von LRU & Write-Back Caches