5 Echtzeit-Betriebssysteme

Größe: px
Ab Seite anzeigen:

Download "5 Echtzeit-Betriebssysteme"

Transkript

1 5 Echtzeit-Betriebssysteme 5.1 Begriffsbestimmung 5.2 Organisationsaufgaben eines Echtzeit-Betriebssystems 5.3 Entwicklung eines Mini-Echtzeit-Betriebssystems 5.4 Software-Systementwurf des Mini-Echtzeit-Betriebssystems 5.5 Beispiel für Echtzeit-Betriebssysteme 2003, IAS Universität Stuttgart 331 Kapitel 5: Echtzeit-Betriebssysteme Kapitel 5 - Lernziele Wissen, was ein Betriebssystem ist Erklären können, was man unter Betriebsmitteln versteht Die Aufgaben eines Echtzeit-Betriebssystems kennen Verstehen, was Interrupts sind Erklären können, wie die Speicherverwaltung arbeitet Das Vorgehen bei der Entwicklung eines Mini-Betriebssystems kennen Den Aufbau eines Beispiel-Mini-Betriebssystems verstanden haben Wissen, wie das Mini-Betriebssystems funktioniert Die Erweiterungen des Mini-Betriebssystems verstanden haben Die Abläufe im Mini-Betriebssystem nachvollziehen können Eine Übersicht über Echtzeit-Betriebssysteme erhalten 2003, IAS Universität Stuttgart 332

2 5 Echtzeit-Betriebssysteme 5.1 Begriffsbestimmung Was ist ein Betriebssystem? Betriebsmittel Anforderungen an ein Echtzeit-Betriebssystem Kategorien von Echtzeit-Betriebssystemen 5.2 Organisationsaufgaben eines Echtzeit-Betriebssystems 5.3 Entwicklung eines Mini-Echtzeit-Betriebssystems 5.4 Software-Systementwurf des Mini-Echtzeit-Betriebssystems 5.5 Beispiel für Echtzeit-Betriebssysteme 2003, IAS Universität Stuttgart Was ist ein Betriebssystem? Definition Definition DIN 44300: Betriebssysteme sind die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften der Rechenanlage die Grundlage der möglichen Betriebsarten des digitalen Rechensystems bilden und insbesondere die Abwicklung von Programmen steuern und überwachen Betriebssystem Systematisch aufgebaute Sammlung von Steuerungsund Hilfsprogrammen Zuteilung der vorhandenen Betriebsmittel zu den konkurrierenden Rechenprozessen Scheduling Erleichterung der Bedienung und Programmierung des Rechners und der angeschlossenen Geräte für den Anwender Treiber 2003, IAS Universität Stuttgart 334

3 5.1.1 Was ist ein Betriebssystem? Eigenschaften von Betriebssystemen Realisierung der hardwareabhängigen Aufgaben häufig Mitlieferung vom Hersteller des Rechners effizientes Betriebssystem setzt genaue Kenntnis der Hardwarestruktur voraus vielfach für ganze Rechnerlinie Amortisierung der hohen Entwicklungskosten eines Betriebssystems Größe mehrere Kilo-Bytes bei Mikrorechnern mehrere Mega-Bytes bei Großrechnern Integration klassischer Betriebssystembestandteile in Form von Halbleiterchips 2003, IAS Universität Stuttgart Betriebsmittel Betriebsmittel Objekte, die die Rechenprozesse während des Ablaufs benötigen und auf deren Zuteilung warten müssen Geräteeinheiten Prozessoren Speicher Peripheriegeräte wie Drucker Systemprogramme 2003, IAS Universität Stuttgart 336

4 5.1.3 Anforderungen an ein Echtzeit-Betriebssystem Zeitbedingungen bei der Abwicklung von Rechenprozessen Abschluss bzw. Anstoß von Rechenprozessen zu einem exakten Zeitpunkt zu einem bestimmten Zeitpunkt, aber mit zulässigen Zeittoleranzen zu einem spätesten Zeitpunkt zu einem frühesten Zeitpunkt 2003, IAS Universität Stuttgart Anforderungen an ein Echtzeit-Betriebssystem Beispiele von Zeitbedingungen Anforderung Zeitdiagramm Beispiel feste Zeitpunkte Kennfeldaufnahme an Prüfständen t 1 t 2 t Zeitpunkte mit Toleranzen t 1 t 2 t Erfassung von Regelgrößen bei der direkten digitalen Regelung spätester Zeitpunkt t 1 t Erfassung von Datentelegrammen bei Linienleiter-Systemen frühester Zeitpunkt t 1 t Folgesteuerung bei Chargen-Prozessen 2003, IAS Universität Stuttgart 338

5 5.1.4 Kategorien von Echtzeit-Betriebssystemen Kategorien von Echtzeit-Betriebssystemen (1) Echtzeit-UNIX Kompatibel zu UNIX-System V Einsatz bei Prozessleitsystemen Echtzeit-Kernel UNIX-kompatibler Mikro-Kernel mit Speicherverwaltung, Interruptverarbeitung, Scheduler, Taskverwaltung, Schnittstellen auf der Basis von TCP/IP optimal an Anforderungen angepasst gut optimierter Code für unterschiedliche Plattformen 2003, IAS Universität Stuttgart Kategorien von Echtzeit-Betriebssystemen Kategorien von Echtzeit-Betriebssystemen (2) Echtzeit-Betriebssystemerweiterungen Erweiterung von MS-DOS-Systemen Bibliothek zur Einhaltung der Echtzeitbedingungen Echtzeit-Betriebssysteme sehr effizient flexibel konfigurierbar an UNIX orientiert 2003, IAS Universität Stuttgart 340

6 5 Echtzeit-Betriebssysteme 5.1 Begriffsbestimmung 5.2 Organisationsaufgaben eines Echtzeit-Betriebssystems Aufbau und Eigenschaften eines Echtzeit-Betriebssystems Rechenprozess-Verwaltung Interrupt-Verwaltung Speicherverwaltung Ein-/Ausgabesteuerung Fehlerbehandlung und (Wieder-) Anlauf 5.3 Entwicklung eines Mini-Echtzeit-Betriebssystems 5.4 Software-Systementwurf des Mini-Echtzeit-Betriebssystems 5.5 Beispiel für Echtzeit-Betriebssysteme 2003, IAS Universität Stuttgart Aufbau und Eigenschaften Aufgaben eines Echtzeit-Betriebssystemen Verwaltung von Rechenprozessen und Betriebsmitteln unter Erfüllung der Forderungen nach Rechtzeitigkeit, Gleichzeitigkeit und Effizienz Betriebssystemfunktionen Organisation des Ablaufs der Rechenprozesse (Scheduling) Organisation der Interruptverwaltung Organisation der Speicherverwaltung Organisation der Ein-/Ausgabe Organisation des Ablaufs bei irregulären Betriebszuständen und des (Wieder-) Anlaufs 2003, IAS Universität Stuttgart 342

