Verhaltensbeschreibung und Spezifikationssprachen

Größe: px
Ab Seite anzeigen:

Download "Verhaltensbeschreibung und Spezifikationssprachen"

Transkript

1 TECHNISCHE UNIVERSITÄT ILMENAU Integrierte Kommunikationssysteme Verhaltensbeschreibung und Spezifikationssprachen Verhaltensmodelle Zustandsautomaten (FSM) Nicht-deterministische Zustandsautomaten (NDFSM) Parallele Zustandsautomaten Petri-Netz (PN) Datenflussgraph (DFG) Kontrollflussgraph (CFG) Kontroll-Datenflussgraph (CDFG) Grundkonzepte Nebenläufigkeit Hierarchie Kommunikation Synchronisation Ausnahmebehandlung Nicht-Determinismus Timing Spezifikationssprachen StateCharts SDL VHDL SystemC...

2 Grundlegende Kommunikationsmechanismen Rendez-Vous (CSP) keine gemeinsamen Daten, Prozesse müssen zu bestimmten Zeiten synchronisiert Daten austauschen Lesen und Schreiben erfolgen gleichzeitig Kopplung von Datenaustausch und Synchronisation Gemeinsamer Speicher (unsynchronisiert) Mehrfaches Auslesen möglich Überschreiben gespeicherter Daten bei jedem Schreiben Semantik abhängig von der Reihenfolge von Lese- und Schreiboperationen Puffer (FIFO, FIFO mit Prioritäten) Entkopplung von Sender und Empfänger Begrenzt (bounded) (ECFSMs, CFSMs), feste Kapazität Unbegrenzt (unbounded) (SDL, ACFSMs, Kahn Process Networks, Petri- Netze)

3 Übersicht Kommunikationsmodelle Blockierung der Schreiboperation bei belegtem Puffer Blockierung der Leseoperation bei leerem Puffer Konsum der Daten beim Lesen Sender Empfänger Puffergröße blockieren. Lesen blockier.. Schreiben Einmal. Lesen Gem. Speicher Semaphore Unbegrenzt. Puffer oder Begrenzter Puffer oder < evtl. Rendezvous

4 Kommunikationsmechanismen Blockierend vs. nicht-blockierend A B blocking read (Empfänger wartet auf Sender) Empfänger blockiert bis Eingabe vorliegt kein nichtblockierender Test auf vorhandenen Input möglich blocking write (Sender wartet auf Empfänger) Sender muss Empfangsbestätigung abwarten Realisierung in Spezifikationssprachen blocking write/blocking read (Rendezvous-Konzept) CSP (Hoare(978) Communicating Sequential Processes) CCS (Milner(980) Calculus of Communicating Systems) non-blocking write/blocking read (FIFO, CFSMs, SDL) CFSM (CoDesign FSM, Puffer der Größe ) non-blocking write/non-blocking read (gemeinsame Variablen)

5 Asynchrone Kommunikation Pufferung A B Puffer dienen dem Ausgleich wenn Sender und Empfänger mit unterschiedlichen bzw. sich ändernden Raten arbeiten Größe des Puffers? Verlustfreie oder verlustbehaftete Puffer Datenverlust durch Überlauf des Puffers Begrenzter Puffer führt ohne Synchronisation zu Überlauf oder Überschreiben Ggf. Notwendigkeit den Sender bei vollem Puffer zu blockieren Single vs. multiple read Jede Eingabe kann entweder einmal (Warteschlange) oder mehrmals (gemeinsame Variable) konsumiert werden Priorisierte Warteschlangen bzw. Events Abweichungen von FIFO-Abarbeitung

