Gestione di un Sistema di Talk multiutente

Slides:



Advertisements
Presentazioni simili
“Niente di Nuovo” Mercatino dell’Usato
Advertisements

VIA GIULIO RATTI, CREMONA – Tel. 0372/27524
Cos’è la posta elettronica
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
CONCLUSIONE - Nucleo (o Kernel) Interagisce direttamente con lhardware Interagisce direttamente con lhardware Si occupa dellesecuzione.
Interazione Uomo - Macchina
Modulo 5 - posta elettronica
Unità D2 Database nel web. Obiettivi Comprendere il concetto di interfaccia utente Comprendere la struttura e i livelli che compongono unapplicazione.
INTERNET : ARPA sviluppa ARPANET (rete di computer per scopi militari)
Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica – Nuovo Ordinamento Relatore:
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Progetto e sviluppo di.
Università degli Studi di Modena e Reggio Emilia
Università degli Studi di Trieste FACOLTÁ DI INGEGNERIA Anno Accademico 2004/2005 Laureandi:Relatore: Alessio GUIDAChiar.mo Prof. Paolo INCHINGOLO Luca.
Reti Informatiche.
LE RETI INFORMATICHE. LE RETI LOCALI La lan (Local Area Network) è costituita da un insieme di nodi, solitamente usata in un edificio solo o in edifici.
Progetto Mini di Sistemi Distribuiti – AA 2007/08 Secure Group Communication with GDH.1 Alessandro Licata Caruso Matr:
Esercitazione con socket
2-1 Trasferimento di file: ftp Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights.
2 luglio 2006URM2 – ING- OOP0304 OL G. Cantone e A. Lomartire 1 Programmazione Orientata agli Oggetti Processi, task e thread Java (ed esempi) Università
Alessandra Doria III Workshop Software e Calcolo Moderno Martina Franca Ottobre 1999 La presentazione degli istogrammi nel sistema di Monitoring.
Breeze meeting Istruzioni per l’uso - corsisti
Breeze meeting Istruzioni per luso -tutor a cura di Patrizia Vayola.
Apprendimento di movimenti della testa tramite Hidden Markov Model
Posta elettronica ( ) chiocciola" comunemente letta at Identificativo dellutente Identificativo del computer centrale sul quale risiede.
Struttura dei sistemi operativi (panoramica)
Progettazione dei Sistemi Interattivi (a.a. 2004/05) - Lezione 13 1 La Manipolazione Diretta Sensazione di interagire con un mondo di oggetti piuttosto.
I SISTEMI OPERATIVI.
Modello di replicazione attivo e di supporto alla tolleranza ai guasti in ambito MOM Autore: Claudio Fusconi Matricola: Esame: Reti di calcolatori.
Supporto per servizi di File Hosting Presentazione di progetto per lesame di Reti di Calcolatori LS Valerio Guagliumi
Delay Tolerant Networking Service per SAMOA. Il framework SAMOA SAMOA è un framework che consente di gestire e popolare la rete sociale e propagare a.
Un sistema software per la vendita di prodotti on-line Università degli studi di Bologna Facoltà di ingegneria Reti di calcolatori L-S Studente: Rinaldi.
Distributed File System Service Dario Agostinone.
LOCALIZZAZIONE SATELLITARE GEOREFENRENZIATA. OBIETTIVI Gestire il database cartografico al fine di poter visualizzare la posizione dei mezzi localizzati,
Programmazione in Java (9) Mauro Lorenzutti. 30/09/2005Corso Java - Mauro Lorenzutti2 Scaletta I/O Evoluto Serializzazione Comunicazioni via socket JUnit.
INTRODUZIONE l sistema operativo è il primo software che lutente utilizza quando accende il computer; 1)Viene caricato nella memoria RAM con loperazione.
CASO DI SUCCESSO SM : SUPPLIERS MANAGEMENT : Facilita linterfaccia tra fornitore e azienda Due applicazioni in ambiente grafico utilizzando data base e.
Test Reti Informatiche A cura di Gaetano Vergara Se clicchi sulla risposta GIUSTA passi alla domanda successiva Se clicchi sulla risposta ERRATA passi.
Gruppo 11: Ausili Andrea Giovanni Belellixxxxxxxx Polenta Marcoxxxxxxxx Giuseppe Prencipexxxxxxxx Marco Trinastichxxxxxxxx Università Politecnica.
Cosa è una applicazione distribuita?
Reti di Calcolatori LS Professor Antonio Corradi Ingegner Dario Bottazzi Presentazione di Francesco Fiori.
Servizi Grid ed agenti mobili : un ambiente di sviluppo e delivering
1 Ripassino Reti di Computer Carasco 19/02/ Che cosa è una rete informatica? Una rete informatica è un insieme di computer connessi tra di loro.
Reti di calcolatori LS Manni Tiziano  IT e nuovi scenari applicativi …  … portabilità dei dati …  … condivisione dati …  … disponibilità.
Threads.
L’architettura a strati
Breeze meeting Istruzioni per l’uso
Progetto RE.VE.N.GE. CORBA REliable and Versatile News delivery support for aGEncies Realizzazione del Sistema di Consegna UNIVERSITA’ DEGLI STUDI DI BOLOGNA.
1 Esercitazione Sistemi distribuiti: sistemi che risisedono su più calcolatori interconnessi da una rete di comunicazione Algoritmi distribuiti: programmi.
Eprogram informatica V anno. ASP.NET Introduzione ASP.NET (Active Server Page) è il linguaggio che, sfruttando la tecnologia.NET, permette di: -scrivere.
Progetto di Ingegneria del Web Anno Accademico 2007/2008 Stefano Pigiani Bruno Ricci Marco Ruzzon.
Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 4 -Protocolli del Web Ernesto Damiani Lezione 1 – World Wide.
P2P Reliable Multicast Messenger Progetto e realizzazione di un software peer to peer per comunicazioni di gruppo.
MUSE 2 WIFI MUSic Everywhere with WIFI presentazione di Pierangeli Diego Membri del gruppo: Bambini Stefano Bergamini Andrea Pierangeli Diego AA 2006/2007.
Reti di calcolatori LS1 Service Middleware Reti di calcolatori LS progetto di Andrea Belardi Infrastruttura dedicata alla gestione di servizi disponibili.
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
Progetto e Realizzazione di un servizio di Chat Progetto di: Nicoli Leonardo Corso di: Reti di Calcolatori L-S.
Reti di Calcolatori LS - Fabio Poli 15 Giugno 2006 Sviluppo di un player di Campo Minato multigiocatore con supporto di Chat MultiCast.
Bacheca: Supporto alla creazione e diffusione di annunci basato su CORBA Corso di Reti di Calcolatori LS Prof. Antonio Corradi Progetto di Elisa Addimanda.
SnippetSearch Database di snippet bilanciato e replicato di Gianluigi Salvi Reti di calcolatori LS – Prof. A.Corradi.
Informatica Lezione 6 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Mots, programmazione collaborativa di Ettore Ferranti.
CORSO INTERNET la Posta elettronica
Le diverse età dell’uomo:. Collegamenti al Computer Corrente elettrica Lavagna Proiettore Audio AccensioneWebCam Microfono Scheda SD CD-ROM HDMI.
I sistemi operativi Funzioni principali e caratteristiche.
+ Connettersi al web Nicolò Sordoni. + Verificare se lo smartphone è connesso Per poter accedere alla rete, è consigliato innanzitutto verificare se il.
Socket programming in Java La realizzazione di un server in Java consente di scrivere una sola versione eseguibile su diverse piattaforme. Il linguaggio.
Gestire i dati: download e salvataggio. L’importanza dei dati La quasi totalità delle applicazioni hala necessità di gestire varie funzionalità relative.
EmuPro Università degli Studi del Sannio Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica Misure su Reti di Calcolatori Professore:
Socket programming in Java La realizzazione di un server in Java consente di scrivere una sola versione eseguibile su diverse piattaforme. Il linguaggio.
Controlli. ActionSheet e Alert Selezionare un’azione In molte situazioni è necessario fornire all’utente una scelta fra varie azioni disponibili. per.
Transcript della presentazione:

