Literatur. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 2

Größe: px
Ab Seite anzeigen:

Download "Literatur. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 2"

Transkript

1 Literatur [13-1] Quade, Jürgen; Mächtel, Michael: Moderne Realzeitsysteme kompakt. dpunkt, 2012 [13-2] Quade, Jürgen: Embedded Linux lernen mit dem Raspberry Pi. dpunkt, 2014 [13-3] Eißenlöffel, Thomas: Embedded-Software entwickeln. dpunkt, 2012 Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 2

2 Übersicht Zustände für Tasks Scheduling-Strategien Prioritätsinversion Scheduling mit mehreren CPUs Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 3 Scheduler Scheduling = Verfahren der Zuordnung von Betriebsmittel an Task (Zusammenfassung von Threads und Prozessen) Betriebsmittel können sein: CPU Platten/SSD Kritische Abschnitte Scheduler = Komponente im Kernel zur Realisierung eines Scheduling-Verfahrens Zentral für den Scheduler ist ein Plan: Kurzfristige Pläne Mittel/Langfristige Pläne Die Pläne beruhen u.a. auf Task-Zuständen Verbrauchte CPU-Zeit (späteste) Zeitpunkte der Ausführung Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 4

3 Zustände von Tasks (Konzept) I Zustand Bedeutung running Die Task besitzt gerade die CPU bzw. wird so behandelt, als ob sie läuft. Ort RAM ready Die Task wartet auf die Benutzung der CPU. RAM waiting sleeping Die Task wartet auf die Beendigung eines I/O- Vorgangs. Die Task wartet längere Zeit auf einen Zeitpunkt, an dem sie die CPU haben will. RAM RAM swapped Teile oder die gesamte Task liegen nicht im RAM. Platte SSD Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 5 Zustände von Tasks (Konzept) II running Braun: Kurzfristig create ready waiting sleeping swapped Blau: Mittel/Langfristig Das Terminieren kann aus jedem Zustand heraus erfolgen. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 6

4 Linux etwas realistischer Quelle: Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 7 Ziele des Schedulings Permanente Ausnutzung der CPU Maximale Anzahl von bearbeiteten Tasks pro Zeiteinheit (Systemdurchsatz) Systemsicht Niedrige durchschnittliche Wartezeit Minimale Antwort-/Reaktionszeit Benutzungssicht Jeder Taskwechsel kostet Zeit, d.h. häufiges Umschalten ist nicht gut. Fairness/Gerechtigkeit Einhaltung von Prioritäten Minimaler Aufwand für das Scheduling selbst Allgemein Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 8

5 Preemptive und Non-Preemptive Preemptive oder unterbrechendes Scheduling = Es besteht die Möglichkeit, dass ein rechnender Task die CPU abgibt, wenn der Scheduler dies entscheidet. Dies wird manchmal als Entzug der CPU bezeichnet. Non-Preemptive oder nicht unterbrechendes Scheduling = kooperatives Scheduling = Eine rechnende Task gibt die CPU nur explizit geplant ab, wenn sie terminiert, oder sie auf ein Ereignis wartet (I/O, z.b.). Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 9 Zeitpunkte für Scheduling-Entscheidungen Ereignisse einer Task Terminieren Erzeugen Warten auf ein Ereignis, z.b. Beendigung von I/O Erfolgte IPC Warten in einer Semaphore I/O-Interrupt Freiwillige Abgabe der CPU Timer-Interrupt Im folgenden wird nur noch das CPU-Scheduling betrachtet, alle anderen Arten, z.b. Plattenzugriff-Scheduling oder Scheduling des Plattenarms, arbeiten analog. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 10

6 Eine Beobachtung Tasks arbeiten fast immer in kurzen Schüben: Burst = Zeitabschnitt, in dem eine Task in einem Stück die CPU benutzt bzw. benutzen will, Deutsch: Stoß In den Pausen dazwischen wird auf ein Ereignis gewartet, meistens auf die Beendigung von I/O. Typisch ist (Beispiel): CPU benutzt Keine CPU I/O I/O Burst Burst Burst Burst Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 11 Überblick Verfahren Batch/Hintergrund-Tasks First-Come-First-Served (FCFS) Shortest Job First (SJF) Shortest Remainung Time Next (SRTN) Interaktive Tasks High Priority First (HPF) Round Robin (RR) Echtzeit-Tasks High Priority First (HPF) Earliest Deadline First (EDF) Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 12

