• Keine Ergebnisse gefunden

Praktische Übungen

N/A
N/A
Protected

Academic year: 2021

Aktie "Praktische Übungen"

Copied!
14
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Übungen und Prüfungen

• Endnote ergibt sich zu 20% aus bewerteten Übungen und zu 80% aus schriftlicher Prüfung

• Übungen

• 3 praktische Übungen (zu gleichen Teilen bewertet)

• theoretische Übungen (Details später)

• Schriftliche Prüfung in der Prüfungssession

• Stoff der Vorlesung

• Konzeptionelles aus den praktischen Übungen

• Theoretische Übungen

(2)

Voraussichtliche Termine

• 4.11.: Ausgabe Übung 1

• 25.11: Abnahme Übung 1

• 2.12. Besprechung Übung 1, Ausgabe Übung 2

• 23.12. Abnahme Übung 2

• 6.1. Besprechung Übung 2

(3)

Praktische Übungen

• Gruppen von 3-4 Studenten

• Rechnerräume IFW D 31, C 31, C 35

• Übungen können auch anderswo gelöst werden, die Lösungen müssen bei der Abnahme aber in obigen Räumen oder auf Laptop funktionieren

• Betreuung durch Tutoren einmal in der Woche

• Abnahme durch Tutoren in der Vorlesung am auf dem Übungsblatt angegebenen Termin, Anwesenheit aller Gruppenmitglieder erforderlich

• Besprechung der Lösungen in der Vorlesung

(4)

Praktische Übungen

• Jeder sollte einen Account haben

• Webseite mit Aufgabenstellungen, Codegerüsten, Literaturhinweisen etc:

http://www.vs.inf.ethz.ch/edu/WS0506/VS/

• Betreuer (Mattern)

• Kay Römer: roemer@inf.ethz.ch

• Matthias Ringwald: mringwal@inf.ethz.ch

• Robert Adelmann: adelmann@inf.ethz.ch

• Christian Frank: chfrank@inf.ethz.ch

(5)

Betreuungs-Termin

• Di 14-16

• Mi 14-16

• Do 14-16

(6)

Remote Procedure Call

• Aufruf von Methoden/Prozeduren über Rechnergren- zen hinweg

• Client-Stubs: Stellvertreter der Prozedur im Client

• Server-Stubs: Stellvertreter des Aufrufers im Server

(7)

Ablauf eines RPC

• Aufrufer ruft Client-Stub auf

• Client-Stub erzeugt Nachricht mit Namen und Para- metern der aufgerufenen Prozedur

• Übertragung der Nachricht zum Server-Prozess

• Server-Stub dekodiert Prozedur-Namen und Parame- ter und ruft Prozedur auf

• Server-Stub verpackt Ergebnisse in Nachricht

• Übertragung der Nachricht zum Client-Prozess

(8)

Lösungshinweise

• Codegerüste auf der Webseite

• Tips zur Implementierung:

• Nachrichtenformat

• (De-)Codieren der Nachrichten

• Verwendung der Sockets in den Client-Stubs

• Schnittstelle Dispatcher -> Server-Stubs

• Schnittstelle Server-Stubs -> Objekte

• Event-Loop des Dispatchers

(9)

Nachrichtenformat

• Was muss die Auftragsnachricht enthalten?

• Identifikation des Zielobjektes

• Name der aufgerufenen Methode

• Parameter

• Was muss die Antwortnachricht enthalten?

• Flag ob Exception aufgetreten ist

• Ergebnisse bzw. Exception

(10)

(De-)Codieren der Nachrichten

• Java-Klassen DataInputStream und DataOut- putStream sehr hilfreich!

• DataOutputStream-Methoden:

• writeUTF()

• writeLong()

• writeByte()

• flush()

• DataInputStream-Methoden:

• readUTF()

(11)

Verwendung der Sockets

• Genau eine Socket-Verbindung zwischen Client und Server

• Wird gemeinsam von mehreren Stubs benutzt

• Implementierung mittels static Klassenvariable

• Gemeinsame Basisklasse ClientStubBase für alle Client-Stubs

(12)

Schnittstelle Dispatcher/Server-Stubs

• Neu erzeugte Server-Stubs müssen beim Dispatcher registriert werden

• Trifft beim Dispatcher eine Nachricht ein, so bestimmt er den zugehörigen Server-Stub und übergibt ihm den Aufruf

• Server-Stubs bieten Methode dispatch() an

• Gemeinsame Basisklasse ServerStubBase für alle Server-Stubs

(13)

Schnittstelle Server-Stubs/Objekte

• Server-Stubs sind separate Objekte

• Beim Erzeugen eines Stubs wird im Konstruktor das zugehörige Objekt übergeben

(14)

Event-Loop des Dispatchers

• Nach der Initialisierung wird die Methode run() des Dispatchers aufgerufen

• run() wartet in einer Endlosschleife auf Verbindungs- wünsche von Clients

• Eintreffende Netzwerknachrichten werden an den zuständigen Server-Stub weitergeleitet

Referenzen

ÄHNLICHE DOKUMENTE

Instructions for connecting a console or terminal to the server controller are found in the Physical Planning and Installation Manual. Before attaching your

the system, such as printer and file server names and addresses, the setup types currently available to the printers, and the numbers of those slots containing

The Nestar CP/M utility SETREAL.COM makes such usage possible, by temporarily making available to the operating system the software that allows the user to read

For information pertaining to your network's file servers, which allow you to share hard disk memory with other network users, read the File Server User's

(containing virtual device drivers).. It may also contain a NETWORK e PROFILE configuration file. Boot diskettes are available from your system manager. Creating

Restricted applications have a password, a limit to the number of users that can connect to the application at one time, or both. You install restricted applications

Every processing element in a CS-2 system has its own dedicated interface to the communications network; a Meiko designed communications processor.. The

Specifying fonts If you created your own .Xdefaults-hostname file during a session, and you want the new font values applied to clients that are currently running, you