7) Vorstellung eines Realzeitbetriebssystems

Slides:



Advertisements
Ähnliche Präsentationen
Be.as WEB Technologie
Advertisements

Anbindung mobiler Endgeräte über den Terminal Service
Programmieren im Großen von Markus Schmidt und Benno Kröger.
IO - Hardwarestruktur, allgemein
Was macht einen Computer zum Computer?
Multimediasteuerungen
Proseminar Technische Informatik
Datenbankzugriff im WWW (Kommerzielle Systeme)
Enno Rehling und Roger Butenuth, Uni-GH Paderborn: Arminius: Software für Linux-basierte SCI-Cluster Arminius: Software für Linux-basierte SCI-Cluster.
Zentraleinheit CPU, Motherbord, RAM
Name des Vortragenden Klasse Ort / tt.mm.jjjj Beschreibung Zentraleinheit CPU, Motherbord, RAM.
Christos, Kornelia, Jan Christos, Kornelia, Jan Entwicklungsumgebung Versteht unseren Java Programm Code Versteht unseren Java Programm.
Zentraleinheit CPU, Motherbord, RAM
Name des Vortragenden Klasse Ort / tt.mm.jjjj Beschreibung Zentraleinheit CPU, Motherbord, RAM.
Prof. Dr. Uwe Brinkschulte Lehrstuhl für Eingebettete Systeme Robert-Mayer-Straße Sekretariat: Linda Stapleton,
Seite 1 BA Stuttgart, Studiengang Elektrotechnik, 5. HJ, Vorlesung: Realzeitsysteme Aug 2008 Das zeitliche Verhalten periodisch auszuführender Aktionen.
Java: Objektorientierte Programmierung
Betriebssysteme für mobile Endgeräte
Grundlagen der Wirtschaftsinformatik
Einführung Definitionen
Prof. Dr. Uwe Brinkschulte Lehrstuhl für Eingebettete Systeme Robert-Mayer-Straße Sekretariat: Linda Stapleton,
Rigi und Web2Rsf vorgestellt von Tobias Weigand. Inhalt Ziel von Web2Rsf und Rigi Vorstellung des Parsers Web2Rsf Vorstellung des Werkzeugs Rigi Analyse.
Vorlesung 3: Verschiedenes Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
WhatsUp Gold
DVG Einführung in Java1 Einführung in JAVA.
EDV Parallelprogrammierung1 Parallelprogrammierung mit JAVA.
Grundlagen der Hard- und Software
M A P K I T Management eines J2EE basierten eCommerce Systems am Beispiel des ATG Dynamo Applikationsservers und BMC Patrol als Managementframework.
Grundschutztools
1 Vorlesung 3 Verschiedenes Peter B. Ladkin
Interrupt Bei dem Transport von Daten zu einem Speichermedium oder zu einer Schnittstelle, muss der PC seine aktuelle Arbeit unterbrechen Man bemüht sich,
Ende Christian SeitzJochen Braun. Ende Der CMOS Standard Chip.
Berliner Rahmenpläne Informatik für die Sekundarstufe I
Entwicklung verteilter eingebetteter Systeme - Einführung
Multitasking im Betriebssystem
Duo- und Quad Prozessor-Architektur
Name des Vortragenden Klasse Ort / tt.mm.jjjj Beschreibung Zentraleinheit CPU, Motherbord, RAM.
? Was ist Informatik? Was ist Informatik? Alexander Lange
Aufbau und Funktionsweise
Steuerung externer Komponenten über ein USB-Interface.
Web-HMI einbinden SPS-Technik mit Video, Multimedia und Entertainmentsystemen kombinieren I Peter Steib.
Systeme 1 Kapitel 4 Prozesse WS 2009/10.
Betriebssysteme allgemein
Warum brauche ich ein CMS – Content Management System?
BREWERY-AUTOMATION Solutions for Micro- Breweries
Projektarbeit PHP 5.3 / MySQL & Content Management Systems
Entwicklung der Programmiersprachen
Game Development mit LUA Integration und Kommunikation von LUA mit C++ Referat von Paul van Hemmen Seminar: Reusable Content in 3D und Simulationssystemen.
Copyright 2011 Bernd Brügge, Christian Herzog Grundlagen der Programmierung TUM Wintersemester 2011/12 Kapitel 11, Folie 1 2 Dr. Christian Herzog Technische.
Überblick über die Datenbankproblematik
CGI (Common Gateway Interface)
Philip Bargiel 8DY Informatik
Rechnersysteme: Halbzeit Marcel Waldvogel. Marcel Waldvogel, IBM Zurich Research Laboratory, Universität Konstanz, , 2 Daten und Information.
Systemsoftware und Betriebssysteme
Studiengang Informatik FHDW
Meldungen über Ethernet mit FINS/UDP
Datenverarbeitung im PC
Quellen: Internet INTRANET Ausarbeitung von Sven Strasser und Sascha Aufderheide im Modul Netzwerktechnik, Klasse INBS Mai 2003.
Wie Funktioniert es eigentlich?
Grundlagen, Prinzipien und Aufgaben eines Betriebssystems
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
Central Processing Unit (Zentraleinheit)
Studiengang Informatik FHDW
Betriebssysteme Was ist ein BS?
Betriebssysteme: Theorie
Multiprocessing mit OpenMPI Marius Albath. Vorlesung Betriebssysteme, Was ist OpenMPI Was ist OpenMPI OpenMPI Standard Setup OpenMPI Standard.
, Jens Rettig1 Einsatz von Versionsverwaltungstools im ORACLE – Umfeld Dipl.-Inform. Jens Rettig
Echtzeit-Betriebssysteme
Einführung Definitionen
Einführung Definitionen
 Präsentation transkript:

7) Vorstellung eines Realzeitbetriebssystems Inhaltsverzeichnis Betriebssysteme Definition Realzeitbetriebssystem Grundlagen des Datenzugriffs auf die E/A Komponenten Vorstellung verschiedener RTOS VxWorks Echtzeitsystem Werkzeugmaschinensteuerungen Echtzeitsystem Robotersteuerungen Roland Sanftmann, Fabian Zohm

7) Vorstellung eines Realzeitbetriebssystems Einleitung für Betriebssystem Bei kleineren Anwendungen (Tachometer) kommt man meistens ohne einem Betriebssystem aus. Neben einer Digitalanzeige und einfachen Messfühlern ist keine Ein-/Ausweise notwendig. Die Aufgabe wird durch wenige Unterbrechungsprozesse und ein Hautprogramm gelöst. Ab einer gewissen Größe der Aufgabenstellung wird der Einsatz von Betriebssysteme unabdingbar.

Definitionen Betriebssystem Definition Betriebss Definitionen Betriebssystem Definition eines Betriebssystems nach 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 Definition 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

7) Vorstellung eines Realzeitbetriebssystems Eigenschaften eines Betriebssystems Häufig Mitlieferung vom Hersteller des Rechners Effizientes Betriebssystem setzt genaue Kenntnis der Hardwarestruktur voraus. Größe : mehrere Kilo-Bytes bei Mikrorechnern mehrere Mega-Bytes bei Großrechnern Integration von klassischen Betriebssystembestandteilen in Form von Halbleiterchips

7) Vorstellung eines Realzeitbetriebssystems Aufgabenfelder Betriebssysteme Dem Benutzter die Fähigkeiten des Rechensystems zugänglich machen Dies ist nur durch Abstraktion und Generalisierung wegen der jeweiligen unterschiedlichen Architekturen möglich Zusammenfassung des Prozessors, des Hauptspeichers zu den Betriebsmitteln Das Betriebssystem kennt die Funktion eines Betriebsmittels und ist in der Lage damit umzugehen. Zuteilung der vorhandenen Betriebsmittel zu den konkurrierenden Rechenprozessen Scheduling

7) Vorstellung eines Realzeitbetriebssystems Aufgabenfelder Betriebssysteme Es wird von einem Betriebssystem erwartet, dass es eine Plattform für eine vielseitig einsetzbare Arbeitsumgebung ist. Teil einer Arbeitsumgebung können sein Programmentwicklungsumgebung, bestehend aus Compilern, Editoren und Testwerkzeugen Graphische Oberflächen Kommunikationsdienste im Rechnernetz Datenbanken und Archivierungsdienste Erleichterung der Bedienung und Programmierung des Rechners und der angeschlossenen Geräte Form eines Treibers