7 First-Come-First-Served (FCFS) Non-Preemptives Scheduling Burst-Dauer ist bekannt Beispiel Task Burst Zeit 24 Bevorzugung von Langläufern Zum Zeitpunkt der Entscheidung müssen alle Kandidaten bekannt sein 6 T 3 3 T 3 T 3 Situation 1: Reihenfolge,, T 3 Mittlere Wartezeit: ( )/3=18 Situation 2: Reihenfolge, T 3, Mittlere Wartezeit: (0+6+9)/3=5 Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 13 Shortest Job First (SJF) Non-Preemptives Scheduling Burst-Dauer ist bekannt Beispiel Task Burst Zeit 24 Zum Zeitpunkt der Entscheidung müssen alle Kandidaten bekannt sein Bevorzugung von Task mit kurzen Burst-Zeiten 6 T 3 3 T 3 Situation 1: Reihenfolge,, T 3 Mittlere Wartezeit: (0+3+9)/3=4 Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 14

8 Shortest Remaining Time Next (SRTN) I Preemptives Scheduling Burst-Dauer ist bekannt Es bekommt die Task die CPU, die vom ihrem Burst die kürzeste Restzeit noch hat. Variante: Maximale Burst-Dauer wird begrenzt. Jede Task bekommt eine Zeitscheibe als max. Burst-Dauer zugewiesen Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 15 Shortest Remaining Time Next (SRTN) II - Beispiel Task Burst Zeit Ankunft T T 3 T 3 SJF ohne Preemptive: Reihenfolge,, T 3 Mittlere Wartezeit: ( )/3=17 SJF/SRTF mit Preemptive: Reihenfolge,, T 3 Mittlere Wartezeit: (0+2+3)/3=1.7 Die mittlere Wartezeit ist bei SRTF minimal. Beim Preemtive-Scheduling sind die Task-Umschaltungen häufiger, auch verlängert sich die Bearbeitungszeit, dafür sinkt in der Regel die Wartezeit. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 16

9 Abschätzung der zukünftigen Burst-Dauer Aus der Vergangenheit lernen, z.b. gewichtete Mittelwertbildung: s n+1 = f*t n +(1-f)*s n s n : Schätzung zum Zeitpunkt n t n : Tatsächliche Burst-Dauer zum Zeitpunkt n f: Faktor zwischen 0 und 1 Ist der Faktor f 0, dann findet kein Lernen statt, denn die Schätzung ist immer gleich. Zu kleine Werte: zu langsame Anpassungen an Trends Ist der Faktor f 1, dann findet kein Lernen statt, denn der letzte tatsächliche Wert ist die zukünftige Schätzung, was zu hektischen Verhalten führt. Zu große Werte: hohe Schwankungen, kaum Glättungen Je größer der Wert für f ist, desto schneller wird die Vergangenheit vergessen. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 17 High Priority First I Non-Preemptive Der Task mit der höchsten Priorität erhält die CPU und behält sie unabhängig davon, ob inzwischen Tasks mit höherer Priorität die CPU haben wollen, solange bis der Burst beendet ist. Gefahr des Verhungerns niedrig priorisierter Tasks Preemptive Der Task mit der höchsten Priorität erhält die CPU und behält sie solange bis eine Tasks mit höherer Priorität die CPU haben will oder bis der Burst beendet ist. Gefahr des Verhungerns niedrig priorisierter Tasks Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 18

10 High Priority First II - Praxis Priorität 0 Priorität 1 CPU... Priorität N Die Tasks werden entsprechend ihrer Priorität in Warteschlangen eingereiht. Innerhalb einer Schlange haben alle Tasks dieselbe Priorität: FCFS Eine niedrige Nummer der Schlange bedeutet höhere Priorität. Eine Warteschlange wird abgearbeitet, wenn alle Warteschlangen höherer Priorität leer sind. Dies erfolgt mit/ohne CPU-Entzug (Preemptive). Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 19 High Priority First III - Verhungern Ein niedriger Prioritätswert (Integer) bedeutet höhere Priorität. Um das Verhungern zu verhindern, wird die Wartezeit in eine Erhöhung der Priorität also zu einer Erniedrigung des Integer- Wertes umgewandelt. Dies führt erst zum Nach-Vorne-Schieben in der Warteschlange und dann zum Verschieben in die nächst höhere. Im Extremfall befinden sich alle Tasks in der obersten Warteschlange. Diese Form des High Priority First also das Arbeiten mit Queues gleichberechtigter Tasks wird auch einfach Priority Scheduling genannt. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 20

