1.5 Betriebssysteme für RT- Anwendungen: Echtzeitbetriebssysteme

Ähnliche Dokumente
Aufbau eines Echtzeit-Betriebssystems für Embedded Systems

Aufbau eines modernen Betriebssystems (Windows NT 5.0)

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

Performance Messungen von FreeRTOS und

RTEMS- Echtzeitbetriebssystem

Strukturierung von Multimediasystemen für Fahrzeuge

LabVIEW Real Time Hands on

D Einführung Betriebssysteme

D Einführung Betriebssysteme

Embedded- und RT-Betriebssysteme

Echtzeitbetriebsysteme

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

Der Scheduler von Windows 2000 Konzepte und Strategien

Konzepte zur Steigerung der Preemptivität des Linux Kernels 2.6

Evaluierung der QoS-Unterstützung in TAO/ACE. Großer Beleg - Zwischenstand. Ansgar Konermann 16. Juli 2002

Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen)

Übung I Echtzeitbetriebssysteme

Entwurf und Implementierung einer Prozessinterkommunikation für Multi-Core CPUs Workshop Echtzeit 2013

Grundlagen der Anwendung und Programmierung des ESP8266. Dennis Hoffmann Mittwoch, :30 Uhr Schulungsraum SW23/147

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

Hardware und Gerätetreiber

Technische Universität München WS 2006/2007 Fakultät für Informatik 15. Februar 2007 Prof. Dr. A. Knoll

Single- und Multitasking

Der Scheduler von Windows Konzepte und Strategien

Linux wird echtzeitfähig: RT-Extension vs. PREEMPT_RT

Rechnernutzung in der Physik. Betriebssysteme

Echtzeit-Multitasking

Betriebssysteme. Thomas Fahringer. Institut für Informatik Universität Innsbruck. VO Betriebssysteme

Echtzeit-Multitasking

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

Teil 3: Konzepte von Betriebssystemen

Prof. Dr. Uwe Brinkschulte. Lehrstuhl für Eingebettete Systeme

Inhaltsverzeichnis. Carsten Vogt. Nebenläufige Programmierung. Ein Arbeitsbuch mit UNIX/Linux und Java ISBN:

Einführung. Anwendung. logischer Adreßraum. Kontrollfluß (Thread) = CPU führt Instruktionen aus. Was charakterisiert einen Kontrollfluß?

Verteilte Echtzeit-Systeme

Mikrocomputertechnik

Fakultät für Informatik der Technischen Universität München. Kapitel 3. Nebenläufigkeit

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

Embedded- und RT-Betriebssysteme. Dipl.-Inf. J. Richling Wintersemester 2003/2004

Betriebssysteme eine Einführung. Peter Puschner Institut für Technische Informatik

Threads Einführung. Zustände von Threads

RealTime Linux. Paul Seidel Seminar Prozessteuerung und Robotik WS 08/09 Lehrstuhl BS und Middleware Prof. Polze Hasso-Plattner-Institut Potsdam

Einfu hrende Betrachtung des USB und Mo glichkeiten der Integration in das Rainbow-Betriebssystem. Georg Gottleuber 23. Juni 2010 Verteilte Systeme

Grundlagen der Automatisierungstechnik. (Automatisierungstechnik 1) 5. Echtzeit

Erstellen deterministischer. Johann Wagner

OSEK-OS. Oliver Botschkowski. PG AutoLab Seminarwochenende Oktober AutoLab

Realtime Studio Professional. ARTiSAN. Eine Visuelle Softwareentwicklungsumgebung zur Erstellung von Echtzeitanwendungen

Betriebssysteme eine Einführung. Peter Puschner Institut für Technische Informatik

Prozesszustände (1a)

Pthreads. David Klaftenegger. Seminar: Multicore Programmierung Sommersemester

CiAO (CiAO is Aspect-Oriented)

Grundlagen Rechnerarchitektur und Betriebssysteme

Betriebssysteme und Microkern

A Kompilieren des Kernels B Lineare Listen in Linux C Glossar Interessante WWW-Adressen Literaturverzeichnis...

Embedded OS für ARM Cortex Microcontroller

Verteilte Echtzeit-Systeme

Virtualisierung im Echtzeitbereich. Andreas Hollmann FH Landshut EADS Military Air Systems

Threads and Scheduling

Prozesse und Prozessmanagement des BS. 1 Unterschied Prozess, Threads. 1.1 Prozess. 1.2 Threads

Echtzeit-BS vs. Standard-BS

Technische Informatik II

