Algorithmen für eingebettete Systeme

Größe: px
Ab Seite anzeigen:

Download "Algorithmen für eingebettete Systeme"

Transkript

1 Algorithmen für eingebettete Systeme 3. Wechselseitiger Ausschluss Sommersemester 0 Folien zur Vorlesung von Dr. Mathias Pacher

2 Inhalt 3.. Motivation und Anforderungen 3.. Broadcast-Algorithmus 3.3. Verbesserter Broadcast-Algorithmus 3.. Token-Ring-Algorithmus 3.. Lift-Algorithmus 3.6. Künstliches Hormonsystem 3.7. Ausblick

3 3.. Motivation und Anforderungen Motivation: Koordination des exklusiven Zugriffs auf Ressourcen. Beispiel: Exklusiver Zugriff auf Datei oder Drucker. P P X Drucker Vernünftige Annahmen: Meist: Exklusives Zugriffsrecht durch einen Prozess. Verallgemeinerung: Gleichzeitiger Zugriff durch maximal n Prozesse. Prozess mit Zugriffsrecht gibt dieses nach endlicher Zeit ab.

4 Anforderungen Sicherheit Zu jedem Zeitpunkt darf höchstens ein Prozess zugreifen. Verklemmungsfreiheit Es darf nicht geschehen, dass kein Prozess aktuell einen exklusiven Zugriff hat, und kein Prozess diesen auch erhalten kann. Fairness Wenn ein Prozess exklusiven Zugriff wünscht, dann erhält er ihn auch nach einer endlichen Zeit. Sicherheit und Verklemmungsfreiheit notwendig für jeden Algorithmus, Fairness wünschenswert. 3

5 Zentrale Systeme Realisierung durch Betriebssystemoperationen: P P Lock(S) Lock(S) Kritischer Abschnitt Kritischer Abschnitt Unlock(S) Unlock(S) Verwendete Mechanismen: Busy Waiting Semaphoren Monitore Prinzip: Exklusiver Zugriff auf gemeinsamen Speicher. Wie geht das in verteiltem System?

6 3... Zentralisierte Lösung Ein Prozess wird für eine bestimmte Ressource zum Koordinator ernannt. Prozesse, die die Ressource benötigen, fragen beim Koordinator an. Zuteilung durch den Koordinator. Jeder Prozess meldet die Freigabe wieder an den Koordinator. Genau 3 Nachrichten pro Zugriff. Einfache Implementierung. K Request Ack Request P Finished P Nachteile: Single Point of Failure! Fairness?

7 3.. Broadcast-Algorithmus (*) Dezentraler Algorithmus Voraussetzungen: Feste Anzahl an Prozessen. Eine exklusive Ressource. Verlustfreie FIFO-Kommunikation. Alle Nachrichten haben logischen Zeitstempel (Lamport-Uhr). Totalordnung auf den Zeitstempeln. Prinzip: Jeder Prozess hat Nachrichtenwarteschlange. Nach Zeitstempeln geordnet. Jeder Prozess sendet Anforderungen und Freigaben per Broadcast an alle Prozesse. (*) L. Lamport: Time, Clocks and the Ordering of Events in a Distributed System 6

8 Broadcast-Algorithmus Vorgehensweise: Prozess benötigt Ressource: Anforderung (REQ) mit Zeitstempel in eigene Warteschlange und an alle anderen Prozesse senden. Anforderung empfangen: Anforderung in eigene Schlange einsortieren und Bestätigung senden (ACK). Freigabe (senden): Anforderung aus eigener Schlange löschen. Freigabe an alle anderen Prozesse senden (FREE). Freigabe (empfangen): Anforderung aus eigener Schlange entfernen. Zugriff genau dann wenn: Eigene Anforderung ist erste in eigener Schlange. Empfang einer späteren Nachricht von jedem anderen Prozess. Lokale Tests 7

9 Beispiel P P, t= P P3 P3, t= Schwarze Nachricht: Request (REQ) Grüne Nachricht: Bestätigung (ACK) Orange Nachricht: Freigabe (FREE) 8

10 Beispiel P P P3 P, t= P, t= P3, t= P, t= P3, t= P, t= P3, t= Schwarze Nachricht: Request (REQ) Grüne Nachricht: Bestätigung (ACK) Orange Nachricht: Freigabe (FREE) 9

11 Beispiel P P P, t= P, t= P, t= P3, t= 6 P, t= P3, t= Zugriff 9 P3 P3, t= P, t= P3, t= Schwarze Nachricht: Request (REQ) Grüne Nachricht: Bestätigung (ACK) Orange Nachricht: Freigabe (FREE) 0

12 Beispiel P P P, t= P3, t= P, t= P3, t= 6 P, t= P3, t= Zugriff P3, t= 9 P3 P3, t= P, t= P3, t= P3, t= Zugriff Schwarze Nachricht: Request (REQ) Grüne Nachricht: Bestätigung (ACK) Orange Nachricht: Freigabe (FREE)

13 Eigenschaften Sicherheit: Annahme, es gibt Pi und Pj, die gleichzeitig auf Ressource zugreifen. Dann: Pi: Eigene Anforderung ganz oben in Warteschlange und neuere Antworten von allen anderen Prozessen erhalten. Pj: Selbe Aussage. Jedoch: Zeitstempel total geordnet. OBdA ist Zeitstempel von Pi der jüngere. Offensichtlich hat Pi Anforderung von Pj noch nicht empfangen, sonst wäre eigene Anforderung nicht ganz oben. Widerspruch zur FIFO-Voraussetzung: Pi hat jüngere Nachricht als eigene Anforderung von Pj erhalten, jedoch nicht Anforderung von Pj. Verklemmungsfreiheit: Folgt aus Totalordnung auf den Zeitstempeln.

14 Eigenschaften Fairness: Voraussetzung: Es gibt n Prozesse. Pi sendet Anforderung REQ_Pi mit Zeitstempel. REQ_Pi kommt bei jedem Prozess nach endlicher Zeit an. Spätestens dann ist deren Zeitstempel echt größer als der von REQ_Pi. Irgendwann kann kein anderer Prozess die Ressource nutzen. Wegen Verklemmungsfreiheit kann Pi Ressource nutzen. Nach maximal n- exklusiven Zugriffen von anderen Prozessen kann Pi selber zugreifen. Nachrichtenkomplexität pro Zugriff: Anforderungen: n Bestätigungen: n Freigaben: n = 3(n ) 3

