Modellierungswerkzeug Heidelberg, 2006 © Wolfgang Schönfeld.

Slides:



Advertisements
Ähnliche Präsentationen
PC-Senioren Ludwigsburg
Advertisements

Nachtrag zum Vortrag vom Vorbereitung zur Datensicherung
Leistung.
Graphen Ein Graph ist eine Kollektion von Knoten und Kanten. Knoten sind einfache Objekte. Sie haben Namen und können Träger von Werten, Eigenschaften.
Dynamische Seiten mit Dreamweaver Zugriff auf (mysql) Datenbank mit PHP.
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken X Christian Schindelhauer
Ziel: externe Systemverhalten aus Anwendersicht
Sequenzdiagramm.
Nebenläufigkeit Teil I
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Microsoft Windows 2000 Terminal Services
Testgetriebene Entwicklung
FH-Hof Deadlocks Richard Göbel. FH-Hof Deadlock - Definition Menge von Prozessen ist an einem Deadlock beteiligt: wenn jeder Prozess in dieser Menge auf.
Dynamischer Speicher und Struktur
Konstruktoren.
Polymorphie (Vielgestaltigkeit)
Polymorphie (Vielgestaltigkeit)
Sie möchten Informationen einfacher sammeln, verarbeiten und anderen zur Verfügung stellen? Sie möchten Ideen sammeln, strukturieren und präsentieren?
Software zur Simulation von Multitaskingalgorithmen Michael Böhm – BSZW Rodewisch.
Werkzeuge und Softwareumgebung von Christian Michele.
Vorl. 6: Single- und Multitasking Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Vorlesung 9.2: Specification Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Interaktionen Verteilte Anwendungen Wintersemester 06/07 © Wolfgang Schönfeld Wie arbeiten VS mit ihrem Material (im einfachsten Fall)?
Situationen Verteilte Anwendungen Wintersemester 06/07 © Wolfgang Schönfeld.
Verteilte Algorithmen
Dieter Bergmann, Lichtenfels
Jetzt lernen wir.
und relative Häufigkeit Bettina delert, andreas mertke
Entwicklung verteilter eingebetteter Systeme - Einführung
Eine Produktion von der Firma Presentations GmbH
Datenverteilung in Ad-hoc Netzen 1/24 Adaptive Datenverteilung in mobilen Ad-hoc Netzen unter Verwendung des Area Graph basierten Bewegungsmodells S. Bittner,
Ich möchte gerne mehrere Bilder auf ein Folie
Sequenzdiagramm Von Michael Möhring.
Microsoft Outlook Express zur Einführung von Microsoft Outlook Express. Willkommen Erstellt von IT-Intern.
Moin. Ich benutze PPT 2002 und möchte drei Bilder nacheinander 1
Powerpoint 2010 Start Funker Panorama: Zuschauer auf der Elbbrücke beim Weinfest 2011 in Meißen.
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
(hütet eure Zunge, Männer)
Hallo, ich würde gerne wissen, wie ich einen graphen, den ich mit
100 kg Wie wird’s gemacht?! Klick.
(hütet eure Zunge Männer)
Powerpoints bestellen-Mail an Der AIDS Test.
Von Patrik, Yannik, Marc und Luca
OMDS-Einspielung in den KundenManager. Der Import beginnt im chegg.net-Kundenmanager. (Links oben über das Pulldown-Menu erreichbar).
Soziogramm und Soziogramm Designer
(hütet eure Zunge Männer)
Simlab®1 Prozess-Optimierung im medizinischen Labor
Petrinetze 1. Einführung Informatik : wesentlich Modellierung von
Vortrag: Frames & Javascript.
Grundlagen von PowerPoint
Polymorphie (Vielgestaltigkeit). Wenn eine Methode, wie z.B. print für verschiedene Programmteile steht (und z.B. einmal Objekte verschiedener Klassen.
->Prinzip ->Systeme ->Peer – to – Peer
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken VIII Christian Schindelhauer
Installation, Konfiguration, Online stellen, Zugriff © by Lars Koschinski 2003.
7.2.4 Klassifikation mobilen Codes Nicht vergessen:  Sowohl das Fernkopieren als auch die Migration von Objekten setzt voraus, daß der Code entweder am.
Datenbanken im Web 1.
A&D Persa K TB Herzlich Willkommen zum Flash 4 - Seminar.
Diskrete Mathematik I Vorlesung 2 Arrays.
Visualisierung verteilter Systeme
Medizinische Statistik und Informationsverarbeitung Goldschmidt, Quade, Baur Institut für Medizinische Statistik, Dokumentation und Datenverarbeitung.
Datenaustausch Wenn Sie diese Präsentation im Internet-Explorer ablaufen lassen wollen, so klicken Sie bitte auf das Leinwandsymbol unten rechts. Mit.
Pool Informatik, Sj 11/12 GZG FN W.Seyboldt 1 Pool Informatik 5 GZG FN Sj. 11/12 Kopieren, Daten, Programme.
Einführung Die nachfolgende Präsentation dient dem besseren Verständnis der taktischen Grundlagen bei Integration eines Läufersystem in den Spielablauf.
Der Taskmanager ist Bestandteil des Betriebssystems, der als Prozessmanager Prozessmanager unter anderem die aktuell laufenden Programme und Prozesse.
Pointer. Grundsätzliches: Im Arbeitsspeicher werden Daten gespeichert. Um auf die Daten eindeutig zugreifen zu können, werden diesen Daten Adressen zugeordnet.
ResA am Arbeitsplatz Das Vorgehen ist angelehnt an „5 S“ und bietet Ihnen die Möglichkeit das Konzept der 5 Disziplinen ressourcenschonenden Arbeitens.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Praktikum Mobile Web 2.0 – 2.Teil Wolfgang Wörndl, Robert Eigner.
Tutorium Software-Engineering SS14 Florian Manghofer.
 Präsentation transkript:

Modellierungswerkzeug Heidelberg, 2006 © Wolfgang Schönfeld

Modell (nach Wikipedia) entweder ein Vorbild, das der Nachahmung dient, oder die – meist verkleinerte – Nachahmung eines Vorbilds vgl. Modelleisenbahn - nicht nur Spielzeug, sondern auch (ernsthaftes) Lern-Hilfsmittel, vor allem für das ungefährliche Ausprobieren von SondersituationenSondersituationen

existierende Werkzeuge Visualisierung von Verteilten Algorithmen durch animierte HTML- und JAVA-Applets, Dortmund, 1997 Java Network SimulatorJava Network Simulator, in SourceForgeNetSourceForgeNet Java-Version von ND-2 (das in C++ implementiert wurde) Überblick Netzwerksimulatoren (von 1997)Überblick Netzwerksimulatoren (von 1997) (nur im WWW) msgnetmsgnet (R. Schiele, sourceforge.net) NetLogo

eigenes Modellierungswerkzeug für einfaches Herstellen einfacher Modelle selbst implementiert in Java (vor allem, weil kurzer Edit-Test- Zyklus) mit ECLIPSE nicht: (einfache) sequenzielle Programme auf einem Multi- Tasking-System laufen lassen sondern: Verteilung selber realisieren (eigenes kleines "Betriebssystem") Gründe (echte?) Verteilung besser steuerbar bestimmte Abläufe exakt wiederholbar Verwendung in meiner ersten Vorlesung war nicht geplant. Ursprünglich war es gedacht für die Entwicklung von mobilen Systemen. Ich möchte es auch jetzt noch nicht aus der Hand geben.

Ausführung mehrerer Prozesse durch einen Rechner (Multitasking) Prozesse in einem Kreis anordnen rundum durchlaufen ("round robin") und jeweils ein Stück ("Schub") voranbringen Auch Menschen sind zu Multitaking fähig. Die Länge der Schübe wird bei Betriebssystemen präemptiv (zentrale Instanz entscheidet) kooperativ (jeder Prozess entscheidet selbst) bestimmt. Frauen und Männer unterscheiden sich!

Prozess Runde Zeit

Fairness Die Ausführung muss möglichst fair sein. Insbesondere sollte eine in einer bestimmten Runde abgesandte Nachricht nicht in derselben Runde verarbeitet werden. Dazu fügt man den Nachrichten ihren Absendezeit hinzu und sorgt dafür, dass sie frühestens in der nächsten Runde verarbeitet wird.

Senden Empfangen nicht hier erst hier

arbeiten "kooperativ". Bei jedem ist von vornherein bekannt, was er macht (in einem "Schub"): 1.Nimm die oberste Nachricht vom Eingangspostkasten. 2.Verarbeite sie. 3.Versende neue Nachricht(en). Deswegen ist Unterbrechen nicht nötig! Erfasst man mit einfachem Nachrichten-Austausch alle Möglichkeiten zur Interaktion? Die Prozesse im Modellierungswerkzeug

(vereinfachter) Nachrichtentransport Es kommt nur darauf an, dass eine Nachricht zum Empfänger gelangt, aber nicht wie. Daher wird die Nachricht mit einer Laufzeit versehen. Der Sender legt sie in den Eingangspostkasten ("inbox") des Empfängers. Dort muss sie so lange warten, bis die Laufzeit vorüber ist. Diese Laufzeit kann fest eingestellt sein von der realen Entfernung abhängen zufällig sein von der Dringlichkeit abhängen

Bedienung "Load" lädt - je nach Version - ein Netz von der Datei. "Print" druckt den momentanen Zustand. "Initialize" ist eine eigenhändige Änderung des Zustands: Einem ausgewählten Knoten wird eine Nachricht in die inbox gelegt. Dies darf nur dann geschehen, wenn das Netz nicht aktiv ist. "Run" schaltet den Takt an. "Step" startet einen Taktschritt. Es kann nicht gleichzeitig mit "Initialize" gedrückt werden. Deswegen braucht man da keine Vorkehrungen wegen gleichzeitigem Zugriff zu treffen.)

Darstellung Knotens werden durch Rechtecke mit der vorgegebenen Position dargestellt. Neben dem Rechteck steht der Name des Knoten (und weitere Information). Die Laufzeit soll später durch einen Pfeil entsprechender Länge dargestellt werden, desse Spitze auf den Empfänger zeigt und diesen am Ende erreicht.

Implementiert sind Mengen durch ArrayList: Knoten (Netz) Verbindungen (Links) Nachrichten –get - Nimm die oberste Nach von der inbox und verarbeite sie. –remove - Entferne sie von der inbox

Implementiert sind Aktionen der einzelnen Knoten als Teile des Java-Programms. Es gibt also keine "Aktionssprache" und keinen Interpreter dafür. Geplant ist die Heraustrennung der Aktionssprache in eigene, getrennte Objekte Knoten (erledigt alle Systemaufgaben) Akteur (sitzt "auf" dem Knoten und erledigt die Anwendungen)

Speicherung in Dateien Nodes.dat erste Zeile: Vereinbarung der Namen der Knoten danach: ihre Position und erreichbaren Nachbarn Derzeit nur Load, nicht Save.