Schichtenmodell eines Rechners Flashcards
Schichtenmodell eines Rechners

Schnittstellen in der Informatik
= Konvention, die eine Verbindung verschiedener Teile festlegt (z.B. Steckdose)
- allgemeine Schnittstelle
- Datenschnittstelle: zur allgemeinen Datenübertragung
- Maschinenschnittstelle: zwischen physischen Systemen
- Hardwareschnittstelle: zwischen physischen Systemen der Computertechnik
- Netzwerkschnittstelle: zwischen Netzwerkkomponenten
- Softwareschnittstelle: zwischen Programmen
- Benutzerschnittstelle: zwischen Mensch und Gerät
Treiber
= Übersetzungsprogramme zur Ansteuerung einer Software- oder Hardwarekomponente
- allgemeine Aufgabenbeschreibung wird von Treiber in konkrete Einzelbefehle zerlegt

Zusammenarbeit zwischen Hardware und Betriebssystem
- Kommunikation über Treiber und BIOS oder direkt

BIOS
Definition
- “Spezialtreiber”
- Basic Input Output System
- βíος → haucht Leben ein
- Bestandteil der Hardware
- beinhaltet elementare Hilfsprogramme = Interrupts
- steuert Tastatur, Maus, Festplatte etc.
BIOS
Interrupt - Definition
- zur Programmausführung asynchrones Ereignis
- unterbricht sequentielle Programmausführung
- übergibt Kontrolle an ein spezielle Programm zur Bahndlung des Ereignisses
(= kurzfristige Unterbrechung eines Programms durch eine von der CPU/BIOS abzuarbeitenden Befehlssequenz)
z.B. Reset, PowerFail, Echtzeit-Uhr, Steuerung der Ein- und Ausgabe
Alternative: Polling = aufwändige, ständige Statusabfrage → Interrupt = Polling auf Hardwareebene: nach jeder Instruktion automatisch überprüfen, ob Unterbrechungsaufforderung vorliegt

BIOS
Schritte bei der Behandlung eines Interrupts
- Erkennen der Interrupt-Aufforderung
- Beenden der aktuellen Instruktion
- Verhindern, dass weiter Requests angenommen werden
- Retten des Prozessorzustandes (mind. die Register, die durch Interruptbehandlung überschrieben werden)
- Bestimmen der Routine zur Interruptbehandlung
- Transfer der Kontrolle an die Routine zur Interruptbehandlung
- Feststellen, wer den Interrupt ausgelöst hat
- Ausführen der entspechenden Routine zur Interruptbehandlung
- Ausführen des Rücksprungs aus der Interruptroutine
- Wiederherstellung des Prozessorzustandes (damit Programm nicht abstürzt)
- Transfer der Kontrolle an das unterbrochene Programm

BIOS
Aufgaben beim Rechnerstart
- Prüfung der angeschlossenen Geräte
- Funktionstest der gefundenen Geräte
- Laden des Betriebssystems - mehrstufig
- Loader (Ladeprogramm) laden und starten
- Loader startet eigentliches Betriebssystem → booten
→ Betriebssystem ist an einem Stück auf Festplatte gespeichert
BIOS
Nachfolger UEFI
UEFI = BIOS, aber modernere und intelligentere Technik
Unified Extensible Firmware Interface
BIOS
Vorteile von UEFI
- ermöglicht Implementierung von Sicherheitsrichtlinien
- graphische Benutzeroberfläche mit hoher Auflösung
- enthält bereits alle wichtigen Treiber, die BS für Systemstart benötigt → schnellerer Start
- enthält Standardtreiber für die Netzwerkkarte → Firmwareupdates direkt möglich
- “Hot-Plugging” von USB-Geräten → nachträgliches Anstecken
- Zugriff auf USB-Datenträger möglich
Betriebssystem
Definition
Menge von Programmen, die den Betrieb eines Rechners ermöglichen und die Ausführung von Benutzerprogrammen und den Gebrauchd er vorhandenen Betriebsmittel (Speicher, Geräte, …) steuern
Betriebssystem
Aufgaben
- TOP-DOWN-SICHT: Erweiterung der Maschine
- BS verbirgt kleine, programmspezifische Teilfunktionen
- macht Benutzung der Hardware leichter
- verallgemeinert als “Universalmaschine”/”erweiterte Maschine” Befehle für die Hardware
- BOTTOM-UP-SICHT: Betriebsmittelverwalter
- verwaltet zeitliche und räumliche Zuordnung von Ressourcen
- schaltet im Mehrprogrammbetrieb zwischen den Programmen hin und her
- teilt verschiedenen Programmen verfügbaren Speicher zu
Betriebssystem
Eigenschaften
- hardwareunabhängige Programmierschnittstelle
- geräteunabhängige Ein- und Ausgabefunktionen
- Ressourcenverwaltung
- Speicherverwaltung
- Massenspeicherverwaltung (Dateisystem)
- Parallelbetrieb (Multitasking)
- Interprozesskommunikation → lokal und verteilt
- Sicherheitsmechanismen → Benutzer-, Daten- und Speicherebene
Betriebssystem
Klassifizierungsmöglichkeiten
- Anwendungsarten (zeitlicher Aspekt)
- Rechnerarchitekturen
- Aufbau
Betriebssystem
- Klassifizierung nach Anwendungsgebiet
- Stapelverarbeitung
- Time-Sharing-Betrieb
- “Echtzeit”-Betrieb
Betriebssystem
Stapelverarbeitung/Batch Processing
- Aufgabe/Programm muss vollständig vorliegen
- Programme werden einzeln nacheinander gestartet und ausgeführt
- keine Mensch-Maschine-Kommunikation vorgesehen
- FIFO first in, first out – HIFO highest in, first out (Prioritäten)
- vermeiden Interrupts → zeiteffizienter
Einsatz: Hochleistungsrechner (CPU optimal auslasten), Druckerwarteschlangen

