Taxonomie Verteilter Systeme

Größe: px
Ab Seite anzeigen:

Download "Taxonomie Verteilter Systeme"

Transkript

1 Taxonomie Verteilter Systeme Jörg Domaschka Institute of Distributed Systems Faculty of Computer Science Ulm University Germany Aspectix Research Team Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

2 Begriffsklärung Taxonomie griech. táxis: griech nomía, nomos: Anordnung, Ordnung, Klasse Gesetzen folgend, Sachkunde, Verwaltung Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

3 Begriffsklärung (2) Verteiltes System Ein Verteiltes System ist eine Menge voneinander unabhängiger Computer, die dem Benutzer wie ein einzelnes kohärentes System erscheinen [TAN]. Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

4 Begriffsklärung (2) Verteiltes System Ein Verteiltes System ist eine Menge voneinander unabhängiger Computer, die dem Benutzer wie ein einzelnes kohärentes System erscheinen [TAN]. Hardware: Autonome Maschinen Unterschied zu Parallelrechnern Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

5 Begriffsklärung (2) Verteiltes System Ein Verteiltes System ist eine Menge voneinander unabhängiger Computer, die dem Benutzer wie ein einzelnes kohärentes System erscheinen [TAN]. Hardware: Autonome Maschinen Unterschied zu Parallelrechnern Software: Benutzer sieht ein System Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

6 Begriffsklärung (2) Verteiltes System Ein Verteiltes System ist eine Menge voneinander unabhängiger Computer, die dem Benutzer wie ein einzelnes kohärentes System erscheinen [TAN]. Hardware: Autonome Maschinen Unterschied zu Parallelrechnern Software: Benutzer sieht ein System Wer ist der Benutzer? Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

7 Begriffsklärung (2) Verteiltes System Ein Verteiltes System ist eine Menge voneinander unabhängiger Computer, die dem Benutzer wie ein einzelnes kohärentes System erscheinen [TAN]. Hardware: Autonome Maschinen Unterschied zu Parallelrechnern Software: Benutzer sieht ein System Wer ist der Benutzer? Warum Verteilte Systeme? Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

8 Warum Verteilte Systeme? Nur weil es technisch möglich ist, muss es noch lange keinen Sinn machen! (nach [TAN]) Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

9 Warum Verteilte Systeme? Nur weil es technisch möglich ist, muss es noch lange keinen Sinn machen! (nach [TAN]) If you do not need a distributed system, do not distribute [VER]. Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

10 Warum Verteilte Systeme? Nur weil es technisch möglich ist, muss es noch lange keinen Sinn machen! (nach [TAN]) If you do not need a distributed system, do not distribute [VER]. Warum macht es Sinn? Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

11 Warum Verteilte Systeme? Nur weil es technisch möglich ist, muss es noch lange keinen Sinn machen! (nach [TAN]) If you do not need a distributed system, do not distribute [VER]. Warum macht es Sinn? Zugriff auf entfernte Resourcen (Web Seiten, Spezialhardware, Shop, Datenbank, Rechenleistung,...) Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

12 Warum Verteilte Systeme? Nur weil es technisch möglich ist, muss es noch lange keinen Sinn machen! (nach [TAN]) If you do not need a distributed system, do not distribute [VER]. Warum macht es Sinn? Zugriff auf entfernte Resourcen (Web Seiten, Spezialhardware, Shop, Datenbank, Rechenleistung,...) Wenn schon verteilt, dann aber bitte einfach... Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

13 Warum Verteilte Systeme? Nur weil es technisch möglich ist, muss es noch lange keinen Sinn machen! (nach [TAN]) If you do not need a distributed system, do not distribute [VER]. Warum macht es Sinn? Zugriff auf entfernte Resourcen (Web Seiten, Spezialhardware, Shop, Datenbank, Rechenleistung,...) Wenn schon verteilt, dann aber bitte einfach... Transparenz: Benutzer sieht Verteilung nicht/kaum Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

14 Warum Verteilte Systeme? Nur weil es technisch möglich ist, muss es noch lange keinen Sinn machen! (nach [TAN]) If you do not need a distributed system, do not distribute [VER]. Warum macht es Sinn? Zugriff auf entfernte Resourcen (Web Seiten, Spezialhardware, Shop, Datenbank, Rechenleistung,...) Wenn schon verteilt, dann aber bitte einfach... Transparenz: Benutzer sieht Verteilung nicht/kaum... schnell und zuverlässig wäre auch nicht schlecht... Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

15 Warum Verteilte Systeme? Nur weil es technisch möglich ist, muss es noch lange keinen Sinn machen! (nach [TAN]) If you do not need a distributed system, do not distribute [VER]. Warum macht es Sinn? Zugriff auf entfernte Resourcen (Web Seiten, Spezialhardware, Shop, Datenbank, Rechenleistung,...) Wenn schon verteilt, dann aber bitte einfach... Transparenz: Benutzer sieht Verteilung nicht/kaum... schnell und zuverlässig wäre auch nicht schlecht... Skalierbarkeit und Fehlertoleranz Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

16 Warum Verteilte Systeme? Nur weil es technisch möglich ist, muss es noch lange keinen Sinn machen! (nach [TAN]) If you do not need a distributed system, do not distribute [VER]. Warum macht es Sinn? Zugriff auf entfernte Resourcen (Web Seiten, Spezialhardware, Shop, Datenbank, Rechenleistung,...) Wenn schon verteilt, dann aber bitte einfach... Transparenz: Benutzer sieht Verteilung nicht/kaum... schnell und zuverlässig wäre auch nicht schlecht... Skalierbarkeit und Fehlertoleranz... und wie sieht es mit Sicherheit aus? Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

17 Gliederung 1 Motivation 2 Arten von Verteilte Systeme 3 Ein Modell für Verteilte Systeme 4 Vom Modell zur Implementierung 5 Nicht-funktionale Eigenschaften 6 Abschließende Bemerkungen Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

18 Verteilung als Anwendungsangelegenheit Kommunizierende Anwendungen Machine A Machine B Machine C Distributed applications Network OS services Network OS services Network OS services Kernel Kernel Kernel Network Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

19 Verteilung als Anwendungsangelegenheit Kommunizierende Anwendungen PRO: Wenig Overhead Individuell auf Anwendung abgestimmt Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

20 Verteilung als Anwendungsangelegenheit Kommunizierende Anwendungen PRO: Wenig Overhead Individuell auf Anwendung abgestimmt CONTRA: Proprietär Kaum interoperabel Nicht wiederverwendbar Basisfunktionalität für jede Anwendung neu Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

21 Verteilung als Anwendungsangelegenheit Kommunizierende Anwendungen PRO: Wenig Overhead Individuell auf Anwendung abgestimmt CONTRA: Proprietär Kaum interoperabel Nicht wiederverwendbar Basisfunktionalität für jede Anwendung neu Beispiele: World Wide Web, FTP,... Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

22 Verteilung als Middlewareangelegenheit Middlewaresysteme Machine A Machine B Machine C Distributed applications Middleware services Network OS services Network OS services Network OS services Kernel Kernel Kernel Network Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

23 Verteilung als Middlewareangelegenheit Middlewaresysteme PRO: Middleware von beliebigen Anwendungen benutzbar Interoperabel Darstellungstransparenz Höherwertige Dienste Location Service Name Service Einfach zu programmieren Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

24 Verteilung als Middlewareangelegenheit Middlewaresysteme PRO: Middleware von beliebigen Anwendungen benutzbar Interoperabel Darstellungstransparenz Höherwertige Dienste Location Service Name Service Einfach zu programmieren CONTRA: Teilweise hoher Overhead teuer Middleware wird auf jeder Maschine benötigt Komplex zu programmieren Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