11 Round Robin I Preemptives Scheduling Burst-Dauer ist auf eine Zeitscheibe begrenzt. Alle Tasks sind gleichwertig. Die Reihenfolge bestimmt FCFS. Gerechtes/faires Verfahren Beispiel Task Burst Zeit Ankunft T Länge der Zeitscheibe Nötige Taskwechsel Übliche Größen für Zeitscheiben liegen zwischen 20 und 50 ms. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 21 Round Robin II Sind die Zeitscheiben sehr kurz, kommt es zu Verlusten durch (zu) viele Task-Wechsel. Sind die Zeitscheiben zu lang, kommt nähert sich Round Robin zur FCFS-Strategie mit Benachteiligung langer Burst-Zeiten. Round Robin kann auch mit der Idee des Shortest Remaining Time Next kombiniert werden, so dass angefangene Zeitscheiben mit höherer Priorität beendet werden: Beendet eine Task aufgrund von Warten vorzeitig seine Zeitscheibe, so kommt sie nach dem Warten vorne in die Queue mit der reduzierten Zeitscheibe (wie bei SRTN). Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 22

12 Kurzzeitiges Höher-Priorisieren Es gibt gute Gründe für eine kurzzeitige Erhöhung der Priorität: Nach jedem Warten auf I/O, nicht nach einem Warten aufgrund Synchronisation oder nach Warten auf IPC Wenn Interaktivität verbessert werden soll: Nach jedem Warten wird die Priorität kurzzeitig erhöht. Jede Task innerhalb eines kritischen Abschnitts bei Preemptiven Strategien Zur Vermeidung von Priority Inversionen (Echtzeitsysteme) Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 23 Round Robin mit HPF kombiniert Priorität 0 Echtzeit-Tasks Priorität 1 CPU Interaktive Tasks... Priorität N Hintergrund-Tasks Wie bei High Priority First haben die Queues eine Priorität. Innerhalb einer Queue wird mit Round Robin gearbeitet, also mit festen Zeitscheiben. Nach jedem Durchlauf der Queue N wird ein Element aus der Queue N+1 ausgewählt. Eine lange Wartezeit kann durch Wechsel der Queues kompensiert werden. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 24

13 Variante mit unterschiedlichen Zeitscheiben I Queue 0 Zeitscheibe 8 ms (Beispiel) Queue 1 Zeitscheibe 16 ms (Beispiel) Queue 2 Round Robin, Zeitscheibe 32 ms (Beispiel) Nach jedem Warten oder nach der Erzeugung kommt die Task in die Queue 0 und erhält 1x nach FCFS eine Zeitscheibe von 8 ms. Reicht dies nicht, kommt die Task in Queue 1 und erhält 1x nach FCFS eine Zeitscheibe von 16 ms. Queue 1 wird nur bei leerer Queue 0 abgearbeitet. Reicht das immer noch nicht, kommt die Task in Queue 2 und erhält nach Round-Robin die CPU, wobei diese Queue nur bei leeren Queues 0 und 1 abgearbeitet wird. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 25 Variante mit unterschiedlichen Zeitscheiben II Dieses Verfahren ist ein Beispiel für eine Multi-Level-Feedback- Queue. Es bevorzugt Tasks mit kurzen Burst-Zeiten und I/O-intensive Tasks, benachteiligt aber Langläufer. Es gibt noch andere Varianten, z.b. 1) Jede Queue arbeitet nach Round Robin. 2)Beendet eine Task ihre Zeitscheibe mit einem Warten, so verbleibt sie in der Queue (wenn sie im Zustand ready wieder ist). 3)Verbraucht sie die Zeitscheibe und möchte weiterhin die CPU, so wandert sie in die nächst niedrigere Queue. 4)Verbraucht sie dann kurze Zeitscheiben, wird sie wieder höher gestuft. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 26

