Quantitative Methoden. Betriebssysteme



Ähnliche Dokumente
Quantitative Methoden

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

Echtzeitscheduling (1)

Systeme 1. Kapitel 5. Scheduling

Echtzeitfähige Ereignisgetriebene Scheduling-Strategien

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

5) Realzeitscheduling

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

Verteilte Echtzeit-Systeme

OSEK / OSEKtime - ein Vergleich

Round-Robin Scheduling (RR)

Hausübung 2(Musterlösung)

Betriebssysteme (BTS)

Vorbereitung zur Prüfung Echtzeitbetriebssysteme

Systeme I: Betriebssysteme Kapitel 7 Scheduling. Maren Bennewitz

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

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

1 Einleitung. 1.1 Motivation und Zielsetzung der Untersuchung

OSEK / OSEKtime Ausgewählte Kapitel eingebetteter Systeme

1. Allgemeines zum tevitel.wq-monitor Seite WQ-Monitor konfigurieren Seite 4

CPU-Scheduling - Grundkonzepte

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

Funktionaler Zusammenhang. Lehrplan Realschule

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

Data Mining: Einige Grundlagen aus der Stochastik

11. Rent-Seeking 117

Dämon-Prozesse ( deamon )

SOZIALVORSCHRIFTEN IM STRAßENVERKEHR Verordnung (EG) Nr. 561/2006, Richtlinie 2006/22/EG, Verordnung (EU) Nr. 165/2014

OSEK Deadline-Analyse

Es kann maximal ein Prozess die Umladestelle benutzen.

Übungen zum Fach Betriebssysteme Kapitel 3

An integrated total solution for automatic job scheduling without user interaction

3. Echtzeit-Scheduling Grundlagen

Konsistenzproblematik bei der Cloud-Datenspeicherung

TTS - TinyTimeSystem. Unterrichtsprojekt BIBI

Real-Time Operating Systems Ein Überblick

Technische Informatik II

Was können Schüler anhand von Primzahltests über Mathematik lernen?

Dokumentation Schedulingverfahren

Betriebssysteme und Systemsoftware

Das Lastverteilungsproblem

Abitur 2007 Mathematik GK Stochastik Aufgabe C1

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

CNAM: Theoretische Informatik I

Bitte verwenden Sie nur dokumentenechtes Schreibmaterial!

1 topologisches Sortieren

Systeme 1. Kapitel 10. Virtualisierung

5) Realzeitscheduling

4. Dynamische Optimierung

BONUS MALUS SYSTEME UND MARKOV KETTEN

Klausur zur Veranstaltung Industrielle Produktionssysteme im SS 04

User Experience vs. Retrievaltests Wie lässt sich die Relevanz von Suchergebnissen bewerten?

Ressourceneinsatzplanung in der Fertigung

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf

Pflichtenheft Version 1.0. Mäxchen/Meiern iphone App

Konzepte der Informatik

Zeichen bei Zahlen entschlüsseln

Kapitel 6. Komplexität von Algorithmen. Xiaoyi Jiang Informatik I Grundlagen der Programmierung

Freigabemitteilung Nr. 39. Neue Funktionen adresse zurücksetzen / ändern Kennung ändern Anlegen von OCS (elektr. Postfach) Mailbenutzern

Tipps und Tricks zu Netop Vision und Vision Pro

1.1. Welche Charakteristika kennzeichnen das globale Produktions- und Distributionsnetz von Bosch Power Tools?


(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de)

Kompetitive Analysen von Online-Algorithmen

Vorlesung Betriebstechnik/Netzplantechnik Operations Research

3. Scheduler und Schedulingstrategien

MATHEMATIK 3 STUNDEN. DATUM: 8. Juni 2009

Leistungsgesteuerte Terminplanung

Übungsklausur. Bitte wählen Sie fünf Aufgaben aus! Aufgabe 1. Übungsklausur zu Mathematik I für BWL und VWL (WS 2008/09) PD Dr.