15 3.3. Verbesserter Broadcast-Algorithmus (*) Gegeben: n Prozesse, eine exklusive Ressource, benötigt keine FIFO-Kanäle. Vorgehensweise: Prozess mit aktueller ID benötigt Ressource: Sendet Anforderung mit inkrementierter ID an alle anderen n Prozesse. Zugriff, nachdem n Einwilligungen für diese Anforderung eingegangen sind. Prozess erhält Anforderung: Einwilligung sofort schicken, wenn: Prozess sich nicht beworben hat oder ID von Anforderung kleiner als ID der eigenen Anforderung oder wenn IDs gleich: Prozess-ID der Anforderung kleiner als eigene Prozess-ID. Sonst: Einwilligung erst nach Ende des eigenen Zugriffs schicken ( Verzögerung). Aktualisierung der ID: Initial 0. Dann: Die höchste ID, die in einer empfangenen oder gesendeten Anfrage registriert wurde. (*) G. Ricart, A. K. Agrawala: An Optimal Algorithm for Mutual Exclusion in Computer Networks

16 Beispiel P P, ID= Sendet Einwilligung nicht, weil Prozess-ID von P3 größer als von P Zugriff P ID= ID= ID= P3 P3, ID= ID= Sendet Einwilligung, weil Prozess-ID von P kleiner als von P3 Zugriff Schwarze Nachricht: Anforderung (REQ) Grüne Nachricht: Einwilligung (ACK)

17 Eigenschaften Sicherheit: Annahme, zwei Prozesse Pi und Pj greifen gleichzeitig auf Ressource zu.. Fall: Pi sendet Einwilligung an Pj, bevor es eigene Anforderung REQ_Pi absendet. ID von REQ_Pi ist echt größer als die der Anforderung von Pj. Pj wird keine Einwilligung schicken. Pi kann nicht auf Ressource zugreifen, Widerspruch..Fall: Rollen von Pi und Pj vertauscht; selbe Argumentation. 3. Fall: Pi und Pj senden jeweils gegenseitig Einwilligung, nachdem sie ihre jeweiligen Anforderungen abgesetzt haben. Beide Prozesse vergleichen ID und Prozess-ID der Anforderungen. Einer von beiden muss kleinere haben und setzt folglich keine Einwilligung ab. Widerspruch. 6

18 Eigenschaften Verklemmungsfreiheit: Annahme, eine Verklemmung findet statt. Nach einer gewissen Zeit ist sicher, dass die Einwilligung auf eine Anforderung hin verzögert worden ist. Weiter: Es gibt nur endlich viele Prozesse. Es muss einen Zyklus von Prozessen geben, die sich zirkulär verzögern. Jeder Prozess verzögert Einwilligung, weil er selber Ressource möchte. Aber: Verzögerung nur erlaubt, wenn ID und Prozess-ID von Anforderung echt größer als ID und Prozess-ID der eigenen Anforderung. Das ist bei einer endlichen Menge von Prozessen nicht für alle Prozesse möglich, Widerspruch. 7

19 Eigenschaften Fairness: Anforderungen an Prozesse werden in endlicher Zeit beantwortet. Annahme: Es gibt einen Prozess Pi, der nicht dran kommt. Er hat aber Anforderung REQ_Pi gesendet. Anforderung kommt nach endlicher Zeit bei jedem anderen Prozess an. Deren ID ist nun größer oder gleich als die von REQ_Pi. Nach einer endlichen Zeit hat Anforderung von Pi kleinste ID. Pi verzögert alle weiteren Anforderungen. Kein anderer Prozess kann Ressource nutzen. Verklemmung ist nicht möglich, also kann Pi Ressource nutzen. Widerspruch zur Annahme. Nachrichtenkomplexität pro Zugriff: Anforderungen: n Einwilligungen: n = (n ) 8

20 3.. Token-basierter Algorithmus (*) Vorgehensweise: Es gibt genau eine Zugriffsberechtigung Token. Prozess greift zu, wenn er Token hat. Die am Zugriff beteiligten Ressourcen bilden eine bestimmte Topologie Beispielweise Zyklus. Andere Topologien möglich, damit Realisierung von Prioritäten. Beispiel: (*) Gérard Le Lann: Distributed Systems Towards a Formal Approach, 977 9

21 Token-basierter Algorithmus Vorgehenweise (Fortsetzung): Prozess gibt Token weiter: Bei Freigabe Wenn kein Zugriffswunsch da ist. Getrenntes Token für jede Ressource verwenden. Vorteile: Algorithmus ist einfach sicher verklemmungsfrei fair. Nachteil: Token ist immer unterwegs Nachrichtenkomplexität unbeschränkt. Lange Wartezeit bei großer Anzahl von Prozessen. Frage: Wie stellt man sicher, dass genau ein Token unterwegs ist? 0

22 3.. Lift-Algorithmus Nutzt Spannbaum zur Weiterleitung von Token. Seine Kanten haben Zustand: Richtungsanzeige. Token wandert entgegen der Richtungsanzeige und dreht diese dabei. Vorgehensweise: Prozess, der Token will, sendet Anforderung über ausgehende Kante. Prozess erhält Anforderung: Einmaliges Nachsenden einer Anforderung an Token. Speichert, von wem Anforderung kam. Prozess empfängt Token: Ressourcenzugriff, wenn gewünscht. Dann: Weiterleitung in angeforderte Richtung. Anforderung aus mehreren Richtungen: Nachschicken einer Anforderung. Wichtig für Fairness: Prozess darf anfordernde Richtung nicht beliebig oft nicht bedienen!

23 Beispiel

24 Beispiel

25 Beispiel

26 Beispiel

27 Beispiel

28 Beispiel

29 Beispiel

30 Beispiel

31 Beispiel

32 Beispiel

33 Beispiel

34 Beispiel

35 Eigenschaften Invariante: Es existiert gerichteter Pfad von jedem Prozess zum Token. Weglänge: O(log k n) bei k-närem balancierten Baum mit n Knoten. Folgerung: O(log k n) Nachrichten pro Anforderung. Sicherheit klar. Verklemmungsfreiheit klar. Fairness muss gewährleistet werden. Frage: Wie stellt man sicher, dass genau ein Token unterwegs ist? 3

36 Vergleich der vorgestellten Verfahren Verfahren Token-Ring-Algorithmus Nachrichtenkomplexität pro Zugriff Unbeschränkt Broadcast-Algorithmus 3(n ) Verbesserter Broadcast- Algorithmus Lift-Algorithmus (n ) O(log k n) Zentraler Manager 3 3

