Betriebssysteme Wintersemester 2005/06

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Betriebssysteme Wintersemester 2005/06"

Transkript

1 Betriebssysteme Wintersemester 2005/06 Vorlesung 4 CPU Scheduling Dr. Oliver Waldhorst Rechnernetze und verteilte Systeme Universität Leipzig Fahrplan Nr Datum Thema Organisation der Vorlesung, Einführung in die Betriebssysteme Strukturen von Betriebssystemen Prozesse und Threads CPU Scheduling Synchronisation von Prozessen Deadlocks Speicherverwaltung Virtueller Speicher Dateisystem Schnittstelle Rechnernetze und verteilte Systeme O. Waldhorst Betriebssysteme WS 05/06 2 Inhalt Grundlegende Konzepte Scheduling-Kriterien Scheduling-Algorithmem Mehrfachprozessor-Scheduling Real-Time-Scheduling Algorithmen-Bewertung Exkurs: Java-Threads und -Scheduling Grundlegende Konzepte CPU Scheduling ist die Basis jedes Betriebssystems mit Unterstüzung von Multiprogramming optimale Nutzung der CPU CPU-I/O Burst Cycle Ausführung eines Prozesses besteht aus Zyklen, die sich jeweils aus Bearbeitung durch CPU und Warten auf E/A (I/O Wait) zusammensetzen O. Waldhorst Betriebssysteme WS 05/06 3 O. Waldhorst Betriebssysteme WS 05/06 4

2 Histogramm von CPU-Burst Zeiten Die Verteilung der Längen von CPU- Bursts kann gemessen werden Wie häufig kommt eine Burst-Länge vor? Oft gibt es große Unterschiede zwischen Systemen Modellierbar durch (Hyper-)Exponential- Verteilung CPU Scheduler Wählt unter den im Hauptspeicher befindlichen und zur Ausführung bereit stehenden Prozessen einen aus und ordnet die CPU diesem zu PCB der Prozesse sind in Bereit-Warteschlange Je nach Scheduling Algorithmus nicht unbedingt First-In- First-Out (FIFO) Reihenfolge CPU-Scheduling-Entscheidungen finden statt: 1. Ein Prozess wechselt vom running- in den wait-zustand 2. Ein Prozess wechselt vom running- in den ready-zustand 3. Ein Prozess wechselt vom wait- in den ready-zustand 4. Ein Prozess wird beendet O. Waldhorst Betriebssysteme WS 05/06 5 O. Waldhorst Betriebssysteme WS 05/06 6 CPU Scheduler Scheduling unter Berücksichtigung nur von Punkt 1 und 4 nennt man nicht-präemtiv (non-preemptive) Hier hat der Scheduler keine Wahl! Keine besondere Hardware (Timer, ) erforderlich Bsp.: Windows 3.1, früher Apple Macintosh Scheduling unter Berücksichtigung aller Punkte nennt man präemptiv (preemptive) Schwierigkeiten: Was passiert während Systemaufrufen? Synchronisation der Zugriffe auf gemeinsame Datenstrukturen Dispatcher Überträgt die Kontrolle über die CPU an den vom Short-Term Scheduler ausgewählten Prozess Aufgabe: Kontextwechsel Wechsel in Benutzer-Modus (User Mode) Sprung an die entsprechende Adresse im Nutzerprogramm um das Programmablauf wieder aufzunehmen Dispatch latency Zeit die der Dispatcher benötigt um einen Prozess anzuhalten und einen anderen zu starten O. Waldhorst Betriebssysteme WS 05/06 7 O. Waldhorst Betriebssysteme WS 05/06 8

3 Scheduling-Kriterien Es existieren viele Kriterien zur Bewertung von Scheduling-Algorithmen Die Auswahl der Kriterien bestimmt den am besten geeigneten Algorithmus Kriterien sind CPU-Auslastung (CPU Utilization) Prozentuale Zeit, die die CPU mit der Ausführung von Prozessen verbringt Durchsatz (Throughput) Anzahl der Prozesse, deren Ausführung innerhalb einer Zeiteinheit abgeschlossen wird Zeit zur Fertigstellung (Turnaround Time) Zeitbedarf für die Ausführung eines Prozesses Wartezeit (Waiting Time) Zeit die ein Prozess in der Bereit-Warteschlange verbringt Antwortzeit (Response time) Zeit die seit dem Start eines Prozesses bis zu dessen ersten Antwort vergeht (time-sharing Umgebung) Optimierungskriterien Ein optimaler Scheduling-Algorithums sollte erreichen: Maximale CPU Auslastung Maximalen Durchsatz Minimale Zeit zur Fertigstellung Minimale Wartezeit Minimale Antwortzeit Frage: Werden Durchschnittswerte oder Maxima/Minima betrachtet? Maxima/Minima bieten Worst-Case Garantien Minimale Varianz ist relevant für Time-Sharing Systeme Hier: Betrachtung der durchschnittlichen Wartezeit O. Waldhorst Betriebssysteme WS 05/06 9 O. Waldhorst Betriebssysteme WS 05/06 10 First-Come, First-Serve (FCFS) Scheduling Realisierung der Bereit-Warteschlange nach First-In-First-Out (FIFO) Prinzip Beispiel: Prozess Burst Time Für die die Prozesse in der Reihenfolge,, ergibt sich folgendes Gantt Chart: Wartezeit für = 0; = 24; = 27 Durchschnittliche Wartezeit: ( )/3 = 17 FCFS Scheduling für die Prozesse in der Reihenfolge,, ergibt sich folgendes Gantt Chart Wartezeit für = 6; = 0, = 3 durchschnittliche Wartezeit: ( )/3 = 3 Convoy Effekt Kurze Prozesse warten auf Lange Tritt auch für einen CPU-lastigen und viele E/A-lastige Prozesse auf Durchschnittliche Wartezeiten nicht optimal! O. Waldhorst Betriebssysteme WS 05/06 11 O. Waldhorst Betriebssysteme WS 05/06 12