6 Zusammenfassung: Beschreibung des Kontrollflusses Eigenschaften Spezifikationssprache Nichtdeterminismus NDFSM, SDL Parallele Automaten State Charts, Petrinetze Asynch. Prozesse SDL Verteilte Abläufe MSC Hierarchie State Charts, SDL Graphische Unterstützung Alle entsprechenden Werkzeuge Semantic Unterschiedlich ;-(

7 Zusammenfassung: Grundkonzepte von Modellen und Sprachen Zustandswechsel Ereignisse bewirken Zustandswechsel (einfache Eingabe, komplexe Bedingungen) Berechnung in Verbindung mit Zustandswechsel Nebenläufigkeit Gliederung des Verhaltens in nebenläufige Einheiten verschiedene Arten von Nebenläufigkeit (job, task-, statement-, operation-level) datengetriebene vs. kontrollgetriebene Nebenläufigkeit Reduktion von Zuständen Hierarchie strukturelle Hierarchie (System, Block, Prozess, Prozedur) Verhaltenshierarchie (hierarchical transitions, fork-join) Programmierkonstrukte Spezifizieren sequentieller Algortihmen Kommunikation gemeinsame Variablen (broadcast) Nachrichtenübermittlung synchron vs. asynchron Synchronisation kontrollabhängig (fork-join) datenabhängig (Daten, Ereignis, Nachricht) Ausnahmebehandlung Sofortige Unterbrechung des gegenwärtigen Verhaltens Nicht-Determinismus Wahl verschiedener Übergänge nicht-deterministische Anordnung Timing Timeouts, zeitliche Bedingungen

Verhaltensbeschreibung und Spezifikationssprachen

Verhaltensbeschreibung und Spezifikationssprachen TECHNISCHE UNIVERSITÄT ILMENAU Integrierte Kommunikationssysteme http://www.tu-ilmenau.de/iks Verhaltensbeschreibung und Spezifikationssprachen Verhaltensmodelle Zustandsautomaten (FSM) Nicht-deterministische

Mehr

Verhaltensbeschreibung und Spezifikationssprachen

Verhaltensbeschreibung und Spezifikationssprachen TECHNISCHE UNIVERSITÄT ILMENAU Verhaltensbeschreibung und Spezifikationssprachen Integrated Kommunikation Systems http://www.tu-ilmenau.de/iks Verhaltensmodelle Zustandsautomaten (FSM) Nicht-deterministische

Mehr

Verhaltensbeschreibung und Spezifikationssprachen

Verhaltensbeschreibung und Spezifikationssprachen TECHNISCHE UNIVERSITÄT ILMENAU Verhaltensbeschreibung und Spezifikationssprachen Integrated Kommunikation Systems http://www.tu-ilmenau.de/iks Verhaltensmodelle Zustandsautomaten (FSM) Nicht-deterministische

Mehr

Verhaltensbeschreibung und Spezifikationssprachen

Verhaltensbeschreibung und Spezifikationssprachen TECHNISCHE UNIVERSITÄT ILMENAU Integrierte Kommunikationssysteme http://www.tu-ilmenau.de/iks Verhaltensbeschreibung und Spezifikationssprachen Verhaltensmodelle Zustandsautomaten (FSM) Nicht-deterministische

Mehr

Verhaltensbeschreibung und Spezifikationssprachen

Verhaltensbeschreibung und Spezifikationssprachen TECHNISCHE UNIVERSITÄT ILMENAU Verhaltensbeschreibung und Spezifikationssprachen Integrierte Kommunikationssysteme http://www.tu-ilmenau.de/iks Verhaltensmodelle Zustandsautomaten (FSM) Nicht-deterministische

Mehr

Verhaltensbeschreibung und Spezifikationssprachen

Verhaltensbeschreibung und Spezifikationssprachen TECHNISCHE UNIVERSITÄT ILMENAU Integrierte Kommunikationssysteme http://www.tu-ilmenau.de/iks Verhaltensbeschreibung und Spezifikationssprachen Verhaltensmodelle Zustandsautomaten (FSM) Nicht-deterministische

Mehr

Literatur. VA SS Teil 5/Messages

Literatur. VA SS Teil 5/Messages Literatur [5-1] https://en.wikipedia.org/wiki/message-oriented_middleware [5-2] https://en.wikipedia.org/wiki/advanced_message_queuing_protocol http://www.amqp.org/specification/0-10/amqp-org-download

Mehr

Example Ptolemy Model of Comp.: Synchronous Reactive

Example Ptolemy Model of Comp.: Synchronous Reactive Prinzip: Example Ptolemy Model of Comp.: Synchronous Reactive Annahme: unendlich schnelle Maschine Diskrete Ereignisse (DE) werden zyklisch verarbeitet (Ereignisse müssen nicht jede Runde eintreffen) Pro

Mehr

WS Parallele Prozesse. Prof. Hannelore Frank. Parallele Prozesse. PetriNetze. Synchronisation UNIX. Wettbewerb PC Krit.Abschnitt Spinlocks

WS Parallele Prozesse. Prof. Hannelore Frank. Parallele Prozesse. PetriNetze. Synchronisation UNIX. Wettbewerb PC Krit.Abschnitt Spinlocks WS 2007 Überblick 1 2 Petri-Netze als Entwurfshilfsmittel 3 nebenläufiger 4 -Systemfunktionen Literatur Eduard Glatz: Betriebssysteme. Grundlagen, Konzepte, Systemprogrammierung dpunkt.verlag, 2006, ISBN

Mehr

Prozessalgebren (CCS & CSP) Vortragender: Tim Michaelis

Prozessalgebren (CCS & CSP) Vortragender: Tim Michaelis Prozessalgebren (CCS & CSP) Vortragender: Tim Michaelis Begriffsklärung: Prozess Prozess = Abfolge von Aktionen = Aufeinanderfolge von Zuständen Äussere Eigenschaften sequentiell oder parallel? kooperierend

Mehr

Spezifikation von Kommunikationssystemen

Spezifikation von Kommunikationssystemen 1 / 22 Spezifikation von Kommunikationssystemen 6. Basiskonstrukte von SDL Prof. Jochen Seitz Fachgebiet Kommunikationsnetze 3. Mai 2018 2 / 22 Übersicht 1 Darstellung eines Prozesses 2 Zeit in SDL 3 Variablen

Mehr

Synchronisation und Kommunikation über Nachrichten

Synchronisation und Kommunikation über Nachrichten Synchronisation und Kommunikation über Nachrichten meist bei verteiltem Speicher, kein gemeinsamer Speicher -> keine globalen Variablen keine zu schützenden Datenbereiche Kommunikation über Kanäle und

Mehr

Fakultät für Informatik der Technischen Universität München. Probleme

Fakultät für Informatik der Technischen Universität München. Probleme Probleme Problematisch an der Implementierung des Beispiels auf der letzten Folie ist, dass der Zeiger auf den Auftrag job nicht geschützt ist und es so zu fehlerhaften Ausführungen kommen kann. Durch

Mehr

Vorlesung Betriebssysteme II

Vorlesung Betriebssysteme II 1 / 15 Vorlesung Betriebssysteme II Thema 3: IPC Robert Baumgartl 20. April 2015 2 / 15 Message Passing (Nachrichtenaustausch) Prinzip 2 grundlegende Operationen: send(), receive() notwendig, wenn kein

Mehr

Korrektheit durch modulare Konstruktion. Wie kann man die Korrektheit reaktiver Systeme gewährleisten?

Korrektheit durch modulare Konstruktion. Wie kann man die Korrektheit reaktiver Systeme gewährleisten? Korrektheit durch modulare Konstruktion Wie kann man die Korrektheit reaktiver Systeme gewährleisten? Ansatz: Durch systematische Konstruktion (Schlagwort: strukturierte Programmierung für parallele Programmiersprachen)

Mehr

Wie kann man die Korrektheit reaktiver Systeme gewährleisten?

Wie kann man die Korrektheit reaktiver Systeme gewährleisten? Korrektheit durch modulare Konstruktion Wie kann man die Korrektheit reaktiver Systeme gewährleisten? Ansatz: Durch systematische Konstruktion (Schlagwort: strukturierte Programmierung für parallele Programmiersprachen)

Mehr

Thomas Schirrmann Nebenläufigkeit. Nebenläufigkeit. Vortrag Thomas Schirrmann. Seminar Systementwurf Dozentin Daniela Weinberg

Thomas Schirrmann Nebenläufigkeit. Nebenläufigkeit. Vortrag Thomas Schirrmann. Seminar Systementwurf Dozentin Daniela Weinberg Nebenläufigkeit Vortrag Seminar Systementwurf Dozentin Daniela Weinberg 1 Gliederung 1. Einführung 2. Modellierung 2.1. POMSET 2.2. Transitionssystem 2.3. Petrinetz 2.4. abstraktes nebenläufiges Programm

Mehr

Wichtige Rechnerarchitekturen

Wichtige Rechnerarchitekturen Wichtige Rechnerarchitekturen Teil 5 INMOS Transputer, CSP/Occam 1 INMOS Transputer 1983 vorgestellt von der Firma INMOS (Bristol) (Entwicklung seit 1978) Der Name Transputer entstand als Kunstwort aus

Mehr

Synchrone Botschaften

Synchrone Botschaften Synchrone Botschaften PPJ-84 Prozesse kommunizieren und synchronisieren sich direkt miteinander, bzw. über Kanäle, die höchstens eine Botschaft aufnehmen. Operationen: send (b): receive (v): blockiert

Mehr

VHDL - Synthese. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg

VHDL - Synthese. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg VHDL - Synthese Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2007/2008 VHDL - Synthese 1/19 2007-10-27 Inhalt Begriff Arten

Mehr

Diskrete Ereignissysteme. Spezielle Netzstrukturen- Übersicht. Beispiele zu speziellen Netzstrukturen. Petri-Netze und Zustandsautomaten

Diskrete Ereignissysteme. Spezielle Netzstrukturen- Übersicht. Beispiele zu speziellen Netzstrukturen. Petri-Netze und Zustandsautomaten Diskrete Ereignissysteme 4.4 Spezialisierungen von Petri Netzen Spezielle Netzstrukturen- Übersicht Ein S-T-Netz heisst Zustands-System gdw. gilt:. W(f) = für alle Kanten f F. 2. t = t = für alle Transitionen

Mehr

Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung

Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung Sommersemester 2012 Prof. Dr. Dr. h.c. Manfred Broy Unter Mitarbeit von Dr. M. Spichkova, J. Mund, P. Neubeck Lehrstuhl Software

Mehr

Message Sequence Charts, Live Sequence Charts

Message Sequence Charts, Live Sequence Charts Message Sequence Charts, Live Sequence Charts SE Systementwurf WS 05/06 Evgeniya Ershova Message Sequence Charts, Live Sequence Charts 1 Gliederung Heute basic MSC s Message Sequence Graphs Hierarchical

Mehr

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

Echtzeitprogrammierung und Echtzeitverhalten von Keil RTX. Frank Erdrich Semester AI 7 Echtzeitprogrammierung und Echtzeitverhalten von Frank Erdrich Semester AI 7 Inhalt Einleitung Echtzeit und Echtzeitsysteme Echtzeitprogrammierung Real-Time Operating System Keil RTOS RTX Zusammenfassung

Mehr

JavaLand,

JavaLand, KOROUTINEN MIT KOTLIN JavaLand, 2018 @RenePreissel https://github.com/rpreissel/kotlin-coroutine.git INHALT Warum Koroutinen? Umsetzung von Koroutinen in Kotlin Asynchrone Kommunikationsmuster mit Koroutinen

Mehr

Domänenmodell: Fadenkommunikation und -synchronisation

Domänenmodell: Fadenkommunikation und -synchronisation Domänenmodell: Fadenkommunikation und -synchronisation Alexander Humphreys, Reinhard Rösch, Fabian Scheler 15. Mai 2003 Inhaltsverzeichnis 1 Domänendefinition 1 2 Domänenlexikon 1 3 Konzeptmodelle 4 4

Mehr

Domänenorientierte Softwarearchitektur mit CÉU und RUST am Beispiel eines Heizungsgateways zur Fernüberwachung und Fernparametrisierung

Domänenorientierte Softwarearchitektur mit CÉU und RUST am Beispiel eines Heizungsgateways zur Fernüberwachung und Fernparametrisierung Domänenorientierte Softwarearchitektur mit CÉU und RUST am Beispiel eines Heizungsgateways zur Fernüberwachung und Fernparametrisierung Matthias Terber 18. November 2016 1 Agenda 1. Motivation Gateway

Mehr

OOA-Dynamische Konzepte

OOA-Dynamische Konzepte Proseminar UML im SS 2005 OOA-Dynamische Konzepte Teil 2 von Benjamin Daeumlich 1 Übersicht Szenario Definition Interaktionsdiagramme Sequenzdiagramm Kommunikationsdiagramm Sequenz- vs. Kommunikationsdiagramm

Mehr

Extended Scope. Events und Mailboxen. Florian Franzmann Tobias Klaus Florian Korschin Florian Schmaus Peter Wägemann

Extended Scope. Events und Mailboxen. Florian Franzmann Tobias Klaus Florian Korschin Florian Schmaus Peter Wägemann Extended Scope Events und Mailboxen Florian Franzmann Tobias Klaus Florian Korschin Florian Schmaus Peter Wägemann Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme

Mehr

Spezifikation von Kommunikationssystemen

Spezifikation von Kommunikationssystemen 1 / 32 Spezifikation von Kommunikationssystemen 2. Spezifikation und Konformität Prof. Jochen Seitz Fachgebiet Kommunikationsnetze 13. April 2018 2 / 32 Übersicht 1 Spezifikation 2 Formale Systemspezifikation

Mehr

Vorlesung Informatik II

Vorlesung Informatik II Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 17. JAVA Kommunikation von Threads 1 Motivation

Mehr

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

Inhaltsverzeichnis. Carsten Vogt. Nebenläufige Programmierung. Ein Arbeitsbuch mit UNIX/Linux und Java ISBN: Inhaltsverzeichnis Carsten Vogt Nebenläufige Programmierung Ein Arbeitsbuch mit UNIX/Linux und Java ISBN: 978-3-446-42755-6 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42755-6

Mehr

Vorlesung Software-Engineering I

Vorlesung Software-Engineering I Vorlesung Software-Engineering I im 3. und 4. Semester 07. SW-Architektur Abläufe Workflows Szenarien Use Cases User Story s -> Betrachtung deterministischer Abläufe DHBW-Stuttgart/Frank M. Hoyer SWE1-07:

Mehr

Anomalien und andere folk lores

Anomalien und andere folk lores Anomalien und andere folk lores Perlen der Weisheit Bernhard Schätz Denotationelle Semantiken Grundlagen: Scott sche Bereichstheorie zur LCF Ansatz: System als mathematisches Objekt (Ein/Ausgabe) Definierte

Mehr

Statecharts in UML Grundlagen und Übersetzung in Colored Petri Nets

Statecharts in UML Grundlagen und Übersetzung in Colored Petri Nets Statecharts in UML Grundlagen und Übersetzung in Colored Petri Nets von André Kaiser 25.10.2004 André Kaiser - Statecharts in UML 1 Überblick Statecharts Konzepte und Darstellung Übersetzung UML-Statechart-Model

Mehr

Betriebssysteme Teil 11: Interprozess-Kommunikation

Betriebssysteme Teil 11: Interprozess-Kommunikation Betriebssysteme Teil 11: Interprozess-Kommunikation 19.12.15 1 Übersicht Grundbegriffe Shared Memory Pipelines Messages Ports Sockets 2 Grundbegriffe Interprocess-Kommunikation = Austausch von Daten über

Mehr

VHDL Simulation. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011

VHDL Simulation. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 VHDL Simulation Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 VHDL Simulation 1/20 2011-05-18 Motivation Der Simulationsalgorithmus

Mehr

VHDL Synthese. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2009/2010

VHDL Synthese. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2009/2010 VHDL Synthese Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2009/2010 VHDL Synthese 1/36 2009-11-02 Inhalt Begriff Arten Kombinatorische

Mehr

Hardware/Software-Codesign

Hardware/Software-Codesign Hardware/Software-Codesign Kapitel 6: Systemsynthese M. Schölzel Modelle für den Systementwurf Typische Modelle im Entwurfsablauf Prozessbasierte Modelle (Kommunizierende Prozesse,, DFGs), Zustandsbasierte

Mehr

Kapitel 3: Workflow-Modellierungssprachen Einführung in High-Level Petrinetze

Kapitel 3: Workflow-Modellierungssprachen Einführung in High-Level Petrinetze Kapitel 3: Workflow-Modellierungssprachen Einführung in High-Level Petrinetze 1. Überblick über Modellierungssprachen 1. Ziel: Analyse 2. Modellierungssprachen: Perspektiven und Anforderungen 2. Petrinetze

Mehr

Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II)

Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II) Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II) 02 Grundlagen Dr. Sebastian Voss fortiss GmbH Kompetenzfeldleiter Model-based Systeme Engineering Themenübersicht - Gesamtvorlesung