7 5.2.1 Aufbau und Eigenschaften Schichtenarchitektur eines AT-Computersystems Automatisierungs-Computer Rechenprozesse und Betriebsmittel Echtzeit-Betriebssystem Betriebssystemkern (Mikrokernel) konfigurierbarer Zusatz Computer-Hardware 2003, IAS Universität Stuttgart Aufbau und Eigenschaften Automatisierungs-Computersystem Automatisierungsprogramme Rechenprozess 1 Rechenprozess 2 Rechenprozess n Betriebsmittel Betriebsmittel 1 Betriebsmittel 2 Betriebsmittel m Echtzeit-Betriebssystem Verwaltung der Rechenprozesse: Verwaltung der Betriebsmittel: anmelden, beauftragen, einplanen, beenden, usw. bekanntgeben, erzeugen, anfordern, belegen, freigeben, usw. 2003, IAS Universität Stuttgart 344

8 5.2.2 Rechenprozess-Verwaltung Rechenprozess-Verwaltung Arten von Rechenprozessen Anwenderprozesse Systemprozesse zentrale Protokollierung Verwaltung von Speichermedien Null-Prozess Aufgaben bei der Rechenprozess-Verwaltung Koordinierung des Ablaufs von Anwender- und Systemprozessen Parallelbetrieb möglichst vieler Betriebsmittel Abarbeitung von Warteschlangen bei Betriebsmitteln Synchronisierung von Anwender-Systemprozessen Vermeidung, Entdeckung und Behebung von Deadlocks 2003, IAS Universität Stuttgart Interrupt-Verwaltung Interrupt-Verwaltung Unterbrechung des geplanten Programmablaufs Beauftragung einer Behandlungsroutine Geplanter Programmablauf: (ohne Interrput) Steuerungsprogramm t Tatsächlicher Ablauf: (mit Interrupt) Steigende Prio Interrupt 1 Steuerungsprogramm ISR 1 Interrupt Service Routine Steuerungsprogramm t 2003, IAS Universität Stuttgart 346

9 5.2.3 Interrupt-Verwaltung Behandlung von Interrupts Erzeugung und Verarbeitung vektorisierter Interrupts Interruptvektor Anstoß einer Interrupt-Routine bei gleichzeitiger Unterbrechung des gerade laufenden Rechenprozesses Priorisierung von Interrupts Hardwarefunktionen für die Interrupt-Behandlung (Mikrosekunden-Bereich) 2003, IAS Universität Stuttgart Speicherverwaltung Warum Speicherverwaltung? Preis von Speicherplatz proportional zur Zugriffsgeschwindigkeit Speicherhierarchie-Ebene optimale Nutzung notwendig Cache-Speicher (besonders schneller Halbleiterspeicher) Arbeitsspeicher Plattenspeicher Diskette Aufgaben der Speicherverwaltung Optimale Ausnutzung der schnellen Speicher Koordinierung des gemeinsamen Zugriffs auf einen Speicherbereich Schutz des Speicherbereichs verschiedener Rechenprozesse gegen Fehlzugriffe Zuweisung von physikalischen Speicheradressen für die logischen Namen in Anwenderprogrammen 2003, IAS Universität Stuttgart 348

10 5.2.4 Speicherverwaltung Zuordnung Name - physikalischer Adresse Compiler Linker Name Adresse relativ zum Programmanfang Adresse relativ zum gebundenen Programm virtuelle Adresse Loader physikalische Adresse 2003, IAS Universität Stuttgart Speicherverwaltung Abbildung virtueller auf physikalische Adressen im Speicher Arbeitsspeicher physikalische Adresse virtuelle Adresse Programm Programm Programm , IAS Universität Stuttgart 350

11 5.2.5 Ein-/Ausgabesteuerung Ein-/Ausgabesteuerung Verschiedenartige Typen von Ein-/Ausgabegeräten Unterscheidung in Geschwindigkeit Unterscheidung in Datenformaten Realisierung der Ein-/Ausgabesteuerung Schnittstelle hardwareabhängig/hardwareunabhängig Hardwareunabhängige Ebene für die Datenverwaltung und den Datentransport Hardwareabhängige Ebene, die alle gerätespezifischen Eigenschaften berücksichtigt (Treiber-Programme) 2003, IAS Universität Stuttgart Fehlerbehandlung und (Wider-) Anlauf Klassifizierung von Fehlern (1) fehlerhafte Benutzereingaben nicht zulässige Eingaben müssen mit Fehlerhinweisen abgelehnt werden fehlerhafte Anwenderprogramme Gewährleistung, dass ein fehlerhaftes Anwenderprogramm keine Auswirkungen auf andere Programme hat 2003, IAS Universität Stuttgart 352

12 5.2.6 Fehlerbehandlung und (Wider-) Anlauf Klassifizierung von Fehlern (2) Hardwarefehler/-ausfälle Erkennung von Hardwarefehlern bzw. -ausfällen Rekonfigurierung ohne die fehlerhaften Teile Abschaltsequenzen bei Stromausfällen Deadlocks aufgrund dynamischer Konstellationen sichere Vermeidung von Deadlocks ist nicht möglich Deadlockerkennung mit Deadlockbehebung durch Entzug von Betriebsmitteln 2003, IAS Universität Stuttgart Echtzeit-Betriebssysteme 5.1 Begriffsbestimmung 5.2 Organisationsaufgaben eines Echtzeit-Betriebssystems 5.3 Entwicklung eines Mini-Echtzeit-Betriebssystems Zielsetzung und Vorgehen Klärung und Festlegung der Aufgabenstellung und der Anforderungen Lösungskonzeption 5.4 Software-Systementwurf des Mini-Echtzeit-Betriebssystems 5.5 Beispiel für Echtzeit-Betriebssysteme 2003, IAS Universität Stuttgart 354

13 5.3.1 Zielsetzung und Vorgehen Zielsetzung Vorstellung des Aufbaus und der Arbeitsweise eines Echtzeit-Betriebssystems in stark vereinfachter Form Schrittweiser Verzicht der getroffenen Vereinfachungen Vorgehen bei der Entwicklung Klärung der Aufgabenstellung, Festlegung der Anforderungen Fachtechnische Lösungskonzeption Software-Systementwurf Implementierung 2003, IAS Universität Stuttgart Zielsetzung und Vorgehen Vorgehen bei der Entwicklung Software - Systementwurf Klärung und Festlegung der Anforderungen Fachtechnische Lösung konzipieren Grobentwurf des Programmsystems Feinentwurf des Programmsystems Implementierung Lastenheft Pflichtenheft Blockbilder Flussdiagramme Programme in einer Programmiersprache 2003, IAS Universität Stuttgart 356

14 5.3.2 Aufgabenstellung und Anforderungen Aufgabenstellung und Anforderungen Verwaltung von maximal n Rechenprozessen m Rechenprozesse zyklisch k Rechenprozesse durch Interrupt-Signal d.h. n = m + k ein Prozessor zur Ausführung von Operationen keine Optimierung der Abläufe durch Simultanabarbeitung von Rechen- und E/A-Operationen Zeitsignal für zyklische Aktivierung durch internen Taktgeber Taktimpulse in festem Zeitabstand T (z.b. T = 20ms) unterschiedliche Zykluszeiten für die zyklischen Rechenprozesse 2003, IAS Universität Stuttgart Aufgabenstellung und Anforderungen Vereinfachungen, die später stufenweise aufgehoben werden Summe aller Rechenzeiten der Rechenprozesse kleiner als Zeitabstand T Sicherstellung, dass beim nächsten Uhrimpuls-Takt alle Rechenprozesse beendet sind Keine Verwaltung von Tasks, die durch Interrupt angestoßen werden Keine Betriebsmittelverwaltung E/A-Zeiten vernachlässigbar klein nur zyklische Tasks 2003, IAS Universität Stuttgart 358

