Concorrenza fra processi remoti
|
|
- Bartolommeo Bertolini
- 8 anni fa
- Visualizzazioni
Transcript
1 29/10/14 CdL MAGISTRALE in INFORMATICA A.A corso di Sistemi Distribuiti 3. La concorrenza tra processi remoti nei sistemi distribuiti Riferimenti: Prof. S.Pizzutilo A.Tanenbaum,M.Van Steen Sistemi distribuiti Pearson Prentice Hall 2007 ) A.A. Garganico CdLS Ingegneria Informatica (0234) Reti di Calcolatori LS a.a. 2006/2007 Wikipedia De Leonardis Salvatore Seminari : 1) La mutua esclusione nei sist. Distr. 2) Algoritmo di Bully Siciliano Giulia Matricola seminario : Dai sistemi concorrenti a quelli distribuiti: il problema della mutua esclusione Concorrenza fra processi remoti Interazioni fra processi remoti: 1. Indesiderate e (spesso) impreviste I processi competono per le risorse al fine di poter completare la propria esecuzione, causando condizioni di attesa ed eventualmente problemi quali blocco critico o starvation. 2. Desiderate e previste I processi cooperano al fine di giungere alla soluzione di un problema complesso (Architetture client-server, in cui un processo richiede un servizio ad un altro e attende da esso la risposta) 1
2 Mutua esclusione distribuita Nel caso di accesso simultaneo ad una risorsa, occorre garantirsi che tale accesso non corrompa la risorsa o la renda inconsistente. ü Quando si hanno processi concorrenti che accedono ad un risorsa condivisa nasce il bisogno di sincronizzarli in modo tale che tale risorsa sia assegnata ad un processo alla volta (mutua esclusione). Dal punto di vista astratto il problema puo essere formulato come segue. Ci sono N processi ognuno dei quali ripete la seguente sequenza di passi di programma : <non in sezione critica> <trying protocol> sezione critica <exit protocol> <non in sezione critica> Il modello di Dijkstra In un sistema concorrente esiste uno scheduler centralizzato che permette ad un solo processo alla volta di entrare in esecuzione e quindi di evolvere secondo il suo codice. Di fatto quindi lo scheduler esegue una linearizzazione di tutte le istruzioni elementari effettuate dai vari processi. CdL in Informatica- Magistrale Università di Bari Sistemi Distribuiti - La Mutua Esclusione o Evitare interferenze e stati di inconsistenza o Deadlock (2 processi si bloccano perché aspettano uno la risposta dell altro) o Starvation (attesa indefinita della risorsa) Ø Algoritmi basati su autorizzazione Ø Algoritmi basati su token Ø Algoritmi di tipo probabilistico Ø Algoritmi di tipo deterministico ü centralizzati ü decentralizzati ü distribuiti ü basati su token 2
3 Mutua esclusione distribuita Un altra classificazione o un modo diverso di organizzare la stessa classificazione? q Soluzioni basate su token (messaggio speciale tra processi che realizza la mutua esclusione, consentendo solo al processo detentore del token la possibilità di utilizzare la risorsa. (Algoritmo token ring) q Soluzioni basate su autorizzazioni (un processo che intende usare la risorsa, prima richiede l autorizzazione ad altri). ü Algoritmo centralizzato ü Algoritmo decentralizzato ü Algoritmo distribuito In questa tipologia di algoritmi esistono diverse tecniche per coordinare la comunicazione : quorum (o votazione): si richiede il permesso di accedere ad una risorsa condivisa ad un sottoinsieme di processi (algoritmo di Maekawa). elezione: un processo si trasforma in coordinatore (l algoritmo bully, algoritmo ad anello e superpeer ) Server che gestisce una mutua esclusione mediante token Queue of requests Server Grant token p 1 1. Request token 2. Release token p 4 p 2 p 3 CdL in Informatica- Magistrale Università di Bari Sistemi Distribuiti - 3
4 Un anello di processi che si scambiano un token mutualmente esclusivo a) Un gruppo di processi non ordinati su una rete b) Un anello logico costruito via software p n p 1 p 2 p 3 p 4 Token o o o o o I processi devono essere ordinati in modo da formare un anello logico. Ogni processo deve conoscere il processo che si trova dopo di lui. Per ogni risorsa deve essere creato un token. Il token circola nell anello. Con il token si gestisce l accesso alla risorsa. Trasmissione del token sull anello (logico) e suo possesso per poter utilizzare una risorsa CdL in Informatica- Magistrale Sistemi Distribuiti Università di Bari Algoritmo basato su autorizzazione p1 p2 d) OK c) rilascio p3 a) richiesta b) OK p4 p0 processo coodinatore p5 p2 p0 p5 p4 P1 d) CdL in Informatica- Magistrale Università di Bari Sistemi Distribuiti - 4
5 Mutua esclusione con autorizzazione: un algoritmo centralizzato a) Il processo 1 chiede al coordinatore il permesso per entrare in una regione critica. Il permesso è dato. b) Il processo 2 allora chiede il permesso di accedere alla stessa risorsa. Il coordinatore NON risponde. c) Quando il processo 1 esce dalla regione critica, lo dice al coordinatore che può finalmente rispondere al processo 2. In totale 3 messaggi con 2 messaggi prima di poter usare una risorsa (ritardo). La soluzione centralizzata evita la starvation ma pone problemi sulla criticità del coordinatore. Algoritmo centralizzato q Un processo deve essere anche il coordinatore. q Quando un processo intende utilizzare una risorsa deve inviare una richiesta al coordinatore. q Il coordinatore gestisce l accesso alle risorse. 5
6 Algoritmo centralizzato Mutua esclusione con autorizzazione: Un algoritmo decentralizzato La soluzione decentrata (basata su quorum) estende il numero dei coordinatori alle n duplicazioni delle risorse disponibili (Lin et al.2004 basato su DHT). q Si suppone che le risorse siano replicate n volte ed ogni replica ha il suo coordinatore. q Ciascun coordinatore controlla l accesso ad ogni singola risorsa da parte di processi concorrenti. q La richiesta di una risorsa avviene come nell algoritmo centralizzato. q Un processo, per poter accedere ad una risorsa, dovrà ottenere un voto di maggioranza da m > n/2 coordinatori. q Quando un coordinatore vuole negare l accesso ad un processo (perché lo ha già dato ad un altro processo), deve comunicarlo al processo richiedente. N. di messaggi necessari = 3mk (k=1,2,3, tentativi) e ritardo pari a 2m E ridotto al minimo il problema del crash del coordinatore, ma è possibile la starvation quando un processo non riesce ad ottenere mai la maggioranza. 6
7 Algoritmo decentralizzato Ogni risorsa viene replicata n volte. Ogni replica deve avere il proprio coordinatore. La richiesta di una risorsa avviene come nell algoritmo centralizzato. Riduce al minimo il problema del crash da parte del coordinatore. Per accedere ad una risorsa il processo deve ricevere almeno n/2 autorizzazioni. request Processi che chiedono la risorsa replay Mutua esclusione con autorizzazione: un algoritmo distribuito L algoritmo di Lamport 1978 richiede che tutti gli eventi dispongano di un clock logico di sincronizzazione scalare e che ciascun processo gestisca una coda di richieste di accesso ad una regione critica. L algoritmo di Ricart e Agrawala (1981) richiede che ci sia un ordinamento totale di tutti gli eventi del sistema basato sui timestamp di Lamport. Quando un processo vuole accedere ad una risorsa, costruisce un messaggio contenente il nome della risorsa richiesta, il numero del processo richiedente (0,1,2) e il suo timestamp corrente. Il messaggio viene inviato a tutti i processi (compreso se stesso). L accesso alla regione critica è consentita solo al processo in coda con timestamp minore. a) 2 processi (0 e 2) vogliono entrare nella stessa regione critica nello stesso momento. b) Il processo 0 ha il timestamp (8) più basso, perciò vince. c) Quando il processo 0 finisce, invia un OK, in modo che il processo 2 possa entrare nella regione critica. N messaggi = 3(n-1), ritardo = 2(n-1) CdL in Informatica- Magistrale Università di Bari Sistemi Distribuiti 7
8 Algoritmo di Ricart e Agrawala (1981) On initialization state := RELEASED; To enter the section state := WANTED; Multicast request to all processes; T := request s timestamp; Wait until (number of replies received = (N 1)); state := HELD; request processing deferred here On receipt of a request <T i, p i > at p j (i j) if (state = HELD or (state = WANTED and (T, p j ) < (T i, p i ))) then queue request from p i without replying; else reply immediately to p i ; end if To exit the critical section state := RELEASED; reply to any queued requests; CdL in Informatica- Magistrale Università di Bari Sistemi Distribuiti - Algoritmo di Ricart e Agrawala (1981) Il processo che vuole accedere ad una sezione critica manda un messaggio di richiesta a tutti, incluso se stesso, contenente: il nome della sezione critica, il proprio identificatore ed il timestamp locale e si pone in attesa della risposta da tutti. Ottenuti tutti gli OK, entra nella sezione critica ed all uscita da essa manda OK a tutti i processi in coda. Il processo che riceve può non essere nella sezione critica e non vuole accedervi, pertanto manda OK al mittente; oppure si trova nella sezione critica e non risponde mettendo in coda locale il messaggio. Per poter accedere alla sezione critica confronta il timestamp e vince se possiede quello più basso. Quindi se il processo che possiede il timestamp più basso è un altro allora invia OK, altrimenti non risponde e pone il messaggio in coda. 8
9 Esempio di algoritmo distribuito di Ricart e Agrawala Confronto tra i metodi Algorithm Messages per entry/exit Delay before entry (in message times) Problems Centralized 3 2 Coordinator crash Distributed 2 ( n 1 ) 2 ( n 1 ) Token ring 1 to 0 to n 1 Crash of any process Lost token, process crash Decentralized 3mk (k=1,2,3, ) 2m Starvation, lower efficiency n = numero di processi m= numero di coordinatori k= tentativi di trasmissione CdL in Informatica- Magistrale Università di Bari Sistemi Distribuiti 9
10 Algoritmi di elezione del coordinatore L elezione serve per scegliere il processo che dovrà agire da coordinatore (o da iniziatore) e su cui concordano tutti gli altri. q Algoritmo di LeLann e di Chang-Roberts (ad anello) q Algoritmo bully (Gracia-Molina 1982) q Elezione in ambienti mobili Elezione del coordinatore: Algoritmo ad anello (1) ü Processi ordinati in maniera logica; ü Il processo che intende incominciare una elezione invia un messaggio col proprio identificativo lungo l anello; ü Il processo con l identificativo più alto vince. 10
11 Elezione del coordinatore: Ring Algorithm (2) Election algorithm using a ring. b) Il processo 6 invia il messaggio ricevuto al successivo (7) dal quale non riceve risposta a) Il processo 5 avvia una elezione ed invia al processo successivo (6) il suo identificativo. d) Il processo 0 invia il messaggio ricevuto (aggiungendo il suo identificativo) al processo successivo (1) c)il processo 6 invia il messaggio ricevuto (aggiungendo il suo identificativo ( 5 e 6 )) al processo successivo (0) e) e così via finchè il messaggio con tutti gli identificativi ritorna al processo 5 che riconosce il suo identificativo e lancia sull anello un messaggio dichiarando coordinatore il processo con identificativo più alto (il 6). CdL in Informatica- Magistrale Sistemi Distribuiti - Università di Bari Algoritmo ad anello (di LeLann e di Chang- Roberts) Ø Ogni processo deve avere un identificativo univoco Ø I processi formano una anello logico Ø Il processo che intende incominciare una elezione invia un messaggio al processo successivo contenente il proprio identificativo Ø Il processo con l identificativo maggiore vince l elezione 11
12 Elezione del coordinatore: algoritmo Bully Supponiamo che un qualunque processo p i invii una richiesta al coordinatore. Se dopo un tempo T la richiesta non è ancora stata soddisfatta, p i suppone che il coordinatore sia fallito, perciò indice l'elezione : a) p i invia un messaggio di elezione a tutti i processi con maggior numero di priorità; p i aspetta un tempo T per avere risposta; b) se non arrivano risposte nel tempo T, p i suppone che tutti i processi (con priorità maggiore della sua) siano falliti. Perciò p i si nomina nuovo coordinatore e avvisa tutti i processi della rete del cambiamento avvenuto. La coda e le richieste precedenti sono perse; c) se riceve almeno una risposta entro il tempo T, il suo ruolo nell'elezione è terminato. In qualunque momento, un processo può ricevere un messaggio di tipo ELEZIONE da uno dei suoi colleghi con numero più basso. All arrivo di tale messaggio, il destinatario risponde con un messaggio di tipo OK al mittente, per indicare che è attivo e prende il controllo. Il destinatario organizza un elezione, a meno che non lo stia già facendo. Alla fine tutti i processi rinunceranno tranne uno che sarà il nuovo coordinatore. Esso annuncia la sua vittoria inviando a tutti i processi un messaggio, comunicando loro che è il nuovo coordinatore con decorrenza immediata. elezione del coordinatore: Bully Algorithm a) Il processo 4 indice una Elezione tra i processi 5, 6, 7 (con identificativo maggiore), b) I processi 5 e 6 rispondono con OK, spingendo 4 a fermarsi c) 5 e 6 indicono una nuova Elezione CdL in Informatica- Magistrale Università di Bari Sistemi Distribuiti 12
13 Algoritmo bully 1 Ogni processo ha un proprio identificativo (da 0 a 7 nell esempio a lato) 2 Il processo che intende incominciare una elezione invia un messaggio a tutti i processi con l identificativo superiore al suo (il processo 4 invia un messaggio al 5, 6 e 7 in fig. a) 3 Se non riceve risposta vince l elezione ed avvisa tutti che lui è stato eletto coordinatore fig. d) 4 Se riceve anche un solo messaggio termina il proprio compito (4 riceve un messaggio di ack solo da 5 e 6) 5 Salta a (2) (il processo 5 ricomincia l elezione in fig.b) (a) (c) (b) (d) Elezione del coordinatore in ambienti wireless Nel contesto delle reti mobili (ad hoc), il problema classico dell elezione del coordinatore richiede due importanti requisiti aggiuntivi: l elezione deve tollerare cambiamenti topologici arbitrari e concorrenti e terminare eleggendo un coordinatore unico; il coodinatore eletto dovrebbe essere il most-valued fra tutti i nodi all'interno del sistema, dove il valore di un nodo è determinato da caratteristiche come la carica residua della batteria, la distanza media minima con gli altri nodi, le capacità di calcolo, ecc. Reti mobili ad hoc Si costruisce un albero per l elezione del nodo coordinatore, partendo dalla topologia iniziale della rete. u Un nodo qualsiasi può iniziare una elezione inviando un messaggio di elezione ai vicini, u Quando un nodo riceve per la prima volta un messaggio di elezione, nomina il padre come mittente ed invia il messaggio di elezione ai vicini, escluso il padre. u Quando un nodo riceve un messaggio di elezione da un nodo che non sia il padre, semplicemente invia un messaggio di avvenuta ricezione. 13
14 Esempio di MANET Università di Bari Aldo Moro - Elezione in ambienti senza fili Capacità Nodo Capacità Nodo 14
15 Algoritmo di Vasudevan(2004) Assunzioni algoritmo La rete ad hoc è modellata come un grafo non orientato che cambia nel tempo, quando i nodi si spostano. Il grafo può diventare disconnesso se la rete si divide a causa di un movimento di nodo. Sono necessarie le seguente assunzioni sui nodi e architeiura di sistema: Valore del nodo: valore di " capacità (durata baieria,.) come coordinatore della rete; ID nodo univoco: gli ID devono essere ordinabili in modo da risolvere il problema di scelta Collegamen4: i collegamens sono bidirezionali; Comportamento nodo: ogni nodo mobile può portare modifiche della topologia di rete; Comunicazione da nodo a nodo: la comunicazione è garansta solo quando il miiente e il dessnatario rimangono collegas per tuia la durata del trasferimento del messaggio. Tratto da :Paolo Tomeo e Vito Rocco Albano:Algoritmo di elezione del coordinatore nei sistemi distribuiti mobile. Seminario Sis.Dis Algoritmo di Vasudevan(2004) L'algoritmo uslizza tre Spi di messaggi: Elezione: uslizzato per la fase di "crescita" dello spanning tree. Il nodo sorgente invia un messaggio ELEZIONE a tuz i suoi vicini che a loro volta trasmeiono ai loro vicini e cosi via. Ack: uslizzato per la fase "restringimento" dello spanning tree. ConSene un idensficatore (ID) e il relasvo valore (di capacità). Ogni nodo padre confronta i messaggi ACK ricevus, scegliendo l'idensficatore del nodo con il valore di capacità più alto, e resstuisce al suo nodo padre un messaggio. Il nodo sorgente ha infine informazioni sufficiens per determinare il nodo col maggior valore di tuia la rete. Leader. Una volta che il nodo sorgente determina l idenstà del coordinatore dai messaggi ACK ricevus, trasmeie un messaggio LEADER contenente tale idenstà a tuz i nodi. Tratto da :Paolo Tomeo e Vito Rocco Albano:Algoritmo di elezione del coordinatore nei sistemi distribuiti mobile. Seminario Sis.Dis
16 Esempio: Algoritmo di Vasudevan 16
corso di Sistemi Distribuiti 3. La concorrenza tra processi remoti nei sistemi distribuiti
CdL MAGISTRALE in INFORMATICA A.A. 2015-16 corso di Sistemi Distribuiti 3. La concorrenza tra processi remoti nei sistemi distribuiti Prof. S.Pizzutilo Concorrenza fra processi remoti Interazioni fra processi
DettagliSincronizzazione distribuita: Mutua esclusione ed elezione
Sistemi Distribuiti Sincronizzazione distribuita: Mutua esclusione ed elezione 1 Mutua Esclusione (algoritmo centralizzato) a) Il Processo 1 chiede al coordinatore il permesso di entrare in una regione
DettagliIndice dei Contenuti
Corso Sistemi Distribuiti 6 cfu Docente: Prof. Marcello Castellano /24 Global State - 3 Mutua esclusione e sistemi concorrenti - 7 Algoritmi per la Mutua Esclusione - 10 Algoritmi basati su autorizzazioni
Dettagli22/05/2013. Indice dei Contenuti. Global State (1) Corso Sistemi Distribuiti 6 cfu Docente: Prof. Marcello Castellano
Corso Sistemi Distribuiti 6 cfu Docente: Prof. Marcello Castellano /24 Global State - 3 Mutua esclusione e sistemi concorrenti - 7 Algoritmi per la Mutua Esclusione - 10 Algoritmi basati su autorizzazioni
DettagliIntroduzione. Coordinazione Distribuita. Ordinamento degli eventi. Realizzazione di. Mutua Esclusione Distribuita (DME)
Coordinazione Distribuita Ordinamento degli eventi Mutua esclusione Atomicità Controllo della Concorrenza Introduzione Tutte le questioni relative alla concorrenza che si incontrano in sistemi centralizzati,
DettagliSincronizzazione e coordinamento nel distribuito
Sincronizzazione e coordinamento nel distribuito Sincronizzazione in sistemi centralizzati uso di primitive basate implicitamente sull esistenza della memoria condivisa Sincronizzazione in sistemi distribuiti
DettagliLe forme della comunicazione
28/11/13 CdL MAGISTRALE in INFORMATICA A.A. 2013-2014 corso di Sistemi Distribuiti 7. La concorrenza tra processi remoti nei sistemi distribuiti Riferimenti: Prof. S.Pizzutilo A.Tanenbaum,M.Van Steen Sistemi
DettagliCoordinazione Distribuita
Coordinazione Distribuita Ordinamento degli eventi Mutua esclusione Atomicità Controllo della Concorrenza 21.1 Introduzione Tutte le questioni relative alla concorrenza che si incontrano in sistemi centralizzati,
DettagliMutua esclusione distribuita
Sincronizzazione del clock Il clock di CPU distribuite non é sincronizzato Clock fisico (difficile) / Clock logico (semplice) In molti casi basta sincronizzare il clock logico Sincronizzazione del clock
DettagliOrdinamento degli eventi. Lezione 11. Osservazioni. Relazione verificato prima. Cenni ai sistemi operativi distribuiti 3. Coordinazione distribuita
Lezione 11 Cenni ai sistemi operativi distribuiti 3. Coordinazione distribuita Ordinamento degli eventi Un sistema monoprocessore Unico clock Unica memoria Ordinamento degli eventi Mutua esclusione Deadlock
DettagliUniversità degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi
Università degli Studi di L Aquila Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi Prof. Gaetanino Paolone Dott. Ottavio Pascale a.a.2003-2004 Progetto Campo
DettagliA intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.
Algoritmi di routing dinamici (pag.89) UdA2_L5 Nelle moderne reti si usano algoritmi dinamici, che si adattano automaticamente ai cambiamenti della rete. Questi algoritmi non sono eseguiti solo all'avvio
DettagliUniversità degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica.
Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica Corso di Sistemi Distribuiti Prof. Stefano Russo Algoritmi di mutua esclusione
DettagliAlgoritmi di mutua esclusione nei sistemi distribuiti
Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica Corso di Sistemi Distribuiti Prof. Stefano Russo Algoritmi di mutua esclusione
DettagliLaboratorio di Sistemi Distribuiti Leonardo Mariani
Laboratorio di Sistemi Distribuiti Leonardo Mariani ELECTION ALGORITHMS In molti sistemi distribuiti un processo deve agire da (o svolgere un ruolo particolare) per gli altri processi. Spesso non è importante
DettagliSincronizzazione nei Sistemi Distribuiti (parte 2)
Università degli Studi di oma Tor Vergata Facoltà di Ingegneria Sincronizzazione nei Sistemi Distribuiti (parte 2) Corso di Sistemi Distribuiti Valeria Cardellini Anno accademico 2009/0 Mutua esclusione
DettagliCrittografia. Primalità e Fattorizzazione. Corso di Laurea Specialistica. in Informatica
Crittografia Corso di Laurea Specialistica in Informatica Primalità e Fattorizzazione Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di Milano Bicocca
DettagliSistemi Operativi mod. B. Sistemi Operativi mod. B A B C A B C P 1 2 0 0 P 1 1 2 2 3 3 2 P 2 3 0 2 P 2 6 0 0 P 3 2 1 1 P 3 0 1 1 < P 1, >
Algoritmo del banchiere Permette di gestire istanze multiple di una risorsa (a differenza dell algoritmo con grafo di allocazione risorse). Ciascun processo deve dichiarare a priori il massimo impiego
DettagliProgetto di RHS MicroAODV per Reti di Sensori A.A. 2007/2008
Progetto di RHS MicroAODV per Reti di Sensori A.A. 2007/2008 Si consideri una rete di sensori MicaZ con sistema operativo TinyOS, dove ogni nodo è identificato da un ID unico e dove è presente un solo
DettagliPronto Esecuzione Attesa Terminazione
Definizione Con il termine processo si indica una sequenza di azioni che il processore esegue Il programma invece, è una sequenza di azioni che il processore dovrà eseguire Il processo è quindi un programma
DettagliCorso di Reti di Calcolatori T
Università degli Studi di Bologna Scuola di Ingegneria Corso di Reti di Calcolatori T Esercitazione 2 (proposta) Socket Java con connessione Luca Foschini Anno accademico 2015/2016 Esercitazione 2 1 Specifica
DettagliEquilibrio bayesiano perfetto. Giochi di segnalazione
Equilibrio bayesiano perfetto. Giochi di segnalazione Appunti a cura di Stefano Moretti, Silvia VILLA e Fioravante PATRONE versione del 26 maggio 2006 Indice 1 Equilibrio bayesiano perfetto 2 2 Giochi
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15. Pietro Frasca. Parte II Lezione 5
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15 Parte II Lezione 5 Giovedì 19-03-2015 1 Intensità del traffico e perdita dei pacchetti La componente
DettagliTECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI
TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI Confronto tra ISO-OSI e TCP/IP, con approfondimento di quest ultimo e del livello di trasporto in cui agiscono i SOCKET. TCP/IP
DettagliCorso di Sistemi di Gestione di Basi di Dati. Esercitazione sul controllo di concorrenza 12/02/2004
Corso di Sistemi di Gestione di Basi di Dati Esercitazione sul controllo di concorrenza 12/02/2004 Dott.ssa Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma
DettagliMODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it
MODELLO CLIENT/SERVER Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it POSSIBILI STRUTTURE DEL SISTEMA INFORMATIVO La struttura di un sistema informativo
DettagliCONTROLLO DI GESTIONE DELLO STUDIO
CONTROLLO DI GESTIONE DELLO STUDIO Con il controllo di gestione dello studio il commercialista può meglio controllare le attività svolte dai propri collaboratori dello studio nei confronti dei clienti
DettagliUniversità degli Studi di Messina
Università degli Studi di Messina Guida alla Rendicontazione on-line delle Attività del Docente Versione della revisione: 2.02/2013-07 A cura di: Fabio Adelardi Università degli studi di Messina Centro
DettagliI casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere.
UML e i Casi d USO I casi d uso specificano una sequenza di azioni che producono un risultato visibile agli attori del sistema. Essi nascono per fornire descrizioni delle capacità del sistema. I casi d
DettagliAirone Gestione Rifiuti Funzioni di Esportazione e Importazione
Airone Gestione Rifiuti Funzioni di Esportazione e Importazione Airone Funzioni di Esportazione Importazione 1 Indice AIRONE GESTIONE RIFIUTI... 1 FUNZIONI DI ESPORTAZIONE E IMPORTAZIONE... 1 INDICE...
DettagliSISTEMI OPERATIVI. Deadlock (blocco critico) Domande di verifica. Luca Orrù Centro Multimediale Montiferru 04/06/2007
2007 SISTEMI OPERATIVI Deadlock (blocco critico) Domande di verifica Luca Orrù Centro Multimediale Montiferru 04/06/2007 Deadlock (blocco critico) 1. Si descriva il deadlock e le condizioni sotto cui si
Dettagli1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi?
1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi? 1. La nozione di multiprogrammazione prevede la possibilità di
DettagliGuida Rapida di Syncronize Backup
Guida Rapida di Syncronize Backup 1) SOMMARIO 2) OPZIONI GENERALI 3) SINCRONIZZAZIONE 4) BACKUP 1) - SOMMARIO Syncronize Backup è un software progettato per la tutela dei dati, ed integra due soluzioni
Dettagli3. Introduzione all'internetworking
3. Introduzione all'internetworking Abbiamo visto i dettagli di due reti di comunicazione: ma ce ne sono decine di tipo diverso! Occorre poter far comunicare calcolatori che si trovano su reti di tecnologia
DettagliIntroduzione alle applicazioni di rete
Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza
DettagliDeadlock e Starvation
DTI / ISIN / Titolo principale della presentazione 1 Deadlock e Starvation Amos Brocco, Ricercatore, DTI / ISIN 3 aprile 2012 Condivisione di risorse In un sistema si trovano delle risorse che possono
DettagliCorso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa. Raccolta prove scritte. Prova scritta
Corso di Sistemi Operativi Ingegneria Elettronica e Informatica prof. Rocco Aversa Raccolta prove scritte Realizzare una classe thread Processo che deve effettuare un numero fissato di letture da una memoria
DettagliSincronizzazione nei Sistemi Distribuiti
Sincronizzazione nei Sistemi Distribuiti Sincronizzazione dei Clock In un sistema centralizzato la misurazione del tempo non presenta ambiguità. (ogni computer ha il proprio clock) In un sistema distribuito
DettagliIl protocollo BitTorrent
4 Università degli studi di Bari Corso di Laurea Magistrale in Informatica Sistemi Distribuiti: architetttura e modelizzazione Modulo B modellizzazione Anno Accademico 2008 2009 Modellizzazione del protocollo
DettagliReplicazione. Requisisti di consistenza i clienti devono ricevere risposte consistenti e coerenti. Motivazioni
Replicazione Replicazione dei dati: gestione e manutenzione di un insieme di copie dei dati Motivazioni: - disponibilità - tolleranza ai guasti - prestazioni aching diverso da replicazione aching non aumenta
DettagliDeadlock (stallo) Parte III. Deadlock
Parte III Deadlock Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 III - 1 Deadlock (stallo) Su di un tavolo ci sono un piatto ed una forchetta A e B sono seduti al tavolo, per mangiare ciascuno
DettagliANNO SCOLASTICO 2014-2015
ATTIVITÀ DI SPERIMENTAZIONE IN CLASSE PREVISTA NELL AMBITO DEL PROGETTO M2014 PROMOSSO DALL ACCADEMIA DEI LINCEI PER LE SCUOLE PRIMARIE E SECONDARIE DI I GRADO ANNO SCOLASTICO 2014-2015 Il Centro matematita,
Dettagli5.3 TABELLE 5.3.1 RECORD 5.3.1.1 Inserire, eliminare record in una tabella Aggiungere record Eliminare record
5.3 TABELLE In un sistema di database relazionali le tabelle rappresentano la struttura di partenza, che resta poi fondamentale per tutte le fasi del lavoro di creazione e di gestione del database. 5.3.1
DettagliBDCC : Guida rapida all utilizzo
BDCC : Guida rapida all utilizzo 1 Sommario 1. Funzionamento del sistema... 3 1.1 Cos è e cosa contiene la BDCC... 3 1.2 Meccanismi di funzionamento della BDCC... 3 1.3 Organizzazione di contenuti all
DettagliREGOLE PER L ESAME (agg.te settembre 2015)
Informatica e Programmazione (9 CFU) Ingegneria Meccanica e dei Materiali REGOLE PER L ESAME (agg.te settembre 2015) Modalità d esame (note generali) Per superare l esame, lo studente deve sostenere due
DettagliBASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone
BASI DI DATI per la gestione dell informazione Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone Libro di Testo 22 Chianese, Moscato, Picariello e Sansone BASI DI DATI per la Gestione dell
DettagliHBase Data Model. in più : le colonne sono raccolte in gruppi di colonne detti Column Family; Cosa cambia dunque?
NOSQL Data Model HBase si ispira a BigTable di Google e perciò rientra nella categoria dei column store; tuttavia da un punto di vista logico i dati sono ancora organizzati in forma di tabelle, in cui
DettagliReti diverse: la soluzione nativa
Reti diverse: la soluzione nativa Quando si deve trasmettere un messaggio attraverso reti diverse, per il mezzo fisico, per il protocollo di accesso o altro, a che livello si colloca la procedura di traduzione
DettagliSistemi Operativi (modulo di Informatica II) I processi
Sistemi Operativi (modulo di Informatica II) I processi Patrizia Scandurra Università degli Studi di Bergamo a.a. 2009-10 Sommario Il concetto di processo Schedulazione dei processi e cambio di contesto
DettagliMODELLISTICA DI IMPIANTI E SISTEMI 2
MODELLISTICA DI IMPIANTI E SISTEMI 2 Indice 1 Dalla traccia al modello 2 1.1 BAS................................................ 4 I Traccia Si consideri il problema della gestione efficiente dei servizi
Dettagli2. Simulazione discreta: approcci alla simulazione
Anno accademico 2007/08 Elementi di un programma di simulazione Controllore Tempo di simulazione Generatore dei dati di input Entità Eventi Attività Stati Processi Simulazione per eventi: le classi L approccio
DettagliSistema per scambi/cessioni di Gas al Punto di Scambio Virtuale
Sistema per scambi/cessioni di Gas al Punto di Scambio Virtuale Modulo Bacheca 1 INDICE 1 Generalità...3 2 Accesso al sistema...4 2.1 Requisiti tecnici 5 3 Elenco funzioni e tasti di navigazione...6 3.1
DettagliSommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.
Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell
DettagliActive Directory. Installatore LAN. Progetto per le classi V del corso di Informatica
Installatore LAN Progetto per le classi V del corso di Informatica Active Directory 26/02/08 Installatore LAN - Prof.Marco Marchisotti 1 Agli albori delle reti...... nelle prime LAN era facile individuare
DettagliDomande Frequenti Autorizzazioni gas serra
Domande Frequenti Autorizzazioni gas serra Versione del 16-07-2010 AGGIORNAMENTO DELL AUTORIZZAZIONE...2 a) Come richiedere l aggiornamento dell autorizzazione?...2 b) Come accedere al sito?...2 c) Come
DettagliCitySoftware PROTOCOLLO. Info-Mark srl
CitySoftware PROTOCOLLO Info-Mark srl Via Rivoli, 5/1 16128 GENOVA Tel. 010/591145 Fax 010/591164 Sito internet: www.info-mark.it e-mail Info-Mark@Info-Mark.it SISTEMA DI PROTOCOLLAZIONE AUTOMATICA Realizzato
DettagliAccordo per l informazione e la consultazione a livello sovranazionale dei dipendenti
Accordo per l informazione e la consultazione a livello sovranazionale dei dipendenti * del gruppo Deutsche Bank nell Unione Europea Commissione interna Euro Deutsche Bank Premessa In considerazione dello
DettagliLe reti. Introduzione al concetto di rete. Classificazioni in base a
Le reti Introduzione al concetto di rete Classificazioni in base a Software di rete OSI e TCP/IP Definizione di rete Vantaggi delle reti Reti ad architettura centralizzata e distribuita Sistemi aperti
DettagliMANUALE PER IL CONDUTTORE DEL GIOCO
MANUALE PER IL CONDUTTORE DEL GIOCO DR. PIERMARIO LUCCHINI Consulente organizzazione aziendale Realizzato per utilizzare il software 2011... ON THE WEB by Ideata e prodotta da: Cremona INTRODUZIONE Il
DettagliDatabase. Si ringrazia Marco Bertini per le slides
Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida
DettagliCorso di Informatica
CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it Le Reti di Computer 2 Introduzione Una rete è un complesso insieme di sistemi di elaborazione
Dettagli1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/2014. 1.1 Lato client
RETI INFORMATICHE - SPECIFICHE DI PROGETTO A.A. 2013/2014 1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/2014 Il progetto consiste nello sviluppo di un
DettagliSistemi centralizzati e distribuiti
Sistemi centralizzati e distribuiti In relazione al luogo dove è posta fisicamente la base di dati I sistemi informativi, sulla base del luogo dove il DB è realmente dislocato, si possono suddividere in:
DettagliLa gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)
La gestione di un calcolatore Sistemi Operativi primo modulo Introduzione Augusto Celentano Università Ca Foscari Venezia Corso di Laurea in Informatica Un calcolatore (sistema di elaborazione) è un sistema
DettagliFunzioni di Trasferimento Movimenti
Airone Gestione Rifiuti Funzioni di Trasferimento Movimenti Airone Funzione di Trasferimento Movimenti pag. 1 Indice INTRODUZIONE... 3 FUNZIONE DI TRASFERIMENTO MOVIMENTI... 3 Configurazione dell applicazione...4
DettagliGestVetrine 1.1 versione novembre 2014
GestVetrine 1.1 versione novembre 2014 0 GestVetrine 1.1 GestVetrine 1.0 Indice Indice pag.1 1. Finalità pag.2 2. Gestione screen pag.2 3. Come Accedere pag.3 4. Come Creare un negozio pag.4 5. Come Creare
DettagliGestione dei servizi all utenza. 3. Autorizzazioni
Istituto Centrale per il Catalogo Unico delle Biblioteche Italiane e per le Informazioni bibliografiche Manuali utente per SBN WEB Gestione dei servizi all utenza 3. Autorizzazioni 1 2 1. Introduzione
DettagliFattura elettronica. la gestione integrata del flusso documentale
Fattura elettronica la gestione integrata del flusso documentale normativa principale Normativa IVA dpr 633/1972 Direttiva CE 112/2006 Normativa amministrazione digitale d.lgs. 82/2005 (CAD) Fatturazione
DettagliIl Sistema Operativo
Il Sistema Operativo Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al meglio le risorse del Sistema
DettagliIngegneria del Software 5. Esercizi sui casi d uso. Dipartimento di Informatica Università di Pisa A.A. 2014/15
Ingegneria del Software 5. Esercizi sui casi d uso Dipartimento di Informatica Università di Pisa A.A. 2014/15 formulazione Per motivi di sicurezza, un organizzazione ha deciso di realizzare un sistema
DettagliSistemi Operativi. Lez. 13: primitive per la concorrenza monitor e messaggi
Sistemi Operativi Lez. 13: primitive per la concorrenza monitor e messaggi Osservazioni I semafori sono strumenti particolarmente potenti poiché consentono di risolvere ogni problema di sincronizzazione
DettagliRealizzazione di Politiche di Gestione delle Risorse: i Semafori Privati
Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati Condizione di sincronizzazione Qualora si voglia realizzare una determinata politica di gestione delle risorse,la decisione se ad
DettagliStrumenti e metodi per la redazione della carta del pericolo da fenomeni torrentizi
Versione 2.0 Strumenti e metodi per la redazione della carta del pericolo da fenomeni torrentizi Corso anno 2011 E. MANUALE UTILIZZO HAZARD MAPPER Il programma Hazard Mapper è stato realizzato per redarre,
DettagliReti diverse: la soluzione nativa
Reti diverse: la soluzione nativa Quando si deve trasmettere un messaggio attraverso reti diverse, per il mezzo fisico, per il protocollo di accesso o altro, a che livello si colloca la procedura di traduzione
DettagliManuale Utente MyFastPage
Manuale MyFastPage Utente Elenco dei contenuti 1. Cosa è MyVoice Home?... 4 1.1. Introduzione... 5 2. Utilizzo del servizio... 6 2.1. Accesso... 6 2.2. Disconnessione... 7 2.3. Configurazione base Profilo
DettagliGuida all uso di Java Diagrammi ER
Guida all uso di Java Diagrammi ER Ver. 1.1 Alessandro Ballini 16/5/2004 Questa guida ha lo scopo di mostrare gli aspetti fondamentali dell utilizzo dell applicazione Java Diagrammi ER. Inizieremo con
DettagliArchivi e database. Prof. Michele Batocchi A.S. 2013/2014
Archivi e database Prof. Michele Batocchi A.S. 2013/2014 Introduzione L esigenza di archiviare (conservare documenti, immagini, ricordi, ecc.) è un attività senza tempo che è insita nell animo umano Primi
DettagliScuola Superiore Sant Anna. Progetto parte Unix. AA 2008-2009: Distributed File Repository
Scuola Superiore Sant Anna Progetto parte Unix AA 2008-2009: Distributed File Repository Distributed File Repository Descrizione del sistema da realizzare Progettare e implementare un server che mantiene
DettagliComunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione
I semestre 04/05 Comunicazione tra Computer Protocolli Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica 1
DettagliREGOLAMENTO INTERNO GIOCO DELLA BELOTTA BAR VECCHI RICORDI TRIORA Tutti i diritti sono riservati bar Vecchi Ricordi P.
REGOLAMENTO INTERNO GIOCO DELLA BELOTTA BAR VECCHI RICORDI TRIORA Tutti i diritti sono riservati bar Vecchi Ricordi P.IVA 01468030083 1) La distribuzione delle carte 2) Le regole del gioco 3) Dichiarazioni
DettagliCome utilizzare il nuovo HelpDesk Maggioli Informatica
Come utilizzare il nuovo HelpDesk Maggioli Informatica Sommario 1. Home... 2 2. Tickets... 3 3. Nuove richieste... 3 4. Knowledge Base... 5 5. Documenti... 5 6. Referenti... 6 7. Come modificare e/o resettare
DettagliAlgoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.
Algoritmo Formalmente, per algoritmo si intende una successione finita di passi o istruzioni che definiscono le operazioni da eseguire su dei dati (=istanza del problema): in generale un algoritmo è definito
DettagliARCHITETTURA DI RETE FOLEGNANI ANDREA
ARCHITETTURA DI RETE FOLEGNANI ANDREA INTRODUZIONE È denominata Architettura di rete un insieme di livelli e protocolli. Le reti sono organizzate gerarchicamente in livelli, ciascuno dei quali interagisce
DettagliNell Header posto nella parte superiore della pagina, possiamo trovare informazioni che identificano l organizzazione
GUIDA ALL USO Il sito del Consorzio Proximo è stato concepito per due diverse finalità: una grafica accattivante per rispondere alle esigenze di vetrina su internet e invogliare potenziali clienti a richiedere
Dettaglivisto il trattato che istituisce la Comunità europea, in particolare l articolo 93, vista la proposta della Commissione,
IL CONSIGLIO DELL UNIONE EUROPEA, visto il trattato che istituisce la Comunità europea, in particolare l articolo 93, vista la proposta della Commissione, (2) Per assicurare la corretta applicazione dell
DettagliDimensione di uno Spazio vettoriale
Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione
DettagliOttimizzazione Multi Obiettivo
Ottimizzazione Multi Obiettivo 1 Ottimizzazione Multi Obiettivo I problemi affrontati fino ad ora erano caratterizzati da una unica (e ben definita) funzione obiettivo. I problemi di ottimizzazione reali
DettagliMonitor. Introduzione. Struttura di un TDA Monitor
Monitor Domenico Cotroneo Dipartimento di Informatica e Sistemistica Introduzione E stato introdotto per facilitare la programmazione strutturata di problemi in cui è necessario controllare l assegnazione
DettagliLe Basi di Dati. Le Basi di Dati
Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per
DettagliMacchine a stati finiti G. MARSELLA UNIVERSITÀ DEL SALENTO
Macchine a stati finiti 1 G. MARSELLA UNIVERSITÀ DEL SALENTO Introduzione Al più alto livello di astrazione il progetto logico impiega un modello, la cosiddetta macchina a stati finiti, per descrivere
Dettagli1) GESTIONE DELLE POSTAZIONI REMOTE
IMPORTAZIONE ESPORTAZIONE DATI VIA FTP Per FTP ( FILE TRANSFER PROTOCOL) si intende il protocollo di internet che permette di trasferire documenti di qualsiasi tipo tra siti differenti. Per l utilizzo
DettagliSistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo
Sistema Operativo Fondamenti di Informatica 1 Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al
DettagliIntroduzione ai Metodi Formali
Intruzione ai Meti Formali Sistemi software anche molto complessi regolano la vita quotidiana, anche in situazioni life-critical (e.g. avionica) e business-critical (e.g. operazioni bancarie). Esempi di
DettagliCOSTER. Import/Export su SWC701. SwcImportExport
SwcImportExport 1 Con SWC701 è possibile esportare ed importare degli impianti dal vostro database in modo da tenere aggiornati più Pc non in rete o non facente capo allo stesso DataBase. Il caso più comune
DettagliIl client deve stampare tutti gli eventuali errori che si possono verificare durante l esecuzione.
RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2010/2011 Il progetto consiste nello sviluppo di un applicazione client/server. Sia il server che il client dovranno
DettagliSoluzione dell esercizio del 2 Febbraio 2004
Soluzione dell esercizio del 2 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. E evidenziato un sotto caso di uso. 2. Modello concettuale Osserviamo
DettagliCapitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti
Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta
DettagliEleonline gestione dello spoglio elettorale
Eleonline gestione dello spoglio elettorale Manuale Operativo Il manuale segue l'organizzazione gerarchica dell'applicativo perché questo è anche l'ordine temporale di esecuzione delle operazioni. Visione
DettagliGestione degli appelli e verbalizzazione degli esami online GUIDA DOCENTI. (versione 1.0 del 26.11.2014)
Gestione degli appelli e verbalizzazione degli esami online GUIDA DOCENTI (versione 1.0 del 26.11.2014) INDICE 1. LOGIN... 3 2. VISUALIZZAZIONE APPELLI... 4 3. DEFINIZIONE APPELLI... 4 4. GESTIONE LISTA
DettagliLa Metodologia adottata nel Corso
La Metodologia adottata nel Corso 1 Mission Statement + Glossario + Lista Funzionalià 3 Descrizione 6 Funzionalità 2 Schema 4 Schema 5 concettuale Logico EA Relazionale Codice Transazioni In PL/SQL Schema
Dettagli