37 3.6. Künstliches Hormonsystem Anwendung: Zuordnung von Tasks an Prozessoren in verteilten eingebetteten Systemen. Ausbildung virtueller Organe. Hormonbasierte Regelschleifen für: Selbstkonfiguration Selbstoptimierung Selbstheilung. Drei Hormontypen: Eignungswerte Suppressoren Acceleratoren Anwendung Tasks Middleware PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ PZ Ref: U. Brinkschulte, M. Pacher, A. von Renteln, An Artificial Hormone System for Self-Organizing Real- Time Task Allocation in Organic Middleware, In: Organic Computing, Springer, 008 Virtuelle Organe 36

38 Künstliches Hormonsystem - Realisierung Regelschleife auf einem Prozessor: 37

39 Demo Hormonsimulator Weitere Eigenschaften: Siehe Vorlesung Organic Computing 38

40 Gegenseitiger Ausschluss beim KHS Problem: Zwei Tasks sollen nicht gleichzeitig auf einen Prozessor zugreifen. Task A Task B?? Prozessor Übernehme Task, z.b. A Sende großen lokalen Suppressor an andere Task, hier B. Deren Ausführung wird auf Prozessor unterdrückt. Hormonzyklus Eigenschaften: Sicherheit, Verklemmungsfreiheit Fairness muss gesondert gewährleistet werden. Wie? 39

41 3.7. Ausblick Fazit: Es gibt viele Algorithmen für verteilte Systeme, da großer Bedarf. Einige hier besprochen. Viele nicht besprochen. Beispiele: Schnappschussalgorithmen Verteilte Deadlockerkennung Transaktionsprotokolle für verteilte Datenbanken (Datenbanken I+II, Prof. Zicari) Auch Organic Computing (Vorlesungen am Lehrstuhl Eingebettete Systeme) trägt zu Algorithmen für verteilte Systeme bei. 0

Verteilte Algorithmen

Verteilte Algorithmen Verteilte Algorithmen Wechselseitiger Ausschluss PD Dr.-Ing. Gero Mühl Kommunikations- und Betriebssysteme Fakultät für Elektrotechnik u. Informatik Technische Universität Berlin Überblick > Problem des

Mehr

7.1 Grundlagen. Anforderungen an eine Realisierung

7.1 Grundlagen. Anforderungen an eine Realisierung Verteilte Betriebssysteme Wintersemester 2017/2018 Koordination des exklusiven Zugriffs auf Ressourcen Verteilte Betriebssysteme 7. Kapitel Gegenseitiger Ausschluss Prof. Matthias Werner Professur Betriebssysteme

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

Vorlesung "Verteilte Systeme" Sommersemester Verteilte Systeme. Verteilte Systeme, Sommersemester 1999 Folie 7.2

Vorlesung Verteilte Systeme Sommersemester Verteilte Systeme. Verteilte Systeme, Sommersemester 1999 Folie 7.2 Verteilte Systeme 7. Verteilter wechselseitiger Ausschluß Inhalt I. Was ist wechselseitiger Ausschluß II. Wechselseitiger Ausschluß mit State-Variablen III. Wechselseitiger Ausschluß mit Nachrichten Verteilte

Mehr

Token-Request-basierte Algorithmen. Die Token-Ring-Lösung. - Token soll nicht dauernd nutzlos unterwegs sein

Token-Request-basierte Algorithmen. Die Token-Ring-Lösung. - Token soll nicht dauernd nutzlos unterwegs sein Die Token-Ring-Lösung Token-Request-basierte Algorithmen Token kreist ständig - Token soll nicht dauernd nutzlos unterwegs sein - Token wandert nur bei Bedarf - Grundidee: "Token zu mir" an alle (?) anderen

Mehr

Gegenseitiger Ausschluss

Gegenseitiger Ausschluss Gegenseitiger Ausschluss Problemstellung Mehrere Prozesse greifen auf gemeinsame Daten/essourcen zu; der Zugriff muss synchronisiert werden: Immer nur ein Prozess darf den kritischen Abschnitt (k.a.) betreten.

Mehr

Token-Request-basierte Algorithmen. Der O(log n)-algorithmus. - Andere Idee: Spannbaum verwenden

Token-Request-basierte Algorithmen. Der O(log n)-algorithmus. - Andere Idee: Spannbaum verwenden Token-Request-basierte Algorithmen aber wie bekommt man diesen? Der O(log n)-algorithmus Das wäre aber besser als das "optimale" O( n)- Verfahren!?! - Andere Idee: Spannbaum verwenden - "Suchnachrichten"

Mehr

Verteilte Systeme. 7. Verteilter wechselseitiger. Ausschluß. Wechselseitiger Ausschluß (mutual. exclusion)

Verteilte Systeme. 7. Verteilter wechselseitiger. Ausschluß. Wechselseitiger Ausschluß (mutual. exclusion) Verteilte Systeme 7. Verteilter wechselseitiger Ausschluß Wechselseitiger Ausschluß (mutual exclusion) Aufgabenstellung Mehrere Prozesse möchten etwas tun, wobei garantiert sein muß, daß es zu einem Zeitpunkt

Mehr

Wahlalgorithmen auf beliebigen Netzstrukturen. Verteilte Algorithmen (VA), WS 2003/04 43

Wahlalgorithmen auf beliebigen Netzstrukturen. Verteilte Algorithmen (VA), WS 2003/04 43 Wahlalgorithmen Überblick/Problemstellung Wahlalgorithmen auf Ringstrukturen Beispiel TokenRing Wahlalgorithmen auf Baumstrukturen Wahlalgorithmen auf beliebigen Netzstrukturen Verteilte Algorithmen (VA),

Mehr

Verteilte Systeme. Verteilte Systeme. 7 Koordination SS 2017

Verteilte Systeme. Verteilte Systeme. 7 Koordination SS 2017 Verteilte Systeme SS 2017 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 26. Juni 2017 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/12) i

Mehr

Gegenseitiger Ausschluss:

Gegenseitiger Ausschluss: Gegenseitiger Ausschluss Gegenseitiger Ausschluss Problemstellung Gegenseitiger Ausschluss Problemstellung Mehrere Prozesse greifen auf gemeinsame Daten/essourcen zu; Problemstellung Mehrere dieser Zugriff

Mehr

Uberblick Verteilte Synchronisation Zeit in verteilten Systemen Logische Uhr Synchronisation Aufgabe 6 VS- Ubung (SS13) Verteilte Synchronisation 11 1