4 Shortest-Job-First (SJR) Scheduling Nicht-präemtives SJF Scheduling mit jedem Prozess wird die Länge seines nächsten CPU-Burst assoziiert Dient zur Auswahl des Prozesses mit dem Burst geringster Länge Mögliche Implementierungen Nicht-präemtiv Ein Prozess kann bis zur Beendigung seines momentanen Bursts nicht unterbrochen werden Präemtiv Falls ein neuer Prozess mit einer niedrigeren Burst-Länge als derjenigen des momentan ausgeführten Prozesses erzeugt wird, so wird der jetzige Prozess unterbrochen (Shortest-Remaining-Time-First, SRTF) Beweisbar: minimale durchschnittliche Wartezeit Beweisidee: einen kurzen Job A vor einen langen Job B zu ziehen verlängert die Wartezeit von B weniger als sich die von A verkürzt Prozess Auftreten Burst Time P P durchschnittliche Wartezeit: ( )/4 = 4 O. Waldhorst Betriebssysteme WS 05/06 13 O. Waldhorst Betriebssysteme WS 05/06 14 Präemtives SJF Scheduling Prozess Auftreten Burst Time P P durchschnittliche Wartezeit = ( )/4 = 3 O. Waldhorst Betriebssysteme WS 05/ Längenbestimmung von CPU Bursts Länge eines Bursts kann nur geschätzt werden Schätzung wird erzielt durch Berechnung des exponentiellen Mittels unter Ausnutzung vorheriger Burst-Längen t n = aktuelle Länge des n - ten CPU bursts τ n+1 = Vorhersage für die Länge des nächsten bursts a, 0 α 1 4. definiere: τ ) n+ 1= αtn + (1 α τ n O. Waldhorst Betriebssysteme WS 05/06 16

5 Beispiel Längenbestimmung Beispiel Längenbestimmung α = 0 τ n+1 = τ n Keine Berücksichtigung der Länge des aktuellen Bursts α = 1 τ n+1= t n Nur Länge des letzten CPU-Bursts wird berücksichtigt durch Einsetzen in die Formel erhält man τ n+ 1 = αt + (1 α) αt n j + (1 α) αt + (1 α) t τ n 1 n Da sowohl α als auch (1- α) kleiner oder gleich 1, erhält jeder Term eine niedrigere Gewichtung als der vorherige Term n n 0 O. Waldhorst Betriebssysteme WS 05/06 17 O. Waldhorst Betriebssysteme WS 05/06 18 Priority Scheduling Jedem Prozess wird eine Priorität (i.a. integer Zahl) zugewiesen Prioritäten können von außen festgelegt oder Anhand messbarer Kriterien bestimmt werden CPU wird dem Prozess mit der höchsten Priorität zugeordnet (kleinste Integer höchste Priorität) Praemptive Nicht-präemptive SJF = Priority Scheduling mit vorausgesagter Burst-Zeit als Priorität Problem: Starvation Prozesse mit niedriger Priorität werden eventuell niemals ausgeführt (Gerücht: auf 1973 abgeschalteter IBM 7094 am MIT lief ein Prozess von 1967) Lösung: Aging Mit zunehmender Zeit wird die Priorität eines Prozesses erhöht Round Robin (RR) Scheduling Jeder Prozess erhält eine gewisse CPU Zeitquantum (Time Quantum, gewöhnlich ms) Benötigt ein Prozess mehr Zeit, wir er nach Ablauf dieser Zeit unterbrochen und an das Ende der Bereit-Warteschlang angereiht n Prozessen in der ready-queue und einem Zeitquantum q Jeder Prozess erhält 1/n CPU Zeit Jeweils höchstens q zusammenhängenden Zeiteinheiten, Kein Prozess wartet länger als (n-1)q Zeiteinheiten Leistungsverhalten: q groß FIFO-Verhalten q klein erheblicher Mehraufwand aufgrund der Kontext Wechsel O. Waldhorst Betriebssysteme WS 05/06 19 O. Waldhorst Betriebssysteme WS 05/06 20

6 RR Scheduling mit q = 20 Prozess Burst Time P 4 24 Gantt Chart: Zeitquantum und Kontext-Wechsel Die Größe des Zeitquantums bestimmt die Anzahl der Kontextwechsel bis zur Fertigstellung eines Prozess Zeit für Kontext-Wechsel (Dispatcher Latency) muss berücksichtigt werden Empfehlung: Zeitquantum soll groß im Vergleich zur Zeit für Kontext-Wechsel sein P 4 P Durchschnittliche Zeit zur Fertigstellung im Allgemeinen höher als bei SJF, dafür bessere Antwortzeiten O. Waldhorst Betriebssysteme WS 05/06 21 O. Waldhorst Betriebssysteme WS 05/06 22 Zeitquantum und Zeit zur Fertigstellung Die Größe des Zeitquantums beeinflusst die Zeit zur Fertigstellung Intuitiv: CPU-Bursts sollten in der Regel innerhalb des Zeitquantums beendet werden Achtung: Eine Vergrößerung des Zeitquantums verringert nicht zwangsläufig die Zeit zur Fertigstellung! Empfehlung: Ca. 80% der CPU-Bursts sollten innerhalb des Zeitquantums beendet sein O. Waldhorst Betriebssysteme WS 05/06 23 Multilevel Queue Scheduling Oft können Prozesse in verschiedene Gruppen aufgeteilt werden, z.b.: Vordergrund (interaktiv) Hintergrund (batch) Bereit-Warteschlange wird aufgeteilt, jede Warteschlange besitzt einen eigenen Scheduling-Algorithmus, z.b. Vordergrund RR Hintergrund FCFS zwischen Warteschlangen muss ebenfalls Scheduling stattfinden: Fixed priority scheduling: erst Prozesse im Vordergrund, dann alle Prozesse im Hintergrund abarbeiten starvation Zeitscheiben (time slices) jede Warteschlange erhält einen bestimmten Anteil an CPU-Zeit, der unter den jeweiligen Prozessen aufgeteilt wird, z.b. 80% für Vordergrund-Warteschlangen 20% für Hintergrund-Warteschlangen O. Waldhorst Betriebssysteme WS 05/06 24

7 Multilevel Queue Scheduling Multilevel Feedback Queues Ein Prozess kann zwischen den unterschiedlichen Warteschlangen bewegt werden Z.B. CPU-lastiger Prozess in niedrigere Klasse, E/Alastiger Prozess in höhere Klasse dies ermöglicht auch Aging zu berücksichtigen Multilevel-feedback-scheduler durch folgende Parameter definiert: Anzahl der Warteschlangen scheduling Algorithmus für jede Warteschlange Kriterien um einen Prozess höherzustufen (upgrading) Kriterien um einen Prozess zurückzustufen (demoting) Kriterien um einen Prozess initial einer Warteschlange zuzuordnen O. Waldhorst Betriebssysteme WS 05/06 25 O. Waldhorst Betriebssysteme WS 05/06 26 Beispiel Multilevel Feedback Queues Drei Warteschlangen: Q 0 FCFS mit Zeitquantum: 8ms Q 1 FCFS mit Zeitquantum : 16 ms Q 3 FCFS Scheduling: Neuer Job wird an Q 0 angereiht; nach 8 ms CPU Zeit wird er an Q 1 angereiht, falls er nicht abgeschlossen werden konnte In Q 1 erlangt ein Job zusätzliche 16 ms; falls er immer noch nicht abgeschlossen werden konnte, wird er an Q 3 angereiht Scheduling mit mehreren Prozessoren CPU scheduling wird durch den Einsatz mehrerer Prozessoren komplexer Auch bei homogene Prozessoren innerhalb eines Multiprozessors Ein wichtiges Kriterium ist hier die Last Verteilung Trivialer Ansatz Eine Warteschlange pro Prozessor Nicht optimal! Symmetric Multiprocessing (SMP) Jeder Prozessor fällt eigene Scheduling-Entscheidungen Nachteil: Implementierung aufwendig (Zugriff auf gemeinsame Datenstrukturen) Asymmetric Multiprocessing Nur ein Prozessor hat Zugang zu Systemdaten, verringert den Bedarf zum Teilen der Systemdaten O. Waldhorst Betriebssysteme WS 05/06 27 O. Waldhorst Betriebssysteme WS 05/06 28

8 Scheduling in Realzeitsystemen Systeme mit harten Zeitschranken Erforderlich um eine zeitkritische Anwendung/Aufgabe innerhalb einer garantierten Zeitspanne auszuführen Prozesse müssen beim Start benötigte Zeitschranken angeben und werden anhand dieser zugelassen oder abgelehnt Spezielle Hardware und Systemstruktur erforderlich! Systeme mit weichen Zeitschranken Erfordern, dass zeitkritische Prozesse eine höhere Priorität als zeitunkritische Prozesse erhalten Evtl. unfair bei der Zuteilung von Ressourcen, Starvation kann auftreten! Scheduling in Realzeitsystemen Anforderungen von Systemen mit weichen Zeitschranken: Priority Scheduling Geringe Dispatcher Latency Nach Möglichkeit präemptiv Problem: Systemaufrufe Lösungen: Preemption Points für lange Systemaufrufe Kern vollständig präemptiv (Synchronisierter Zugriff auf kritische Datenstukturen, Achtung: Priority Inversion, Vererbung von Prioritäten notwendig!) O. Waldhorst Betriebssysteme WS 05/06 29 O. Waldhorst Betriebssysteme WS 05/06 30 Dispatcher Latency in Realzeitsystemen Beispiel Scheduling: Solaris 2 Die Konfliktphase der Dispatcher Latency hat drei Komponenten: Präepmtion eines Prozesses der einen Systemaufruf ausführt Freigeben von benötigten Ressourcen durch Prozesse mit niedrigerer Priorität Kontext-Wechsel zum Prozess mit höherer Priorität O. Waldhorst Betriebssysteme WS 05/06 31 O. Waldhorst Betriebssysteme WS 05/06 32

9 Beispiel Scheduling: Windows XP Windows XP definiert sechs Prioritätsklassen für Prozesse In jeder Klasse existieren sieben relative Prioritäten Relative Prioritäten Prioritätsklassen Beispiel Scheduling: Linux Zwei Algorithmen: Time-Sharing und Realzeit Time-Sharing Prioritäten basierend auf Credit-System Prozess mit den meisten Credits wird als nächstes ausgewählt Credits werden verringert wenn ein Timer-Interrupt auftritt Wenn Credits = 0 wird ein anderer Prozess gewählt Wenn alle Prozesse Credits = 0 haben, werden Credits neu vergeben Basierend auf Prioritäten und vorhergegangenem Verhalten Realzeit Weiche Zeitschranken Entspricht Posix.1b Zwei Klassen FCFS und RR Prozesse mit höchster Priorität laufen immer zuerst O. Waldhorst Betriebssysteme WS 05/06 33 O. Waldhorst Betriebssysteme WS 05/06 34 Bewertung von Scheduling Algoritmen Auswahl eines Scheduling Algorithmus erfordert Bewertung anhand ausgewählter Kriterien Bewertungsverfahren: Deterministisches Model Warteschlangen-Modelle Simulation Implementierung Deterministisches Model Benutzt analytische Techniken zur Berechung von Leistungsmaßen Annahme einer bestimmten Arbeitsauslastung der CPU Bestimmung des Leistungsverhalten eines jeden Algorithmus gemäß dieser Auslastung Vergleiche Beschreibung der Scheduling Algorithmen! Hauptsächlich für Beschreibungen und Beispiele verwendet O. Waldhorst Betriebssysteme WS 05/06 35 O. Waldhorst Betriebssysteme WS 05/06 36

10 Warteschlangen-Modelle Nutzt die Verteilungen bestimmter Größen Z.B. Länge von CPU-Bursts Warteschlangen-Netzwerk zur Modellierung der Betriebssystem-Abläufe Warteschlangen können direkt abgebildet werden CPU, E/A-Geräte sind Server Eingabe: Wahrscheinlichkeitsverteilungen für Längen von CPU-Bursts, Service-Zeiten, Liefert Leistungsmaße mit analytischen Methoden Nachteile: Nur Approximation, da analytische Lösungen nur für wenige Verteilungen bekannt Simulation Basiert auf programmierten Modell der Systemabläufe Kann Vereinfachungen enthalten Eingabe Zufallszahlen entsprechend Wahrscheinlichkeitsverteilungen Beschreiben Anzahlen, nicht Reihenfolge! Trace-gesteuert Aufzeichnung von realem Systemverhalten Nachteile: Lange Laufzeiten Großer Speicherplatzbedarf für Trace-Daten O. Waldhorst Betriebssysteme WS 05/06 37 O. Waldhorst Betriebssysteme WS 05/06 38 Simulation Implementierung Die verlässlichsten Leistungsergebnisse liefert eine reale Implementierung Nachteile: Aufwendig Nutzer möchten nicht dauernd neue Betriebssystem- Versionen Veränderung der Umgebung durch veränderte Realisierung Z.B. geben Programme nutzlose Dinge aus, um interaktiv zu wirken Flexible Lösung: Scheduling durch Operator oder Benutzer konfigurierbar O. Waldhorst Betriebssysteme WS 05/06 39 O. Waldhorst Betriebssysteme WS 05/06 40

11 Java Threads Java Threads können erzeugt werden durch Erweiterung der Thread Klasse Beispiel: class Worker1 extends Thread { public void run() { System.out.println( I am a Worker Thread ); } } Starten eines Java Threads Thread wird durch Aufruf der Methode start() gestartet: public class First { public static void main(string args[]) { Worker1 runner = new Worker1(); } } runner.start(); System.out.println( I am the main thread ); O. Waldhorst Betriebssysteme WS 05/06 41 O. Waldhorst Betriebssysteme WS 05/06 42 Java Thread Verwaltung suspend() Unterbricht die Ausführung des laufenden Threads sleep() Legt den laufenden Thread für eine angegebene Zeit schlafen resume() Nimmt die Ausführung eines unterbrochenen Threads wieder auf. stop() Stoppt die Ausführung eines Threads Java Thread Scheduling JVM verwendet präemptive, prioritätsbasierte Scheduling-Algorithmen FIFO-Queue wird für Threads mit gleicher Priorität verwendet JVM wählt neuen Thread zum ausführen aus wenn Der momentan ausgeführte Thread den running- Zustand verlässt Ein Thread mit höhere Priorität in den ready- Zustand wechselt O. Waldhorst Betriebssysteme WS 05/06 43 O. Waldhorst Betriebssysteme WS 05/06 44

12 Java Thread Scheduling JVM berücksichtigt keine time slices Verwendung der yield() Methode durch Programmierer: while (true) { // Ausführung CPU-intensiver Berechnungen... Thread.yield(); } Übergibt CPU-Kontrolle an weiteren Thread gleicher Priorität Java Thread Prioritäten Thread Prioritäten: Priorität Thread.MIN_PRIORITY Thread.MAX_PRIORITY Thread.NORM_PRIORITY Kommentar minimale Thread Priorität maximale Thread Priorität standard Thread Prorität Priorität wird durch Verwendung der setpriority() Methode gesetzt, z.b.: setpriority(thread.norm_priority + 2); O. Waldhorst Betriebssysteme WS 05/06 45 O. Waldhorst Betriebssysteme WS 05/06 46 Nächste Stunde 22. Februar 2006 Thema: Synchronisation von Prozessen O. Waldhorst Betriebssysteme WS 05/06 47

Scheduling. Prozess-Ablaufplanung. Prof. Dr. Margarita Esponda Freie Universität Berlin WS 2011/2012

Scheduling. Prozess-Ablaufplanung. Prof. Dr. Margarita Esponda Freie Universität Berlin WS 2011/2012 Scheduling Prozess-Ablaufplanung Prof. Dr. Margarita Esponda Freie Universität Berlin WS 2011/2012 Scheduler Der Scheduler ist ein besonders wichtiges Programmteil jedes Betriebssystems. Prozesse P 1 P

Mehr

CPU-Scheduling - Grundkonzepte

CPU-Scheduling - Grundkonzepte CPU-Scheduling - Grundkonzepte Sommersemester 2015 Seite 1 Gesamtüberblick 1. Einführung in Computersysteme 2. Entwicklung von Betriebssystemen 3. Architekturansätze 4. Interruptverarbeitung in Betriebssystemen

Mehr

Begriff: Scheduling Planung, Schedule Plan. Verplanung der CPU-Zeit an die Threads (bzw. Prozesse)

Begriff: Scheduling Planung, Schedule Plan. Verplanung der CPU-Zeit an die Threads (bzw. Prozesse) 5 CPU-Scheduling Im folgenden wird von Threads gesprochen. Bei Systemen, die keine Threads unterstützen, ist der einzige "Thread" eines Prozesses gemeint. Früher wurde dieser Thread synonym mit dem Begriff

Mehr

Betriebssysteme Kap F: CPU-Steuerung CPU-Scheduling

Betriebssysteme Kap F: CPU-Steuerung CPU-Scheduling Betriebssysteme Kap F: CPU-Steuerung CPU-Scheduling 1 termini technici Der englische Fachausdruck scheduler wurde eingedeutscht : Der Scheduler Für scheduling ist im Deutschen auch zu verwenden: Ablaufplanung

Mehr

Systeme 1. Kapitel 5. Scheduling

Systeme 1. Kapitel 5. Scheduling Systeme 1 Kapitel 5 Scheduling Scheduling Verteilung und Zuweisung von begrenzten Ressourcen an konkurrierende Prozesse Beispiel: -> Zeitablaufsteuerung Zwei Prozesse zur gleichen Zeit rechenbereit auf

Mehr

Prozesse und Prozessmanagement des BS. 1 Unterschied Prozess, Threads. 1.1 Prozess. 1.2 Threads

Prozesse und Prozessmanagement des BS. 1 Unterschied Prozess, Threads. 1.1 Prozess. 1.2 Threads Prozesse und Prozessmanagement des BS 1 Unterschied Prozess, Threads 1.1 Prozess Bei jedem Programm muss gespeichert werden, welche Betriebsmittel (Speicherplatz, CPU- Zeit, CPU-Inhalt,...) es benötigt.

Mehr

Systeme I: Betriebssysteme Kapitel 7 Scheduling. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 7 Scheduling. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 7 Scheduling Maren Bennewitz Version 23.01.2013 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen

Mehr

3. Scheduler und Schedulingstrategien

3. Scheduler und Schedulingstrategien 5 3 Scheduler und Schedulingstrategien Unter Scheduling versteht man einen Ablaufplan, einen Fahrplan oder eine Auswahlstrategie, nach der ein knappes Betriebsmittel im Wettbewerb befindlichen Prozessen

Mehr

5 CPU Scheduling. FH Regensburg BT/SS04 Betriebssysteme Wirtschaftsinformatik. 5.1 Grundlagen - 54 - 5.1.1 CPU Burst / I/O Burst

5 CPU Scheduling. FH Regensburg BT/SS04 Betriebssysteme Wirtschaftsinformatik. 5.1 Grundlagen - 54 - 5.1.1 CPU Burst / I/O Burst FH Regensburg BT/SS04 5 CPU Scheduling 5.1 Grundlagen 5.1.1 CPU Burst / I/O Burst Beobachtung: Programme rechnen typischerweise etwas, dann tätigen sie Ein/Ausgabe: CPU-Burst: das Programm rechnet eine

Mehr

Round-Robin Scheduling (RR)

Round-Robin Scheduling (RR) RR - Scheduling Reigen-Modell: einfachster, ältester, fairster, am weitesten verbreiteter Algorithmus Entworfen für interaktive Systeme (preemptives Scheduling) Idee: Den Prozessen in der Bereitschaftsschlange

Mehr

Betriebssysteme I WS 2013/2014. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404

Betriebssysteme I WS 2013/2014. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Betriebssysteme I WS 2013/2014 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 16. Januar 2014 Betriebssysteme / verteilte Systeme Betriebssysteme

Mehr

Übung zu Grundlagen der Betriebssysteme. 7. Übung 27.11.2012

Übung zu Grundlagen der Betriebssysteme. 7. Übung 27.11.2012 Übung zu Grundlagen der Betriebssysteme 7. Übung 27.11.2012 Threads Thread (Faden des (Kontrollflusses)): ist ein sequentieller Abarbeitungsablauf (Kontrollfluss) innerhalb eines Prozesses. Umfasst ein

Mehr

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

Betriebssysteme I WS 2015/2016. Betriebssysteme / verteilte Systeme Tel.: 0271/ , Büro: H-B 8404 Betriebssysteme I WS 2015/2016 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 17. Dezember 2015 Betriebssysteme / verteilte Systeme

Mehr

Technische Informatik II

Technische Informatik II Institut für Technische Informatik und Kommunikationsnetze Technische Informatik II Übung 1: Prozesse und Threads Aufgabe 1: Prozesse und Threads a) Wie verhält sich eine Applikation die aus mehreren Prozessen

Mehr

Betriebssysteme (BTS)

Betriebssysteme (BTS) 9.Vorlesung Betriebssysteme (BTS) Christian Baun cray@unix-ag.uni-kl.de Hochschule Mannheim Fakultät für Informatik Institut für Betriebssysteme 10.5.2007 Exkursion Die Exkursion wird am Freitag, den 18.5.2007

Mehr

Welche der folgenden Aussagen gelten? a) Im allgemeinen gilt: ein Deadlock tritt auf gdw. der Resource-Allocation Graph einen Zykel