15 5.3.3 Lösungskonzeption Lösungskonzeption Verfahren der asynchronen Programmierung asynchrone Beauftragung der einzelnen Rechenprozesse keine feste Reihenfolge der Tasks Konfliktstrategie nach Prioritätsnummern Teillösungen Zykluszeitbildung Ableitung der unterschiedlichen Zykluszeiten der Tasks aus dem Uhrimpuls-Takt Zustandsführung der Rechenprozesse Beauftragung der Tasks zu den jeweiligen Zykluszeiten und definierte Beendigung Start der Rechenprozesse Start der Task, die an der Reihe ist 2003, IAS Universität Stuttgart Lösungskonzeption Lösungskonzept des Mini-Betriebssystems Teillösung 1: Zykluszeit Bildung Bilden der Zykluszeiten T 1, T 2,..., T m Idee Teillösung 2: Beauftragung der Rechenprozesse zu den Zeiten T 1,..., T m, und Beenden der Beauftragung Zustandsführung der Rechenprozesse Teillösung 3: Start der Rechenprozesse Starten der beauftragten Rechenprozesse nach Prioritäten 2003, IAS Universität Stuttgart 360

16 5.3.3 Lösungskonzeption Zykluszeit-Bildung Aufgabe: Bildung des Zusammenhangs zwischen den Zykluszeiten T i (i = 1,2,...,m) und der Zeitdauer T Annahme: T i >> T T i = a i T a i ganzzahlige Zykluszeitfaktoren (i=1,2,...,m) Zeitdauervariable Z i (i=1,2,...,m) Eintreffen des Uhrimpuls-Takts verringert Z i um 1 Z i = 0: Zykluszeit T i ist abgelaufen Zurücksetzen von Z i auf den Anfangswert a i 2003, IAS Universität Stuttgart Lösungskonzeption Teillösung 1: Zykluszeit-Bildung Einführung dimensionsloser, ganzzahliger Zykluszeit-Faktoren T 1 = a 1 T a 1 = T 2 = a 2 T a 2 = T m = a m T a m = T 1 T T 2 T T m T Definition von (dimensionslosen) Zeitdauervariablen z 1, z 2,..., z m mit dem Anfangswerten z 1 = a 1 z 2 = a 2 z m = a m Uhrimpulstakt Bei jedem Eintreffen des Uhrimpuls-Taktes im Zeitstand T: Dekrementieren der Variablen z i (vermindern um 1), d.h. Bildung von: z 1 := z 1-1 z 2 := z 2-1 z m := z m , IAS Universität Stuttgart 362

17 5.3.3 Lösungskonzeption Sobald eine Variable z i = 0 geworden ist, ist die betreffende Zykluszeit T i erreicht. Daher wird dieses Ergebnis an die Lösungskomponente 2 gemeldet, die den Rechenprozess i beauftragt (in den Zustand "bereit" bringt). Zu/ von Teillösung 2 Rücksetzen der betreffenden Zeitdauervariablen auf den Anfangswert z i := a i, Fortsetzen mit Lösungskomponente 2. Zu Teillösung , IAS Universität Stuttgart Lösungskonzeption Zustandsführung der Rechenprozesse Aufgabe: Verwaltung der Zustände der Rechenprozesse ruhend bereit blockiert laufend Buchführung über die jeweiligen Zustände Durchführung von Zustandsänderungen 2003, IAS Universität Stuttgart 364

18 5.3.3 Lösungskonzeption Teillösung 2: Zustandsführung der Rechenprozesse von Teillösung 1 zurück zu Teillösung 1 Bei Eintreffen einer Meldung, dass eine Zykluszeit T i abgelaufen ist: Beauftragung des betreffenden Rechenprozesses (in den Zustand "bereit" setzen). von Teillösung 1,wenn alle Zeitdauervariablen bearbeitet sind In der Liste den jenigen Rechenprozess ermitteln, der im Zustand "bereit" ist und der dabei die höchste Priorität aufweist Liste der momentanen Zustände der Rechenprozesse Meldung an die Lösungskomponente 3 (dort wird der betreffende Rechenprozess gestartet). Start-Meldung zu Teillösung 3 Nach Ausführung eines Rechenprozesses: In der Zustands-Liste den Zustand "ruhend" eintragen. Ende-Meldung von Teillösung , IAS Universität Stuttgart Lösungskonzeption Start der Rechenprozesse Aufgabe: Ermittlung der Startadresse Start des Rechenprozesses Beendigung des Rechenprozesses überwachen 2003, IAS Universität Stuttgart 366

19 5.3.3 Lösungskonzeption Teillösung 3: Start der Rechenprozesse Start-Meldung von Teillösung 2 Nach der Meldung von der Lösungskomponente 2: Startadresse des betreffenden Rechenprozesses ermitteln. Start des betreffenden Rechenprozesses (Unterprogramm-Sprung an die Startadresse) Ende-Meldung zu Teillösung 2 Meldung an Lösungskomponente 2, dass Rechenprozess beendet ist. 2003, IAS Universität Stuttgart Echtzeit-Betriebssysteme 5.1 Begriffsbestimmung 5.2 Organisationsaufgaben eines Echtzeit-Betriebssystems 5.3 Entwicklung eines Mini-Echtzeit-Betriebssystems 5.4 Software-Systementwurf des Mini-Echtzeit-Betriebssystems Software-Systementwurf (stark vereinfachtes Modell) Erste Erweiterung: Zulassen längerer Rechenzeiten Zweite Erweiterung: Interrupts Dritte Erweiterung: Betriebsmittelverwaltung Übergang zum realen Echtzeit-Betriebssystem 5.5 Beispiel für Echtzeit-Betriebssysteme 2003, IAS Universität Stuttgart 368

20 5.4.1 Software-Systementwurf Software-Systementwurf unter Zugrundelegung der stark vereinfachten Aufgabenstellung Prinzip der schrittweisen Verfeinerung Zerlegung des Mini-Betriebssystemprogramms in Programmteile, die dann wiederum verfeinert werden 2003, IAS Universität Stuttgart Software-Systementwurf Zerlegung des Mini-Echtzeit-Betriebssystemprogramms Teilprogramm ZEIT zur Bildung der unterschiedlichen Zykluszeiten Teilprogramm TASK zur Verwaltung der Rechenprozesse Teilprogramm PROZESSOR Zuteilung des Betriebsmittels Prozessor Start der Rechenprozesse MINI-ECHTZEIT- BETRIEBSSYSTEM Ebene 1 ZEIT- TASK- PROZESSOR- Ebene , IAS Universität Stuttgart 370

21 5.4.1 Software-Systementwurf Zusammenwirken der Teilprogramme MINI-ECHTZEIT-BETRIEBSSYSTEM UHR- IMPULS- TAKT ZEIT- TASK- PROZESSOR- Start eines Rechenprozesses Ende eines Rechenprozesses Symbolik Anstoß (Kontrollfluss) Datenübergabe (Datenfluss) Programm bzw. Programmteil Liste von Daten bzw. einzelner Wert (Date) 2003, IAS Universität Stuttgart Software-Systementwurf Benötigte Listen für die ZEIT (1) Zeitdauervariable Z i zur Zykluszeit-Bildung Liste ZEITZÄHLER Ablage der Zeitdauervariablen z i : z 1 z 2 m Plätze z 3 Liste von Variablen z m 2003, IAS Universität Stuttgart 372