25 Verteilung als Middlewareangelegenheit Middlewaresysteme PRO: Middleware von beliebigen Anwendungen benutzbar Interoperabel Darstellungstransparenz Höherwertige Dienste Location Service Name Service Einfach zu programmieren CONTRA: Teilweise hoher Overhead teuer Middleware wird auf jeder Maschine benötigt Komplex zu programmieren Beispiele: CORBA, Java RMI, WebServices [WEB],... Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

26 Verteilung als Betriebssystemangelegenheit Verteilte Betriebssysteme Machine A Machine B Machine C Distributed applications Distributed operating system services Kernel Kernel Kernel Network Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

27 Verteilung als Betriebssystemangelegenheit Verteilte Betriebssysteme PRO: Verteilung völlig transparent für Anwender, Programmierer, höhere Betriebssystemdienste Verteilung wird zur Laufzeit festgelegt Geschlossenes System Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

28 Verteilung als Betriebssystemangelegenheit Verteilte Betriebssysteme PRO: Verteilung völlig transparent für Anwender, Programmierer, höhere Betriebssystemdienste Verteilung wird zur Laufzeit festgelegt Geschlossenes System CONTRA: Geschlossenes System Alle Anwendungen potentiell verteilt Hoher Entwicklungsaufwand (Treiber, Tools, Compiler) Höherer Entwicklungsaufwand bei heterogenen Systemen Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

29 Verteilung als Betriebssystemangelegenheit Verteilte Betriebssysteme PRO: Verteilung völlig transparent für Anwender, Programmierer, höhere Betriebssystemdienste Verteilung wird zur Laufzeit festgelegt Geschlossenes System CONTRA: Geschlossenes System Alle Anwendungen potentiell verteilt Hoher Entwicklungsaufwand (Treiber, Tools, Compiler) Höherer Entwicklungsaufwand bei heterogenen Systemen Beispiele: Emerald, Amoeba, Plurix/GreenOS [PLURIX],... Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

30 Verteilungsansätze im Überblick Transp arenz Prog rammiera ufwand Anwendung Middleware Betriebssystem Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

31 Verteilungsansätze im Überblick Transp arenz Prog rammiera ufwand Anwendung Middleware Betriebssystem S kalierbark eit Effizienz Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

32 Gliederung 1 Motivation 2 Arten von Verteilte Systeme 3 Ein Modell für Verteilte Systeme 4 Vom Modell zur Implementierung 5 Nicht-funktionale Eigenschaften 6 Abschließende Bemerkungen Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

33 Verteile Systeme: ein Modell Eine abstrakte Sicht Abstraktion von der Sicht des Anwenders, Programmierers Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

34 Verteile Systeme: ein Modell Eine abstrakte Sicht Abstraktion von der Sicht des Anwenders, Programmierers Aktivitätsträger auf den einzelnen Knoten Abstrakte Prozesse Kommunikationswege zwischen den Knoten Kanäle Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

35 Verteile Systeme: ein Modell Eine abstrakte Sicht Abstraktion von der Sicht des Anwenders, Programmierers Aktivitätsträger auf den einzelnen Knoten Abstrakte Prozesse Kommunikationswege zwischen den Knoten Kanäle Verteiltes System A distributed computing system is composed of several autonomous processors without shared main memory, but cooperating by message passing over a communication network [BAL]. Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

36 Kanäle Kanal Ein Kanal ist eine Verbindung zwischen Prozessen zum Austausch von Nachrichten. Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

37 Kanäle Kanal Ein Kanal ist eine Verbindung zwischen Prozessen zum Austausch von Nachrichten. Mögliche Eigenschaften: Verlustfrei (lossless) Verlust von endlich vielen Nachrichten (fair lossy) Erfindet keine neuen Nachrichten (no creation) Duplikationsfrei (no duplication) FIFO Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

38 Kanäle Kanal Ein Kanal ist eine Verbindung zwischen Prozessen zum Austausch von Nachrichten. Mögliche Eigenschaften: Verlustfrei (lossless) Verlust von endlich vielen Nachrichten (fair lossy) Erfindet keine neuen Nachrichten (no creation) Duplikationsfrei (no duplication) FIFO Entsprechung in der Realität: Physikalische Verbindung zwischen Maschinen Protokolle/Komponenten, die zwischen Sender und Empfänger liegen HW-Protokolle, SW-Protokolle, BS Puffer Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

39 Abstrakte Prozesse Abstrakter Prozess Ein abstrakter Prozess ist ein Vorgang auf einer Maschine, der einen bestimmten Algorithmus realisiert und dabei mit anderen Prozessen Nachrichten austauscht. Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

40 Abstrakte Prozesse Abstrakter Prozess Ein abstrakter Prozess ist ein Vorgang auf einer Maschine, der einen bestimmten Algorithmus realisiert und dabei mit anderen Prozessen Nachrichten austauscht. Oft: Rundenbasiert: Berechnung Nachricht Berechnung... Idealisierte Annahmen: unendlicher Speicher, Berechnungen kosten nichts,... Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

41 Abstrakte Prozesse Abstrakter Prozess Ein abstrakter Prozess ist ein Vorgang auf einer Maschine, der einen bestimmten Algorithmus realisiert und dabei mit anderen Prozessen Nachrichten austauscht. Oft: Rundenbasiert: Berechnung Nachricht Berechnung... Idealisierte Annahmen: unendlicher Speicher, Berechnungen kosten nichts,... Entsprechung in der Realität: Thread(s) BS-Prozess Gruppe von BS-Prozessen Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

42 Abstrakte Prozesse (2) Fehlermodelle: Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

43 Abstrakte Prozesse (2) Fehlermodelle: Kein Fehler Crash-Stop Crash-Recovery Eingeschränkt Byzantinisch Byzantinisch Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

44 Abstrakte Prozesse (2) Fehlermodelle: Kein Fehler Crash-Stop Crash-Recovery Eingeschränkt Byzantinisch Byzantinisch Parameter: Anzahl tolerierbare Fehler Fehlerunabhängigkeit Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

45 Synchronität Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

46 Synchronität Synchrones Verteiltes System: Nachrichtenlaufzeit und Zeit pro Operation begrenzt Obere Grenzen existieren und sind bekannt Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

47 Synchronität Synchrones Verteiltes System: Nachrichtenlaufzeit und Zeit pro Operation begrenzt Obere Grenzen existieren und sind bekannt Asynchrones Verteiltes System: Keine physikalische Zeit Nachrichtenlaufzeit und Zeit pro Operation unbegrenzt Unlösbarkeit einiger Probleme z.b. Konsensus und zuverlässige Fehlererkennung [FLP] Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

48 Synchronität Synchrones Verteiltes System: Nachrichtenlaufzeit und Zeit pro Operation begrenzt Obere Grenzen existieren und sind bekannt Asynchrones Verteiltes System: Keine physikalische Zeit Nachrichtenlaufzeit und Zeit pro Operation unbegrenzt Unlösbarkeit einiger Probleme z.b. Konsensus und zuverlässige Fehlererkennung [FLP] Entsprechung in der Realität: Reale Systeme i.d.r weder synchron noch vollständig asynchron Verwendung von Zwischenmodellen (eventual synchrony, oracles) Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

49 Gliederung 1 Motivation 2 Arten von Verteilte Systeme 3 Ein Modell für Verteilte Systeme 4 Vom Modell zur Implementierung 5 Nicht-funktionale Eigenschaften 6 Abschließende Bemerkungen Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

