Betriebssysteme. VO Betriebssysteme

Ähnliche Dokumente
Vorlesung: Betriebssysteme

Kapitel I Betriebssysteme: Aufgaben und Überblick Betriebssysteme: VO Betriebssysteme 2

Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Wolfram Burgard

Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

Betriebssysteme Kap A: Grundlagen

B.4. B.4 Betriebssysteme Prof. Dr. Rainer Manthey Informatik II 1

Betriebssysteme Ein Überblick

Organisation der Vorlesung, Einführung in Betriebssysteme. Betriebssysteme. Christoph Lindemann WS 2004/05

Teil 3: Konzepte von Betriebssystemen

Überblick und Aufgaben

Betriebssysteme R. Thomas (Stand : SS 2010)

Betriebssysteme Vorstellung

Betriebssysteme VO Betriebssysteme KU

Aufbau eines modernen Betriebssystems (Windows NT 5.0)

Betriebssysteme (BS)

Betriebssysteme. Tutorium 2. Philipp Kirchhofer

Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software

Computer & GNU/Linux Einführung Teil 1

Einführung. Anwendung. logischer Adreßraum. Kontrollfluß (Thread) = CPU führt Instruktionen aus. Was charakterisiert einen Kontrollfluß?

Betriebssysteme Betriebssysteme und. Netzwerke. Netzwerke Theorie und Praxis

Überlegungen beim Entwurf eines Betriebssystems

Betriebssysteme. FU Berlin WS 2004/05 Klaus-Peter Löhr. bs-1.1 1

Betriebssystem? Übersicht. Ziele. Grundlagen. Das ist nur die Oberfläche... Wissen, was man unter einem Betriebssystem versteht

Einführung Betriebssysteme

Abstrakte Schnittstelle

Grundlagen Rechnerarchitektur und Betriebssysteme

Betriebssysteme 1, SS 2016, Hans-Georg Eßer

Inhaltsverzeichnis. 1.1 Der Begriff des Betriebssystems 1.2 Zur Geschichte der Betriebssysteme 1.3 Aufbau eines Rechners

Rechnernutzung in der Physik. Betriebssysteme

Parallele und verteilte Anwendungen in Java

I Einführung in Betriebssysteme

Lösung von Übungsblatt 11. (Virtualisierung und Emulation)

EINFÜHRUNG IN LINUX DR. MATTHIAS M. HÖLZL

Echtzeit-Multitasking

Systemprogramme bezeichnen alle Programme, die bestimmte Aufgaben unterstützen, die unabhängig von einer konkreten Anwendung sind

D Einführung Betriebssysteme

Echtzeit-Multitasking

Betriebssysteme. FU Berlin SS 2003 Klaus-Peter Löhr

Willkommen zur. VO Betriebssysteme. Peter Puschner. Institut für Technische Informatik. Peter Puschner 1

Universität Karlsruhe (TH)

I/O: Von der Platte zur Anwendung. Von Igor Engel

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

Dämon-Prozesse ( deamon )

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Betriebssysteme I. Hochschule München Fakultät für Informatik und Mathematik Sommersemester Hans-Georg Eßer

G Einführung in Betriebssysteme

Willkommen zur. VO Betriebssysteme. Peter Puschner. Peter Puschner 1

Konzepte von Betriebssystem- Komponenten Ausnahme- / Unterbrechungsbehandlung

Operating System Kernels

Was machen wir heute? Betriebssysteme Tutorium 2. Organisatorisches. Frage 2.1.a. Theorieblätter Abgabe. Antwort. Probleme mit OS/161?

Technische Informatik 1

VWA Rhein-Neckar Dipl.-Ing. Thomas Kloepfer. Betriebsysteme (Windows NT) Vorlesung 2 Die Architektur von Windows NT

DOSEMU. Vortrag im Hauptseminar Konzepte und Techniken virtueller Maschinen und Emulatoren. Matthias Felix FAU. 13.

Projekt für Systemprogrammierung WS 06/07

Vorlesung: Virtualisierung und Rechenzentrumsinfrastrukturen. Lars Göbel & Christian Müller VL04: Einführung in die Virtualisierung

Sicherheitsdienste. Schutz von Rechnern und Speichermedien vor

Kapitel VI. Speicherverwaltung. Speicherverwaltung

OpenCL. Programmiersprachen im Multicore-Zeitalter. Tim Wiersdörfer

Algorithmen II Vorlesung am

Computer & GNU/Linux Einführung Teil 1

Deadlocks. System hat nur begrenzte Ressourcen (Ressourcentypen) Hauptspeicher Externer Speicher Drucker File

Konzepte und Methoden der Systemsoftware. Aufgabe 1: Polling vs Interrupts. SoSe bis P

