Einführung - TU Chemnitz: Fakultät für Informatik

Werbung
Betriebssysteme – Einführung
1.1 Motivation
Betriebssysteme
Sommersemester 2016
1.1 Motivation
Woher?
I
Betriebssysteme (BS; engl: operation systems, OS) entwickelten sich aus einer
Ansammlung von Unterprogrammen
I BS als Programmlader (program loader)
á Mehr im Abschnitt 2 Historischer Abriß“
”
Betriebssysteme
I
1. Kapitel
Heute haben Betriebssystem eine Reihe von Aufgabenbereichen:
I
Einführung
I
I
I
Prof. Matthias Werner
I
Professur Betriebssysteme
I
I
Prozessmanagement
Speichermanagement
Dateimanagement
E/A-Management
Schutzfunktionen
Kommunikation
Kommandoausführung
Merke:
Nicht alle Betriebssysteme realisieren jede dieser Funktionen.
SoSe 2016 · M. Werner
Betriebssysteme – Einführung
1.1 Motivation
2 / 18
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einführung
1.1 Motivation
Warum?
Zwei Sichten
Zwei mögliche Sichten auf das Betriebssystem:
1. Virtuelle Maschine (Top-Down Sicht):
I
I
I
Moderne Rechner bestehen aus vielen komplexen Komponenten:
I
á Prozessor, Arbeitsspeicher, Platten, Druckern, Tastatur, Maus, Bildschirm,
Netzwerkschnittstellen, etc.
I
Um ein Anwendungsprogramm direkt für einen Rechner zu schreiben, muss der
Programmierer alle Details der Komponenten und ihrer Zusammenarbeit verstehen á nur
in Spezialfällen realistisch
I
Deshalb wird Betriebssystem – als zusätzliche Software-Schicht – eingeführt
SoSe 2016 · M. Werner
3 / 18
osg.informatik.tu-chemnitz.de
Bietet dem Programmierer eine abstrakte, einfache Sicht auf die Hardware an
Reale, low-level Eigenschaften werden versteckt
Beispiel Festplatte/Dateisystem:
I
I
Reale Maschine (Hardware): Folge von Datenblöcken fester Größe
Virtuelle Maschine (BS): Benannte Dateien variabler Größe
SoSe 2016 · M. Werner
4 / 18
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einführung
1.1 Motivation
Betriebssysteme – Einführung
1.1 Motivation
Zwei Sichten (Forts.)
Was?
Was also ist ein Betriebssystem?
Zwei mögliche Sichten auf das Betriebssystem:
2. Ressourcenmanager (Bottom-Up Sicht):
I
I
DIN 4430
Verwaltet Prozessoren, Speicher, Platten, Terminals, ...
Koordiniert den Zugriff von Anwendungen auf Ressourcen
I
I
Zeitliche Ressourcenverwaltung: Anwendungen greifen nacheinander auf Ressourcen zu
(z. B. Drucker)
Räumliche Ressourcenverwaltung: Anwendungen greifen auf unterschiedliche Bereiche
einer Ressource zu (z. B. Speicher)
Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften
der Rechenanlage die Grundlage der möglichen Betriebsarten des digitalen
Rechensystems bilden und insbesondere die Ausführung von Programmen steuern und
überwachen.
Stallings [Sta04]
An operating system is a program that controls the execution of application programs
and acts as an interface between applications and the computer hardware.
Wikipedia
Ein Betriebssystem ist die Software, die die Verwendung (den Betrieb) eines Computers
ermöglicht.
SoSe 2016 · M. Werner
5 / 18
SoSe 2016 · M. Werner
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einführung
1.1 Motivation
6 / 18
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einführung
1.2 Historischer Abriß
1.2 Historischer Abriß
Erkenntnisse
Die 50er Jahre des letzten Jahrhunderts (Anfänge)
I
Es ist offensichtlich schwer, eine präzise und diskriminierende Definition zu geben
I
Ein Programm wird von einem Prozessor abgearbeitet
I
Die Betriebssystemfunktion beschränkt sich auf
á Stapel-Verarbeitung (Batch-Betrieb)
I
Pragmatische Definition
I
Unterstützung bei der Ein-/Ausgabe
Umwandlung von Zahl- und Zeichendarstellungen
Zum Betriebssystem gehört alles, was die Ausführung von Anwendungen in
generischer Form unterstützt.
I
Merke: Bei einem solchen weiten Begriff werden auch z.B.:
I
I
Middleware
Firmware
in das Betriebssystem einbezogen.
SoSe 2016 · M. Werner
7 / 18
osg.informatik.tu-chemnitz.de
SoSe 2016 · M. Werner
8 / 18
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einführung
1.2 Historischer Abriß
Betriebssysteme – Einführung
1.2 Historischer Abriß
Die Sechziger
Die Siebziger
I
Missverhältnis von CPU- und E/A-Rate wird eklatant
I
I
BS unterstützen die verzahnte Ausführung
unabhängiger Programme á Multiprogramming
Beginnende Software-Krise: BS werden groß, komplex
und fehlerbehaftet
I
Unix entsteht nach dem Prinzip simple is beautiful“ auf
”
einfacher Hardware (PDP-11)
I
Aufkommende Forderungen nach strukturiertem
Systementwurf, Wartbarkeit, Zuverlässigkeit, Schutz und
Sicherheit
I
Einsatz höherer Programmiersprachen für
BS-Implementierung
I
Prozess wird zur Schutzumgebung (Kontext, domain) mit
eigenem, abgeschottetem Adressraum und Rechten
(capabilities)
I
Forderung nach Unterstützung von modularer
Programmierung, abstrakten Datentypen und
Objektorientierung
I
Anwendung dieser Prinzipien auf das Betriebssystem
selbst
I
Echte Parallelität durch Aufkommen von
E/A-Prozessoren
I
Der Begriff des Prozesses als virtueller Prozessor
wird geboren
I
Auch der Speicher wird virtualisiert“ á virtueller
”
Speicher
I
Prozess wird auch internes Strukturierungsmittel
für BS
I
Interaktiver Betrieb durch mehrere Benutzer
á Timesharing
I
Prototypen bzw. Vorläufer heutiger Großrechner-BS
entstehen (OS/360, CTSS/Multics, CP67,
VMOS/BS2000)
SoSe 2016 · M. Werner
9 / 18
osg.informatik.tu-chemnitz.de
SoSe 2016 · M. Werner
Betriebssysteme – Einführung
1.2 Historischer Abriß
10 / 18
Betriebssysteme – Einführung
1.2 Historischer Abriß
Die Achtziger
Die Achtziger (Forts.)
I
Aufkommen von Arbeitsplatzrechnern und PCs
I
Leistungsfähiges Kommunikationsmedium: Ethernet, Vernetzte Systeme
I
Prozesse sind mittlerweile komplexe Gebilde: Ein Umschalten kostet“ mehrere Tausend
”
Maschinenbefehle á Man trennt Adressraum und Prozess wieder und erlaubt mehrere
Prozesse im selben Adressraum (lightweight process, thread)
I
Unix hat im Arbeitsplatzrechner ein
ideales Vehikel zur Verbreitung und wird
zum Quasi-Standard
I
Parallelitätskonzepte werden in Programmiersprachen aufgenommen
I
I
Verteiltes (paralleles) Rechnen auf Netzen von Arbeitsplatzrechnern
Notwendigkeit der Integration schafft
Standardisierungsdruck (OSI, TCP/IP, NFS,
POSIX, OSF, X/OPEN, OMG, ODP)
I
BS überwinden Rechnergrenzen: Von der
Rechnerkommunikation zum
Verbundsystem (Verteiltes System).
I
GUI (XEROS á Apple á Microsoft)
SoSe 2016 · M. Werner
osg.informatik.tu-chemnitz.de
11 / 18
osg.informatik.tu-chemnitz.de
SoSe 2016 · M. Werner
12 / 18
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einführung
1.2 Historischer Abriß
Betriebssysteme – Einführung
1.2 Historischer Abriß
Die Neunziger
I
Die Neunziger (Forts.)
Infolge hoher Stückzahlen werden einfache Mikroprozessoren relativ billig
á Zusammenschaltung tausender Mikroprozessoren bringt (rechnerisch) höhere Leistung bei
geringerem Preis als Supercomputer (z.B. Cray)
I
Neue BS-Funktionen zur Unterstützung der Parallelverarbeitung und der Verteilten
Verarbeitung
I Verteiltes Arbeiten wird zum Standardfall á WWW
I Verteilte Systeme auch in heterogenen Umgebungen (DCE, Corba)
I
Multimedia-Anwendungen erfordern
Unterstützung von Audio- und
Videodaten (Echtzeit-Fähigkeiten)
I
Software in eingebetteten Systemen
benötigt BS-Unterstützung (z.B.
Consumer Electronics)
I
Emulation anderer BS-Schnittstellen
(d.h. mehrere BS-Welten auf
demselben Rechner)
TravelPilot IDS (1989)
SoSe 2016 · M. Werner
13 / 18
osg.informatik.tu-chemnitz.de
SoSe 2016 · M. Werner
Betriebssysteme – Einführung
1.2 Historischer Abriß
I
I
Dieses Jahrhundert bisher (Forts.)
Immer stärkere Vernetzung bei gleichzeitiger höhere Mobilität hat eine Reihe von
Auswirkungen
Größere externe Sicherheitsbedrohungen á Sicherheitsaspekte werden verstärkt
im Betriebssystem behandelt (Kernelfirewall, IDS, Sandbox, ...)
Virtualisierung
I
VMs (Java, .NET, HTML5-Webbrowser) werden quasi eigene Betriebssysteme
I
Hypervisor-Technologie (aus den 60er/70er Jahren) wird zur Produktivtechnologie á
Betriebssysteme sollen als Host/Guest arbeiten
SoSe 2016 · M. Werner
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einführung
1.2 Historischer Abriß
Dieses Jahrhundert bisher
I
14 / 18
15 / 18
osg.informatik.tu-chemnitz.de
I
Mobile Geräte
á Energie-Management als
BS-Funktion
á Dienste verlagern sich ins Netz,
was wiederum durch das
(Klienten- und Server-)
Betriebssystem unterstützt
wird (Thin Client, Grid- und
Cloudcomputing)
SoSe 2016 · M. Werner
16 / 18
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einführung
1.2 Historischer Abriß
Betriebssysteme – Einführung
Dieses Jahrhundert bisher (Forts.)
Referenzen
I
Neue Hardware...
I
...für Ein- und Ausgabe verlangt neue
Bedienkonzepte
I
I
I
[Sta04]
Touch
Sprache
3D
Chapter 2
I
...zur Berechnung verlangt neue
Ausführungsmodelle
I
I
I
SoSe 2016 · M. Werner
W. Stallings. Operating Systems: Internals and Design Principles. Prentice Hall, 2004,
17 / 18
[Han00]
Per Brinch Hansen, Hrsg. Classic operating systems: from batch processing to distributed
systems. Springer, 2000
[Bow]
Jonathan Bowen. The Virtual Museum of Computing. URL:
http://museums.wikia.com/wiki/VMoC
GPU
Cell-Prozessor
Cyber-physical Systems
osg.informatik.tu-chemnitz.de
SoSe 2016 · M. Werner
18 / 18
osg.informatik.tu-chemnitz.de
Herunterladen