50 Implementierung Verteilter Anwendungen Nicht-verteilte Anwendungen: Programmiersprache Bibliotheken Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

51 Implementierung Verteilter Anwendungen Nicht-verteilte Anwendungen: Programmiersprache Bibliotheken Verteilte Anwendungen: Programmiersprache Bibliotheken Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

52 Implementierung Verteilter Anwendungen Nicht-verteilte Anwendungen: Programmiersprache Bibliotheken Verteilte Anwendungen: Programmiersprache Bibliotheken Middleware, Betriebssystem Verteilungseinheit Kommunikationsstrategie Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

53 Implementierung Verteilter Anwendungen Nicht-verteilte Anwendungen: Programmiersprache Bibliotheken Verteilte Anwendungen: Programmiersprache Bibliotheken Middleware, Betriebssystem Verteilungseinheit Kommunikationsstrategie Verteilte Systeme zu programmieren ist mehr als in einer Programmiersprache denken! Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

54 Verteiltes Programmiermodell Ein verteiltes Programmiermodell legt fest [HAUCK]: In welche Einzelteile eine Anwendung zerlegt werden kann. Wie die Art der Kommunikation zwischen den Einzelteilen aussieht. Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

55 Verteiltes Programmiermodell Ein verteiltes Programmiermodell legt fest [HAUCK]: In welche Einzelteile eine Anwendung zerlegt werden kann. Wie die Art der Kommunikation zwischen den Einzelteilen aussieht. Beispiele für Einzelteile: Daten Instruktionen Objekte Dienste Aktivitätsträger... Kombinationen davon Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

56 Verteiltes Programmiermodell Ein verteiltes Programmiermodell legt fest [HAUCK]: In welche Einzelteile eine Anwendung zerlegt werden kann. Wie die Art der Kommunikation zwischen den Einzelteilen aussieht. Beispiele für Einzelteile: Daten Instruktionen Objekte Dienste Aktivitätsträger... Kombinationen davon Häufige Kommunikationsarten: Nachrichtenbasiert Strombasiert Aufrufbasiert Speicherbasiert Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

57 Gliederung 1 Motivation 2 Arten von Verteilte Systeme 3 Ein Modell für Verteilte Systeme 4 Vom Modell zur Implementierung 5 Nicht-funktionale Eigenschaften 6 Abschließende Bemerkungen Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

58 Zuverlässigkeit/Fehlertoleranz Verteiltes System A distributed system is one in which the failure of a computer you did not even know existed can render your own computer unusable. (Leslie Lamport) Zentrale Dienste sollten: Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

59 Zuverlässigkeit/Fehlertoleranz Verteiltes System A distributed system is one in which the failure of a computer you did not even know existed can render your own computer unusable. (Leslie Lamport) Zentrale Dienste sollten: Nicht ausfallen Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

60 Zuverlässigkeit/Fehlertoleranz Verteiltes System A distributed system is one in which the failure of a computer you did not even know existed can render your own computer unusable. (Leslie Lamport) Zentrale Dienste sollten: Nicht ausfallen Unrealistisch Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

61 Zuverlässigkeit/Fehlertoleranz Verteiltes System A distributed system is one in which the failure of a computer you did not even know existed can render your own computer unusable. (Leslie Lamport) Zentrale Dienste sollten: Nicht ausfallen Unrealistisch Dezentral implementiert sein Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

62 Zuverlässigkeit/Fehlertoleranz Verteiltes System A distributed system is one in which the failure of a computer you did not even know existed can render your own computer unusable. (Leslie Lamport) Zentrale Dienste sollten: Nicht ausfallen Unrealistisch Dezentral implementiert sein Nicht immer machbar Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

63 Zuverlässigkeit/Fehlertoleranz Verteiltes System A distributed system is one in which the failure of a computer you did not even know existed can render your own computer unusable. (Leslie Lamport) Zentrale Dienste sollten: Nicht ausfallen Unrealistisch Dezentral implementiert sein Nicht immer machbar Replikation mit wenigen Replikaten Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

64 Zuverlässigkeit/Fehlertoleranz Verteiltes System A distributed system is one in which the failure of a computer you did not even know existed can render your own computer unusable. (Leslie Lamport) Zentrale Dienste sollten: Nicht ausfallen Unrealistisch Dezentral implementiert sein Nicht immer machbar Replikation mit wenigen Replikaten Konsistenz wird zum Problem Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

65 Skalierbarkeit Benutzersicht: Leistung des Systems nicht von der Zahl der Knoten abhängig Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

66 Skalierbarkeit Benutzersicht: Leistung des Systems nicht von der Zahl der Knoten abhängig Systemsicht: Hinzunahme von Knoten nicht negative für Gesamtleistung Im besten Fall: Leistung proportional zur Anzahl der Knoten Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

67 Skalierbarkeit Benutzersicht: Leistung des Systems nicht von der Zahl der Knoten abhängig Systemsicht: Hinzunahme von Knoten nicht negative für Gesamtleistung Im besten Fall: Leistung proportional zur Anzahl der Knoten Herausforderungen: Verzicht auf zentrale Einrichtungen Partitionierung von Daten Dezentrale Algorithmen (z.b. epidemische Algorithmen) Keine globalen Uhren Verzicht auf globale Informationen Ausfall von Maschinen hat keine Auswirkungen Entscheidungsfindung allein auf lokalen Informationen Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

68 Andere nicht-funktionale Eigenschaften Sicherheit: Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

69 Andere nicht-funktionale Eigenschaften Sicherheit: Verfügbarkeit Authentizität: Echtheit muss überprüfbar sein Vertraulichkeit: Information ist nur für Befugte zugänglich Integrität: Daten bleiben unverändert (Daten- und Fälschungssicherheit) Nicht-Anfechtbarkeit: Nachricht wurde versendet und empfangen Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

70 Andere nicht-funktionale Eigenschaften Sicherheit: Verfügbarkeit Authentizität: Echtheit muss überprüfbar sein Vertraulichkeit: Information ist nur für Befugte zugänglich Integrität: Daten bleiben unverändert (Daten- und Fälschungssicherheit) Nicht-Anfechtbarkeit: Nachricht wurde versendet und empfangen Dienstqualität: Anforderungen an Datenübertragung Daten- und Fehlerrate Dauer des Verbindungsaufbaus Anwendung, z.b. Voice-over-IP Video-on-Demand Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

71 Abschließende Bemerkungen Verteilte Systeme: Eine vielseitige Disziplin Verschiedene Ansätze und Sichten Theorie und Praxis Adressiert Anwender, Programmierer Noch viele offene Fragen Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

72 Abschließende Bemerkungen Verteilte Systeme: Eine vielseitige Disziplin Verschiedene Ansätze und Sichten Theorie und Praxis Adressiert Anwender, Programmierer Noch viele offene Fragen Vertiefende Veranstaltungen Architektur für verteilte Objekte (WS) Architektur für verteilte Internetdienste (SS) Betriebssysteme (SS) Multimediakommunikation (WS) Verteilte Betriebssysteme (WS) (Individual-)Praktika und Seminare Diplom-/Masterarbeiten Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

73 Jo rg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

74 Literatur [TAN] A. S. Tanenbaum and M. van Steen. Verteilte Systeme, Grundlagen und Paradigmen. [WEB] Gustavo Alonso, Fabio Casati, and Harumi Kuno. Web Services. Concepts, Architectures and Applications. [BAL] H. E. Bal. Programming Distributed Systems. [VER] P. Veríssimo and L. Rodrigues. Distributed Systems for System Architects. [FLP] M. J. Fischer, N. A. Lynch, and M. S. Paterson. Impossibility of distributed consensus with one faulty process. [HAUCK] F. J. Hauck. Dienstqualität in objektbasierten Verteilten Systemen. [PLURIX] S. Frenz, M. Schöttner, R. Göckelmann, and P. Schulthess. Transactional Cluster Computing. Jörg Domaschka (Aspectix Research Team) Taxonomie Verteilter Systeme 15. November / 28