Welche der folgenden Aussagen gelten? a) Im allgemeinen gilt: ein Deadlock tritt auf gdw. der Resource-Allocation Graph einen Zykel Aufgabe 1 (5 Punkte) (Multiple Choice) Beantworten Sie folgende Fragen durch Ankreuzen der richtigen Antwort. Für jede falsche Antwort wird ein Punkt abgezogen (es werden minimal 0 Punkte vergeben). Welche

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

Threads and Scheduling

Threads and Scheduling Vorlesung Betriebssysteme WS 2010, fbi.h-da.de Threads and Scheduling Jürgen Saala 1. Threads 2. Scheduling 2 1. Threads 3 Prozesse mit je 1 Adressraum 1 Ausführungsfaden d.h. Unabhängiger Adressraum mit

Mehr

Inhaltsverzeichnis. 2.4 Thread-Systeme. 2.1 Was ist ein Prozess? 2.2 Scheduling. 2.3 Interprozesskommunikation

Inhaltsverzeichnis. 2.4 Thread-Systeme. 2.1 Was ist ein Prozess? 2.2 Scheduling. 2.3 Interprozesskommunikation Inhaltsverzeichnis Systemprogrammierung - Kapitel 2 Prozessverwaltung 1/21 2.1 Was ist ein Prozess? Definition Prozesszustände Prozesskontrollblöcke 2.4 Thread-Systeme Sinn und Zweck Thread-Arten Thread-Management

