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
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
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 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)
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
Chiamate di Procedura Remota o RPC:
caratteristiche e proprietà
Remote Method Invocation in JAVA (RMI)
Esercitazione: Progetto RMI in Java
Chiamate di Procedura Remota o RPC
Uso di operazioni RPC per il supporto a NFS
Esercitazione: Progetto RPC e strumenti
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