Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut...

44
Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik (12) Betriebssysteme - Übersicht

Transcript of Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut...

Page 1: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

Modul: B-BSBetriebssystemeWS 2012/13

Prof. Dr. Rüdiger BrauseAdaptive SystemarchitekturInstitut für InformatikFachbereich Informatik und Mathematik (12)

Betriebssysteme -

Übersicht

Page 2: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 2Betriebssysteme: Übersicht

Organisation Vorlesung

DozentProf. Dr. Rüdiger Brause, Raum 104aEmail: [email protected]

VorlesungDi 10.15-11.45 SR 11 Do 10.15-11.45 SR 11

Leistungsschein Bachelor: rechtzeitig anmelden!

Möchten mehr als 3 Teilnehmer die Modulprüfung (Schein) absolvieren, so findet eine Klausur (100% = 120 Pkt.) statt; andernfalls eine mündliche Prüfung.

Die Übungspunkte (normiert zu max.10% der Klausurpunkte) werden zu den Klausurpunkten addiert

Mindestens 40% der 100% Klausurpunkte müssen erreicht werden.

Page 3: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 3Betriebssysteme: Übersicht

Organisation Übungen

Tutor: Kevin Tschickart Do. 12.00-13.30 SR 11Email: [email protected]

Abgaben

Ausgabe Donnerstags, Abgabe eine Woche später

Abgabe Lösungen (Dokumentation+Code) per email

Abgabe Lösungen ausgedruckt an Tutor

Bei Recherchen sind Quellen zu nennen (URL, Screenshot,…).

Es dürfen Aufgaben in der Gruppe besprochen werden. Die Abgabe zur Übung muss aber für jede (Teil-)Aufgabe eine

erkennbare Eigenleistung (mit eigenen Worten aufgeschrieben bzw. selbstständig programmiert) enthalten

Das mehrfache Abgeben der gleichen Lösung bzw. des gleichen Quellcodes wird durch die Vergabe von 0 Punkten für alle betreffenden Abgaben gewertet!

Für die Anrechnung der Bonuspunkte zur Klausur: Zweimal an der Tafel vorrechnen.

Page 4: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 4Betriebssysteme: Übersicht

Einführung

Motivation Wozu diese Vorlesung?

„Der Windows-PC ist eine fremdbestimmte Maschine. Was sich auf dem Desktop und in allen nur denkbaren Ecken des Betriebssystems tummelt, hat sich größtenteils selbst installiert.

Die lästigen Parasiten zehren an Prozessorleistung und Speicher, und sie nehmen gegen unseren Willen Kontakt mit den Herstellern auf. Welche Daten sie sammeln und übertragen, weiß man nicht.

Die verschiedenen „Dienste“ sind so verzahnt, dass kein Laie hier seine eigene Ordnung schaffen und aufräumen könnte.

Obwohl wir unsere Hardware und unsere Software selbst bezahlen, haben wir die Kontrolle verloren.“

FAZ, 10.2.2004

Page 5: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 5Betriebssysteme: Übersicht

Einführung

Wozu diese Vorlesung ?

Verständnis für interne Rechnervorgänge Was geht da vor? Wie kann ich eingreifen? Welche Fehler können passieren? Womit muss ich in kleinen Systemen (eingebettete

Systeme) rechnen?

Verbesserung + Ergänzung eines Betriebssystems Eigene Treiber für Spezialhardware Datenbankanbindungen, neue Linux-Module

Entwurf eines eigenen Betriebssystems Design von neuen Mikrosystemen, etwa auf

Scheckkartenchips Design von Forschungssystemen, etwa mobile

Schwärme

Page 6: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 6Betriebssysteme: Übersicht

SCHNITTSTELLENVIRTUELLE MASCHINEN

SYSTEMAUFRUFE

SCHICHTENMODELL

Page 7: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 7Betriebssysteme: Übersicht

Einführung

Was ist ein Betriebssystem ?? „Die Software (Programmteile), die für den Betrieb eines

Rechners anwendungsunabhängig notwendig ist.“

? „Die Gesamtheit der Programmteile, die die Benutzung von Betriebsmitteln steuern und verwalten.“