Mehr

Systemsoftware (SYS) Fakultät für Informatik WS 2008/2009 Christian Baun. Übungsklausur

Systemsoftware (SYS) Fakultät für Informatik WS 2008/2009 Christian Baun. Übungsklausur Hochschule Mannheim Systemsoftware (SYS) Fakultät für Informatik WS 2008/2009 Christian Baun Übungsklausur Aufgabe 1: Definieren Sie den Begriff der Systemsoftware. Nennen Sie die Aufgaben und Komponenten

Mehr

Datentechnik. => Das Rechenergebnis ist nur dann sinnvoll, wenn es rechtzeitig vorliegt. Die Zeit muß daher beim Programmdesign berücksichtigt werden.

Datentechnik. => Das Rechenergebnis ist nur dann sinnvoll, wenn es rechtzeitig vorliegt. Die Zeit muß daher beim Programmdesign berücksichtigt werden. 5. Steuerung technischer Prozesse 5.1 Echtzeit (real time) Im Gegensatz zu Aufgabenstellungen aus der Büroumgebung, wo der Anwender mehr oder weniger geduldig wartet, bis der Computer ein Ergebnis liefert

Mehr

5. Foliensatz Betriebssysteme und Rechnernetze

5. Foliensatz Betriebssysteme und Rechnernetze Prof. Dr. Christian Baun 5. Foliensatz Betriebssysteme und Rechnernetze FRA-UAS SS2017 1/29 5. Foliensatz Betriebssysteme und Rechnernetze Prof. Dr. Christian Baun Frankfurt University of Applied Sciences