Mehr

An Overview of the Signal Clock Calculus

An Overview of the Signal Clock Calculus An Overview of the Signal Clock Calculus, Jennifer Möwert Inhaltsverzeichnis Synchrone Programmiersprachen Clock Calculus Synchrone Paradigmen SLTS Clocks SIGNAL Definitionen Endochrony Bäume, Jennifer

Mehr

Prof. Dr. Th. Letschert CS5001. Verteilte Systeme. Master of Science (Informatik) - Modelle verteilter Berechnung - Th Letschert FH Gießen-Friedberg

Prof. Dr. Th. Letschert CS5001. Verteilte Systeme. Master of Science (Informatik) - Modelle verteilter Berechnung - Th Letschert FH Gießen-Friedberg Prof. Dr. Th. Letschert CS5001 Master of Science (Informatik) - Modelle verteilter Berechnung - Th Letschert FH Gießen-Friedberg Modelle verteilter Berechnungen 2 Modelle verteilter Berechnung KommunikationsMedium

Mehr

Die Belegung der Stellen heißt Markierung und repräsentiert den Zustand des Petri- Netzes.

Die Belegung der Stellen heißt Markierung und repräsentiert den Zustand des Petri- Netzes. Bei Petri-Netzen handelt es sich um formale Konstrukte, die graphisch ausgestaltet sind und sich für die Modellierung und Simulation von komplexen Geschäfts- und Arbeitsprozessen besonders gut eignen.

