SCD. Eratostene distribuito. Sistemi distribuiti: il modello di distribuzione in Ada. Architettura del sistema. Algoritmo distribuito 1

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "SCD. Eratostene distribuito. Sistemi distribuiti: il modello di distribuzione in Ada. Architettura del sistema. Algoritmo distribuito 1"

Transcript

1 Sistemi distribuiti: il modello di distribuzione in Ada Sistemi distribuiti: il modello di distribuzione di Ada Sistemi distribuiti: il modello di distribuzione di Ada Architettura del sistema Eratostene distribuito Anno accademico 2014/15 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Primes Primes Primes Sieve Sieve Sieve Next Controller Register Next Store Asynchronous Synchronous and blocking Remote_Types RCI RCI Results Store Load Asynchronous Synchronous Common Pure Sieve Dispatching call L interfaccia Next Sieve Main Load Laurea Magistrale in Informatica, Università di Padova 1/11 Laurea Magistrale in Informatica, Università di Padova 3/11 Sistemi distribuiti: il modello di distribuzione di Ada Algoritmo distribuito 1 Sistemi distribuiti: il modello di distribuzione di Ada Algoritmo distribuito 2 Vogliamo distribuire l equivalente logico delle unità Sieve del Crivello di Eratostene in versione centralizzata Invece di una discesa ricorsiva dinamica di partecipanti (uno per ogni primo) ne fissiamo staticamente un insieme che l algoritmo visita circolarmente Usiamo un overlay network in forma di anello Ogni unità mantiene localmente un sottoinsieme disgiunto dei numeri primi individuati Ogni nuovo primo si deposita sull unità che può dichiararlo come tale Per farlo serve interrogare tutti i partecipanti che fanno da crivello L unità Main (equivalente a Odd) attiva la ricerca in modo asincrono ma poi attende il risultato sincronamente 1 3 Controller Next Main 2 Results Load Primes Sieve Primes Sieve Controller Next Register Results Store Laurea Magistrale in Informatica, Università di Padova 2/11 Laurea Magistrale in Informatica, Università di Padova 4/11

2 Sistemi distribuiti: il modello di distribuzione in Ada Sistemi distribuiti: il modello di distribuzione di Ada Algoritmo distribuito 3 Sistemi distribuiti: il modello di distribuzione di Ada Algoritmo distribuito 5 Main a Sieve Primes N Sieve Primes Ogni unità Primes mantiene localmente un sottoinsieme disgiunto di numeri primi Ciascun primo si deposita su unità distinte visitate circolarmente I sottoinsiemi locali non sono consecutivi b Results Load Store Y for Number in Search_Range loop Sieve(Next, Number); -- asynchronous Load(Divider, Where); -- blocking if Divider = Number then -- Number is a prime else -- Node "Where" has the divisor end if; end loop; Per decidere se un numero è primo può essere quindi necessario interrogare le unità Primes più volte Di conseguenza il metodo Sieve di ogni unità Primes è potenzialmente ricorsivo in modo indiretto Poiché Sieve lavora su valori statici il suo algoritmo deve essere reso o dimostrato robusto rispetto alla ricorsione La chiave è l incremento del valore sentinella Current prima della possibile chiamata ricorsiva Quale l effetto se l incremento fosse ritardato? Laurea Magistrale in Informatica, Università di Padova 5/11 Laurea Magistrale in Informatica, Università di Padova 7/11 Sistemi distribuiti: il modello di distribuzione di Ada Algoritmo distribuito 4 Primes Sistemi distribuiti: il modello di distribuzione di Ada Distribuzione 1 Pure Main a Sieve N Sieve Primes Remote Call Interface Asynchronous Remote Call Interface Asynchronous duplicated (no identity) Common (abstract spec) duplicated (no identity) Y b if Current <= Tail then -- sentinel check Results if (Number mod Prime(Current)) = 0 then -- we have a divisor so we record it Store(Prime(Current), Self); Load Store else -- we have no divisor so we ask next Current := Current + 1; Sieve(Next, Number); end if; else -- we have a new prime Who stores it? Tail := Tail + 1; Prime(Tail) := Number; Laurea Magistrale in Informatica, Università di Store(Prime(Tail), Padova Self); 6/11 end if; Results Remote Types Primes Controller Main duplicated (no identity) Remote Types Primes Remote Types Primes Partition1 Partition2 Partition4 Laurea Magistrale in Informatica, Università di Padova 8/11

