BETRIEBSSYSTEME WS 2005/2006 YASAR ARMAN WWI 04 F INHALTSVERZEICHNIS ZUR VORLESUNG BETRIEBSSYSTEME. Einleitung. Einleitung

Größe: px
Ab Seite anzeigen:

Download "BETRIEBSSYSTEME WS 2005/2006 YASAR ARMAN WWI 04 F INHALTSVERZEICHNIS ZUR VORLESUNG BETRIEBSSYSTEME. Einleitung. Einleitung"

Transkript

1 BETRIEBSSYSTEME WS 2005/2006 YASAR ARMAN BS WWI 04 F Inhalt: Betriebssysteme BA Mannheim Inhalt: Betriebssysteme BA Mannheim Einleitung INHALTSVERZEICHNIS ZUR VORLESUNG BETRIEBSSYSTEME Laufzeitunterstützung durch die System-Software für die Anwendungsebene Einleitung Was ist ein Betriebssystem? Der Begriff der System-Software Betriebssystemarchitekturen im Wandel Betriebsarten eines Rechensystems Klassifizierungskriterien Betriebsarten Kombinierte Betriebsarten EIN 1 EIN 3 EIN 3 EIN 6 EIN 6 EIN 7 EIN 12 Verklemmungen Dateisysteme Fallbeispiel Informationstechnologie (3) WWI04F c Prof Dr-Ing Jörg Baumgart V 300 INH 1 Informationstechnologie (3) WWI04F c Prof Dr-Ing Jörg Baumgart V 300 INH 2

2 Inhalt: Betriebssysteme BA Mannheim Inhalt: Betriebssysteme BA Mannheim Laufzeitunterstützung durch die System-Software für die Anwendungsebene Das Betriebssystem als virtuelle Maschine LZU 1 Laufzeitmodelle LZU 3 Begriffsdefinition LZU 3 Dienste eines Laufzeitmodells LZU 4 Wichtige Aspekte für die Festlegung eines Laufzeitmodells LZU 8 Fragestellungen LZU 8 Elementare Dienste LZU 9 LZU 10 LZU 16 Prozeßinteraktion LZU 22 Elementare Laufzeitmodelle LZU 27 Überblick LZU 27 Speichergekoppelte, sequentielle Prozesse LZU 28 Nachrichtengekoppelte, sequentielle Prozesse LZU 30 Speichergekoppelte, nebenläufige Prozesse LZU 32 Nachrichtengekoppelte, nebenläufige Prozesse LZU 34 Erweiterung der elementaren Laufzeitmodelle LZU 36 Überblick LZU 36 Geräteverwaltung LZU 37 Datenhaltung LZU 38 Echtzeitanwendungen LZU 40 Grobarchitektur von Laufzeitsystemen LZU 41 Speicherbasierte Prozessinteraktion Einführungsbeispiel: Ein Erzeuger-Verbraucher-Problem Aufgabenstellung 1 Lösungsversuch zum Erzeuger-Verbraucher-Problem Kritische Abschnitte Basismechanismen zur Realisierung des gegenseitigen Ausschlusses Unterbrechungssperren Atomare Speicheroperationen Spezielle Hardware-Befehle Semaphor-Definition Gegenseitiger Ausschluß SPI 1 SPI 1 SPI 3 SPI 6 SPI 8 SPI 8 SPI 9 SPI 12 SPI 15 SPI 15 SPI 17 Erzeuger-Verbraucher-Problem für jeweils nur einen Erzeugerund SPI 19 Verbraucherprozeß Betriebsmittelverwaltung Definition der Leser-Schreiber-Probleme Lösung des Leser-Schreiber-Problems ohne Prioritäten Lösung des Leser-Schreiber-Problems mit Leserpriorität Lösung des Leser-Schreiber-Problems mit Schreiberpriorität Das Konzept der privaten Semaphore Bewertung des Semaphorkonzepts Das Monitor-Konzept Monitor-Definition Beispiel: Betriebsmittelverwaltung Beispiel: Erzeuger-Verbraucher-Problem SPI 34 SPI 38 SPI 39 SPI 42 SPI 47 SPI 53 SPI 59 SPI 60 SPI 60 SPI 70 SPI 72 Informationstechnologie (3) WWI04F c Prof Dr-Ing Jörg Baumgart V 300 INH 3 Informationstechnologie (3) WWI04F c Prof Dr-Ing Jörg Baumgart V 300 INH 4 Inhalt: Betriebssysteme BA Mannheim Inhalt: Betriebssysteme BA Mannheim Beispiel: Leser-Schreiber-Problem mit Leserpriorität SPI 75 Verklemmungen Bewertung des Monitorkonzepts SPI 83 Problemdefinition VER 1 Realisierung des Monitorkonzepts in Java SPI 84 Lösungen für das Verklemmungsproblem VER 4 Prozessverwaltung Implementierung von Prozessen/Threads Überblick Das Zustandsmodell PRV 1 PRV 1 PRV 2 Prinzipielle Lösungsansätze Verhinderung Vermeidung Entdeckung VER 4 VER 5 VER 7 VER 10 Die Betriebssystemkomponente PRV 5 Implementierung der PRV 12 Typische Einsatzgebiete SPV 1 Realisierung des Semaphorkonzepts PRV 18 Organisation des Hauptspeichers SPV 1 Implementierungsstruktur PRV 18 Bereiche fester Länge SPV 1 Implementierung PRV 20 Bereiche variabler Länge SPV 4 Scheduling PRV 27 Überlagerung von Programmen SPV 5 Überblick PRV 27 Hauptspeicherverwaltung und -zuteilung SPV 6 Scheduling-Verfahren PRV 32 Bereiche fester Länge SPV 6 Scheduling in Windows 3x PRV 40 Bereiche variabler Länge SPV 8 Scheduling in PRV 41 Virtueller Speicher SPV 11 Scheduling in WindowsNT PRV 42 Grundlagen SPV 11 Ein-/Ausgabeoperationen an der Schnittstelle zur Integration der E/A-Verarbeitung in das Prozeßkonzept Synchrone E/A-Schnittstelle Asynchrone E/A-Schnittstelle Plattensteuerung PRV 44 PRV 44 PRV 46 PRV 48 PRV 50 Seitentausch Segmentierung Segmentierung mit Seitentausch Hardware-Unterstützung virtueller Systeme Speicherplatzzuteilung SPV 13 SPV 21 SPV 27 SPV 30 SPV 31 SPV 31 Einlagerungsstrategien SPV 32 Auslagerungsstrategien SPV 33 Informationstechnologie (3) WWI04F c Prof Dr-Ing Jörg Baumgart V 300 INH 5 Informationstechnologie (3) WWI04F c Prof Dr-Ing Jörg Baumgart V 300 INH 6

3 Inhalt: Betriebssysteme BA Mannheim Prozesse und virtueller Speicher SPV 38 Dateisysteme Überblick Physikalisches Dateisystem Aufgaben des physikalischen Dateisystems Physikalische Dateiverwaltung auf Plattenspeichern Physikalische Dateiorganisationsformen Basisdateisystem Logisches Dateisystem Schutzaspekte in Dateisystemen Benutzerkategorien und Zugriffsrechte Zugriffsmatrix Modell Namensverwaltung DAT 1 DAT 3 DAT 3 DAT 4 DAT 6 DAT 9 DAT 12 DAT 13 DAT 13 DAT 14 DAT 18 Fallbeispiel Entwicklungsgeschichte Standardisierungsbemühungen Benutzerschnittstellen Architektur von Prozeßsubsystem Dateisubsystem FBS 1 FBS 1 FBS 2 FBS 5 FBS 11 FBS 13 FBS 21 FBS 22 Informationstechnologie (3) WWI04F c Prof Dr-Ing Jörg Baumgart V 300 INH 7 Literatur: Betriebssysteme BA Mannheim Literatur [Her04] Herold, Helmut: Linux/ Systemprogrammierung Addison-Wesley, 3 Auflage, 2004 ISBN [MM01] Mauro, Jim und Richard McDougall: Solaris Internals: Core Kernel Architecture Prentice Hall, 2001 ISBN [NS98] Nehmer, Jürgen und Peter Sturm: Systemsoftware: Grundlagen moderner Betriebssysteme dpunkt-verlag, 1998 ISBN [SG98] Silberschatz, Abraham und Peter Galvin: Operating System Concepts John Wiley & Sons, Inc, 5 Auflage, 1998 ISBN [Sol98] Solomon, David A: Inside Windows NT Microsoft Press, 2 Auflage, 1998 [SR00] Solomon, David A und Mark Russinovich: Inside Microsoft Windows 2000 Microsoft Press Deutschland, 3 Auflage, 2000 ISBN [Sta97] Stallings, William: Operating Systems: Internals and Design Principles Prentice Hall, 3 Auflage, 1997 [Vah96] Vahalia, Uresh: UNIX Internals: The New Frontiers Prentice Hall, 1996 Informationstechnologie (3) WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LIT 1

