Definition: Betriebssystem
engl. Operating System (OS)
Software, die zusammen mit der Hardware die Basis zum Betrieb bildet
-> Schnittstelle zur Hardware
steuert und überwacht die Abarbeitung von Programmen
-> macht die Benutyung des Computers überhaupt möglich
Kernfunktionalitäten
• Verwaltung der Hardwarekomponenten
• Speicherverwaltung
(Hauptspeicher, Cache, Laufwerke etc.)
• Prozessverwaltung
(und Kommunikation)
• ggf. Benutzerverwaltung
Teile eines Betriebssystems
Verwaltungsprogramme
Prozesssystem (Dienste, Anwendungen, …)
Speicherzuteilung (RAM, …)
Belegung externer Speichermedien (Festplatten, …)
Bereitstellung von Geräten (Durcker,…)
Steuerprogramme
Eingabe von Zeichen über die Tastatur
Ausgabe von Zeichen auf dem Monitor
Speicherung von Daten auf der Festplate
Dienstprogramme
Konfigurieren der Hardware und des Betriebssystems
Anzeige und Bearbeitung von Dateien
Kopieren, sichern und wiederherstellen von Dateien
Bibliotheken und Treiber
stellen Anwendungsprogrammen Betriebssystemfunktionen zur Verfügung
binden Hardware in da Betriebssystem ein
veranlassen die Hardware zu den gewünschten Aktionen
Großrechner-Betriebssysteme
“Mainframes” im “Rechenzentrum”
Mehrbenutzerbetrieb
3 typische Einsatzarten:
Stapelverarbeitung “Batch Processing”
Transaktionsverarbeitung
Dialog-Betrieb iim Timesharing-Verfahren
Server-Betriebssysteme
stellen Dienste für andere rechner in einem Rechnernetz bereitstellen
viele gleichzeitige Anforderungen
typische Server-Diense:
Drucker-Service
Datei-Service (Datenspeicherung)
Web-Service (Information und einfache Verarbeitung)
Bsp.
Unix, GNU/ Linux
Windows Server-Familie
PC Betriebssystem
Einbenutzerbetrieb (ggf. mit Multitasking)
Interaktivität der Benutzerschnittstelle
Windows, Mac OS, GNU/ Linux
Embedded Systems
Rechner steuert Einzelgerät
(Fernseher, Mobiltelefon)
selbst mobiles Gerät
(Smartphone, Tablet)
häufig Echtzeitanforderungen und eingeschränkte Ressourcen
Android, Apple iOS usw.
Multiprozessor-Betriebssystem
Leichtungssteigerung durch Vervielfältigung des Prozessors
(heute meist durch Server- oder PC-Betriebssysteme mitabgedeckt)
Sonderfall: Massiv-parallele Rechner mit spezialisierter OS
SmartCard-Betriebssysteme
Rechner als Chip auf Kreditkarte, Krankenkarte, Reisepass
starke Ressourcen-Einschränkung
wenige spezielle Anforderungen an BS
meist sehr primitiv
proprietär vom Hersteller eines Gesamtsystems aus Karte und Software
Betriebsarten früher vs heute
Früher:
Stapelbetrieb
ein Auftrag nach dem anderen (meist interaktionslos)
Dialogbetrieb
Ein- und Ausgabe praktisch direkt an der Zentraleinheit
Einzelbenutzerbetrieb
Einzelprogrammbetrieb
Heute:
Mehrprogrammbetrieb
Interaktive Verarbeitung
Datenfernverarbeitung, z.B. Rechner- und Datennetze
Mehrprozesserbetrieb
Sonderformen:
Prozessbetrieb
Echtzeitbetrieb
Stapeverarbeitung
auch Batchverarbeitung
Bearbeitung von Aufgaben nacheinander (sequentiell)
früher: Vermeidung von Leerlaufzeiten, da Rechenzeit sehr teuer
heute: Automatisierung von Aufgaben, die ohne Benutzereingriff, meist außerhalb der üblichen Arbeitszeit, ausgeführt werden sollen
Bsp.:
Jobs zur Datensichterung
Datenbankkomprimierung und -konsolidierung
Datenübertragungen zwischen Systemen
Batch-Dateien
auch Skript-Dateien
eine Reihe von Befehlen, die die Betriebssystemfunktionen nutzen, werden in einer Datei festgehalten und nach Starten abgearbeitet
DOS/ Windows
Dateiendung .bat oder .cmd
Leistungsfähiges Skripting von PowerShell
Unix bzw. unixoiden OS
Erstellen von Batchdateien wird als Shell-Skripting bezeichnet
-> viel leistungsfähiger
MacOS
AppleScript, Swift oder unixähnliche Shell-Scripte
Auftrag muss nicht vollständig definiert sein
in Form von einzelnen Schritten im System abgearbeitet
ständiger Informationsaustausch zwischen System und Anwender
Anwender = Mensch -> Dialogverarbeitung
Einprogrammbetrieb/ Einzelprogrammbetrieb
Singletasking
Benutzeraufträge werden nacheinander bearbeitet
nur ein Anwenderprogramm im Arbeitsspeicher
(uneingeschränkter Zugriff auf Betriebsmittel)
nicht genutzte Rechenleistung!
da zeitaufwändige I/O-Operationen die CPU nicht auslaten
Durchsatz
-> Zeitspanne, die der Rechner für die Bearbeitung der gestellten Aufgabe braucht
auschließlich von der Leistung der Geräte und der Programmiertechnik der Anwendung abhängig
Multitasking
mehrere Aufgaben gleichzeitig zur Ausführung anzunehemen
tatsächliche Parallelität nur über mehrere CPUs (Ausführungseinheiten)
bei nur einer CPU -> kurzen Abständen immer abwechselnd aktivierrt = Eindruck (“quasi-parallel”)
Vorteil: Nutzung der CPU auch bei Leerlauf
Umschalten -> zusätzlichen Verwaltungsaufwand,
dennoch gewinnbringend, das Prozesse auf Ereignisse warten müssen
Echtzeitsysteme auf geforderte Reaktionszeiten hin optimiert
SmartCard - Betriebssysteme
als Chip auf Kreditkarte, Krankenkarte, Reisepass
wenige spezielle Anfrderungen an BS
meist sehr primitive BS
Zuletzt geändertvor einem Jahr