Mehr

13. Übung mit Musterlösung

13. Übung mit Musterlösung 13. Übung mit Musterlösung 1 Lösung 1 Teil 1.Multiple Choice) Bewertung: Ein Punkt für richtige Antwort, für jede falsche Antwort ein Punktabzug. a) Für die Exponentialverteilung ist die Zeit bis zum nächsten

Mehr

Verteilte Echtzeit-Systeme

Verteilte Echtzeit-Systeme - Verteilte Echtzeit-Systeme Hans-Albrecht Schindler Wintersemester 2015/16 Teil B: Echtzeit-Betriebssysteme Abschnitt 9: Scheduling gemischter Prozessmengen CSI Technische Universität Ilmenau www.tu-ilmenau.de

Mehr

Domänenanalyse Threadverwaltung/Scheduling

Domänenanalyse Threadverwaltung/Scheduling Domänenanalyse Threadverwaltung/Scheduling Johannes Handl, Marc Rößler, Christian Strengert 15. Mai 2003 Domänenanalyse Threadverwaltung/Scheduling [1] Domänendefinition Die Erzeugung, Verwaltung, Umschaltung/Wechsel,

Mehr

Thread-Konzept in objektorientierten Programmiersprachen. Threads. Threads in Java

Thread-Konzept in objektorientierten Programmiersprachen. Threads. Threads in Java Thread-Konzept in objektorientierten Programmiersprachen 1 Threads ein Thread ist ein eigenständiges Programmfragment, das parallel zu anderen Teilen eines Programmes ablaufen kann alle Threads eines Programmes

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

Betriebssysteme. CPU-Scheduling - Fallbeispiele. Sommersemester 2014 Prof. Dr. Peter Mandl. Prof. Dr. Peter Mandl Seite 1.

Betriebssysteme. CPU-Scheduling - Fallbeispiele. Sommersemester 2014 Prof. Dr. Peter Mandl. Prof. Dr. Peter Mandl Seite 1. CPU-Scheduling - Fallbeispiele Sommersemester 2014 Prof. Dr. Peter Mandl Prof. Dr. Peter Mandl Seite 1 Gesamtüberblick 1. Einführung in 2. Betriebssystemarchitekturen und Betriebsarten 3. Interruptverarbeitung

Mehr

Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen)

Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen) Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen) 1 Prozesse Bei Betriebssystemen stoßen wir des öfteren auf den Begriff Prozess als wahrscheinlich am häufigsten verwendeter und am unklarsten

Mehr

5) Realzeitscheduling

5) Realzeitscheduling Inhalte Anforderungen Klassifizierungen Verschiedene Verfahren: FIFO, Round Robin, Least Laxity, EDF, fixed/dyn. Prio. Beispiele und Aufgaben Seite 1 Motivation Gegeben: Ein Einprozessorsystem, das Multiprogrammierung

Mehr

Betriebssysteme. Teil 13: Scheduling

Betriebssysteme. Teil 13: Scheduling Betriebssysteme Teil 13: Scheduling Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 15.01.16 1 Literatur [13-1] Quade, Jürgen; Mächtel, Michael: Moderne Realzeitsysteme kompakt. dpunkt, 2012 [13-2] Quade,

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

Systeme I: Betriebssysteme Kapitel 7 Scheduling. Wolfram Burgard

Systeme I: Betriebssysteme Kapitel 7 Scheduling. Wolfram Burgard Systeme I: Betriebssysteme Kapitel 7 Scheduling Wolfram Burgard Version 8.12.2016 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen

Mehr

Einführung in die Programmierung Blockkurs Java

Einführung in die Programmierung Blockkurs Java Michael Bader 8. 12. April 2002 Freitag Inhaltsübersicht Exceptions und Errors Ausnahmebehandlung: try/catch/finally Threads Zugriffskontrolle bei gemeinsamen Variablen: synchronized, wait(), notify()

Mehr

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

Einführung. Anwendung. logischer Adreßraum. Kontrollfluß (Thread) = CPU führt Instruktionen aus. Was charakterisiert einen Kontrollfluß? Kontrollflüsse Einführung 1 Motivation Kontrollfluß Anwendung logischer Adreßraum Kontrollfluß (Thread) = führt Instruktionen aus Was charakterisiert einen Kontrollfluß? Programmzähler Registerinhalte

Mehr

(b) Worin besteht der Unterschied zwischen online und offline Scheduling?

(b) Worin besteht der Unterschied zwischen online und offline Scheduling? Universität Paderborn Fachgebiet Rechnernetze SoSe 2013 Konzepte und Methoden der Systemsoftware Präsenzübung 3 2013-05-06 bis 2013-05-10 Aufgabe 1: Scheduling - Grundbegriffe Bekanntlich gibt es für das

Mehr

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 4 Prozesse Maren Bennewitz Version 20.11.2013 1 Begrüßung Heute ist Tag der offenen Tür Willkommen allen Schülerinnen und Schülern! 2 Wdhlg.: Attributinformationen in

Mehr

Übung zu Grundlagen der Betriebssysteme. 8. Übung 04.12.2012

Übung zu Grundlagen der Betriebssysteme. 8. Übung 04.12.2012 Übung zu Grundlagen der Betriebssysteme 8. Übung 04.12.2012 Threads Thread (Faden des (Kontrollflusses)): ist ein sequentieller Abarbeitungsablauf (Kontrollfluss) innerhalb eines Prozesses. Umfasst ein

Mehr

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

Schedulingalgorithmen Rechenzeitverteilung auf Betriebssystemebene. Andi Drebes Fachbereich Informatik Universität Hamburg Schedulingalgorithmen Rechenzeitverteilung auf Betriebssystemebene Andi Drebes Fachbereich Informatik Universität Hamburg Gliederung Notwendigkeit des Schedulings Einführung: Begriff des Multitaskings

Mehr

Echtzeitscheduling (1)

Echtzeitscheduling (1) Echtzeitscheduling (1) Scheduling in Betriebssystemen Ressourcenausteilung (CPU, Speicher, Kommunikation) Faire Ressourcenvergabe, insbesondere CPU Hohe Interaktivität / kurze Reaktionszeit für interaktive

Mehr

Parallele Prozesse. Prozeß wartet