Überblick. 2 Bestandsaufnahme 2.1 Beispiele von verteilten Systemen 2.2 Anwendungsszenarien 2.3 Vorteile 2.4 Problembereiche

Überblick. 2 Bestandsaufnahme 2.1 Beispiele von verteilten Systemen 2.2 Anwendungsszenarien 2.3 Vorteile 2.4 Problembereiche Überblick 2 Bestandsaufnahme 2.1 Beispiele von verteilten Systemen 2.2 Anwendungsszenarien 2.3 Vorteile 2.4 Problembereiche c rk,wosch,jk VS (SS 2015) 2 Bestandsaufnahme 2 1 Prozessorfarm @Google c rk,wosch,jk

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

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

Prof. Dr. Th. Letschert CS5001. Verteilte Systeme. Master of Science (Informatik) - Einleitung - Th Letschert FH Gießen-Friedberg Prof. Dr. Th. Letschert CS5001 Master of Science (Informatik) - - Th Letschert FH Gießen-Friedberg Modulnr.: CS5001 Verwendbar : Master of Science (Informatik) Master of Science (Wirtschaftsinformatik)

Mehr

Verteilte Betriebssysteme

Verteilte Betriebssysteme Verteiltes System Eine Sammlung unabhängiger Rechner, die dem Benutzer den Eindruck vermitteln, es handle sich um ein einziges System. Verteiltes Betriebssystem Betriebssystem für verteilte Systeme Verwaltet

Mehr

Geschichte der Netze und verteilten Systeme. Gründe für die Nutzung verteilter Systeme. Wünschenswerte Eigenschaften verteilter Systeme

Geschichte der Netze und verteilten Systeme. Gründe für die Nutzung verteilter Systeme. Wünschenswerte Eigenschaften verteilter Systeme Überblick Geschichte der Netze und verteilten Systeme Was ist ein Verteiltes System? Beispiele für verteilte Systeme Gründe für die Nutzung verteilter Systeme Wünschenswerte Eigenschaften verteilter Systeme

Mehr

Verteilte Systeme. Replikation & Konsistenz I. Prof. Dr. Oliver Haase

Verteilte Systeme. Replikation & Konsistenz I. Prof. Dr. Oliver Haase Verteilte Systeme Replikation & Konsistenz I Prof. Dr. Oliver Haase 1 Überblick Replikation & Konsistenz I Ziele von Replikation Replikationsmodelle datenzentriert Client-zentriert Replikation & Konsistenz

Mehr

Institut für Verteilte Systeme SS08 HASE

Institut für Verteilte Systeme SS08 HASE Institut für Verteilte Systeme SS08 HASE Prof. Dr. Peter Schulthess, Prof. Dr. Franz J. Hauck 1 Verteilte Systeme Zusammenschaltung von Rechensystemen für eine gemeinsame Aufgabe @ Systemsoftware Kommunikation,

Mehr

Lehrgebiet Verteilte und vernetzte Systeme

Lehrgebiet Verteilte und vernetzte Systeme Lehrgebiet Verteilte und vernetzte Systeme AG Vernetzte Systeme Prof. Dr. Reinhard Gotzhein AG Verteilte Systeme Prof. Dr. Jens Schmitt AG Integrierte Kommunikationssysteme Prof. Dr. Paul Müller Lehrgebiet

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

Mehrprozessorarchitekturen

Mehrprozessorarchitekturen Mehrprozessorarchitekturen (SMP, UMA/NUMA, Cluster) Arian Bär 12.07.2004 12.07.2004 Arian Bär 1 Gliederung 1. Einleitung 2. Symmetrische Multiprozessoren (SMP) Allgemeines Architektur 3. Speicherarchitekturen

Mehr

Message Oriented Middleware am Beispiel von XMLBlaster

Message Oriented Middleware am Beispiel von XMLBlaster Message Oriented Middleware am Beispiel von XMLBlaster Vortrag im Seminar XML und intelligente Systeme an der Universität Bielefeld WS 2005/2006 Vortragender: Frederic Siepmann fsiepman@techfak.uni bielefeld.de

Mehr

Lehrgebiet Verteilte und vernetzte Systeme

Lehrgebiet Verteilte und vernetzte Systeme Lehrgebiet Verteilte und vernetzte Systeme AG Vernetzte Systeme Prof. Dr. Reinhard Gotzhein AG Verteilte Systeme Prof. Dr. Jens Schmitt AG Integrierte Kommunikationssysteme Prof. Dr. Paul Müller Lehrgebiet

Mehr

Fehlertolerante verteilte Systeme, Peer-To-Peer Netzwerke

Fehlertolerante verteilte Systeme, Peer-To-Peer Netzwerke Fehlertolerante verteilte Systeme, Peer-To-Peer Netzwerke Hauptseminar im SS 2002 Hans Reiser, Rüdiger Kapitza Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebssysteme Universität Erlangen-Nürnberg

Mehr

Verteilte Systeme CS5001

Verteilte Systeme CS5001 CS5001 Th. Letschert TH Mittelhessen Gießen University of Applied Sciences Einführung Administratives Unterlagen Verwendbar: Master of Science (Informatik) Wahlpflichtfach (Theorie-Pool) Unterlagen Folien:

Mehr

A Organisatorisches A.1 A.4

A Organisatorisches A.1 A.4 1 Dozent A Organisatorisches Prof. Dr.-Ing. Franz J. Hauck Institut für Verteilte Systeme (Prof. Dr. P. Schulthess) E-mail: franz.hauck@uni-ulm.de Web: http://www-vs.informatik.uni-ulm.de/~hauck/ Sprechstunde:

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

Aufbau eines modernen Betriebssystems (Windows NT 5.0)

Aufbau eines modernen Betriebssystems (Windows NT 5.0) Aufbau eines modernen Betriebssystems (Windows NT 5.0) Moritz Mühlenthaler 14.6.2004 Proseminar KVBK Gliederung 1.Das Designproblem a) Überblick b) Design Goals c) Möglichkeiten der Strukturierung 2. Umsetzung

Mehr

Verteilte Betriebssysteme

Verteilte Betriebssysteme Vorlesung Wintersemester 2003/2004 [CS 6930] 1 Einleitung 1 1 Dozent Prof. Dr.-Ing. Franz J. Hauck bteilung Verteilte Systeme (Prof. Dr. P. Schulthess) E-mail: hauck@informatik.uni-ulm.de Sprechstunde:

Mehr

Kapitel 1: Architektur verteilter Systeme. Middleware in Java vieweg 2005 Steffen Heinzl, Markus Mathes

Kapitel 1: Architektur verteilter Systeme. Middleware in Java vieweg 2005 Steffen Heinzl, Markus Mathes Kapitel 1: Architektur verteilter Systeme Struktur eines verteilten Systems Ein verteiltes System besteht aus Menge unabhängiger Rechnersysteme Kommunikationsnetz und erbringt eine verteilte Anwendung

Mehr

1.1 Betriebssysteme Wiederholung: Was ist ein Betriebssystem? Aufgaben von Betriebssystemen. 1.2 Verteilte Systeme. Erkenntnis aus VL Betriebssysteme:

1.1 Betriebssysteme Wiederholung: Was ist ein Betriebssystem? Aufgaben von Betriebssystemen. 1.2 Verteilte Systeme. Erkenntnis aus VL Betriebssysteme: Verteilte Betriebssysteme Wintersemester 2015/2016 1.1 Betriebssysteme 1.1 Betriebssysteme Wiederholung: Was ist ein Betriebssystem? Verteilte Betriebssysteme 1. Kaitel Einführung Prof. Matthias Werner

Mehr

Gemeinsam mehr erreichen.

Gemeinsam mehr erreichen. Gemeinsam mehr erreichen. Microservices, ein Vorgehensmodell zur Softwareentwicklung - Nürnberg - 17. November 2016 "Mit unserer Begeisterung für führende Technologien vernetzen wir Systeme, Prozesse und

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

Verteilte Systeme Jürgen Nehmer, SS 2003

Verteilte Systeme Jürgen Nehmer, SS 2003 Definitionen Instanz Verteilte Systeme Jürgen Nehmer, SS 2003 Einführung Rechnervernetzung Verteiltes Programm Eine Menge autonomer Softwareinstanzen, die ein gemeinsames Problem bearbeiten und zu diesem

Mehr

Kapitel 1 Parallele Modelle Wie rechnet man parallel?

Kapitel 1 Parallele Modelle Wie rechnet man parallel? PRAM- PRAM- DAG- R UND R Coles und Kapitel 1 Wie rechnet man parallel? Vorlesung Theorie Paralleler und Verteilter Systeme vom 11. April 2008 der Das DAG- Das PRAM- Das werkmodell Institut für Theoretische

Mehr

oscan ein präemptives Echtzeit-Multitasking-Betriebssystem

oscan ein präemptives Echtzeit-Multitasking-Betriebssystem ein präemptives Echtzeit-Multitasking-Betriebssystem 2011. Vector Informatik GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V0.9 2011-10-12 Management

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

Alternative Architekturkonzepte

Alternative Architekturkonzepte Alternative Architekturkonzepte Motivation: Suche nach einer Gesamtstruktur meistens: dominante nichtfunktionale Eigenschaften legen Architektur fest Antrieb: Architekturziel Ziel: globale Betrachtung

Mehr

Automatische Verteilung in Pangaea. André Spiegel Freie Universität Berlin

Automatische Verteilung in Pangaea. André Spiegel Freie Universität Berlin Automatische Verteilung in Pangaea André Spiegel Freie Universität Berlin Einführung Pangaea ist ein System, das zentralisierte Java-Programme automatisch verteilen kann basierend auf statischer Quelltextanalyse

Mehr

Die AspectIX Middleware-Plattform

Die AspectIX Middleware-Plattform Die AspectIX Middleware-Plattform Franz J. Hauck Verteilte Systeme, Univ. Ulm 1 1 Arbeitsbereiche 1.1 QoS-Team Dienstgüte bei der Übertragung multimedialer Daten für mobile Teilnehmer nahtlose Reservierung

Mehr

<Insert Picture Here> RAC Architektur und Installation

<Insert Picture Here> RAC Architektur und Installation RAC Architektur und Installation Elmar Ströhmer Michael Künzner Oracle Server Technologies Competence Center Agenda Überblick und Architekturen von HA-Systemen Hardware Die Basis

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens aw@awilkens.com Überblick Grundlagen Definitionen Eigene Entwicklungen Datenstrukturen Elementare Datentypen Abstrakte Datentypen Elementare

Mehr

Verteilte Systeme. Überblick. Architekturelemente: Kommunikationsparadigmen. Architekturelemente: Kommunikationsteilnehmer

Verteilte Systeme. Überblick. Architekturelemente: Kommunikationsparadigmen. Architekturelemente: Kommunikationsteilnehmer Verteilte Systeme Jürgen Kleinöder Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme) www4.cs.fau.de Sommersemester 2013 http://www4.cs.fau.de/lehre/ss13/v_vs

Mehr

FEHLERTOLERANZ EINE SEHR GROBE ÜBERSICHT BETRIEBSSYSTEME UND SICHERHEIT, WS 2016/17 HERMANN HÄRTIG

FEHLERTOLERANZ EINE SEHR GROBE ÜBERSICHT BETRIEBSSYSTEME UND SICHERHEIT, WS 2016/17 HERMANN HÄRTIG Faculty of Computer Science Institute of Systems Architecture, Operating Systems Group FEHLERTOLERANZ EINE SEHR GROBE ÜBERSICHT BETRIEBSSYSTEME UND SICHERHEIT, WS 2016/17 HERMANN HÄRTIG BEGRIFFE Sicherheit/Security/Safety

Mehr

Verteilte Systeme - 5. Übung

Verteilte Systeme - 5. Übung Verteilte Systeme - 5. Übung Dr. Jens Brandt Sommersemester 2011 Transaktionen a) Erläutere was Transaktionen sind und wofür diese benötigt werden. Folge von Operationen mit bestimmten Eigenschaften: Atomicity

Mehr

Projektseminar Parallele Programmierung

Projektseminar Parallele Programmierung HTW Dresden WS 2014/2015 Organisatorisches Praktikum, 4 SWS Do. 15:00-18:20 Uhr, Z136c, 2 Doppelstunden o.g. Termin ist als Treffpunkt zu verstehen Labore Z 136c / Z 355 sind Montag und Donnerstag 15:00-18:20

Mehr

DBUS Interprozess-Kommunikation für Embedded-Plattformen

DBUS Interprozess-Kommunikation für Embedded-Plattformen DBUS Interprozess-Kommunikation für Embedded-Plattformen Andreas Schwarz Neratec Solutions AG Firmenprofil Neratec Solutions AG Produkt-Entwicklungen für kundenspezifische elektronische Produkte Produkte

Mehr

Überblick. Zeit Motivation Konvergenz-Algorithmus CNV Network Time Protocol (NTP) Logische Uhren. c td VS (SS17) Zeit 8 1

Überblick. Zeit Motivation Konvergenz-Algorithmus CNV Network Time Protocol (NTP) Logische Uhren. c td VS (SS17) Zeit 8 1 Überblick Zeit Motivation Konvergenz-Algorithmus CNV Network Time Protocol (NTP) Logische Uhren c td VS (SS17) Zeit 8 1 Motivation Zeit als Mittel zur Reihenfolgebestimmung (Beispiele) Erkennung von Modifikationen

Mehr

Parallele und verteilte Anwendungen in Java

Parallele und verteilte Anwendungen in Java Rainer Oechsle Parallele und verteilte Anwendungen in Java ISBN-10: 3-446-40714-6 ISBN-13: 978-3-446-40714-5 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-40714-5

Mehr

Verteilte Systeme - 1. Übung

Verteilte Systeme - 1. Übung Verteilte Systeme - 1. Übung Dr. Jens Brandt Sommersemester 2011 1. Rechnerverbünde Kommunikationsverbund: Beispiele: E-Mail (SMTP, POP/IMAP), Instant Messaging (XMPP, IRC, ICQ,...), Newsgroups (NNTP)

Mehr

Überblick und Aufgaben

Überblick und Aufgaben Aufgaben eines Betriebssystems Komponenten und Benutzer eines Rechnersystems Endbenutzer Applikationen Middleware Applikations- Programmierer System- Programmierer Betriebssystem Hardware 5 Aufgaben eines

Mehr

VS2 Slide 1. Verteilte Systeme. Vorlesung 2 vom Dr. Sebastian Iwanowski FH Wedel

