Distributed systems, practical sessions

TP1

tp01.pdf

Quick MPI reference in C
Introduction à MPI (in french)
A detailed Hello World
MPI 2.2 documentation - may be useful to look up some specific functions for exercises 7-10.
A less detailed Hello World

Precisions regarding the different MPI sends

TP2

tp02.pdf

TP3

tp03.pdf

Some slides about graph topologies in MPI
Chang's echo algorithm
Some slides about cartesian topologies

TP4

tp04.pdf

slides of the Erlang course

Erlang Documentation

Mini-projet (TP 5-7)

tp05.pdf

Final Session PDF

Distributed Erlang (how nodes and processes work in detail)
Erlang io for the user interface part

All Request Types

Syntax is requestName(parameters...) : expected message in return

ping() : pong()
Pings another client.

display(Atom, MyName) : ack()
Asks another client to display a message to its user. Name is the name of the sender.

connect(Name) : ack()
Asking to be connected to a client. Name is the name (for messaging purposes, not the pid) of the sender. The receiver should remember it.

clients_plz() : clients(list of Name)
Asking another client for the list of clients it knows.

route(Name, Message) : ack(NumberOfSteps)
Ask another client to route a message to a client it knows. The receiver should send an ack only when the message has reached its destination. The ack message contains the number of steps it took for the message to reach its destination (0 means the receiver was the destination, 1 means the receiver transmitted it directly to the destination).

Corba Introduction

TP8.pdf

tp08.tex

En francais :
http://www.sylbarth.com/corba/corba.html
http://lia.univ-avignon.fr/fileadmin/documents/Users/Intranet/chercheurs/linares/SupportsCours/CORBA/Intro_a_CORBA.pdf

In english:
http://www.ois.com/Products/what-is-corba.html
http://www.uniforum.chi.il.us/slides/corba/corba_ov.pdf

Corba Naming Service

TP9.pdf

A little help on Java strings
Java while
Java for

More about IDL