7) Vorstellung eines Realzeitbetriebssystems Definition Realzeitbetriebssystem Definition eines Realzeitbetriebssystems nach DIN 44 300 RTOS (real time operationg system) Ein Computersystem gilt als echtzeitfähig, wenn es innerhalb einer benenn- und garantierbaren Zeit auf zufällige, externe Ereignisse reagieren kann. Im industriellen Steuerungsumfeld sind Reaktionszeiten im Mikrosekundenbereich ein unbedingtes muss. Typische Werte 5-60 Mikrosekunden. Unterschied zu Betriebssystemen Für Echtzeitbetriebssysteme spielt die Einhaltung von Zeitbedingungen eine große Rolle. Die Vorhersagbarkeit des Systemverhaltens ist elementar wichtig.

7) Vorstellung eines Realzeitbetriebssystems Aufgaben eines RTOS Sicherstellung der Unterbrechungsfähigkeit (Interruptverwaltung) Sichere Verwaltung der Rechenprozesse und des Systemspeichers (Taskverwaltung) Definierte Reaktion auf Fehlerzustände (Fehlerverwaltung - und Behandlung) Bereitstellung der Ressourcen zur Taskkommunikation und Synchronisation Bereitstellung von Ressourcen zur Steuerung zeitlicher Abläufe Organisation des Ablaufs der Rechenprozesse Organisation der Speicherverwaltung Organisation der Ein- und Ausgabe Zusammenfassung der Aufgaben: Verwaltung von Rechenprozessen und Betriebsmitteln unter Erfüllung der Forderung nach Rechtzeitigkeit, Genauigkeit und Effizienz.

Aufbau eines Echtzeitsystems Ein Echtzeitsystem besteht aus: einem Rechnerteil (Hardware) einem Echtzeitbetriebssystem mit den für die Anwendung angepassten Bestandteilen, einer Applikationssoftware Ein Echtzeitbetriebssystem besteht aus: Das RTOS besitzt einen Mikrokern - Das ist ein effizienter Scheduler mit präzise definierten Schnittstellen Das RTOS bilden eine Schale um den Mikrokern, die von Applikationsprogrammen nicht durchdrungen wird Der Mikrokern beinhaltet die Systemuhr, den Scheduler und die Semaphorenverwaltung Der Kern steuert die Rechenprozesse des Rechensystems und realisiert das Ablaufen der Rechenprozesse.

Hartes Echtzeitsystem ems Hartes Echtzeitsystem Die Merkmale eines harten Echtzeitsystems sind: Unter keinen Umständen Verzögerungen zulassen Ergebnisse sind nutzlos wenn sie zu spät erfolgten Katastrophale Störungen wenn die Deadlines nicht eingehalten werden Unendlich hohe Kosten für verpasste Deadlines Die Beispiele für harte Echtzeitsystems sind: Steuerung eines Kernreaktors Antiblockiersystem Überwachungssysteme auf einer Intensivstation Digitalsteuerung im Airbus Flugzeug

Weiches Echtzeitsystem ems Weiches Echtzeitsystem Die Merkmale eines weichen Echtzeitsystems sind: Niedrige Kosten beim verspäteten Eintreffen der Ergebnisse Akzeptierung einer geringeren Performance bei einer Verspätung Die Beispiele für weiche Echtzeitsystems sind: Werkzeugrevolver Digitale Telefonanlage Steuerung unkritischer chemischer Prozesse Verkaufsautomat

7) Vorstellung eines Realzeitbetriebssystems Grundlagen des Datenzugriffs Grundlagen des Datenzugriffs auf die E/A Komponente: Definition Device-Controller Der Device-Controller ist die elektronische Komponente der E/A Geräte. (Gerätesteuerung). Die Aufgaben sind die Konvertierung des seriellen Bitstroms in Datenblöcke, sowie das Durchführen einer Fehlerkorrektur und das Verfügbarmachen der Daten für die CPU. Kommunikation der CPU mit dem Device-Controller Jeder Controller hat einige Steuerungsregister in welche die CPU Befehle mit Parametern schreiben kann. Zusätzlich haben viele Geräte einen Datenpuffer, der vom Betriebssystem geschrieben oder gelesen werden kann.