Gestione di un Sistema di Talk multiutente Università degli Studi di Roma “La Sapienza” Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica anno accademico 2004-05 Gestione di un Sistema di Talk multiutente Candidato Bruno Aleandri 798026

Applicazione di chat client-server in tecnologia multithread, che prevede: Registrazione dei client presso il server in fase di connessione Creazione di stanze pubbliche con moderatore Possibilità di richiedere una chat privata ad un utente Chat private possono essere accettate, rifiutate o messe in coda Lavagna grafica presente in chat pubbliche e private, con possibilità di caricare immagini di sfondo

SERVER MainThread del server accetta le connessioni dei client che arrivano sul suo ServerSocket Un nuovo thread denominato ClientHandler viene istanziato per ciascun client che si connette Ogni client viene gestito dal proprio ClientHandler fino alla sua disconnessione dal server Server tiene memoria degli utenti connessi e dei talk attivi tramite le proprie strutture dati ConnectionVector e TalkVector Oggetti Connection e Talk rappresentano rispettivamente utenti connessi e talk attivi

ClientHandler di Bruno SERVER Bruno Connection Vector Talk Vector ClientHandler di Bruno Bruno formula1 username: Talk Vector identificativo: Connection Vector Bruno formula1 formula1 Bruno moderatore: Bruno

