Definitionenen und Grundlagen

Größe: px
Ab Seite anzeigen:

Download "Definitionenen und Grundlagen"

Transkript

1 Echtzeitbetriebssysteme & verteilte Systeme, Teil 1 Dozent: Dr. rer. nat. Frank Dopatka Voraussetzung: Grundkenntnisse in Betriebssystemen & -Verfahren Ziel: Einführung in industrielle Echtzeitanforderungen, Echtzeit- Betriebssysteme und verteile Anwendungen mit dem Hintergrund der Automatisierungstechnik Themen: ; Programmiermodelle; Anforderungen an Echtzeit- Systeme -Verfahren und deren Bewertung Verteilte Systeme; Kommunikation und (Zeit-)Synchronisation en und Grundlagen Folie 3 Arten von Betriebssystemen Folie 4 Arten von Betriebssystemen Monolithische Systeme Strukturierung nur durch Prozeduren - z.b. Hauptfunktion, Serviceprozedur für jeden Systemaufruf, Hilfsfunktionen - alle Prozeduren im selben Adreßraum - jede Prozedur kann (prinzipiell) jede andere aufrufen Probleme: Sicherheit, Software-Engineering Betriebssysteme haben zum Teil mehrere 10 Millionen Zeilen Code! Geschichtete Systeme Hierarchische Strukturierung der Funktionen - Interaktion nur zwischen benachbarten Schichten Ggf. auch Schutz der Schichten möglich - untere Schichten höher privilegiert als obere - Übergang zwischen Schichten nur über Systemaufrufe

2 Folie 5 Arten von Betriebssystemen: Geschichtet Folie 6 Arten von Betriebssystemen Mikrokern Betriebssystem stellt nur Minimalfunktionalität bereit andere Dienste werden in Serverprozesse (bzw. -threads) ausgelagert ->Ausführung meist im Benutzermodus Client-Server-Modell Mikrokern realisiert typischerweise... - Prozeßwechsel - maschinennahe - Basis-Interprozeßkommunikation - Verwaltung von E/A-Adressen und Interrupts Folie 7 Arten von Betriebssystemen: Mikrokern Folie 8 Vorteile der Mikrokern-Architektur Einheitliche Schnittstellen für Dienste auf Benutzer- und Kernelebene Erweiterbarkeit durch neue Dienste Flexibiltät: Baukasten von Diensten Portierbarkeit: prozessorspezifischer Code (fast) nur im Mikrokern Zuverlässigkeit Unterstützung verteilter Systeme Unterstützung objektorientierter Betriebssysteme => heutige Betriebsysteme mit hohen Echtzeitanforderungen sind meist Mikrokern-Systeme => auch Standard-Betriebssysteme wechseln langsam in eine Mikrokern-Architektur, um überschaubar zu bleiben (Dienste-Modell)

3 Folie 9 Was sind eingebettete Systeme? Folie 10 Anwendungsbereiche Ein eingebettetes System ist ein Computersystem, das in ein umgebendes (technisches) System eingebettet ist und mit diesem in Wechselwirkung steht. Ein eingebettetes System erfüllt komplexe Aufgaben in der Steuerung, Regelung und Überwachung des technischen Systems. - mehr als 90% aller elektronischenbauelemente sind integriert - mehr Prozessoren sind integriert als in PCs verbaut - Oberklasse-PKW: Steuergeräte! Folie 11 Interaktion von System & Umgebung Folie 12 Interaktion von System & Umgebung

4 Folie 13 Steuerung Folie 14 Regelung Die Führungsgröße ist die Vorgabe des Benutzers Offene Wirkungskette: keine Rückkopplung von x(t) Das Steuersignal u(t) wird ohne Kenntnis von x(t) bestimmt -> benötigt ein Modell der Strecke: Zusammenhang zwischen x(t) und y(t) Eine Steuerung kann nicht auf Störungen im Prozeß reagieren Geschlossene Wirkungskette: x(t) wird kontinuierlich erfaßt und mit Sollwert verglichen => Regler stellt u(t) so ein, daß x(t) = w(t) wird (Istwert mit Sollwert vergleichen und anpassen) Ein Regler kann auch Störungen des Prosesses ausgleichen Ist das Lenken eines Autos eine Steuerung oder eine Regelung? Folie 15 Regelung in der Automatisierungstechnik Folie 16 Antriebsregelung: Stromregelung Spitzen- und Dauerstrom des jeweiligen Antriebes begrenzen -> Arbeiten im Arbeitsbereich PI-Regler; Aktualisierung: ca. alle 10µs Gleichstrommotor: Stromrichter Wechselstrommotor: Frequenzumrichter

5 Folie 17 Antriebsregelung: Drehzahlregelung Folie 18 Antriebsregelung: Positionsregelung Sollwert des Stroms -> Sollvorgabe der Drehmomentes Drehzahlregelung nach dem Stromleitverfahren Frequenzumrichter sind in der Lage, direkt über den Ankerstrom des Antriebs die Istdrehzahl zu ermitteln und eine sensorlose Regelung durchzuführen -> Update ca. alle 10 ms Definition der Verfahrstrecke -> Start-/Endpos. Update zwischen 10 ms und 100 ms sehr komplexe Regelung -> mikrocontroller- oder -basierte Lösungen alles in einem Antrieb: Siemens PROFIdrive Folie 19 Antriebsregelung in den Antrieben Folie 20 Antriebsregelung in der Steuerung

6 Folie 21 Antriebsregelung: Fallbeispiel Walzwerk Folie 22 früher: zentrale Welle - Kurvenscheibe Problem der durchlaufenden Warenbahn! Folie 23 Software-Welle Folie 24 Klassen von Computersystemen Ein Problem liegt in der hohen Synchronität der Antriebe zueinander. Diese Anforderung resultiert aus der Anlagenmechanik, die gerade bei einer durchlaufenden Warenbahn kritisch ist. Für einige technologische Prozesse wird ein Gleichlauf mehrerer Arbeitsmaschinen oder ein festes Drehzahlverhältnis zueinander gefordert. Dies kann ohne Kopplung mechanischer Wellen durch eine elektrische Welle erfüllt werden. In Verbindung mit modernen taktsynchronen Feldbussen verwenden Moning und Lanz sogar den Begriff der Software-Welle. Transformationelle Systeme: - berechnen Ausgaben aus vorliegenden Eingaben - keine Interaktion während der Berechnung Interaktive Systeme: - interagieren mit der Umgebung - System fordert Umgebung bzw. Benutzer zur Interaktion auf: -> Computer entscheidet, wann Interaktion stattfindet -> Benutzer reagiert auf Interaktions-Aufforderung Reaktive Systeme: - Systemumgebung bestimmt die Interaktion - Computer reagiert auf Stimuli der Umgebung

