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

Ähnliche Dokumente
Willkommen zur. VO Betriebssysteme. Peter Puschner. Peter Puschner 1

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

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

Einführung. 1.1 Aufgaben und Grobstruktur. Betriebssystem (Definition nach DIN 44300) 1.1 Aufgaben und Grobstruktur

Aufbau eines modernen Betriebssystems (Windows NT 5.0)

Single- und Multitasking

Betriebssysteme. Thomas Fahringer. Institut für Informatik Universität Innsbruck. VO Betriebssysteme

Betriebssysteme Vorstellung

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

Teil 3: Konzepte von Betriebssystemen

Betriebssysteme. VO Betriebssysteme

Technische Informatik II

Betriebssysteme VO Betriebssysteme KU

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

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

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard

Einführung Betriebssysteme

andere aufrufen und Datenstrukturen Die Folgen von Änderungen und Erweiterungen sind schwer

Prozesse und Threads. Peter Puschner Institut für Technische Informatik 1

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

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

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

Grundlagen Rechnerarchitektur und Betriebssysteme

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

Prozesse und Threads. Prozess. Trace. Einfachstes Prozessmodell. Traces

Betriebssysteme I WS 2018/2019. Betriebssysteme / verteilte Systeme Tel.: 0271/ , Büro: H-B 8404

Konzepte von Betriebssystem Komponenten. Aufbau eines Modernen Betriebssystems (Windows NT 5.0)

A Kompilieren des Kernels B Lineare Listen in Linux C Glossar Interessante WWW-Adressen Literaturverzeichnis...

Abstrakte Schnittstelle

Der Scheduler von Windows 2000 Konzepte und Strategien

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

Hardware und Gerätetreiber

Betriebssysteme und Microkern

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

Prozesse und Threads. Peter Puschner Institut für Technische Informatik

Betriebssysteme R. Thomas (Stand : SS 2010)

Computer-Systeme Teil 12: Einführung in Betriebssysteme

Einführung und Bausteine

Konzepte von Betriebssystem- Komponenten:

D Einführung Betriebssysteme

D Einführung Betriebssysteme

Betriebssysteme. Tutorium 2. Philipp Kirchhofer

Betriebssysteme Kap A: Grundlagen

Die Integration zukünftiger In-Car Multimedia Systeme unter Verwendung von Virtualisierung und Multi-Core Plattformen

Betriebssysteme Betriebssysteme und. Netzwerke. Netzwerke Theorie und Praxis

UNIX und C. Einleitung

Betriebssysteme Ein Überblick

Bibliotheks-basierte Virtualisierung

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

Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen)

Rechnergenerationen. Geschichte Großrechner. Generation 1 Direkte Programmierung. Generation 2 Stapelverarbeitung. Generation 3 Dialogverarbeitung

Betriebssysteme. 4y Springer. Eine kompakte Einführung mit Linux. Albrecht Achilles. Mit 31 Abbildungen

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Echtzeit-Multitasking

Technische Informatik 1

Rechnernutzung in der Physik. Betriebssysteme

Echtzeit-Multitasking

Oracle 11g und Virtualisierung Johannes Ahrends Technical Director Quest Software GmbH

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

Basisinformationstechnologie I Wintersemester 2011/ November 2011 Betriebssysteme

Betriebssysteme BS-U SS Hans-Georg Eßer. Foliensatz U: Unix und Ulix Aufbau der Ulix-Quellcode-Dateien. Dipl.-Math., Dipl.-Inform.

C. Betriebssystem-Strukturen C.1 Monolithische Betriebssysteme

11.1 Inhalte der Vorlesung Was ist ein Betriebssystem Zwei Sichten. Was ist ein Betriebssystem Zwei Sichten (Forts.) Abstraktionen

Betriebssystemschichten ( )

Fachhochschule Frankfurt am Main Fachbereich 2: Informatik WS 2008/2009. Grundkurs Unix. Teil 1: Die Essenz von UNIX. Dr.

Überlegungen beim Entwurf eines Betriebssystems

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