Grundlagen der Technischen Informatik. Sequenzielle Netzwerke. Institut für Kommunikationsnetze und Rechnersysteme. Paul J. Kühn, Matthias Meyer

JÖRG RAMBAU. Neulich an der TU Berlin...

BERECHNUNG DER FRIST ZUR STELLUNGNAHME DES BETRIEBSRATES BEI KÜNDIGUNG

Theoretische Grundlagen der Informatik

Übungsaufgaben Tilgungsrechnung

Programmierparadigmen. Programmierparadigmen. Imperatives vs. objektorientiertes Programmieren. Programmierparadigmen. Agenda für heute, 4.

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse Lösung 10 Punkte

Unternehmensname Straße PLZ/Ort Branche Mitarbeiterzahl in Deutschland Projektverantwortlicher Funktion/Bereich * Telefon

2. Konfiguration der Adobe Software für die Überprüfung von digitalen Unterschriften

Kapiteltests zum Leitprogramm Binäre Suchbäume

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Ihr Ideen- & Projektmanagement-Tool

Requirements Engineering WS 11/12

R. Brinkmann Seite Schriftliche Übung Mathematik Stochastik II (Nachschreiber) Jan. 2007

Abituraufgabe zur Stochastik, Hessen 2009, Grundkurs (TR)

Professionelle Seminare im Bereich MS-Office

Daten sammeln, darstellen, auswerten

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

Einführung in die Algebra

Darstellungsformen einer Funktion

Skalierung des Ausgangssignals

Gezielt über Folien hinweg springen

Approximationsalgorithmen

Theoretische Grundlagen der Informatik WS 09/10

Transkript:

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 probabilistischen Modellen Hauptspeicherverwaltung Externspeicherzugriff Dateisysteme Echtzeitsysteme Betriebssysteme WS 2014, Quantitative Methoden 2

Literatur WECK, G.: Prinzipien und Realisierung von Betriebssystemen. B. G. Teubner 1983. LIU, J. W. S.: Real-Time Systems. Prentice-Hall, 2000 STANKOWIC, J. A., et al.: Implications of Classical Scheduling Results for Real-Time Systems. In: Computer 6/1995. DOWDY, L.; C. LOWERY: P.S. to Operating Systems. Prentice-Hall, 1993. PFLUG, G.: Stochastische Modelle in der Informatik. B. G. Teubner 1986. Betriebssysteme WS 2014, Quantitative Methoden 3

Scheduling Einführung Begriff Vorgehensweise zur Einplanung von Aufgaben, die durch ein aktives Betriebsmittel zu bearbeiten sind. Entscheidungsstrategien, die die Reihenfolge festlegen, in der sich Prozesse um den Prozessor (allgemeiner: um ein Betriebsmittel) bewerben müssen bzw. in der sie aus einer Warteschlange (für das Betriebsmittel) ausgewählt werden. Aufgabe der Schedulingtheorie Entwicklung und Bewertung (!) derartiger Strategien Betriebssysteme WS 2014, Quantitative Methoden 4

Scheduling Einführung Ziele hohe Prozessorauslastung größtmöglicher Durchsatz minimale Gesamtbearbeitungszeit geringe durchschnittliche Verweilzeit minimale Antwortzeit garantierte Reaktionszeit Gerechtigkeit /U D t g t v Einordnung und Abgrenzung Ablaufplanung (Teilgebiet der Operationsforschung) Prozeßauswahl (System-S.) Prozessorzuteilung (Dispatching) Strategie Algorithmus Implementation Betriebssysteme WS 2014, Quantitative Methoden 5

Scheduling Einführung Ablaufplan (Schedule) zeitabhängige Zuordnung von Prozessen zu Prozessoren oft: graphische Darstellung der Prozessorzuteilung in Form eines GANTT-Diagramms Prozeß Thread Job Task Auftrag Vorgang... Klassifikationsgesichtspunkte Ein- / Mehrprozessorsysteme Bearbeitung ohne / mit Prozessorentzug Deterministische / probabilistische Modelle Echtzeitbedingungen Betriebssysteme WS 2014, Quantitative Methoden 6