Uberblick Verteilte Synchronisation Zeit in verteilten Systemen Logische Uhr Synchronisation Aufgabe 6 VS- Ubung (SS13) Verteilte Synchronisation 11 1 Überblick Verteilte Synchronisation Zeit in verteilten Systemen Logische Uhr Synchronisation Aufgabe 6 VS-Übung (SS13) Verteilte Synchronisation 11 1 Zeit in verteilten Systemen Ist Ereignis A auf Knoten

Mehr

Literatur. c Kapitza VS (SS 2015) 12 Gegenseitiger Ausschluss 12.1 Überblick Beispiele

Literatur. c Kapitza VS (SS 2015) 12 Gegenseitiger Ausschluss 12.1 Überblick Beispiele .. Zentraler Koordinator.. Tenbasierte Algorithmen c Kapitza VS (SS 0) : Zentraler Koordinator ( Alle fragen einen) : Zentraler Koordinator: Zentraler Koordinator: Alle fragen einen Alle fragen einen ich

Mehr

Verteilte Systeme. Übereinstimmung und Koordination

Verteilte Systeme. Übereinstimmung und Koordination Verteilte Systeme Übereinstimmung und Koordination 1 Wahlen 2 Wahl-Algorithmen In vielen verteilten Algorithmen benötigt man einen Prozeß, der eine irgendwie geartete besondere Rolle spielt, z.b. als Koordinator,

Mehr

Uberblick Verteilte Synchronisation Zeit in verteilten Systemen Logische Uhr Synchronisation Aufgabe 6 VS- Ubung (SS15) Verteilte Synchronisation 10 1

Uberblick Verteilte Synchronisation Zeit in verteilten Systemen Logische Uhr Synchronisation Aufgabe 6 VS- Ubung (SS15) Verteilte Synchronisation 10 1 Überblick Verteilte Synchronisation Zeit in verteilten Systemen Logische Uhr Synchronisation Aufgabe 6 VS-Übung (SS15) Verteilte Synchronisation 10 1 Zeit in verteilten Systemen Ist Ereignis A auf Knoten

Mehr

Aktuelle Themen bei Eingebetteten Systemen Organic Computing

Aktuelle Themen bei Eingebetteten Systemen Organic Computing Aktuelle Themen bei Eingebetteten Systemen Organic Computing Teil 3 Künstliche Hormonsysteme WS 2011/2012 Dr. Mathias Pacher Prof. Dr. Uwe Brinkschulte Organic Computing Teil 3a, Folie 1 - Dr. Mathias

Mehr

Vorlesung "Verteilte Systeme" Sommersemester Verteilte Systeme. 9. Verteilte Algorithmen

Vorlesung Verteilte Systeme Sommersemester Verteilte Systeme. 9. Verteilte Algorithmen Vorlesung "Verteilte Systeme" Sommersemester 999 Verteilte Systeme 9. Verteilte Algorithmen Bereits behandelte Bereiche Logische Uhren Keine globale Uhrensynchronisation möglich (Theorie) Kausalitätserhaltender

Mehr

Aufgabe 2.1: Lamports Uhren

Aufgabe 2.1: Lamports Uhren Aufgabe 2.1: Lamports Uhren Die Relation a ereignet sich kausal vor b wird kurz als a b notiert. Von zwei Ereignissen a und b sind logische Zeitstempel nach Lamport, C(a) und C(b), bekannt, und es gilt

Mehr

Verteilte Systeme. Synchronisation I. Prof. Dr. Oliver Haase

Verteilte Systeme. Synchronisation I. Prof. Dr. Oliver Haase Verteilte Systeme Synchronisation I Prof. Dr. Oliver Haase 1 Überblick Synchronisation 1 Zeit in verteilten Systemen Verfahren zum gegenseitigen Ausschluss Synchronisation 2 Globale Zustände Wahlalgorithmen

Mehr

Verteilte Systeme. Synchronisation II. Prof. Dr. Oliver Haase

Verteilte Systeme. Synchronisation II. Prof. Dr. Oliver Haase Verteilte Systeme Synchronisation II Prof. Dr. Oliver Haase 1 Überblick Synchronisation 1 Zeit in verteilten Systemen Verfahren zum gegenseitigen Ausschluss Synchronisation 2 Globale Zustände Wahlalgorithmen

Mehr

Grundlagen verteilter Systeme

Grundlagen verteilter Systeme Universität Augsburg Insitut für Informatik Prof. Dr. Bernhard Bauer Wolf Fischer Christian Saad Wintersemester 08/09 Übungsblatt 7 17.12.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1: a)

Mehr

Betriebssysteme. Vorlesung im Herbstsemester 2010 Universität Mannheim. Kapitel 6: Speicherbasierte Prozessinteraktion

Betriebssysteme. Vorlesung im Herbstsemester 2010 Universität Mannheim. Kapitel 6: Speicherbasierte Prozessinteraktion Betriebssysteme Vorlesung im Herbstsemester 2010 Universität Mannheim Kapitel 6: Speicherbasierte Prozessinteraktion Felix C. Freiling Lehrstuhl für Praktische Informatik 1 Universität Mannheim Vorlesung

Mehr

Zeit als Mittel der Reihenfolgebestimmung

Zeit als Mittel der Reihenfolgebestimmung Uhrensynchronisation Notwendigkeit von Uhrensynchronisation Zeit als Mittel der Reihenfolgebestimmung Probleme der Uhrensynchronisation Lamport Vektorduhren Synchronisation von physikalischen Uhren Grundlagen

Mehr

Verteilte Systeme. Diffusionsalgorithmen. Secure Identity Research Group

Verteilte Systeme. Diffusionsalgorithmen. Secure Identity Research Group Verteilte Systeme Diffusionsalgorithmen Diffusionsalgorithmen Definition: Ein verteilter Diffusionsalgorithmus auf einem Beliebigen Graphen startet in einem Zustand, in dem alle Knoten des Graphen idle

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

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

Prof. Dr. Uwe Brinkschulte. Lehrstuhl für Eingebettete Systeme Prof. Dr. Uwe Brinkschulte Lehrstuhl für Eingebettete Systeme brinks@es.cs.uni-frankfurt.de Robert-Mayer-Straße 11-15 Sekretariat: Linda Stapleton, Raum 211a stapleton@es.cs.uni-frankfurt.de 1 Forschungsgebiete

Mehr

Der O(log n)-algorithmus. Token-basierte Algorithmen. - Grundidee: "Token zu mir" an alle anderen senden. - Andere Idee: Spannenden Baum verwenden