7) Vorstellung eines Realzeitbetriebssystems Polling / Interrupts Grundlagen Zugriff auf die Geräte: Polling - Nach dem Absetzen eines Befehls an das Gerät wird der Status ständig abgefragt Interrupts - Werden von Geräten verwendet um das Ende eines Vorgangs anzuzeigen - Die CPU wird unterbrochen und beginnt etwas Neues, abhängig vom auslösendem Gerät wird ein Interrupt-Handler aufgerufen und ausgeführt. - Später macht die CPU an der alten Stelle weiter

7) Vorstellung eines Realzeitbetriebssystems Direct Memory Access Grundlagen Zugriff auf die Geräte: Direct Memory Access DMA I/O kann mittels DMA deutlich beschleunigt werden, da die CPU weniger belastet wird Prinzip: Vergabe einer Aufgabe an den DMA-Controller. Die CPU kann in der Zwischenzeit andere Dinge erledigen. Ablauf eines DMA-Transfers

Kriterien zur Auswahl eines RTOS ems Kriterien zur Auswahl eines RTOS 1. Ist das RTOS überhaupt notwendig? Ein RTOS sollte nur bei Multitaskingsystemen eingesetzt werden Es muss genügend Arbeitsspeicher zur Verfügung stehen. Dies ist beim Entwurf zu beachten 2. Das Betriebssystemvehalten muss bekannt sein Die Interrupt Verzögerungszeit (Zeit zwischen Interrupt und Tasklaufzeit) Zeitdauer für jeden Systemaufruf Die maximale Zeit, die das Betriebssystem und der Treiber benötigen um einen Interrupt zu verarbeiten Fazit : Es ist kein RTOS auf dem Markt verfügbar, das für jede Applikation die otpimale Lösung bietet. Aus der Projektspezifikation für die Applikation ein Anforderungskatalog erstellen. Am Schluss gelangt man zu einer RTOS dessen Eigenschaft am besten für die spezielle Applikation sind.

CAN, Profibus, Interbus S FPP, FPN FPP, FPN, Timeslice, FPP,FPN, Timeslicem, Benutzerdef. FPP, FPN, Timeslice, FIFO Scheduling - CAN, Profibus, Interbus S CAN, Profibus Feldbus TCP/IP TCP/IP, UDP TCP/IP, UDP Netzwerk Windows X-Win GUI Unix, Windows Unix Datei- system C, C++, Java C C, C++, Java C, C++, Java, Ada C, C++ Sprachen IA32, PowerPC, MIPS, ARM Diverse Mikro- controller IA32, PowerPC, 680XX IA32, PowerPC, 680XX, div. Mirko- controller IA32, PowerPC, ARM IA32, IA64, PowerPC IA32 Zielsystem EBS MEBS BA Standard für EBS, BA DS, EBS Typ Microsoft CMX Systems Microware Wind River GPL (GNU Public License) Posix QNX Software Systemes Ldt. Hersteller Windows CE CMX OS-9 VxWorks RT-Linux POSX.4 QNX Produkt

7) Vorstellung eines Realzeitbetriebssystems Vorstellung von QNX Beschreibung: QNX basiert auf der Idee, den Großteil des Systems in Form kleiner "Aufgaben" (Tasks) auch bekannt als Server, laufen zu lassen. Dabei läuft jeder Task bzw. Prozess in einem eigenen, geschützten Speicherbereich - egal ob es sich dabei um eine Applikation oder um einen Treiber handelt. Dies erleichtert Entwicklern die Fehlersuche: Versucht Prozess A versehentlich Daten oder Code von Prozess B zu überschreiben, merkt der QNX-Mikrokern dies sofort und gibt eine entsprechende Meldung aus. Im Falle QNX erlaubt der Mikrokern dem Nutzer (Entwickler), jegliche von ihm nicht benötigte Funktionalität (z. B. Audio, Grafik aber auch beliebige andere Systemteile) wegzulassen. Das System ist sehr klein und gilt als sehr schnell. sehr fortschrittlich, speziell für den Entwickler, da das Betriebssystem an die Bedürfnisse skalierbar ist.