4 Einleitung Was ist ein Betriebssystem? Einleitung Was ist ein Betriebssystem? EINLEITUNG Was ist ein Betriebssystem? Der Betriebssystembegriff Was ist ein Elefant? Eine Maus mit Betriebssystem Hardware: klein, schnell, leistungsfähig Hardware + Betriebssystem: groß, langsam Gründe zunehmende Komplexität von Betriebssystemen zunehmende Benutzeranforderungen Definition des Betriebsystems nach DIN44300 Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften der Rechenanlage die Grundlage der möglichen Betriebsarten des digitalen Rechensystems bilden und insbesondere die Abwicklung von Programmen steuern und überwachen Geschichtlicher Rückblick Beginn der Informationsverarbeitung Rechner von Ingenieuren und Wissenschaftlern programmiert, die sie konstruiert haben Probleme mehr auf der Hardware-Seite als bei Programmierung hohe Hardware-, geringe Software-Kosten Finanzierung durch Militär Hardware billiger Nutzung auch im kommerziellen Bereich effiziente Hardware-Ausnutzung gefordert Kosten für Programmerstellung stiegen stark an Folgen Arbeitsteilung zwischen Operateuren und Programmierern Entwicklung von Standardprogrammen Steuerung von Rechnerkomponenten Auftragsabarbeitung Ausgangspunkt für gezielte Erstellung von System-Software Monitor System Supervisory System Executive System Operating System Betriebssystem (BS) Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 EIN 1 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 EIN 2 Einleitung Der Begriff der System-Software Einleitung Der Begriff der System-Software Der Begriff der System-Software Beispielsysteme MS-DOS Betriebssystemarchitekturen im Wandel die ersten -Systeme Architekturmodelle die Abgrenzung zwischen der Anwendungs-Software und dem Betriebssystem hängt stark von dem vorliegenden Architekturmodell ab wichtige Architekturmodelle monolithische Architektur Mikrokern Architekturen Monolithische Architekturen das Betriebssystem ist ein zur Anwendungsebene hin abgeschlossenes System es bietet der Anwendungsebene einen festen Funktionsumfang an dieser Funktionsumfang wird auch als Application Programmers Interface (API) bezeichnet intern ist (oft) keine weitere Strukturierung erkennbar Mikrokern Architekturen ein Mikrokern stellt wichtige grundlegende Betriebssystemdienste zur Verfügung, zb: Prozeßinteraktion zusätzlich besitzt ein Mikrokern einen Mechanismus, um APIs bereitzustellen bzw zu integrieren diese APIs sind aber kein Bestandteil des Mikrokerns in der Regel werden sogenannte Standard-APIs mit dem Betriebssystem ausgeliefert daneben können von der Anwendungsebene aus eigene APIs installiert werden die Grenze zwischen der Anwendungs-Software und dem Betriebssystem verschwimmt hier zunehmend Änderungen der internen Betriebssystemstruktur Fehlerkorrektur Integration neuer Treiberprogramme für neue Hardware-Komponenten das Betriebssystem kann in diesem Fall als die System-Software angesehen werden Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 EIN 3 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 302 EIN 4

5 Einleitung Der Begriff der System-Software Einleitung Betriebsarten eines Rechensystems klassische Betriebssystemdienste können an verschiedenen Stellen angeboten werden innerhalb des Mikrokerns innerhalb eines Laufzeitpakets, das im Adreßraum einer Anwendung installiert ist durch spezielle Server, wobei der Mikrokern dann Aufträge der Anwendung an den entsprechenden Server weiterleitet der Begriff der System-Software kann hier wie folgt definiert werden Konfigurierbare und erweiterbare Menge von Systemdiensten, die einer Anwendung die einfache und von technischen Details befreite Nutzung eines Rechnersystems ermöglicht Betriebsarten eines Rechensystems Klassifizierungskriterien Kriterien für die Klassifizierung von Betriebsarten (Processing Mode) Systemumgebung und ihre Aufgabenstellung Stapelbetrieb Interaktiver Betrieb Echtzeitbetrieb Benutzerzahl Einbenutzerbetrieb Mehrbenutzerbetrieb (Teilnehmerbetrieb) Eingriffsmöglichkeiten des Benutzers Off Line Betrieb On Line Betrieb Programmierbarkeit des Systems durch Benutzer frei programmierbar nicht programmierbar Programm /Speicherorganisation Einprogrammbetrieb Mehrprogrammbetrieb Time Sharing Betrieb Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 303 EIN 5 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 EIN 6 Einleitung Betriebsarten eines Rechensystems Einleitung Betriebsarten eines Rechensystems Betriebsarten Stapelbetrieb (Batch Processing) traditionelle Betriebsart Ablauf Anforderungen an das System werden zusammenhängend als Auftrag (Task, Job) eingegeben Abarbeitung (am Stück) ohne weitere Einflußnahme von außen (mögliche) Bestandteile eines Auftrags Programme Daten Steueranweisungen Anwendung des Stapelbetriebs bei verarbeitungs- und datenintensiven Aufgaben entfernter Stapelbetrieb (Remote Batch Processing) Zentraleinheit und E/A Gerät sind räumlich getrennt und über ein Netzwerk verbunden Eingabemedium beim Stapelbetrieb früher: Lochkartenstapel heute: Kommandodatei Interaktiver Betrieb alternative Bezeichnungsweisen Dialogbetrieb Interactive Processing die Ausführung einer Aufgabe besteht aus einer Folge von Interaktionszyklen (Interactive Cycle) Definition von Teilaufgaben durch den Benutzer Antwort des Systems Interaktion Beschreibung einer Teilaufgabe (zb Kommandos und Daten) und Ausführung Folge Benutzer kann auf Ablauf der Auftragsbearbeitung Einfluß nehmen Echtzeitbetrieb (Real Time Processing) Anwendung Steuerung technischer Prozesse Anforderung auf asynchron anfallende Daten muß innerhalb eines vorgegebenen Zeitintervalls reagiert werden Verspätung könnte katastrophale Folgen haben Steuerung eines Kernkraftwerkes Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 EIN 7 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 EIN 8

6 Einleitung Betriebsarten eines Rechensystems Einleitung Betriebsarten eines Rechensystems Einbenutzerbetrieb (Single-User) nur ein Benutzer arbeitet mit dem Betriebssystem Beispiele: Windows 3x, Windows 95 Mac OS Mehrbenutzerbetrieb (Multi-User) mehrere Benutzer teilen sich die Betriebsmittel (zb Speicher, Festplatte) Beispiele Betriebssysteme für Großrechner Windows NT, Windows 2000, Windows XP Off-Line-Betrieb keine Eingriffsmöglichkeit für Benutzer während der Auftragsbearbeitung Beispiel: Stapelverarbeitung On-Line-Betrieb System ist interaktionsfähig Beispiele Windows-Betriebssysteme Mac OS Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 306 EIN 9 Freie Programmierbarkeit (User-Programmable) Benutzer darf eigene Programme schreiben und anwenden Beispiel: PC-Betriebssysteme im privaten Bereich Keine Programmierbarkeit (Non-Programmable) Benutzer darf nur bestehende Programme anwenden Beispiele Handy-Betriebssystem (?) Endanwendersysteme in (zb) Banken, Versicherungen, Reisebüros Einprogrammbetrieb (Uniprogramming) es befindet sich maximal ein Programm zur Ausführung im Hauptspeicher Beispiel: MS-DOS Mehrprogrammbetrieb (Multiprogramming) es können gleichzeitig mehrere ausführbare Programme im Hauptspeicher sein Beispiele Windows-Betriebssysteme Mac OS Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 306 EIN 10 Einleitung Betriebsarten eines Rechensystems Einleitung Betriebsarten eines Rechensystems Time-Sharing-Betrieb Kombinierte Betriebsarten Prozessor arbeitet im Multiplexbetrieb (mehrere Programme werden abwechselnd stückweise ausgeführt) Beispiele Großrechnerbetriebssysteme Windows NT, Windows 2000, Windows XP Mac OS X (Panther) Mehrzwecksystem (General Purpose System) wichtige Eigenschaften frei programmierbar Dialogbetrieb Mehrprogrammbetrieb Time-Sharing Organisation Mehrbenutzerbetrieb Beispiele Großrechnerbetriebssysteme Private Einbenutzersysteme wichtige Eigenschaften frei programmierbar Dialogbetrieb Mehrprogrammbetrieb (meistens) Time-Sharing Organisation Beispiele Windows 95, Windows 98, Windows NT, Windows 2000, Windows XP Mac OS Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 306 EIN 11 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 306 EIN 12