Mehr

Media Engineering. Objektorientierte Modellierung. Verhaltensmodellierung. R. Weller University of Bremen, Germany cgvr.cs.uni-bremen.

Media Engineering. Objektorientierte Modellierung. Verhaltensmodellierung. R. Weller University of Bremen, Germany cgvr.cs.uni-bremen. Media Engineering Objektorientierte Modellierung Verhaltensmodellierung R. Weller University of Bremen, Germany cgvr.cs.uni-bremen.de Objektorientierte Analyse und Design im Detail Identifiziere Akteure

Mehr

Grundlagen: Überblick

Grundlagen: Überblick Grundlagen: Überblick Verteilte Systeme Definition Grundbegriffe Kommunikation Klassifikation von Fehlern Begriffe Fehlerarten Analyse von Algorithmen Korrektheit Komplexität Verteilte Algorithmen (VA),

Mehr

Modellieren im Informatikunterricht

Modellieren im Informatikunterricht Teil 1: Einführung in Netzstrukturen zur Systembeschreibung 1 Die Welt begreifen Abstraktion und Komplexitätsreduktion auf Interessante 2 Modelle im Informatikunterricht? Kommunikation über das Vorhaben

Mehr

Verteilte Algorithmen TI5005

Verteilte Algorithmen TI5005 Verteilte Algorithmen TI5005 Th. Letschert TH Mittelhessen Gießen University of Applied Sciences Modelle und Notationen Systeme, Anwendungen, Algorithmen Verteiltes System Ein verteiltes System besteht

