Betriebssysteme (BS)
|
|
|
- Jasmin Weiß
- vor 8 Jahren
- Abrufe
Transkript
1 Betriebssysteme (BS) Scheduling Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund Inhalt Wiederholung Abfertigungszustände und Zustandsübergänge Klassische CPU-Zuteilungsstrategien FCFS... einfach RR, VRR... zeitscheibenbasiert SPN (SJF), SRTF, HRRN... vorhersagebasiert FB (MLQ, MLFQ)...prioritätenbasiert Bewertungskriterien und Vergleich Beispiele UNIX (4.3BSD) NT Silberschatz, Kap.... 5: Process Scheduling Tanenbaum, Kap : Scheduling Es geht um Uniprozessor-Scheduling für den Allgemeinzweckbetrieb. Nicht betrachtet wird: Multiprozessor-Scheduling Echtzeit-Scheduling E/A-Scheduling BS: 04 Scheduling 2
2 Inhalt Wiederholung Abfertigungszustände und Zustandsübergänge Klassische CPU-Zuteilungsstrategien FCFS... einfach RR, VRR... zeitscheibenbasiert SPN (SJF), SRTF, HRRN... vorhersagebasiert FB (MLQ, MLFQ)...prioritätenbasiert Bewertungskriterien und Vergleich Beispiele UNIX (4.3BSD) NT BS: 04 Scheduling 3 Wiederholung Prozesse sind die zentrale Abstraktion für Aktivitäten in heutigen Betriebssystemen. Konzeptionell unabhängige sequentielle Kontrollflüsse (Folge von CPU- und E/A-Stößen) Tatsächlich findet ein Multiplexing der CPU statt UNIX-Systeme stellen diverse System Calls zur Verfügung, um Prozesse zu erzeugen, zu verwalten und miteinander zu verknüpfen. Moderne Betriebssysteme unterstützen darüber hinaus auch leicht- und federgewichtige Prozesse. Prozesse unterliegen der Kontrolle des Betriebssystems. Betriebsmittel-Zuteilung Betriebsmittel-Entzug BS: 04 Scheduling 4
3 Inhalt Wiederholung Abfertigungszustände und Zustandsübergänge Klassische CPU-Zuteilungsstrategien FCFS... einfach RR, VRR... zeitscheibenbasiert SPN (SJF), SRTF, HRRN... vorhersagebasiert FB (MLQ, MLFQ)...prioritätenbasiert Bewertungskriterien und Vergleich Beispiele UNIX (4.3BSD) NT BS: 04 Scheduling 5 Abfertigungszustand Jedem Prozess ist in Abhängigkeit von der Einplanungsebene ein logischer Zustand zugeordnet, der den Abfertigungszustand zu einem Zeitpunkt angibt: kurzfristig (short-term scheduling) bereit, laufend, blockiert mittelfristig (medium-term scheduling) ausgelagert bereit, ausgelagert blockiert langfristig (long-term scheduling) erzeugt, beendet BS: 04 Scheduling 6
4 Kurzfristige Einplanung bereit (READY) zur Ausführung durch den Prozessor (die CPU) Der Prozess ist auf der Warteliste für die CPU-Zuteilung (ready list) Seine Listenposition bestimmt sich durch das Einplanungsverfahren laufend (RUNNING) Zuteilung des Betriebsmittels CPU ist erfolgt Der Prozess führt Berechnungen durch, er vollzieht seinen CPU-Stoß Für jeden Prozessor gibt es zu einem Zeitpunkt nur einen laufenden Prozess blockiert (BLOCKED) auf ein bestimmtes Ereignis Der Prozess führt Ein-/Ausgabe durch, er vollzieht seinen E/A-Stoß Er erwartet die Erfüllung mindestens einer Bedingung BS: 04 Scheduling 7 Mittelfristige Einplanung Ein Prozess ist komplett ausgelagert, d. h. der Inhalt seines gesamten Adressraums wurde in den Hintergrundspeicher verschoben (swap-out) und der von dem Prozess belegte Vordergrundspeicher wurde freigegeben. Die Einlagerung (swap-in) des Adressraums ist abzuwarten: ausgelagert bereit (READY SUSPEND) Die CPU-Zuteilung ( bereit ) ist außer Kraft gesetzt Der Prozess ist auf der Warteliste für die Speicherzuteilung ausgelagert blockiert (BLOCKED SUSPEND) Der Prozess erwartet weiterhin ein Ereignis ( blockiert ) Tritt das Ereignis ein, wird der Prozess ausgelagert bereit BS: 04 Scheduling 8
5 Langfristige Einplanung erzeugt (NEW) und fertig zur Programmverarbeitung fork(2) Der Prozess ist instanziiert, ihm wurde ein Programm zugeordnet Ggf. steht die Zuteilung des Betriebsmittels Speicher jedoch noch aus beendet (EXIT) und erwartet die Entsorgung exit(2)/wait(2) Der Prozess ist terminiert, seine Betriebsmittel werden freigegeben Ggf. muss ein anderer Prozess den Kehraus vollenden (z. B. UNIX) BS: 04 Scheduling 9 Zustandsübergänge EXIT NEW Long Term READY SUSPEND BLOCKED SUSPEND Medium Term 4 RUNNING 1 2 READY 3 BLOCKED Short Term BS: 04 Scheduling 10
6 Einplanungs- und Auswahlzeitpunkt Jeder Übergang in den Zustand bereit (READY) aktualisiert die CPU-Warteschlange Eine Entscheidung über die Einreihung des Prozesskontrollblocks wird getroffen Das Ergebnis hängt von CPU-Zuteilungsstrategie des Systems ab Einplanung (scheduling) bzw. Umplanung (rescheduling) erfolgt,... nachdem ein Prozess erzeugt worden ist wenn ein Prozess freiwillig die Kontrolle über die CPU abgibt sofern das von einem Prozess erwartete Ereignis eingetreten ist sobald ein ausgelagerter Prozess wieder aufgenommen wird Ein Prozess kann dazu gedrängt werden, die CPU abzugeben. präemptives Scheduling z.b. durch Zeitgeberunterbrechung BS: 04 Scheduling 11 Inhalt Wiederholung Abfertigungszustände und Zustandsübergänge Klassische CPU-Zuteilungsstrategien FCFS... einfach RR, VRR... zeitscheibenbasiert SPN (SJF), SRTF, HRRN... vorhersagebasiert FB (MLQ, MLFQ)...prioritätenbasiert Bewertungskriterien und Vergleich Beispiele UNIX (4.3BSD) NT BS: 04 Scheduling 12
7 First-Come First-Served FCFS Ein einfaches und gerechtes(?) Verfahren: wer zuerst kommt, mahlt zuerst Einreihungskriterium ist die Ankunftszeit eines Prozesses Arbeitet nicht-verdrängend und setzt kooperative Prozesse voraus Beispiel Prozess Ankunft Zeiten Bedienzeit T s Start Ende Durchlauf T r T r /T s A ,00 B ,00 C ,00 D ,99 Mittelwert ,00 Die normalisierte Durchlaufzeit (T r /T s ) von C steht in einem sehr schlechten Verhältnis zur Bedienzeit T s BS: 04 Scheduling 13 Diskussion: FCFS Konvoi-Effekt Mit dem Problem sind immer kurz laufende E/A-lastige Prozesse konfrontiert, die langen CPU-lastigen Prozessen folgen. Prozesse mit langen CPU-Stößen werden begünstigt Prozesse mit kurzen CPU-Stößen werden benachteiligt Das Verfahren minimiert die Zahl der Kontextwechsel. Der Konvoi-Effekt verursacht allerdings folgende Probleme: hohe Antwortzeit niedriger E/A-Durchsatz Bei einem Mix von CPU- und E/A-lastigen Prozessen ist FCFS daher ungeeignet. Typischerweise nur in reinen Stapelverarbeitungssystemen BS: 04 Scheduling 14
8 Round Robin RR Verringert die bei FCFS auftretende Benachteiligung kurzer CPU-Stöße: Jeder gegen jeden Basis für CPU-Schutz: ein Zeitgeber bewirkt periodische Unterbrechungen Die Periodenlänge entspricht typischerweise einer Zeitscheibe (time slicing) Mit Ablauf der Zeitscheibe erfolgt ggf. ein Prozesswechsel Der unterbrochene Prozess wird ans Ende der Bereitliste verdrängt Der nächste Prozess wird gemäß FCFS der Bereitliste entnommen Die Zeitscheibenlänge bestimmt maßgeblich die Effektivität des Verfahrens - zu lang, Degenerierung zu FCFS; zu kurz, sehr hoher Overhead - Faustregel: etwas länger als die Dauer einer typischen Interaktion BS: 04 Scheduling 15 Diskussion: RR Leistungsprobleme E/A-lastige Prozesse beenden ihren CPU-Stoß innerhalb ihrer Zeitscheibe sie blockieren und kommen mit Ende ihres E/A-Stoßes in die Bereitliste CPU-lastige Prozesse schöpfen dagegen ihre Zeitscheibe voll aus sie werden verdrängt und kommen sofort wieder in die Bereitliste die CPU-Zeit ist zu Gunsten CPU-lastiger Prozesse ungleich verteilt E/A-lastige Prozesse werden schlecht bedient und dadurch Geräte schlecht ausgelastet die Varianz der Antwortzeit E/A-lastiger Prozesse erhöht sich BS: 04 Scheduling 16
9 Virtual Round Robin VRR Vermeidet die bei RR mögliche ungleiche Verteilung der CPU-Zeiten Prozesse kommen mit Ende ihrer E/A-Stöße in eine Vorzugsliste Diese Liste wird vor der Bereitliste abgearbeitet Das Verfahren arbeitet mit Zeitscheiben unterschiedlicher Längen Prozesse der Vorzugsliste bekommen keine volle Zeitscheibe zugeteilt Ihnen wird die Restlaufzeit ihrer vorher nicht voll genutzten Zeit gewährt Sollte ihr CPU-Stoß länger dauern, werden sie in die Bereitliste verdrängt Die Prozessabfertigung ist dadurch im Vergleich zu RR etwas aufwändiger BS: 04 Scheduling 17 Shortest Process Next SPN Verringert die bei FCFS auftretende Benachteiligung kurzer CPU-Stöße: Die Kleinen nach vorne Grundlage dafür ist die Kenntnis über die Prozesslaufzeiten Verdrängung findet nicht statt das Hauptproblem besteht in der Vorhersage der Laufzeiten Stapelbetrieb: Programmierer geben das erforderliche time limit* vor Dialogbetrieb: Mittelwert der früheren Stoßlängen des Prozesses Antwortzeiten werden wesentlich verkürzt und die Gesamtleistung steigt Dafür: Gefahr der Aushungerung CPU-lastiger Prozesse *Die Zeitdauer, innerhalb der der Job (wahrscheinlich/hoffentlich) beendet wird, bevor er abgebrochen wird. BS: 04 Scheduling 18
10 Diskussion: SPN - CPU-Stoßdauer Basis für die Schätzung ist die Mittelwertbildung über alle bisherigen CPU-Stoßlängen eines Prozesses: S n 1 = 1 n n i =1 T i = 1 n T n n 1 n S n Problem dieser Berechnung ist die gleiche Gewichtung aller CPU-Stöße Jüngere CPU-Stöße sind jedoch von größerer Bedeutung als ältere und sollten daher auch mit größerer Gewichtung berücksichtigt werden Ursache ist das Lokalitätsprinzip BS: 04 Scheduling 19 Diskussion: SPN Stoßgewichtung Die weiter zurückliegenden CPU-Stöße sollen weniger Gewicht erhalten: Für den konstanten Gewichtungsfaktor α gilt dabei: 0 < α < 1 Er drückt die relative Gewichtung einzelner CPU-Stöße der Zeitreihe aus Rekursive Einsetzung führt zu... für α = 0.8: S n 1 =α T n 1 α S n S n 1 =α T n 1 α α T n 1 1 α i α T n i 1 α n S 1 n 1 S n 1 =α 1 α i T n i 1 α n S 1 Dieses statistische i=0 S n 1 =0.8T n 0.16T n T n T n 3 Verfahren nennt man auch exponentielle Glättung. BS: 04 Scheduling 20
11 Shortest Remaining Time First SRTF Erweitert den SPN-Ansatz um Verdrängung Dadurch geeignet für den Dialogbetrieb Führt zu besseren Durchlaufzeiten Der laufende Prozess wird verdrängt, wenn gilt: T erw < T rest T erw ist die erwartete CPU-Stoßlänge eines eintreffenden Prozesses T rest ist die verbleibende CPU-Stoßlänge des laufenden Prozesses Anders als RR basiert SRTF nicht auf Zeitgeberunterbrechungen, ist aber präemptiv Dafür müssen allerdings Stoßlängen abgeschätzt werden Wie SPN kann auch SRTF Prozesse zum Verhungern (starvation) bringen BS: 04 Scheduling 21 Highest Response Ratio Next HRRN Vermeidet das bei SRTF mögliche Verhungern von CPU-lastigen Prozessen Das Altern (aging), d. h. die Wartezeit von Prozessen wird berücksichtigt R= w s s w ist die Wartezeit des Prozesses s ist die erwartete Bedienzeit Ausgewählt wird immer der Prozess mit dem größten Verhältniswert R BS: 04 Scheduling 22
12 Feedback FB Begünstigt kurze Prozesse, ohne die relativen Längen der Prozesse abschätzen zu müssen. Grundlage ist die Bestrafung (penalization) von Langläufern Prozesse unterliegen dem Verdrängungsprinzip Mehrere Bereitlisten kommen zum Einsatz, je nach Anzahl von Prioritätsebenen Wenn ein Prozess erstmalig eintrifft, läuft er auf höchster Ebene Mit Ablauf der Zeitscheibe, kommt er in die nächst niedrigere Ebene Die unterste Ebene arbeitet nach RR Kurze Prozesse laufen relativ schnell durch, lange Prozesse können verhungern Die Wartezeit kann berücksichtigt werden, um wieder höhere Ebenen zu erreichen (anti-aging) BS: 04 Scheduling 23 FB Scheduling-Modell BS: 04 Scheduling 24
13 Diskussion: Prioritäten Ein Prozess- Vorrang, der Zuteilungsentscheidungen maßgeblich beeinflusst Statische Prioritäten werden zum Zeitpunkt der Prozesserzeugung festgelegt Der Wert kann im weiteren Verlauf nicht mehr verändert werden Das Verfahren erzwingt eine deterministische Ordnung zwischen Prozessen Dynamische Prioritäten werden während der Prozesslaufzeit aktualisiert Die Aktualisierung erfolgt im Betriebssystem, aber auch vom Benutzer aus SPN, SRTF, HRRN und FB sind Spezialfälle dieses Verfahrens BS: 04 Scheduling 25 Kombinationen Multilevel Scheduling Mehrere Betriebsformen lassen sich nebeneinander ( gleichzeitig ) betreiben. Z. B. gleichzeitige Unterstützung von {Dialog- und Hintergrundbetrieb, Echtzeit- und sonstigem Betrieb} Dialogorientierte bzw. zeitkritische Prozesse werden bevorzugt bedient Die technische Umsetzung erfolgt typischerweise über mehrere Bereitlisten. Jeder Bereitliste ist eine bestimmte Zuteilungsstrategie zugeordnet Die Listen werden typischerweise nach Priorität, FCFS oder RR verarbeitet Ein höchst komplexes Gebilde multi-level feedback (MLFB) FB kann als Spezialfall dieses Verfahrens aufgefasst werden. BS: 04 Scheduling 26
14 Kombinationen Multilevel Scheduling höchste Priorität Systemprozesse Interaktive Prozesse Stapelverarbeitungsprozesse Studentenprozesse niedrigste Priorität BS: 04 Scheduling 27 Inhalt Wiederholung Abfertigungszustände und Zustandsübergänge Klassische CPU-Zuteilungsstrategien FCFS... einfach RR, VRR... zeitscheibenbasiert SPN (SJF), SRTF, HRRN... vorhersagebasiert FB (MLQ, MLFQ)...prioritätenbasiert Bewertungskriterien und Vergleich Beispiele UNIX (4.3BSD) NT BS: 04 Scheduling 28
15 Ziele = Bewertungskriterien Benutzerorientiert Durchlaufzeit Zeit zwischen Eingang und Abschluss eines Prozesses einschließlich der Wartezeit(en) Stapelverarbeitung Antwortzeit Zeit zwischen Benutzereingabe und Antwort interaktive Systeme Termineinhaltung Für die Interaktion mit äußeren physikalischen Prozessen sollten Termine eingehalten werden Echtzeitsysteme Vorhersagbarkeit Prozesse werden unabhängig von der Last immer gleich bearbeitet harte Echtzeitsysteme Systemorientiert Durchsatz Möglichst viele Prozesse pro Zeiteinheit abarbeiten CPU-Auslastung CPU sollte möglichst immer beschäftigt sein. Overhead (Scheduling-Entscheidung, Kontextwechsel) vermeiden. Fairness Kein Prozess soll benachteiligt werden ( aushungern ) Lastausgleich Auch E/A-Geräte sollen gleichmäßig ausgelastet werden BS: 04 Scheduling 29 Gegenüberstellung quantitativ Prozess A B C D E Mittelwert Start Bedienzeit T s FCFS Ende Durchlauf T r ,60 T r /T s 1,00 1,17 2,25 2,40 6,00 2,56 RR Ende q=1 Durchlauf T r ,80 T r /T s 1,33 2,67 3,25 2,80 3,50 2,71 SPN Ende Durchlauf T r ,60 T r /T s 1,00 1,17 2,75 2,80 1,50 1,84 SRTF Ende Durchlauf T r ,20 T r /T s 1,00 2,17 1,00 2,80 1,00 1,59 HRRN Ende Durchlauf T r ,00 T r /T s 1,00 1,17 2,25 2,80 3,50 2,14 FB Ende q=1 Durchlauf T r ,00 T r /T s 1,33 3,00 3,00 2,60 1,50 2,29 Aus William Stallings, Betriebssysteme Prinzipien und Umsetzung 30
16 Gegenüberstellung qualitativ präemptiv/ Vorhersage Implement.- Verhungern Auswirkung Strategie kooperativ nötig aufwand möglich auf Prozesse FCFS kooperativ nein minimal nein Konvoi-Effekt RR präemptiv (Zeitgeber) nein klein nein Fair, aber benachteiligt E/Alastige Prozesse SPN kooperativ ja groß ja Benachteiligt CPU-lastige Prozesse präemptiv Benachteiligt CPU-lastige SRTF (bei Eingang) ja größer ja Prozesse Gute Lastverteilung HRRN kooperativ ja groß nein FB präemptiv (Zeitgeber) nein größer ja Bevorzugt u.u. E/A-lastige Prozesse In Anlehnung an William Stallings, Betriebssysteme Prinzipien und Umsetzung 31 Inhalt Wiederholung Abfertigungszustände und Zustandsübergänge Klassische CPU-Zuteilungsstrategien FCFS... einfach RR, VRR... zeitscheibenbasiert SPN (SJF), SRTF, HRRN... vorhersagebasiert FB (MLQ, MLFQ)...prioritätenbasiert Bewertungskriterien und Vergleich Beispiele UNIX (4.3BSD) NT BS: 04 Scheduling 32
17 UNIX Zweistufiges präemptives Verfahren mit dem Ziel, Antwortzeiten zu minimieren Kein Long-Term Scheduling high-level: mittelfristig mit Ein-/Auslagerung (swapping) arbeitend low-level: kurzfristig präemptiv, MLFB, dynamische Prozessprioritäten Einmal pro Sekunde: prio = cpu_usage + p_nice + base Jeder Tick (1/10 s) verringert das Nutzungsrecht über die CPU durch Erhöhung von cpu_usage beim laufenden Prozess - hohe prio Zahl = niedrige Priorität Das Maß der CPU-Nutzung (cpu_usage) wird über die Zeit gedämpft - Die Dämpfungs-/Glättungsfunktion variiert von UNIX zu UNIX BS: 04 Scheduling 33 UNIX 4.3 BSD (1) Jeden vierten Tick (40ms) erfolgt die Berechnung der Benutzerpriorität: P cpu nimmt mit jedem Tick um 1 zu und wird einmal pro Sekunde geglättet: P usrpri =min PUSER P cpu 4 2 P nice,127 P cpu Glättung für erwachte Prozesse, die länger als eine Sekunde blockiert waren: P cpu 2 load 2 load 1 P cpu P nice 2 load 2 load 1 P slptime Pcpu BS: 04 Scheduling 34
18 UNIX 4.3 BSD (2) Glättung (decay filter) bei einer angenommenen mittleren Auslastung (load) von 1 gilt P cpu := 0.66 P cpu +P nice. Ferner sei angenommen, ein Prozess sammelt T i Ticks im Zeitinterval i an und P nice = 0 P cpu1 = 0.66 T 0 P cpu2 = 0.66 (T T 0 ) = 0.66 T T 0 P cpu3 = 0.66 T T T 0 P cpu4 = 0.66 T T 0 P cpu5 = 0.66 T T 0 Nach fünf Sekunden gehen nur noch 13% alte Auslastung ein BS: 04 Scheduling 35 NT Prioritätsklassen Präemptive, prioritäts- und zeitscheibenbasierte Einplanung von Fäden (Threads) Verdrängung erfolgt auch dann, wenn der Faden sich im Kern befindet nicht so bei UNIX & Co RR bei gleicher Priorität: 0 reserviert, 1 15 variabel, Echtzeit Die Art des Fadens (Vorder-/Hintergrund) bestimmt das Zeitquantum eines Fadens Quantum Stretching Vermindert sich mit jedem Tick (10 bzw. 15ms) um 3 oder um 1, falls der Faden in den Wartezustand geht Die Zeitscheibenlänge variiert mit den Prozessen: ms - Vordergrund/Hintergrund, Server/Desktop-Konfiguration variable Priorität: process_priority_class + relative_thread_priority + boost BS: 04 Scheduling 36
19 NT Prioritätsanpassung Fadenprioritäten werden in bestimmten Situationen dynamisch angehoben: Dynamic Boost Abschluss von Ein-/Ausgabe (Festplatten) +1 Mausbewegung, Tastatureingabe +6 Deblockierung, Betriebsmittelfreigabe (Semaphor, Event, Mutex) +1 Andere Ereignisse (Netzwerk, Pipe,... ) +2 Ereignis im Vordergrundprozess +2 Die dynamic boosts werden mit jedem Tick wieder verbraucht Fortschrittsgarantie Alle 3 4 s erhalten bis zu 10 benachteiligte Fäden für zwei Zeitscheiben die Priorität 15 BS: 04 Scheduling 37 Zusammenfassung Betriebssysteme treffen CPU-Zuteilungsentscheidungen auf drei Ebenen: Long-Term Scheduling: Zulassung von Prozessen zum System Medium-Term Scheduling: Aus- und Einlagerung von Prozessen Short-Term Scheduling: kurzfristige CPU-Zuteilung Alle hier betrachteten Verfahren werden dem Short-Term Scheduling zugerechnet. Es gibt diverse benutzer- und systemorientierte Kriterien für die Beurteilung der Eigenschaften eines CPU-Zuteilungsverfahrens. Die Auswahl des kommt einer Gratwanderung gleich. Das beste Verfahren lässt sich nur nach einer Analyse des typischen Anwendungsprofils finden. BS: 04 Scheduling 38
Betriebssysteme (BS)
Betriebssysteme (BS) Scheduling Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund [email protected] http://ess.cs.uni-dortmund.de/~os/ http://ess.cs.tu-dortmund.de/de/teaching/ss2012/bs/
Scheduling-Algorithmen: Zeitpunkt der Auswahlentscheidung
Scheduling-Algorithmen: Zeitpunkt der Auswahlentscheidung Nicht-präemptives Scheduling: CPU kann einem Prozess nur entzogen werden, wenn er beendet oder blockiert ist Präemptives Scheduling: Aktueller
Monoprozessor-Scheduling
BS/ Monoprozessor-Scheduling Stöße CPU bursts und I/O bursts längere Rechen- und Blockadephasen wechseln sich einander ab empirisch ermitteltes, typisches Verhalten vieler (Anwendungs-) Programme daraus
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
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
Betriebssysteme I WS 2015/2016. Betriebssysteme / verteilte Systeme Tel.: 0271/ , Büro: H-B 8404
Betriebssysteme I WS 2015/2016 Betriebssysteme / verteilte Systeme [email protected] Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 17. Dezember 2015 Betriebssysteme / verteilte Systeme
Prozesseinplanung. Kurzfristige Einplanung. Mittelfristige Einplanung. Abfertigungszustände
Prozesseinplanung Kurzfristige Einplanung Systemaufrufe Programmverwaltung Zugriffskontrolle Dateiverwaltung Ein /Auslagerung Vernetzung Ein /Ausgabe Fadenverwaltung Koordination Prozesseinplanung Prozessabfertigung
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),
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.
Lösung von Übungsblatt 8
Betriebssysteme (SS201) Lösung von Übungsblatt 8 Aufgabe 1 (Unterbrechungen) 1. Was sind Interrupts? Interrupts sind externe Unterbrechungen. Sie werden durch Ereignisse außerhalb des zu unterbrechenden
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
Betriebssysteme. Wintersemester Kapitel 2 Prozess und Threads. Patrick Kendzo
Betriebssysteme Wintersemester 2015 Kapitel 2 Prozess und Threads Patrick Kendzo [email protected] Programm Inhalt Einleitung Prozesse und Threads Speicherverwaltung Ein- / Ausgabe und Dateisysteme Zusammenfassung
Betriebssysteme 1. Einführung. Scheduling worum geht es? Scheduler: Gliederung
BS1-D Betriebssysteme 1 SS 2017 Prof. Dr.-Ing. Hans-Georg Eßer Fachhochschule Südwestfalen Einführung Foliensatz D: Scheduler v1.0, 2016/05/20 18.05.2017 Betriebssysteme 1, SS 2017, Hans-Georg Eßer Folie
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
Betriebssysteme Theorie
Betriebssysteme Theorie SS 2012 Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz C (08.04.2012) Scheduler 08.04.2012 Betriebssysteme-Theorie, SS 2012, Hans-Georg Eßer Folie C-1 Gliederung Was ist
Ü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
Technische Informatik II. SoSe Jörg Kaiser IVS EOS
Scheduling SoSe 2013 Jörg Kaiser IVS EOS Otto-von-Guericke-Universität Magdeburg 1 Scheduling - Beispiele Tagesplan Ressource: Zeit Stundenpläne Car Sharing Ressource: Räume, Dozenten Resourcen: Autos
8. Foliensatz Betriebssysteme
Prof. Dr. Christian Baun 8. Foliensatz Betriebssysteme Frankfurt University of Applied Sciences SS2016 1/56 8. Foliensatz Betriebssysteme Prof. Dr. Christian Baun Frankfurt University of Applied Sciences
Literatur. Betriebssysteme - WS 2015/16 - Teil 13/Scheduling 2
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:
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
Arbeitsgruppe ESS Jun.-Prof. Dr. Sebastian Zug. Technische Informatik II (TI II) (5) Scheduling. Sebastian Zug Arbeitsgruppe: Embedded Smart Systems
1 Technische Informatik II (TI II) (5) Scheduling Sebastian Zug Arbeitsgruppe: Embedded Smart Systems 2 Fragen an die Veranstaltung Welche Kernaufgabe wird durch das Scheduling umgesetzt? Welche Zielgrößen
Betriebssysteme I WS 2013/2014. Betriebssysteme / verteilte Systeme [email protected] Tel.: 0271/740-4050, Büro: H-B 8404
Betriebssysteme I WS 2013/2014 Betriebssysteme / verteilte Systeme [email protected] Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 16. Januar 2014 Betriebssysteme / verteilte Systeme Betriebssysteme
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
Ü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
Übungen zur Vorlesung Realzeitsysteme
Übungen zur Vorlesung Realzeitsysteme Alle Übungen, die in der Vorlesung behandelt werden und zur Bearbeitung ein Formular benötigen, sind im folgenden aufgelistet: Inhalte - Übung Synchrone Programmierung
(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 ([email protected]) http://www11.in.tum.de/veranstaltungen/grundlagenbetriebssystemeundsystemsoftwarews1112
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
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
(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
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
Betriebssysteme (BTS)
9.Vorlesung Betriebssysteme (BTS) Christian Baun [email protected] Hochschule Mannheim Fakultät für Informatik Institut für Betriebssysteme 10.5.2007 Exkursion Die Exkursion wird am Freitag, den 18.5.2007
Der Scheduler von Windows 2000 Konzepte und Strategien
Der Scheduler von Windows 2000 Konzepte und Strategien Daniel Lohmann [email protected] Gliederung 1. Grundbegriffe 2. Eigenschaften des Schedulers Grundlegende Eigenschaften Prioritätenmodell
Betriebssysteme. Probeklausur. Olaf Spinczyk.
Betriebssysteme https://ess.cs.tu-dortmund.de/de/teaching/ss/bs/ Olaf Spinczyk [email protected] https://ess.cs.tu-dortmund.de/~os G Eingebettete Systemsoftware Informatik, TU Dortmund blauf
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
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
Lösungen der Übungsaufgaben (Kap 1)
Lösungen der Übungsaufgaben (Kap 1) Übungsfragen Bei der Echtzeit-Programmierung steht nur der Zeitpunkt eines Ergebnisses im Vordergrund Echtzeit bedeutet so schnell wie möglich Bei weichen Echtzeit-Systemen
Praktische Lernkarten zum Ausschneiden, Zusammenkleben und Sammeln :-) zur Prüfungsvorbereitung Diplomprüfung. Betriebssysteme
Eine Zusammenstellung aus Prüfungsprotokollen bei Professor Schlageter Praktische Lernkarten zum Ausschneiden, Zusammenkleben und Sammeln :-) zur Prüfungsvorbereitung Diplomprüfung Betriebssysteme Thomas
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
Was machen wir heute? Betriebssysteme Tutorium 3. Organisatorisches. Prozesskontrollblock (PCB) Programmieraufgaben. Frage 3.1.a
Was machen wir heute? Betriebssysteme Tutorium 3 Philipp Kirchhofer [email protected] http://www.stud.uni-karlsruhe.de/~uxbtt/ Lehrstuhl Systemarchitektur Universität Karlsruhe (TH) 1
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
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 [email protected] Dr. Christian
Grundlagen der Informatik für Ingenieure I. 5. Prozessverwaltung - Einführung
Background: 5. Prozessverwaltung - Einführung 5.1 Wichtige Komponenten eines Prozessors 5.2 Betriebsstrategien von Rechensystemen 5.2.1 Aktivitätsträger, Prozesse, Threads 5.2.1.1 Prozesszustände 5.2.1.2
Betriebssysteme Sommersemester Betriebssysteme. 4. Kapitel. Scheduling. Dr. Peter Tröger / Prof. M. Werner. Professur Betriebssysteme
Betriebssysteme Sommersemester 2017 Betriebssysteme 4. Kapitel Scheduling Dr. Peter Tröger / Prof. M. Werner Professur Betriebssysteme 4.1 Einführung Strategie und Mechanismus Betriebssysteme Scheduling
Betriebssysteme (BS)
Betriebssysteme (BS) Probeklausur Olaf Spinczyk, Daniel Cordes und Matthias Meier Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund http://ess.cs.uni-dortmund.de/ http://ess.cs.tu-dortmund.de/de/teaching/ss2012/bs/
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,
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
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
> Übung Betriebssysteme Globalübung 3 Michel Steuwer Wintersemester 2012/13
> Übung Betriebssysteme Globalübung 3 Michel Steuwer Wintersemester 2012/13 Gruppe Parallele und Verteilte Systeme (PVS) Institut für Informatik Westfälische Wilhelms-Universität Münster Hinweise 2 Aufgaben
Grundlagen der Betriebssysteme
Grundlagen der Betriebssysteme [CS2100] Sommersemester 2014 Heiko Falk Institut für Eingebettete Systeme/Echtzeitsysteme Ingenieurwissenschaften und Informatik Universität Ulm Kapitel 4 Prozesse und Nebenläufigkeit
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
Betriebssysteme (BS)
Betriebssysteme (BS) Probeklausur Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund http://ess.cs.uni-dortmund.de/ http://ess.cs.tu-dortmund.de/de/teaching/ss2014/bs/
mathematik und informatik
Prof. Dr. Kelter, Prof. Dr. Klein, Dr. Lihong Ma, apl. Prof. Dr. Christian Icking Kurs 01802 Betriebssysteme LESEPROBE mathematik und informatik Das Werk ist urheberrechtlich geschützt. Die dadurch begründeten
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
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
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.
Ausgewählte Kapitel eingebetteter Systeme
Ausgewählte Kapitel eingebetteter Systeme Echtzeitfähige Ereignisgetriebene Scheduling-Strategien Friedrich-Alexander-Universität Erlangen-Nürnberg 08.06.2005 Übersicht Problemdefinition Scheduling-Strategien
Systemsoftware (SYS) Fakultät für Informatik WS 2007/2008 Christian Baun. Übungsklausur
Hochschule Mannheim Systemsoftware (SYS) Fakultät für Informatik WS 2007/2008 Christian Baun Übungsklausur Aufgabe 1: Definieren Sie den Begriff der Systemsoftware. Nennen Sie die Aufgaben und Komponenten
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
Betriebssysteme, Rechnernetze und verteilte Systeme 1 (BSRvS 1)
Betriebssysteme, Rechnernetze und verteilte Systeme 1 (BSRvS 1) Abstraktionen und Strukturen Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund [email protected]
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
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:...
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: [email protected]
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
Immediate Priority Ceiling
Vereinfachtes Protokoll: Immediate priority ceiling: Prozesse, die ein Betriebsmittel s belegen, bekommen sofort die Priorität ceil(s) zugewiesen. Anwendungsgebiet: Immediate Priority Ceiling Verwendung
Teil 3: Konzepte von Betriebssystemen
Teil 3: Konzepte von Betriebssystemen Inhalt: Einführung Prozesse Speicherverwaltung Virtueller Speicher 1 Definition eines Betriebssystems Was ist ein Betriebssystem? einfache Definition: Als Betriebssystem
a) Welches der folgenden Zeichen weist im Shell-Prompt darauf hin, dass Sie mit normalen Benutzerrechten (also nicht als root) arbeiten?
1 2 3 4 5 6 7 8 9 Seite 1/10 Die Bearbeitungszeit der Probeklausur ist 90 Minuten; für die richtige Klausur haben Sie 120 Minuten Zeit. Entsprechend hat diese Probeklausur reduzierten Umfang (3/4). Bitte
Klausur zum Kurs Betriebssysteme (1802) am 18. September 2010
Fakultät für Mathematik und Informatik Lehrgebiet Kooperative Systeme Prof. Dr. Jörg M. Haake Klausur zum Kurs Betriebssysteme (1802) am 18. September 2010 Klausurort: Vorname Name: Adresse: Matrikelnummer:
Legende: Running Ready Blocked P1 P2 P3. t[ms] 1 Prozesse und Scheduling (16 Punkte)
1 Prozesse und Scheduling (16 Punkte) a) UNIX Shell (insgesamt 5 Punkte) 1) $ ls > Dateien.txt (2 Punkte) Was bewirkt die Ausführung dieses Kommandos in einer UNIX-Shell? 2) $ cat Dateien.txt grep txt
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,
Klassisches Scheduling-Problem 6 Prozesse 3 Prozessoren. Strategie und Mechanismus
Betriebssysteme Sommersemester 0. Einführung Betriebssysteme. Kapitel Scheduling Prof. Matthias Werner Professur Betriebssysteme Scheduling (etwa: Ablaufplanung): Zeitliche Zuordnung von Aktivitäten zu