LINUX und Echtzeit. Eine Übersicht prinzipieller Lösungsansätze. Your partner for industrial, embedded Linux

Embedded OS-9 auf RISC-Prozessoren von Motorola

1.3 Architektur von Betriebssystemen

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

Betriebssysteme WS Betriebssysteme. Prof. Hannelore Frank. Einführung. Prozesse und Threads. Scheduling. Synchronisation

Untersuchungen zur Zulassung von Software unterschiedlicher Sicherheitsklassen auf einem Prozessormodule unter dem neuartigen Betriebssystem PikeOS

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

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

Military Air Systems

Entwicklung einer FPGA-basierten asymmetrischen MPSoC Architektur

e) Welche Aussage zu Speicherzuteilungsverfahren ist falsch?

Aktuelle RTOS-Entwicklungen aus der Forschung

Betriebssysteme I WS 2016/17. Prof. Dr. Dirk Müller. 8 Betriebssystem-Grundlagen

Mikrocomputertechnik

Immediate Priority Ceiling

Echtzeitanforderung und Linux

Betriebssysteme Betriebssysteme und. Netzwerke. Netzwerke Theorie und Praxis

DOSEMU. Vortrag im Hauptseminar Konzepte und Techniken virtueller Maschinen und Emulatoren. Matthias Felix FAU. 13.

Linux RT-Preempt Echtzeitkenngrößen ermitteln und testen. Embedded Testing 2017 Thomas Maierhofer Consulting

Die Integration zukünftiger In-Car Multimedia Systeme unter Verwendung von Virtualisierung und Multi-Core Plattformen

OpenCL. Programmiersprachen im Multicore-Zeitalter. Tim Wiersdörfer

Verteilte Echtzeit-Systeme

Softwareentwicklung eingebetteter Systeme

Nicht-periodische Aufgaben: Extended Scope (Teil 1)

Ein- und Ausgabegeräte

VIRTUALISIERUNG IN MIKROKERN BASIERTEN SYSTEMEN

Konzepte von Betriebssystem Komponenten. Aufbau eines Modernen Betriebssystems (Windows NT 5.0)

Einführung Betriebssysteme

Kuhnke Scout. PC-basierte Steuerungen (integrierte Komplettsysteme)

Willkommen zur. VO Betriebssysteme. Peter Puschner. Peter Puschner 1

Betriebssysteme. 4y Springer. Eine kompakte Einführung mit Linux. Albrecht Achilles. Mit 31 Abbildungen

Mikrocomputertechnik

Test (Lösungen) Betriebssysteme, Rechnernetze und verteilte Systeme

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

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

Transkript:

1.5 Betriebssysteme für RT- Anwendungen: Echtzeitbetriebssysteme Warum ein Betriebssystem verwenden? Nutzung eines Betriebssystem hat großen Einfluß auf die Softwarezuverlässigkeit, Produktivität Pflege und Wartung n Temperaturmessung mittels Temperatursensor Digitalisieren der Sensordaten Anzeige der Daten auf einem portablen Display SENSOR ADC CPU DISPLAY n Steuerung der Temperatur in einem Düsentriebwerk eines Flugzeugtriebwerkes (engine jet pipe) Temperaturmessung mittels Sensor resultierendes analoges Signal wird digitalisiert Fehlersignal wird intern in der CPU berechnet Korrektursignal wird zum Treibstoffventil geführt über den DAC Die Einheit hat jedoch weitere Aufgaben zu erfüllen 1. Pilot benötigt Zugriff auf alle Systeminformationen über die Keypad/ Display- Einheit 2. Flugschreiber benötigt dieselben Informationen, die dieser über die serielle Verbindung erhält 1

KEYPAD DAC SERIAL I/O SENSOR ADC CPU DISPLAY Lösungen: einfachste Methode: "Single Task"- Methode: Programmierung in einem einzelnen Programmen Komplexität des Real-Time- Computers vom Programmierer abschirmen Detailliertes Wissen über Interrupts, Timer, ADC etc. sind nicht mehr erforderlich Beachte Funktion des Betriebssystems als Ressourcenverwalter. derzeitig kommerziell verfügbare Real-Time- Betriebssysteme verfügen noch nicht über ausreichend Funktionalität, um den Entwickler von Real-Time- Applikationen zu entlasten 1.6 Architektureigenschaften von RTOS 1. Multitasking Strukturierung von Programmen in Tasks Taskimplementierung mit minimaler HW-Kenntnis (Taskimplementierung nicht über Interruptroutinen bzw. TSR- Routinen notwendig) Taskimplementationen als logisch eigenständige Einheiten (Taskabstraktion) 2. Zeitsteuerung Verwendung von Systemressourcen zu vorbestimmten Zeitpunkten Verwendung von Systemressourcen zu zufälligen Zeitpunkten 3. prioritätsbasierte preemptive Ablaufsteuerung 2