Mehr

Unified Modeling Language (UML )

Unified Modeling Language (UML ) Unified Modeling Language (UML ) Seminar: Programmiersprachenkonzepte Inhalt Einleitung UML 2.0 Diagrammtypen 2 Einleitung Objektorientierte Modellierungssprache Definiert vollständige Semantik Dient der

Mehr

Protokoll-Spezifikationen

Protokoll-Spezifikationen Protokoll-Spezifikationen Steven Müller 1. Einleitung 2. Protokolle 3. Kompatibilität von Protokollen 4. Subprotokolle 5. Realisierung 6. Zusammenfassung 1. Einleitung Worum geht es in diesem Vortrag?

Mehr

Sven Osterwald Concurrent Objects. Proseminar Parallele Programmierung in Java

Sven Osterwald Concurrent Objects. Proseminar Parallele Programmierung in Java Sven Osterwald 12.05.2010 Concurrent Objects Proseminar Parallele Programmierung in Java Überblick 1. Einführung 2. Beispiel FIFO-Queue mit und ohne Lock 3. Korrektheit bei sequentiellen Objekten 4. Korrektheit

Mehr

Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II)

Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II) Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II) 05 Kommunizierende Prozesse Dr. Sebastian Voss fortiss GmbH Kompetenzfeldleiter Model-based Systeme Engineering Themenübersicht

Mehr

5.3.2 Sequentielle Konsistenz. Def.: Sequentielle Konsistenz (sequential consistency):

5.3.2 Sequentielle Konsistenz. Def.: Sequentielle Konsistenz (sequential consistency): 5.3.2 Sequentielle Konsistenz Sequentielle Konsistenz (sequential consistency): Effekt einer Programmausführung auf repliziertem Objekt = Effekt einer äquivalenten sequentiellen Ausführung auf nichtrepliziertem

Mehr

Dipl.-Inform. Lars Ebrecht

Dipl.-Inform. Lars Ebrecht Konsistente Verknüpfung von Aktivitäts-, Sequenzund Zustandsdiagrammen Darstellungsunabhängige und formale Semantik zur Verhaltensbeschreibung von Echtzeit-Systemen Dipl.-Inform. Lars Ebrecht Mobilität

Mehr

Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II)

Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II) Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II) 08 Ausführungen Dr. Sebastian Voss fortiss GmbH Kompetenzfeldleiter Model-based Systeme Engineering Themenübersicht 1.

Mehr

Info B VL 16: Monitore und Semaphoren

Info B VL 16: Monitore und Semaphoren Info B VL 16: Monitore und Semaphoren Objektorientiere Programmierung in Java 2003 Ute Schmid (Vorlesung) Elmar Ludwig (Übung) FB Mathematik/Informatik, Universität Osnabrück Info B VL 16: Monitore und