Kapitel 2 Architektur

Mehrprozessorarchitekturen

Betriebssysteme. Vorlesung im Herbstsemester 2010 Universität Mannheim. Kapitel 6: Speicherbasierte Prozessinteraktion

Betriebssysteme Vorlesung im Herbstsemester 2008 Universität Mannheim

Einführung in die Angewandte Bioinformatik

RO-Tutorien 15 und 16

Kapitel 2 BS Architektur: Prozesse und Kern

Betriebssysteme eine Einführung. Peter Puschner Institut für Technische Informatik

Hardware Virtualisierungs Support für PikeOS

Computer & GNU/Linux Einführung Teil 3

Threads and Scheduling

Kapitel 2: Betriebssysteme

Konzepte von Betriebssystem-Komponenten. I/O: von der Platte zur Anwendung

Betriebssysteme eine Einführung. Peter Puschner Institut für Technische Informatik

Inhaltsverzeichnis Übersicht Prozesse

Kapitel 1 Betriebssystem I. Das Betriebssystem

Symbian OS. OS für kleine Endgeräte: Sven Walter

Betriebssysteme. FU Berlin WS 2006/07 Klaus-Peter Löhr. bs-1.1 1

UNIX und C. Einleitung

Einführung in die Informationstechnik

Basisinformationstechnologie I Wintersemester 2011/ November 2011 Betriebssysteme

3 Schnittstelle zum Betriebssystem 3.5 Multitasking. Schichten und Sichten eines Rechnersystems

M5000 einfach ablösen durch T4/T5 LDoms und Solaris Zonen

Betriebssysteme 13/14

So funktionieren Computer

Grundlagen der Rechnerarchitektur. Einführung

Konzepte von Betriebssystem-Komponenten. Ausnahme- / Unterbrechungsbehandlung

Operating System Design - Now and Then. Christian Behnert Proseminar Technische Informatik FU Berlin

Echtzeitbetriebssysteme

Übungen zur Vorlesung Technische Informatik I, SS 2002 Hauck / Guenkova-Luy / Prager / Chen Übungsblatt 5 Rechenwerke / Scheduling

Rüdiger Brause. Betriebssysteme. Grundlagen und Konzepte. Dritte, überarbeitete Auflage Mit 170 Abbildungen. Springer

Geschichte der Netze und verteilten Systeme. Gründe für die Nutzung verteilter Systeme. Wünschenswerte Eigenschaften verteilter Systeme

Transkript:

Vorlesung: Betrie T. Fahringer Institut für Informatik Universität Innsbruck Thomas.Fahringer@uibk.ac.at 1

Kapitel I Betrie: Aufgaben und Überblick 2

Was ist ein Betriebssystem (BS)? (1) Verwaltung von Ressourcen (Betriebsmittel) Ressourcen: Prozessor, Speicher, Platte, Netzwerk BS vergibt diese Ressourcen. BS benötigt selbst Ressourcen. Beispiel: Dateien Jeder Datei werden Rechte zugeordnet. legen z.b. fest, wer die Datei lesen darf BS stellt die Einhaltung der Rechte sicher unbefugter Zugriff wird verweigert Beispiel: Drucker BS regelt Zugriff auf Drucker Jobs werden hintereinander und nicht gleichzeitig ausgeführt 3

Was ist ein Betriebssystem (BS)? (2) Virtuelle Maschine Abstraktion einer größeren (oder anderen) Maschine Beispiele: virtueller Speicher ist größer als der tatsächliche Speicher Java Virtual Machine (Stack-Maschine) BS als Mittler zwischen Anwendungen und Hardware Anwendungen können nicht direkt auf die HW zugreifen System- und Benutzermodus Systemaufrufe, Ausnahmen, Unterbrechungen Multiplexor l ermöglicht das Teilen von Ressourcen und Schutzmechanismen Motivation sind Kosten: $40 Mio Superrechner 4

Was ist ein Betriebssystem? (2) Anbieter von Serviceleistungen Ressourcen Schnittstelle für Programmierer Window-System Speicherverwaltung, etc. Software, die immer geladen ist oder läuft BS Kernel: kleines und geschütztes Programm 5

Rechnersystem Ein Rechner besteht aus Hardware Systemprogramme Anwendungsprogramme 6

Betriebssystemstruktur Ein Betriebssystem besteht häufig aus folgenden Komponenten: Prozessmanagement Hauptspeichermanagement Sekundärspeichermanagement Netzwerkmanagement Schutzmechanismus Kommando-Interpreter-System 7

