diff --git a/Betriebssysteme.md b/Betriebssysteme.md new file mode 100644 index 0000000..524f4cc --- /dev/null +++ b/Betriebssysteme.md @@ -0,0 +1,86 @@ +--- +title: Betriebssysteme +date: Wintersemester 20/21 +author: Robert Jeutter +--- + +# Einführung +worauf es ankommt: +- Korrektheit +- Sicherheit +- Verfügbarkeit +- Skalierbarkeit +- Echtzeitfähigkeit +- Robustheit +- Sparsamkeit + +## Extrem breites Anwendungsspektrum +- funktionale Eigenschaften + - Authentisierung, Verschlüsselung + - Fahrzeug/Verkehrsmanagement + - Informationsmanagement + - Kommunikationsmanagement +- nichtfunktionale Eigenschaften + - Sicherheit + - Korrektheit + - Echtzeitfähigkeit + - Skalierbarkeit + - Offenheit + - Sparsamkeit + - Verfügbarkeit + - Robustheit + +mit vielen Gemeinsamkeiten +- Architekturprinzipien +- Programmierparadigmen + +voller individueller Strategien mit teils konfligierenden Zielen +- Performanz $\leftrightarrow$ Robustheit +- Echtzeitfähigkeit $\leftrightarrow$ Effizienz + +$\Rightarrow$ spezialisierte Betriebssystem-Familien1. Einführung + +## Funktionale und nicht-Funktionale Eigenschaften +Beispiel Essen: +- funktionale Eigenschaft: es soll satt machen +- nichtfunktional: Geschmack, Aussehen,... + +### Funktionale Eigenschaften (= Funktionen, Aufgaben) +- Betriebssysteme: sehr komplexe Softwareprodukte +- Ein Grund für diese Komplexität: besitzen Reihe von Aufgaben - also funktionale Eigenschaften +- Hauptaufgaben dabei: + 1. Verwalten der Resourcen des Systems (Hard-u. Software-Ressourcen) + 2. Transformation der „hässlichen“ Hardwareschnittstellen in angenehme nutzerfreundliche Schnittstelle (Betriebssystem als „Erweiterung“ der Maschine, auch Hardware + BS = „virtuelle Maschine“) + 3. Dabei für beide Aufgaben: Schaffung sinnvoller Abstraktionen(Prozess, Datei,... $\rightarrow$ Softwareressourcen) + +### Nichtfunktionale Eigenschaften +Wie - mit welchen speziellen weiteren Eigenschaften sollen die funktionalen Eigenschaften realisiert werden. Z.B. schon genannt: +- Echtzeitfähigkeit: Betriebssystem-Komponenten, -Algorithmen usw. mit solchen Eigenschaften realisieren, dass Betriebssystem insgesamt echtzeitfähig ist +- Robustheit: Betriebssystem-Komponenten, -Algorithmen usw. mit solchen Eigenschaften realisieren, dass Betriebssystem insgesamt robust ist +- usw + +## Blick in Betriebssystem-Zoo +- Mainframe Betriebssystem + - performante E/A + - Massendatenverarbeitung +- Server Betriebssystem + - viele Klienten, permanente Kommunikation + - Web Server, Fileshare +- Parallelrechner Betriebssystem + - Number Crunching, parallele Algorithmen mit hohem Rechenbedarf + - schnelle IPC +- Desktop/Laptop Betriebssystem + - Interaktivität/Responsivität +- Echtzeit Betriebssystem + - Einhaltung zeitlicher Garantien, Safety + - Fahrzeug-, Anlagensteuerung +- Eingebettete Systeme + - in Fahrzeugen, Kaffeemaschinen, Telefonen... + - z.T. Spezialaufgaben + +# Grundbegriffe +- Wo sind Betriebssysteme zu finden? +- Welches Spektrum decken sie ab? +- Welche Arten von Betriebssystemen gibt es? +- Welche funktionalen und nichtfunktionalen Eigenschaften spielen dabei eine Rolle? +