7) Vorstellung eines Realzeitbetriebssystems QNX-Architektur 7) Vorstellung eines Realzeitbetriebssystems

Das ist der Desktop von QNX

Der Browser namens Voyager von QNX Der Editor namens PED von QNX Der File-manager namens PFM von QNX

Werkzeugmaschine Der Begriff Werkzeugmaschine bezeichnet alle Maschinen, die zur Bearbeitung von Werkstücken mit Werkzeugen dienen. Zur Formgebung des Werkstücks erzeugt die Werkzeugmaschine eine Relativbewegung zwischen Werkzeug und Werkstück. Universal- Werkzeugmaschine (fräsen, bohren, drehen, stossen und gravieren) Historische Wälzfräsmaschine (zur Zahnradherstellung)

Werkzeugmaschinensteuerungen Eine elektronische Methode zur Steuerung und Regelung von Werkzeugmaschinen ist eine Werkzeugmaschinensteuerung. NC – Numerical Control → Werden direkt durch NC-Befehle gesteuert CNC – Computer Numerical Control → Die Steuerung erfolgt über einen Computer Siemens Sinumerik Diese CNC kann als eine Steuerung für unterschiedliche Werkzeugmaschinen der Technologien Fräsen, Drehen, Schleifen, Nibbeln, Stanzen, Handling, Blechumformung, Zahnradbearbeitung etc. eingesetzt werden.

Echtzeitsystem Werkzeugmaschinensteuerungen Eine NC/CNC realisiert eine Steuerung, bei der Art und Reihenfolge bestimmter Fertigungsschritte für ein Werkstück in einem Programm festlegt. → Zur Steuerung ist deshalb ein Echtzeitsystem nötig. - Es müssen viele Tasks zeitrichtig und parallel ausgeführt werden. - Weiter muss überwacht werden, dass Achsen, einzelner Maschinen, nicht über vordefinierte Grenzen hinaus bewegt werden. CNC-Steuerungen haben zeitliche Auflösungen der Bewegungsregelung von 125 µs = 0,000125s

Softwarereferenzmodell einer NC

NC - Systemprogramm

Robotersteuerung Ein Industrieroboter ist eine universelle, programmierbare Maschine zur Handhabung, Montage oder Bearbeitung von Werkstücken. Diese Roboter sind für den Einsatz im industriellen Umfeld konzipiert. Jeder Industrieroboter hat eine Steuerung, die die Bewegungsabläufe regelt. KUKA - Industrieroboter Vorne ein 6-Achs-Knickarmroboter, dahinter ein 4-Achs-Palettier-Roboter.

Robotersteuerung Für die Koordination der einzelnen Achsen zuständig. Hauptaufgabe, dass der Greiferflansch sich mit der gewünschten Genauigkeit und Geschwind- igkeit entlang der geforderte Bahn bewegt. Für die Verarbeitung der Sensorsignale am Greifer (Eingänge) und für die Greiferaktoren (Ausgänge) verantwortlich. Der gesamte applikationsspezifische Funktionsablauf der Roboterzelle muss verarbeitet werden (Ablauf zusammen mit den Förderbändern, etc).

Softwarereferenzmodell für eine RC

Roboter-Softwarearchitektur

Quellen Internet Bücher http://www4.informatik.uni-erlangen.de/Lehre/WS03/V_PA/Skript/stp1-pa-ws03-kapitel5.pdf (Seiten 1-20 und 33-35) http://www.itm.uni-luebeck.de/teaching/ws0607/bs/BS-WS0607-Kap06-BS-IO.pdf?lang=de http://www.michael-prokop.at/computer/qnx.html http://www.palettierroboter.com/index.html http://www.wikipedia.org/ Bücher Echtzeitsysteme von Heinz Wörn, Uwe Brinkschulte (Springer Verlag Berlin Heidelberg 2005) Echtzeitsysteme „Grundlagen und Techniken“ von Dieter Zöbel, Wolfgang Albrecht (Thomson Publishing GmbH 1995)