Der O(log n)-algorithmus. Token-basierte Algorithmen. - Grundidee: Token zu mir an alle anderen senden. - Andere Idee: Spannenden Baum verwenden Token-basierte Algorithmen - Grundidee: "Token zu mir" an alle anderen senden - per broadcast (falls entspr. Kommunikationsprimitiv existiert) - oder z.b. mittels Echo-Algorithmus - Aufwand ist hoch, wenn

Mehr

Inhalt. Organisatorisches. Verteilte Algorithmen Überblick 4. Verteilte Systeme. Formales Modell Algorithmus

Inhalt. Organisatorisches. Verteilte Algorithmen Überblick 4. Verteilte Systeme. Formales Modell Algorithmus 1 2 Organisatorisches Inhalt Webseite zur Vorlesung: /teaching/ss_05/algosens/ Folien zur Vorlesung und Übung (soweit verfügbar) Übungsblätter Referenzen auf weiterführende Literatur Ankündigungen zur

Mehr

Verteilte Systeme. Übereinstimmung und Koordination

Verteilte Systeme. Übereinstimmung und Koordination Verteilte Systeme Übereinstimmung und Koordination 1 Wahlen 2 Wahl-Algorithmen In vielen verteilten Algorithmen benötigt man einen Prozeß, der eine irgendwie geartete besondere Rolle spielt, z.b. als Koordinator,

Mehr

Verklemmungen - Deadlocks

Verklemmungen - Deadlocks Verklemmungen - Deadlocks Betriebsmittel Verklemmung Vogelstrauss Algorithmus Erkennung und Auflösung Vermeidung SS2001 Prof. H.D. Clausen - unisal 1 Kritische Betriebsmittel Beispiele Drucker Magnetbandgeräte

Mehr

Überblick. Zeit Motivation Network Time Protocol (NTP) Logische Uhren. c td VS (SS16) Zeit 9 1