Betriebssystemstruktur: Prozessmanagement Programm ist passive Einheit (z.b. Sequenz von Bytes). Ein Prozess ist ein Programm, das von einem Prozessor exekutiert wird. Die Exekution der Befehle erfolgt in der Regel sequentiell. Programme benötigen Ressourcen, die vom BS zugeteilt werden. Betriebssystem erzeugt/löscht Prozesse. legt Prozesse in Warteschlange. unterstützt Synchronisation von Prozessen. ermöglicht Kommunikation zwischen Prozessen. 8

Betriebssystemstruktur: Hauptspeichermanagement Programme und Daten befinden sich im Hauptspeicher (primärer Speicher). Programme müssen sich vor der Ausführung im Hauptspeicher befinden. Hauptspeicher wird vom Prozessor und Input/Output Devices geteilt. Betriebssystem: vergibt Hauptspeicher an Prozesse. überwacht, welche Teile des Hauptspeichers vergeben/frei sind. kontrolliert, t welche Prozesse von der Platte in den Hauptspeicher geladen werden. 9

Betriebssystemstruktur: File-Management Daten können in verschiedenen Speichern abgelegt werden: Hauptspeicher, magnetische Platte, magnetisches Band, optische Platte usw. Jedes Speichermedium wird von speziellem Device Controller kontrolliert. BS bildet physikalischem Speicher auf logische Einheiten ab: File. Ein File besteht aus Sequenz von Bits, Bytes, Zeilen, Records usw. Betriebssystem: erzeugt und löscht Files/Verzeichnisse. stellt Befehle für das Manipulieren von Files zur Verfügung. kontrolliert die Abbildung von Files auf sekundären Speicher. ermöglicht Sicherungskopien von Files. 10

Betriebssystemstruktur: Sekundärspeichermanagement Hauptspeicher zu klein für alle Programme. Bei Stromversorgungsproblemen g gehen alle Daten des Hauptspeichers verloren. Benötige Sekundärspeicher (z.b. Plattenspeicher), der alle Programme dauerhaft speichert. Programme werden von Sekundärspeicher erst in den Hauptspeicher geladen, wenn diese exekutiert werden. Betriebssystem: vergibt Sekundärspeicher. gibt Sekundärspeicher frei. 11

Betriebssystemstruktur: Netzwerkmanagement Bei verteilten Architekturen gibt es n Rechner mit privatem Speicher. Rechner e kommunizieren e über ein Netzwerk. e Netzwerk kann vollständig oder partiell konfiguriert sein. Betriebsystem ermöglicht Zugriff auf alle Ressourcen, die über ein Netzwerk verbunden sind. 12

Betriebssystemstruktur: Schutzmechanismus Parallel exekutierende Prozesse müssen geschützt werden. Prozess darf nicht auf Daten eines es anderen e Prozesses zugreifen. keine unerlaubte Trennung eines Prozesses vom Prozessor durch andere Prozesse HW-Schutzmechanismen kontrollieren den Zugriff von Prozessen auf Ressourcen. 13

Betriebssystemstruktur: Kommando-Interpreter Interpreter-System (Shell) Schnittstelle zwischen Benutzer und BS. Zugang zur Systemsoftware durch den Benutzer graphische Shell (z.b. Windows-Oberfläche) intuitiver Zugang für ungeübte Benutzer textuelle Shell (z.b. Unix sh, bash; DOS-shell in Windows) komplexer, aber einfache Automatisierung durch Shell Scripts Teil des Betriebssystems, das BS-Befehle Befehle exekutiert. Login. Starten eines neuen Prozesses. Statusabfrage von allen Prozessen, etc. 14

Betriebssystemstruktur: Kommando-Interpreter Interpreter-System (Shell) Shell bekommt jeden Befehl an BS und exekutiert diesen. Prozesse erzeugen/terminieren Input/Output Management Management des Sekundärspeichers Hauptspeichermanagement File-Zugriffe Schutzmechanismus Netzwerkmanagement 15

Benutzerschnittstelle: Shell Start neuer Prozesse: date Umgebungsvariablen: PATH=/bin:/usr:$HOME/bin Eingabe- und Ausgabeumleitung: g sort < file1 > file2 Standard-Eingabe aus file1 statt von Tastatur Standard-Ausgabe auf file2 statt auf Bildschirm Pipes: cat file1 file2 file3 sort lpr Ausgabe eines Prozesses dient als Eingabe des nächsten (Interprozesskommunikation!) Ausführung im Hintergrund: sort < file1 lpr & 16

Benutzerschnittstelle: Shell Scripts Zusätzliche Elemente: Kommandos zur Ablaufsteuerung Bedingungen, Schleifen, Prozeduren,... Beispiel: Verschieben von Dateien ohne Überschreiben for i in *.txt # für alle.txt Dateien do target=../other/$i t th /$i if test f $target # falls Datei existiert then mv $target $target.bak fi mv $i $target done 17