14 Earliest Deadline First (EDF) Wenn Tasks bis spätestens zu einem bestimmten Zeitpunkt gearbeitet haben müssen, wird die Zeit bis zu dieser Deadline zur Grundlage der Bestimmung der Priorität benutzt. Je kürzer diese Zeit, desto höher die Priorität. Dies ist typisch für Tasks, die zyklisch immer wiederkehrende Dinge tun müssen und einen ungefähr immer gleichen Aufwand benötigen. So etwas erfolgt in Realzeitsystemen mit festen Aufgaben. Es wird der späteste Startzeitpunkt berechnet (Deadline Laufzeit) sowie die Zeitdifferenz zu diesem Zeitpunkt. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 27 Phänomen der Prioritätsinversion I Bei priorisierten Verfahren gibt es noch eine kleine Schwierigkeit: Wenn eine Task mit hoher Priorität auf eine Task mit niedrigerer Priorität warten muss, widerspricht dies der höheren Priorität. Das kann z.b. bei einem p() vor einem kritischen Abschnitt passieren: Task L (mit niedriger Priorität) betritt den kritischen Abschnitt. Dann kommt Task H (mit hoher Priorität), führt das p() zu diesem belegten Abschnitt aus und muss auf Task L warten. Prioritätsinversion = Situation, in der (für eine unzumutbar lange Zeit) eine Task auf eine andere warten muss, die eine niedrigere Priorität besitzt Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 28

15 Phänomen der Prioritätsinversion II Verschärfung der Situation durch Tasks mit drei Prioritätsstufen: 1) Task L (mit niedriger Priorität) betritt den kritischen Abschnitt. 2)Dann kommt Task H (mit hoher Priorität), führt das p() zu diesem belegten Abschnitt aus und muss auf Task L warten. 3)Task M mit mittlerer Priorität (L<M<H) verdrängt nun Task L, so dass Task H noch länger warten muss. Gegenmaßnahme: Prioritätsvererbung In der obigen Situation erhält eine Task mindestens die Priorität der an der Spitze der Warteliste wartenden Task: 1) Task L (mit niedriger Priorität) betritt den kritischen Abschnitt. 2)Dann kommt Task H (mit hoher Priorität), führt das p() zu diesem belegten Abschnitt aus und muss auf Task L warten. 3)Task L erbt die Priorität H. Nun kann Task M mit mittlerer Priorität die Task L nicht mehr verdrängen. 4)Task L führt das v() aus und erhält wieder seine ursprüngliche niedrige Priorität. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 29 Phänomen der Prioritätsinversion III Die zeitlich begrenzte Vererbung von Priorität gilt für jegliches Warten auf Ressourcen, z.b.: Warten in p() Warten im receive() auf eine Nachricht Warten auf Freigabe von Speicher... jedoch nicht beim Warten auf I/O. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 30

16 Scheduling mit mehreren CPUs I Symmetrisches Multiprocessing = Alle CPUs haben dieselben Fähigkeiten und Geschwindigkeiten Asymmetrisches Multiprocessing = Einige der CPUs sind entweder langsamer als andere oder ihnen fehlen Fähigkeiten, z.b. Floating Point-Operationen Hier wird nur das symmetrische Multiprocessing behandelt. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 31 Scheduling mit mehreren CPUs II Variante 1 CPU 1 CPU CPU n Jede CPU hat ihre eigenen Warteschlangen mit entsprechenden Prioritäten bzw. Zeitscheiben. Es wird ein eigenes Scheduling realisiert in einem "virtuellen" Scheduler, der nur für die eine betreffende CPU zuständig ist. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 32