VS2 Slide 1. Verteilte Systeme. Vorlesung 2 vom Dr. Sebastian Iwanowski FH Wedel VS2 Slide 1 Verteilte Systeme Vorlesung 2 vom 15.04.2004 Dr. Sebastian Iwanowski FH Wedel VS2 Slide 2 Inhaltlicher Umfang dieser Vorlesung Inhaltliche Voraussetzungen: Programmieren, Grundkenntnisse Java

Mehr

RavenDB, schnell und skalierbar

RavenDB, schnell und skalierbar RavenDB, schnell und skalierbar Big Data & NoSQL, Aydin Mir Mohammadi bluehands GmbH & Co.mmunication KG am@bluehands.de Immer mehr Mehr Performance Mehr Menge Mehr Verfügbarkeit Skalierung http://www.flickr.com/photos/39901968@n04/4864698533/

Mehr

Inhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 17. Kapitel 2 Architekturen 51. Kapitel 3 Prozesse 91

Inhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 17. Kapitel 2 Architekturen 51. Kapitel 3 Prozesse 91 Inhaltsverzeichnis Vorwort 13 Kapitel 1 Einleitung 17 1.1 Definition eines verteilten Systems................................ 19 1.2 Ziele........................................................ 20 1.2.1

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

Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication

Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication Evaluation of Java Messaging Middleware as a Platform for Software Agent Communication Frank Kargl Torsten Illmann Michael Weber Verteilte Systeme Universität Ulm {frank.kargl torsten.illmann weber} @informatik.uni-ulm.de

Mehr

VS3 Slide 1. Verteilte Systeme. Vorlesung 3 vom 22.04.2004 Dr. Sebastian Iwanowski FH Wedel

VS3 Slide 1. Verteilte Systeme. Vorlesung 3 vom 22.04.2004 Dr. Sebastian Iwanowski FH Wedel VS3 Slide 1 Verteilte Systeme Vorlesung 3 vom 22.04.2004 Dr. Sebastian Iwanowski FH Wedel Inhaltsverzeichnis für die Vorlesung Zur Motivation: 4 Beispiele aus der Praxis Allgemeine Anforderungen an Verteilte

Mehr

Parallelrechner (1) Anwendungen: Simulation von komplexen physikalischen oder biochemischen Vorgängen Entwurfsunterstützung virtuelle Realität

Parallelrechner (1) Anwendungen: Simulation von komplexen physikalischen oder biochemischen Vorgängen Entwurfsunterstützung virtuelle Realität Parallelrechner (1) Motivation: Bedarf für immer leistungsfähigere Rechner Leistungssteigerung eines einzelnen Rechners hat physikalische Grenzen: Geschwindigkeit von Materie Wärmeableitung Transistorgröße

Mehr

Verteilte Systeme. Einführung. Prof. Dr. Oliver Haase

Verteilte Systeme. Einführung. Prof. Dr. Oliver Haase Verteilte Systeme Einführung Prof. Dr. Oliver Haase 1 Definition A distributed system is a collection of independent computers that appears to its users as a single coherent system. - Andrew Tanenbaum

Mehr

Verteilte Systeme - Überblick

Verteilte Systeme - Überblick Verteilte Systeme - Überblick... alois.schuette@h-da.de Alois Schütte 15. Oktober 2014 1 / 11 Inhaltsverzeichnis Hier wird ein Überblick über die Veranstaltung gegeben. 1 Überblick 2 Inhalt 3 4 Praktikum

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

Protected User-Level DMA in SCI Shared Memory Umgebungen

Protected User-Level DMA in SCI Shared Memory Umgebungen Protected User-Level DMA in SCI Shared Memory Umgebungen Mario Trams University of Technology Chemnitz, Chair of Computer Architecture 6. Halle Chemnitz Seminar zu Parallelverarbeitung und Programmiersprachen

Mehr

Cilk Sprache für Parallelprogrammierung. IPD Snelting, Lehrstuhl für Programmierparadigmen

Cilk Sprache für Parallelprogrammierung. IPD Snelting, Lehrstuhl für Programmierparadigmen Cilk Sprache für Parallelprogrammierung IPD Snelting, Lehrstuhl für Programmierparadigmen David Soria Parra Geschichte Geschichte Entwickelt 1994 am MIT Laboratory for Computer Science Cilk 1: Continuations

Mehr

Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software

Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software Jens Döbler 2003 "Computer in der Chemie", WS 2003-04, Humboldt-Universität VL3 Folie 1 Grundlagen Software steuert Computersysteme

Mehr

Staff. Tim Conrad. Zeitplan. Blockseminar: Verteiltes Rechnen und Parallelprogrammierung. Sommer Semester 2013. Tim Conrad

Staff. Tim Conrad. Zeitplan. Blockseminar: Verteiltes Rechnen und Parallelprogrammierung. Sommer Semester 2013. Tim Conrad Blockseminar: Verteiltes Rechnen und Parallelprogrammierung Sommer Semester 2013 Tim Conrad Staff Tim Conrad AG Computational Proteomics email: conrad@math.fu-berlin.de Telefon: 838-51445 Büro: Raum 138,

Mehr

Betriebssysteme. Thomas Fahringer. Institut für Informatik Universität Innsbruck. VO Betriebssysteme

Betriebssysteme. Thomas Fahringer. Institut für Informatik Universität Innsbruck. VO Betriebssysteme Grundzüge der Informatik IV: Betriebssysteme Thomas Fahringer Institut für Informatik Universität Innsbruck V Thomas.Fahringer@uibk.ac.at 1 Kapitel I Betriebssysteme: Aufgaben und Überblick V 2 Was ist

Mehr

Kommunikation und Kooperative Systeme

Kommunikation und Kooperative Systeme Kommunikation und Kooperative Systeme Teil II Verteilte Dienste und Anwendungen Nik Klever FB Informatik - FH klever@fh-augsburg.de Einführung Begriffsbestimmung Kommunikation: Austausch, Übermittlung

Mehr

Hauptseminar Management von Softwaresystemen. Techniken der System-Integration EAI, Middleware, SOA, CORBA

Hauptseminar Management von Softwaresystemen. Techniken der System-Integration EAI, Middleware, SOA, CORBA Hauptseminar Management von Softwaresystemen Techniken der System-Integration EAI, Middleware, SOA, CORBA Betreuerin: Referent: Ulrike Hammerschall Alexey Krivoborodov Agenda Motivation Arten der Verteilung

Mehr

Enterprise JavaBeans Überblick

Enterprise JavaBeans Überblick Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

Mehr

Komponentenbasierte Softwareentwicklung

Komponentenbasierte Softwareentwicklung Seminar WS04 Komponentenbasierte Softwareentwicklung Karl Pauls Software-Komponente A software component is a unit of composition with contractually specified interfaces and explicit context dependencies

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

Literatur. Verteilte Systeme Hochschule Regensburg Vorlesung 1, 21.03.2012 Universitätsstraße 31, 93053 Regensburg. 1. VS: Einführung und Motivation

Literatur. Verteilte Systeme Hochschule Regensburg Vorlesung 1, 21.03.2012 Universitätsstraße 31, 93053 Regensburg. 1. VS: Einführung und Motivation Literatur Hochschule Regensburg Vorlesung 1, 21.03.2012 Universitätsstraße 31, 93053 Regensburg Prof. Dr. Jan Dünnweber Als Haupttext in allen Übungsstunden und Vorlesungen wird das Buch von Tanenbaum

Mehr

Modul Software Komponenten 01 Komponenten