7 Folie 25 Reaktive Systeme Folie 26 Referenzarchitektur für eingebettete Systeme -häufig nebenläufig (Reaktion auf mehrere Stimuli) -> deterministisches Verhalten Reaktion ist eindeutig durch Eingabesignale und ggf. deren zeitliche Reihenfolge bestimmt - hohe Zuverlässigkeit - häufig Einhaltung von Zeitschranken -> Reaktion muß rechtzeitig erfolgen -> Echtzeitsysteme - Meist in eine Umgebung eingebettet -> eingebettete Systeme Folie 27 Arten der Echtzeit Folie 28 Was ist ein Echtzeitsystem? Weiche Echtzeitsysteme: Zeitbedingungen sind Richtlinien, die gelegentlich bzw. leicht überschritten werden dürfen (z.b. bei Multimedia) Feste Echtzeitsysteme: Ergebnisse werden nutzlos, es entsteht aber kein Schaden, z.b.: Positionsmessungen bewegter Objekte Harte Echtzeitsysteme: Es entsteht ein (größerer) Schaden, z.b.: - Anhalten eines autonomen Fahrzeugs vor Hindernis -ABS-System - Not-Aus Betätigung vor einer Presse Ein Rechnersystem, bei dem neben logischer Korrektheit auch der Zeitpunkt der Ausgaben von Bedeutung ist! Ein Echtzeitsystem erfüllt die Anforderung der Rechtzeitigkeit Gleichzeitigkeit Vorhersehbarkeit Verlässlichkeit Verfügbarkeit

8 Folie 29 Rechtzeitigkeit: Nutzen der Information Folie 30 Rechtzeitigkeit: Zeitbedingungen Die Erfassung und Auswertung von Prozeßdaten, sowie die geeignete Reaktion muss stets innerhalb einer vorgegebenen Zeitschranke ausgeführt werden. Die verschiedenen Zeitschranken werden meist in Zeit/Nutzen-Diagrammen festgelegt. Diese stellen dar, zu welcher Zeit eine Information, z.b. ein übertragener Meßwert, von Nutzen für die Anlage ist: Das Echtzeitsystem muß also Daten rechtzeitig abholen und liefern -> es existieren Zeitbedingungen für Eingabe und Ausgabe Varianten zur Angabe von Zeitbedingungen: - Angabe eines genauen Zeitpunkts - Angabe eines spätesten Zeitpunkts (Zeitschranke, Deadline) - Angabe eines frühesten Zeitpunkts - Angabe eines Zeitintervalls weiche feste harte Echtzeit Folie 31 Rechtzeitigkeit: zyklische Abarbeitung Folie 32 Rechtzeitigkeit: Geschwindigkeit und Vorhersagbarkeit Periodische Zeitbedingungen: - Zeitbedingung wiederholt sich periodisch - z.b. regelmäßiges Auslesen von Sensoren: zeitlich äquidistante Werte sind wichtig für numerische Berechnungen -> a = dv/dt = d²s/dt² Aperiodische Zeitbedingungen: - ausgelöst durch das Auftreten von Ereignissen - z.b. Not-Aus Schalter betätigt Um Zeitbedingungen einhalten zu können, muß Echtzeitsystem zwei Eigenschaften besitzen: hinreichende Verarbeitungsgeschwindigkeit genügend schnelle CPUs, effiziente Programmierung zeitliche Vorhersagbarkeit - Zeitbedingungen müssen in jedem Fall garantiert werden - wesentliche Anforderung an Betriebssysteme und Laufzeitsysteme!

9 Folie 33 Rechtzeitigkeit: Geschwindigkeit und Vorhersagbarkeit Folie 34 Gleichzeitigkeit Hohe Geschwindigkeit ohne Vorhersagbarkeit ist bedeutungslos: Echtzeitfähigkeit ist nicht gleich Geschwindigkeit! z.b. sind cache-basierte Systeme problematisch: im Mittel sehr schnell, bei Cachefehlern jedoch deutlich höhere Verarbeitungszeit z.b. ist Ethernet 100MBit/s schnell (im Gegensatz zu Feldbussen)! Was passiert, wenn der Not-Aus-Frame aufgrund von hohem Traffic in einem Switch verworfen wird? -> Neu-Senden mit TCP? -> Priorisierung! -> Deterministisches, vorhersehbares Verhalten! -> Worst/Case-Rechnungen! Die Forderung nach Gleichzeitigkeit besagt, dass ein Echtzeitsystem in der Lage sein muss, auch auf mehrere gleichzeitig ablaufende Vorgänge des technischen Prozesses zu reagieren. Insbesondere wird von jedem Rechenprozess erwartet, dass er alle Operationen vor Ablauf einer in der Einplanung angegebenen Zeitschranke erfolgreich abschließt. Folie 35 Vorhersehbarkeit Folie 36 Verlässlichkeit Ein System ist vorhersehbar, wenn alle Reaktionen planbar und deterministisch sind. Es dürfen nur definierte und reproduzierbare Zustände auftreten. Dabei ist besonders von Bedeutung, dass sich keine zufälligen Komponenten im System befinden. Zur Verläßlichkeit zählt die Zuverlässigkeit, Sicherheit und Verfügbarkeit eines Systems. Im industriellen Bereich bedeutet dies, das ein Netzwerk unter Industriebedingungen ordnungsgemäß arbeitet. Zu den Anforderungen zählen Standhaftigkeit gegenüber EMV-Belastung, mechanischer und chemischer Beschädigung, Temperatur, Vibration und Feuchtigkeit.

10 Folie 37 Verfügbarkeit RTSs müssen unterbrechungsfrei betriebsbereit sein, sonst Verletzung der Zeitbedingungen! Verbietet u.a. Reorganisationsphasen z.b. Index- und Speicher-Reorganisation bei Datenbanksystemen, Garbage Collection in Java,... Abhilfe: reorganisations-freie Algorithmen oder Reorganisation in kleinen Schritten (z.b. bei ) Programmiermodelle Folie 39 Arten der Programmierung Folie 40 Arten der Programmierung Es gibt zwei grundlegende Verfahren zur Realisierung von Systemen mit Echtzeitanforderungen: synchrone Programmierung, Stichwort: Polling bzw. Timer-Interrupt - Sensoren werden vom Programm abgefragt -> einfache, preisgünstige passive Sensoren - zeitliches Verhalten periodischer Aktionen wird vor der Ausführung geplant (Offline-Schedule) - für zeitgesteuerte Systeme (time-based) asynchrone Programmierung, Stichwort: Interrupts - Sensoren erzeugen Ereignisse - Programm wird durch die externen Ereignisse gesteuert, Ablauf der Aktionen wird erst zur Laufzeit geplant -> Online-Schedule -> Schedule wird vom Echtzeit-Betriebssystem verwaltet - für ereignisgesteuerte Systeme (event-based)

11 Folie 41 Synchrone Programmierung Folie 42 Synchrone Programmierung Die periodisch auszuführenden Aktionen werden auf ein festes Zeitraster T synchronisiert - Aktionen starten zu den Zeiten k T mit k N - ein Zeitgeber erzeugt im festen Zeitabstand T Unterbrechungen - Unterbrechungen starten ggf. Teilprogramme für Aktionen - Reihenfolge der Teilprogramme wird fest vorgegeben Programme einfach durch zeitgesteuerte Ablaufsteuerung realisierbar: Folie 43 Synchrone Programmierung: Beispiel Folie 44 Synchrone Programmierung: Beispiel Autonomes Fahrzeug mit Kamera und Motor: Kameradatenvererbeitung mit Periode T Motorsteuerung mit Periode 2T Zeitlicher Ablauf:

12 Folie 45 Synchrone Programmierung: exakter Ablauf Folie 46 Synchrone Programmierung: Verletzung Periodenzeiten exakt eingehalten, falls: Summe der Ausführungszeiten T jede Periodenzeit ist ganzzahliges Vielfaches der nächst kürzeren Summe der Ausführungszeiten T: Nicht eingehalten! Folie 47 Synchrone Programmierung: Verletzung Folie 48 Synchrone Programmierung: Verletzung Summe der Ausführungszeiten T: Nicht eingehalten! Summe der Ausführungszeiten T: Nicht eingehalten! -> Fehler stauen sich auf -> Zeitbedingungen sind in der Regel nicht mehr einzuhalten

13 Folie 49 Synchrone Programmierung: Verletzung Folie 50 Synchrone Programmierung: Verletzung jede Periodenzeit ist ganzzahliges Vielfaches der nächst kürzeren: Nicht eingehalten! Kameradaten: Periode 2T Motorsteuerung: Periode 3T jede Periodenzeit ist ganzzahliges Vielfaches der nächst kürzeren: Nicht eingehalten! -> Abweichung der Periodendauer ist maximal T -> meist tolerierbar, wenn ggf. auf einen Meßwert verzichtet werden kann Folie 51 Synchrone Programmierung: Diskussion Folie 52 Synchrone Programmierung: Diskussion Vorteile: - festes, vorhersagbares und garantierbares Zeitverhalten - gut geeignet bei sicherheitsrelevanten Aufgaben: Analyse und Test des Systems sind einfach - besonders geeignet bei zyklischen Abläufen - leichter programmierbar Nachteile: - geringe Flexibilität bei Änderungen der Aufgabenstellung - Ablaufplan ist fest im Programm codiert - asynchrone / aperiodische Ereignisse passen nicht ins Modell - Behandlung nur durch Polling möglich - bei Polling mit Periode k T: Reaktionszeit schwankt zwischen 0 und T

14 Folie 53 Asynchrone Programmierung Folie 54 Asynchrone Programmierung: Beispiel Realisierung der Programme mit unterbrechungsgesteuerter Ablaufsteuerung: Autonomes Fahrzeug mit zwei Sensoren für asynchrone Ereignisse: Als eine Landmarke bezeichnet man ein auffälliges, meist weithin sichtbares topographisches Objekt. Beispielsweise können Kirchen, Türme, Burgen oder Einzelbäume Landmarken darstellen. Landmarken spielen bei der räumlichen Orientierung z.b. bei der Navigation eine wichtige Rolle. Folie 55 Asynchrone Programmierung: Beispiel Folie 56 Asynchrone Programmierung: Beispiel Signalisiert der Laserscanner eine drohende Kollision, so muss das Fahrzeug unmittelbar reagieren. Diese Verarbeitung hat demnach die höchste Priorität. Im Folgenden wird der zeitliche Ablauf skizziert, falls HPF (Highest Priority First) als der Aktionen benutzt wird: Worst-Case Fall: Alle Ereignisse treten in einem Zyklus auf und werden dennoch vor Ende des Zyklus abgearbeitet!

15 Folie 57 Asynchrone Programmierung: Beispiel Folie 58 Asynchrone Programmierung: Diskussion Die Zeitbedingungen können jedoch schwanken (Jitter): Vorteile: - flexibler Programmablauf, flexible Programmstruktur - Reaktion auf periodische und aperiodische Ereignisse möglich Folie 59 Asynchrone Programmierung: Diskussion Folie 60 Fazit Nachteile: - Rechtzeitigkeit nicht in jedem Fall im Voraus garantierbar: * je niedriger die Priorität, desto größer die Schwankungen - Systemanalyse und Test schwieriger: *bei geeignetem ist Einhaltung der Rechtzeitigkeit aber im Voraus beweisbar (Feasibility Analysis) * ggf. können nur Garantien für kritische hochpriore Ereignisse gegeben werden Asynchrone Programmierung wird wegen hoher Flexibilität eingesetzt, die synchrone Programmierung vor allem für kritische Anwendungen!

16 Folie 61 Programmiermodelle: Fallbeispiel Folie 62 Aufgabe: Förderband 2 inc mb M 12 read inc 13 inc Prozessrechner 3 Die Pakete mit den Strichcodes 6 und 7 sollen auf dem Förderband 2 weiter transportiert werden, die Pakete mit anderen Strichcodes auf dem Förderband 3. Die Förderbänder werden über Schrittmotoren angetrieben. Das Auslesen eines Strichcodes benötigt 3 Zeiteinheiten (ZE): 1ZE für das eigentliche Auslesen, 2ZE für die Interpretation im Leser. Ist kein Werkstück auf dem Band, so gibt der Leser 0 zurück. Das Verstellen der Schranke durch den Motor benötigt 4ZE. Davon 1ZE, um den Impuls des Drehens zu geben und 3ZE für die Bewegung an sich. In welcher Reihenfolge kommen die Pakete im schlimmsten Fall an? Folie 63 Aufgabe: Förderband Folie 64 Übung: Förderband I Die Pakete liegen genau alle 10 Plätze entfernt voneinander auf dem Band. Die Förderbänder werden alle zusammen über eine zentrale Welle inkrementiert. Der Schrittmotor der Förderbänder wird 1x inkrementiert, bevor der Strichcode ausgelesen wird. Nach dem Auslesen muss das Band weitere 10x inkrementiert werden, bis das Paket bei der Weiche ankommt. Die 12. Inkrementierung der Förderbänder transportiert das Paket dann - je nach Weichenstellung - auf das Förderband 2 oder 3. Um ein Paket durchzuschleusen, sind insgesamt 13 Zeiteinheiten nötig. Schreiben Sie ein synchrones Programm in Pseudo- Code, welches die Aufgabe erfüllt. Auf dem Prozeßrechner sind folgende Operationen möglich: - read: Strichcodeleser auslesen (3ZE -> 1+2) - mb2: Weiterleitung auf Band2 (4ZE -> 1+3) - mb3: Weiterleitung auf Band3 (4ZE -> 1+3) - inc: Föderbänder inkrementieren (1ZE) - jede andere Anweisung innerhalb des Prozeßrechners (z.b. Variablen lesen/schreiben), Verzweigung, Schleifenbedingung prüfen: (1ZE) Nach der Initialisierung soll auf Förderband 3 weitergeleitet werden. Zählen Sie die Zeiteinheiten, die das Programm im besten/schlechtesten Fall benötigt. Der schlechsteste Fall ergibt dann die Zykluszeit T.

