Programma


 

Generalità e Concetti di Base

Generalità dei sistemi distribuiti
inquadramento generale e definizioni di base
sistemi distribuiti decentralizzati ed eterogenei
necessità di standardizzazione delle soluzioni (ISO/OSI ed Internet)

Concetti di base e alcuni modelli di soluzione
Si presentano alcuni modelli caratteristici, come
modelli a scambio di messaggi
modello di interazione cliente/servitore
modelli di connessione, di replicazione, ecc.

Esercitazione Preliminare: JAVA processi e thread

Ambienti Standard

Standardizzazione
Organizzazione a livelli ISO OSI
- generalità
- livello di trasporto e di rete
- livelli applicativi: sessione, presentazione

Alcuni strumenti di comunicazione di ampio utilizzo: Socket e relative primitive in Java

Protocolli TCP/IP

TCP/IP e protocolli
Suite TCP/IP: livelli di rete e trasporto

Alcuni strumenti di comunicazione di ampio utilizzo Socket in C (per UNIX)

Alcuni strumenti di riferimento: Socket JAVA

Alcuni strumenti di comunicazione di ampio utilizzo Socket e relative primitive in Java

Esercitazioni: socket in Java e in C
Clienti e servitori di base ed evoluti (select)

Applicazioni e servizi Internet

TCP/IP applicazioni

Applicazioni comuni per:
- terminale remoto virtuale
- trasferimento di file
- servizi Asincroni: mail, news, e altri.

Alcuni strumenti a larga diffusione in ambiente UNIX e Windows ai diversi livelli
Esempi di interazione in sistemi UNIX e TCP/IP
Alcune applicazioni cliente servitore sviluppate nei diversi ambienti di più comune uso

Operazioni Remote e RMI

Chiamate di Procedura Remota o RPC: caratteristiche e proprietà
Remote Method Invocation in JAVA (RMI)

Esercitazione: Progetto RMI in Java

Ancora strumenti di comunicazione: RPC

Chiamate di Procedura Remota o RPC
Uso di operazioni RPC per il supporto a NFS

Esercitazione: Progetto RPC e strumenti

Sistemi Distribuiti e Servizi

Sistemi operativi distribuiti
Sistemi di Nomi per identificare risorse
Gestione delle risorse
File system
Alcuni problemi e possibili soluzioni
Sistemi di nomi e DNS

Esercitazione finale: preparazione allo scritto