22 5.4.1 Software-Systementwurf Benötigte Listen für die ZEIT (2) Zykluszeit T i für jeden Rechenprozess Liste ZYKLUS Bereitstellen der Zykluszeit-Faktoren a i : a 1 a 2 m Plätze a 3 = T i /T Liste von Konstanten a m 2003, IAS Universität Stuttgart Software-Systementwurf Blockdiagramm des Teilprogramms ZEIT UHRIMPULS- TAKT ZEIT Anstoß TASK ZYKLUS ZEIT- ZÄHLER 2003, IAS Universität Stuttgart 374

23 5.4.1 Software-Systementwurf Liste für TASK und PROZESSOR Zustände und Anfangsadressen der Rechenprozesse SBLOCK Listenstruktur zur Verwaltung der Rechenprozesse SBLOCK B 1 Startadresse 1 B 2 Startadresse 2 m Plätze B 3 B 4 Startadresse 3 Startadresse 4 2dimensionales Feld B m Startadresse m Zustandsbits B i B i = 0: bereit B i = 1: ruhend Anfangsadresse des dem Rechenprozess i zugeordneten Codes (i = 1, 2,..., m) 2003, IAS Universität Stuttgart Software-Systementwurf Zerlegung des Programmteils TASK TASK- Ebene 2 AKTIVIERUNG SUCHE DEAKTIVIE- RUNG Ebene , IAS Universität Stuttgart 376

24 5.4.1 Software-Systementwurf Blockdiagramm der TASK von/zur ZEITVER- WALTUNG AKTIVIERUNG SUCHE zur PROZESSOR- S- BLOCK Auslesen der Startadresse durch die PROZESSOR- DEAKTIVIERUNG Ende des betreffenden Rechenprozesses von der PROZESSOR- 2003, IAS Universität Stuttgart Software-Systementwurf AKTIVIERUNG: DEAKTIVIERUNG: SUCHE: Verändern des Zustandsbits in bereit Verändern des Zustandsbits in ruhend Überprüfung, ob sich eine Task im Zustand bereit befindet Ordnung der Liste SBLOCK ermöglicht einfache Priorisierung Untergliederung PROZESSOR ist nicht notwendig 2003, IAS Universität Stuttgart 378

25 5.4.1 Software-Systementwurf Übersichtsblockdiagramm des Mini-Echtzeit-Betriebssystems UHR- IMPULS- TAKT ZYKLUS ZEIT ZEIT- ZÄHLER AKTIVIERUNG S- BLOCK DEAKTIVIE- RUNG SUCHE PROZESSOR Rechenprozesscode ZEIT TASK 2003, IAS Universität Stuttgart Software-Systementwurf Feinentwicklung in Form von Flussdiagrammen ZEIT UHR- IMPULS- TAKT ZEIT l = 1 ZEITZÄHLER(I) = ZEITZÄHLER(I) -1 ZEIT- ZÄHLER(I) = 0? nein I = M? nein l = I + 1 ja ja Suchen ZEITZÄHLER(I) = ZYKLUS(I) AKTIVIERUNG 2003, IAS Universität Stuttgart 380

26 5.4.1 Software-Systementwurf Flussdiagramm der PROZESSOR PROZESSORVER- WALTUNG (I) Rechenprozess über Startadresse in S- BLOCK (I) starten, d.h. als Unterprogramm aufrufen DEAKTIVIERUNG (I) 2003, IAS Universität Stuttgart Software-Systementwurf Flussdiagramme der Programme TASK AKTIVIERUNG AKTIVIERUNG(I) Adressteil von VERWAL- TUNGSBLOCK (I) = 0? nein ZUSTANDSBIT(I) IN S BLOCK(I) = 0 setzen ja FEHLER- MELDUNG Abfrage, ob Rechenprozess überhaupt vorhanden = bereit Rücksprung 2003, IAS Universität Stuttgart 382

27 5.4.1 Software-Systementwurf SUCHE DEAKTIVIERUNG SUCHE I = 1 DEAKTIVIERUNG(I) ZUSTANDS- BIT(I) von VERWAL- TUNGSBLOCK(I) = 0? nein I = M? nein I = I + 1 ja ja PROZESSORVER- WALTUNG(I) ZUSTANDSBIT(I) in S- BLOCK(I) = 1 setzen SUCHE = ruhend 2003, IAS Universität Stuttgart Erste Erweiterung: Zulassen längerer Rechenzeiten Erste Erweiterung des Systementwurfs Zulassen längerer Rechenzeiten für die Rechenprozesse Beim Eintreffen eines Uhrimpuls-Taktes muss u.u. ein noch laufender Rechenprozess mit längerer Ausführungsdauer und niedrigerer Priorität unterbrochen werden, um einen Rechenprozess höherer Priorität zu starten Programm zur Unterbrechungsverwaltung 2003, IAS Universität Stuttgart 384

28 5.4.2 Erste Erweiterung: Zulassen längerer Rechenzeiten Teilprogramm UNTERBRECHUNGS Aufgabe des Verwaltungsprogramms Rettung der Register des Prozessors eines gerade laufenden Rechenprozesses Programmzähler Akkumulator Zustandsregister Arbeitsregister 2003, IAS Universität Stuttgart Erste Erweiterung: Zulassen längerer Rechenzeiten Erweitertes Hierarchiediagramm nach dem Zulassen längerer Rechenzeiten der Rechenprozesse MINI-ECHTZEIT-BETRIEBSSYSTEM (Erweiterung 1) UNTER- BRECHUNGS- ZEIT- TASK- PROZESSOR- 2003, IAS Universität Stuttgart 386

29 5.4.2 Erste Erweiterung: Zulassen längerer Rechenzeiten Erweiterung der Liste SBLOCK Rechenprozess 1 B 1 Anfangsadresse 1 Startadresse (Programmzählerinhalt) Registerinhalt 1 Registerinhalt 2 Startadresse nach einer Unterbrechung Register- Speicherplätze Rechenprozess 2 B 2 Registerinhalt k Anfangsadresse 2 Startadresse (Programmzählerinhalt) Registerinhalt 1 Registerinhalt 2 Registerinhalt k Rechenprozess m B m Anfangsadresse m Startadresse (Programmzählerinhalt) Registerinhalt 1 Registerinhalt 2 Registerinhalt k 2003, IAS Universität Stuttgart Erste Erweiterung: Zulassen längerer Rechenzeiten Erweiterung des Teilprogramms PROZESSOR vor dem Start eines ablaufbereiten Rechenprozesses laden der Register mit den Inhalten der Liste SBLOCK Erweiterung des Teilprogramms DEAKTIVIERUNG nach Beendigung eines Rechenprozesses laden seiner Anfangsadresse in die Zelle STARTADRESSE und Initialisieren der Registerinhalte im SBLOCK 2003, IAS Universität Stuttgart 388