Scheduling Deterministische Modelle Modellannahmen Gegeben: J={ J 1,..., J n } Menge von Jobs R J J Präzedenzrelation t : J R Abbildung, wobei t J i =:t i durch Messung oder Rechnung ermittelte tatsächliche (konstante) Ausführungszeit auf Erfahrung beruhende mittlere Zeit abgeschätzte maximal mögliche Ausführungszeit (WCET) Anwendungsbereich: (annähernd) konstantes Aufgabenprofil Betriebssysteme WS 2014, Quantitative Methoden 7

Scheduling Deterministische Modelle Graphische Darstellung Vorgangsknotennetz A/2 C/2 D/4 A/2 B/4 Vorgangspfeilnetz C/2 D/4 B/4 E/3 F/3 Möglicher Ablaufplan bei zwei Prozessoren: Prozessor 1 Prozessor 2 frei Betriebssysteme WS 2014, Quantitative Methoden 8

Scheduling in 1-Prozessor-Systemen ohne Entzug FIFO / LIFO SPT Shortest Processing Time ist bei R = optimal bzgl. t v Min! Beispiel: J i A B C D t i 4 1 3 2 FIFO: t w = 1 17 (0+4+5+8)= 4 4 SPT: t w = 1 4 (0+1+3+6)= 10 4 Bei R ist das Problem NP-vollständig! Betriebssysteme WS 2014, Quantitative Methoden 9

Scheduling in 1-Prozessor-Systemen mit Entzug RR Round Robin Prozeßwechsel mit konstantem Zeitquant Q Beispiel: J i A B C D t i 4 1 3 2 Q = 1 t w = 1 4 (6+1+6+5)= 18 4 Problem: Größe von Q Betriebssysteme WS 2014, Quantitative Methoden 10

Scheduling in 1-Prozessor-Systemen mit Entzug MLF Multilevel-Feedback Prozeßwechsel mit Zeitquant Q und Prioritäten Q Priorität 1 A B B C C D DA Priorität 2 A Priorität 3 Priorität 4 Betriebssysteme WS 2014, Quantitative Methoden 11

Scheduling in 1-Prozessor-Systemen Rechenintensive vs. E/A-intensive Jobs Antwortzeit und Durchsatz abhängig von Priorität A B Priorität(A) > Priorität(B) Priorität(B) > Priorität(A) Betriebssysteme WS 2014, Quantitative Methoden 12

Scheduling in Mehrprozessor-Systemen m identische Prozessoren. Enumeration: Aufwand O(e jobanzahl ) Optimalitätskriterium t g Min! R bel.: polynomialer Algorithmus nur für m = 2, t i = const. bekannt R = : m = 1 trivial. m > 1: Approximation LPT Largest Processing Time _ Optimalitätskriterium t v Min! R = : SPT ist optimal (sonst NP-vollständig). Betriebssysteme WS 2014, Quantitative Methoden 13

Scheduling in Mehrprozessor-Systemen Beispiele m = 2 J i A B C D E t i 3 2 2 2 3 LPT: t g =7 t w = 11 5 0 5 SPT: t g =7 t w = 8 5 0 5 Opt. bzgl. _ t g =6 t w = 9 t g und t w 5 Entzug: 0 5 t g =6 t w = 8 5 0 5 Betriebssysteme WS 2014, Quantitative Methoden 14

Fallstudie: Unix (konzeptionell) Statische Prioritäten im Kern-Modus Priorität gute Auslastung schneller E/A-Geräte Dynamische Prioritäten im Nutzer-Modus Priorität = f(basis-priorität, nice-wert, CPU-Nutzung) Bevorzugung interaktiver Anwendungen Betriebssysteme WS 2014, Quantitative Methoden 15