Modul Software Komponenten 01 Komponenten Modul Software Komponenten 01 Komponenten Martin Jud Inhalt 1. Begriff 2. Bedeutung 3. Nutzen 4. Entwurf mit Komponenten HSLU T&A, 14.09.2008 Modul SWK - 01-Komponenten - Martin Jud 2 1. Begriff Definition

Mehr

Wissenschaftliche Vertiefung Web Services. Esslingen, 22. Januar 2016 Simon Schneider

Wissenschaftliche Vertiefung Web Services. Esslingen, 22. Januar 2016 Simon Schneider Wissenschaftliche Vertiefung Web Services Esslingen, 22. Januar 2016 Agenda 1. Einführung 2. Serviceorientierte Architektur 3. SOAP Web Service 4. Standards und Protokolle von SOAP Web Services 5. Bewertung

Mehr

CORBA. Systemprogrammierung WS 2006-2007

CORBA. Systemprogrammierung WS 2006-2007 CORBA Systemprogrammierung WS 2006-2007 Teilnehmer: Bahareh Akherattalab Babak Akherattalab Inhaltsverzeichnis: Verteilte Systeme Vergleich zwischen lokale und verteilte Systeme Verteilte Anwendungen CORBA

Mehr

Verteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016

Verteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016 Verteilte Systeme SS 2016 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 31. Mai 2016 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/14) i

Mehr

Grundlagen Rechnerarchitektur und Betriebssysteme

Grundlagen Rechnerarchitektur und Betriebssysteme Grundlagen Rechnerarchitektur und Betriebssysteme Johannes Formann Definition Computer: Eine Funktionseinheit zur Verarbeitung von Daten, wobei als Verarbeitung die Durchführung mathematischer, umformender,

Mehr

1.3 Architektur von Betriebssystemen

1.3 Architektur von Betriebssystemen 1.3 Architektur von Betriebssystemen Zentrale Aspekte: Schichtenstruktur Monolithischer Kern oder Mikrokern aufrufbasiert oder auftragsbasiert Objektorientierung bs-1.2 1 1.3.1 Schichtenstruktur Eine Schicht

Mehr

Übersicht. Nebenläufige Programmierung. Praxis und Semantik. Einleitung. Sequentielle und nebenläufige Programmierung. Warum ist. interessant?

Übersicht. Nebenläufige Programmierung. Praxis und Semantik. Einleitung. Sequentielle und nebenläufige Programmierung. Warum ist. interessant? Übersicht Aktuelle Themen zu Informatik der Systeme: Nebenläufige Programmierung: Praxis und Semantik Einleitung 1 2 der nebenläufigen Programmierung WS 2011/12 Stand der Folien: 18. Oktober 2011 1 TIDS

Mehr

6 Zusammenschaltung von Web-Services

6 Zusammenschaltung von Web-Services 6 Zusammenschaltung von Web-Services Komposition von Web-Services zu neuen Web-Services abstrakte Beschreibung der internen Struktur Workflow-Konzept abstrakte Beschreibung der Zusammenhänge und Interaktionen

Mehr

Transactional Memory for Distributed Systems

Transactional Memory for Distributed Systems Transactional Memory for Distributed Systems Michael Schöttner, Marc-Florian Müller, Kim-Thomas Möller, Michael Sonnenfroh Heinrich-Heine Universität Düsseldorf Abteilung Betriebssysteme 1 Michael Schöttner,

Mehr

Verteilte Systeme Prof. Dr. Stefan Fischer

Verteilte Systeme Prof. Dr. Stefan Fischer TU Braunschweig Institut für Betriebssysteme und Rechnerverbund Organisation und Überblick Überblick Organisation der Veranstaltung Prüfungen Inhaltsüberblick Voraussetzungen Literatur 0-2 Organisation

Mehr

Software-Engineering Seminar, Summer AG Softech FB Informatik TU Kaiserslautern

Software-Engineering Seminar, Summer AG Softech FB Informatik TU Kaiserslautern Software-Engineering Seminar, Summer 2016 AG Softech FB Informatik TU Kaiserslautern Studenten Fragen: Studienfach? Software-Entwicklung 3 gehört? Erfahrungen in Programmierung mit Nebenläufigkeit? Zum

Mehr

11. Komponenten Grundlagen der Programmierung 1 (Java)

11. Komponenten Grundlagen der Programmierung 1 (Java) 11. Komponenten Grundlagen der Programmierung 1 (Java) Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 10. Januar 2006 Einordnung im Kontext der Vorlesung

Mehr

Betriebssysteme WS Betriebssysteme. Prof. Hannelore Frank. Einführung. Prozesse und Threads. Scheduling. Synchronisation

Betriebssysteme WS Betriebssysteme. Prof. Hannelore Frank. Einführung. Prozesse und Threads. Scheduling. Synchronisation WS 2007 Überblick 1 2 3 CPU- 4 nebenläufiger Prozesse 5 Hauptspeicherverwaltung 6 Dateisystem 7 Ein-/Ausgabe Literatur Eduard Glatz:. Grundlagen, Konzepte, Systemprogrammierung dpunkt.verlag, 2006, ISBN

Mehr

Client/Server-Systeme

Client/Server-Systeme Fachbereich Informatik Projektgruppe KOSI Kooperative Spiele im Internet Client/Server-Systeme Vortragender Jan-Ole Janssen 26. November 2000 Übersicht Teil 1 Das Client/Server-Konzept Teil 2 Client/Server-Architekturen

Mehr

Foliensatz. Theorie und Einsatz von Verbindungseinrichtungen in parallelen Rechnersystemen

Foliensatz. Theorie und Einsatz von Verbindungseinrichtungen in parallelen Rechnersystemen Foliensatz Center for Information Services and High Performance Computing (ZIH) Theorie und Einsatz von Verbindungseinrichtungen in parallelen Rechnersystemen Hochgeschwindigkeitskommunikationen 13. Juli

Mehr

Compute Unified Device Architecture CUDA

Compute Unified Device Architecture CUDA Compute Unified Device Architecture 06. Februar 2012 1 / 13 Gliederung 2 / 13 : Compute Unified Device Architecture entwickelt von Nvidia Corporation spezifiziert Software- und Hardwareeigenschaften Ziel:

Mehr

Multiuser Client/Server Systeme

Multiuser Client/Server Systeme Multiuser /Server Systeme Christoph Nießner Seminar: 3D im Web Universität Paderborn Wintersemester 02/03 Übersicht Was sind /Server Systeme Wie sehen Architekturen aus Verteilung der Anwendung Protokolle

Mehr

Universität Karlsruhe (TH)

Universität Karlsruhe (TH) Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Programmtransformationen: Vom PRAM Algorithmus zum MPI Programm Prof. Dr. Walter F. Tichy Dr. Victor Pankratius Ali Jannesari Modell und

Mehr

Xcalibur-2 Alpha. Time. Christian Rempis University of Applied Sciences Bonn-Rhein-Sieg 17. Januar 2006 1

Xcalibur-2 Alpha. Time. Christian Rempis University of Applied Sciences Bonn-Rhein-Sieg 17. Januar 2006 1 Time Christian Rempis University of Applied Sciences Bonn-Rhein-Sieg 17. Januar 2006 1 Control and Command Environment for a Robotic Experimenter R&D 1 Examination Presentation by Christian Rempis Christian

Mehr

SWS im Prüfungsgebiet Module 1. Sem. 2. Sem. 3. Sem. 4. Sem. 5. Sem. 6. Sem. V Ü/L S V Ü/L S V Ü/L S V Ü/L S V Ü/L S V Ü/L S