Überblick. Zeit Motivation Network Time Protocol (NTP) Logische Uhren. c td VS (SS16) Zeit 9 1 Überblick Zeit Motivation Network Time Protocol (NTP) Logische Uhren c td VS (SS16) Zeit 9 1 Motivation Zeit als Mittel zur Reihenfolgebestimmung (Beispiele) Erkennung von Modifikationen an Dateien (z.

Mehr

Motivation. Überblick. Motivation. Sequentielle Verfahren

Motivation. Überblick. Motivation. Sequentielle Verfahren Überblick Motivation Wahlalgorithmen Motivation Grundlagen Chang-Roberts-Algorithmus Wellenverfahren Adoptionsverfahren Problem: Wahl eines Anführerknotens szenarien Koordinierung verteilter Aktionen Erzeugung

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

Gegenseitiger Ausschluss: Überblick. Gegenseitiger Ausschluss. Gegenseitiger Ausschluss: Überblick. Gegenseitiger Ausschluss: Überblick

Gegenseitiger Ausschluss: Überblick. Gegenseitiger Ausschluss. Gegenseitiger Ausschluss: Überblick. Gegenseitiger Ausschluss: Überblick Gegenseitiger Ausschluss Gegenseitiger Ausschluss: Überblick Problemstellung Zentraler Koordinator: ich will ich will Mehrere Prozesse greifen auf gemeinsame Daten/essourcen zu; dieser Zugriff muss koordiniert

Mehr

Verteilte Algorithmen

Verteilte Algorithmen Verteilte Softwaresysteme Verteilte Algorithmen Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 18.06.2018 21:08 Inhaltsverzeichnis Verteilt versus zentralisiert 1 Unterschiede....................................

Mehr

Überblick. Zeit in verteilten Systemen. Echtzeit-basierte Uhren. Synchronsation von Echtzeit-Uhren: NTP, PTP

Überblick. Zeit in verteilten Systemen. Echtzeit-basierte Uhren. Synchronsation von Echtzeit-Uhren: NTP, PTP Überblick Zeit in verteilten Systemen Ist Ereignis A auf Knoten X passiert bevor B auf Y passiert ist? Beispiele: Internet-Auktion, Industrie-Steuerungen,... Verteilte Synchronisation Zeit in verteilten

Mehr

9 Verteilte Verklemmungserkennung

9 Verteilte Verklemmungserkennung 9 Verteilte Verklemmungserkennung 9.1 Grundlagen Für die Existenz einer Verklemmung notwendige Bedingungen Exklusive Betriebsmittelbelegung Betriebsmittel können nachgefordert werden Betriebsmittel können

Mehr

Bully-Algorithmus Krebs Florian, Kus Matthias, Pisselhoy Andreas, Schwab Benjamin, Heinrich Jörg

Bully-Algorithmus Krebs Florian, Kus Matthias, Pisselhoy Andreas, Schwab Benjamin, Heinrich Jörg Bully-Algorithmus Krebs Florian, Kus Matthias, Pisselhoy Andreas, Schwab Benjamin, Heinrich Jörg Programmierung verteilter Systeme Lab Institut für Informatik Universität Augsburg Universitätsstraße 14,

Mehr

3. Übung zur Vorlesung Verteilte Betriebssysteme

3. Übung zur Vorlesung Verteilte Betriebssysteme UNIVERSITÄT ULM Fakultät für Informatik Verteilte Systeme Prof. Dr. Peter Schulthess Markus Fakler 3. Übung zur Vorlesung Verteilte Betriebssysteme 21.11.2007 Aufgabe 1: Verteilte Algorithmen (3 + 1 +

Mehr

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

Technische Universität München WS 2006/2007 Fakultät für Informatik 15. Februar 2007 Prof. Dr. A. Knoll Technische Universität München WS 2006/2007 Fakultät für Informatik 15. Februar 2007 Prof. Dr. A. Knoll Lösungsvorschläge der Klausur zu Echtzeitsysteme Aufgabe 1 Wissensfragen (Lösungsvorschlag) (30 Punkte)

Mehr

Heute. Algorithmen für Ad-hoc- und Sensornetze. Erinnerung: MAC-Layer. Erinnerung: Färbungen. Definition

Heute. Algorithmen für Ad-hoc- und Sensornetze. Erinnerung: MAC-Layer. Erinnerung: Färbungen. Definition Heute Algorithmen für Ad-hoc- und Sensornetze VL 0 Eine kurze Geschichte vom Färben (Teil ) Medium Access Control / Färbungen, Teil kurze Wiederholung Schöner verteilter Färbungsalgorithmus Markus Völker

Mehr

9: Verteilte Algorithmen

9: Verteilte Algorithmen 9: Verteilte Algorithmen Verteiltes System: Zusammenschluss unabhängiger Computer ( Knoten ), das sich für den Benutzer als einzelnes System präsentiert. (Begriffsbildung nach A. Tanenbaum hatten wir schon)

Mehr

Überblick. Multicast Motivation Grundlagen Zustellungsgarantien Ordnungsgarantien Paxos. c td VS (SS17) Multicast 7 1

Überblick. Multicast Motivation Grundlagen Zustellungsgarantien Ordnungsgarantien Paxos. c td VS (SS17) Multicast 7 1 Überblick Multicast Motivation Grundlagen Zustellungsgarantien Ordnungsgarantien Paxos c td VS (SS17) Multicast 7 1 Motivation Fehlertoleranz durch Replikation Redundante Applikationsinstanzen auf unterschiedlichen

Mehr

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7 1 Kürzeste Pfade Woche 6 7 Hier arbeiten wir mit gewichteten Graphen, d.h. Graphen, deren Kanten mit einer Zahl gewichtet werden. Wir bezeichnen die Gewichtsfunktion mit l : E R. Wir wollen einen kürzesten

Mehr

Christian Rieck, Arne Schmidt

Christian Rieck, Arne Schmidt Institute of Operating Systems and Computer Networks Algorithms Group Algorithmen und Datenstrukturen Wintersemester 207/208 Übung#5, 2.2.207 Christian Rieck, Arne Schmidt Bäume Satz Jeder gerichtete Baum

Mehr

Integriertes Seminar Datenbanken und Informationssysteme. Was sind Peer-to-Peer Systeme? Wie kann man diese effizient nutzen?

Integriertes Seminar Datenbanken und Informationssysteme. Was sind Peer-to-Peer Systeme? Wie kann man diese effizient nutzen? Integriertes Seminar Datenbanken und Informationssysteme P2P-Computing Lehrgebiet Datenverwaltungssysteme Prof. Dr. Dr. h.c. Härder Prof. Dr. Deßloch Björn Jung b_jun@informatik.uni-kl.de Technische Universität

Mehr

Übersicht. Nebenläufige Programmierung: Praxis und Semantik. Synchronisation (4) Eine untere Schranke für den Platzbedarf

Übersicht. Nebenläufige Programmierung: Praxis und Semantik. Synchronisation (4) Eine untere Schranke für den Platzbedarf Übersicht Komplexitätsresultate Aktuelle Themen zu Informatik der Systeme: Nebenläufige Programmierung: Praxis und Semantik Synchronisation (4) Drei Komplexitätsresultate Eine genaue Schranke für den Platzbedarf

Mehr

Überblick. Motivation. Motivation. Erzeugung eines virtuellen Baums beim Systemstart

Überblick. Motivation. Motivation. Erzeugung eines virtuellen Baums beim Systemstart Überblick Motivation Wahlalgorithmen Motivation Grundlagen Wellenverfahren Adoptionsverfahren Problem: Wahl eines Anführerknotens szenarien Koordinierung verteilter Aktionen Erzeugung systemweit eindeutiger

Mehr

Pthreads. David Klaftenegger. Seminar: Multicore Programmierung Sommersemester

Pthreads. David Klaftenegger. Seminar: Multicore Programmierung Sommersemester Seminar: Multicore Programmierung Sommersemester 2009 16.07.2009 Inhaltsverzeichnis 1 Speichermodell 2 3 Implementierungsvielfalt Prioritätsinversion 4 Threads Speichermodell Was sind Threads innerhalb

Mehr

Kontrollflüsse. Dining Philosophers. 6. Verklemmungen. Systemsoftware. Seite 6.1. (c) 2002, Prof. Dr. P. Sturm, Universität Trier

Kontrollflüsse. Dining Philosophers. 6. Verklemmungen. Systemsoftware. Seite 6.1. (c) 2002, Prof. Dr. P. Sturm, Universität Trier Kontrollflüsse 6. Verklemmungen Dining Philosophers Philosophen wechseln zwischen zwei Zuständen Denken Essen Hauptgericht Reis Pur n Sitzplätze Links Stäbchen Philosoph braucht rechtes und linkes Stäbchen

Mehr

Motivation Algorithmen für Ad-hoc- und Sensornetze. Ad-hoc-Lösung: CSMA/CA. VL 10 Eine kurze Geschichte vom Färben

Motivation Algorithmen für Ad-hoc- und Sensornetze. Ad-hoc-Lösung: CSMA/CA. VL 10 Eine kurze Geschichte vom Färben Motivation Algorithmen für Ad-hoc- und Sensornetze VL 0 Eine kurze Geschichte vom Färben Dr. rer. nat. Bastian Katz. Juli 009 (Version vom. Juli 009) Kommunikation im drahtlosen Kanal ist nicht beliebig

Mehr

Heute. Medium Access Control / Färbungen, Teil 2. Kapazität & Scheduling. kurze Wiederholung Schöner verteilter Färbungsalgorithmus

Heute. Medium Access Control / Färbungen, Teil 2. Kapazität & Scheduling. kurze Wiederholung Schöner verteilter Färbungsalgorithmus Heute Medium Access Control / Färbungen, Teil kurze Wiederholung Schöner verteilter Färbungsalgorithmus Kapazität & Scheduling Interferenz etwas realistischer neue Probleme und Herangehensweisen VL 0 Eine

Mehr

Verteilte Systeme. Graphenalgorithmen. Secure Identity Research Group

Verteilte Systeme. Graphenalgorithmen. Secure Identity Research Group Verteilte Systeme Graphenalgorithmen Allgemeine Netzwerke Reale Computernetze sind meist keine Ringe Beliebige Netze lassen sich als Graph modellieren:g=(v,e) Knoten V (Prozessen, Stationen) Kanten E (Kanälen,

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

Grundlagen verteilter Systeme

Grundlagen verteilter Systeme Universität Augsburg Institut für Informatik Prof. Dr. Bernhard Bauer Stephan Roser Viviane Schöbel Wintersemester 07/08 Übungsblatt 5 08.01.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1:

Mehr

Deadlocks. System hat nur begrenzte Ressourcen (Ressourcentypen) Hauptspeicher Externer Speicher Drucker File

Deadlocks. System hat nur begrenzte Ressourcen (Ressourcentypen) Hauptspeicher Externer Speicher Drucker File Kapitel V Deadlocks (Verklemmungen) 1 Deadlocks System hat nur begrenzte Ressourcen (Ressourcentypen) Hauptspeicher Externer Speicher Drucker File Prozesse benötigen Genehmigung vor der Benutzung von Ressourcen.

Mehr

Prof. Dr. Th. Letschert CS5001. Verteilte Systeme. Master of Science (Informatik) - Formalisierungen, Logische Zeit - Th Letschert FH Gießen-Friedberg

Prof. Dr. Th. Letschert CS5001. Verteilte Systeme. Master of Science (Informatik) - Formalisierungen, Logische Zeit - Th Letschert FH Gießen-Friedberg Prof. Dr. Th. Letschert CS5 Master of Science (Informatik) - Formalisierungen, Logische Zeit - Th Letschert FH Gießen-Friedberg Formalisierung verteilter Berechnungen Logische Zeit 2 Formalisierung verteilter

Mehr

2.3 Prozessverwaltung

2.3 Prozessverwaltung Realisierung eines Semaphors: Einem Semaphor liegt genau genommen die Datenstruktur Tupel zugrunde Speziell speichert ein Semaphor zwei Informationen: Der Wert des Semaphors (0 oder 1 bei einem binären

Mehr

Vorlesung "Verteilte Systeme" Sommersemester Verteilte Systeme. 8. Verteilte Terminierung

Vorlesung Verteilte Systeme Sommersemester Verteilte Systeme. 8. Verteilte Terminierung Verteilte Systeme 8. Verteilte Terminierung Verteilte Terminierung Im sequentiellen Fall stellt sich das Problem nicht Zwei Terminierungsvarianten Kommunikationsorientierte Terminierung Beispiel Alle Prozesse

Mehr

Nicht-blockierende Synchronisation für Echtzeitsysteme

Nicht-blockierende Synchronisation für Echtzeitsysteme Nicht-blockierende Synchronisation für Echtzeitsysteme Seminar Mobile Systeme Florian Schricker 15. März 2005 Seminarleiter: Prof. Dr. Dieter Zöbel 1 INHALTSVERZEICHNIS INHALTSVERZEICHNIS Inhaltsverzeichnis

Mehr

Grundlagen verteilter Systeme

Grundlagen verteilter Systeme Universität Augsburg Institut für Informatik Prof. Dr. Bernhard Bauer Stephan Roser Viviane Schöbel Aufgabe 1: Wintersemester 07/08 Übungsblatt 6 15.01.08 Grundlagen verteilter Systeme Lösungsvorschlag

Mehr

Algorithmen & Komplexität

Algorithmen & Komplexität Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch Kürzeste Pfade Problem Gegeben Netzwerk: Graph G = (V, E), Gewichtsfunktion w: E N Zwei Knoten: s, t Kantenzug/Weg

Mehr

Vorlesung "Verteilte Systeme" Sommersemester 1999. Verteilte Systeme NTP) Verteilte Systeme, Sommersemester 1999 Folie 4.2

Vorlesung Verteilte Systeme Sommersemester 1999. Verteilte Systeme NTP) Verteilte Systeme, Sommersemester 1999 Folie 4.2 Verteilte Systeme 4. Zeit Ansätze Pragmatisch: Uhrensynchronisation Abgleich der lokalen Uhren Beispiele Zeitabgleich nach F. Christian Berkeley-Algorithmus Verteilte Synchronisation Network Time Protocol

Mehr

Realisierung von atomarem Broadcast

Realisierung von atomarem Broadcast Realisierung von atomarem Broadcast Verfahren berücksichtigt auch Nachrichtenverluste und gecrashte Prozesse 2. Lösung: Token, das auf einem (logischen) Ring kreist Token = Senderecht (Token weitergeben!)

Mehr

Was machen wir heute? Betriebssysteme Tutorium 3. Organisatorisches. Prozesskontrollblock (PCB) Programmieraufgaben. Frage 3.1.a

Was machen wir heute? Betriebssysteme Tutorium 3. Organisatorisches. Prozesskontrollblock (PCB) Programmieraufgaben. Frage 3.1.a Was machen wir heute? Betriebssysteme Tutorium 3 Philipp Kirchhofer philipp.kirchhofer@student.kit.edu http://www.stud.uni-karlsruhe.de/~uxbtt/ Lehrstuhl Systemarchitektur Universität Karlsruhe (TH) 1

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

Algorithmen für Ad-hoc- und Sensornetze VL 10 Eine kurze Geschichte vom Färben

Algorithmen für Ad-hoc- und Sensornetze VL 10 Eine kurze Geschichte vom Färben Algorithmen für Ad-hoc- und Sensornetze VL 0 Eine kurze Geschichte vom Färben Dr. rer. nat. Bastian Katz. Juli 2009 (Version 3 vom 3. Juli 2009) Motivation Kommunikation im drahtlosen Kanal ist nicht beliebig

Mehr

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012

Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester 2012 Automaten und Formale Sprachen alias Theoretische Informatik Sommersemester 2012 Dr. Sander Bruggink Übungsleitung: Jan Stückrath Sander Bruggink Automaten und Formale Sprachen 1 Abgeschlossenheit (Definition)

Mehr

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

Test (Lösungen) Betriebssysteme, Rechnernetze und verteilte Systeme Seite 1 Test (Lösungen) Betriebssysteme, Rechnernetze und verteilte Systeme 1 11.07.2007 Hinweise: Bevor Sie mit der Bearbeitung der Aufgaben beginnen, müssen Sie auf allen Blättern Ihren Namen und Ihre

Mehr

Informatik 12 Kapitel 2 - Kommunikation und Synchronisation von Prozessen

Informatik 12 Kapitel 2 - Kommunikation und Synchronisation von Prozessen Fachschaft Informatik Informatik 12 Kapitel 2 - Kommunikation und Synchronisation von Prozessen Michael Steinhuber König-Karlmann-Gymnasium Altötting 9. Februar 2017 Folie 1/40 Inhaltsverzeichnis I 1 Kommunikation

Mehr

Tafelübung zu BSRvS1. 3. Philosophen. Fortsetzung Grundlagen C-Programmierung

Tafelübung zu BSRvS1. 3. Philosophen.  Fortsetzung Grundlagen C-Programmierung Tafelübung zu BSRvS1 3. Philosophen Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund olaf.spinczyk@tu-dortmund.de http://ess.cs.uni-dortmund.de/teaching/ss2008/bsrvs1/exercises/

Mehr

3. Philosophen. Tafelübung zu BSRvS1. Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware. Lehrstuhl für Informatik 12 TU Dortmund

3. Philosophen. Tafelübung zu BSRvS1. Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware. Lehrstuhl für Informatik 12 TU Dortmund Tafelübung zu BSRvS1 3. Philosophen Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund olaf.spinczyk@tu-dortmund.de http://ess.cs.uni-dortmund.de/teaching/ss2008/bsrvs1/exercises/

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Graphen (1) Darstellung Traversierung Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 441 Generalisierung von Bäumen Verallgemeinerung (von Listen zu Graphen)

Mehr

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard Systeme I: Betriebssysteme Kapitel 4 Prozesse Wolfram Burgard Version 18.11.2015 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen

Mehr

Realisierung asynchroner Client/Server-Kommunikation im Mobilfunk

Realisierung asynchroner Client/Server-Kommunikation im Mobilfunk Realisierung asynchroner Client/Server-Kommunikation im Mobilfunk Florian Miess, Jörg Seifert und Prof. Dr. Michael Massoth 31.05.2007 1 Agenda Probleme mobiler Anwendungen Motivation Middleware Serviceschicht

Mehr

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe 3. Elementare Graphalgorithmen und Anwendungen 4. Minimal spannende Bäume 5. Kürzeste Pfade 6. Traveling Salesman Problem 7. Flüsse

Mehr

Distributed Flat Transaction

Distributed Flat Transaction Distributed Flat Transaction Angenommen, ein Benutzer geht zu einem Reisebüro um dort eine Urlaubsreise zu buchen. Nachdem er den Flug, das Hotel und den Mietwagen selektiert hat, beschließt das Reisebüro,

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 4 Prof. Peter F. Stadler & Dr. Christian Höner zu Siederdissen Bioinformatik/IZBI Institut für Informatik & Interdisziplinäres Zentrum für Bioinformatik Universität

Mehr

Randomisierte Datenstrukturen

Randomisierte Datenstrukturen Seminar über Algorithmen DozentInnen: Helmut Alt, Claudia Klost Randomisierte Datenstrukturen Ralph Schäfermeier 13. 2. 2007 Das Verwalten von Mengen, so dass ein schneller Zugriff auf deren Elemente gewährleistet

Mehr

Verteilte Systeme - Übung

Verteilte Systeme - Übung Verteilte Systeme - Übung Schriftliche Übungen Dienen der Klausurvorbereitung Zwei Teile: Serie A: Okt - Nov Serie B: Nov - Jan 3% der Endnote je Serie Ansprechpartner: Harald Vogt Heute:

Mehr

Überblick Wintersemester 2014/2015

Überblick Wintersemester 2014/2015 Überblick Wintersemester 2014/2015 Prof. Dr. Peter Mandl Verteilte Systeme Einführung und Überblick Zeitsynchronisation Wahl und Übereinstimmung RPC, verteilte Objekte und Dienste Verteilte Transaktionen

Mehr

Verteilter wechselseitiger Ausschluss

Verteilter wechselseitiger Ausschluss Westfälische Wilhelms-Universität Münster Ausarbeitung Verteilter wechselseitiger Ausschluss im Rahmen des Seminars Parallele und Verteilte Programmierung Jens Ehlers Themensteller: Prof. Dr. Herbert Kuchen

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Heaps Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 469 Prioritätswarteschlange Problem Häufig ist das Prinzip einer einfachen Warteschlangen-Datenstruktur

Mehr

Klausur zur Vorlesung Grundlagen der Betriebssysteme

Klausur zur Vorlesung Grundlagen der Betriebssysteme Prof. Dr. L. Wegner Dipl.-Math. K. Schweinsberg Klausur zur Vorlesung Grundlagen der Betriebssysteme 19.2.2004 Name:... Vorname:... Matrikelnr.:... Studiengang:... Hinweise: Bearbeitungszeit 2 Stunden.

Mehr

Praktikable Einigungsalgorithmen

Praktikable Einigungsalgorithmen Praktikable Einigungsalgorithmen Algorithmen für synchrone Systeme Atomarer Broadcast: siehe Aufgabe 4.4 Burns/Neiger Lamport/Shostak/Pease: Oral Messages; Signed Messages Algorithmen für asynchrone Systeme

Mehr

Parallele Prozesse. Prozeß wartet

Parallele Prozesse. Prozeß wartet Parallele Prozesse B-66 Prozeß: Ausführung eines Programmes in seinem Adressraum (zugeordneter Speicher) Parallele Prozesse: gleichzeitig auf mehreren Prozessoren laufende Prozesse p1 p2 verzahnte Prozesse:

Mehr

1. Einführung in Temporallogik CTL

1. Einführung in Temporallogik CTL 1. Einführung in Temporallogik CTL Temporallogik dient dazu, Aussagen über Abläufe über die Zeit auszudrücken und zu beweisen. Zeit wird in den hier zunächst behandelten Logiken als diskret angenommen

Mehr

Algorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8

Algorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8 ETH Zürich Institut für Theoretische Informatik Prof. Dr. Angelika Steger Florian Meier, Ralph Keusch HS 2017 Algorithmen und Komplexität Lösungsvorschlag zu Übungsblatt 8 Lösungsvorschlag zu Aufgabe 1

Mehr

Deadlock. Peter Puschner Institut für Technische Informatik

Deadlock. Peter Puschner Institut für Technische Informatik Deadlock Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at Deadlock Permanentes Blockieren einer Menge von Prozessen, die um Ressourcen konkurrieren oder miteinander kommunizieren

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Kürzeste Wege Maike Buchin 4. und 6.7.2017 Einführung Motivation: Bestimmung von kürzesten Wegen ist in vielen Anwendungen, z.b. Routenplanung, ein wichtiges Problem. Allgemeine

Mehr

Distributed Memory Computer (DMC)

Distributed Memory Computer (DMC) Distributed Memory Computer (DMC) verteilter Speicher: jeder Prozessor kann nur auf seinen lokalen Speicher zugreifen Kopplung mehrerer Prozessoren über E/A-Schnittstellen und Verbindungsnetzwerk, nicht

Mehr

Verteilte Systeme - 3. Übung

Verteilte Systeme - 3. Übung Verteilte Systeme - 3. Übung Dr. Jens Brandt Sommersemester 2011 1. Zeit in verteilten Systemen a) Nennen Sie mindestens drei verschiedene Ursachen zeitlicher Verzögerungen, die bei einem Entwurf eines

Mehr

5 Verteilte Algorithmen. vs5 1

5 Verteilte Algorithmen. vs5 1 5 Verteilte Algorithmen vs5 1 Charakterisierung eines verteilten Systems? Prozesse als Systemkomponenten: Spezifikation eines Prozesses (Vgl. Spezifikation eines ADT) syntaktisch: z.b. Ports oder Parameter

Mehr