BS Serviceleistungen BS stellt Umgebung (Services) für das Ausführen von Prozessen zur Verfügung: Input/Output Operationen Manipulation des File-Systems Kommunikation Fehlererkennung: Probleme mit der Stromversorgung Speicherfehler Verbindungsfehler im Netzwerk Prüfsummenfehler bei Plattenzugriff Fehlerbehandlung durch das BS Vergabe von Ressourcen Abrechnung von Ressourcen Schutzmechanismen 18

Warum beschäftigen wir uns mit BS? BSe sind interessant Details sind interessant. Studieren von parallelen Vorgängen g hilft in anderen Informatikbereichen. Zuverlässigkeit Wenn das BS abstürzt, dann stürzt auch der Computer ab. Recovery: Wenn das BS abstürzt, sollten nicht alle Files verloren gehen. Es gibt kein perfektes BS Zu viele Klassen von Benutzern Eht Echtzeit, itd Desktop, Server, Multimedia, Mlti etc. Viele verschiedene Modelle und Abstraktionen sind möglich. Viele Abstraktionsebenen Abstraktion von Hardware-Details Höhere Konzepte: Deadlock, Synchronisierung, Scheduling, etc. Files (Betriebssystem) versus Plattenspeicher (HW) BS sind große und komplexe Programme Software Engineering ist wichtig! 24

Einfache Batch-Systeme Stapelverarbeitung Ein Job besteht aus einem Programm mit Eingabedaten. Mehrere Jobs werden zu Batches zusammengefasst und vom Betriebssystem exekutiert. Keine Interaktion mit Programmierer oder Benutzer während der Exekution Die Zeit zwischen Abschicken des Jobs und Rückgabe der Resultate t hängt von folgenden Faktoren ab: Zeit bis das Betriebssystem mit der Exekution des Jobs beginnt. Berechnungsaufwand des Jobs Probleme Jobs nützen den Prozessor, die Platte und I/O Devices nicht gleichmäßig aus. Der Prozessor ist viel schneller als Platte oder I/O Devices. 26

Batch System Ein Batch-System aus den Anfängen des Computerzeitalters 27

Multiprogrammed-Batch-Systeme (1) Mehrere Jobs warten auf die Zuteilung des Prozessors. Das Betriebssystem kann beliebigen Job auswählen, um Auslastung des Prozessors zu maximieren. Wenn ein Job, dem der Prozessor zugeordnet ist, auf ein externes Ereignis (z.b. Ende einer I/O Operation) wartet, bekommt ein anderer Job den Prozessor vom Betriebssystem zugewiesen. Solange es einen Job gibt, der vom Prozessor exekutiert werden kann, ist der Prozessor ausgelastet. Die Auswahl eines bestimmten Jobs aus einer Job-Warteschlange für die Ausführung nennt man Job-Scheduling. Problem: keine Interaktion während der Job-Exekution Jobs mit langen Laufzeiten und ohne Benutzereingabe eignen sich besonders gut für Multiprogrammed-Batch-Systeme. 28

Multiprogrammed-Batch-Systeme (2) 29 3 Jobs im Speicher: Scheduling möglich

Time-Sharing-SystemeSysteme Mehrere Jobs teilen sich den Prozessor während Jobs exekutieren. Interaktion während Exekution ist möglich. Z.B. während ein Benutzer Daten für einen bestimmten Job eingibt, kann ein anderer Job exekutiert werden. Interaktive Systeme werden vor allem für Jobs verwendet, die kurze Antwortzeiten benötigen. Wichtige Eigenschaften von Time-Sharing Sharing-Systeme: Preemptive und non-premptive Scheduling Prioritäten 30

Mainframe-BS Betriebssystemarten schnelle E/A, viele Prozesse, Transaktionen Server-BS viele Benutzer gleichzeitig, Netzwerkanbindung Multiprozessor-BS für Parallelrechner PC-BS Echtzeit-BS BS für eingebettete Systeme BS für Chipkarten BS für Spielkonsolen, Handys, PDAs, etc. 31

Literatur Operating Systems: Internals and Design Principles, William Stallings, Verlag Prentice Hall Operating System Concepts, Silberschatz, Galvin, Verlag Addison Wesley Modern Operating Systems, Tanenbaum,,Verlag Prentice Hall Operating Systems, Deitel, Verlag Addison Wesley 32

Zusammenfassung BS stellt benutzerfreundliche Umgebung zur Verfügung, um Programme zu entwickeln. BS verwaltet Ressourcen, um eine gute Performance und Auslastung des Systems zu erzielen. BS ist selbst ein komplexes Softwaresystem. Evolution von Betrien: Batch Systeme -> Multiprogrammen Systeme -> Time Sharing Systeme 34