7 Einleitung Betriebsarten eines Rechensystems Eingebettete Systeme (Embedded Computer System) in Gerät oder System integriertes Programmsystem wichtige Eigenschaften fest programmiert Echtzeitsystem keine Interaktion möglich Beispiele Steuergeräte in der Kraftfahrzeugelektronik Waffensysteme Teilhaberbetrieb wichtige Eigenschaften Beispiele interaktionsfähig nicht programmierbar Time-Sharing Organisation Auskunftssysteme Platzbuchungssysteme Verteilte Systeme (Distributed Systems) oft verwendete Organisationsform Vernetzung von (privaten) Einbenutzersystemen (Work Station) mit Mehrzwecksystemen (Server Station) Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 EIN 13 Laufzeitunterstützung Das Betriebssystem als virtuelle Maschine Laufzeitunterstützung Das Betriebssystem als virtuelle Maschine LAUFZEITUNTERSTÜTZUNG DURCH DIE SYSTEM-SOFTWARE FÜR DIE ANWENDUNGSEBENE Das Betriebssystem als virtuelle Maschine der direkte Umgang der Anwendungsprogramme mit der Hardware ist aus verschiedenen Gründen problematisch die Schnittstellen zu den Geräte-Controllern sind zwar weitgehend standardisiert, aber dennoch unhandlich Koordination des Prozessors mit den Peripheriegeräten die vorhandenen Hardware-Konzepte (Interrupt-Konzept, Polling) führen zu schwer durchschaubaren Software-Strukturen Anwendungsprogramme sollten auf einer höheren Abstraktionsebene programmiert werden resultierende Forderung die Anwendungsebene erhält einen indirekten Hardware-Zugang dieser Zugang wird über eine eigene Dienstschicht realisiert Zielsetzung Bereitstellung einer virtuellen Maschine Realisierung eines komfortablen und sicheren Umgangs mit der Hardware- Schicht Durchführung der erforderlichen Koordinationsaufgaben für einen Mehrbenutzerbetrieb das Betriebssystem kann somit als Dienstschicht aufgefaßt werden, die eine virtuelle Maschine für die Anwendungsschicht realisiert Schutzproblematik bei Mehrbenutzerbetrieb direkter Hardware-Zugriff ist nur über privilegierte Befehle möglich damit kann ein Anwendungsprogramm andere Anwendungsprogramme in beliebiger Form manipulieren oder auch zerstören Abwicklung der Benutzeraktivitäten bei Mehrbenutzerbetrieb der erforderliche Koordinationsaufwand ist ohne ein unterstützendes Programm nicht realisierbar Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 1 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 302 LZU 2

8 Laufzeitunterstützung Laufzeitmodelle Laufzeitunterstützung Laufzeitmodelle Laufzeitmodelle Dienste eines Laufzeitmodells Begriffsdefinition die Dienstschicht stellt eine Menge von Dienstleistungen (auch: Dienste) zur Verfügung innerhalb der Dienstschicht werden Software-Strukturen geschaffen, die Abstraktionen für Hardware-Komponenten darstellen Beispiele Threads als Abstraktionen für den realen Prozessor virtuelle Adreßräume als Abstraktion für den realen Hauptspeicher Dateien als Abstraktion für permanente Speichermedien das Laufzeitmodell eines Betriebssystems die von der Dienstschicht bereitgestellten Abstraktionen stellen einen Rahmen für die Organisation von Anwendungen zur Laufzeit dar ein Laufzeitmodell repräsentiert eine fest definierte Operationenmenge, die Anwendungsprogrammierern und Benutzern zur Verfügung steht Laufzeitmodell = Menge der Abstraktionen der Dienstschicht Überblick die folgenden Dienste sind sehr häufig Bestandteile eines Laufzeitmodells Systembedienung Prozeßinteraktion Datenhaltung Geräteverwaltung Systembedienung Realisierung der interaktiven Benutzungsschnittstelle Bereitstellung einer graphischen Benutzungsoberfläche zur interaktiven Benutzerführung Fenstertechnik Menü-Eingabe Visualisierung von Abstraktionen der Dienstschicht über Symbole (zb Dateien) daneben existiert oft eine textorientierte Kommandosprache Verwendung zur Definition von Stapelverarbeitungsaufträgen Erstellung benutzerdefinierter Kommandos über Kommandodateien Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 3 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 4 Laufzeitunterstützung Laufzeitmodelle Laufzeitunterstützung Laufzeitmodelle Prozeßinteraktion Dienst zur Verwaltung von Benutzeraufträgen (auch Rechenauftrag oder Auftrag (Task, Job) genannt) Benutzeraufträge werden von dem Augenblick ihrer Erzeugung bis zu ihrer Beendigung als Prozesse organisiert ein Prozeß definiert damit eine Arbeitseinheit für den Prozessor die ermöglicht es einem Anwender (in modernen Betriebssystemen), mehrere Prozesse zu einem Zeitpunkt in Arbeit zu haben bessere Auslastung des Prozessors und der Peripheriegeräte Verwaltung des Hauptspeichers welche Bereiche sind belegt, welche frei Verwaltung von Adreßräumen Erzeugen eines Adreßraums Zuteilung von Hauptspeicher an Adreßräume Verdrängung von ganzen Adreßräumen oder Adreßraumteilen in den Hintergrundspeicher Festplatte Löschen von Adreßräumen Realisierung und Kontrolle des Zugriffsschutzes für Adreßräume über diesen Dienst können Prozesse gezielt Informationen austauschen eine weitere Aufgabe besteht in der Prozeßsynchronisation zb beim Zugriff auf gemeinsam genutzte Ressourcen (Speicherbereiche, Drucker, etc) Datenhaltung Aufgabe dieses Dienstes ist die langfristige Aufbewahrung von Daten und Programmen die wichtigste realisierte Abstraktion ist die der Datei Operationen auf Dateien erzeugen löschen create delete öffnen (für eine vorgesehene Bearbeitungsform, zb nur lesender Zugriff) schließen lesen open close read erweitern (dh am Ende Daten hinzufügen) append ändern write der Datenhaltungsdienst bildet die Grundlage zum Aufbau weiterer Dienste zb ein Verzeichnisdienst Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 5 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 6

9 Laufzeitunterstützung Laufzeitmodelle Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Geräteverwaltung Ziel dieses Dienstes ist es, einen komfortablen Zugriff auf Geräte bereitzustellen viele Geräte können aus Anwendersicht als Dateien modelliert werden, zb Drucker, Netzwerkverbindungen die entsprechenden Dateizugriffe werden von der Geräteverwaltung dann in Gerätezugriffe umgesetzt Operationen Gerät öffnen open Gerät schließen close Einlesen von Daten von einem Gerät read Datenausgabe an ein Gerät write für interaktive Geräte (zb Maus, Tastatur) reicht dieser Modellierungsansatz jedoch nicht aus, da diese Ereignisse erzeugen, auf die das Benutzerprogramm (in der Regel) spontan reagieren soll Wichtige Aspekte für die Festlegung eines Laufzeitmodells Fragestellungen Welche Dienstmenge sollte ein Laufzeitmodell mindestens besitzen elementare Dienste? Welche (sinnvollen) elementaren Laufzeitmodelle lassen sich aus den elementaren Diensten aufbauen? Durch welche Dienste können elementare Laufzeitmodelle erweitert werden? Wo werden elementare und erweiterte Dienste realisiert? Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 7 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 8 Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Elementare Dienste unverzichtbare Dienstleistungen für einen Benutzerauftrag (Anwendung, Applikation) Prozessorzuteilung Speicherzuteilung höherwertige Dienste bauen auf diesen Basisdienstleistungen auf Anforderungen an ein Laufzeitsystem, welches diese Dienstleistungen bereitstellt keine Monopolisierung von Ressourcen eine Anwendung (dh der zugeordnete Prozeß) muß daran gehindert werden, soviele Ressouren (hier: Speicher, Prozessorzeit) in Anspruch zu nehmen, daß andere Anwendungen nicht mehr ablaufen können Isolation der Anwendungen untereinander keine unerwünschte wechselseitige Beeinflussung zb Fehler in Anwendung A führt auch zum Absturz der Anwendung B gewollte Interaktionen müssen in kontrollierter Weise möglich sein Wichtige Begriffe sequentielles Programm nebenläufiges Programm sequentieller Prozeß nebenläufiger Prozeß Kernel-Level Thread User-Level Thread Kernel Thread Dienste, die diese Anforderungen realisieren Prozeßinteraktion diese drei Dienste stellen daher geeignete Kandidaten für die Realisierung elementarer Laufzeitsysteme dar Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 9 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 10