? „Diejenigen Programme eines digitalen Rechnersystems, die zusammen mit den Eigenschaften der Rechenanlage die Basis der möglichen Betriebsarten des digitalen Rechnersystems bilden und insbesondere die Abwicklung von Programmen steuern und überwachen (DIN 44300).“

? „Zusammenfassende Bezeichnung für alle Programme, die die Ausführung der Benutzerprogramme, die Verteilung der Betriebsmittel auf die einzelnen Benutzerprogramme und die Aufrechterhaltung der Betriebsart steuern und überwachen (DUDEN).“

Page 8: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 8Betriebssysteme: Übersicht

Betriebssystemgliederung

Benutzerschnittstelletextuelle und graphische Interaktion mit dem Benutzer

Dienstprogramme, Werkzeugeoft benutzte Programme wie Editor, Linker, ...

ÜbersetzungsprogrammeInterpreter, Compiler, Translator, ..

SystemprogrammeSpeicher-, Prozessor-, Geräte-, Netzverwaltung

Page 9: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 9Betriebssysteme: Übersicht

UNIX Systemsoftware

Systemprogramme „Einheiten“, „Bausteine“.

ar build & maintain archivescat concatenate files standard outcc compile C programchmod change protection modecp copy fileecho print argumentgrep file search including a patternkill send a signal to a processln link a file lp printe a filels list files and directoriesmv move a filesh start a user shelltee copy standard in to standard out and to a filewc word count

Page 10: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 10Betriebssysteme: Übersicht

benutzt

benutzt

benutzt

Benutzer

Benutzerprogramm

Maschinenhardware

Betriebssystem

Benutzungsrelationen

Page 11: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 11Betriebssysteme: Übersicht

Betriebssystemschichten

User 1 User 2 User 3

Compiler Editor ... Spiele

Betriebssystemdienste

Hardware

HW

Schichtenmodell Zwiebelschalenmodell

Page 12: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 12Betriebssysteme: Übersicht

Typischer Betriebssystemaufbau

Systemaufruf

Maschinencode

BenutzeroberflächeUser Interface Management System

BetriebssystemkernOperating System Kernel

Hardware

Anwen-dung 1

Dienst-programm

Werk-zeug

¼

Benutzer 1 ¼ Benutzer N

Page 13: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 13Betriebssysteme: Übersicht

UNIX-Betriebssystemkern

¼

¼user modekernel mode

Benutzer-Programm 1

System-Programm 1

System-Programm 2

Benutzer-

Shell 1

Benutzer-

Shell 2

Überprüfbare Schnittstelle und FunktionsverteilungSpeicher-verwaltung

Serielle Ein/Ausgabe DateisystemProzess-

Dis-play

TTY Drucker MausPlatteFloppy

Netzmanage-

ment

Hardware

Multi-User

Multi-programming

Implementierungsunabhängige Schnittstellen:POSIX = Portable Operating System Interface based on UniX

Benutzungs-oberfläche

Page 14: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 14Betriebssysteme: Übersicht

MACH- Betriebssystemkern

Mach-Kern

Scheduler, Nachrichtenübermittlung, Basic I/O, Speicherobjekte

SpeicherManager

FileManager

TerminalI/O

Benutzer-programm

user modekernel mode

Hardware

Mikrokern Vorteile: minimaler Kern, alle Funktionen modularisiert austauschbar

Nachteile: Kommunikationsdauer zwischen Managern

Page 15: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 15

Android-Betriebssystem

Betriebssysteme: Übersicht

Page 16: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 16Betriebssysteme: Übersicht

Windows NT - Anforderungen

kompatibel zu vorhandenen Systemen Unix, DOS, ..

zuverlässig und robust

leicht übertragbar auf andere CPUs (Portierbarkeit)

leicht veränderbar und anpassungsfähig

leistungsstark

Geht das überhaupt ?

Page 17: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 17Betriebssysteme: Übersicht

Windows NT - Betriebssystemkern

user modekernel mode

SystemdiensteObject

ManagerProcessManager

LocalProc. Calls

MemoryManager