1.3 Architektur von Betriebssystemen

GNU/Linux Introduction Linux Introduction: Part 1. Simon M. Haller, Sebastian Stabinger iis.uibk.ac.at

Betriebssysteme KU - Einführungstutorium

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

Military Air Systems

Klausur Betriebsysteme, Windows NT. Wintersemester 00/01. Dipl.-Ing. Jürgen Halkenhäuser Dipl.-Ing. T. Kloepfer

C. Betriebssystem-Strukturen C.1 Monolithische Betriebssysteme

Untersuchungen zur Zulassung von Software unterschiedlicher Sicherheitsklassen auf einem Prozessormodule unter dem neuartigen Betriebssystem PikeOS

Modul B-PRGB Grundlagen der Programmierung 1

Einführung in die Informationstechnik

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

RTOS Einführung. Version: Datum: Autor: Werner Dichler

Betriebssysteme WS Betriebssysteme. Prof. Hannelore Frank. Einführung. Prozesse und Threads. Scheduling. Synchronisation

RO-Tutorien 15 und 16

Was machen wir heute? Betriebssysteme Tutorium 3. Organisatorisches. Prozesskontrollblock (PCB) Programmieraufgaben. Frage 3.1.a

Überblick und Aufgaben

3. Betriebssystemorganisation

Einleitung. Dr.-Ing. Volkmar Sieh WS 2005/2006. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg

K. Felten Windows NT Fachhochschule Kiel Historie. Fachbereich Informatik und Elektrotechnik

Grundlagen Computer und Betriebssystem

Heiko Bobzin Poet Software GmbH

Betriebssysteme 1. Einführung und Motivation. Über den Dozenten. Betriebssysteme in 2 Minuten (1) Hans-Georg Eßer. Beziehung Software Hardware

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

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)

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

Architektur und Organisation von Rechnersystemen

Transkript:

Willkommen zur VO Betriebssysteme Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at Peter Puschner 1

Kontakt Prof. Peter Puschner peter@vmars.tuwien.ac.at Sprechstunden Di, 14:00-15:00, bzw. nach Anmeldung Sekretariat: Mo-Do, 10:00-11:30 Institut Treitlstraße 1-3, 3. Stock Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 2