10 Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Sequentielles Programm Nebenläufiges Programm ein sequentielles Programm besitzt genau einen Kontrollfluß für zwei (beliebige) Anweisungen bx und by des Quellprogramms gilt: entweder bx wird vor by ausgeführt oder by vor bx es ist nicht vorgesehen, daß bx und by parallel ausgeführt werden, zb auf einer Mehrprozessormaschine bei der Ausführung eines sequentiellen Programms auf einem modernen Mikroprozessor kann es dennoch zu einer parallelen Ausführung der Befehle kommen superskalare Prozessoren der Prozessor hat dann aber vorher analysiert, daß die parallele Ausführung dieselben Ergebnisse liefert, wie die sequentielle Ausführung die meisten Programmiersprachen erlauben nur die Formulierung sequentieller Programme, zb C Pascal auf der Programmiersprachenebene sind mehrere Kontrollflüsse definiert ein Kontrollfluß ist hier eine Folge von sequentiell auszuführenden Anweisungen die Kontrollflüsse dürfen parallel ausgeführt werden auf einer Mehrprozessorarchitektur können die Kontrollflüsse unterschiedlichen Prozessoren zugeordnet und damit parallel ausgeführt werden Nebenläufigkeit eines Programmes die Nebenläufigkeit definiert die maximale Parallelität, die erreichbar ist, wenn eine unbegrenzte Anzahl von Prozessoren zur Verfügung steht Parallelität eines Programms die Parallelität eines Programms ist der tatsächlich erreichte Grad an paralleler Ausführung dieser Parallelitätsgrad ist durch die Anzahl der vorhandenen Prozessoren beschränkt Spezifikation nebenläufiger Programme Verwendung einer Programmiersprache, die entsprechende Sprachkonstrukte anbietet, zb Java die Klasse Thread, die Schnittstelle Runnable Verwendung einer sequentiellen Programmiersprache zusammen mit einer speziellen Bibliothek, die Funktionen zur Spezifikation nebenläufiger Kontrollflüsse bereitstellt, zb C mit der Threads Library von Sun für das Solaris-Betriebssystem Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 11 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 306 LZU 12 Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Sequentieller Prozeß Kernel-Level Threads ein sequentieller Prozeß stellt die Ausführungsumgebung für ein sequentielles Programm zur Verfügung wichtige Bestandteile der Ausführungsumgebung ein Adreßraum das (sequentielle) Maschinenprogramm, das im Adreßraum abgelegt ist ein Aktivitätsträger, der das Programm ausführt Kernel-Level Thread eine Liste der belegten Betriebsmittel (zb geöffnete Dateien) Nebenläufiger Prozeß ein nebenläufiger Prozeß stellt die Ausführungsumgebung für ein nebenläufiges Programm zur Verfügung im Gegensatz zum sequentiellen Prozeß können mehrere Aktivitätsträger zur Verfügung gestellt werden Kernel-Level Threads (KL-Threads) sind die Abstraktion des Betriebssystems für den oder die Prozessoren für die aktuelle Zuordnung der KL-Threads zu dem/den Prozessor/Prozessoren ist innerhalb der der Scheduler zuständig KL-Threads werden auch als Leichtgewichtsprozesse (Lightweight Process, LWP) bezeichnet dieser Begriff wird insbesondere dann verwendet, wenn die Aufgabe der KL-Threads grundsätzlich die Ausführung von Benutzerprogrammen ist User-Level Threads wird für die Spezifikation nebenläufiger Kontrollflüsse ein Thread-Konzept verwendet, so spricht man auch von User-Level Threads UL-Threads über UL-Threads wird die potentielle Parallelität eines Programms definiert Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 13 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 302 LZU 14

11 Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Kernel Threads zusätzlich zu UL- und KL-Threads werden oft noch Kernel-Threads (K- Thread) definiert jeder KL-Thread benötigt dann für seine Ausführung einen K-Thread umgekehrt gibt es aber K-Threads, denen kein KL-Thread zugeordnet ist Ausführung von Aufgaben innerhalb des Betriebssystemkerns ein Betriebssystemkern, der für die Durchführung seiner internen Aufgaben (zb Interrupt-Verarbeitung, Scheduling) mehrere K-Threads verwendet, wird auch als Multithreaded Kernel bezeichnet Beispiel: Solaris diese Struktureigenschaft ist besonders dann wichtig, wenn der Rechner als Server in einer Netzwerkumgebung eingesetzt werden soll Adreßraum Definition eines Adreßraums (Address Space) zusammenhängender Adressenbereich erste Adresse ist 0 aufwärts durchnumeriert adressierte Einheit Speicherwort die Größe eines Speicherwortes ist abhängig vom verwendeten Mikroprozessor typische Werte sind 16, 32 oder 64 Bit Maximalgröße sie ist durch die Adreßbusbreite des verwendeten Mikroprozessors definiert typische Werte sind 32 und 64 Bit damit sind 2 32 bzw 2 64 Speicherwörter adressierbar Anwendung Behälter für die Aufnahme von Programmen und Daten ein Adreßraum stellt die Abstraktion des physischen Speichers dar Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 15 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 16 Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Adreßbereich Physischer Adreßraum Struktur eines Adreßraums in der Regel sind nicht alle Adressen definiert diesen Adressen ist dann kein physischer Speicher zugeordnet ein Zugriff auf eine derartige undefinierte Adresse führt zu einem Laufzeitfehler insbesondere bei 64-Bit-Adreßräumen ist eine vollständige Abbildung auf den physischen Speicher unrealistisch bei einer Zugriffszeit von 50 ns benötigt das Auslesen aller Speicherwörter eines 64-Bit-Adreßraums ca Jahre Definition eines Adreßbereichs (Adreßregion, Address Region, Memory Region, Region) zusammenhängender Bereich innerhalb eines Adreßraums, der keine undefinierten Adressen enthält physischer (physikalischer) Adreßraum einer Hardware-Architektur die Adreßraumgröße ist durch die Adreßbusbreite definiert (siehe oben) die zugeordneten Adreßbereiche sind durch die Adressen und Größen der real vorhandenen Speicherbausteine bestimmt, zb ROM-Bereiche Urlader des Betriebssystems grundlegende Ein-/Ausgabe-Routinen Hauptspeicher Speicherbereiche auf Ein-/Ausgabe-Controllern, zb Pufferbereich auf der Netzwerkkarte Speicher auf der Graphikkarte Pufferbereich auf einem Festplatten-Controller Port-Register der Controller bei Verwendung der Memory-Mapped-IO Beispiel: der Adreßraum eines Prozesses besteht (mindestens) aus folgenden Adreßbereichen Programmbereich: Maschinenprogramm Stack: Abwicklung von Prozedur- bzw Methodenaufrufen Heap: Verwaltung und Speicherung dynamisch erzeugter Datenstrukturen bzw Objekte Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 17 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 18

12 Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Virtueller Adreßraum zentrale Anforderungen an Adreßräume aus der Compiler-Sicht es muß auf jeden Fall ein Adreßbereich enthalten sein, der ab Adresse 0 beginnt Isolation der Adreßräume Schutzfunktion eine Applikation kann nicht (unkontrolliert) auf physische Speicherbereiche zugreifen, die einer anderen Applikation zugeordnet sind beide Anforderungen lassen sich durch das Konzept der virtuellen Adreßräume realisieren eine virtuelle Adresse wird unter Verwendung einer Abbildungsfunktion auf eine physische Adresse abgebildet für jeden Adreßraum existiert eine eigene Abbildungsfunktion dadurch wird erreicht, daß dieselben virtuellen Adressen unterschiedlicher Adreßräume auf unterschiedliche physikalische Adressen abgebildet werden werden physikalische Adressen höchstens einmal verwendet (bezogen auf alle existierenden virtuellen Adreßräume), wird die Isolationsanforderung erfüllt Anwendungsbeispiel eine Funktionsbibliothek wird einmal im Hauptspeicher abgelegt der zugehörige physische Adreßbereich wird in die Adreßräume mehrerer Applikationen eingeblendet Weitere Schutzanforderungen Zugriffsschutz für Adreßbereiche innerhalb eines Adreßraums Berechtigungsklassen Leseberechtigung Schreibberechtigung (enthält die Leseberechtigung) Ausführungsberechtigung die Verletzung einer Zugriffsberechtigung führt zu einem Laufzeitfehler Anwendungsbeispiel das Maschinenprogramm wird einem Adreßbereich mit Ausführungsberechtigung zugeordnet damit wird jeder Versuch, das Maschinenprogramm zur Laufzeit zu ändern zu einem Laufzeitfehler führen selbstmodifizierendem Code Verhinderung von weitere Einsatzmöglichkeiten der Abbildungsfunktionen kontrollierte, gemeinsame Nutzung von physischen Adreßbereichen Adreßbereiche unterschiedlicher Adreßräume werden auf denselben physischen Adreßbereich abgebildet dieses Einblenden von physischen Adreßbereichen kann innerhalb der Adreßräume an denselben oder unterschiedlichen virtuellen Adressen erfolgen Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 306 LZU 19 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 20 Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Laufzeitunterstützung Aspekte für die Festlegung eines Laufzeitmodells Kontrolle des Zugriffsmodus auf Adreßbereiche, die dem Betriebssystemkern zugeordnet sind, darf nur im privilegierten Modus (Supervisor Mode, System Mode) zugegriffen werden auf Adreßbereiche, die den Applikationen zugeordnet sind, kann sowohl im privilegierten wie auch im nicht privilegierten Modus zugegriffen werden dadurch kann der Betriebssystemkern Daten zwischen Applikationsund Betriebssystemadreßraum kopieren Anwendungen Weitergabe von Parametern bei Betriebssystemaufrufen Transport von Nachrichten zwischen isolierten Applikationsadreßräumen unter Kontrolle des Betriebssystemkerns eine Abschottung von Applikationsadreßräumen gegenüber dem Betriebssystemkern wird (üblicherweise) nicht unterstützt damit besitzt ein Programm, das im privilegierten Modus ausgeführt wird (also zb der Betriebssystemkern selbst), potentiell die Fähigkeit, Anwendungsadreßräume auszuspionieren Prozeßinteraktion Wechselwirkungen zwischen Prozessen völlig isolierte Prozesse stellen die Ausnahme dar zwischen Prozessen liegen üblicherweise direkte oder indirekte Wechselwirkungen vor direkte Wechselwirkung Beispiel: Client-Server-Architektur ein Client-Prozeß benötigt eine Dienstleistung von einem Server-Prozeß zb Datenbank-Server, HTTP-Server indirekte Wechselwirkung (mindestens) zwei unabhängige Prozesse benötigen dasselbe, nur exklusiv nutzbare, Betriebsmittel zb Drucker, Festplatte grundlegende Interaktionsmuster Konkurrenz Kooperation Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 21 Betriebssysteme WWI04 F c Prof Dr-Ing Jörg Baumgart V 300 LZU 22

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