statische, dynamische Prioritäten online, offline Scheduling 4. Taskkoordinierung Synchronisation und gegenseitiger Ausschluß (Semaphore, Mutex, Condition Variable) Intertaskkommunikation (Mailbox, Shared Memory) 5. Interruptbehandlung, Exceptionbehandlung leistungsfähiges Interruptsystem notwendig Unterstützung durch HW Unterstützung durch SW (BS): ISR, Interrupttasks 6. objektbasierte Architektur Bausteine des BS- Kerns werden Objekte genannt einziger aktiver Objekttyp ist Task (Prozeß, Thread) Beispiele für andere Objekttypen RMX: Job, Task, Semaphor, Mailbox, Segment, Region, Composite, Extension RMOS: Task, Semaphor, Mailbox, Event, Pool, Discretes POSIX: Thread, Mutex, Condition Variables, Semaphore, Signale Beachte: Kriterien für einen guten Schedulingalgorithmus Art wie Maschinen verwendet werden, hat Einfluß auf Entwurf des Betriebssystem bzw. Auswahl des Betriebssystems z.b. Mainframe-Environment ist flüchtig d.h. Anzahl, Komplexität, Größe der bearbeiteten Aufgaben ändert sich ständig und ist zu jedem möglichen Zeitpunkt unbekannt dort steht Durchsatz im Vordergrund z.b. Tasks in Real-Time-Embedded Applikationen sind ziemlich klar gegliedert. Notwendige Effizienz des Betriebssystems (gewisser Grad an Durchsatz ist erforderlich), aber Vorhersagbarkeit der Leistung und Zuverlässigkeit der Operationen entscheidend 3

Jet Pipe Temperature Controller Drei Tasks: JPT Steuerung Flugschreibersteuerung Piloteninterface "Quasiparallelität" 3 separate aber abhängige Tasks, daraus resultieren eine Vielzahl von Problemen. Die Lösungen werden durch die Multitaskingsoftware des Betriebssystems geliefert Multitasking Primäre Ziele Ausführung unabhängiger Tasks Ausführung abhängiger Tasks Steuerung der Taskausführung (Reihenfolge, Zeit) Steuerung gemeinsam genutzter Daten Steuerung der Taskausführung (Reihenfolge, Zeit) Steuerung gemeinsam genutzter Daten Unterstützung und Steuerung von Intertaskkommunikation Scheduling Gegenseitiger Ausschluß Scheduling Gegenseitiger Ausschluß Synchronisation u. Datentransfer 1.7 Klassifikation von Echtzeit-(Betriebs)systemen Kriterium: Reaktionszeit: Hard Real-Time Systems Soft Real-Time Systems Kriterium: Standard -Konformität Kombination mit einem Standardbetriebssystem (MS-DOS, UNIX) Einhaltung verabschiedeter internationaler Standards (POSIX, TRON, ORKID) Unterscheidung in offene und proprietäre Echtzeitbetriebssysteme Kriterium: Systemarchitektur zentralisiert verteilt Kriterium: Hardware-Hersteller-Abhängigkeit: Verfügbarkeit des Betriebssystems auf unterschiedlichen Hardware- Plattformen Das Gros der Echtzeitbetriebssysteme sind verfügbar auf Standard-PC- Plattform. 4

Kriterium: Trennung zwischen Entwicklungssystem und Zielsystem Host-/Target-Systeme Komplettbetriebssysteme 1.8 Echtzeit-UNIX-Implementationen 1. Hinzufügen von AT& T System V.4 Erweiterungen zu Standard- UNIX 2. Host/ Target- Lösung VxWorks OS- 9 3. Integration eines UNIX- Systems mit einer Echtzeit- Executive VRTX MTOS- UX RTUX CXOS D-NIX REAL/IX 4. Proprietary UNIX AIX LynxOS Regulus 5. Preemption Points RTU HP- UX VENIX 6. Fully preemptive kernel REAL/IX CX/RT SORIX (Wind River Systems) (Microware) (Ready Systems) (IPI) (Emerge System Inc.) (Computer X/Motorola) (Diab Systems) (Modcomp) (IBM) (Lynx Real Time Systems) (SBE) (Concurrent Masscomp) (Hewlett Packard) (Ventur Com) (AEG-MODCOMP) (Harris) (Siemens) 5