TU Wien:Verteiltes Programmieren mit Space Based Computing Middleware VU (Kühn)/Prüfung 2008-06-10 Ausarbeitung

From VoWi
Jump to navigation Jump to search

Fragen sind von hier.

Frage 1 (4 Punkte)[edit]

Frage: Skizzieren und beschreiben des Publish/Subscribe-Pattern mit Corso(andere Gruppe mit JavaSpaces) [4 Punkte]

Frage 2[edit]

Frage: Was versteht man unter P2P? Welche Kriterien soll es erfüllen?

Aus den Folien: Was ist Peer-to-Peer?

  • Rechner im Internet bieten freistehende Ressourcen:
    • Inhalt (Files), CPU, Speicherplatz, Bandbreite
  • Das P2P Paradigma ist ein natürliches, naheliegendes Konzept zur Organisation dieser Ressourcen, bei dem gleichberechtigte Rechner (Peers) im Internet miteinander kommunizieren
  • [Anm: „Peer“, „Knoten“ (Node) und „User“ werden synonym verwendet]
    • Ausnutzen von Speicherkapazitäten auf Client Rechnern
→ wesentlich billigere Lösungen
  • Vorboten: Napster, Gnutella, Groove, SETI@home

Frage 3[edit]

Frage: Erkläre Cycle Sharing SETI@Home. Wieso ist es kein echtes P2P?

Frage 4[edit]

Frage: Aufzählen der 3 Erwartungen für GRID.

Direkt aus den Folien:

  • autonome Komponenten (Peers), die in der Lage sind
    • ihr Zusammenspiel zu organisieren und
    • sich selber zu heilen (self-* Eigenschaften)
  • FlexibleZuordnung (on-demand)
    • von verfügbaren (schlafenden) Ressourcen (CPU, Memory, Netzwerk)
    • entsprechend der verlangten Last
  • Management of SLAs(Service Level Agreements)
    • Monitoring, Security, Auditing, Billingetc.

Frage 5[edit]

Frage: Welche Vorteile hat SBC vor Message Passing?

Frage 6[edit]

Frage: Aufzählen der 4 Grundfunktionen von JavaSpaces und beschreiben.

Frage 7[edit]

Frage: Aufzählen der 3 Hauptunterschiede von JavaSpaces zu XVSM.

In den Folien S. 63 (WS08) findet sich zu den generellen Konzepten von XVSM:

  • Strukturierung des Koordinationsraumes
    • Shared Structured Containers
  • MehrereKoordinationsmodelle
    • TEMPLATE, FIFO, LIFO, KEY, SET/BAG, VECTOR etc.
  • Grundkonzept Container
    • Bounded / unbounded
    • Enthält Entries:
      • Typ: Basis-Typ, Tuple, XML etc.
      • Können “matchable” sein
      • Container-Referenzen (“crefs”)
  • Core API (CAPIs) für den Zugriff:
    • Container: create, publish, lookup, destroy etc.
    • ContainerEntries: read, take, write, shift, notify, destroy etc.
  • Flexible Plug-In-Techniken (dynamische Erweiterbarkeit)
    • Für alle CAPIs
    • Auf Container oder Space Ebene ...

—Folien S. 63 (WS08)

... was ja quasi alles Unterschiede zu JavaSpaces sind.

Frage 8[edit]

Frage: Was ist der Unterschied zw. read, take, destroy im XVSM?

Frage 9[edit]

Frage: Was sind Notifications? Für was werden sie definiert?

Frage 10[edit]

Frage: Was sind Aspekte? Welche Typen gibt es? Auf welche Aktionen werden sie angehängt?

Frage 11[edit]

Frage: Was ist eine Timestamp bei CORSO und wofür werden sie benutzt?

Aus den Folien
Unterschiedliche Art der Verwendung wird über eine logische Zeitmarke gesteuert.

Frage 12[edit]

Frage: Verteilungsfunktionen bei Corso.