Mehr

RAM. Konsistenzprobleme entstehen => CPU - durch Verzögerung in Warteschlange, Umfangreiche Pufferung in den PCI Brücken. lesen. EOP-Signal.

RAM. Konsistenzprobleme entstehen => CPU - durch Verzögerung in Warteschlange, Umfangreiche Pufferung in den PCI Brücken. lesen. EOP-Signal. 11. s 11.1 Pufferspeicher Lesepuffer um vorauszulesen: - erste Leseoperation hat lange Latenzzeit, - Folgedaten vorsorglich schon gelesen, - "prefetch buffer". Schreibpuffer um ein Blockieren des schreibenden

Mehr

7. Konkretisierungen im Feindesign. 7.1 Zustandsdiagramme 7.2 Object Constraint Language

7. Konkretisierungen im Feindesign. 7.1 Zustandsdiagramme 7.2 Object Constraint Language 7. Konkretisierungen im Feindesign 7.1 Zustandsdiagramme 7.2 Object Constraint Language 173 Verfeinerte Modellierung Durch die verschiedenen Sichten der Systemarchitektur wird der Weg vom Anforderungsmodell

Mehr

Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II)

Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II) Modellierung verteilter Systeme (Grundlagen der Programm- und Systementwicklung II) 08 Ausführungen Dr. Sebastian Voss fortiss GmbH Kompetenzfeldleiter Model-based Systeme Engineering Themenübersicht 1.

Mehr

Sommersemester Analyse II: Verhalten (Zustandsautomaten)

Sommersemester Analyse II: Verhalten (Zustandsautomaten) Sommersemester 23 Analyse II: Verhalten (Zustandsautomaten) 8 Aufgabe 2 Analyse II: Verhalten (Zustandsautomaten) Umfang: 2 Wochen Punkte: P. Nachdem in der ersten Aufgabe die Systemstruktur mit Hilfe

Mehr

CONCURRENCY MODELS. Auf der Suche nach dem heiligen Gral der ManyCores Peter Sturm. (c) Peter Sturm, Universität Trier

CONCURRENCY MODELS. Auf der Suche nach dem heiligen Gral der ManyCores Peter Sturm. (c) Peter Sturm, Universität Trier CONCURRENCY MODELS Auf der Suche nach dem heiligen Gral der ManyCores Peter Sturm 1 AUTOVERKEHR 61.5 Millionen zugelassene Autos (Anfang 2014) Quelle: Statistisches Bundesamt 2 3 SPERRGRANULAT Die Zeit

Mehr

Wechselseitiger Ausschluss in verteilten Systemen / Elektionsalgorithmen. Özden Urganci Ulf Sigmund Ömer Ekinci

Wechselseitiger Ausschluss in verteilten Systemen / Elektionsalgorithmen. Özden Urganci Ulf Sigmund Ömer Ekinci Wechselseitiger Ausschluss in verteilten Systemen / Elektionsalgorithmen Özden Urganci Ulf Sigmund Ömer Ekinci Inhaltsangabe 1 Einleitung 2 Prinzipien des verteilten wechselseitigen Ausschlusses 2.1 Anforderungen

Mehr

Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden )

Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden ) Threads Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden ) Ein thread bearbeitet eine sequentielle Teilaufgabe innerhalb eines Prozesses Mehrere nebenläufige

Mehr

2.4.3 Zustandsgraphen

2.4.3 Zustandsgraphen 2.4.3 Zustandsgraphen Folie 2-1+45 Paradigma der Zustandsmodellierung Zustandsmodellierung betrachtet ein System als Zustandsautomaten beschreibt die Zerlegung in Zustände und Zustandsübergänge orientiert

Mehr

2.4.3 Zustandsgraphen

2.4.3 Zustandsgraphen 2.4.3 Zustandsgraphen Folie 2-1+45 Paradigma der Zustandsmodellierung Zustandsmodellierung betrachtet ein System als Zustandsautomaten beschreibt die Zerlegung in Zustände und Zustandsübergänge orientiert

Mehr

Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung

Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung Sommersemester 2012 Prof. Dr. Dr. h.c. Manfred Broy Unter Mitarbeit von Dr. M. Spichkova, J. Mund, P. Neubeck Lehrstuhl Software

Mehr

Bounded Model Checking mit SystemC

Bounded Model Checking mit SystemC Bounded Model Checking mit SystemC S. Kinder, R. Drechsler, J. Peleska Universität Bremen {kinder,drechsle,jp}@informatik.uni-bremen.de 2 Überblick Motivation Formale Verifikation Äquivalenzvergleich Eigenschaftsprüfung

Mehr

Kommunikationsmuster (T) Interprozesskommunikation (T) Kommunikation über Pipes (P) Parserspezifikation und -generierung (P)

Kommunikationsmuster (T) Interprozesskommunikation (T) Kommunikation über Pipes (P) Parserspezifikation und -generierung (P) Systempraktikum im Wintersemester 2009/2010 (LMU): Vorlesung vom 19.11. Foliensatz 4 Kommunikationsmuster (T) Interprozesskommunikation (T) Kommunikation über Pipes (P) Parserspezifikation und -generierung

Mehr

Kommunikationsmodelle