SecurityMonitor

I/OSystem

Kernel

Hardware Abstraction Layer HALHardware

Win/DOSClient

Win32Subsys-

tem

POSIXClient

POSIXSubsys-

tem

OS/2Client

OS/2Subsys-

temLogon

SecuritySubsys-

tem

Win NT 3.1, Win NT4.0, Windows 2000, Windows XP, Vista, Win7, Win8, Version 3.1 4.0 5.0 5.1 6.0 6.1 6.2 Codezeilen: 8 Mio. 40 Mio. ? ?

Idee: Zwischenschichten (Subsysteme) einführen

Single User

Page 18: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 18Betriebssysteme: Übersicht

Windows NT - Lösungen

Kompatibilitätpro emuliertes BS ein extra Subsystem (Server), von Kunden (Clients) durch Nachrichten (local procedure calls LPC) angefordert. Sie setzen auf Dienstleistungen der NT Executive (Syscalls) auf.

RobustheitTrennung der Programmablaufumgebungen(virt. Maschinen), kein direkter Hardwarezugrifffehlertolerantes Dateisystem, Netzdienste.

PortierbarkeitIn C geschriebene Module, auf Hardwaremodell HAL aufsetzend

Page 19: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 19Betriebssysteme: Übersicht

Frage

Was sind die wesentlichen Unterschiede zwischen den Betriebssystemkernen von Mach, Unix (Linux) und Windows NT?

Unix: Multi User-System, schwerer Kern Windows NT: Single User-System, schwerer Kern Mach: leichter Kern

Page 20: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 20Betriebssysteme: Übersicht

BS und Rechnerarchitekturen

Einprozessorsystem PCs, kleine ServerAuch Mehrkernbetrieb

Bis max 16 CPU erweiterbar.

Problem: Speicherzugriff (Systembus)

Massen-speicher

ProgrammeDaten

BS- Kern

Nutzer 1Programm

... Nutzer nProgramm

Hauptspeicher

Prozessor

Page 21: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 21Betriebssysteme: Übersicht

BS und Rechnerarchitekturen

Multiprozessorsystem größere Server

Verbindungsnetzwerk „Tanzsaal “

BS- Kern

Nutzer 1Programm

... Nutzer nProgramm

P 1 P2 ¼ Pn

Problem: „hot spots“ im BS

Page 22: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 22Betriebssysteme: Übersicht

BS und Rechnerarchitekturen

Mehrrechnersystem größere Server

Verbindungsnetzwerk „Vorzimmer“

BS- Kern

Nutzer 1Programm

P1 ¼ Pn

BS- Kern

Nutzer nProgramm

Page 23: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 23Betriebssysteme: Übersicht

BS und Rechnerarchitekturen

Rechnernetz multiple Rechner, PCs, Server

VerbindungsnetzwerkLAN, WAN

P1 ¼ Pn

BS- Kern

Nutzer 1Programm

BS- Kern

Nutzer nProgramm

Page 24: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 24Betriebssysteme: Übersicht

SCHNITTSTELLENVIRTUELLE MASCHINEN

SYSTEMAUFRUFE

SCHICHTENMODELL

Page 25: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 25Betriebssysteme: Übersicht

Systemaufrufe

Systemaufrufe nötig für Dateioperationen, Prozessmanagement, Speicheranforderungen, Netzwerkoperationen, ...

Systemaufrufe – wie? Problem der unbekannten Referenz

Adr 1 BS-Code 1Adr 1‘ BS-Code 1‘

~ ~

Adr 2 Programm 1Adr 3 Programm 2

Hauptspeicher

Absolute Adresse des BS wechselt je nach Version

Relative Adresse des Programms wechselt je nach Ausführung

Lösung: Aufruf mittels Traps (Falltüren)

Page 26: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 26Betriebssysteme: Übersicht

Aufruf des Betriebssystemkerns

Programm-instruktionen

Programm-instruktionen

Betriebssystem-kerndienste

return from interrupt

stack ® {PC, PS= user mode }

Interrupt

®{PC+1, PS=user mode} stack

BS-Pnt ® PC Kernel mode ® PS