B.4. B.4 Betriebssysteme. 2002 Prof. Dr. Rainer Manthey Informatik II 1 Betriebssysteme Betriebssysteme 2002 Prof. Dr. Rainer Manthey Informatik II 1 Bekannte Betriebssysteme Windows 2000 CMS UNIX MS-DOS OS/2 VM/SP BS 2000 MVS Windows NT Solaris Linux 2002 Prof. Dr. Rainer

Mehr

Betriebssysteme Kap A: Grundlagen

Betriebssysteme Kap A: Grundlagen Betriebssysteme Kap A: Grundlagen 1 Betriebssystem Definition DIN 44300 Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften dieser Rechenanlage die Basis der möglichen Betriebsarten

Mehr

^ Springer Vi eweg. Grundkurs Betriebssysteme. Synchronisation, Prozesskommunikation, Virtualisierung. Architekturen, Betriebsmittelverwaltung,

^ Springer Vi eweg. Grundkurs Betriebssysteme. Synchronisation, Prozesskommunikation, Virtualisierung. Architekturen, Betriebsmittelverwaltung, Peter Mandl Grundkurs Betriebssysteme Architekturen, Betriebsmittelverwaltung, Synchronisation, Prozesskommunikation, Virtualisierung 4. Auflage ^ Springer Vi eweg 1 Einführung 1 1.1 Computersysteme 1

Mehr

Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008

Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008 Name: Matrikel-Nr: Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008 Bitte schreiben Sie leserlich und antworten Sie kurz und präzise. 1. Zeichnen Sie das Schichten-Modell eines Computersystems und markieren

Mehr

Inhaltsverzeichnis XII

Inhaltsverzeichnis XII 1 Einführung... 1 1.1 Computersysteme... 1 1.1.1 Einführung... 2 1.1.2 Aufgabe von Betriebssystemen... 3 1.1.3 Grundlegende Hardwaremodelle... 3 1.1.4 CPU-Registersatz... 7 1.1.5 Multicore-Prozessoren

Mehr

Grundkurs Betriebssysteme

Grundkurs Betriebssysteme Grundkurs Betriebssysteme Architekturen, Betriebsmittelverwaltung, Synchronisation, Prozesskommunikation von Peter Mandl 3., akt. und erw. Aufl. 2013 Springer Vieweg Wiesbaden 2012 Verlag C.H. Beck im

Mehr

Rechnernutzung in der Physik. Betriebssysteme

Rechnernutzung in der Physik. Betriebssysteme Rechnernutzung in der Physik Betriebssysteme 1 Betriebssysteme Anwendungsprogramme Betriebssystem Treiber BIOS Direkter Zugriff von Anwenderprogrammen auf Hardware nur in Ausnahmefällen sinnvoll / möglich:

Mehr

5 Speicherverwaltung. bs-5.1 1

5 Speicherverwaltung. bs-5.1 1 5 Speicherverwaltung bs-5.1 1 Pufferspeicher (cache) realer Speicher Primärspeicher/Arbeitsspeicher (memory) Sekundärspeicher/Hintergrundspeicher (backing store) (Tertiärspeicher/Archivspeicher) versus

Mehr

Projekt für Systemprogrammierung WS 06/07

Projekt für Systemprogrammierung WS 06/07 Dienstag 30.01.2007 Projekt für Systemprogrammierung WS 06/07 Von: Hassan Bellamin E-Mail: h_bellamin@web.de Gliederung: 1. Geschichte und Definition 2. Was ist Virtualisierung? 3. Welche Virtualisierungssoftware

Mehr

Architektur Verteilter Systeme Teil 6: Interprozess-Kommunikation

Architektur Verteilter Systeme Teil 6: Interprozess-Kommunikation Architektur Verteilter Systeme Teil 6: Interprozess-Kommunikation 09.05.15 1 Literatur [6-1] http://php.net/manual/de/book.sockets.php [6-2] http://de.wikipedia.org/wiki/socket_(software) [6-3] http://php.net/manual/de/book.network.php

Mehr

Vorlesung: Betriebssysteme

Vorlesung: Betriebssysteme Vorlesung: Betriebssysteme T. Fahringer Institut für f r Informatik Universität t Innsbruck Thomas.Fahringer@uibk.ac.at 1 Kapitel I Betriebssysteme: Aufgaben und Überblick 2 Was ist ein Betriebssystem

Mehr

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

Betriebssystem? Übersicht. Ziele. Grundlagen. Das ist nur die Oberfläche... Wissen, was man unter einem Betriebssystem versteht Betriebssysteme Grundlagen Quellen: InSy Folien zum Thema Unix/Linux Wikipedia Das ist nur die Oberfläche... 1 Ziele 2 Übersicht Wissen, was man unter einem Betriebssystem versteht Was Was ist istein einbetriebssystem?

Mehr

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

Kapitel I Betriebssysteme: Aufgaben und Überblick Betriebssysteme: VO Betriebssysteme 2 Vorlesung: Betriebssysteme T. Fahringer Institut für Informatik Universität Innsbruck VO Betriebssysteme Thomas.Fahringer@uibk.ac.at 1 Kapitel I Betriebssysteme: Aufgaben und Überblick VO Betriebssysteme

Mehr

William Stallings. Betriebssysteme. Prinzipien und Umsetzung. 4., überarbeitete Auflage. Pearson Studium

William Stallings. Betriebssysteme. Prinzipien und Umsetzung. 4., überarbeitete Auflage. Pearson Studium William Stallings Betriebssysteme Prinzipien und Umsetzung 4., überarbeitete Auflage Pearson Studium ein Imprint der Pearson Education Deutschland GmbH Inhaltsverzeichnis Vorwort Leitfaden für den Leser

Mehr

Kapitel 2. Betriebssysteme

Kapitel 2. Betriebssysteme Systeme 1 Kapitel 2 Betriebssysteme WS 2009/10 1 Übersicht Aufgabe von Betriebssystemen Historische Entwicklung von Betriebssystemen Unterschiedliche Arten von Betriebssystemen Komponenten und Konzepte

Mehr

Die L4-Mikrokern. Mikrokern-Familie. Hauptseminar Ansätze für Betriebssysteme der Zukunft. Michael Steil. Michael Steil 18.04.2002

Die L4-Mikrokern. Mikrokern-Familie. Hauptseminar Ansätze für Betriebssysteme der Zukunft. Michael Steil. Michael Steil 18.04.2002 Die L4-Mikrokern Mikrokern-Familie Hauptseminar Ansätze für Betriebssysteme der Zukunft 18.04.2002 Folie 1 Aufbau des Vortrags 1. Mikrokerne: Idee und Geschichte 2. L4: ein schneller Mikrokern 3. L4Linux:

Mehr

Hardware Virtualisierungs Support für PikeOS

Hardware Virtualisierungs Support für PikeOS Virtualisierungs Support für PikeOS Design eines Virtual Machine Monitors auf Basis eines Mikrokernels Tobias Stumpf SYSGO AG, Am Pfaenstein 14, 55270 Klein-Winternheim HS Furtwangen, Fakultät Computer

Mehr

Blätter zur Vorlesung Sommersemester 2004. Betriebssysteme. Prof. Dr. P. Schulthess Dr. M. Schöttner & al.

Blätter zur Vorlesung Sommersemester 2004. Betriebssysteme. Prof. Dr. P. Schulthess Dr. M. Schöttner & al. Blätter zur Vorlesung Sommersemester 2004 Betriebssysteme Prof. Dr. P. Schulthess Dr. M. Schöttner & al. Verteilte Systeme, Informatik, Universität Ulm 1. Vorschau 1.1 Einordnung & Organisation Voraussetzungen:

Mehr

5. Threads, Serverprozesse und Benachrichtigungen

5. Threads, Serverprozesse und Benachrichtigungen 5. Threads, Serverprozesse und Benachrichtigungen Threads allgemein Threads in Android: Handler und Messages Services: Local, Remote, Binding Benachrichtigungen Entwicklung mobiler Anwendungen Europäische

Mehr

White Paper. Embedded Treiberframework. Einführung

White Paper. Embedded Treiberframework. Einführung Embedded Treiberframework Einführung White Paper Dieses White Paper beschreibt die Architektur einer Laufzeitumgebung für Gerätetreiber im embedded Umfeld. Dieses Treiberframework ist dabei auf jede embedded

Mehr

C. Betriebssystem-Strukturen C.1 Monolithische Betriebssysteme

C. Betriebssystem-Strukturen C.1 Monolithische Betriebssysteme C. Betriebssystem-Strukturen C.1 Monolithische Betriebssysteme Sammlung von Routinen, ohne Hierarchie, Kapselung und Schichtung. Jede Prozedur kann beliebige andere Prozeduren aufrufen und Datenstrukturen