17 Scheduling mit mehreren CPUs III Variante 1 Vorteile 1) Cache nach Task-Wechsel hat meistens richtigen Inhalt. 2)Jede CPU hat einen Scheduler, der nur auf seine Queues zugreift, also wenige Kollisionen beim Zugriff auf Scheduling-Tabellen. Nachteile 1)Schlechte Verteilung der Belastung: einige CPUs sind überlastet, andere wenig belastet 2)Interrupts müssen von den CPUs bearbeitet werden, deren Task den I/O-Vorgang gestartet haben. 3) Zuordnung der Timer-Interrupts zu einer CPU muss erfolgen. Die Punkte 2) haben den Sinn, dass möglichst selten mehrere CPUs auf dieselben Datenstrukturen zugreifen. Denken Sie an Syscalls und Interrupts, die Auswirkungen auf die Scheduler-Tabellen haben. Das Ziel: Trennung in separate Bereiche. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 33 Scheduling mit mehreren CPUs IV Variante 2 CPU 1 CPU 2... CPU n Es gibt nur eine einzige Warteschlange bzw. Schlangensystem für alle CPUs. Ein globaler Scheduler regelt die CPU-Zuteilung. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 34

18 Scheduling mit mehreren CPUs V Variante 2 Vorteile 1) Guter Ausgleich der Belastung: alle CPUs sind gleich belastet. 2) Leicht zu implementieren 3) I/O-Interrupts können von beliebiger CPU bearbeitet werden. 4) Timer-Interrupts können von beliebiger CPU bearbeitet werden. Nachteile 1) Cache nach Task-Wechsel hat meistens einen falschen Inhalt. 2)Zu einem Zeitpunkt darf nur ein Scheduler auf einer beliebigen CPU laufen, d.h. die CPUs müssen sich dazu abstimmen. 3)Hohe Wahrscheinlichkeit für Kollisionen beim Zugriff auf Scheduling-Tabellen Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 35 Scheduling mit mehreren CPUs VI Variante 2 Um diese Variante 2 zu verbessern, wird häufig ein Parameter für die "Affinität" eines Tasks zu einer CPU eingeführt. Oder: Bei der Task-Erzeugung wird die ID der CPU, auf der die Task ausschließlich laufen soll, angegeben. Mit diesen beiden Mechanismen wird ein Kompromiss zwischen den beiden Varianten realisiert. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 36

19 Nach dieser Anstrengung etwas Entspannung... Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 37

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

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

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

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

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

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

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

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

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

Ü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

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

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

RTOS Einführung. Version: Datum: Autor: Werner Dichler RTOS Einführung Version: 0.0.1 Datum: 20.07.2013 Autor: Werner Dichler Inhalt Inhalt... 2 RTOS... 3 Definition... 3 Anforderungen... 3 Aufgaben... 3 Eigenschaften... 4 Einteilung der Betriebssysteme...

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

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

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

Hausübung 2. Konzepte und Methoden der Systemsoftware. Aufgabe 1: Einfache Schedulingstrategien. SoSe bis

Hausübung 2. Konzepte und Methoden der Systemsoftware. Aufgabe 1: Einfache Schedulingstrategien. SoSe bis Universität Paderborn Fachgebiet Rechnernetze SoSe 2014 Konzepte und Methoden der Systemsoftware Hausübung 2 2014-05-12 bis 2014-05-23 Hausübungsabgabe: Format: Lösungen in schriftlicher oder gedruckter

Mehr

Proseminar KVBK : Scheduler unter Linux

Proseminar KVBK : Scheduler unter Linux Proseminar KVBK : Scheduler unter Linux Valderine Kom Kenmegne Valderine Kom Kenmegne 1 Gliederung 1. Einführung 2. Einplanungsstrategien im Betriebsystem 2.1 Ziel der Einplanungsstrategien 2.2 Beispiele

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

Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden )

Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden ) Threads Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden ) Ein thread bearbeitet eine sequentielle Teilaufgabe innerhalb eines Prozesses Mehrere nebenläufige

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

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

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

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

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

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

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

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

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

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

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

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

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

Verteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016

Verteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016 Verteilte Systeme SS 2016 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 31. Mai 2016 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/14) i

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

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

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

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

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

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard

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

Mehr

Echtzeitprogrammierung und Echtzeitverhalten von Keil RTX. Frank Erdrich Semester AI 7

Echtzeitprogrammierung und Echtzeitverhalten von Keil RTX. Frank Erdrich Semester AI 7 Echtzeitprogrammierung und Echtzeitverhalten von Frank Erdrich Semester AI 7 Inhalt Einleitung Echtzeit und Echtzeitsysteme Echtzeitprogrammierung Real-Time Operating System Keil RTOS RTX Zusammenfassung

Mehr