17 Folie 65 Lösung: Förderband I Folie 66 Lösung: Förderband I Initialisierungs-/Hochlaufphase: fast immer bei einem automatisierten System vorhanden: Hier existieren noch keine Echtzeitanforderungen! min. Durchlaufzeit ohne Pakete: = 25ZE x inc 2 x inc inc c=read() 3 q.add(c) x=q.front() x=0 ja b!=b nein 1 x in {6,7} b!=b3 ja ja 4 mb2 mb Folie 67 Lösung: Förderband I Folie 68 Lösung: Förderband I max. Durchlaufzeit; Band wechselt immer, wenn ein Paket davor ist: 7 x inc 2 x inc = 37ZE 7 2 inc c=read() 3 q.add(c) x=q.front() x=0 ja b!=b nein 1 x in {6,7} b!=b3 ja ja 4 mb2 mb Hinweis: Das Programm wird normalerweise über einen Timer- Interrupt gestartet und 1x vollständig abgearbeitet. Es gibt also keinen Rückweg. Wichtig: Dabei wird stets der Worst-Case betrachtet! Der Interrupt würde also alle 37ZE kommen und das Programm 1x abarbeiten. Ggf. restliche Zeit wird gewartet.

18 Folie 69 Übung: Förderband II Folie 70 Lösung: Förderband II Schreiben Sie ein asynchrones Programm in Pseudo-Code, welches die Aufgabe erfüllt. Die einzelnen Prozesse sind hier unabhängig voneinander und kommunizieren über Ereignisse: Nach den Befehlen read und mbx (je 1ZE), senden die Geräte nach ihrer Ausführungszeit (2ZE bzw. 3 ZE) später asynchron eine Antwort. Die Inkrementierung der Förderbänder sei periodisch über einen Zeitgeber gesteuert. Überlegen Sie sich für die Prozesse sinnvolle Prioritäten, bevor Sie mit der Erstellung des Pseudo-Codes beginnen. Zählen Sie die Zeiteinheiten, die das Programm im besten/schlechtesten Fall benötigt. Der schlechsteste Fall ergibt dann die Zykluszeit T. I-Ereignis: Zeitgeber Aktion: inc(); Dauer: 1 Periode: T Priorität: 4 R-Ereignis: Zeitgeber Aktion: read.start(); Dauer: 1 Periode: Ergebnis wird zeigen: 16T Priorität: 3 D-Ereignis: read.ende Aktion: q.add(c); Dauer: 1 Periode: async. Priorität: 2 Folie 71 Lösung: Förderband II Folie 72 Lösung: Förderband II M-Ereignis: inctimer.ende Aktion: x=q.front(); (1) if (x!=0){ (1) if (x in {6,7}){ (1) mb2; } else { (1) mb3; } } Dauer: 2-4 Periode: Ergebnis wird zeigen: 16T Priorität: 1 A-Ereignis: Weiche durch Motor ausgerichtet Aktion: - Dauer: 0 (nur Anzeige) Periode: async. Priorität:? max. Durchlaufzeit (Band wechselt immer, wenn ein Paket davor ist): 19ZE I R I I D I I I I I I M I I R I I D I I I I I I M A Paket n-1 A Paket n Paket n+1 Warum ist das asynchrone Programm so viel schneller? Antwort: Dadurch, dass das Drehen des Motors und das Interpretieren des Barcodes parallel zum Inkrementieren statt finden kann! Man sieht jedoch auch, dass die asynchrone Zeit- Analyse wesentlich schwieriger ist! A

19 Folie 73 Beispiel: Werkstück-Simulation Anforderungen an (Echtzeit-)Betriebssysteme Folie 75 Grundlegende Aufgaben eines Betriebssystems Folie 76 Erweiterung (Veredelung) der Hardware Erweiterung (Veredelung) der Hardware Abstraktion der Hardware Verwaltung von Betriebsmitteln Hardware muß billig, schnell und zuverlässig sein -> Beschränkung auf das absolut Notwendige -> Folge: schwierige Programmierung ein Betriebssystem stellt komplexe Funktionen bereit, die die Anwendungsprogramme verwenden können * Beispiel: Schreiben auf Festplatte -> Das Betriebssystem findet automatisch freie Sektoren auf der Platte, legt Verwaltungsinformation an -> interne Struktur der Platte (Anzahl Köpfe, Zylinder, Sektoren, etc.) für Anwendung nicht mehr wichtig => Folge: erhebliche Vereinfachung der Programmierung

20 Folie 77 Abstraktion der Hardware Folie 78 Verwaltung von Betriebsmitteln PCs sind trotz ähnlicher Architektur im Detail sehr unterschiedlich, z.b.: - Einteilung des Adreßraums (Speicher, E/A-Controller) - verschiedenste E/A-Controller und Geräte Fallunterscheidung wird vom Betriebssystem vorgenommen Betriebssystem realisiert einheitliche Sicht für Anwendungen * Beispiel: Dateien abstrahieren Externspeicher -> für Anwendungen kein Unterschied zwischen Festplatte, Diskette, CD-ROM, USB-Stick, Netzlaufwerk,... -> UNIX: selbst Drucker wie Datei behandelt Betriebssystem realisiert eine virtuelle Maschine Betriebsmittel (Ressourcen): alles was eine Anwendung zur Ausführung braucht - Prozessor, Speicher, Geräte (Festplatte, Netzwerk,...) Rechner im Mehrprozeß- und Mehrbenutzerbetrieb: - mehrere Anwendungen verschiedener Benutzer werden quasi gleichzeitig ausgeführt Notwendig ist Fairness: gerechte Verteilung der Betriebsmittel Notwendig ist Sicherheit: Schutz der Anwendungen und Benutzer voreinander Folie 79 Mittler zwischen Anwendungen und Hardware Folie 80 Prozessmodell Essentiell: Anwendungen können nicht direkt (unkontrolliert) auf die Hardware zugreifen Unterstützende Hardware-Mechanismen: - Ausführungsmodi des Prozessors (System- und Benutzermodus) - Systemaufrufe, Ausnahmen, Unterbrechungen - Adreßumsetzung (virtueller Speicher) Umschalten durch Umladen der CPU-Register (incl. Program Counter) Beachte: Annahmen über die Geschwindigkeit der Ausführung sind nur bei Echtzeit- Betriebssystemen möglich!

21 Folie 81 Prozesse & Threads Folie 82 Typische Zugriffszeiten & Zuständigkeiten Prozeß: - Einheit des Ressourcenbesitzes und Schutzes Thread: - Einheit der Ausführung (Prozessorzuteilung) - Ausführungsfaden, leichtgewichtiger Prozeß - Innerhalb eines Prozesses existiert ein oder mehrere Threads: Folie 83 Ausführungsmodi einer CPU Folie 84 Interrupts Systemmodus: ausgeführtes Programm hat vollen Zugriff auf alle Rechnerkomponenten -> für das Betriebssystem Benutzermodus: eingeschränkter Zugriff -> Speicher nur über Adreßabbildung zugreifbar -> keine privilegierten Befehle z.b. Ein-/Ausgabe, Zugriff auf Konfigurationsregister Ausführung eines privilegierten Befehls im Benutzermodus führt zu einer Ausnahme (Exception, Software Interrupt): - CPU bricht gerade ausgeführten Befehl ab - CPU sichert Rückkehradresse (Adresse des Befehls) - Programmausführung wird an vordefinierter Adresse im Systemmodus fortgesetzt -> d.h. Verzweigung an eine feste Stelle im Betriebssystem - Betriebssystem behandelt die Ausnahme -> z.b. Abbruch des laufenden Prozesses - Rückkehrbefehl schaltet wieder in Benutzermodus

