Betriebssysteme eine Einführung. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at



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

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

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

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

Dämon-Prozesse ( deamon )

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)

Rechnernutzung in der Physik. Betriebssysteme

Betriebssysteme Kap A: Grundlagen

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

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

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

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

Military Air Systems

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

Betriebssystemschichten ( )

Projekt für Systemprogrammierung WS 06/07

Schedulingalgorithmen Rechenzeitverteilung auf Betriebssystemebene. Andi Drebes Fachbereich Informatik Universität Hamburg

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

Architektur Verteilter Systeme Teil 2: Prozesse und Threads

Single- und Multitasking

Grundlagen der Informatik

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

Systeme 1. Kapitel 10. Virtualisierung

VMware als virtuelle Plattform

Proseminar Technische Informatik A survey of virtualization technologies

Vorl. 6: Single- und Multitasking

A1 Desktop Security Installationshilfe. Symantec Endpoint Protection 12.1 für Windows/Mac

gibt es verschiedene Betriebssysteme die je nach Gerät und Nutzer installiert werden können.

Hardware Virtualisierungs Support für PikeOS

OSEK / OSEKtime - ein Vergleich

1. Technik moderner Geräte

Die Geheimnisse meiner SMF Daten

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper

Bitte verwenden Sie nur dokumentenechtes Schreibmaterial!

Kapitel 1 Betriebssystem I. Das Betriebssystem

Betriebssystemsicherheit am Beispiel UNIX

Implementation of a Framework Component for Processing Tasks within Threads on the Application Level

4D Server v12 64-bit Version BETA VERSION

Staatlich geprüfter EDV-Führerschein

Workshop: Eigenes Image ohne VMware-Programme erstellen

5 Speicherverwaltung. bs-5.1 1

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

Übung: Verwendung von Java-Threads

Übersicht. Nebenläufige Programmierung. Praxis und Semantik. Einleitung. Sequentielle und nebenläufige Programmierung. Warum ist. interessant?

Betriebssysteme Vorstellung

Operating System Kernels

RTEMS- Echtzeitbetriebssystem

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

LPT1 Anschluss mit PCMCIA Karte

Betriebssystem-basierte Virtualisierung

Persona-SVS e-sync GUI/Client Installation

Sicherheitsdienste. Schutz von Rechnern und Speichermedien vor

Calogero Fontana Fachseminar WS09/10. Virtualisierung

VIRTUALISIERUNG IN MIKROKERN BASIERTEN SYSTEMEN

OSEK-OS. Oliver Botschkowski. PG AutoLab Seminarwochenende Oktober AutoLab

Hochschule Darmstadt - Fachbereich Informatik - Fachschaft des Fachbereiches

Führen Sie zum Einstieg in die Materie einige Systemdiagnosen durch. Benutzen Sie dabei winmsd.exe.

Grafiktreiber im Linuxkernel - die Außenseiter -

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

Formular»Fragenkatalog BIM-Server«

Vorlesung Betriebssysteme Hochschule Niederrhein, Prof. Pohle-Fröhlich, SS 2015

Einführung in Eclipse und Java

Hardware- und Softwareanforderungen für die Installation von California.pro

Hardware- und Softwareanforderungen für die Installation von California.pro

Liesmich zum Kurs: Programmieren in der Bioinformatik mit Perl Konfigurierung der Programmierumgebung

Laborübung - Verwalten von virtuellem Speicher in Windows 7

Monitore. Klicken bearbeiten

Der Scheduler von Windows Konzepte und Strategien

Windows CE. Process Control and Robotics. Fabian Garagnon

VDI - Die Revolution der Arbeitsplatzbereitstellung. Nicholas Dille,

Agenda. Einleitung Produkte vom VMware VMware Player VMware Server VMware ESX VMware Infrastrukture. Virtuelle Netzwerke

Entwicklung eines Mac OS X Treibers für eine PCI-VME Interface Karte

Computeria Urdorf. Treff vom 16. Januar Was ist ein Computer?

Internetanbindung von Datenbanken

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite

Lizenzierung von System Center 2012

Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008

Übung - Verwaltung der Gerätetreiber mit dem Geräte-Manager in Windows 7

ProSeminar Speicher- und Dateisysteme

Computeria Solothurn

Im Kapitel Resourc Manager werden die verschiedenen Möglichkeiten der Überwachung von Messwerten eines Server oder Benutzers erläutert.

In 12 Schritten zum mobilen PC mit Paragon Drive Copy 11 und Microsoft Windows Virtual PC

Computer & GNU/Linux Einführung Teil 1

QUICK INSTALLATION GUIDE

Lizenzen und virtuelle Maschinen

DIE SCHRITTE ZUR KORREKTEN LIZENZIERUNG

Computeria Urdorf. Treff vom 18. Juni Von Windows XP zu Windows 8

Effizient, sicher und flexibel: Desktop-Virtualisierung mit Citrix XenDesktop

Virtual Machines. Peter Schmid Hochschule für Technik Zürich Master of Advanced Studies, Informatik

Installation der SAS Foundation Software auf Windows

MetaQuotes Empfehlungen zum Gebrauch von

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0)

Nebenläufige Programmierung

Installationsanleitung für das Touch Display: S170E1-01 LCD A170E1-T3 ChiMei - egalaxy

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13

White Paper. Embedded Treiberframework. Einführung

OSL Storage Cluster und RSIO unter Linux Storage-Attachment und Hochverfügbarkeit in 5 Minuten

Transkript:

Betriebssysteme eine Einführung Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at 1

Betriebssystem Was ist das? Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 14/15 2

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

Entstehung von Betriebssystemen Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 14/15 4

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 14/15 5

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

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 14/15 7

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

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

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 14/15 10

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 14/15 11

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 14/15 12

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 14/15 13

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 14/15 14

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, Voice und Video,... Embedded Computing, Real-Time Comp., Pervasive Computing, real-time, energy management Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 14/15 15

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 14/15 16

Was ist ein Betriebssystem? Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 14/15 17

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 14/15 18

Was interessiert uns? Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 14/15 19

Betriebssystem - Sichten Endbenutzer Programmierer Anwendungsprogramme Betriebssystemdesigner Utilities Betriebssystem Computerhardware Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 14/15 20

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 14/15 21

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 14/15 22

einige Grundkonzepte Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 14/15 23

Abstraktion Abstraktionen ungestörte Programmabarbeitung 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 14/15 24

Einige Aspekte Prozesse Speicherverwaltung Zugriffsschutz Scheduling und Ressourcenverwaltung Systemarchitektur Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 14/15 25

Prozess Informell: Programm bei der Ausführung Anforderungen an Prozessmanagement: Zeitzuteilung Signalisieren von Ereignissen (z.b. I/O) Vermeidung von Zugriffskonflikten Synchronisation Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 14/15 26

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

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 14/15 28

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

Speicherverwaltung Verwaltung der Speicherzuteilung an Prozesse Speicherzuteilung an Prozesse nach Bedarf Verschieben von Speicherinhalten zwischen Hauptund Sekundärspeicher Verwaltung der Zugriffsrechte Schutz und Isolation der Prozesse Gemeinsamer Speicher (Shared Memory) Filesystem Peter Puschner, TU Wien Vorlesung Betriebssysteme, Einführung; WS 14/15 30

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 14/15 31

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

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

Ursprüngl. Unix-Schichtenmodell Name Objekte single processor Prozessor-HW 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 14/15 34

Urspr. Unix-Schichtenmodell (2) Name Objekte one or more processors 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 14/15 35

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 14/15 36

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

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 14/15 38

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