Einführung - Professur Betriebssysteme

Betriebssysteme – Einf¨uhrung
1.1 Motivation
Betriebssysteme
Sommersemester 2015
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¨uhrung
I
I
I
Prof. Matthias Werner
I
Professur Betriebssysteme
I
I
Prozessmanagement
Speichermanagement
Dateimanagement
E/A-Management
Schutzfunktionen
Kommunikation
Kommandoausf¨uhrung
Merke:
Nicht alle Betriebssysteme realisieren jede dieser Funktionen.
SoSe 2015 · M. Werner
Betriebssysteme – Einf¨uhrung
1.1 Motivation
2 / 18
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einf¨uhrung
1.1 Motivation
Warum?
Zwei Sichten
Zwei m¨ogliche 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¨ur einen Rechner zu schreiben, muss der
Programmierer alle Details der Komponenten und ihrer Zusammenarbeit verstehen á nur
in Spezialf¨allen realistisch
I
Deshalb wird Betriebssystem – als zus¨atzliche Software-Schicht – eingef¨uhrt
SoSe 2015 · 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¨ocken fester Gr¨oße
Virtuelle Maschine (BS): Benannte Dateien variabler Gr¨oße
SoSe 2015 · M. Werner
4 / 18
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einf¨uhrung
1.1 Motivation
Betriebssysteme – Einf¨uhrung
1.1 Motivation
Zwei Sichten (Forts.)
Was?
Was also ist ein Betriebssystem?
Zwei m¨ogliche 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¨aumliche 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¨oglichen Betriebsarten des digitalen
Rechensystems bilden und insbesondere die Ausf¨uhrung von Programmen steuern und
u¨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¨oglicht.
SoSe 2015 · M. Werner
5 / 18
SoSe 2015 · M. Werner
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einf¨uhrung
1.1 Motivation
6 / 18
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einf¨uhrung
1.2 Historischer Abriß
Erkenntnisse
Die 50er Jahre des letzten Jahrhunderts (Anf¨ange)
I
Ein Programm wird von einem Prozessor abgearbeitet
I
Die Betriebssystemfunktion beschr¨ankt sich auf
á Stapel-Verarbeitung (Batch-Betrieb)
I
Es ist offensichtlich schwer, eine pr¨azise und diskriminierende Definition zu geben
I
I
Pragmatische Definition
Unterst¨utzung bei der Ein-/Ausgabe
Umwandlung von Zahl- und Zeichendarstellungen
Zum Betriebssystem geh¨ort alles, was die Ausf¨uhrung von Anwendungen in
generischer Form unterst¨utzt.
I
Merke: Bei einem solchen weiten Begriff werden auch z.B.:
I
I
Middleware
Firmware
in das Betriebssystem einbezogen.
SoSe 2015 · M. Werner
7 / 18
osg.informatik.tu-chemnitz.de
SoSe 2015 · M. Werner
8 / 18
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einf¨uhrung
1.2 Historischer Abriß
Betriebssysteme – Einf¨uhrung
1.2 Historischer Abriß
Die Sechziger
Die Siebziger
I
Missverh¨altnis von CPU- und E/A-Rate wird eklatant
I
I
BS unterst¨utzen die verzahnte Ausf¨uhrung
unabh¨angiger 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¨assigkeit, Schutz und
Sicherheit
I
Einsatz h¨oherer Programmiersprachen f¨ur
BS-Implementierung
I
Prozess wird zur Schutzumgebung (Kontext, domain) mit
eigenem, abgeschottetem Adressraum und Rechten
(capabilities)
I
Forderung nach Unterst¨utzung von modularer
Programmierung, abstrakten Datentypen und
Objektorientierung
I
Anwendung dieser Prinzipien auf das Betriebssystem
selbst
I
Echte Parallelit¨at 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¨ur BS
I
Interaktiver Betrieb durch mehrere Benutzer
á Timesharing
I
Prototypen bzw. Vorl¨aufer heutiger Großrechner-BS
entstehen (OS/360, CTSS/Multics, CP67,
VMOS/BS2000)
SoSe 2015 · M. Werner
9 / 18
osg.informatik.tu-chemnitz.de
SoSe 2015 · M. Werner
Betriebssysteme – Einf¨uhrung
1.2 Historischer Abriß
10 / 18
Betriebssysteme – Einf¨uhrung
1.2 Historischer Abriß
Die Achtziger
Die Achtziger (Forts.)
I
Aufkommen von Arbeitsplatzrechnern und PCs
I
Leistungsf¨ahiges 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¨atskonzepte 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 u¨berwinden Rechnergrenzen: Von der
Rechnerkommunikation zum
Verbundsystem (Verteiltes System).
I
GUI (XEROS á Apple á Microsoft)
SoSe 2015 · M. Werner
osg.informatik.tu-chemnitz.de
11 / 18
osg.informatik.tu-chemnitz.de
SoSe 2015 · M. Werner
12 / 18
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einf¨uhrung
1.2 Historischer Abriß
Betriebssysteme – Einf¨uhrung
1.2 Historischer Abriß
Die Neunziger
I
Die Neunziger (Forts.)
Infolge hoher St¨uckzahlen werden einfache Mikroprozessoren relativ billig
á Zusammenschaltung tausender Mikroprozessoren bringt (rechnerisch) h¨ohere Leistung bei
geringerem Preis als Supercomputer (z.B. Cray)
I
Neue BS-Funktionen zur Unterst¨utzung 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¨utzung von Audio- und
Videodaten (Echtzeit-F¨ahigkeiten)
I
Software in eingebetteten Systemen
ben¨otigt BS-Unterst¨utzung (z.B.
Consumer Electronics)
I
Emulation anderer BS-Schnittstellen
(d.h. mehrere BS-Welten auf
demselben Rechner)
TravelPilot IDS (1989)
SoSe 2015 · M. Werner
13 / 18
osg.informatik.tu-chemnitz.de
SoSe 2015 · M. Werner
Betriebssysteme – Einf¨uhrung
1.2 Historischer Abriß
I
I
Dieses Jahrhundert bisher (Forts.)
Immer st¨arkere Vernetzung bei gleichzeitiger h¨ohere Mobilit¨at hat eine Reihe von
Auswirkungen
Gr¨oßere externe Sicherheitsbedrohungen á Sicherheitsaspekte werden verst¨arkt
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 2015 · M. Werner
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einf¨uhrung
1.2 Historischer Abriß
Dieses Jahrhundert bisher
I
14 / 18
15 / 18
osg.informatik.tu-chemnitz.de
I
Mobile Ger¨ate
á Energie-Management als
BS-Funktion
á Dienste verlagern sich ins Netz,
was wiederum durch das
(Klienten- und Server-)
Betriebssystem unterst¨utzt
wird (Thin Client, Grid- und
Cloudcomputing)
SoSe 2015 · M. Werner
16 / 18
osg.informatik.tu-chemnitz.de
Betriebssysteme – Einf¨uhrung
1.2 Historischer Abriß
Betriebssysteme – Einf¨uhrung
Dieses Jahrhundert bisher (Forts.)
I
Referenzen
Neue Hardware...
I
...f¨ur Ein- und Ausgabe verlangt neue
Bedienkonzepte
I
I
I
[Sta04]
Chapter 2
Touch
Sprache
3D
I
...zur Berechnung verlangt neue
Ausf¨uhrungsmodelle
I
I
I
SoSe 2015 · 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 2015 · M. Werner
18 / 18
osg.informatik.tu-chemnitz.de