30 5.4.2 Erste Erweiterung: Zulassen längerer Rechenzeiten Übersichtsdiagramm des Mini-Echtzeit-Betriebssystems Erste Erweiterung: Zulassen längerer Rechenzeiten für die Rechenprozesse ZEIT AKTI- VIERUNG SUCHE UHRIMPULS- INTERRUPT VERWAL- TUNGS- BLOCK Rechenprozesscode ZYKLUS ZEIT- ZÄHLER DEAKTI- VIERUNG UNTER- BRECHUNGS- ZEIT- TASK- PROZESSOR- 2003, IAS Universität Stuttgart Zweite Erweiterung: Interrupts Zweite Erweiterung des Software-Systementwurfs Vorsehen der Möglichkeit von Alarm-Interrupts bis zu k Rechenprozesse, deren Aktivierung von zeitlich nicht vorhersehbaren Alarm-Interrupts ausgelöst wird Erweiterung der UNTERBRECHUNGS Registerrettung bei Uhrimpuls-Interrupts Anstoß der ZEIT bei Alarm-Interrupts Aufruf der AKTIVIERUNG, um dem Alarm-Interrupt zugeordnetes Antwortprogramm in den Zustand bereit zu setzen Anstoß der SUCHE 2003, IAS Universität Stuttgart 390

31 5.4.3 Zweite Erweiterung: Interrupts Übersichtsdiagramm für das Mini-Betriebssystem Zweite Erweiterung: Vorsehen der Möglichkeit von Alarm-Interrupts UHRIMPULS- INTERRUPT ZEIT AKTI- VIERUNG SUCHE externe Interrupts INTERRUPT1 INTERRUPT2 INTERRUPT K ZYKLUS ZEIT- ZÄHLER VERWAL- TUNGS- BLOCK DEAKTI- VIERUNG Rechenprozesscode UNTER- BRECHUNGS- ZEIT- TASK- PROZESSOR- 2003, IAS Universität Stuttgart Dritte Erweiterung: Betriebsmittelverwaltung Dritte Erweiterung des Software-Systementwurfs Betriebsmittelverwaltung für Ein-/Ausgabegeräte E/A-Operationen sind langsamer Analog-Digital-Umsetzer ca. 20 ms Einführung eines Verwaltungsprogramms E/A- Aufgabe: Organisation von langsamen Ein-/Ausgabeoperationen Rechenprozess wird angehalten Prozessor kann andere Rechenprozesse bearbeiten Beendigung der E/A-Operationen ermöglicht Fortsetzung des zugehörigen Rechenprozesses 2003, IAS Universität Stuttgart 392

32 5.4.4 Dritte Erweiterung: Betriebsmittelverwaltung Hierarchiediagramm des Mini-Betriebssystems MINI-ECHTZEIT- BETRIEBSSYSTEM (Erweiterung 3) E/A- UNTER- BRECHUNGS- ZEIT- TASK- PROZESSOR- 2003, IAS Universität Stuttgart Übergang zum realen Echtzeit-Betriebssystem Aufhebung der Vereinfachungen Die Betriebssystemprogramme selbst sind nicht unterbrechbar Die Mehrfachbeauftragung eines Rechenprozesses, d.h. erneute Beauftragung vor der Beendigung, ist ausgeschlossen Eine gegenseitige Beauftragung von Rechenprozessen ist nicht möglich Eine Synchronisierung der Rechenprozesse, z.b. mittels Semaphoroperationen, ist nicht möglich Keine Datenkommunikation zwischen den Rechenprozessen, d.h. kein Austausch von Daten, keine gemeinsame Benutzung von Daten Keine dynamische Änderung der Prioritäten der Rechenprozesse während der Programmdurchführung Rechenprozesse befinden sich im Arbeitsspeicher, Hintergrundspeicher sind nicht vorhanden 2003, IAS Universität Stuttgart 394

33 5 Echtzeit-Betriebssysteme 5.1 Begriffsbestimmung 5.2 Organisationsaufgaben eines Echtzeit-Betriebssystems 5.3 Entwicklung eines Mini-Echtzeit-Betriebssystems 5.4 Software-Systementwurf des Mini-Echtzeit-Betriebssystems 5.5 Beispiel für Echtzeit-Betriebssysteme 2003, IAS Universität Stuttgart Beispiel für Echtzeit-Betriebssysteme Marktübersicht Kriterien bei der Auswahl von Echtzeit-Betriebssystemen Entwicklungs- und Zielumgebung Modularität und Kernelgröße Leistungsdaten Anzahl von Tasks Prioritätsstufen Taskwechselzeiten Interruptlatenzzeit Anpassung an spezielle Zielumgebungen Allgemeine Eigenschaften Schedulingverfahren Intertaskkommunikation Netzwerkkommunikation Gestaltung Benutzungsoberfläche 2003, IAS Universität Stuttgart 396

34 5.5 Beispiel für Echtzeit-Betriebssysteme Auswahl kommerzieller Echtzeit-Betriebssysteme Produkt ERCOS Lynx-OS OS/9 OSE Delta psos PXROS QNX VRTX32 VxWorks Windows CE Hersteller ETAS GmbH Lynx Microware Real-Time System inc. Kategorie Embedded EZBS, EZK, Embedded Sprache Zielsystem Hostsystem Dateisystem 8016x, PowerPC UNIX, Win95, NT ANSI-C, OLT Specificati on Language kein 680x0, 80x86, PowerPC, 88000, i860, MIPS, SPARC, RS6000 UNIX ANSI-C, C++, Pascal, Ada, Modula, Fortran UNIX, FAT, NFS, Real-Time Filesystem 680x0, 80x86, PowerPC, CPU32 UNIX, Windows ANSI-C, C++ FAT ENEA DATA AB EZK, Embedded 680x0, PowerPC, CPU32, AMD29k UNIX, Windows, NT ARS Integrated Systems EZBS, EZK, Embedded 680x0, 80x86, 8016x, PowerPC, CPU32, i960, Hitachi SH, MIPS UNIX, SUN, Windows, NT, OS/2 C, C++ ASM, ANSI-C, C++, Pascal, Ada UNIX, FAT UNIX, FAT, NFS, Real-Time Filesystem HighTec EDV- Systeme EZK, Embedded 80x86, 8016x, PowerPC UNIX, SUN, Windows, NT, OS/2 ANSI-C, C++ UNIX, FAT QNX Software Systems LTD EZBS, EZK, Embedded i386,i486, Pentium, 80286(16 bit) QNX Watcom C, C++, Inline ASM UNIX, FAT, ISO9660 Microtec Research EZBS, EZK, Embedded 680x0, 80x86, SPARC, CPU32, AMD29k, i960 UNIX, SUN, Windows ASM, ANSI-C, C++ UNIX, FAT WindRiver EZBS, EZK, Embedded 680x0, 80x86, PowerPC, CPU32, i960, MIPS, SPARC, AMD29k, Hitachi SH UNIX, Win95, NT ANSI-C, C++, Java, Ada UNIX, FAT Microsoft EZBS Embedded Pentium 80x86, i486 PowerPC MIPS Hitachi S4, ARM Windows CE Win 95 NT Visual C++ Visual Basic Visual J++ FAT 2003, IAS Universität Stuttgart Beispiel für Echtzeit-Betriebssysteme Produkt ERCOS Lynx-OS OS/9 OSE Delta psos PXROS QNX VRTX32 VxWorks Windows CE Netzwerk TCP/IP, NFS TCP/IP, OS/9-net, NeWLink Feldbus CAN CAN, PROFI- BUS, Interbus-S Sonstiges ROMfähig Scheduling preemptiv, prioritätsgesteuert Taskwechselzeit preemptiv, kooperativ, prioritätsgesteuert < 54 µs 8016x (20 MHz) ROMfähig ROMfähig, Multiprozessor, self-hosted preemptiv, prioritätsgesteuert, Round- Robin preemptiv, kooperativ, prioritätsgesteuert, Round- Robin TCP/IP, PPP, SNMP TCP/IP, Netware, OSI 1-7, SNMP CMIP, X.25 CAN ROMfähig, Multiprozessor ROMfähig, Multiprozessor ROMfähig, Multiprozessor, fehlertoler ant preemptiv, preemptiv, prioritätsgesteuert, Round- Robin TCP/IP, NFS CAN, PROFI- BUS preemptiv, prioritätsgesteuert TCP/IP, NFS, SNMP, Streams ROMfähig, Multiprozessor ROMfähig, Multiprozessor, POSIX 1003 kompatibel preemptiv, prioritätsgesteuert, Round- Robin 4,7µs Pentium 166, 11,1us 486DX4 (100MHz), 74,2us 386 (33MHz) TCP/IP, Netware CAN, PROFI- BUS, LON TCP/IP, NFS, SNMP, Streams TCP/IP, PPP bzw. SLIP 2003, IAS Universität Stuttgart 398 preemptiv, prioritätsgesteuert, Round- Robin ROMfähig ROMfähig, Multiprozessor, POSIX 1003 kompatibel preemptiv, prioritätsgesteuert, Round- Robin 17 µs 100 µs