CLIENT Le classi dell’interfaccia grafica utilizzano i metodi della classe ChatClient per inviare comandi al server a seguito di azioni dell’utente (disaccoppiamento) Classe ChatClient implementa anche un listening thread, che riceve i messaggi dal server ChatClient istanzia un ServiceThread per ogni messaggio ricevuto dal server Un’istanza di ServiceThread processa uno e un solo messaggio ServiceThread aggiorna l’interfaccia grafica tramite i metodi pubblici delle classi di quest’ultima

CLIENT ChatClient SERVER GUI del client ServiceThread

PROTOCOLLO DI COMUNICAZIONE Client e Server seguono le regole di un protocollo di comunicazione per lo scambio di messaggi. Ogni messaggio è costituito da: un codice identificativo con cui distinguere i comandi inviati dal client e le risposte del server un elenco di parametri eventualmente necessari per il processamento della richiesta/risposta Esempio: messaggio di chat inviato nel talk “formula1”: 200 formula1 <testo del messaggio>

STREAM DI OGGETTI Un pixel disegnato sulla lavagna grafica è rappresentato tramite un oggetto della classe LittlePoint. I comandi relativi al disegno devono quindi incapsulare tali oggetti: la classe Message rappresenta il generico comando inviato. Essa è provvista di: un campo stringa, contente il codice identificativo e i parametri di tipo testo un campo LittlePoint, contente l’eventuale pixel ObjectInputStream ed ObjectOutputStream utilizzati per veicolare oggetti Message.

LAVAGNA GRAFICA (1/2) Consente agli utenti partecipanti a talk pubblici e privati di tracciare disegni, anche contemporaneamente. Oltre al tracciamento di punti e linee, è possibile: utilizzare una gomma per cancellare i disegni selezionare colore e spessore del tratto, e la dimensione della gomma caricare un’immagine (JPEG o GIF) come sfondo condiviso della lavagna salvare su file, in formato JPEG, il contenuto della lavagna L’utente può aprire o chiudere la lavagna nell’ambito di ciascun talk.

LAVAGNA GRAFICA (2/2) I pixel disegnati sulla lavagna sono rappresentati dagli oggetti della classe LittlePoint. Oltre alla posizione, alla dimensione e al colore del punto, tali oggetti memorizzano anche l’eventuale immagine che si vuole condividere come sfondo della lavagna. Un campo status è utilizzato per distinguere tra oggetti rappresentanti pixel e quelli contenenti immagini, e per specificare particolari operazioni da effettuare sulla lavagna. Per permettere il refresh della lavagna, ogni utente che disegna è associato ad un vettore di LittlePoint rappresentante la sequenza di punti da lui tracciata. Un ulteriore vettore denominato timeIndex tiene memoria della sequenza con cui gli utenti hanno disegnato.