Grundlagen Rechnerarchitektur und Betriebssysteme

Grundlagen Rechnerarchitektur und Betriebssysteme Grundlagen Rechnerarchitektur und Betriebssysteme Johannes Formann Definition Computer: Eine Funktionseinheit zur Verarbeitung von Daten, wobei als Verarbeitung die Durchführung mathematischer, umformender,

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

Vorbereitung zur Prüfung Echtzeitbetriebssysteme

Vorbereitung zur Prüfung Echtzeitbetriebssysteme Vorbereitung zur Prüfung Echtzeitbetriebssysteme Zugelassene Hilfsmittel: Taschenrechner Bitte verwenden Sie keinen roten Farbstift! 1. Echtzeitbetriebssysteme - Allgemein (15 Punkte) 1.1. Warum setzen

Mehr

Klausur. Betriebssysteme SS 2007

Klausur. Betriebssysteme SS 2007 Matrikelnummer: 9999999 Klausur FB Informatik und Mathematik Prof. R. Brause Betriebssysteme SS 2007 Vorname: Nachname: Matrikelnummer: Geburtsdatum: Studiengang: Bitte tragen Sie auf jeder Seite Ihre

Mehr

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

Konzepte und Methoden der Systemsoftware. Aufgabe 1: Polling vs Interrupts. SoSe bis P SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 3(Musterlösung) 2014-05-05 bis 2014-05-09 Aufgabe 1: Polling vs Interrupts (a) Erläutern Sie

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

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

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

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

Betriebssysteme Kapitel E : Prozesse

Betriebssysteme Kapitel E : Prozesse Betriebssysteme Kapitel E : Prozesse 1 Inhalt Prozesse Zustand eines Prozesses» Kontext» Kontextswitch Prozessbeschreibungsblock PCB Zustandsübergänge» Zustandsdiagramm 2 Hinweis Ein Programm(code) kann

Mehr

Betriebssysteme Betriebssysteme und. Netzwerke. Netzwerke Theorie und Praxis

Betriebssysteme Betriebssysteme und. Netzwerke. Netzwerke Theorie und Praxis Einführung Einführung in in Betriebssysteme Betriebssysteme und und Theorie und Praxis Theorie und Praxis Oktober 2006 Oktober 2006 Prof. Dr. G. Hellberg Prof. Dr. G. Hellberg Email: hellberg@drhellberg.de

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

Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner. Übung 5: Semaphoren

Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner. Übung 5: Semaphoren Universität Stuttgart Prof. Dr.-Ing. Dr. h. c. P. Göhner Aufgabe 5.1: Übung 5: Semaphoren Semaphor-Operationen In Bild 5.1.1 ist die Anordnung von Semaphor-Operationen am Anfang und am e der asks A,B,C

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

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

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

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl

(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl Übung zur Vorlesung Grundlagen Betriebssysteme und Systemsoftware (Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de) http://www11.in.tum.de/veranstaltungen/grundlagenbetriebssystemeundsystemsoftwarews1112

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

OSEK / OSEKtime Ausgewählte Kapitel eingebetteter Systeme

OSEK / OSEKtime Ausgewählte Kapitel eingebetteter Systeme OSEK / OSEKtime Ausgewählte Kapitel eingebetteter Systeme Wilhelm Haas Wilhelm.Haas@informatik.stud.uni-erlangen.de Friedrich-Alexander-Universität Erlangen-Nürnberg Institut für Informatik Lehrstuhl 4

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

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

(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert?

(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert? SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 2 2014-04-28 bis 2014-05-02 Aufgabe 1: Unterbrechungen (a) Wie unterscheiden sich synchrone

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

Betriebssysteme Teil 7: Konzept der Threads

Betriebssysteme Teil 7: Konzept der Threads Betriebssysteme Teil 7: Konzept der Threads 06.11.15 1 Übersicht I/O als langsamster Vorgang Threadwechsel mit der Resume-Operation Interrupts Scheduler Time Sharing 2 Motivation Die Geschwindigkeit der

Mehr

Klausur zur Vorlesung Grundlagen der Betriebssysteme

Klausur zur Vorlesung Grundlagen der Betriebssysteme Prof. Dr. L. Wegner Dipl.-Math. K. Schweinsberg Klausur zur Vorlesung Grundlagen der Betriebssysteme 19.2.2004 Name:... Vorname:... Matrikelnr.:... Studiengang:... Hinweise: Bearbeitungszeit 2 Stunden.

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

Ü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

Scheduling-Verfahren für Mehrbenutzer-Systeme. Klaus Kusche, Juni 2012

Scheduling-Verfahren für Mehrbenutzer-Systeme. Klaus Kusche, Juni 2012 Scheduling-Verfahren für Mehrbenutzer-Systeme Klaus Kusche, Juni 2012 Inhalt Einleitung & Begriffe Ziele & Voraussetzungen Das Round-Robin-Verfahren...... und seine Probleme Die Scheduler in Windows und

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

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

Prozesse und Scheduling unter Linux (Kernel 2.4.XX)

Prozesse und Scheduling unter Linux (Kernel 2.4.XX) Prozesse und Scheduling unter Linux (Kernel 2.4.XX) Vorlesung: Dozent: Betriebssysteme Odej Kao Vortragende: Andrè Neubert Alexander Geburzi Überblick 1. Prozesse unter Linux ProcessControlBlock Prozessliste

Mehr

Es kann maximal ein Prozess die Umladestelle benutzen.

Es kann maximal ein Prozess die Umladestelle benutzen. SoSe 0 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung (Musterlösung) 0-06-0 bis 0-06-06 Aufgabe : Erzeuger/Verbraucher-Pattern Ein Getränkemarkt hat

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

Betriebssysteme Wintersemester 2005/06

Betriebssysteme Wintersemester 2005/06 Betriebssysteme Wintersemester 2005/06 Vorlesung 4 CPU Scheduling Dr. Oliver Waldhorst Rechnernetze und verteilte Systeme Universität Leipzig http://www.informatik.uni-leipzig.de/rnvs Fahrplan Nr. 1 2

Mehr

Betriebssysteme BS-H WS 2014/15. Hans-Georg Eßer. Foliensatz H: Zusammenfassung. Dipl.-Math., Dipl.-Inform. v1.0, 2015/01/10

Betriebssysteme BS-H WS 2014/15. Hans-Georg Eßer. Foliensatz H: Zusammenfassung. Dipl.-Math., Dipl.-Inform. v1.0, 2015/01/10 BS-H Betriebssysteme WS 2014/15 Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz H: Zusammenfassung v1.0, 2015/01/10 10.01.2015 Betriebssysteme, WS 2014/15, Hans-Georg Eßer Folie H-1 Übersicht: BS

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

Prozessor (CPU, Central Processing Unit)

Prozessor (CPU, Central Processing Unit) G Verklemmungen G Verklemmungen Einordnung: Prozessor (CPU, Central Processing Unit) Hauptspeicher (Memory) Ein-, Ausgabegeräte/ Periphere Geräte (I/O Devices) externe Schnittstellen (Interfaces) Hintergrundspeicher

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

Vorlesung Betriebssysteme I

Vorlesung Betriebssysteme I 1 / 33 Vorlesung Betriebssysteme I Thema 7: Zuteilung des Prozessors Robert Baumgartl 17. Januar 2017 Prozessorzuteilung (Scheduling) = Beantwortung der Frage: Welche Aktivität soll zu einem bestimmten

Mehr

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

Busse. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009 Busse Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009 Busse 1/40 2008-10-13 Übersicht 1 Einleitung 2 Bus-Konfiguration

Mehr

Technische Informatik II

Technische Informatik II Institut für Technische Informatik und Kommunikationsnetze Technische Informatik II Übung 1: Prozesse und Threads Hinweis: Weitere ufgaben zu diesem Thema finden sie in den egleitbüchern zur Vorlesung.

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

183.579, SS2012 Übungsgruppen: Do., 14.6. Mi., 20.6.2012

183.579, SS2012 Übungsgruppen: Do., 14.6. Mi., 20.6.2012 VU Technische Grundlagen der Informatik Übung 8: Systemsoftware und Netzwerke 183.579, SS2012 Übungsgruppen: o., 14.6. Mi., 20.6.2012 ufgabe 1: Virtual Memory Zeichnen Sie ein System das Paging zur Speicherverwaltung

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

Wie groß ist die Page Table?

Wie groß ist die Page Table? Wie groß ist die Page Table? Im vorigen (typischen) Beispiel verwenden wir 20 Bits zum indizieren der Page Table. Typischerweise spendiert man 32 Bits pro Tabellen Zeile (im Vorigen Beispiel brauchten

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

Übung zur Vorlesung Echtzeitsysteme

Übung zur Vorlesung Echtzeitsysteme Technische Universität München Fakultät für Informatik Forschungs- und Lehreinheit Informatik VI Übung zur Vorlesung Echtzeitsysteme Philipp Heise heise@in.tum.de Christoph Staub staub@in.tum.de Steffen

Mehr

Echtzeitsysteme: Grundlagen. Dipl.-Inf. J. Richling Wintersemester 2003/2004

Echtzeitsysteme: Grundlagen. Dipl.-Inf. J. Richling Wintersemester 2003/2004 Echtzeitsysteme: Grundlagen Dipl.-Inf. J. Richling Wintersemester 2003/2004 ? Was ist Echtzeit? 03-1 Eigenschaften mobiler und eingebetteter Systeme c J.Richling Was ist Echtzeit? Es gibt eine Reihe verwirrender

Mehr

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

Deadlocks. System hat nur begrenzte Ressourcen (Ressourcentypen) Hauptspeicher Externer Speicher Drucker File Kapitel V Deadlocks (Verklemmungen) 1 Deadlocks System hat nur begrenzte Ressourcen (Ressourcentypen) Hauptspeicher Externer Speicher Drucker File Prozesse benötigen Genehmigung vor der Benutzung von Ressourcen.

Mehr

Quantitative Methoden. Betriebssysteme

Quantitative Methoden. Betriebssysteme Quantitative Methoden Betriebssysteme Problem und Gegenstand Problem Erfüllen von QoS-Anforderungen mit zeit- bzw. größenbeschränkten Ressourcen Gegenstand Scheduling basierend auf deterministischen Modellen

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

Windows CE. Process Control and Robotics. Fabian Garagnon

Windows CE. Process Control and Robotics. Fabian Garagnon Windows CE Process Control and Robotics Fabian Garagnon 14.01.2009 Agenda 3 Geschichte & Timeline Echtzeit & Multithreading Architektur Memory Management & Context Switch Entwicklung unter CE Interrupts

Mehr

Scheduling in Echtzeitbetriebssystemen. Prof. Dr. Margarita Esponda Freie Universität Berlin

Scheduling in Echtzeitbetriebssystemen. Prof. Dr. Margarita Esponda Freie Universität Berlin Scheduling in Echtzeitbetriebssystemen Prof. Dr. Margarita Esponda Freie Universität Berlin Echtzeitsysteme Korrekte Ergebnisse zum richtigen Zeitpunkt Hart Echtzeitsysteme Eine verspätete Antwort ist

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

One of the few resources increasing faster than the speed of computer hardware is the amount of data to be processed. Bin Hu

One of the few resources increasing faster than the speed of computer hardware is the amount of data to be processed. Bin Hu Bin Hu Algorithmen und Datenstrukturen 2 Arbeitsbereich fr Algorithmen und Datenstrukturen Institut fr Computergraphik und Algorithmen Technische Universität Wien One of the few resources increasing faster

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

Scheduler. Optimierung des Schedulings. Gliederung. Allgemeine Ziele. Synchronisationsprotokolle

Scheduler. Optimierung des Schedulings. Gliederung. Allgemeine Ziele. Synchronisationsprotokolle Aufgabe: Zuteilung der auf die CPU Automatisches Entwurfs- und Entwicklungssystem für harte Echtzeitsysteme Zuteilungsstrategien: Satz Jan Blumenthal 20.02.2003 Zyklisch 4 Gliederung Optimierung des Schedulings

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

Übungen zum Fach Betriebssysteme Kapitel 3

Übungen zum Fach Betriebssysteme Kapitel 3 Übungen zum Fach Betriebssysteme Kapitel 3 Prof. Dr. Kern & Prof. Dr. Wienkop Prozessverwaltung 1 Prozeßauslagerung Ein Betriebssystem, das die Zustände "rechnend", "bereit" und "wartend" sowie den künstlichen

Mehr