3 Sistemi distribuiti: il modello di distribuzione in Ada Sistemi distribuiti: il modello di distribuzione di Ada Distribuzione 2 Pure Sistemi distribuiti: il modello di distribuzione di Ada Distribuzione 4 Common (abstract spec) Remote Call Interface Asynchronous Remote Call Interface Asynchronous Pure Remote Call Interface Asynchronous Results Main Remote Types Primes Remote Types Primes Controller Results Remote Types Remote Types Common (abstract spec) Remote Types Remote Types Remote Call Interface Asynchronous Main Primes Primes Primes Primes Controller stub (proxy) copied (with local identity) skeleton + body Partition1 Partition2 Partition4 Partition1 Partition2 Partition4 Laurea Magistrale in Informatica, Università di Padova 9/11 Laurea Magistrale in Informatica, Università di Padova 11/11 Sistemi distribuiti: il modello di distribuzione di Ada Distribuzione 3 Pure Remote Call Interface Asynchronous Controller Remote Types Primes Main Remote Call Interface Asynchronous Results stub (proxy) Remote Types Primes Common (abstract spec) Remote Types Primes skeleton + body Partition1 Partition2 Partition3 Laurea Magistrale in Informatica, Università di Padova 10/11

Programmazione I - Laboratorio

Programmazione I - Laboratorio Programmazione I - Laboratorio Esercitazione 2 - Funzioni Gianluca Mezzetti 1 Paolo Milazzo 2 1. Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ mezzetti mezzetti di.unipi.it 2.

Dettagli

SCD. Criteri di sincronizzazione. Criteri di sincronizzazione. Criteri di valutazione 2. Criteri di valutazione 1. Condizioni di sincronizzazione 1

SCD. Criteri di sincronizzazione. Criteri di sincronizzazione. Criteri di valutazione 2. Criteri di valutazione 1. Condizioni di sincronizzazione 1 Criteri di valutazione 2 Anno accademico 2015/16 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD È interessante applicare questo schema di valutazione ai costrutti

Dettagli

Laboratorio di Algoritmi e Strutture Dati

Laboratorio di Algoritmi e Strutture Dati Laboratorio di Algoritmi e Strutture Dati Prof. Aniello Murano Implementazioni di Liste Doppiamente Puntate e Circolari Corso di Laurea Codice insegnamento Email docente Anno accademico Informatica 13917

Dettagli

Intelligenza Artificiale. Lezione 14. Intelligenza Artificiale Daniele Nardi, 2003 Lezione 14 0

Intelligenza Artificiale. Lezione 14. Intelligenza Artificiale Daniele Nardi, 2003 Lezione 14 0 Intelligenza Artificiale Lezione 14 Intelligenza Artificiale Daniele Nardi, 2003 Lezione 14 0 Sommario Russell & Norvig Capitolo 4, Paragrafi 3 4 IDA* SMA* Ricerca Hill-climbing Simulated annealing Intelligenza

Dettagli

Crittografia. Primalità e Fattorizzazione. Corso di Laurea Specialistica. in Informatica

Crittografia. 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

Dettagli

Introduzione. Coordinazione Distribuita. Ordinamento degli eventi. Realizzazione di. Mutua Esclusione Distribuita (DME)

Introduzione. 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,

Dettagli

Corso di Reti Logiche. Macchine Sequenziali. Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II

Corso di Reti Logiche. Macchine Sequenziali. Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II Corso di Reti Logiche Macchine Sequenziali Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II 1 Macchine sequenziali Š Includono il fattore tempo nel funzionamento

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 11 Martedì 12-11-2013 1 Tecniche di allocazione mediante free list Generalmente,

Dettagli

SCD. Sistemi distribuiti: gestione dei nomi. Denominazione di entità 1. Denominazione di entità 2. Esempio

SCD. Sistemi distribuiti: gestione dei nomi. Denominazione di entità 1. Denominazione di entità 2. Esempio Denominazione di entità 1 Gestione dei nomi Anno accademico 2012/13 Sistemi Concorrenti e Distribuiti SCD Le entità di un sistema distribuito devono avere denotazioni che le rendano note Per riferimento,

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Dispensa E08 Soluzione Esercizi F. Gasparetti, C. Limongelli Marzo 2008 http://www.dia.uniroma3.it/~java/fondinf1/ Soluzione Esercizi

Dettagli

7 Esercitazione (svolta): Callback. Polling. Java RMI: callback. Server. Server. Client. Client. due possibilità:

7 Esercitazione (svolta): Callback. Polling. Java RMI: callback. Server. Server. Client. Client. due possibilità: 7 Esercitazione (svolta): due possibilità: Java RMI: callback Molte applicazioni richiedono un meccanismo publish/subscribe I partecipanti (client) necessitano di notifiche da parte del coordinatore (server)

Dettagli