Register laden

Page 27: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 27Betriebssysteme: Übersicht

Systemaufrufe: Traps und Interrupts

Synchrone, indirekte Methodenaufrufe (Traps)...Move A,R1Trap 7Move R1, A...

0017 PS für ISR 8

0016 Adresse der ISR 8

0015 PS für ISR 7

0014 Adresse der ISR 7

0013 PS für ISR 6

0012 Adresse der ISR 6

Asynchrones HW-Interrupt-Signal 6

ISR = Interrupt Service Routines = Treiber

PS = Processor Status Word (prio, mode,..)

Tabelle von Interruptvektoren

Laden von PS und PC

RAM-Adresse

Page 28: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 28Betriebssysteme: Übersicht

Der Betriebssystemkern

EingangAusgang

Was passiert im Kern?

Page 29: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 29Betriebssysteme: Übersicht

Fragen

Wozu gibt es System calls? Um ohne Kenntnis der Einsprungadresse des BS die Anwendung zu binden.

Wann braucht man sie nicht? Wenn man alles zu einer einzigen festen Anwendung (Eingebettetes System) binden kann.

Page 30: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 30Betriebssysteme: Übersicht

SCHNITTSTELLENVIRTUELLE MASCHINEN

SYSTEMAUFRUFE

SCHICHTENMODELL

Page 31: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 31Betriebssysteme: Übersicht

Schnittstelle : Beispiel

Rechteck zeichnen, Länge dx, Breite dyDrawRectangle(float dx,dy)

Methode: DrawRectangleDaten: float dx,dyProtokoll:

• zuerst Modul „Grafik“ initialisieren• dann Skalierung setzen• dann Bezugspunkt setzen• schließlich Rechteck zeichnen.

benutzt die Methode drawLine mit den Daten x0,y0,x1,y1

Page 32: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 32Betriebssysteme: Übersicht

Schnittstellen : Verallgemeinerung

Eine Schnittstelle besteht aus Daten sowie Funktionen bzw. Methoden dafür (Objekte) Protokolle für die Benutzung der Funktionen und

Daten, mit denen das Objekt Dienstleistungen erbringt (Exportschnittstelle)

Die Implementierung benötigt dazu Daten, Funktionen und Protokolle für die

Dienstleistungen, die sie zur Erfüllung benötigt (Importschnittstelle).

Page 33: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 33Betriebssysteme: Übersicht

Daten

code

Schnittstellen & Abstrakte Datentypen

Abstrakter Datentyp = Zugriff auf Daten nur über definierte Funktionen (Kapselung)

Schnittstelle des ADT = Zugriff + Reihenfolge des Zugriffs = Funktionen + Protokoll

ObjektMethode1(.)

Methode2(.)

Attribut AKapselung

information hiding

Page 34: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 34Betriebssysteme: Übersicht

Schnittstellen: Export & Import

Beachte: „Export“/ „Import“ ist relativ bzgl. einer Sicht !

Export Import

ExportImport

Modul 1

Modul 2

Page 35: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 35Betriebssysteme: Übersicht

Virtuelle und abstrakte Maschinen

Zeichne ein RechteckDrawRectangle(x0,y0,x1,y1)

(x0,y0)

(x1,y1)

DrawRectangle(x0,y0,x1,y1)

Graphic Processor Unit

(GPU)

Display(RAM)

DrawRectangle(x0,y0,x1,y1)

V1

DrawLine(x0,y0,x1,y0) DrawLine(x1,y0,x1,y1) DrawLine(x1,y1,x0,y1) DrawLine(x0,y1,x0,y0)

V2

SetPoint(x0,y0,black) SetPoint(x0+dx,y0,black)

V3

Display(RAM) V4

Maschine 1 Maschine 2

Abstrakte MaschineVirtuelle Maschine

Beispiel

Page 36: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 36Betriebssysteme: Übersicht

Abstrakte und Virtuelle Maschinen

Beispiel Waschmaschine

Benutzungsoberfläche

Controller

Maschine

Motor, Druckventile, Temperatursensoren, Heizungen, Pumpen