35 Kapitel 5: Echtzeit-Betriebssysteme Frage zu Kapitel 5.2 Betrachten sie zwei unterschiedliche Automatisierungssysteme: ein ereignisgesteuertes System (z.b. Steuerung eines Kaffeeautomaten) ein zeitgesteuertes System (z.b. Bahnregelung eines Roboters) Für welchen Typ von System ist die Interrupt-Verwaltung eines Betriebssystems besonders wichtig? Antwort Bei ereignisgesteuerten Systemen werden die meisten Prozesse durch Interrupts angestoßen. Bei zeitgesteuerten Systemen werden dagegen keine Interrupts ausgelöst, sondern die Ereignisse im Rahmen des nächsten Durchlaufs bearbeitet. 2003, IAS Universität Stuttgart 399 Kapitel 5: Echtzeit-Betriebssysteme Frage zu Kapitel 5.4 In Echtzeit-Betriebssystemen spielen Prozessor-Zuteilungsstrategien (Scheduling-Verfahren) eine wichtige Rolle. a) Welche Aufgaben haben diese Strategien? b) In welchem Programmteil des in der Vorlesung vorgestellten Mini- Betriebssystems kommt eine Prozessorzuteilungsstrategie zum Einsatz und um welche handelt es sich? Antwort a) Diese Strategien dienen zur Bestimmung der Reihenfolge, in der die ablaufbereiten Tasks zur Ausführung gebracht werden. b) Im Programm SUCHE; es wird die Strategie der festen Prioritäten verwendet. Dabei können die Tasks unterbrochen werden (preemptives Scheduling) 2003, IAS Universität Stuttgart 400

6 Echtzeit-Betriebssysteme

6 Echtzeit-Betriebssysteme Kapitel 6: Echtzeit-Betriebssysteme 6 Echtzeit-Betriebssysteme Lernziele: Wissen, was ein Betriebssystem ist Erklären können, was man unter Betriebsmitteln versteht Die Aufgaben eines Echtzeit-Betriebssystems

Mehr

Prozessautomatisierungstechnik

Prozessautomatisierungstechnik Mohieddine Jelali Prozessautomatisierungstechnik 4. Echtzeitsysteme und Echtzeitprogrammierung WS 2013/14 Vorlesung: Prozessautomatisierung, Prof. Dr.-Ing. Mohieddine Jelali 1 Inhaltsangaben zu Kapitel

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

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

Universität Koblenz-Landau. Fachbereich 4: Informatik. Prof. Dr. Dieter Zöbel. Seminararbeit OSEK/VDX. Seminar Echtzeitsysteme.

Universität Koblenz-Landau. Fachbereich 4: Informatik. Prof. Dr. Dieter Zöbel. Seminararbeit OSEK/VDX. Seminar Echtzeitsysteme. Universität Koblenz-Landau Fachbereich 4: Informatik Prof. Dr. Dieter Zöbel Seminararbeit Seminar Echtzeitsysteme Thema 4 Wintersemester 1999/2000 Von Thorsten Schaub (thorsten@schaub-home.de) 17.12.1999

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

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

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

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

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

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

Grundlagen der Informatik. Teil VI Betriebssysteme

Grundlagen der Informatik. Teil VI Betriebssysteme Grundlagen der Informatik Teil VI Betriebssysteme Seite 1 Definition nach DIN: Unter Betriebssystem versteht man alle Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften der Rechenanlage

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

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

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

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

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

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

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

4 Echtzeit-Programmierung

4 Echtzeit-Programmierung 4 Echtzeit-Programmierung 4.1 Problemstellung 4.2 Echtzeit-Programmierverfahren 4.3 Rechenprozesse 4.4 Zeitliche Koordinierung von Rechenprozessen 4.5 Kommunikation zwischen Rechenprozessen 4.6 Scheduling-Verfahren

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

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

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

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

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

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

Python Programmierung. Dipl.-Ing.(FH) Volker Schepper

Python Programmierung. Dipl.-Ing.(FH) Volker Schepper Python Programmierung Kontaktdaten Homepage: http://wwwlehre.dhbw-stuttgart.de/~schepper/ Email: Volker. Schepper [A@T] yahoo.de Vorlesung Skriptsprachen Vorlesung: 06.03.2013 13.03.2013 20.03.2013 27.03.2013

Mehr

Entwicklung eines Mac OS X Treibers für eine PCI-VME Interface Karte

Entwicklung eines Mac OS X Treibers für eine PCI-VME Interface Karte Entwicklung eines Mac OS X Treibers für eine PCI-VME Interface Karte Matthias Lange Informatikstudent, TU-Dresden 27. September 2005 http://www.matze-lange.de Warum entwickelt jemand einen Treiber für

Mehr

B1 Stapelspeicher (stack)

B1 Stapelspeicher (stack) B1 Stapelspeicher (stack) Arbeitsweise des LIFO-Stapelspeichers Im Kapitel "Unterprogramme" wurde schon erwähnt, dass Unterprogramme einen so genannten Stapelspeicher (Kellerspeicher, Stapel, stack) benötigen

Mehr

Schichtenmodell eines Betriebssystems

Schichtenmodell eines Betriebssystems FB Technologie und Management SISD Operanden VonNeumannRechner Rechenwerk Ergebnisse Datenverarbeitung (DV 1) (Kapitel 6 Betriebssysteme) Steuerwerk Speicherwerk Befehle Eingabe Speicher Ausgabe 1 2 Layer

Mehr

Seminarthema: Realzeitbetriebssysteme. Projektgruppe: Airbag