Reti e Internetworking

Reti e Internetworking Titpi di rete - tecnologia trasmissiva Reti e Internetworking Riferimento A. Tanenbaum "Computer Networks" Prentice-Hall, 3a Ed. Elaboratori Rete una rete broadcast Titpi di rete tecnologia trasmissiva

Dettagli

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2)

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Definiamo innanzitutto una relazione d ordine tra le funzioni. Siano φ e ψ funzioni

Dettagli

Scenari di Deployment i. Scenari di Deployment

Scenari di Deployment i. Scenari di Deployment i Scenari di Deployment ii Copyright 2005-2011 Link.it srl iii Indice 1 Introduzione 1 2 La configurazione minima 1 3 La gestione totalmente centralizzata 3 4 Porte di Dominio Locali con Registro Centrale

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Dispensa 10 Strutture collegate - 2 A. Miola Febbraio 2008 http://www.dia.uniroma3.it/~java/fondinf2/ Strutture collegate - 2 1 Contenuti!Strutture

Dettagli

Implementazione di un servizio VoIP in ambienti SOA per mobile computing

Implementazione di un servizio VoIP in ambienti SOA per mobile computing tesi di laurea Implementazione di un servizio VoIP in ambienti SOA per mobile computing Anno Accademico 2006/2007 relatore Ch.mo prof. Domenico Cotroneo correlatore ing. Marcello Cinque candidato Vittorio

Dettagli

U Corso di italiano, Lezione Diciannove

U Corso di italiano, Lezione Diciannove 1 U Corso di italiano, Lezione Diciannove U Al telefono: M On the phone: U Al telefono: U Pronto Elena, come stai? M Hello Elena, how are you? U Pronto Elena, come stai? D Ciao Paolo, molto bene, grazie.

Dettagli

Esempio - Controllo di un ascensore

Esempio - Controllo di un ascensore Costruiamo un modello ground a partire dai requisiti. Dimostriamo le proprietà di correttezza desiderate n ascensori m piani che soddisfano i seguenti requisiti: 1. Ogni ascensore ha per ogni piano un

Dettagli

Coordinazione Distribuita

Coordinazione 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,

Dettagli

Valutazione delle Prestazioni