22 Folie 85 Interrupts Folie 86 Interrupts CPU kann auf externe, asynchrone Ereignisse reagieren spezielles Eingangssignal: Interrupt-Signal Signal wird jeweils nach Abarbeitung eines Befehls abgefragt; falls Signal gesetzt: - sichern des Program Counters im Keller (Rückkehradresse) - Umschalten in Systemmodus - Sprung an vordefinierte Adresse im Betriebssystem (Unterbrechungsbehandlungsroutine, interrupt handler) - Im Betriebssystem: Behandlung des Interrupts - Rückkehrbefehl schaltet wieder in Benutzermodus In der Regel mehrere Interrupts mit verschiedenen Prioritäten: - jedem Interrupt kann eine eigene Behandlungsroutine zugewiesen werden -> Tabelle von Adressen: Unterbrechungsvektor -> ggf. Unterbrechung aktiver Behandlungsroutinen Interrupts können maskiert ( ausgeschaltet ) werden -> privilegierter Befehl! Folie 87 Anforderungen echtzeitfähiger Betriebssystems Folie 88 Anforderungen echtzeitfähiger Betriebssystems Echtzeit-Betriebssysteme haben prinzipiell dieselben Aufgabe wie normale Betriebssysteme, aber mit speziellen Anforderungen: Deterministisches zeitliches Verhalten: - insbesondere bei zyklischer Einplanung von Aufgaben (Tasks) - unabhängig von der Last des Systems Bearbeitung vieler externer Ereignisse (Unterbrechungen): - definierte, kurze Antwortzeiten auf Unterbrechungen Geringer Ressourcenverbrauch (eingebettetes System!) Geringer Overhead - beim Zugriff auf Hardware bzw. technischen Prozeß - beim Taskwechsel, etc. Zuverlässigkeit - Robustheit gegenüber HW- und SW-Fehlern - ggf. Notbetrieb von Teilsystemen - Stabilität: falls nicht alle Fristen eingehalten werden können, müssen zumindest die wichtigsten Tasks ihre Fristen einhalten Multitasking-Fähigkeit - mit Prioritäten für Tasks (Prozesse oder Threads) Effiziente, schnelle Interprozeßkommunikation

23 Folie 89 Echtzeit-Betriebssystem vs. PC-Betriebssystem Folie 90 Echtzeit-Betriebssystem vs. PC-Betriebssystem Echtzeit-Betriebssysteme gewährleisten die Einhaltung von Zeitbedingungen Echtzeit-Betriebssysteme liegen im Allgemeinen als Bibliothek vor: - benötigte Module werden mit Anwendung gebunden und in einem ROM abgelegt Echtzeit-Betriebssysteme erlauben detaillierte Kontrolle/Anpassung durch Benutzer bzw. Programmierer, z.b.: - Task-Prioritäten - unterschiedliche -Verfahren - Einsatz von Schutzmechanismen - Art der Echtzeit-Betriebssysteme besitzen oft keine Datei-/Plattenverwaltung: - keine mechanischen Laufwerke vorhanden bzw. erlaubt - Datenträgerzugriff hat nichtdeterministisches Zeitverhalten teilweise aber Dateisysteme im Speicher (RAM oder Flash-ROM) häufig einfachere keine Auslagerung von Seiten oft nur Threads statt Prozesse - ggf. expliziter Speicherschutz zwischen Theads möglich Kein Mehrbenutzerbetrieb Folie 91 Alternative: Echtzeit-Erweiterungen Basis: herkömmliches PC-Betriebssystem mit gewohnter Bedienbarkeit und Treibern Erweiterungen unterstützen Echtzeit-Anwendungen; mögliche Erweiterungen sind: - Memory-Locking verhindert Auslagerung einer Seite auf Hintergrundspeicher - Deaktivierung von Caches erhöht die Vorhersagbarkeit auf Kosten der Performanz - Echtzeit- Strategien z.b. Linux: neue klassen - prioritätsgesteuertes FIFO/RoundRobin - höhere Priorität als Nicht-Threads - ist pro Thread wählbar Übersicht über -Verfahren

24 Folie 93 Was wird geschedult? Folie 94 Task-Modell Tasks werden geschedult! dies können Prozesse bzw. Threads sein (bei PC-Betriebssystem bzw. Echtzeit-System) Task ist normalerweise blockiert und wartet auf Aktivierung nach Aktivierung: Task führt Aufgabe aus und ruht dann wieder ein Task besitzt 4 mögliche Zustände: * ruhend (hat nichts zu tun) * bereit (hat was zu tun und wartet auf CPU) * rechnend (hat gerade die CPU) * blockiert (wartet auf Betriebsmittel) Folie 95 Zustände eines Tasks Folie 96 Zeitparameter Das Zeitverhalten eines Task wird durch mehrere Parameter beschrieben:

25 Folie 97 Zeitparameter Folie 98 Zeitparameter Das Zeitverhalten eines Task wird durch mehrere Parameter beschrieben: Das Zeitverhalten eines Task wird durch mehrere Parameter beschrieben: Folie 99 Zeitparameter Folie 100 Zeitparameter Das Zeitverhalten eines Task wird durch mehrere Parameter beschrieben: Das Zeitverhalten eines Task wird durch mehrere Parameter beschrieben:

26 Folie 101 Zeitparameter Folie 102 Zeitparameter Das Zeitverhalten eines Task wird durch mehrere Parameter beschrieben: Das Zeitverhalten eines Task wird durch mehrere Parameter beschrieben: Folie 103 Zeitparameter Folie 104 Zeitparameter Das Zeitverhalten eines Task wird durch mehrere Parameter beschrieben: Das Zeitverhalten eines Task wird durch mehrere Parameter beschrieben:

27 Folie 105 Zeitparameter Folie 106 Zeitparameter Das Zeitverhalten eines Task wird durch mehrere Parameter beschrieben: Das Zeitverhalten eines Task wird durch mehrere Parameter beschrieben: Folie 108 Teilaufgabe des Betriebssystems: Mehrprogammbetrieb Grundlagen der -Verfahren Gleichzeitige Abarbeitung meherer Tasks im schnellen Wechsel ist eine Auswahlstrategie: Welcher Prozeß darf als nächstes wie lange rechnen? -> Verwaltung des Betriebsmittels Prozessor Prozeßcharakteristik:

28 Folie 109 beeinflußt die Nutzbarkeit des Systems Folie 110 Betriebsarten eines Systems Beispiel: interaktives Programm (I) und Hintergrundprozeß (H) Darstellung als Gantt-Diagramm: Stapelverarbeitungs-Betrieb - System arbeitet nicht-interaktive Aufträge ab - häufig bei Großrechnern Interaktiver Betrieb - typisch für Arbeitsplatzrechner, Server Echtzeitbetrieb - Steueraufgaben, Multimedia-Anwendungen Folie 111 Kriterien für das (Benutzersicht) Folie 112 Kriterien für das (Systemsicht) Minimierung der Durchlaufzeit (Stapelbetrieb) - Zeit zwischen Eingang und Abschluß eines Jobs (inkl. aller Wartezeiten) Minimierung der Antwortzeit (Interaktiver Betrieb) - Zeit zwischen Eingabe einer Anfrage und Beginn der Ausgabe Einhaltung von Terminen (Realzeitbetrieb) - Ausgabe muß nach bestimmter Zeit erfolgt sein Maximierung des Durchsatzes (Stapelbetrieb) - Anzahl der fertiggestellten Jobs pro Zeiteinheit Optimierung der Prozessorauslastung (Stapelbetrieb) - prozentualer Anteil der Zeit, in der Prozessor beschäftigt ist Balance - gleichmäßige Auslastung aller Ressourcen Fairness - vergleichbare Prozesse sollten gleich behandelt werden Durchsetzung von Prioritäten - Prozesse mit höherer Priorität bevorzugt behandeln

29 Folie 113 Probleme der Kriterien Folie 114 Präemptiv?...sie sind nicht gleichzeitig erfüllbar! z.b. Prozessorauslastung kurze Antwortzeit -Ziele und -Verfahren sind von der Betriebsart abhängig - Stapelverarbeitung: hoher Durchsatz, gute Auslastung -> bevorzuge Aufträge, die freie Ressourcen nutzen - Interaktiver Betrieb: kurze Antwortzeiten -> bevorzuge Prozesse, die auf E/A gewartet haben und nun rechenbereit sind - Echtzeitbetrieb: Einhaltung von Zeitvorgaben -> bevorzuge Prozesse, deren Ausführungsfristen ablaufen Nicht-präemptives - Prozeß darf so lange rechnen, bis er freiwillig CPU aufgibt oder blockiert -> sinnvoll bei Stapelverarbeitung Präemptives - Scheduler kann Prozeß die CPU zwangsweise entziehen, wenn anderer Prozeß (mit höherer Priorität) rechenbereit geworden ist - nach Ablauf einer bestimmten Zeit -> unterstützt interaktive Systeme und Echtzeitsysteme Folie 115 -Zeitpunkte Folie 116 -Verfahren: FCFS - First Come, First Served bei Beendigung eines Prozesses bei freiwilliger CPU-Aufgabe eines Prozesses bei Blockierung eines Prozesses bei Erzeugung eines Prozesses bei E/A-Interrupt - evtl. werden blockierte Prozeße rechenbereit regelmäßig bei Timer-Interrupt Nicht-präemptives Verfahren Der am längsten wartende bereite Prozess darf als nächstes rechnen nach Aufhebung einer Blockierung reiht sich ein Prozeß wieder hinten in die Warteschlange ein

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

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

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

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

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

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

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

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

Mehr

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

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

Mehr