Parallele Prozesse. Prozeß wartet Parallele Prozesse B-66 Prozeß: Ausführung eines Programmes in seinem Adressraum (zugeordneter Speicher) Parallele Prozesse: gleichzeitig auf mehreren Prozessoren laufende Prozesse p1 p2 verzahnte Prozesse:

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

Der Scheduler von Windows Konzepte und Strategien

Der Scheduler von Windows Konzepte und Strategien Gliederung Der Scheduler von Windows Konzepte und Strategien Daniel Lohmann 1 Grundbegriffe 2 Eigenschaften des Schedulers Grundlegende Eigenschaften Prioritätenmodell Dynamische Prioritätenanpassungen

Mehr

Kapitel III. Prozessverwaltung. VO Betriebssysteme

Kapitel III. Prozessverwaltung. VO Betriebssysteme Kapitel III Prozessverwaltung V 1 Was ist ein Prozess? Prozesse ein exekutierendes Programm (aktive Einheit) ein Prozess benötigt Ressourcen: CPU-Zeiten, Speicher, Files, I/O Systeme Betriebssystem ist

Mehr

Einführung. Schedulingziel. Klassisches Scheduling-Problem. 6. Kapitel Ressource Prozessor: Scheduling

Einführung. Schedulingziel. Klassisches Scheduling-Problem. 6. Kapitel Ressource Prozessor: Scheduling Wintersemester 06/07 6. Kapitel Ressource Prozessor: Scheduling Prof. Matthias Werner 6 Professur Betriebssysteme Einführung Bisher: Wenn ein Prozesses den Prozessor aufgibt (Zustand laufend verlässt),

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

8. Vorlesung Betriebssysteme

8. Vorlesung Betriebssysteme Dr. Christian Baun 8. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 1/69 8. Vorlesung Betriebssysteme Dr. Christian Baun Hochschule Mannheim Fakultät für Informatik wolkenrechnen@gmail.com Dr. Christian

Mehr

Ausarbeitung im Rahmen der PG Autolab zum Thema: OSEK 1 -OS. geschrieben von Oliver Botschkowski

Ausarbeitung im Rahmen der PG Autolab zum Thema: OSEK 1 -OS. geschrieben von Oliver Botschkowski Ausarbeitung im Rahmen der PG Autolab zum Thema: OSEK 1 -OS geschrieben von Oliver Botschkowski 1 Offene Systeme und deren Schnittstelle für die Elektronik im Kraftfahrzeug 1 Oliver Botschkowski - OSEK-OS

Mehr

Architektur Verteilter Systeme Teil 2: Prozesse und Threads

Architektur Verteilter Systeme Teil 2: Prozesse und Threads Architektur Verteilter Systeme Teil 2: Prozesse und Threads 21.10.15 1 Übersicht Prozess Thread Scheduler Time Sharing 2 Begriff Prozess und Thread I Prozess = Sequentiell ablaufendes Programm Thread =

Mehr

Vorl. 6: Single- und Multitasking

Vorl. 6: Single- und Multitasking Universität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme Vorl. 6: Single- und Multitasking Peter B. Ladkin Single Tasking Command Interpreter (ComInt) läuft wartet auf Tastatur-Eingabe

Mehr

Test (Lösungen) Betriebssysteme, Rechnernetze und verteilte Systeme

Test (Lösungen) Betriebssysteme, Rechnernetze und verteilte Systeme Seite 1 Test (Lösungen) Betriebssysteme, Rechnernetze und verteilte Systeme 1 11.07.2007 Hinweise: Bevor Sie mit der Bearbeitung der Aufgaben beginnen, müssen Sie auf allen Blättern Ihren Namen und Ihre

Mehr

Übersicht. Monoprozessor-Scheduling. Einführung Anforderungen und Thread-Typen Zustandsmodelle

Übersicht. Monoprozessor-Scheduling. Einführung Anforderungen und Thread-Typen Zustandsmodelle Übersicht Einführung Anforderungen und Thread-Typen Zustandsmodelle Monoprozessor-Scheduling Einfache Scheduling-Verfahren: FCFS, SJF, RR usw. Echtzeit-Scheduling Multiprozessor-Scheduling Implementierungsaspekte

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 15 Parallele Programmierung... 15-2 15.1 Die Klasse java.lang.thread... 15-2 15.2 Beispiel 0-1-Printer als Thread... 15-3 15.3 Das Interface java.lang.runnable... 15-4 15.4 Beispiel 0-1-Printer

Mehr

Konzepte und Methoden der Systemsoftware. Aufgabe 1: Multi-Feedback-Scheduling. SoSe bis P

Konzepte und Methoden der Systemsoftware. Aufgabe 1: Multi-Feedback-Scheduling. SoSe bis P SoSe 2013 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 4 13.05.2013 bis 17.05.2013 Aufgabe 1: Multi-Feedback-Scheduling 0 P 1. Beschreiben Sie kurz

Mehr

Moderne Betriebssysteme. Kapitel 8. Kapitel 8. Folie: 1. Multiprozessorsysteme. Autor: Andrew S. Tanenbaum

Moderne Betriebssysteme. Kapitel 8. Kapitel 8. Folie: 1. Multiprozessorsysteme. Autor: Andrew S. Tanenbaum Moderne Betriebssysteme Kapitel 8 Multiprozessorsysteme Kapitel 8 Folie: 1 Multiprozessorsysteme Autor: Andrew S. Tanenbaum Pearson Studium 2009 2 3 4 5 6 7 Betriebssystemarten für Multiprozessoren Jede

Mehr

Ein Scheduler für alle Fälle Robert Kaiser, SYSGO AG

Ein Scheduler für alle Fälle Robert Kaiser, SYSGO AG Ein Scheduler für alle Fälle Robert Kaiser, SYSGO AG Am Pfaffenstein 14 D-55270 Klein-Winternheim Tel. +49 (0) 6136 9948-0 Fax. +49 (0) 6136 9948-10 PikeOS: multiple VM Umgebung VM #0 VM #1 VM #2... PikeOS

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

Approximation in Batch and Multiprocessor Scheduling

Approximation in Batch and Multiprocessor Scheduling Approximation in Batch and Multiprocessor Scheduling Tim Nonner IBM Research Albert-Ludwigs-Universität Freiburg 3. Dezember 2010 Scheduling Zeit als Ressource und Beschränkung Formaler Gegeben sind Jobs

Mehr

Die Ausführung geschieht über die sequentielle Abarbeitung der Instruktionen.

Die Ausführung geschieht über die sequentielle Abarbeitung der Instruktionen. Kapitel 4 Prozesse Seite 1 4 Prozesse 4.1 Prozeßkonzept Prozess- ein Programm in Ausführung Die Ausführung geschieht über die sequentielle Abarbeitung der Instruktionen. Üblicher Start: über eine Kommandozeileneingabe

Mehr

OSEK-OS. Oliver Botschkowski. oliver.botschkowski@udo.edu. PG AutoLab Seminarwochenende 21.-23. Oktober 2007. AutoLab

OSEK-OS. Oliver Botschkowski. oliver.botschkowski@udo.edu. PG AutoLab Seminarwochenende 21.-23. Oktober 2007. AutoLab OSEK-OS Oliver Botschkowski oliver.botschkowski@udo.edu PG Seminarwochenende 21.-23. Oktober 2007 1 Überblick Einleitung Motivation Ziele Vorteile Einführung in OSEK-OS Architektur Task Management Interrupt

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

Übung Betriebssysteme 11