Abstrakte Maschine:

• nur Zugang geregelt

• Implementation ist verborgen

Schichtenmodell:

Schnittstellen,

virtuelle Maschine

Page 37: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 37Betriebssysteme: Übersicht

Schicht 2

Virtuelle Maschinen

Schicht 1

Zeit

Schicht 3

Schichtenabstraktion bei Zeitablauf

Page 38: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 38Betriebssysteme: Übersicht

Beispiel: virtuelle CPU

Software-Hardware-Migration bei virt. CPU

Programm in Java-CodeJava-CodeMaschinencode

CPU- Hardware

Programm in Java-CodeMicrocode-

und CPU-Hardware

Konfiguration 1 Konfiguration 2

VorteileProgramm muss bei HW-Wechsel nicht geändert werden

Unabh. HW-Entwicklung je nach Kundenwunsch

Page 39: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 39Betriebssysteme: Übersicht

Virtuelle, logische, physikalische Geräte

Beispiel: virtueller Festplattenspeicher (Zwiebelmodell)

logisches Gerät = HW-Treiber,

benutzt physikalisches Gerät

Kontrolle Daten

Virtuelles Gerät

Treiber für log. Geräte

log. Gerät 1 log. Gerät 2

phys.Gerät 1

Treiber 1

phys.Gerät 2

Treiber 2 virtuelles Gerät

= Verwaltungstreiber für multiple Geräte, storage managementbenutzt einzelne logischeGeräte

Page 40: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 40Betriebssysteme: Übersicht

Frage

Was ist der Unterschied zwischen abstrakten, virtuellen und logischen Maschinen? abstrakte Maschine: durch Schnittstelle

beschriebene Maschinenfunktionen virtuelle Maschine: Zwischenschicht

mit zwei Schnittstellen logische Maschine: wie virtuelle Maschine,

benutzt direkt physikalisches Gerät

Page 41: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 41Betriebssysteme: Übersicht

Beispiel: Abstrakter backup-Speicher

Disk-to-Disk Storage

tape backup

functions

Block

I/O

Backup-Programm

Disk driverDisk

Tape interface

Tape driver

Sinnvoll für• Kurze Backup-Zeiten • Kurze Recovery-Zeiten• Multiple Bandformate• Hoher Datendurchsatz

Page 42: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 42Betriebssysteme: Übersicht

Beispiel: Virtueller Massenspeicher

Storage Area Network SAN asym. Poolingnutzt lokalen Massenspeicher LAN

file servermetadata server

Block

I/OOrtsinfo

S A N

Lun 2

NASNetwork Attached Storage

Page 43: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 43Betriebssysteme: Übersicht

Beispiel: Virtuelle Funktionen im Auto

Probleme• Sehr viele Funktionen und Geräte• Zusammenspiel Kommunikation/Unterhaltung/Steuerung nicht genormt

Lösung: Autosar (AUTomotive Open System ARchitecture )

TelefonNavi-gationVideo

Spiel-konsole

Abstands-system

Diagnose

Virtuelle Funktionen (Softwarebus + Module) RTE

GSMMotor-

elektronik GPS

Hardware-Busse

Aktoren

Sensoren

Vorteil: genormte Entwicklungs- und Testumgebung

Page 44: Modul: B-BS Betriebssysteme WS 2012/13 Prof. Dr. Rüdiger Brause Adaptive Systemarchitektur Institut für Informatik Fachbereich Informatik und Mathematik.

© R.Brause, J.W.G-Universität Frankfurt a.M. Folie 44Betriebssysteme: Übersicht

Beispiel: Virtualisierung von Servern

Einziehen einer Virtualisierungsschicht – Wo?

OS-ContainerApp1 … AppN

App1 … AppN App1 … AppN BS-Kern

BS-Kern BS-Kern LaufzeitVirtual Machine Monitor VMM HyperVisor Typ2

Virtual Machine Monitor VMM HyperVisor Typ1

Virtual Machine Monitor HyperVisor Typ2

BS-Kern

Hardware Hardware Hardware

Paravirtualisierung Virtualisierung mit OS-container

HW-Virtualisierung