Kommunikationsmodelle Kommunikationsmodelle Dr. Victor Pankratius David J. Meder IPD Tichy Lehrstuhl für Programmiersysteme KIT die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe (TH) Grundlegende

Mehr

Monitore. Klicken bearbeiten

Monitore. Klicken bearbeiten Sascha Kretzschmann Institut für Informatik Monitore Formatvorlage und deren Umsetzung des Untertitelmasters durch Klicken bearbeiten Inhalt 1. Monitore und Concurrent Pascal 1.1 Warum Monitore? 1.2 Monitordefinition

Mehr

Entwicklung integrierter HW/SW-Systeme Integrierte Hard- und Softwaresysteme 2 Seminar

Entwicklung integrierter HW/SW-Systeme Integrierte Hard- und Softwaresysteme 2 Seminar Entwicklung integrierter HW/SW-Systeme Integrierte Hard- und Softwaresysteme 2 Seminar Jorge Meza jorge.meza@tu-ilmenau.de Zusebau R2082, Tel: -4128 Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated

Mehr

Betriebssysteme. G: Parallele Prozesse. (Teil B: Klassische Problemstellungen, Mutual Exclusion, kritische Regionen)

Betriebssysteme. G: Parallele Prozesse. (Teil B: Klassische Problemstellungen, Mutual Exclusion, kritische Regionen) Betriebssysteme G: Parallele Prozesse (Teil B: Klassische Problemstellungen, Mutual Exclusion, kritische Regionen) 1 Allgemeine Synchronisationsprobleme Wir verstehen ein BS als eine Menge von parallel

Mehr

Aufgaben Petrinetze Aufgabe 1

Aufgaben Petrinetze Aufgabe 1 Task C läuft an, wenn A und B abgelaufen sind. Aufgabe 1 A B Task A REL S1 Task B REL S2 REQ S1 REQ S2 S1 S2 Task C C Aufgabe: Task C läuft an, wenn A oder B abgelaufen sind. Zeichne das Petrinetz und

Mehr

(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert?

(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert? SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 2 2014-04-28 bis 2014-05-02 Aufgabe 1: Unterbrechungen (a) Wie unterscheiden sich synchrone

Mehr

5.1 Verteilung von Aktualisierungshinweisen

5.1 Verteilung von Aktualisierungshinweisen 5.1 Verteilung von Aktualisierungshinweisen Verteilung von Nachrichten über eine Aktualisierung lokaler Datenspeicher erfährt, dass Aktualisierung stattfand z.b. Invalidierungsnachricht vgl. erste DSM-Implementierung

Mehr

3.0 VU Formale Modellierung

3.0 VU Formale Modellierung 3.0 VU Formale Modellierung Gernot Salzer Arbeitsbereich Theoretische Informatik und Logik Institut für Computersprachen SS 2016 1 Inhalt 0. Überblick 1. Organisation 2. Was bedeutet Modellierung? 3. Aussagenlogik

Mehr

Verteilte Systeme - Java Networking (Sockets) 2 -

Verteilte Systeme - Java Networking (Sockets) 2 - Verteilte Systeme - Java Networking (Sockets) 2 - Prof. Dr. Michael Cebulla 06. November 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 30 Michael Cebulla Verteilte Systeme Gliederung Wiederholung:

Mehr

Kommunikation in drahtlosen Sensornetzen

Kommunikation in drahtlosen Sensornetzen Kommunikation in drahtlosen Sensornetzen Zeitsynchronisation in drahtlosen Sensornetzen (DSN) Michael Oeste - 674177 Michael Oeste 12.02.2007-1 / 27 Inhalt Problematik der Zeitsynchronisation Zeit Synchronisation

Mehr

Betriebssysteme. Kommunikation von Prozessen und Threads. Sommersemester Prof. Dr. Peter Mandl. Seite 1. Prof. Dr. Peter Mandl.

Betriebssysteme. Kommunikation von Prozessen und Threads. Sommersemester Prof. Dr. Peter Mandl. Seite 1. Prof. Dr. Peter Mandl. Kommunikation von Prozessen und Threads Sommersemester 2014 Seite 1 Gesamtüberblick 1. Einführung in 2. Betriebssystemarchitekturen und Betriebsarten 3. Interruptverarbeitung in n 4. Prozesse und Threads

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Pinte, Spisländer FAU Erlangen-Nürnberg Objektorientiertes Design 1 / 17 Objektorientiertes Design Florin Pinte Marc Spisländer Lehrstuhl für Software

Mehr

Vorlesung "Verteilte Systeme" Sommersemester 1999. Verteilte Systeme. Adreßraum. Rechner. Verteilte Systeme, Sommersemester 1999 Folie 19.

Vorlesung Verteilte Systeme Sommersemester 1999. Verteilte Systeme. Adreßraum. Rechner. Verteilte Systeme, Sommersemester 1999 Folie 19. Verteilte Systeme 19. Distributed Shared Memory Sharing!! No Sharing! Sharing? Evolution der Berechnungsmodelle Vergangenheit Gemeinsamer Speicher Einzelrechner Gegenwart Nachrichtenkommunikation Verteilte

Mehr

Objektorientierte Analyse

Objektorientierte Analyse Objektorientierte Analyse Software Engineering in der Praxis David Föhrweiser Marc Spisländer Lehrstuhl für Software Engineering Friedrich-Alexander-Universität Erlangen-Nürnberg Föhrweiser, Spisländer

Mehr

Vom Benutzer gesetzter Wert der Variablen (unverändert) Variablenname (unverändert) Fehlercode der Schreiboperation

Vom Benutzer gesetzter Wert der Variablen (unverändert) Variablenname (unverändert) Fehlercode der Schreiboperation Beschreibung für Tag-Objekt Schreibt einen Wert synchron oder asynchron in eine Variable. Über die Eigenschaft "LastError" kann festgestellt werden, ob der Aufruf erfolgreich war. Wird der Wert der Variablen

Mehr

Modellierung - Wiederholung

Modellierung - Wiederholung Norbert Fuhr 24. Januar 2006 Einführung Grundbegriffe Einführung Grundbegriffe Syntax vs. Semantik Modellbegriff Repräsentation vs. Information Boolesche Terme Definition Wahrheitswerte Interpretation

Mehr

6.1.2 Sequentielle Konsistenz (Lamport 1979)

6.1.2 Sequentielle Konsistenz (Lamport 1979) 6.1.2 Sequentielle Konsistenz (Lamport 1979) Def.: Sequentielle Konsistenz (sequential consistenc): Effekt/Ergebnisse einer verteilten Programmausführung auf repliziertem Objekt = Effekt/Ergebnisse einer

Mehr

Business Process Model and Notation

Business Process Model and Notation BPMN 2.0 Crashkurs Business Process Model and Notation entwickelt von der Object Management Group, einem Konsortium von vielen Firmen (u.a. HP, IBM, Microsoft, Oracle, SAP) >60 verschiedene Produkte implementieren

Mehr

Übung zu Betriebssystemtechnik

Übung zu Betriebssystemtechnik Übung zu Betriebssystemtechnik Nachrichtenaustausch und Copy-on-Write 11. Juni 28 Andreas Ziegler Bernhard Heinloth Lehrstuhl für Informatik 4 Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl

Mehr

Programmieren 2 12 Netzwerke

Programmieren 2 12 Netzwerke Programmieren 2 12 Netzwerke Bachelor Medieninformatik Sommersemester 2015 Dipl.-Inform. Ilse Schmiedecke schmiedecke@beuth-hochschule.de 1 Motivation Datenaustausch zwischen Programmen Spielstand Chat

Mehr

Petri-Netze. Teil 2. Chandran Goodchild. Department of Automata Theory University of Freiburg. Pro Seminar, 2017

Petri-Netze. Teil 2. Chandran Goodchild. Department of Automata Theory University of Freiburg. Pro Seminar, 2017 Petri-Netze Teil 2 Chandran Goodchild Department of Automata Theory University of Freiburg Pro Seminar, 2017 Chandran Goodchild (University of Freiburg) Petri-Netze Pro Seminar, 2017 1 / 40 Struktur 1

Mehr

Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen)

Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen) Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen) 1 Prozesse Bei Betriebssystemen stoßen wir des öfteren auf den Begriff Prozess als wahrscheinlich am häufigsten verwendeter und am unklarsten