Übung Betriebssysteme 11 Übung Betriebssysteme 11 Christian Motika Christian-Albrechts-Universität zu Kiel Institut für Informatik AG Echtzeitsysteme / Eingebettete Systeme Kiel, Germany 29-JAN-2013 CAU - WS 2012/13 Übung Betriebssysteme

Mehr

U6-1 Organisatories. U6-2 Motivation von Threads. U6-3 Vergleich von Thread-Konzepten. Organisatorisches

U6-1 Organisatories. U6-2 Motivation von Threads. U6-3 Vergleich von Thread-Konzepten. Organisatorisches U6 6. Übung U6 6. Übung U6-1 Organisatories U6-1 Organisatories Organisatorisches Zusätzliche Tafelübung zur S1-Klaurvorbereitung Besprechung Aufgabe 5 (crawl) OSIX-Threads Motivation Thread-Konzepte am

Mehr

Zusammenfassung Modul 223

Zusammenfassung Modul 223 Zusammenfassung Modul 223 von Christian Roth Powered by Schuschu Bison Schweiz AG, Surentalstrasse 10, CH-6210 Sursee, www.bison-group.com Inhaltsverzeichnis 1 Entwurfmuster... 3 1.1 Singleton... 3 1.1.1

Mehr

Klausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition)

Klausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition) Ein Prozess kann unmittelbar vom Zustand 1. Running in den Zustand Ready 2. Running in den Zustand Blocked 3. Ready in den Zustand Running Klausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition) Der Adressraum

Mehr

Operating System Kernels

Operating System Kernels Operating System Kernels von Patrick Bitterling 1 Themenübersicht -Eine Einleitung über Kernel -Begriffserklärung, Architekturen -Kernel Subsysteme -Prozess-Scheduling, Speichermanagement,... -Der Networking

Mehr

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 4 Prozesse Maren Bennewitz Version 21.11.2012 1 Begrüßung Heute ist Tag der offenen Tür Willkommen allen Schülerinnen und Schülern! 2 Testat nach Weihnachten Mittwoch

Mehr

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