Mehr

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

Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme Maren Bennewitz 1 Überblick Betriebssysteme Aufgabe von Betriebssystemen Historische Entwicklung von Betriebssystemen Unterschiedliche Arten

Mehr

Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ. Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung

Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ. Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung Zusammenfassung Kapitel 4 Dateiverwaltung 1 Datei logisch zusammengehörende Daten i.d.r. permanent

Mehr

Dämon-Prozesse ( deamon )

Dämon-Prozesse ( deamon ) Prozesse unter UNIX - Prozessarten Interaktive Prozesse Shell-Prozesse arbeiten mit stdin ( Tastatur ) und stdout ( Bildschirm ) Dämon-Prozesse ( deamon ) arbeiten im Hintergrund ohne stdin und stdout

Mehr

Grundlagen der Informatik. Teil VI Betriebssysteme

Grundlagen der Informatik. Teil VI Betriebssysteme Grundlagen der Informatik Teil VI Betriebssysteme Seite 1 Definition nach DIN: Unter Betriebssystem versteht man alle Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften der Rechenanlage

Mehr

User Level Device Driver am Beispiel von TCP

User Level Device Driver am Beispiel von TCP September 17, 2004 Einleitung Motivation für Userlevel Device Driver Probleme von Userlevel Device Driver Motivation für Userlevel Device Driver Modularität, leichterer Austausch/Erneuerung von Komponenten.

Mehr

Proseminar Technische Informatik A survey of virtualization technologies

Proseminar Technische Informatik A survey of virtualization technologies Proseminar Technische Informatik A survey of virtualization technologies Referent: Martin Weigelt Proseminar Technische Informatik - A survey of virtualization technologies 1 Übersicht 1. Definition 2.

Mehr

Rechnerarchitektur und Betriebssysteme (CS201): Semaphor, Monitor, Deadlocks, Re-Entrance

Rechnerarchitektur und Betriebssysteme (CS201): Semaphor, Monitor, Deadlocks, Re-Entrance Rechnerarchitektur und Betriebssysteme (CS201): Semaphor, Monitor, Deadlocks, Re-Entrance 5. November 2013 Prof. Dr. Christian Tschudin Departement Mathematik und Informatik, Universität Basel Repetition

Mehr

Task A Zündung. Task B Einspritzung. Task C Erfassung Pedalwert. J. Schäuffele, Th. Zurawka: Automotive Software Engineering, Vieweg, 2003

Task A Zündung. Task B Einspritzung. Task C Erfassung Pedalwert. J. Schäuffele, Th. Zurawka: Automotive Software Engineering, Vieweg, 2003 Task! evt. parallel zu bearbeitende Ausführungseinheit! Beispiel: Task A Zündung Task B Einspritzung Task C Erfassung Pedalwert Zeit t J. Schäuffele, Th. Zurawka:, Vieweg, 2003 Echtzeitbetriebssysteme

Mehr

IT-Sicherheit. Informationssicherheit: IT-Sicherheit bzw. IT-Risikomanagement

IT-Sicherheit. Informationssicherheit: IT-Sicherheit bzw. IT-Risikomanagement IT-Sicherheit Informationssicherheit: Schutz aller Informationen im Unternehmen elektronisch gespeicherte Daten Informationen in nichtelektronischer Form z.b. auf Papier Expertenwissen, in den Köpfen der

Mehr

1.2 Entwicklungsgeschichte

1.2 Entwicklungsgeschichte 1.2 Entwicklungsgeschichte Begriff Operating System wurde in den 60er Jahren in den USA geprägt und in Deutschland als Betriebssystem übernommen. Zunächst später dann dazu Stapelbetrieb, Teilnehmerbetrieb,

Mehr

Einführung in die Informationstechnik. II Einführung in Betriebssysteme

Einführung in die Informationstechnik. II Einführung in Betriebssysteme Einführung in die Informationstechnik II Einführung in Betriebssysteme 2 Übersicht Themen Betriebssysteme allgemein Microsoft Windows Unix am Beispiel Linux Bedienoberfläche von Linux Unix am Beispiel

Mehr

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

A Kompilieren des Kernels... 247. B Lineare Listen in Linux... 251. C Glossar... 257. Interessante WWW-Adressen... 277. Literaturverzeichnis... 1 Einführung................................................ 1 1.1 Was ist ein Betriebssystem?............................... 1 1.1.1 Betriebssystemkern................................ 2 1.1.2 Systemmodule....................................

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Systeme 1. Kapitel 10. Virtualisierung

Systeme 1. Kapitel 10. Virtualisierung Systeme 1 Kapitel 10 Virtualisierung Virtualisierung Virtualisierung: Definition: Der Begriff Virtualisierung beschreibt eine Abstraktion von Computerhardware hin zu einer virtuellen Maschine. Tatsächlich

Mehr

Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06

Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06 Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06 Block Verteilte Systeme und Middleware 1. Beschreiben Sie die Entwicklung verteilter Systeme von einer Zentralisierung bis zu Peer-to-Peer. Nicht

Mehr

Einführung in COM. 04.04.2006 Seite 1

Einführung in COM. 04.04.2006 Seite 1 Einführung in COM 04.04.2006 Seite 1 Ziele Sie kennen die Funktion der Registry für COM Sie können die Struktur eines COM-Objekts erklären Sie können erklären, wie ein remote-server gestartet wird 04.04.2006

Mehr

Betriebssysteme. Einführung. Ziele und Ablauf der Vorlesung:

Betriebssysteme. Einführung. Ziele und Ablauf der Vorlesung: Einführung 1 Ziele Ziele und Ablauf der Vorlesung: Ziele: Vermittlung von Grundwissen für den Umgang mit gängigen Rechnern und n zur leichteren Einarbeitung in neue über Basistechniken im Internet In der

Mehr

Steffen Heinzl Markus Mathes. Middleware in Java

Steffen Heinzl Markus Mathes. Middleware in Java Steffen Heinzl Markus Mathes Middleware in Java Leitfaden zum Entwurf verteilter Anwendungen - Implementierung von verteilten Systemen über JMS - Verteilte Objekte über RMI und CORBA Mit 50 Abbildungen

Mehr

Client/Server-Systeme

Client/Server-Systeme Fachbereich Informatik Projektgruppe KOSI Kooperative Spiele im Internet Client/Server-Systeme Vortragender Jan-Ole Janssen 26. November 2000 Übersicht Teil 1 Das Client/Server-Konzept Teil 2 Client/Server-Architekturen

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Kapitel 2 Betriebssysteme. Für den Rechnerbetrieb notwendige Basissoftware