Organisatorisches Vorlesung: Montag 13:00c.t.-15:00, InfHS Unterlagen Buch: William Stallings, Operating Systems Präsentationen nach VO am Web (siehe tuwis++, http://ti.tuwien.ac.at/rts ) Prüfungen schriftlich, ohne Unterlagen, 90 Minuten Termine: (27.10.2009), 25.1.2010 Anmeldung über Web-Seite mündlich: bei Bedarf Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 3

Ziele solides Grundverständnis über BS typische Konzepte und Mechanismen von BS Aufzeigen von Designentscheidungen, offenen Fragestellungen Schwerpunkt Synchronisation Nicht-Ziel: Vermittlung von Spezialwissen über Windows, Linux, MacOS, etc. Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 4

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

Betriebssystem Was ist das? Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 6

Wie entstanden die heutigen Betriebssysteme? Was ist ein Betriebssystem? wichtige Grundkonzepte Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 7

Entstehung von Betriebssystemen Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 8

Entstehung moderner BS Von der technologischen Entwicklung und der damit verbundenen Kostenentwicklung bestimmt Hardwarekosten Kosten der menschlichen Arbeitskraft von teurer Hardware Maximierung der Hardwareauslastung zu teurer Arbeitskraft Komfort und Unterstützung für Benutzer Weitere Faktoren: Fehlerbehebung, neue Anforderungen Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 9

Serial Processing (1950) kein Betriebssystem direkte Programmierung der Hardware I/O: Schalter, Lampen; Kartenleser, Drucker Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 10

Serial Processing Problem: Fehleranfälligkeit Lösung: Unterprogrammbibliotheken für I/O Problem: Setup benötigt viel Zeit Lösung 1: Spezialist für Setup Lösung 2: Monitor Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 11

Job-Ausführung mit Monitor Job vom Eingabegerät in die User Programm Area lesen Interpretierung der JCL Kommandos Ausführung des Anwendungsprogramms Fortsetzung im Monitor Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 12

Monitor (1960) Interrupt Processing Device Drivers Job Sequencing JCL Interpreter User Program Area Job Steuerkommandos (JCL) + Programm Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 13

Monitor Speicherschutz Timer Privilegierte Instruktionen Interrupts Problem: entweder CPU oder I/O-System aktiv, der Rest der Maschine ist untätig Lösung: parallele CPU und I/O Aktivität Pufferung und I/O Interrupts Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 14

Multiprogramming (1965) Problem: Kaum ein Programm nützt CPU und periphäre Hardware gleichmäßig aus CPU-intensive Programme (CPU bound) I/O-intensive Programme (I/O bound) Lösung: Multiprogramming bzw. Multitasking Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 15

Multiprogrammed Batch Systems run wait run wait run A wait run A wait run B wait run B wait run A run B run A run B Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 16

Multiprogrammed Batch Systems Die parallele Ausführung von Programmen macht neue Mechanismen notwendig, z.b. Speicherverwaltung Verwaltung der CPU und Ressourcen (Scheduling) Situation (ca. 1970): billiger gewordene Computer sollen Produktivität teurer Arbeitskräfte fördern Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 17

Time-Sharing Systems Problem: Mehrere Benutzer teilen einen Computer; Warten auf Fertigstellung von Batch Jobs Lösung: Preemptive Scheduling, Prioritäten Problem: Daten und Programme sollen für Benutzer leicht verfügbar sein Lösung: Filesystem am Rechner Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 18

Weitere Entwicklung billige HW pro Benutzer ein Rechner (PC) Computer vermehrt für Verwaltung und Austausch von Daten Networking Security Wachstum des Internet Middleware (Java API) Mobilität, Real-Time Voice und Video,... Embedded Computing, Real-Time Comp., Pervasive Computing, real-time, power management Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 19

Unix, Mac OS, Windows,... 1972 "... the number of UNIX installations has grown to 10..." (D. Ritchie, K. Thompson) 1981 MS-DOS auf IBM PC (4000 Zeilen Ass.) 1983 PC XT : Festplatte, ein Directory, 64 Files 1984 Apple Macintosh, Mac OS 1987 MINIX 1990 MS Windows 3.0, auf DOS aufsetzend 1991 erste Linux Version 1993 Windows NT (10+ Mio. Code-Zeilen) multi-tasking, single-/multi-user System Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 20

Was ist ein Betriebssystem? Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 21

Betriebssystem als Interface Interface zwischen Benutzer und Hardware virtuelle Maschine Ressourcenmanager stellt Programmierinterface zur Verfügung passt sich den Anforderungen des Benutzers an Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 22

Was interessiert uns? Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 23

Betriebssystem - Sichten Programmierer Anwendungsprogramme Endbenutzer Betriebssystemdesigner Utilities Betriebssystem Computerhardware Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 24

Betriebssystem als Dienstleister Programmausführung Programmerstellung I/O, Filezugriff, Netzwerkkommunikation Zugangskontrolle Fehlererkennung und Behandlung Logging (Überwachung, Accounting) Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 25

BS als Ressourcenmanager keine externe Kontrollinstanz verwendet selbst Ressourcen gibt Ressourcen vorübergehend ab hebt sich durch die Funktionalität von anderen Programmen ab leitet den Prozessor bei der Verwendung der Ressourcen und bei der Zeitzuteilung an Prozesse Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 26

einige Grundkonzepte Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 27

Abstraktion Abstraktion Prozesse unendlich großer Speicher, Files Synchronisation und Kommunikation Standard Interface - Portabilität Verwaltet die Ressourcen CPU, Arbeitsspeicher, Platte, Netzwerkzugriff Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 28

Einige Konzepte Prozesse Speicherverwaltung Zugriffsschutz Scheduling und Ressourcenverwaltung Systemarchitektur Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 29

Prozess Informell: Programm bei der Ausführung Animated Spirit of a Program Anforderungen an Prozessmanagement: Zeitzuteilung Signalisieren von Ereignissen Mutual Exclusion Synchronisation Deadlockvermeidung bzw. -behandlung Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 30

Prozess Prozessliste Arbeitsspeicher i j Proz.Idx PC Basis Länge Register i b l Prozess A Kontext Daten Prog. weitere Register... Prozess B b l Kontext Daten Prog. Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 31

Speicherverwaltung Virtual Memory Verwendung von Speicher ohne Berücksichtigung der Größe des physikalischen Speichers nur Teile laufender Programme werden im physikalischen Speicher gehalten der Rest befindet sich auf dem Sekundärspeicher: adressierbarer Speicher > Arbeitsspeicher Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 32

Speicherverwaltung Verwaltung der Speicherzuteilung an Prozesse Speicherzuteilung an Prozesse nach Bedarf Auslagern von Speicherinhalten auf Sekundärspeicher Verwaltung der Zugriffsrechte Schutz und Isolation der Prozesse Gemeinsamer Speicher (Shared Memory) Filesystem Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 33

Memory Management Views Virtueller Prozessor Virtueller Speicher Files Benutzersicht Realer Prozessor virt. Adr. phys. Adr. Swapping Adressübersetzg. Hauptspeicher Sekundärspeicher Sicht des BS-Designers Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 34

Datenschutz und Sicherheit Access Control Wer darf welche Ressourcen verwenden erlaubte Operationen Information flow control Authentizität - Quelle der Information Integrität - keine Verfälschungen Verfügbarkeit Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 35

Scheduling, Ressourcenverwaltung Zuteilung von Rechenzeit und Betriebsmitteln an die Prozesse Fairness Effizienz Lifeness... Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 36

Systemarchitektur Modularer Aufbau - überschaubare Teile klar definierte Interfaces: Module können ohne Wechselwirkungen geändert werden Schichten jede Schicht erfüllt eine bestimmte Funktionalität höhere Schichten verwenden Services der darunterliegenden Schichten Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 37

Prozessor-HW single processor Ursprüngl. Unix-Schichtenmodell Name Objekte 7 6 5 Virtueller Speicher Sekundärspeicher primitive Prozesse Seiten, Segmente Datenblöcke, -kanäle Prozesse, Ready list, Semaphore 4 Interrupts Interruptbehandlung 3 Prozeduren Prozeduren, Call Stack 2 Instruktionen Eval. Stack, skalare Daten, Felder 1 Schaltkreise Register, Gatter, Busse Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 38

one or more processors Urspr. Unix-Schichtenmodell (2) Name Objekte 13 12 Shell User-Prozesse 11 Directories Directories 10 Devices Drucker, Bildschirm, Tastatur 9 Filesystem Files 8 Kommunikation Pipes Programmierumgebung Benutzerprozesse Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 39

Windows Architektur (Bsp.) User Mode System Processes Services Applications Environment Subsystems Kernel Mode Executive API I/O Manager File Systems LPC Facility Memory Manager Process Manager Security Ref. Monitor Object Manager Plug n Play Power Manager Window Manager Graphics Dev. Dr. Device Drivers Microkernel Hardware Abstraction Layer (HAL) Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 40

Device mappings Unix Architektur (SVR4) File mappings Anonymous mappings Disk driver Tape driver Virtual memory framework Block device switch elf Network driver exec switch Common Facilities Streams a.out vnode/vfs interface Scheduler framework tty driver NFS RFS Time-sharing processes System processes Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 41 FFS s5fs

Rückblick BS macht Computer verwendbar stellt Abstraktionen zur Verfügung Prozess, Speicher, Kommunikation, Synchronisation bietet ein portables Programmierinterface verwaltet Ressourcen Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 42

Ausblick Prozesse, Threads Parallelität, Synchronisation (Mutual Exclusion) Deadlock Speicherverwaltung (Virtual Memory) Scheduling Ein- und Ausgabe Dateiverwaltung Security Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 09/10 43