Mehr

Integrierte HW/SW Systeme: Anforderungen

Integrierte HW/SW Systeme: Anforderungen TECHNISCHE UNIVERSITÄT ILMENAU Integrierte HW/SW Systeme: Anforderungen Integrated Communication Systeme http://www.tu-ilmenau.de/iks Analyseprozess Funktionelle Anforderungen Leistungsanforderungen Echtzeitanforderungen

Mehr

Leser-Schreiber-Realisierung mit Semaphoren

Leser-Schreiber-Realisierung mit Semaphoren Leser-Schreiber-Realisierung mit Semaphoren Reader: down(semwriter); down(semcounter); rcounter++; up(semwriter); read(); down(semcounter); rcounter--; Writer: Problem: down(semwriter); Busy Waiting siehe

Mehr

Nebenläufige Programmierung in Java: Threads

Nebenläufige Programmierung in Java: Threads Nebenläufige Programmierung in Java: Threads Wahlpflicht: Fortgeschrittene Programmierung in Java Jan Henke HAW Hamburg 10. Juni 2011 J. Henke (HAW) Threads 10. Juni 2011 1 / 18 Gliederung 1 Grundlagen

Mehr

IHS2 Seminar. Jorge Meza Zusebau R2082, Tel: -4128

IHS2 Seminar. Jorge Meza Zusebau R2082, Tel: -4128 Jorge Meza Zusebau R2082, Tel: -4128 Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated HW/SW Systems Group 14. Januar 2014 Self-Organization 14 January 2014 1 Nächster Termin Das letzte findet am

Mehr

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

RTOS Einführung. Version: Datum: Autor: Werner Dichler RTOS Einführung Version: 0.0.1 Datum: 20.07.2013 Autor: Werner Dichler Inhalt Inhalt... 2 RTOS... 3 Definition... 3 Anforderungen... 3 Aufgaben... 3 Eigenschaften... 4 Einteilung der Betriebssysteme...

Mehr

Task& Data-Flow Graphs

Task& Data-Flow Graphs Task& Data-Flow Graphs M. Thaler, TG208, tham@zhaw.ch www.zhaw.ch/~tham Februar 16 1 1 Um was geht es? Parallele Algorithmen was sind Möglichkeiten zur Darstellung? was sind Möglichkeiten zur Analyse?

Mehr