Fallstudie: Windows Vier Prioritätsbänder mit jeweils fünf Stufen 26 Real-Time High Normal Idle highest above normal below lowest 1 Dynamische Priorität entsprechend E/A-Aktivität 10 Priorität 6 Entzug E/A Entzug Betriebssysteme WS 2014, Quantitative Methoden 16 t

Echtzeit-Scheduling Grundbegriffe Job Planungseinheit für Scheduling e Ausführungszeit, Bearbeitungszeit (execution time) r Freigabezeit, Bereitzeit (releade time) d Zeitschranke, Frist (deadline) Task Menge zusammengehörender Jobs speziell: Jobnetz oder periodische Task Deadline hart / weich Nutzen time/utility function Zeit Betriebssysteme WS 2014, Quantitative Methoden 17

Echtzeit-Scheduling Grundbegriffe Schedule (Ablaufplan) zeitliche Zuordnung von Jobs zu Prozessoren gültig (valid): Zuordnung verletzt keine der gegebenen Bedingungen ausführbar (feasible): alle Zeitschranken werden eingehalten Scheduling Einplanung: Vorgehen (Algorithmus), das bei gegebener Taskbeschreibung einen Ablaufplan bestimmt Prozessor-Zuordnung: Auswahl eines Jobs durch Scheduler des Systems Ressource (Betriebsmittel) Prozessor, i.d.r. entziehbar (Kosten!) weitere, nicht entziehbare Ressourcen Betriebssysteme WS 2014, Quantitative Methoden 18

Echtzeit-Scheduling Grundbegriffe Einplanbarkeit Taskmenge ist einplanbar (schedulable, feasible) bei einem Scheduling-Algorithmus, wenn der Algorithmus einen ausführbaren Ablaufplan erzeugt Admission (Zulassung) Verfahren, das die Einplanbarkeit einer Taskmenge entscheidet! Optimalität (bzgl. Einplanbarkeit) eines Scheduling-Verfahrens in einer Klasse C von Verfahren: erzeugt für jede Taskmenge T einen ausführbaren Ablaufplan, sofern T überhaupt mit einem Verfahren aus C eingeplant werden kann Betriebssysteme WS 2014, Quantitative Methoden 19

Echtzeit-Scheduling Grundbegriffe Klassifikationsgesichtspunkte Scheduling für Jobnetze periodische Tasks Scheduling für periodische Tasks zeitgesteuert (time driven) ereignisgesteuert (event driven) statische dynamische Prioritäten nicht-periodische Tasks Nutzung weiterer, nicht entziehbarer Betriebsmittel Entziehbarkeit Ein-/Mehrprozessor-Systeme Betriebssysteme WS 2014, Quantitative Methoden 20

Echtzeit-Scheduling Modellannahmen Deterministisches Modell jede Task T i ist periodische Folge von Jobs, Periode p i Periode ist zugleich Zeitschranke (relative Deadline d i ) Bearbeitungszeit e i ist konstant Prozessor ist entziehbar Tasks sind voneinander unabhängig ( in Zeit und Raum ) System-Scheduling prioritätsbasiert bereit eingeplant beendet abs. Deadline/ Periodenende Bedienungszeit e i Antwort-, Verweilzeit t v Betriebssysteme WS 2014, Quantitative Methoden 21

Echtzeit-Scheduling Verfahren RMS Rate Monotonic Scheduling LIU/LAYLAND, 1972 statische Taskpriorität proportional zu Ankunftsrate EDF Earliest Deadline First Task mit nächstgelegener Deadline hat aktuell höchste Priorität Beispiel T 1 T 2 T 1 hat höhere Priorität als T 2 RMS EDF 0 5 10 Betriebssysteme WS 2014, Quantitative Methoden 22

