Entwicklung verteilter eingebetteter Systeme - Einführung

Slides:



Advertisements
Ähnliche Präsentationen
Monitore in Java++ Aufgabe 2 von Markus Schlebusch Christoph Reinboth Sebastian Zok Johannes Stolte Norman Zuther.
Advertisements

Kapitel 11 Deadlocks RW-Systemarchitekur Kap. 11.
7.3 Scheduling Zur Erinnerung:
10.2 Wechselseitiger Ausschluss in Hardware
Aktuelle Java-Trends, Norbert Schuler1 Jini Java im Netz.
PC-Cluster.
1 Spezielle Packages des Java SDK (1.4) java.nio.
FU Berlin SS 2003 Klaus-Peter Löhr
Enno Rehling und Roger Butenuth, Uni-GH Paderborn: Arminius: Software für Linux-basierte SCI-Cluster Arminius: Software für Linux-basierte SCI-Cluster.
Seminar Software-Engineering für softwareintensive Systeme
Netzwerke im Dialogmarketing
Prof. Dr. Uwe Brinkschulte Lehrstuhl für Eingebettete Systeme Robert-Mayer-Straße Sekretariat: Linda Stapleton,
On a Buzzword: Hierachical Structure David Parnas.
Kapitel 6.1 Nebenläufigkeit und wechselseitiger Ausschluss
Systeme 1 Kapitel 5.1 Unix Scheduling WS 2009/101.
Kapitel 10 Nebenläufigkeit und wechselseitiger Ausschluss
Nebenläufige Programmierung
SciAgents - Eine agentenbasierte Umgebung für verteilte wissenschaftliche Berechnungen Alexander StarkeSeminar Software Agenten
Software zur Simulation von Multitaskingalgorithmen Michael Böhm – BSZW Rodewisch.
7 Verteilungsabstraktion
Studiengang Informatik FHDW
Prof. Dr. Uwe Brinkschulte Lehrstuhl für Eingebettete Systeme Robert-Mayer-Straße Sekretariat: Linda Stapleton,
XML in Client-Server und GRID Architektur
JAVA RMI.
Seminar: Architekturbeschreibungssprachen
1/25 UNIVERSITY OF PADERBORN Projektgruppe KIMAS Projektgruppe KIMAS MultiAgenten-Systeme Andreas Goebels.
Vortrag III Hier in der Vorlesungszeit! Anwesenheitspflicht Jede Gruppe hat 6 Minuten! Stellt eure GUI vor –was ihr besonderes gemacht habt –Spektakuläre.
Warum vernetzen Unternehmen ihre Rechner?
Diplomarbeit Thema: Untersuchungen zur Spezifikation und Realisierung von Interoperabilitätskonzepten (hauptsächlich) CORBA-basierter Multiagentensysteme.
IBM Workplace Forms - In Kürze © 2007 IBM Corporation XML basierte elektronische Formulare: Effizienzsteigerung und Kostenreduktion durch Automatisierung.
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Referat „COMET-Basis“
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 4 Folie 2 Message Passing mittels Sockets (1) s.a.
Systeme 1 Kapitel 4 Prozesse WS 2009/10.
Telecooperation/RBG Technische Universität Darmstadt Copyrighted material; for TUD student use only Grundlagen der Informatik I Thema 16: Ausnahmebehandlung.
UND NOCH EIN PAAR BEGRIFFE…
Wichtige Errungenschaften
Welchen Problemen ist man bei heterogener, verteilter Programmierung ausgesetzt? Hardware: nicht einheitliche, inkompatible Systeme, verschiedene Leistungsfähigkeit.
HORIZONT 1 XINFO ® Das IT - Informationssystem Eclipse Plugin HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
Replikation und Synchronisation
Management- und Web Services- Architekturen
Thread Synchronisation in JAVA
Projektmanagement Ziel und Umfang eines Softwareprojektes definieren
Rechnersysteme: Halbzeit Marcel Waldvogel. Marcel Waldvogel, IBM Zurich Research Laboratory, Universität Konstanz, , 2 Daten und Information.
Systemsoftware und Betriebssysteme
Interprozess- kommunikation (IPC)
Immer und überall auf dem aktuellsten Stand! Punktgenaue Alarmierung, wenn Sie sie brauchen! Mit Informationen in Echtzeit Störungen beheben, noch bevor.
Scheduling- Algorithmen. Bedeutung nicht-verdängende Strategie Prozesse werden nacheinander ausgeführt Kein Prozess wird bevorzugt Hängt ein Prozess,
GIS Design: A Hermeneutic View (Michael D. Gould)
JAVA/DSM A Platform for Heterogeneous Computing Serge F. Possono M. Technische Universität Muenchen (TUM) Lehr- und Forschungseinheit Informatik X Rechnertechnik.
Parallelisierung für Multiprozessor-Maschinen
Mehrbenutzerzugriff auf GIS-Daten
Anforderungen an Automotive Bussysteme
Grundlagen, Prinzipien und Aufgaben eines Betriebssystems
Unified Process Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Planung von Softwareprojekten Dozent: Christoph Stollwerk WS 2014/2015.
Gaming-Computer-Aufbau
ROS – Robot Operating System
2.3 Implementierung von Prozessen
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
5.1.2 Sequentielle Konsistenz
Middleware in Java vieweg 2005 © Steffen Heinzl, Markus Mathes Kapitel 1: Architektur verteilter Systeme.
Hier wird Wissen Wirklichkeit Organic Computing – Teil 3c, Folie 1 - Prof. Dr. Uwe Brinkschulte Middleware:in verschiedenen Kontexten gebrauchter Begriff,
Distributed Database Systems Parallele Datenbanksysteme von Stefan Schneider.
2ter Review, 13. Oktober 2000, Berlin/Dortmund Pixelpark IMD 2. Review Dortmund Christoph Brandt / Torsten Prill Pixelpark AG 1 BMBF:
ORB – Konzepte Ist – Analyse der betrieblichen Notwendigkeiten, Anforderungsableitung an moderne Lösungskonzepte, alternative ORB – Konzepte mit Zukunft,
Objektorientierte (OO) Programmierung
Systems Requirements & Achitectur ENG 2 & ENG 3 Training Kunde,
Echtzeit-Betriebssysteme
Aufgaben Semaphore Übersicht (Dijkstra)
 Präsentation transkript:

Entwicklung verteilter eingebetteter Systeme - Einführung Damian Bolik 25.02.2002

Entwicklung verteilter eingebetteter Systeme - Einführung Damian Bolik Übersicht (1) Klassifizierung von Anwendungen nebenläufige Anwendungen Echtzeitanwendungen verteilte Anwendungen Umgebungen nebenläufiger Anwendungen Multitasking symmetrische Multiprozessorumgebung verteilte Prozessorumgebung Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung Entwicklung verteilter eingebetteter Systeme - Einführung

Entwicklung verteilter eingebetteter Systeme - Einführung Übersicht (2) EES-Konzepte aktive und passive Objekte Prozesse, Threads, Tasks Synchronisation von Tasks Monitore Softwareentwicklungsmethode vs. -notation Weitere Aspekte bei der Entw. von EES Task Scheduling Middleware Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Nebenläufige Anwendungen Parallele Ausführung von Tasks Ereignisse zufällig und überlappend Viele Probleme sind von Natur aus nebenläufig (Dijkstra 1968) komplexes Design, wenn die Tasks nicht getrennt werden Aber Probleme bei der Synchronisation z.B. Deadlocks Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Echtzeitanwendungen/-systeme (Nebenläufige) Anwendungen mit Zeitschranken weiche Echtzeit-Anforderungen harte Echtzeit-Anforderungen Begriff „Echtzeitsystem“ beinhaltet Echtzeitanwendung(en), Echtzeit-OS und Echtzeit-I/O Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Entwicklung verteilter eingebetteter Systeme - Einführung Echtzeitsysteme Oft eingebettet Interaktion mit der Umgebung Zeitschranken Echtzeitkontrolle „reaktive Systeme“ Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Verteilte Anwendungen (1) Anwendung ist auf „Knoten“ an geographisch verschiedenen Orten verteilt Jeder Knoten ist eine eigenständige Ausführungseinheit (Computersystem) Knoten sind verbunden über Netzwerk (LAN/WAN) Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Verteilte Anwendungen (2) Vorteile: bessere Verfügbarkeit bessere Reaktionszeit „Load Balancing“ flexiblere Konfiguration lokale Pflege einfache Erweiterbarkeit eventuell günstiger Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Umgebungen nebenläufiger Anwendungen (1) Multitasking Ein Rechner, ein Prozessor CPU Systembus I/O Speicher Display Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Umgebungen nebenläufiger Anwendungen (2) symmetrische Multiprozessorumgebung Ein Rechner, mehrere Prozessoren CPU CPU Systembus I/O Speicher Display Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Umgebungen nebenläufiger Anwendungen (3) Verteilte Prozessorumgebung Mehrere Rechner (Knoten) über Netzwerk Knoten 1 Knoten 2 CAN/LAN/WAN Knoten 3 Knoten 4 Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Aktive und Passive Objekte Aktive Objekte repräsentieren einen Task haben ihr eigenes „Leben“ Passive Objekte haben Methoden, die von aktiven Objekten aufgerufen werden meist Datenobjekte Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Prozesse, Threads, Tasks Vom Betriebssystem verwaltete Ausführungseinheit bei Multitasking „heavyweight process“, da beim Taskwechsel viel Zeit benötigt wird oder einziger Prozess auf einer CPU evtl. intern mehrere nebenläufige Threads „lightweight process“ Task ist ein Prozess ohne Threads oder ein Thread Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Synchronisation von Tasks Semaphore bei Ressourcen, auf die exklusiv zugegriffen werden muss Fehleranfällig Signale (Events) meist ohne Datenaustausch Signale sind asynchron Nachrichten mit Datenaustausch synchron: auf Antwort wird gewartet asynchron: auf Antwort wird nicht gewartet Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Entwicklung verteilter eingebetteter Systeme - Einführung Monitore Monitor ist ein Objekt Kapselt eine kritische Ressource (Daten, Peripherie, etc.) Semaphore ist integriert Auf die Ressource wird über die Methoden des Objektes zugegriffen Dabei wird automatisch die Semaphore gesetzt, wodurch Zugriff exklusiv ist Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Softwareentwicklungsmethode vs. -notation (1) Wir unterscheiden Softwareentwicklungs- konzepte (z.B. „Information Hiding“) strategien (z.B. Objekt-orientiert) notationen (z.B. UML, Statecharts) Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Softwareentwicklungsmethode vs. -notation (2) Softwareentwicklungsmethoden (z.B. CODARTS, ROOM, COMET) beinhalten: mehrere Softwareentwicklungskonzepte eine oder mehrere Softwareentwicklungsstrategien eine oder mehrere Softwareentwicklungsnotationen „Schritt für Schritt“-Anleitung zur Softwareentwicklung (Prozess) Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Weitere Aspekte bei der Entwicklung von EES Task Scheduling Im Multitasking muss Betriebssystem zwischen nebenläufigen Tasks wechseln Verschiedene Algorithmen (z.B. round robin, priority preemption) Besonders kritisch bei Echtzeit-Anwendungen Middleware Software, um heterogene Plattformen über einheitliche Schnittstellen zu verbinden Beispiele: RPC, Java RMI, COM, CORBA Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Softwareentwicklungsmodelle (1) Wasserfallmodell Requirements, Analysis and Specification Architectural Design Detailed Design Coding Unit Testing Integration Testing System Testing Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung

Softwareentwicklungsmodelle (2) Spiralmodell 1. Define objektives, alternatives and constraints 2. Analyze risks 4. Plan next cycle 3. Develop product Damian Bolik Entwicklung verteilter eingebetteter Systeme - Einführung