Betriebssysteme (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

Rechnernutzung in der Physik. Betriebssysteme

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

Mehr

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

Echtzeitfähige Ereignisgetriebene Scheduling-Strategien

Echtzeitfähige Ereignisgetriebene Scheduling-Strategien Friedrich-Alexander-Universität Erlangen-Nürnberg Ausgewählte Kapitel eingebetteter Systeme Echtzeitfähige Ereignisgetriebene Scheduling-Strategien Sven Kerschbaum 1. Einführung Bei einem eingebetteten

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

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

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

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

Mehr

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

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

Mehr

2 Echtzeitbetriebssysteme

2 Echtzeitbetriebssysteme 35 2 Echtzeitbetriebssysteme In den letzten Jahren hat sich die Automobilindustrie zu einem der wesentlichen Anwender von Echtzeitbetriebssystemen für eingebettete Systeme entwickelt. Relativ zeitig erkannten

Mehr

Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008

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

Mehr

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

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

13. Übung mit Musterlösung

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

Mehr

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

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

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

20 Eingebettete Software

20 Eingebettete Software 20 Eingebettete Software 20.0 Einführung Lernziele Echtzeitsysteme Eingebettete Systeme 20.1 Entwurf eingebetteter Systeme Modellierung von Echtzeitsystemen Programmierung von Echtzeitsystemen 20.2 Architekturmuster

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

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

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

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

TIMI: Technische Informatik für Medieninformatiker

TIMI: Technische Informatik für Medieninformatiker TIMI: Technische Informatik für Medieninformatiker Bachelor-Studiengang Digitale Medien Medieninformatik SS 2004 Niels Pollem Arbeitsgruppe Rechnernetze (Prof. Dr.-Ing. Ute Bormann) Scheduling:

Mehr

Real Time Operating Systems (RTOS) = Echtzeit-Betriebssysteme. Eine Einführung. Klaus Kusche, Okt. 2011

Real Time Operating Systems (RTOS) = Echtzeit-Betriebssysteme. Eine Einführung. Klaus Kusche, Okt. 2011 Real Time Operating Systems (RTOS) = Echtzeit-Betriebssysteme Eine Einführung Klaus Kusche, Okt. 2011 Ziele des Vortrags Überblick über das Thema Praktisches Verständnis von Anforderungen Problembereichen

Mehr

Echtzeitanforderung und Linux

Echtzeitanforderung und Linux Echtzeitanforderung und Linux Slide 1 - http://www.pengutronix.de - 21.01.2007 Definition Harte Echtzeit I Was zeichnet ein Echtzeitsystem aus? Zeitverhalten ist Teil der System-Spezifikation! Bei Embedded-Systemen

Mehr

C. Betriebssystem-Strukturen C.1 Monolithische Betriebssysteme

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

Mehr

OSEKtime - Time-Triggered OSEK/OS

OSEKtime - Time-Triggered OSEK/OS OSEKtime - Time-Triggered OSEK/OS Gregor Kaleta gregor.kaleta@udo.edu PG Seminarwochenende 21.-23. Oktober 2007 1 Überblick Einleitung OSEKtime Task-Zustandsmodell, Scheduling-Verfahren Interrupt-Verarbeitung

Mehr

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

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

Mehr

Betriebssysteme Kap A: Grundlagen

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

Mehr

POSIX Echtzeit: Kernel 2.6 und Preempt-RT

POSIX Echtzeit: Kernel 2.6 und Preempt-RT POSIX Echtzeit: Kernel 2.6 und Preempt-RT Slide 1 - http://www.pengutronix.de - 21.01.2007 Echtzeit-Systemplanung Wenn das zeitliche Verhalten spezifiziert ist, kann auch spezifiziert werden, welche Applikationsteile

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

Reaktive Systeme und synchrones Paradigma

Reaktive Systeme und synchrones Paradigma Sascha Kretzschmann Freie Universität Berlin Reaktive Systeme und synchrones Paradigma Einführung in das Seminar über synchrone Programmiersprachen Worum geht es? INHALT 2 Inhalt 1. Einleitung - Wo befinden

Mehr

Definitionen. Trend: Integration von Multimedia in Fahrzeuge

Definitionen. Trend: Integration von Multimedia in Fahrzeuge Betriebssysteme für eingebettete MM-Systeme Referent: Dr. rer. nat. Frank Dopatka Voraussetzung: Grundlegende Kenntnisse über Betriebssysteme und über den Multimedia-Begriff Ziel: Kennen lernen der Anwendungsgebiete

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

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

Ethernet als Bus für Echtzeitanwendungen im Automobil:

Ethernet als Bus für Echtzeitanwendungen im Automobil: Ethernet als Bus für Echtzeitanwendungen im Automobil: Konzepte aus der Automatisierungsbranche Hochschule für Angewandte Wissenschaften Hamburg Anwendungen 1 WS 08/09 16. Dezember 2008 Wie alles began

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

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

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

Mehr

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

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

Mehr

Technische Informatik II

Technische Informatik II Universität Stuttgart INSTITUT FÜR KOMMUNIKATIONSNETZE UND RECHNERSYSTEME Prof. Dr.-Ing. Andreas Kirstädter Diplomprüfung Prüfer: Termin: Dauer: Verlangte Aufgaben: Zugelassene Hilfsmittel: Technische

Mehr

Zeit- und ereignisgesteuerte Echtzeitsysteme

Zeit- und ereignisgesteuerte Echtzeitsysteme Zeit- und ereignisgesteuerte Echtzeitsysteme Stephan Braun Stephan.Braun.Hagen@t-online.de PG Seminarwochenende 21.-23. Oktober 2007 1 Überblick Echtzeitsystemmodell Einführung Ereignis- und zeitgesteuerte

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 2 Überblick Betriebssysteme. Maren Bennewitz

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

Mehr

Betriebssysteme. 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

*DE102007042999A120090312*

*DE102007042999A120090312* *DE102007042999A120090312* (19) Bundesrepublik Deutschland Deutsches Patent- und Markenamt (10) DE 10 2007 042 999 A1 2009.03.12 (12) Offenlegungsschrift (21) Aktenzeichen: 10 2007 042 999.3 (22) Anmeldetag:

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

CS2101 Nebenläufige und Verteilte Programme Bachelor of Science (Informatik)

CS2101 Nebenläufige und Verteilte Programme Bachelor of Science (Informatik) Prof. Dr. Th. Letschert CS2101 Nebenläufige und Verteilte Programme Bachelor of Science (Informatik) Vorlesung 7 Th Letschert FH Gießen-Friedberg Ressourcen Verwaltung passive Ressourcen aktive Ressourcen

Mehr

Einführung in die Echtzeitbetriebssysteme

Einführung in die Echtzeitbetriebssysteme Einführung in die Echtzeitbetriebssysteme Hauptseminararbeit in dem Studiengang B.Sc. Informatik von Maximilian von Piechowski Technische Hochschule Mittelhessen Inhaltsverzeichnis 1 Was versteht man unter

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

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

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

Mehr

Kapitel 2. Betriebssysteme

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

Mehr

Prozeß P1 Prozeß P2. Zur Synchronisation stehen den beiden Prozessen binäre Semaphore und die beiden Funktionen

Prozeß P1 Prozeß P2. Zur Synchronisation stehen den beiden Prozessen binäre Semaphore und die beiden Funktionen Seite 8 A UFGABE 11 INTERP ROZEßKOMMUNIKATION Das folgende Petrinetz zeigt zwei verkoppelte Prozesse P1 und P2. Die Transitionen a und b beschreiben Aktionen von P1, die Transitionen c und d Aktionen von

Mehr

Unterschiede in den Konzepten von TinyOS und Embedded Linux

Unterschiede in den Konzepten von TinyOS und Embedded Linux Fakultät Informatik Institut für Angewandte Informatik, Professur Technische Informationssysteme Unterschiede in den Konzepten von TinyOS und Embedded Linux Dresden, 29.11.2010 Inhalt 1. Einführung 1.1

Mehr

5 Speicherverwaltung. bs-5.1 1

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

Mehr

Teil VIII Von Neumann Rechner 1

Teil VIII Von Neumann Rechner 1 Teil VIII Von Neumann Rechner 1 Grundlegende Architektur Zentraleinheit: Central Processing Unit (CPU) Ausführen von Befehlen und Ablaufsteuerung Speicher: Memory Ablage von Daten und Programmen Read Only

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

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

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

Mehr

Inhaltsverzeichnis XII

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

Mehr

Musterlösung Übungsblatt 1 Netzprogrammierung WS 05/06

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

Mehr

Kapitel 2: Betriebssysteme

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

Mehr

Architektur Verteilter Systeme Teil 6: Interprozess-Kommunikation

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

Mehr

Slothful Linux: An Efficient Hybrid Real-Time System by Hardware-Based Task Dispatching. Rainer Müller

Slothful Linux: An Efficient Hybrid Real-Time System by Hardware-Based Task Dispatching. Rainer Müller Slothful Linux: An Efficient Hybrid Real-Time System by Hardware-Based Task Dispatching Rainer Müller 21. November 2013 Spezialisierung von Betriebssystemen Vielzweckbetriebssysteme (General Purpose OS,

Mehr

Steuerungen. 4 Typen verbindungsprogrammierte Steuerung (VPS), speicherprogrammierte Steuerung (SPS), Mikrokontroller (MC) und Industrie-PCs (IPC)

Steuerungen. 4 Typen verbindungsprogrammierte Steuerung (VPS), speicherprogrammierte Steuerung (SPS), Mikrokontroller (MC) und Industrie-PCs (IPC) Steuerungen 4 Typen verbindungsprogrammierte Steuerung (VPS), speicherprogrammierte Steuerung (SPS), Mikrokontroller (MC) und Industrie-PCs (IPC) VPS - Funktion der Steuerung in der Schaltungstopologie

Mehr

examen.press Echtzeitsysteme Grundlagen, Funktionsweisen, Anwendungen Bearbeitet von Heinz Wörn

examen.press Echtzeitsysteme Grundlagen, Funktionsweisen, Anwendungen Bearbeitet von Heinz Wörn examen.press Echtzeitsysteme Grundlagen, Funktionsweisen, Anwendungen Bearbeitet von Heinz Wörn 1. Auflage 2005. Taschenbuch. xiv, 556 S. Paperback ISBN 978 3 540 20588 3 Format (B x L): 15,5 x 23,5 cm

Mehr

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

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

Mehr

Lösung Verteilte Systeme WS 2011/12 Teil 1

Lösung Verteilte Systeme WS 2011/12 Teil 1 Seite 1 von 5 Lösung Verteilte Systeme WS 2011/12 Teil 1 2.02.2012 1. Aufgabe (5) Sie fahren in Ihrem Privatfahrzeug auf einer Autobahn und hinter Ihnen fährt ein Polizeifahrzeug. 1.1 Nennen Sie ein Szenario,

Mehr

Musterlösung der Klausur

Musterlösung der Klausur Matrikelnummer: 9999999 FB Informatik und Mathematik Prof. R. Brause Musterlösung der Klausur Betriebssysteme SS 2007 Vorname: Max Nachname: Musterfrau Matrikelnummer: 9999999 Geburtsdatum: Studiengang:

Mehr

BP 2 Prozessorvergabe - Multiprozessoren: Kern-Fäden. besten, wenn der Zusatzaufwand für Kontextumschaltungen gering ist.

BP 2 Prozessorvergabe - Multiprozessoren: Kern-Fäden. besten, wenn der Zusatzaufwand für Kontextumschaltungen gering ist. BP 2 Prozessorvergabe - Multiprozessoren: Kern-Fäden 5.2 Prozessorvergabe für Kern-Fäden Scheduler-Struktur Struktur der Warteschlangen Parallele Bearbeitung von Warteschlangen Strategien Statische oder

Mehr

Prozessinformationsverarbeitung. Echtzeitbetriebssysteme. Professur für Prozessleittechnik Wintersemester 2009/2010

Prozessinformationsverarbeitung. Echtzeitbetriebssysteme. Professur für Prozessleittechnik Wintersemester 2009/2010 Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik Prozessinformationsverarbeitung (PIV) Echtzeitbetriebssysteme Professur für Prozessleittechnik Wintersemester 2009/2010

Mehr

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

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

Mehr

Grundlagen verteilter Systeme

Grundlagen verteilter Systeme Universität Augsburg Insitut für Informatik Prof. Dr. Bernhard Bauer Wolf Fischer Christian Saad Wintersemester 08/09 Übungsblatt 5 26.11.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1: Erläutern

Mehr

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

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

Mehr

DHBW Stuttgart, Studiengang Elektrotechnik, 5. HJ, Vorlesung: Realzeitsysteme Sep 2012. 4) Task-Verwaltung

DHBW Stuttgart, Studiengang Elektrotechnik, 5. HJ, Vorlesung: Realzeitsysteme Sep 2012. 4) Task-Verwaltung Inhalte Eigenschaften von Rechenprozessen (Tasks) Taskübergänge (process control block) Multitasking (kooperativ und präemptiv) Scheduler Erzeugen, Starten und Beenden von Tasks Taskzustände (running,

Mehr

Grundkurs Betriebssysteme

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

Mehr

Fragenkatalog Echtzeitsysteme/Realzeitsysteme. Jürgen Quade

Fragenkatalog Echtzeitsysteme/Realzeitsysteme. Jürgen Quade Fragenkatalog Echtzeitsysteme/Realzeitsysteme Jürgen Quade Fragenkatalog Echtzeitsysteme/Realzeitsysteme von Jürgen Quade V1.4, 31. Januar 2008 Versionsgeschichte Version $Revision: 1.1 $ $Date: 2005/01/25

Mehr

Für die Software-Entwicklung von

Für die Software-Entwicklung von Betriebssysteme Embedded Design Für die Software-Entwicklung von Embedded- und Echtzeit-Systemen stehen unterschiedliche Arten von Task-Schedulern zur Auswahl. Sie reichen von einfacher, periodischer Ausführung

Mehr

Projekt für Systemprogrammierung WS 06/07

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

Mehr

User Level Device Driver am Beispiel von TCP

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

Mehr

Betriebssysteme Kap B: Hardwaremechanismen

Betriebssysteme Kap B: Hardwaremechanismen 1 Betriebssysteme Kap B: Hardwaremechanismen 2 Beispielprozessor Ein- / Ausgabe p[ ] ir Leitwerk pc Register a f sp Rechenwerk Speicher m[ ] Spezielle Register Flagregister f f.i: Interrupt-Enable-Flag

Mehr

Rapid I/O Toolkit. http://projects.spamt.net/riot. Alexander Bernauer alex@copton.net 08.12.08

Rapid I/O Toolkit. http://projects.spamt.net/riot. Alexander Bernauer alex@copton.net 08.12.08 Rapid I/O Toolkit http://projects.spamt.net/riot Alexander Bernauer alex@copton.net 08.12.08 Inhalt Motivation Architektur Beispiel I/O Features Ausblick Motivation Problemstellung Vorgaben Datenverarbeitung

Mehr

Kapitel 2 Betriebssysteme. Für den Rechnerbetrieb notwendige Basissoftware

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

Mehr

Implementierung von Dateisystemen

Implementierung von Dateisystemen Implementierung von Dateisystemen Teil 2 Prof. Dr. Margarita Esponda WS 2011/2012 44 Effizienz und Leistungssteigerung Festplatten sind eine wichtige Komponente in jedem Rechnersystem und gleichzeitig

Mehr

5.7 Echtzeitbetriebssysteme

5.7 Echtzeitbetriebssysteme 5.7 Echtzeitbetriebssysteme Prof. Dr. Dieter Zöbel, Institut für Softwaretechnik Rheinau 1 D-56075 Koblenz zoebel@uni-koblenz.de http://www.uni-koblenz.de/ zoebel 26. November 2001 I Merkmale von Echtzeitbetriebssystemen

Mehr

Soft-SPS - Was ist eine SPS?

Soft-SPS - Was ist eine SPS? Soft-SPS - Was ist eine SPS? SPS = Speicherprogrammierbare Steuerung PLC = Programmable Logic Control Ursprünglich elektronischer Ersatz von Relaissteuerungen (Schützsteuerung) 1 Soft-SPS - Relais-Steuerung

Mehr

Echtzeit mit Linux. Erweiterungen und deren Anwendung. Martin Krohn. 2. Februar 2006

Echtzeit mit Linux. Erweiterungen und deren Anwendung. Martin Krohn. 2. Februar 2006 Erweiterungen und deren Anwendung 2. Februar 2006 1 Einleitung Anwendungsgebiete 2 Linux als Echtzeitbetriebssystem Eignung von Linux 3 Erweiterungen für Linux RT-Linux RTAI- Real-Time Application Interface

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

Vorlesung: Betriebssysteme

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

Mehr

PARAGON SYSTEM UPGRADE UTILITIES

PARAGON SYSTEM UPGRADE UTILITIES PARAGON SYSTEM UPGRADE UTILITIES VIRTUALISIERUNG EINES SYSTEMS AUS ZUVOR ERSTELLTER SICHERUNG 1. Virtualisierung eines Systems aus zuvor erstellter Sicherung... 2 2. Sicherung in eine virtuelle Festplatte

Mehr

1. Prozesse & Threads (10 Punkte)

1. Prozesse & Threads (10 Punkte) Fachbereich Informatik/Mathematik Seite 1/9 1. Prozesse & Threads (10 Punkte) a) Erklären Sie den Unterschied zwischen Prozessen und Threads. [4 P.] Der wesentliche Unterschied ist, dass Prozesse über

Mehr

Echtzeit-Betriebssysteme und -Bussysteme

Echtzeit-Betriebssysteme und -Bussysteme Echtzeit-Betriebssysteme und -Bussysteme Seminar im Wintersemester 2006/07 Steffen H. Prochnow Reinhard von Hanxleden Echtzeitsysteme und Eingebettete Systeme Institut für Informatik und Praktische Mathematik

Mehr

Dipl.-Inf. J. Richling Wintersemester 2003/2004. Weiche Echtzeit

Dipl.-Inf. J. Richling Wintersemester 2003/2004. Weiche Echtzeit Dipl.-Inf. J. Richling Wintersemester 2003/2004 Weiche Echtzeit Wiederholung - Resultat/Wert-Funktion "harte" Echtzeit Wert Zeit Wert Zeit Wert Deadline Zeit "weiche" Echtzeit Wert Deadline Zeit Deadline

Mehr