Seminarthema: Realzeitbetriebssysteme. Projektgruppe: Airbag Seminarthema: Realzeitbetriebssysteme Projektgruppe: Airbag Gliederung: Was bedeutet Realzeit? / Was ist ein Betriebssystem? Wie ist ein Realzeitbetriebssystem charakterisiert? Wie ist ein Betriebssystem

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

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

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

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

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

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

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

Ü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

Technische Informatik II

Technische Informatik II Institut für Technische Informatik und Kommunikationsnetze Technische Informatik II Übung 3: Input / Output Hinweis: Weitere Aufgaben zu diesem Thema finden sie in den Begleitbüchern zur Vorlesung. Aufgabe

Mehr

IT-Sicherheit. Informationssicherheit: IT-Sicherheit bzw. IT-Risikomanagement

IT-Sicherheit. Informationssicherheit: IT-Sicherheit bzw. IT-Risikomanagement IT-Sicherheit Informationssicherheit: Schutz aller Informationen im Unternehmen elektronisch gespeicherte Daten Informationen in nichtelektronischer Form z.b. auf Papier Expertenwissen, in den Köpfen der

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

Betriebssysteme. Einführung. Ziele und Ablauf der Vorlesung:

Betriebssysteme. Einführung. Ziele und Ablauf der Vorlesung: Einführung 1 Ziele Ziele und Ablauf der Vorlesung: Ziele: Vermittlung von Grundwissen für den Umgang mit gängigen Rechnern und n zur leichteren Einarbeitung in neue über Basistechniken im Internet In der

Mehr

Embedded Software Engeneering mit dem Raspberry Pi

Embedded Software Engeneering mit dem Raspberry Pi Embedded Software Engeneering mit dem Raspberry Pi Übersicht Rasperry Pi Betriebssystem Hardware ARM Μ-Controller vs. Μ-Prozessor vs. SoC Embedded Software Engineering vs. Software Engineering Fazit Raspberry

Mehr

1.7 Assembler Programmierung

1.7 Assembler Programmierung 1.7 Assembler Programmierung Die nach außen sichtbare Programmierschnittstelle eines Prozessors ist der Befehlscode. Dies ist eine binäre Dateninformation, die vom Prozessor Byte für Byte abgearbeitet

Mehr

Interruptserviceroutinen (ISRs)

Interruptserviceroutinen (ISRs) INTERRUPTSERVICEROUTINEN 1 Interruptserviceroutinen (ISRs) Ein Überblick Interruptserviceroutinen (ISRs) sind Programme, die Unterbrechungsanforderungen bedienen. Eine Unterbrechung (Interrupt) kann als

Mehr

Technische Informa/k II

Technische Informa/k II Technische Informa/k II Prof. Dr. Bernd Freisleben Sommersemester 2013 Vorlesung zur Klausurvorbereitung Folie 00-2 Organisatorisches Klausur: Dienstag, 16.07.13, 12:00-14:00 Uhr im Hörsaal 00/0070 Zugelassene

Mehr

6.Vorlesung Betriebssysteme Hochschule Mannheim

6.Vorlesung Betriebssysteme Hochschule Mannheim Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 1/40 6.Vorlesung Betriebssysteme Hochschule Mannheim Christian Baun Karlsruher Institut für Technologie Steinbuch Centre for Computing

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

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick Vorlesung Objektorientierte Softwareentwicklung Sommersemester este 2008 Kapitel 0. Java-Überblick Was sind die Ziele? Warum Java? Komplexe Anwendungen e-business verteilt zuverlässig sicher mobil persistent

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

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

Echtzeitbetriebssysteme (am Beispiel QNX) Dr. Stefan Enderle HS Esslingen

Echtzeitbetriebssysteme (am Beispiel QNX) Dr. Stefan Enderle HS Esslingen Echtzeitbetriebssysteme (am Beispiel QNX) Dr. Stefan Enderle HS Esslingen 1. Einführung 1.1 Embedded Systeme Embedded Systeme besitzen / benutzen einen Mikrocontroller Embedded Systeme erfüllen meist eine

Mehr

Echtzeitbetriebssysteme/ Prozessdatenverarbeitung II

Echtzeitbetriebssysteme/ Prozessdatenverarbeitung II Fachhochschule Kaiserslautern Prof. Dr. P. Liell Echtzeitbetriebssysteme/ Prozessdatenverarbeitung II SS 2012 1. Versuch Allgemeines zum Ablauf und zur Versuchsausarbeitung Es ist eine Ausarbeitung zum

Mehr

Themenfelder. programmierung programme aufrufe funktionen. UNIX-ähnlicher

Themenfelder. programmierung programme aufrufe funktionen. UNIX-ähnlicher Themenfelder SoS i System programmierung programme aufrufe funktionen in C UNIX-ähnlicher Betriebssysteme SoS ii Datenbanksysteme SoS iii Softwaretechnik 2 Einleitung SoS i, c 2004 wosch [Einleitung.tex,v

Mehr

William Stallings. Betriebssysteme. Prinzipien und Umsetzung. 4., überarbeitete Auflage. Pearson Studium

William Stallings. Betriebssysteme. Prinzipien und Umsetzung. 4., überarbeitete Auflage. Pearson Studium William Stallings Betriebssysteme Prinzipien und Umsetzung 4., überarbeitete Auflage Pearson Studium ein Imprint der Pearson Education Deutschland GmbH Inhaltsverzeichnis Vorwort Leitfaden für den Leser

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

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

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

5.6 Realzeitarchitektur auf Multicore-Basis

5.6 Realzeitarchitektur auf Multicore-Basis 5.6 Realzeitarchitektur auf Multicore-Basis 63 VxWorks Vertreter eines klassischen Realzeitbetriebssystems mit einer starken Marktdurchdringung ist VxWorks der Firma Wind River. Ursprünglich als Realzeitbetriebssystem

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

L3. Datenmanipulation

L3. Datenmanipulation L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus

Mehr

OPC UA und die SPS als OPC-Server

OPC UA und die SPS als OPC-Server OPC UA und die SPS als OPC-Server Public 01.10.2010 We software We software Automation. Automation. Agenda Firmenportrait Kurz-Einführung zu OPC Kurz-Einführung zu OPC UA (Unified Architecture) OPC UA

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

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

Echtzeitbetriebssysteme

Echtzeitbetriebssysteme Echtzeitbetriebssysteme QNX 409 Geschichte: Einführung 1980 entwickeln Gordon Bell und Dan Dodge ein eigenes Echtzeitbetriebssystem mit Mikrokernel. QNX orientiert sich nicht an Desktopsystemen und breitet

Mehr

Windows Vista Windows Phone 7

Windows Vista Windows Phone 7 Windows Vista Windows Phone 7 Softwarearchitekturen Referent: Frank Urrigshardt Übersicht Windows Vista Historische Entwicklung Programmierung NT Programmierschnittstelle Win32 Programmierschnittstelle

Mehr

Proseminar Technische Informatik A survey of virtualization technologies

Proseminar Technische Informatik A survey of virtualization technologies Proseminar Technische Informatik A survey of virtualization technologies Referent: Martin Weigelt Proseminar Technische Informatik - A survey of virtualization technologies 1 Übersicht 1. Definition 2.

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

Lektion 3: Was ist und was kann ein Computer?

Lektion 3: Was ist und was kann ein Computer? Lektion 3: Was ist und was kann ein Computer? Helmar Burkhart Informatik burkhart@ifi.unibas.ch EINFÜHRUNG IN DIE INFORMATIK I 3-0 Übersicht Lektion 3 Hardware Software Aufbau eines Computers Rechnerkern

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

Einführung in die Informationstechnik. II Einführung in Betriebssysteme

Einführung in die Informationstechnik. II Einführung in Betriebssysteme Einführung in die Informationstechnik II Einführung in Betriebssysteme 2 Übersicht Themen Betriebssysteme allgemein Microsoft Windows Unix am Beispiel Linux Bedienoberfläche von Linux Unix am Beispiel

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

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 Verarbeitungsgrundlagen Teil 3 Betriebssystem Überwacher

Mehr

Übersicht der 10 relevanten Realtime Betriebssysteme. Urs Böhm/31.August 2010

Übersicht der 10 relevanten Realtime Betriebssysteme. Urs Böhm/31.August 2010 Übersicht der 10 relevanten Realtime Betriebssysteme Urs Böhm/31.August 2010 Übersicht Wann ist ein Betriebssystem Echtzeitfähig -und wann nicht? Warum gibt es so viele RTOS? Verschiedene Einsatzgebiete

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

Embedded Linux. Embedded Linux. Daniel Buchheim daniel.buchheim@informatik.tu-cottbus.de. Seminar "Eingebettete drahtlose Systeme"

Embedded Linux. Embedded Linux. Daniel Buchheim daniel.buchheim@informatik.tu-cottbus.de. Seminar Eingebettete drahtlose Systeme Daniel Buchheim daniel.buchheim@informatik.tu-cottbus.de Embedded Linux 30.01.2009 Daniel Buchheim Inhalt: Was ist Embedded Linux? Hardwareunterstützung in Eingebetteten Systemen Open Source Aspekte Aufbau

Mehr

Programmlisting STEP7/Micro:

Programmlisting STEP7/Micro: Softwaremodul zur Datenübernahme der Strahldaten vom SCAN- Lichtgitter in eine SPS vom Typ Simatic S7/200 Das als Interrupt-Modul realisierte Treiberprogramm übernimmt die Meßdaten als seriellen Datenstrom

Mehr

(Prüfungs-)Aufgaben zum Thema Scheduling

(Prüfungs-)Aufgaben zum Thema Scheduling (Prüfungs-)Aufgaben zum Thema Scheduling 1) Geben Sie die beiden wichtigsten Kriterien bei der Wahl der Größe des Quantums beim Round-Robin-Scheduling an. 2) In welchen Situationen und von welchen (Betriebssystem-)Routinen

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