Organisation der Vorlesung, Einführung in Betriebssysteme. Betriebssysteme. Christoph Lindemann WS 2004/05 Betriebssysteme WS 2004/05 Organisation der Vorlesung, Einführung in Betriebssysteme Christoph Lindemann Organisation der Übungen (1) Übungsgruppenorganisation Anmeldung 8 Übungsgruppen (8-20 Personen

Mehr

Betriebssysteme und Systemsoftware

Betriebssysteme und Systemsoftware Merlin Denker Version 2 1 / 18 Vorwort Dieses Dokument soll einen Überblick über verschiedene Strategien aus der an der RWTH Aachen gehaltenen Vorlesung bieten. Die vorliegende Version dieses Dokuments

Mehr

Hausübung 2(Musterlösung)

Hausübung 2(Musterlösung) SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Hausübung 2(Musterlösung) 2014-05-12 bis 2014-05-23 Hausübungsabgabe: Format: Lösungen in schriftlicher

Mehr

Scheduling. Teil 2. Prof. Dr. Margarita Esponda Freie Universität Berlin WS 2011/2012

Scheduling. Teil 2. Prof. Dr. Margarita Esponda Freie Universität Berlin WS 2011/2012 Scheduling Teil 2 Prof Dr Margarita Esponda Freie Universität Berlin WS 2011/2012 Multilevel Feedback Queue Scheduling Vier Prioritätsklassen Beispiel: neue Prozesse Quantum = 4 Höchste Priorität Quantum

Mehr

Musterlösung Prüfung WS 01/02

Musterlösung Prüfung WS 01/02 Musterlösung Prüfung WS 01/02 Fach: I3 Software-Technik (SEE, GRS, BTS) Teilprüfung: Betriebssysteme Tag: 29.01.2002 10:45 14.45 Raum: 1006 Bearbeitungszeit: 4 Stunden Name:... Matr.Nr.:... Punkte:...

Mehr

Von Prozessen und Prozessoren (Prozess-Management)

Von Prozessen und Prozessoren (Prozess-Management) Von Prozessen und Prozessoren (Prozess-Management) V1.1 Technische Berufsschule Zürich IT Seite 1 Aus dem Geschichtsbuch: Grossrechner IBM 7094, 1965: Online- und Batchbetrieb IBM-Lochkarte Technische

Mehr

Betriebssysteme (BS)

Betriebssysteme (BS) Betriebssysteme (BS) Scheduling Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund Olaf.Spinczyk@tu-dortmund.de http://ess.cs.uni-dortmund.de/~os/ http://ess.cs.tu-dortmund.de/de/teaching/ss2012/bs/

Mehr

Kap. 2. Prozesse. Version vom 05.10.2009. Kap. 2 - Inhalt. Definition Prozeßzustände Threads Scheduling Beispiele. Folie 2

Kap. 2. Prozesse. Version vom 05.10.2009. Kap. 2 - Inhalt. Definition Prozeßzustände Threads Scheduling Beispiele. Folie 2 Kap. 2 Prozesse Version vom 05.10.2009 Kap. 2 - Inhalt Definition Prozeßzustände Threads Scheduling Beispiele Folie 2 Definition I - Woraus bestehen Prozesse? Prozeß ist ein Programm in seiner Ausführung,

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 2013 Kapitel 2: Betriebssysteme Vorlesung:

Mehr

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

Was machen wir heute? Betriebssysteme Tutorium 2. Organisatorisches. Frage 2.1.a. Theorieblätter Abgabe. Antwort. Probleme mit OS/161? Was machen wir heute? Betriebssysteme Tutorium 2 Philipp Kirchhofer philipp.kirchhofer@student.kit.edu http://www.stud.uni-karlsruhe.de/~uxbtt/ Lehrstuhl Systemarchitektur Universität Karlsruhe (TH) 1

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

Scheduling. Gliederung. Was ist Scheduling? Scheduling. Übersicht: 1. Einführung und Übersicht. 2. Prozesse und Threads. 3. Interrupts. 4.

Scheduling. Gliederung. Was ist Scheduling? Scheduling. Übersicht: 1. Einführung und Übersicht. 2. Prozesse und Threads. 3. Interrupts. 4. Gliederung 1. Einführung und Übersicht 2. Prozesse und Threads 3. Interrupts 4. 5. Synchronisation 6. Interprozesskommunikation 7. Speicherverwaltung Cl. Schnörr / HM 1 Gliederung Cl. Schnörr / HM 2 Was

Mehr

ARM Cortex-M Prozessoren. Referat von Peter Voser Embedded Development GmbH

ARM Cortex-M Prozessoren. Referat von Peter Voser Embedded Development GmbH ARM Cortex-M Prozessoren Referat von Peter Voser Embedded Development GmbH SoC (System-on-Chip) www.embedded-development.ch 2 Instruction Sets ARM, Thumb, Thumb-2 32-bit ARM - verbesserte Rechenleistung

Mehr

Praktikum aus Softwareentwicklung 2, Stunde 5

Praktikum aus Softwareentwicklung 2, Stunde 5 Praktikum aus Softwareentwicklung 2, Stunde 5 Lehrziele/Inhalt 1. Threads Threads Threads sind parallele, oder auf Rechnern mit nur einer CPU quasi-parallele, Programmabläufe in Java. Sie können beispielsweise

Mehr

TI Übung 5. Prozess-Scheduling. Andreas I. Schmied SS2005. Abteilung Verteilte Systeme Universität Ulm

TI Übung 5. Prozess-Scheduling. Andreas I. Schmied SS2005. Abteilung Verteilte Systeme Universität Ulm TI Übung 5 Prozess-Scheduling Andreas I. Schmied (schmied@inf...) Abteilung Verteilte Systeme Universität Ulm SS2005 Und nun... Wiederholung 1 Wiederholung Andreas I. Schmied (schmied@inf...) TI Übung

Mehr

Seminar: Mobile Geräte QNX Einführung

Seminar: Mobile Geräte QNX Einführung Seminar: Mobile Geräte QNX Einführung Vortragender: Alex Maurer 2010/2011 Philipps Universität Marburg Echtzeitbetriebssystem QNX QNX ist ein RTOS (Real Time OS) vorhersagbares Zeitverhalten niedrige Latenz

Mehr

Vortrag zum Seminar Konzepte und Techniken virtueller Maschinen und Emulatoren. Bruno Kleinert fuddl@gmx.de. 20. Juni 2007

Vortrag zum Seminar Konzepte und Techniken virtueller Maschinen und Emulatoren. Bruno Kleinert fuddl@gmx.de. 20. Juni 2007 User Mode Linux (UML) Vortrag zum Seminar Konzepte und Techniken virtueller Maschinen und Emulatoren Friedrich-Alexander-Universität Erlangen-Nürnberg Bruno Kleinert fuddl@gmx.de 20. Juni 2007 Überblick

Mehr

Java Real-Time Specification

Java Real-Time Specification Ausgewählte Kapitel eingebetteter Systeme Java Real-Time Specification Tobias Distler 05.07.2006 Java und Echtzeit? Problem Nichtdeterministisches Verhalten der Garbage Collection Weitere Nachteile Scheduling

Mehr

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss Systeme 1 Kapitel 6 Nebenläufigkeit und wechselseitiger Ausschluss Threads Die Adressräume verschiedener Prozesse sind getrennt und geschützt gegen den Zugriff anderer Prozesse. Threads sind leichtgewichtige

Mehr

Jörg R. Mühlbacher. Betriebssysteme. Grundlagen. Universitätsverlag Rudolf Trauner

Jörg R. Mühlbacher. Betriebssysteme. Grundlagen. Universitätsverlag Rudolf Trauner Jörg R. Mühlbacher Betriebssysteme Grundlagen Universitätsverlag Rudolf Trauner INHALTSVERZEICHNIS Vorwort. 3 Inhaltsverzeichnis 4 A Betriebssysteme erste Grundlagen 9 A.l Was ist ein Betriebssystem? 9

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

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

Implementation of a Framework Component for Processing Tasks within Threads on the Application Level Implementation of a Framework Component for Processing Tasks within Threads on the Application Level Deutsches Krebsforschungszentrum, for Processing Task within Threads on the Application Level Motivation

Mehr

Musterlösung Prüfung SS 2002

Musterlösung Prüfung SS 2002 Musterlösung Prüfung SS 2002 Fach: I4neu (SEE, KOS, GRS, BTS) Teilprüfung: Betriebssystem Tag: 2.7.2002 8:15 12:15 Raum 1006 Bearbeitungszeit: 72 Minuten Name:... Matr.Nr.:... Punkte:... Note:... Hilfsmittel:

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

Betriebssysteme. Wintersemester 2015. Kapitel 2 Prozess und Threads. Patrick Kendzo ppkendzo@gmail.com

Betriebssysteme. Wintersemester 2015. Kapitel 2 Prozess und Threads. Patrick Kendzo ppkendzo@gmail.com Betriebssysteme Wintersemester 2015 Kapitel 2 Prozess und Threads Patrick Kendzo ppkendzo@gmail.com Programm Inhalt Einleitung Prozesse und Threads Speicherverwaltung Eingabe und Ausgabe Dateisysteme Zusammenfassung

Mehr

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

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper 1. Der Prozess beginnt im Zustand Erzeugt, nachdem sein Vaterprozess den Systemaufruf fork() (s.u.) abgesetzt hat. In diesem Zustand wird der Prozess-Kontext initialisiert. 2. Ist diese Aufbauphase abgeschlossen,

Mehr

Prozesse, CPU Umschalten, Dispatching und Scheduling

Prozesse, CPU Umschalten, Dispatching und Scheduling Prozesse, CPU Umschalten, Dispatching und Scheduling Aktive Elemente SS2001 Prof. H. D. Clausen - unisal 1 Prozesse Prozess - Programm in Ausführung sequentielle Programmausführung quasi-simultane Abwicklung

Mehr

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

Systemprogramme bezeichnen alle Programme, die bestimmte Aufgaben unterstützen, die unabhängig von einer konkreten Anwendung sind Betriebssysteme Systemprogramme bezeichnen alle Programme, die bestimmte Aufgaben unterstützen, die unabhängig von einer konkreten Anwendung sind Umfaßt z.b. auch Compiler, Interpreter und Dienstprogramme

Mehr

Prozesseinplanung. Kurzfristige Einplanung. Mittelfristige Einplanung. Abfertigungszustände

Prozesseinplanung. Kurzfristige Einplanung. Mittelfristige Einplanung. Abfertigungszustände Prozesseinplanung Kurzfristige Einplanung Systemaufrufe Programmverwaltung Zugriffskontrolle Dateiverwaltung Ein /Auslagerung Vernetzung Ein /Ausgabe Fadenverwaltung Koordination Prozesseinplanung Prozessabfertigung

Mehr

Game Engine Architecture and Development. Platform Unabhängiger Code Multi Threading in Game Engines Profiling

Game Engine Architecture and Development. Platform Unabhängiger Code Multi Threading in Game Engines Profiling Game Engine Architecture and Development Platform Unabhängiger Code Multi Threading in Game Engines Profiling Folien Die Folien werden auf acagamics.de hochgeladen Das Passwort ist 60fps (ohne ) Rückblick:

Mehr

VORSTELLUNG DER DIPLOMARBEIT

VORSTELLUNG DER DIPLOMARBEIT 1 VORSTELLUNG DER DIPLOMARBEIT Thomas Werner Inhaltsverzeichnis 2 Thema Aufgabenstellung Anwendungsdebugging Threads Remote Debugging Implementierung Ausblick Quellen 3 Thema Untersuchung von Funktionsabläufen

Mehr

Sowohl RTX64 als auch RTX bieten harten Echtzeitdeterminismus und symmetrische Multiprocessing- Fähigkeiten (SMP).

Sowohl RTX64 als auch RTX bieten harten Echtzeitdeterminismus und symmetrische Multiprocessing- Fähigkeiten (SMP). Produktbeschreibung Februar 2014 RTX RTOS-Plattform Mit der RTX-Echtzeitsoftware von IntervalZero wird aus Microsoft Windows ein Echtzeitbetriebssystem (RTOS). RTX64 von IntervalZero unterstützt 64-Bit-Betriebssysteme

Mehr

Betriebssystembau (BSB)

Betriebssystembau (BSB) Betriebssystembau (BSB) 6. Übung http://ess.cs.tu-.de/de/teaching/ws2013/bsb/ Olaf Spinczyk olaf.spinczyk@tu-.de http://ess.cs.tu-.de/~os AG Eingebettete System Informatik 12, TU Dortmund Agenda Vorstellung

Mehr