SWS im Prüfungsgebiet Module 1. Sem. 2. Sem. 3. Sem. 4. Sem. 5. Sem. 6. Sem. V Ü/L S V Ü/L S V Ü/L S V Ü/L S V Ü/L S V Ü/L S Regelstudienplan SWS im Prüfungsgebiet Module 1. Sem. 2. Sem. 3. Sem. 4. Sem. 5. Sem. 6. Sem. V Ü/L S V Ü/L S V Ü/L S V Ü/L S V Ü/L S V Ü/L S Propädeutikum 1 1 Grundlagen der Informatik I Informatik und

Mehr

Kap. 7 IS-Infrastruktur: Zusammenfassung

Kap. 7 IS-Infrastruktur: Zusammenfassung Kapitel 7: Zusammenfassung Teil I. 1 Kap. 7 IS-Infrastruktur: Zusammenfassung In Teil I haben wir verschiedene Middleware-Lösungen zur Entwicklung (komplexer), verteilter Informationssysteme kennengelernt

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

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/2013. WebSphere MQ Teil 3

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/2013. WebSphere MQ Teil 3 UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/2013 WebSphere MQ Teil 3 Trigger el0100 Copyright W. G. Spruth,

Mehr

Architektur von REST basierten Webservices

Architektur von REST basierten Webservices 28.11.2005 Architektur von REST basierten Webservices Referent MARK ALTHOFF REST was invented by ROY T. FIELDING and RICHARD N. TAYLOR Geschichtlicher Hintergrund von REST 1994-1995 taucht der Begriff

Mehr

Netzwerkprogrammierung unter Linux und UNIX

Netzwerkprogrammierung unter Linux und UNIX Netzwerkprogrammierung unter Linux und UNIX Bearbeitet von Stefan Fischer, Walter Müller 2. Auflage 1999. Buch. XII, 228 S. Hardcover ISBN 978 3 446 21093 6 Format (B x L): 14 x 20,9 cm Gewicht: 329 g

Mehr

Computeranwendung in der Chemie Informatik für Chemiker(innen) 4. Netzwerke

Computeranwendung in der Chemie Informatik für Chemiker(innen) 4. Netzwerke Computeranwendung in der Chemie Informatik für Chemiker(innen) 4. Netzwerke Jens Döbler 2003 "Computer in der Chemie", WS 2003-04, Humboldt-Universität VL4 Folie 1 Grundlagen Netzwerke dienen dem Datenaustausch

Mehr

AVO-Übung 1. Übungsszenario, Entwicklungswerkzeuge. Andreas I. Schmied

AVO-Übung 1. Übungsszenario, Entwicklungswerkzeuge. Andreas I. Schmied AVO-Übung 1 Übungsszenario, Entwicklungswerkzeuge Andreas I. Schmied (andreas.schmied@uni-ulm.de) AspectIX-Team Abteilung Verteilte Systeme Universität Ulm WS2005 Allgemeines Übungsbetrieb Kalender-Szenario

Mehr

18 Entwicklung verteilter Systeme

18 Entwicklung verteilter Systeme 18 Entwicklung verteilter Systeme 18.0 Einführung Lernziele Verteilte Systeme 18.1 Charakteristika verteilter Systeme Entwurfsfragen Kommunikationsmodelle Middleware 18.2 Client-Server-Systeme Prozesse

Mehr

Ziele der Replikation Unterschiedliche Replikationsanforderungen Replikationsmodelle. Verteilte Systeme. 6. Konsistenz und Replikation

Ziele der Replikation Unterschiedliche Replikationsanforderungen Replikationsmodelle. Verteilte Systeme. 6. Konsistenz und Replikation 6-2 Überblick Verteilte Systeme 6. Konsistenz und Replikation Sommersemester 2011 Institut für Betriebssysteme und Rechnerverbund TU Braunschweig Dr. Christian Werner Bundesamt für Strahlenschutz Ziele

Mehr

2 Kommunikationssysteme. vs2 1

2 Kommunikationssysteme. vs2 1 2 Kommunikationssysteme vs2 Kommunikationssysteme bieten Kommunikationsdienste an, die das Senden und Empfangen von Nachrichten erlauben (sending & receiving messages) bestehen aus - Kommunikationsnetz

Mehr

PIWIN II. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler II. Vorlesung 2 SWS SS 08

PIWIN II. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler II. Vorlesung 2 SWS SS 08 PIWIN II Kap. 3: Verteilte Systeme & Rechnernetze 1 PIWIN II Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler II Vorlesung 2 SWS SS 08 Fakultät für Informatik Technische

Mehr

Prüfungsprotokoll der mündlichen Prüfung Verteilte Systeme 1678 (Bachelor Informatik)

Prüfungsprotokoll der mündlichen Prüfung Verteilte Systeme 1678 (Bachelor Informatik) Prüfungsprotokoll der mündlichen Prüfung Verteilte Systeme 1678 (Bachelor Informatik) Prüfer: Prof. Dr. Haake Semester der Prüfung: WS 10/11 Datum der Prüfung: 02.05.2011 Dauer: ca. 25 min Note: 2.0 Hier

Mehr

Interdisziplinäre fachdidaktische Übung: Formale Sprache Definitionen, Funktionen

Interdisziplinäre fachdidaktische Übung: Formale Sprache Definitionen, Funktionen Interdisziplinäre fachdidaktische Übung: Formale Sprache Definitionen, en SS 2013: Grossmann, Jenko 1 Definitionen Folgenden Begriffe werden oft synonym verwendet: Formale Sprache Programmiersprache Computersprache

Mehr

Intern: Ceph Kurzeinführung in die verteile Storage-Lösung

Intern: Ceph Kurzeinführung in die verteile Storage-Lösung Intern: Ceph Kurzeinführung in die verteile Storage-Lösung Dominik Vallendor 29.05.2017 Tralios IT GmbH www.tralios.de Motivation Lokale Speicher sind unflexibel, selbst mit Redundanzlösungen (bsp. DRBD)

Mehr

2.1 Rechnersichten 2.2 Rechnerorganisation: Aufbau und Funktionsweise

2.1 Rechnersichten 2.2 Rechnerorganisation: Aufbau und Funktionsweise Teil 1 Kapitel 2 Rechner im Überblick 2.1 Rechnersichten 2.2 Rechnerorganisation: Aufbau und Funktionsweise Frank Schmiedle Technische Informatik I 2.1 Rechnersichten Modellierung eines Rechners Zusammenspiel

Mehr

Willkommen an der ETH Zürich

Willkommen an der ETH Zürich Willkommen an der ETH Zürich Willkommen in der Informatik Gustavo Alonso, Studiendirektor,, ETH Zürich 04.11.2015 2 Informatik @ ETH seit 60 Jahren Wann Was 1948 Institut für angewandte Mathematik 1950

Mehr

Verteilte Systeme - Einleitung

Verteilte Systeme - Einleitung Verteilte Systeme - Einleitung... alois.schuette@h-da.de Alois Schütte 15. Oktober 2014 1 / 36 Inhaltsverzeichnis Ziel dieses Teils der Veranstaltung ist es, die wichtigsten Begriffe zu erklären und Abgrenzungen

Mehr

1936 von Alan Turing zum theoretischen Studium der Berechenbarkeit eingeführt Besteht aus

1936 von Alan Turing zum theoretischen Studium der Berechenbarkeit eingeführt Besteht aus //5 Abstrakte Maschinenmodelle: Turingmaschine (TM) 96 von Alan Turing zum theoretischen Studium der Berechenbarkeit eingeführt Besteht aus einem festen Teil ( "Hardware ) einem variablen Teil ( "Software

Mehr