Hardware Virtualisierungs Support für PikeOS

Hardware Virtualisierungs Support für PikeOS Virtualisierungs Support für PikeOS Design eines Virtual Machine Monitors auf Basis eines Mikrokernels Tobias Stumpf SYSGO AG, Am Pfaenstein 14, 55270 Klein-Winternheim HS Furtwangen, Fakultät Computer

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

Embedded PCs / Embedded Systems. Stromversorgung / Power-Management. Embedded PC

Embedded PCs / Embedded Systems. Stromversorgung / Power-Management. Embedded PC Embedded PCs / Embedded Systems Stromversorgung / Power-Management Sensoren elektrisch optisch thermisch mechanisch magnetisch chemisch biologisch Aktoren Analog-/Digitalhardware Powerfail Speicher Watchdog

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

Implementierung Echtzeitbetriebssysteme Architektur eines RTOS am Beispiel Windows CE 23.03.2010 Autor: Rudi Swiontek und Ralf Ebert*

Implementierung Echtzeitbetriebssysteme Architektur eines RTOS am Beispiel Windows CE 23.03.2010 Autor: Rudi Swiontek und Ralf Ebert* Implementierung Echtzeitbetriebssysteme Architektur eines RTOS am Beispiel Windows CE 23.03.2010 Autor: Rudi Swiontek und Ralf Ebert* Echtzeitbetriebssysteme, kurz RTOS, besitzen neben harter Echtzeitfähigkeit

Mehr

Staatlich geprüfter EDV-Führerschein

Staatlich geprüfter EDV-Führerschein Staatlich geprüfter 1. Seit wie viel Jahren gibt es den Personal Computer? seit ~ 50 Jahren seit ~ 30 Jahren seit ~ 20 Jahren seit ~ 5 Jahren Computer gibt es schon immer. 2. Ein Computer wird auch als

Mehr

White Paper. Embedded Treiberframework. Einführung

White Paper. Embedded Treiberframework. Einführung Embedded Treiberframework Einführung White Paper Dieses White Paper beschreibt die Architektur einer Laufzeitumgebung für Gerätetreiber im embedded Umfeld. Dieses Treiberframework ist dabei auf jede embedded

Mehr

Programmiersprachen und Programmierkonzepte

Programmiersprachen und Programmierkonzepte Programmiersprachen und Programmierkonzepte Inhalt Programmiersprachen- Entwicklung Programmiersprachen und Programmierparadigmen Die Geschichte der Programmiersprachen Anfänge vor 200 Jahren Programmierbare

Mehr

VxWorks - Aufbau und Programmierung

VxWorks - Aufbau und Programmierung VxWorks - Aufbau und Programmierung Dominik Meyer AG Echtzeitsysteme / Eingebettete Systeme Institut für Informatik Christian-Albrechts-Universität zu Kiel Zusammenfassung

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

Übung -- d002_ampelsteuerung

Übung -- d002_ampelsteuerung Übung -- d002_ampelsteuerung Übersicht: Der Steuerungsablauf für die Ampelanlage an einem Fußgängerübergang soll mit einer speicherprogrammierbaren Steuerung für Tag- und Nachtbetrieb realisiert werden.

Mehr

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

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

Mehr

SPS. IndraLogic V PC-basiert

SPS. IndraLogic V PC-basiert IndraLogic V PC-basiert 2 Bosch Rexroth AG Electric Drives and Controls Dokumentation Leistungsstark durch umfangreiche Funktionen und Schnittstellen Skalierbar durch die innovative Steuerungsplattform

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

PARC. Eine virtuelle Echtzeit Entwicklungsumgebung für den Ausbildungsbereich

PARC. Eine virtuelle Echtzeit Entwicklungsumgebung für den Ausbildungsbereich PARC Eine virtuelle Echtzeit Entwicklungsumgebung für den Ausbildungsbereich Andre Köthur und Dr. Norbert Drescher Fachhochschule Südwestfalen 5095 Hagen Haldener Str. 12 Einleitung und Zielsetzung Die

Mehr

Mikrocontroller Grundlagen. Markus Koch April 2011

Mikrocontroller Grundlagen. Markus Koch April 2011 Mikrocontroller Grundlagen Markus Koch April 2011 Übersicht Was ist ein Mikrocontroller Aufbau (CPU/RAM/ROM/Takt/Peripherie) Unterschied zum Mikroprozessor Unterschiede der Controllerarten Unterschiede

Mehr

Linux in der Automatisierung

Linux in der Automatisierung Fakultät Informatik, Institut für Angewandte Informatik, Professur Technische Informationssysteme Lukas Vierhaus Dresden, 20.11.08 Gliederung Bereiche der Automatisierung Vorteile PC-basierter Steuerung

Mehr

Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München

Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (1) Was ist ein Rechner? Maschine, die Probleme für

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