Kapitel 2 Betriebssysteme. Für den Rechnerbetrieb notwendige Basissoftware Für den Rechnerbetrieb notwendige Basissoftware 1 1. Einleitung 2. Prozessverwaltung 3. Dateiverwaltung 2 1. Einleitung Was ist ein Betriebssystem? Wikipedia: Ein Betriebssystem (engl. Operating System

Mehr

Military Air Systems

Military Air Systems Trennung von Applikationen unterschiedlicher Kritikalität in der Luftfahrt durch Software en am Beispiel des Real-time Operating Systems PikeOS Dr. Bert Feldmann DGLR Workshop Garching, 09.10.2007 Seite

Mehr

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

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 Verarbeitungsgrundlagen Teil 2 Virtual Storage el0100 copyright

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

3. Betriebssystemorganisation

3. Betriebssystemorganisation 3. Betriebssystemorganisation 3.1 Monolithische Betriebssysteme Sammlung von Routinen, ohne Hierarchie, Kapselung und Schichtung. Jede Prozedur kann beliebige andere aufrufen und Datenstrukturen ändern.

Mehr

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2008/2009

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2008/2009 PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 1 PIWIN I Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I Vorlesung 3 SWS WS 2008/2009 FB Informatik

Mehr

Virtualisierung ein Überblick

Virtualisierung ein Überblick Virtualisierung ein Überblick Frank Hofmann Potsdam 18. April 2007 Frank Hofmann (Potsdam) Virtualisierung ein Überblick 18. April 2007 1 / 33 Gedanken zum Thema Fragen, die sich jeder stellt Virtualisierung

Mehr

Programme werden durch den Ablauf eines oder mehrerer Prozesse (engl.: process, task) von einem Rechner abgearbeitet.

Programme werden durch den Ablauf eines oder mehrerer Prozesse (engl.: process, task) von einem Rechner abgearbeitet. Prozessverwaltung Prozesse Programme werden durch den Ablauf eines oder mehrerer Prozesse (engl.: process, task) von einem Rechner abgearbeitet. Prozesse sind Abfolgen von Aktionen, die unter Kontrolle

Mehr

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

Betriebssysteme. 4y Springer. Eine kompakte Einführung mit Linux. Albrecht Achilles. Mit 31 Abbildungen Albrecht Achilles 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Betriebssysteme Eine kompakte Einführung mit Linux

Mehr

6.Vorlesung Betriebssysteme Hochschule Mannheim

6.Vorlesung Betriebssysteme Hochschule Mannheim Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 1/40 6.Vorlesung Betriebssysteme Hochschule Mannheim Christian Baun Karlsruher Institut für Technologie Steinbuch Centre for Computing

Mehr

8.4 Das Andrew File System 393 8.5 Ausblicke 404 8.6 Zusammenfassung 410 Übungen 411

8.4 Das Andrew File System 393 8.5 Ausblicke 404 8.6 Zusammenfassung 410 Übungen 411 Inhaltsverzeichnis Vorwort 11 Aufgabenbereiche und Leserschaft 11 Aufbau dieses Buches 12 Literatur 12 Änderungen in dieser Auflage 13 Danksagungen 14 Web-Site 14 Kapitel 1 Charakteristische Eigenschaften

Mehr

ANDROID. Analyse der Android Plattform. Andre Rein, Johannes Florian Tietje. 28. Oktober 2010. FH-Gieÿen-Friedberg Android Praktikum

ANDROID. Analyse der Android Plattform. Andre Rein, Johannes Florian Tietje. 28. Oktober 2010. FH-Gieÿen-Friedberg Android Praktikum Analyse der Android Plattform Andre Rein, Johannes Florian Tietje FH-Gieÿen-Friedberg Android Praktikum 28. Oktober 2010 Topics 1 Übersicht Android Plattform Application Framework Activities und Services

Mehr

Prozesse und Scheduling

Prozesse und Scheduling Betriebssysteme für Wirtschaftsinformatiker SS04 KLAUSUR Vorbereitung mit Lösungen / Blatt 1 Prozesse und Scheduling Aufgabe 1 : Scheduling Gegeben seien die folgenden Prozesse und die Längen des jeweiligen

Mehr

software TECHNISCHE KAUFLEUTE UND HWD

software TECHNISCHE KAUFLEUTE UND HWD software TECHNISCHE KAUFLEUTE UND HWD Was ist Software? Definition. Die Gesamtheit der auf einem Computer laufenden Programme mit den dazu gehörigen Daten nennt man S. Kernstücke von Programmen sind Algorithmen,

Mehr

Beschreiben Sie stichwortartig, was die folgenden Kommandos bewirken.

Beschreiben Sie stichwortartig, was die folgenden Kommandos bewirken. Betriebssysteme: Auswahl alter Klausuraufgaben Seite 1 Beschreiben Sie stichwortartig, was die folgenden Kommandos bewirken. a) sort < MeineDatei.txt > MeineDateiSort.txt b) find / -type d \( -name man

Mehr

Zur Erinnerung: Threads. Threadverwaltung. Threads: Prioritäten. Beispiel Flugbuchungsprogramm. Nichtdeterminismus

Zur Erinnerung: Threads. Threadverwaltung. Threads: Prioritäten. Beispiel Flugbuchungsprogramm. Nichtdeterminismus Zur Erinnerung: Threads Programmierung (fortgeschrittene Konzepte) Threads, Monitore, Semaphore und speisende en Wolf-Ulrich Raffel (uli@wuraffel.de) Möglichkeiten, Threads zu definieren Bildung einer

Mehr

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

Entwicklung eines Mac OS X Treibers für eine PCI-VME Interface Karte Entwicklung eines Mac OS X Treibers für eine PCI-VME Interface Karte Matthias Lange Informatikstudent, TU-Dresden 27. September 2005 http://www.matze-lange.de Warum entwickelt jemand einen Treiber für

Mehr

Windows Vista Windows Phone 7

Windows Vista Windows Phone 7 Windows Vista Windows Phone 7 Softwarearchitekturen Referent: Frank Urrigshardt Übersicht Windows Vista Historische Entwicklung Programmierung NT Programmierschnittstelle Win32 Programmierschnittstelle

Mehr

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

Betriebssysteme eine Einführung. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at 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

Mehr

COMMON OBJECT REQUEST BROKER ARCHITECTURE. Dmytro Pyvovar Otto-von-Guericke Universität Magdeburg

COMMON OBJECT REQUEST BROKER ARCHITECTURE. Dmytro Pyvovar Otto-von-Guericke Universität Magdeburg COMMON OBJECT REQUEST BROKER ARCHITECTURE Dmytro Pyvovar Otto-von-Guericke Universität Magdeburg Gliederung Motivation Was ist CORBA? Object Management Architecture (OMA ) Interface Definition Language

Mehr

Betriebssystem-basierte Virtualisierung

Betriebssystem-basierte Virtualisierung Betriebssystem-basierte Virtualisierung Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2011/2012 Betriebssystem-basierte Virtualisierung

Mehr

Timo Wagner & Sebastian Kühn Entwurf einer Multi-Tier Anwendung in ASP.NET

Timo Wagner & Sebastian Kühn Entwurf einer Multi-Tier Anwendung in ASP.NET Timo Wagner & Sebastian Kühn Entwurf einer Multi-Tier Anwendung in ASP.NET Überblick 1.Einfürung in die Multi-Tier Architektur 2.Ausgangspunkt und Probleme 3.Rundgang durch die Architektur 4.Architektur

Mehr

RTEMS- Echtzeitbetriebssystem

RTEMS- Echtzeitbetriebssystem RTEMS- Echtzeitbetriebssystem Name: Hussein Hammoud Matrikel- Nr.: 230768 Studiengang: Technische Informatik Fach: Projekt Eingebettete Kommunikation Technische Universität Berlin Sommersemester 2006 RTEMS-

Mehr

Uberlegungen Einsatzgebiete Virtualisierungslosungen Fazit Hardwarevirtualisierung. Virtualisierung. Christian Voshage. 11.

Uberlegungen Einsatzgebiete Virtualisierungslosungen Fazit Hardwarevirtualisierung. Virtualisierung. Christian Voshage. 11. slosungen 11. Mai 2009 Inhaltsverzeichnis Uberlegungen slosungen 1 Uberlegungen Grunduberlegungen Vorteile Hardware-Emulation Nachteile 2 Servervirtualisierung Clientvirtualisierung 3 slosungen 4 5 Uberlegungen

Mehr

B.5 Prozessverwaltung B.5. Prozessverwaltung. 2002 Prof. Dr. Rainer Manthey Informatik II 1

B.5 Prozessverwaltung B.5. Prozessverwaltung. 2002 Prof. Dr. Rainer Manthey Informatik II 1 Prozessverwaltung Prozessverwaltung 2002 Prof. Dr. Rainer Manthey Informatik II 1 Prozesse Programme werden durch den Ablauf eines oder mehrerer Prozesse (engl.: process, task) ) von einem Rechner abgearbeitet.

Mehr

Komponenten- und ereignisorientierte Softwareentwicklung am Beispiel von Borland-Delphi

Komponenten- und ereignisorientierte Softwareentwicklung am Beispiel von Borland-Delphi Komponenten- und ereignisorientierte Softwareentwicklung am Beispiel von Borland-Delphi Dr. Henry Herper Otto-von-Guericke-Universität Magdeburg Institut für Simulation und Graphik Lisa-Weiterbildung -

Mehr

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java Willkommen zur Vorlesung Objektorientierte Programmierung Vertiefung - Java Zum Dozenten Mein Name: Andreas Berndt Diplom-Informatiker (TU Darmstadt) Derzeit Software-Entwickler für Web- Applikationen

Mehr

JMangler. Frithjof Kurtz. Universität Bonn, Seminar Softw aretechnologie WS 03/04, Jmangler Frithjof Kurtz 1

JMangler. Frithjof Kurtz. Universität Bonn, Seminar Softw aretechnologie WS 03/04, Jmangler Frithjof Kurtz 1 JMangler Frithjof Kurtz Universität Bonn, Seminar Softw aretechnologie WS 03/04, Jmangler Frithjof Kurtz 1 JMangler Vortragsgliederung Motivation Java Grundlagen JMangler Grundlagen Transformationen Algorithmen

Mehr

Einführung in die OPC-Technik

Einführung in die OPC-Technik Einführung in die OPC-Technik Was ist OPC? OPC, als Standartschnittstelle der Zukunft, steht für OLE for Process Control,und basiert auf dem Komponentenmodel der Firma Microsoft,dem Hersteller des Betriebssystems

Mehr

Kapitel 2: Betriebssysteme

Kapitel 2: Betriebssysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009 Vorlesung: Dr. Peer Kröger Übungen:

Mehr

Themenfelder. programmierung programme aufrufe funktionen. UNIX-ähnlicher

