Kapitel 1 - Einleitung Betriebsysteme
|
Inhalt
|
- Hauptaufgaben einen Betriebssystems
- Unterschiede zwischen Betriebssystemen
- Bestandteile von Betriebssystemen
|
Einleitung - BS Definition
Ein Betriebsystem stellt Dienste und Infrastrukturen (Metasteuerungen) bereit. Daten oder
Virtuelle Maschinen sind kein Teil des Betriebssystems sondern des Dienstleistungssystems. Die Metasteuerungen sind entscheidend
beim Entwurf. (z.B. in Bezug auf Uni- oder Mehrbenutzersystem)
Grob gesagt ist ein Betriebssystem eine erweiterte Maschine (Top-Down-Sicht), um durch Abstraktionen eine für den Menschen (Programmierer)
überschaubare Form als Programmiergrundlage zu bieten.
Definieren Sie den Begriff Betriebsystem!
Das Betriebssystem ist die Gesamtheit der Programme eines Rechensystems, welche die Betriebssteuerung erledigen
und die Benutzeraufträgen eine zugängliche Umgebung bereitstellen. Betriebsmittel sind Komponenten sowohl der
Hardware als auch der Software (System und Anwendersoftware), wie z.B. Prozessor, Speicher, Ein-Ausgabe-Geräte, Dateien,
Programme etc.
Das Betriebssystem ermöglicht es z.B. dem Anwender, Programme auf unterschiedlicher Hardware laufen zu lassen.
D.h. das Betriebssystem bietet dem Anwender eine virtuelle Maschine, welche die reale Hardware "unsichtbar" für den
Programmierer macht.
- abstrahiert den Rechner auf eine für Menschen leichter durchschaubare virtuelle Maschine
- Steuert und koordiniert Prozessabläufe und verwaltet die Ressourcen
|
|
|
Merktabelle: Definition Betriebssysteme |
Wie sieht das Ebenen- oder Schichtenmodell eines Rechners aus?
- Gatter Ebene
- Mikroprogrammebene
- konventionelle Maschinenebene
- Betriebssystemebene API
- Assemblerebene
- Anwendungsebene
Worin Unterscheiden sich Betriebssysteme?
- universal oder dezidiert (Multi-Task / Single-Task)
- eine oder mehrere Sitzungen (Windows < XP, Linux)
- Kommunikation mit der Umwelt (Batch, interaktiv oder in Echtzeit)
Was sind die drei Welten des Betriebsystems?
- Betriebssystem selbst
- Komplexe Werkzeuge, wie aufgesetzte Dienste oder Virtuelle Maschinen
- Programmiersysteme zur Entwicklung von Erweiterungen
Welche Aufgaben hat ein Betriebsystem?
- Abstraktion der Hardware, d.h. Schließen der so genannten 'Semantischen Lücke' zwischen Mikroprogrammebene und der Anwendungsebene
- Betriebsmittelverwaltung
- Steuerung von Peripheriegeräten (I/O, Festplatten...)
- Steuerung des Betriebsablaufs durch Prozessverwaltung und -Kommunikation und Organisation des Mehrprogrammbetriebes
- Protokollierung, Schutz und Sicherheit
- Behandlung von Ausnahmesituationen, wie Page Faults, Division by Zero u.s.w.
- Bereitstellung einer Kommandosprache
- Unterstützung von Administrationsaufgaben (Datensicherung, Systemkonfigurierung, Benutzerrechte)
Was ist ein Modell?
Ein Modell eines Rechnersystems ist eine Abbildung eines realen Systems unter Abstrahierung bestimmter Kriterien,
in dem eine formale Beschreibung durch eine Theorie in Gesetzen formuliert werden kann.
Welche drei Punkte sind bei der Realisierung eines BS grundlegend?
Prozessor-Modes (Betriebszustände)
Supervisor Mode (Kernel Mode) |
Ist ein privilegierter Modus für Betriebssystemfunktionen im Kern des Systems, welches Sicherheit
des Systems erhöht, da diese geschützt von Andwenderprogrammen laufen.
|
User Mode (Anwendungsmodus) |
Die Betriebsart wird über ein "Mode"-Bit angezeigt. Privilegierte Funktionen (wie I/O Funktionen)
sind aber nur im Kernelmode ausführbar. Diese können über bestimmte Methoden gerufen werden.
|
Kernel
Im Kern laufen die Systemkritischen Funktionen, wie z.B. I/O-Aktionen ab. Der Kern muss korrekt, sicher und
geschützt vor Anwendungen sein.
Methoden des Aufrufs von Betriebssystemsdiensten
| System Calls |
Durch System Calls können BS-Funktionen gerufen werden. Die Schnittstelle zwischen
Usermode und Kernel sind sogenannte Traps (Einstiegspunkte). Geräte können Traps nicht nutzen, sondern
können die BS-Dienste durch spezielle Interruptsmechanismen erreichen.
|
| Nachrichtenversand |
Über eine Send/Receive-Schnittstelle können sich User-Mode und Kernel-Mode Nachrichten zuschicken.
|
Sinn und zweck ist eine Entkopplung von System und Anwendung! Windows NT bietet eine API mit mehr als 10.000
Systemaufrufen, Unix dagegen ca. 300.
|
|
|
|
|
| Kapitel 1 | Einleitung |
|
Ebenen- oder Schichtenmodell, Aufgaben...
|
| Kapitel 2 | Modelle |
|
Schichtenmodell, Betriebsmittel, Instanzen...
|
| Kapitel 3 | Aktivitäten |
|
Token, Multitasking, Prozesse,Timesharing...
|
| Kapitel 4 | Kritischer Abschnitt |
|
Gegenseitiger Ausschluss,Peterson,Semaphore...
|
| Kapitel 5 | Scheduling |
|
Prozessorzuteilung, Prioritätsscheduling, RR...
|
| Kapitel 6 | Speichermanagment |
|
Freispeicherverwaltung, Segmentierung, Paging...
|
| Kapitel 7 | Seitenersetzung |
|
NRU, FiFo, Second Chance, LRU, NFU, Aging...
|
| Kapitel 8 | Deadlocks |
|
Bedingungen, Erkennung und Auflösung...
|
| Kapitel 9 | Dateisysteme |
|
Freispeicherverwaltung, Festplattenscheduling...
|
|
|
|
|
|
|
Quellen:
|
Andrew S. Tanenbaum
Computerarchitektur
|
Andrew S. Tanenbaum
Moderne Betriebssysteme
|
Petterson
Computer Architectur & Design
|
Christian Märtin
Rechnerarchitekturen
|
Kalfa
Skript und Vorlesung
|
Word Wide Web
Verschiedenste Seiten
|
|
|
|
|
|
|