Valutazione delle Prestazioni Valutazione delle Prestazioni Sia data una macchina X, definiamo: 1 PrestazioneX = --------------------------- Tempo di esecuzione X La prestazione aumenta con il diminuire del tempo di esecuzione (e diminuisce

Dettagli

Prof. Giuseppe Chiumeo. Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto tre strutture di base:

Prof. Giuseppe Chiumeo. Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto tre strutture di base: LA STRUTTURA DI RIPETIZIONE La ripetizione POST-condizionale La ripetizione PRE-condizionale INTRODUZIONE (1/3) Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto

Dettagli

Preparati per il compito in classe Modulo 5

Preparati per il compito in classe Modulo 5 Preparati per il compito in classe Modulo 5 Hai i dati relativi a una serie di N (con N < 20) cinema, per ogni cinema si conoscono il nome e l incasso. Scrivi un programma che, presi in input tali dati,

Dettagli

Macchine a stati finiti G. MARSELLA UNIVERSITÀ DEL SALENTO

Macchine 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

Dettagli

Ricorsione. (da lucidi di Marco Benedetti)

Ricorsione. (da lucidi di Marco Benedetti) Ricorsione (da lucidi di Marco Benedetti) Funzioni ricorsive Dal punto di vista sintattico, siamo in presenza di una funzione ricorsiva quando all interno della definizione di una funzione compaiono una

Dettagli

Operazioni di input e output in Fortran 90

Operazioni di input e output in Fortran 90 Operazioni di input e output in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: file e formattazione DIS - Dipartimento di informatica

Dettagli

dall argomento argomento della malloc()

dall argomento argomento della malloc() Allocazione dinamica Quando? Tutte le volte in cui i dati possono crescere in modo non prevedibile staticamente a tempo di sviluppo Un array con dimensione i fissata a compile-time non è sufficiente È

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Elementi di Programmazione Dinamica Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino Il problema La CMC produce automobili in uno stabilimento

Dettagli

Standard per Reti a Commutazione di Pacchetto Prof. Vincenzo Auletta Università degli studi di Salerno Laurea in Informatica

Standard per Reti a Commutazione di Pacchetto Prof. Vincenzo Auletta Università degli studi di Salerno Laurea in Informatica I semestre 03/04 Standard per Reti a Commutazione di Pacchetto Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Standard per Reti a Pacchetto Principali standard

Dettagli

Introduzione alle applicazioni di rete

Introduzione 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

Dettagli

Sistemi Operativi (modulo di Informatica II) I processi

Sistemi 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

Dettagli

Nascita di Java. Che cos e Java? Caratteristiche di Java. Java: linguaggio a oggetti

Nascita di Java. Che cos e Java? Caratteristiche di Java. Java: linguaggio a oggetti Nascita di Java L uscita di Java, verso la metà degli anni novanta, fu accolta con molto entusiasmo dalla comunità dei programmatori e dei provider di servizi internet perché permetteva agli utenti del

Dettagli

I tipi di dato astratti

I tipi di dato astratti I tipi di dato astratti.0 I tipi di dato astratti c Diego Calvanese Fondamenti di Informatica Corso di Laurea in Ingegneria Elettronica A.A. 001/00.0 0 I tipi di dato astratti La nozione di tipo di dato

Dettagli

ASP 3.0 Il Sito Dinamico

ASP 3.0 Il Sito Dinamico www.idstudio.it ASP 3.0 Il Sito Dinamico di Lorenzo Garassino Introduzione e scopo del libro 1. Scenario 1.1. Il panorama 1.2. Sito Statico o Dinamico? 1.3. Prospettive 2. Cos è ASP 2.1. Descrizione 2.2.

Dettagli

Corso di Fondamenti di Informatica prova del 04/07/2008

Corso di Fondamenti di Informatica prova del 04/07/2008 UNIVERSITÀ DEGLI STUDI DI PERUGIA FACOLTÀ DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA MECCANICA. Corso di Fondamenti di Informatica prova del 04/07/2008 Esercizio 1 (17 punti) Il file di nome inp.dat contiene

Dettagli

SOMMARIO Coda (queue): QUEUE. QUEUE : specifica QUEUE

SOMMARIO Coda (queue): QUEUE. QUEUE : specifica QUEUE SOMMARIO Coda (queue): Specifica: interfaccia. Implementazione: Strutture indicizzate (array): Array di dimensione variabile. Array circolari. Strutture collegate (nodi). Prestazioni. Strutture Software

Dettagli

Organizzazione della lezione. Lezione 18 Remote Method Invocation - 6. (con callback) L accesso al registry per il rebind()

Organizzazione della lezione. Lezione 18 Remote Method Invocation - 6. (con callback) L accesso al registry per il rebind() Organizzazione della lezione Lezione 18 Remote Method Invocation - 6 Vittorio Scarano Corso di Programmazione Distribuita (2003-2004) Laurea di I livello in Informatica Università degli Studi di Salerno

Dettagli

Ingegneria del Software. Presentazione del pattern Proxy

Ingegneria del Software. Presentazione del pattern Proxy Ingegneria del Software Presentazione del pattern Proxy 1 Il pattern Proxy (1/6) Nome Proxy Synopsis Pattern molto generale che occorre in molti altri pattern, ma raramente nella sua forma pura. Il pattern

Dettagli

Introduzione. Laurea magistrale in ingegneria informatica A.A. 2011-2012. Leonardo Querzoni. Versioni al tratto. Versione 3D

Introduzione. Laurea magistrale in ingegneria informatica A.A. 2011-2012. Leonardo Querzoni. Versioni al tratto. Versione 3D Introduzione Versioni al tratto Versione 3D Sistemi La versione negativa Distribuiti 3D prevede l utilizzo dell ombra esclusivamente sul fondo colore Rosso Sapienza. Laurea magistrale in ingegneria informatica

Dettagli

Gestione della memoria. Paginazione Segmentazione Segmentazione con paginazione

Gestione della memoria. Paginazione Segmentazione Segmentazione con paginazione Gestione della memoria Paginazione Segmentazione Segmentazione con paginazione Modello di paginazione Il numero di pagina serve come indice per la tabella delle pagine. Questa contiene l indirizzo di base

Dettagli

Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2006-07 Secondo Compitino 21 Dicembre 2006

Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2006-07 Secondo Compitino 21 Dicembre 2006 Studente (Cognome Nome): Matricola: Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2006-07 Secondo Compitino 21 Dicembre 2006 Si noti che le soluzioni ai quesiti saranno considerate

Dettagli

LA REALIZZAZIONE DI APPLICAZIONI ALCUNE ARCHITETTURE

LA REALIZZAZIONE DI APPLICAZIONI ALCUNE ARCHITETTURE LA REALIZZAZIONE DI APPLICAZIONI ALCUNE ARCHITETTURE Quattro parti: Gestione dati Client-Server Logica + interfaccia Logica + interfaccia Business rules Sistema di comunicazione Logica applicativa DBMS:

Dettagli

Linee guida per la programmazione di transazioni in PL/SQL

Linee guida per la programmazione di transazioni in PL/SQL Linee guida per la programmazione di transazioni in PL/SQL Giuseppe Berio Giuseppe Berio DI - Unito 1 Esempio La transazione deve registrare l evasione di un ordine, rappresentato su più tabelle specializzate

Dettagli

LA REALIZZAZIONE DI APPLICAZIONI. Quattro parti: Gestione dati. Business rules. Logica applicativa. Interfaccia utente. Molte possibili architetture

LA REALIZZAZIONE DI APPLICAZIONI. Quattro parti: Gestione dati. Business rules. Logica applicativa. Interfaccia utente. Molte possibili architetture LA REALIZZAZIONE DI APPLICAZIONI Quattro parti: Gestione dati Business rules Logica applicativa Interfaccia utente Molte possibili architetture L approccio tradizionale: uso di un linguaggio PLSQL 1.1

Dettagli

Reti di calcolatori. Lezione del 10 giugno 2004

Reti di calcolatori. Lezione del 10 giugno 2004 Reti di calcolatori Lezione del 10 giugno 2004 Internetworking I livelli 1 fisico e 2 data link si occupano della connessione di due host direttamente connessi su di una rete omogenea Non è possibile estendere

Dettagli

Scopo della lezione. Informatica. Informatica - def. 1. Informatica

Scopo della lezione. Informatica. Informatica - def. 1. Informatica Scopo della lezione Informatica per le lauree triennali LEZIONE 1 - Che cos è l informatica Introdurre i concetti base della materia Definire le differenze tra hardware e software Individuare le applicazioni

Dettagli

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1 DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica

Dettagli

ESERCIZI - SERIE N.1

ESERCIZI - SERIE N.1 ESERCIZI - SERIE N.1 ACQUISIZIONE DELLO STATO DI SEGNALI ON/OFF Problema: acquisizione, da parte di un'unità di elaborazione realizzata con tecnologia a funzionalità programmata, di un'informazione proveniente

Dettagli

Comunicazione tra Processi

Comunicazione tra Processi Comunicazione tra Processi Comunicazioni in un Sistema Distribuito Un sistema software distribuito è realizzato tramite un insieme di processi che comunicano, si sincronizzano, cooperano. Il meccanismo

Dettagli

Comunicazione tra Processi

Comunicazione tra Processi Comunicazione tra Processi Comunicazioni in un Sistema Distribuito Un sistema software distribuito è realizzato tramite un insieme di processi che comunicano, si sincronizzano, cooperano. Il meccanismo

Dettagli

Trasmissione di dati al di fuori di un area locale avviene tramite la commutazione

Trasmissione di dati al di fuori di un area locale avviene tramite la commutazione Commutazione 05.2 Trasmissione di dati al di fuori di un area locale avviene tramite la Autunno 2002 Prof. Roberto De Prisco -05: Reti a di circuito Università degli studi di Salerno Laurea e Diploma in

Dettagli

Esercizi di codifica binaria

Esercizi di codifica binaria Fondamenti di Informatica per la Sicurezza a.a. 2004/05 Esercizi di codifica binaria Stefano Ferrari Università degli Studi di Milano Dipartimento di Tecnologie dell Informazione Stefano Ferrari Università

Dettagli

Verifica parte IIA. Test (o analisi dinamica) Mancanza di continuità. Esempio

Verifica parte IIA. Test (o analisi dinamica) Mancanza di continuità. Esempio Test (o analisi dinamica) Verifica parte IIA Rif. Ghezzi et al. 6.3-6.3.3 Consiste nell osservare il comportamento del sistema in un certo numero di condizioni significative Non può (in generale) essere

Dettagli

Semantica dei programmi. La semantica dei programmi è la caratterizzazione matematica dei possibili comportamenti di un programma.

Semantica dei programmi. La semantica dei programmi è la caratterizzazione matematica dei possibili comportamenti di un programma. Semantica dei programmi La semantica dei programmi è la caratterizzazione matematica dei possibili comportamenti di un programma. Semantica operazionale: associa ad ogni programma la sequenza delle sue

Dettagli

Verifica della correttezza formale del numero di partita IVA

Verifica della correttezza formale del numero di partita IVA Verifica della correttezza formale del numero di partita IVA A tutti i soggetti che intraprendono un attività rilevante ai fini Iva (impresa, arte, professione), al momento della presentazione della dichiarazione

Dettagli

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori I

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori I Corso di Laurea in Ingegneria Informatica Corso di Reti di Calcolatori I Roberto Canonico (roberto.canonico@unina.it) Giorgio Ventre (giorgio.ventre@unina.it) Il livello rete in Internet Il protocollo

Dettagli

Linux nel calcolo distribuito

Linux nel calcolo distribuito openmosix Linux nel calcolo distribuito Dino Del Favero, Micky Del Favero dino@delfavero.it, micky@delfavero.it BLUG - Belluno Linux User Group Linux Day 2004 - Belluno 27 novembre openmosix p. 1 Cos è

Dettagli

Corso di Fondamenti di Informatica II

Corso di Fondamenti di Informatica II Corso di Fondamenti di Informatica II Algoritmi sulle liste a.a. 2009/2010 Francesco Fontanella Creare una lista da un vettore (ricorsivo) nodo* create_list(tipovalue v[], int n) nodo *l; if (n == 0) return

Dettagli

SCD. Il modello CORBA. Sistemi distribuiti: il modello CORBA. Architettura del modello 2. Architettura del modello 3. Architettura del modello 1

SCD. Il modello CORBA. Sistemi distribuiti: il modello CORBA. Architettura del modello 2. Architettura del modello 3. Architettura del modello 1 Architettura del modello 2 Il modello CA Anno accademico 2017/18 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Modello cliente-servente a oggetti distribuiti La

Dettagli

RETI DI TELECOMUNICAZIONI L B 2a parte. SISTEMI DI COMMUTAZIONE Modulo A: Architetture di reti

RETI DI TELECOMUNICAZIONI L B 2a parte. SISTEMI DI COMMUTAZIONE Modulo A: Architetture di reti RETI DI TELECOMUNICAZIONI L B 2a parte SISTEMI DI COMMUTAZIONE Modulo A: Architetture di reti Prof. Giorgio CORAZZA A.A. 2001/2002 Il corso di SISTEMI DI COMMUTAZIONE si compone di due moduli: ARCHITETTURE

Dettagli

Mutua esclusione distribuita

Mutua 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

Dettagli

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati Informatica 3 Informatica 3 LEZIONE 10: Introduzione agli algoritmi e alle strutture dati Modulo 1: Perchè studiare algoritmi e strutture dati Modulo 2: Definizioni di base Lezione 10 - Modulo 1 Perchè

Dettagli

Assembler di Spim. Assembler di SPIM. Struttura di un programma assembler. Direttive

Assembler di Spim. Assembler di SPIM. Struttura di un programma assembler. Direttive Assembler di Spim Assembler di SPIM Il programma è organizzato in linee Ogni linea può contenere un commento che parte dal carattere # e si estende fino alla fine della linea Ogni linea che non sia bianca

Dettagli

Classi Oggetti public private this static static

Classi Oggetti public private this static static Programma Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dell Informazione Università di Siena Via Roma 56 53100 SIENA Uff. 0577233606 rigutini@dii.unisi.it http://www.dii.unisi.it/~rigutini/ Programma

Dettagli

Sistemi Operativi GESTIONE DELLA MEMORIA CENTRALE. D. Talia - UNICAL. Sistemi Operativi 6.1

Sistemi Operativi GESTIONE DELLA MEMORIA CENTRALE. D. Talia - UNICAL. Sistemi Operativi 6.1 GESTIONE DELLA MEMORIA CENTRALE 6.1 Gestione della Memoria Background Spazio di indirizzi Swapping Allocazione Contigua Paginazione 6.2 Background Per essere eseguito un programma deve trovarsi (almeno

Dettagli

La gestione dei processi in Minix

La gestione dei processi in Minix La gestione dei processi in Minix Sistemi Operativi Lez. 28 Scheduling Round robin su 16 code di priorità Quando un processo viene bloccato senza aver esaurito il suo quanto di tempo, una volta risvegliato,

Dettagli

Università degli Studi di Salerno

Università degli Studi di Salerno Università degli Studi di Salerno Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea in Informatica Tesi di Laurea Algoritmi basati su formule di quadratura interpolatorie per GPU ABSTRACT

Dettagli

Funzioni. Il modello console. Interfaccia in modalità console

Funzioni. Il modello console. Interfaccia in modalità console Funzioni Interfaccia con il sistema operativo Argomenti sulla linea di comando Parametri argc e argv Valore di ritorno del programma La funzione exit Esercizio Calcolatrice 2, presente in tutti i programmi

Dettagli

Appunti sulla Macchina di Turing. Macchina di Turing

Appunti sulla Macchina di Turing. Macchina di Turing Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso

Dettagli

Sincronizzazione distribuita: Mutua esclusione ed elezione

Sincronizzazione 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

Dettagli

L obiettivo di questo servizio, proposto agli espositori, è di poter disporre dei dati anagrafici dei visitatori rilevati presso il loro stand.

L obiettivo di questo servizio, proposto agli espositori, è di poter disporre dei dati anagrafici dei visitatori rilevati presso il loro stand. 1.SERVIZIO ECONTACT 1.1 Premessa L obiettivo di questo servizio, proposto agli espositori, è di poter disporre dei dati anagrafici dei visitatori rilevati presso il loro stand. A tale fine è importante

Dettagli

FACOLTÀ DI AGRARIA REGOLAMENTO PER L ACCERTAMENTO DELLA CONOSCENZA DELLA LINGUA INGLESE

FACOLTÀ DI AGRARIA REGOLAMENTO PER L ACCERTAMENTO DELLA CONOSCENZA DELLA LINGUA INGLESE FACOLTÀ DI AGRARIA REGOLAMENTO PER L ACCERTAMENTO DELLA CONOSCENZA DELLA LINGUA INGLESE Titolo I Disposizioni generali Art. 1 Lingua straniera 1. La lingua straniera richiesta e impartita nell ambito dei

Dettagli

Introduzione al MATLAB c Parte 2

Introduzione al MATLAB c Parte 2 Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione

Dettagli

API e socket per lo sviluppo di applicazioni Web Based

API e socket per lo sviluppo di applicazioni Web Based API e socket per lo sviluppo di applicazioni Web Based Cosa sono le API? Consideriamo il problema di un programmatore che voglia sviluppare un applicativo che faccia uso dei servizi messi a disposizione

Dettagli

Sequence Diagram e Collaboration Diagram

Sequence Diagram e Collaboration Diagram Sequence Diagram e Collaboration Diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Sommario Interaction

Dettagli

Introduzione ai database relazionali

Introduzione ai database relazionali Introduzione ai database relazionali Tabelle Un database (DB) è costituito da un insieme di file che memorizzano dati opportunamente organizzati Nei database relazionale tale organizzazione è costituita

Dettagli

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto: Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante

Dettagli

Progetto di un sistema di controllo per un robot basato su CAN

Progetto di un sistema di controllo per un robot basato su CAN Progetto di un sistema di controllo per un robot basato su CAN Laurea in Ingegneria Informatica ed Elettronica Università degli Studi di Perugia Facoltà di Ingegneria Candidato: Giulio Spinozzi Relatore:

Dettagli

Gestione della Memoria

Gestione della Memoria Gestione della Memoria Idealmente la memoria dovrebbe essere grande veloce non volatile Gerarchia di memorie Disco: capiente, lento, non volatile ed economico Memoria principale: volatile, mediamente grande,

Dettagli

Università degli Studi di Perugia A.A. 2014/2015 Dipartimento di Economia. ECONOMIA INDUSTRIALE Prof. Davide Castellani (davide.castellani@unipg.

Università degli Studi di Perugia A.A. 2014/2015 Dipartimento di Economia. ECONOMIA INDUSTRIALE Prof. Davide Castellani (davide.castellani@unipg. Università degli Studi di Perugia A.A. 2014/2015 Dipartimento di Economia ECONOMIA INDUSTRIALE Prof. Davide Castellani (davide.castellani@unipg.it) Reti e standard Introduzione Aspettative dei consumatori

Dettagli

Equilibrio bayesiano perfetto. Giochi di segnalazione

Equilibrio 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

Dettagli

Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007

Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Dott.Davide Di Ruscio Dipartimento di Informatica Università degli Studi di L Aquila Lezione del 08/03/07 Nota Questi lucidi sono tratti

Dettagli

Algoritmi su array / 2

Algoritmi su array / 2 Corso di Informatica Algoritmi su array / Anno Accademico / Francesco Tortorella Algoritmi su array Operazioni tipiche sugli array: inizializzazione lettura stampa ricerca del minimo e del massimo ricerca

Dettagli

2. Spiegare brevemente qual è la funzione del compilatore e la sua importanza per il programmatore.

2. Spiegare brevemente qual è la funzione del compilatore e la sua importanza per il programmatore. 1 Esercizio 1 1. Immaginate di avere una calcolatore che invece che poter rappresentare i classici due valori per ogni bit (0/1) possa rappresentare 7 valori per ogni bit. (a) Quanti bit gli occorreranno

Dettagli

Stampa unione - prof. Enzo Mardegan - http://digilander.libero.it/enzomrd 2

Stampa unione - prof. Enzo Mardegan - http://digilander.libero.it/enzomrd 2 INVITI PERSONALIZZATI CON STAMPA UNIONE Scrivere una stessa lettera a dieci persone diverse è decisamente noioso. I programmi di elaborazione di testo ti permettono di risparmiare un sacco di tempo basta

Dettagli

Sistemi 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, >

Sistemi 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

Dettagli

Il Software. Il software del PC. Il BIOS

Il Software. Il software del PC. Il BIOS Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:

Dettagli

Modellazione dei dati in UML

Modellazione dei dati in UML Corso di Basi di Dati e Sistemi Informativi Modellazione dei dati in UML Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Introduzione UML (Unified Modeling Language):

Dettagli

Informatica - A.A. 2010/11

Informatica - A.A. 2010/11 Ripasso lezione precedente Facoltà di Medicina Veterinaria Corso di laurea in Tutela e benessere animale Corso Integrato: Matematica, Statistica e Informatica Modulo: Informatica Esercizio: Convertire

Dettagli

Le Basi di Dati. Le Basi di Dati

Le 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

Dettagli

d.signage develon lab

d.signage develon lab develon lab d.signage permette una gestione centralizzata dei dati e rende possibile la proiezione interattiva di contenuti multimediali su una o più reti di visualizzatori develon.com d.signage è una

Dettagli

Utilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi

Utilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi Vogliamo creare una struttura per permettere di memorizzari i voti della classe in tutte le materie Per fare questo untilizziamo tre tabelle Alunni,materie,voti Alunni Materie Voti Creo un record per ogni

Dettagli

FACOLTÀ DI AGRARIA REGOLAMENTO PER L ACCERTAMENTO DELLA CONOSCENZA DELLA LINGUA INGLESE

FACOLTÀ DI AGRARIA REGOLAMENTO PER L ACCERTAMENTO DELLA CONOSCENZA DELLA LINGUA INGLESE FACOLTÀ DI AGRARIA REGOLAMENTO PER L ACCERTAMENTO DELLA CONOSCENZA DELLA LINGUA INGLESE Titolo I Disposizioni generali Art. 1 Lingua straniera 1. La lingua straniera richiesta e impartita nell ambito dei

Dettagli

LISTE, INSIEMI, ALBERI E RICORSIONE

LISTE, INSIEMI, ALBERI E RICORSIONE LISTE, INSIEMI, ALBERI E RICORSIONE Settimo Laboratorio LISTE E RICORSIONE SVUOTALISTA: CONSIDERAZIONI Per svuotare una lista si devono eliminare i singoli nodi allocati con la malloc... Come fare? Per

Dettagli

Implementing a new ADT based on the HL7 version 3 RIM. Esempio

Implementing a new ADT based on the HL7 version 3 RIM. Esempio Implementing a new ADT based on the HL7 version 3 RIM Esempio Contesto di riferimento Alla fine degli anni 90, sei ospedali vennero fusi allo scopo di formare un unica organizzazione lo University Hospital

Dettagli

BROCHURE IT SOLUTION

BROCHURE IT SOLUTION SOLUZIONI INFORMATICHE BROCHURE IT SOLUTION FORMULE DI TELEASSISTENZA Di COSA SI TRATTA: il servizio di teleassistenza o assistenza remota permette la risoluzione dei problemi software riscontrabili su

Dettagli

DMA Accesso Diretto alla Memoria

DMA Accesso Diretto alla Memoria Testo di rif.to: [Congiu] - 8.1-8.3 (pg. 241 250) 08.a DMA Accesso Diretto alla Memoria Motivazioni Organizzazione dei trasferimenti DMA Arbitraggio del bus di memoria Trasferimento di un blocco di dati

Dettagli

Sistemi Operativi Il Sistema Operativo Windows (parte 3)

Sistemi Operativi Il Sistema Operativo Windows (parte 3) Sistemi Operativi Il Sistema Operativo Windows (parte 3) Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Crediti per queste slides al Prof. Tullio Vardanega Architettura di NTFS 1 NTFS file system adottato

Dettagli

Corso di Fondamenti di Informatica Algoritmi su array / 2

Corso di Fondamenti di Informatica Algoritmi su array / 2 Corso di Fondamenti di Informatica Algoritmi su array / Anno Accademico 00/009 Francesco Tortorella Algoritmi su array Operazioni tipiche sugli array: inizializzazione lettura stampa ricerca del minimo

Dettagli

Note su quicksort per ASD 2010-11 (DRAFT)

Note su quicksort per ASD 2010-11 (DRAFT) Note su quicksort per ASD 010-11 (DRAFT) Nicola Rebagliati 7 dicembre 010 1 Quicksort L algoritmo di quicksort è uno degli algoritmi più veloci in pratica per il riordinamento basato su confronti. L idea

Dettagli