Themenfelder. programmierung programme aufrufe funktionen. UNIX-ähnlicher Themenfelder SoS i System programmierung programme aufrufe funktionen in C UNIX-ähnlicher Betriebssysteme SoS ii Datenbanksysteme SoS iii Softwaretechnik 2 Einleitung SoS i, c 2004 wosch [Einleitung.tex,v

Mehr

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

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 Verarbeitungsgrundlagen Teil 3 Betriebssystem Überwacher

Mehr

Betriebssysteme. Vorlesungsskript WS 2001/2002. Version vom 15. Oktober 2001. Fachbereich Mathematik/Informatik Universität Osnabrück

Betriebssysteme. Vorlesungsskript WS 2001/2002. Version vom 15. Oktober 2001. Fachbereich Mathematik/Informatik Universität Osnabrück Betriebssysteme Vorlesungsskript WS 2001/2002 Jürgen Schönwälder Version vom 15. Oktober 2001 Fachbereich Mathematik/Informatik Universität Osnabrück Vorwort Betriebssysteme sind notwendig, um auf einer

Mehr

Hardware- und Software-Anforderungen IBeeS.ERP

Hardware- und Software-Anforderungen IBeeS.ERP Hardware- und Software-Anforderungen IBeeS.ERP IBeeS GmbH Stand 08.2015 www.ibees.de Seite 1 von 8 Inhalt 1 Hardware-Anforderungen für eine IBeeS.ERP - Applikation... 3 1.1 Server... 3 1.1.1 Allgemeines

Mehr

Smartphone Entwicklung mit Android und Java

Smartphone Entwicklung mit Android und Java Smartphone Entwicklung mit Android und Java predic8 GmbH Moltkestr. 40 53173 Bonn Tel: (0228)5552576-0 www.predic8.de info@predic8.de Was ist Android Offene Plattform für mobile Geräte Software Kompletter

Mehr

Programmierung. Programme, Compiler, virtuelle Maschinen, Java

Programmierung. Programme, Compiler, virtuelle Maschinen, Java Programmierung Programme, Compiler, virtuelle Maschinen, Java Programme Ein Programm ist eine Folge von Anweisungen, die einem Computer sagen, was er tun soll tuwas.c for(int i=0; i=0; i

Mehr

Rechnerarchitektur. 11. Betriebssysteme und Prozesse. Inhalt. Ziele von Betriebssystemen. Betriebssystemkomponenten. Betriebssystemkomponenten

Rechnerarchitektur. 11. Betriebssysteme und Prozesse. Inhalt. Ziele von Betriebssystemen. Betriebssystemkomponenten. Betriebssystemkomponenten Inhalt Rechnerarchitektur 11. e und Soft- und eines Rechners Ziele von en komponenten dienste und -funktionen Mehrprogrammbetrieb Dateisysteme Ein-/Ausgabe architekturen Monolithische Systeme Geschichtete

Mehr

Mobile Application Development

Mobile Application Development Mobile Application Development Android: Einführung Jürg Luthiger University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems Lernziele Der/die Kursbesucher/in kann

Mehr

1.1 Zweck. Betriebssysteme. Was leistet ein Betriebssystem? -> Zwei Grundfunktionen:

1.1 Zweck. Betriebssysteme. Was leistet ein Betriebssystem? -> Zwei Grundfunktionen: 1.1 Zweck Was leistet ein Betriebssystem? -> Zwei Grundfunktionen: Erweiterte Maschine: - verbirgt viele kleine, applikationsunabhängige Teilfunktionen - kann einfacher benutzt, d.h. auch programmiert

Mehr

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008 PIWIN I Kap. 7 Objektorientierte Programmierung - Einführung 1 PIWIN I Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I Vorlesung 3 SWS WS 2007/2008 FB Informatik

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick Vorlesung Objektorientierte Softwareentwicklung Sommersemester este 2008 Kapitel 0. Java-Überblick Was sind die Ziele? Warum Java? Komplexe Anwendungen e-business verteilt zuverlässig sicher mobil persistent

Mehr

2 Virtualisierung mit Hyper-V

2 Virtualisierung mit Hyper-V Virtualisierung mit Hyper-V 2 Virtualisierung mit Hyper-V 2.1 Übersicht: Virtualisierungstechnologien von Microsoft Virtualisierung bezieht sich nicht nur auf Hardware-Virtualisierung, wie folgende Darstellung

Mehr

Betriebssystem-Architekturen. Prof. Dr. Margarita Esponda Freie Universität Berlin

Betriebssystem-Architekturen. Prof. Dr. Margarita Esponda Freie Universität Berlin Betriebssystem-Architekturen Prof. Dr. Margarita Esponda Freie Universität Berlin Betriebssystem-Architekturen Monolithische Systeme Mikrokernel-Architekturen Hybride-Architekturen Systeme mit Objektorientierten

Mehr

6. Tutorium zu Softwaretechnik I

6. Tutorium zu Softwaretechnik I 6. Tutorium zu Softwaretechnik I Parallelität und Testen Michael Hoff 01.07.2014 INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

1. Java Grundbegriffe

1. Java Grundbegriffe 1. Java Grundbegriffe Geschichte von Java Programmieren mit Java Interpretieren vs. Kompilieren Java Byte-Code Jave Virtual Machine Arbeitsmaterialien Allgemeine Informatik 2 SS09 Folie 1.1 Java, eine

Mehr

2.2 Rechnerorganisation: Aufbau und Funktionsweise

2.2 Rechnerorganisation: Aufbau und Funktionsweise 2.2 Rechnerorganisation: Aufbau und Funktionsweise é Hardware, Software und Firmware é grober Aufbau eines von-neumann-rechners é Arbeitsspeicher, Speicherzelle, Bit, Byte é Prozessor é grobe Arbeitsweise

Mehr

Dynamische Skalierbarkeit

Dynamische Skalierbarkeit Alexander Eichhorn Verteilte Systeme und Betriebssysteme Technische Universität Ilmenau Frühjahrstreffen der GI Fachgruppe Betriebssysteme 30. Juni 2005 Koblenz Vortragsüberblick Teil 1 Teil 2 Teil 3 Begriffsbestimmungen

Mehr

Basiskurs paedml Linux 6-2. Grundlagen der Virtualisierungstechnik INHALTSVERZEICHNIS

Basiskurs paedml Linux 6-2. Grundlagen der Virtualisierungstechnik INHALTSVERZEICHNIS INHALTSVERZEICHNIS 2.Grundlagen der Virtualisierungstechnik...3 2.1.Strukturen in virtualisierten Systemen...3 2.2.Der Host...7 2.2.1.Die virtuellen Maschinen...7 2.3.Die Virtualisierungssoftware VMware

Mehr

staffitpro WEB Produkte und Lizenzen (Kauf) (Ergänzung zu Allgemeine Geschäftsbedingungen audeosoft GmbH staffitpro Web-Kauf )

staffitpro WEB Produkte und Lizenzen (Kauf) (Ergänzung zu Allgemeine Geschäftsbedingungen audeosoft GmbH staffitpro Web-Kauf ) staffitpro WEB Produkte und Lizenzen (Kauf) (Ergänzung zu Allgemeine Geschäftsbedingungen audeosoft GmbH staffitpro Web-Kauf ) Verantwortlich für den Inhalt: audeosoft GmbH, Kreuzberger Ring 44a, 65205

Mehr

Java Virtual Machine (JVM) Bytecode

Java Virtual Machine (JVM) Bytecode Java Virtual Machine (JVM) durch Java-Interpreter (java) realisiert abstrakte Maschine = Softwareschicht zwischen Anwendung und Betriebssystem verantwortlich für Laden von Klassen, Ausführen des Bytecodes,

Mehr

Der SUN-Pool. 64 Arbeitsplätze, reine Terminals

Der SUN-Pool. 64 Arbeitsplätze, reine Terminals Der SUN-Pool 64 Arbeitsplätze, reine Terminals 4 SUN-Server (SUN-Fire oder Enterprise) {alexander,delenn,ivanova,winter}.babylon.cs.uni-potsdam.de, vollkommen symmetrisch installiert; verwalten dasselbe

Mehr

Fachreferat. EFI -BIOS Nachfolger-

Fachreferat. EFI -BIOS Nachfolger- Fachreferat EFI -BIOS Nachfolger- Kurzerläuterung Übersicht EFI - Geschichte Aufbau und Vorteile Grafische Veranschaulichung Was passiert beim direkten einschalten eines Computers? Wie kommt die Intelligenz

Mehr

Grundlagen der Parallelisierung

Grundlagen der Parallelisierung Grundlagen der Parallelisierung Philipp Kegel, Sergei Gorlatch AG Parallele und Verteilte Systeme Institut für Informatik Westfälische Wilhelms-Universität Münster 3. Juli 2009 Inhaltsverzeichnis 1 Einführung

Mehr

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. Java Connection Architecture Teil 3

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. Java Connection Architecture Teil 3 UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 Java Connection Architecture Teil 3 CICS Transaction Gateway el0100 copyright W. G. Spruth,

Mehr

0. Einführung. C und C++ (CPP)

0. Einführung. C und C++ (CPP) C und C++ (CPP) 0. Einführung Prof. Dr. Marc Rennhard Institut für angewandte Informationstechnologie InIT ZHAW Zürcher Hochschule für Angewandte Wissenschaften marc.rennhard@zhaw.ch Marc Rennhard, 05.01.2010,

Mehr

Dynamische Web-Anwendung

Dynamische Web-Anwendung Dynamische Web-Anwendung Christiane Lacmago Seminar Betriebssysteme und Sicherheit Universität Dortmund WS 02/03 Gliederung Einleitung Definition und Erläuterung Probleme der Sicherheit Ziele des Computersysteme

Mehr

Filesystem in Userspace. Jens Spiekermann

Filesystem in Userspace. Jens Spiekermann Filesystem in Userspace Jens Spiekermann Aufbau Was ist FUSE? Grundlagen Wie funktioniert FUSE? Eigenschaften Vorteile Nachteile Wofür kann man FUSE nutzen? Wie wird FUSE benutzt? Abschluss Quellen 2/23

Mehr