Echtzeit-Scheduling Eigenschaften Optimalität bzgl. Einplanbarkeit RMS ist optimal in der Klasse aller statischen, EDF in der Klasse aller (dynamischen) Scheduling-Algorithmen (in Einprozessor-Systemen für unabhängige, verdrängbare Tasks) Optimalität von RMS: Taskmenge T irgendwie einplanbar T mit RMS einplanbar Existenz eines Ablaufplans (Admission-Kriterium) n bei RMS, falls = n n 2 1 0,83 0,69 (ln 2) p i i=1 e i bei EDF genau dann, wenn = n i=1 e i p i 1 Betriebssysteme WS 2014, Quantitative Methoden 23

Scheduling - Probabilistische Modelle Modellannahmen In zufälligem Ankunftsabstand T a treffen Anforderungen an den Scheduler mit zufälligem Bedarf an Bedienungszeit T b ein. Anwendungsbereich: Interaktiver Betrieb, verteilte Systeme Aufgabe Bestimmen von Bewertungsgrößen wie T w Wartezeit T v = T w + T b Verweilzeit N w Warteschlangenlänge N v Anzahl der im System befindlichen Forderungen Mathematisches Instrumentarium Bedienungstheorie (Warteschlangentheorie) Betriebssysteme WS 2014, Quantitative Methoden 24

Probabilistische Modelle M/M/1/ꝏ-System Struktur BA: Bedienungsanlage FQ: Forderungsquelle WR: Warteraum FS: Forderungssenke BE: Bedieneinrichtung FQ BA BE FS WR T a exponentiell verteilt, Par. T b exponentiell verteilt, Par. Wartezeit T w + Bedienungszeit T b Bewertungsgrößen E(T w )= ρ μ(1 ρ) E(N w )= ρ2 1 ρ Verweilzeit T v E(T v )=E(T w )+E(T b )= 1 μ(1 ρ) E(N v )=E(N w )+E(N b )= ρ 1 ρ ρ= λ μ =E(T b ) E(T a ) Betriebssysteme WS 2014, Quantitative Methoden 25

Probabilistische Modelle Anwendung FIFO: einfach. Gleichbehandlung aller Aufträge. SJN: Bevorzugung kürzerer Aufträge. t w wird bei R = minimal, falls alle b bekannt. HRN: größere Gerechtigkeit. FEP: statisch. Prioritätszuordnung? Betriebssysteme WS 2014, Quantitative Methoden 26

Ausblick: Quantitative Methoden Bewertung von Speicher-Zuteilungsstrategien Segmentierter Speicher Freispeicherlisten externe Fragmentierung Auffüllen und Kompaktifizieren Aufwand Seitenorientierte Systeme Arbeitsmengen Fenstergröße; Seitenflattern statische Ersetzungsstrategien Seitenfehlerrate! Pufferdimensionierung Betriebssysteme WS 2014, Quantitative Methoden 27

Ausblick: Quantitative Methoden Externspeicher-Zugriff Scheduling Leistungsanalyse mittels Bedienungsnetzen Prioritätsinversion, Berechnung von Blockierungszeiten Scheduling-Verfahren für flexible Applikationen Scheduling-Verfahren für nicht-periodische Tasks und Tasks ohne Echtzeit-Anforderungen Admission-Algorithmen Leistungsanalyse von Betriebssystem-Komponenten Scheduling-Theorie Betriebssysteme WS 2014, Quantitative Methoden 28

Quantitative Methoden 1. Problem, Gegenstand und Grundbegriffe 2 2. Scheduling Deterministische Modelle 7 2.1. Modellannahmen und -beschreibung 7 2.2. Scheduling in 1-Prozessor-Systemen 9 2.3. Scheduling in Mehrprozessor-Systemen 13 2.4. Fallstudien 15 3. Scheduling in Echtzeitsystemen 17 3.1. Grundlagen 17 3.2. Modellannahmen und Verfahren 21 4. Scheduling Probabilistische Modelle 24 5. Ausblick 27 Betriebssysteme WS 2014, Quantitative Methoden 29