Betriebssystem
Time-Sharing-Betrieb
- Zeitscheibenverfahren → time slicing
- Rechenleistung wird in Form von Zeitscheiben auf die einzelnen Benutzer aufgeteilt
- jeder Benutzer hat Rechner scheinbar für sich allein zur Verfügung
- nicht vollständig bearbeitete Programme werden im nächsten Zyklus weiterbearbeitet
- Programme und Daten bleiben im Peripheriespeicher in Warteposition
- Kontrolle über Prozessor und notwendige Bereiche des Hauptspeichers hat nur das aktive Programm
- am Ende des Zeitsegments werden Programm, Daten und Zwischenergebniss ausgelagert und neuer Auftrag aktiviert
Einsatz: meiste heutige Rechner

Betriebssystem
“Echtzeit”-Betrieb
- Aufteilung der Rechenleistung auf mehrere Prozesse/Benutzer
- Nutzung des Time-Sharing-Betriebs, aber garantierte obere Zeitschranke
- Priorisierung der einzelnen Prozesse: wichtige in bestimmten Zeitschranken
- je nach erfüllten Zeitschranken Unterscheidung in “Echtzeit”-BS und “aktuelle” BS
Einsatz: reaktive Systeme → Reaktionen auf Signale aus Umwelt können schnell erfolgen (z.B. embedded systems wie Bremsen)

Betriebssystem
Klassifizierung nach Rechnerarchitekturen
Betriebssysteme füre
- Einprozessorsysteme
- Multiprozessorsysteme
- Verteilte Systeme (nicht alles in einem Kasten)
Betriebssysteme
Privilegiensysteme
Grundidee: bestimmte Operationen und Zugriffe auf Daten verhindern/verwalten → unterschiedliche Betriebsarten mit genau definierten Rechten und Pflichten
→ Benutzermodus und Kernmodus

Betriebssystem
Klassifizierung nach Aufbau
- Monolithische Systeme
- Geschichtete Systeme
- Mikrokernsysteme

Betriebssystem
Monolithische Systeme
- einzelne Teile nicht änderbar oder austauschbar
- keine klare Struktur
- evolutionär gewachsen
- Abgrenzung von Teilsystemen nicht vorgesehen

Betriebssystem
Geschichtete Systeme
- Teilsysteme des BS sind hierarchisch auf mehrere Schichten verteilt
- Kommunikation nur zwischen zwei benachbarten Schichten möglich
- bei jeder Schicht kann Sicherheit eingebaut werden
- Nachteil:
- Hardwarezugriff über viele Elemente = langsam
- es muss alle Kombinationen geben, um Zugriff auf die Hardware zu haben

Betriebssystem
Mikrokernsysteme
- wichtigste Funktionen werden in einem Kern zusammengefasst → Kernmodus
- Kern enthält 4 Basisdienste:
- Nachrichtenübermittlung (message passing)
- Speicherverwaltung (virtual memory)
- Prozessorverwaltung (scheduling)
- Gerätetreiber (device drivers)
- alle weiteren Servicedienste im Benutzermodus → Sicherheit
- Benutzerprozess kommuniziert mit Systemdienst über Meldungen → Client/Server-Modell
- Benutzerprozesse können nicht direkt miteinander kommunizieren
- Einsatz bei verteilten Betriebssystemen
- kommerzielle Systeme verlagern weitere Dienste in den Kernmodus (wegen Performance), z.B. grafischen Desktop (Display-Server)
