Concurrency: introduction1 ©Magee/Kramer Semantica operazionale di FSP Consideriamo i costrutti FSP e diamo la loro traduzione in Reti SA.

Slides:



Advertisements
Presentazioni simili
Sfogliandomi… Viaggio tra me e me alla scoperta dellaltro… A travel between me and myself discovering the other…
Advertisements

Stefano Leonardi Ricevimento: Tel.:
Simple Past A cura di Mara Cruciani.
Linguaggio C++ Selezione.
WSDL (Web Services Description Language) Laurea Magistrale in Informatica Reti 2 (2006/07) dott. Federico Paoloni
Capitolo 2 Nozioni fondamentali su Java Lucidi relativi al volume: Java – Guida alla programmazione James Cohoon, Jack Davidson Copyright © The McGraw-Hill.
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
Modulo sulla concorrenza
Sintassi- Semantica operazionale
Pensare da economista Capitolo 2.
Metodi Quantitativi per Economia, Finanza e Management Lezione n°7.
Introduzione agli algoritmi. Definizione Sistema di regole e procedure di calcolo ben definite che portano alla soluzione di un problema con un numero.
Model – View - Controller
Unified Modeling Language class C {…} class B extends C {…} Esiste una notazione grafica per mostrare le relazioni di ereditarietà. Object StringC B Tutte.
J0 1 Marco Ronchetti Java Threads & Sincronizzazione.
Sezione: Costruttori Costruttori. Definizione dei costruttori Se per una classe A non scrivo nessun costruttore, il sistema automaticamente crea il costruttore.
Lettura e scrittura - Stream
1: Introduction1 Condivisione file P2P r Allinizio del 2004 P2P era responsabile di un volume di traffico maggiore a qualunque altra applicazione Internet.
Citrix Metaframe. Metaframe è la soluzione client-server prodotta dalla Citrix in grado di rendere disponibili applicazioni e desktop a qualsiasi dispositivo.
Teoria a molti-corpi della materia nucleare. Testi di riferimento Nuclear methods and the nuclear Equation of State, International review of Nuclear Physics,
Fondamentidi Programmazione Corso: Fondamenti di Programmazione Classe: PARI-DISPARI Docente: Prof. Luisa Gargano Testo: Aho, Ulman, Foundations of Computer.
Sottoprogrammi e Unità di Compilazione Nicola Fanizzi Laboratorio - Corso di Programmazione (B) C.d.L. in Informatica DIB - Università degli Studi di Bari.
FONDAMENTI DI INFORMATICA III WfMC-1. FONDAMENTI DI INFORMATICA III WfMC-2 WFMC Cose WfMC Workflow Management Coalition (WfMC), Brussels, è unorganizzazione.
Semplice regolazione digitale di velocità di un motore in c. c
Le regole Giocatori: da 2 a 10, anche a coppie o a squadre Scopo del gioco: scartare tutte le carte per primi Si gioca con 108 carte: 18 carte.
DIAGRAMMI DI FLUSSO Notazione grafica usata per descrivere in modo intuitivo le azioni di cui è fatto un algoritmo. Viene usata per descrivere i passi.
Concurrency: concurrent execution1 ©Magee/Kramer const N = 1 intervallo T = 0..N intervallo R = 0..2*N SUM = (in[a:T][b:T]->TOTAL[a+b]), TOTAL[s:R] = (out[s]->SUM).
Composizione parallela - alternanza di azioni
Componenti dell’architettura Oracle
Lezione del 6 giugno A) Planning con SMODELS (vedere programma di esempio) B) Struttura di un robot.
UNIVERSITA DEGLI STUDI DI ROMA La Sapienza F ACOLTÀ DI S CIENZE M ATEMATICHE, F ISICHE E N ATURALI C ORSO DI L AUREA S PECIALISTICA IN I NFORMATICA F ORMAL.
I modelli reticolari Rappresentano graficamente le procedure attraverso nodi e linee; 2. Ogni linea rappresenta unattività; 3. Su ogni linea è riportato.
Professional Users. Per poter lavorare sul Dizionario, bisogna registrarsi come Utente Professionale – Professional User (solo.
Biologia a.s Biorisanamento di Castelli Enrico 2i.
Piano gestione solventi
JavaScript Lezione 5 Tipizzazione ed operazioni tra tipi diversi Istruzioni di input.
Industrie eco-sostenibili Maggiore rispetto della natura utilizzando nuove fonti rinnovabili Rispetto per la natura Prevenzione inquinamento.
Simucenter 3 N 2009/10. Storia del led Il primo LED è stato sviluppato nel 1962 da Nick Holonyak Jr.. [1][2] Il dispositivo sfrutta le proprietà ottiche.
La forma passiva Questa mattina quella banca è stata rapinata da 3 uomini armati e mascherati. -Nella forma attiva il soggetto del verbo è l’agente della.
Processi di formazione dei siti
Liceo Statale Martin Luther King Viale Pietro Nenni,136 – Favara (AG) Tel sito web: -
Mobile e Social per portare traffico nei negozi H&m Isabella Federico.
L’azienda prima dell’intervento:
I CONTRATTI Lezione 2 la formazione e la conclusione del contratto.
DMUX SDI (OUT VTR) AUDIO MIX AUDIO MIX VIDEO VIDEO Il sistema video digitale ( SDI ) contiene sia il video che l'audio, su un unico cavo video e il connettore.
GAUDI Carpi 01 aprile Panoramica Visitatori On-line nuovo sito Visite medie quotidiane: 398 Visite medie quotidiane:
Giochi educativi on line e off line Come programmarne limpiego in classe.
LE RETI E IL DDNS.
LAVORO ED ENERGIA L’energia è la capacità di un sistema di compiere lavoro In natura esistono diverse forme di energia e ognuna di esse si trasforma continuamente.
LIKES AND DISLIKES Click here to enter Exercises.
CURIOSITA’ sull’EURO curiosities.
24 aprile 2002 Avvisi: Risultati 1 o Esonero: (entro) lunedi 27 disponibili nella pag. WEB, ma anche esposti nella bacheca fuori dal corridoio 2 o dente,
SUBQUERY Chi ha un salario maggiore di quello di Abel? Occorre scomporre la query in due sotto problemi: MAIN : quali impiegati hanno un salario maggiore.
Il Passato Prossimo e un tempo NARRATIVO -Esprime unazione COMPLETATA al passato -Risponde alla domanda What happened? Due giorni fa abbiamo guidato per.
Introduzione al linguaggio C. Cos’e’ il C? Il C e’ un linguaggio ad alto livello Un compilatore C prende in input un file contenente codice sorgente C.
Scrivere un algoritmo non deterministico di complessita` polinomiale che risolva il problema del commesso viaggiatore. Vengono proposte due soluzioni,
Dynamic SQL.
Parsing ricorsivo discendente Il parsing ricorsivo discendente (recursive descent parsing) è un metodo di tipo top-down che può essere facilmente codificato.
ArduCameriere 2011 Team “DICo Arduino Afternoon” ● Andrea, Andrea, Domenico, Elisa, Eno, Luca, Stefano Dipartimento di Informatica e Comunicazione Università.
Algoritmi di stima con perdita di pacchetti in reti di sensori wireless: modellizzazione a catene di Markov, stima e stima distribuita Chiara Brighenti,
PROGRAMMAZIONE BASH – ISTRUZIONE IF
Programmare.
Programmazione e Laboratorio di Programmazione
Ricorsione 16/01/2019 package.
Programmazione e Laboratorio di Programmazione
APPUNTI SUL LINGUAGGIO C Esercizi su File e Alberi Binari
Regola 10: L’esito di una gara
Risolvere le moltiplicazioni tra frazioni
Lezione Terza Primi passi di programmazione
Programmazione e Laboratorio di Programmazione
Transcript della presentazione:

Concurrency: introduction1 ©Magee/Kramer Semantica operazionale di FSP Consideriamo i costrutti FSP e diamo la loro traduzione in Reti SA

Concurrency: introduction2 ©Magee/Kramer FSP - azioni e processi Se x è unazione e P un processo (x-> P) descrive un processo che inizialmente esegue lazione x e poi si comporta esattamente come P. ATTIVAZIONEUNICA = (unavolta -> STOP). Rete SA unavolta. STOP

Concurrency: introduction3 ©Magee/Kramer LTS e grafo di Raggiungibilita Lautoma LTS associato ad una espressione FSP e isomorfo al Grafo di Raggiungibilita della rete SA che descrive la semantica di quella espressione Lo stato globale di LST corrisponde alla marcatura della Rete SA che distingue gli stati delle sue componenti

Concurrency: introduction4 ©Magee/Kramer FSP - ricorsione ATTIVAZIONE = OFF, OFF = (on -> ON), ON = (off -> OFF). Un comportamento ripetitivo si modella mediante ricorsione: Definizione più sintetica: ATTIVAZIONE = (on -> off -> ATTIVAZIONE). Rete SA on off.

Concurrency: introduction5 ©Magee/Kramer FSP : un esempio SEMAFORO = (rosso->giallo->verde->giallo->SEMAFORO). LTS : Trace: modello FSP di un semaforo : rossogialloverde giallo Rete SA rosso giallo verde giallo rosso giallo verde giallo rosso giallo verde …

Concurrency: introduction6 ©Magee/Kramer FSP - costrutto di selezione Se x e y sono azioni, (x-> P | y-> Q) descrive un processo che inizialmente realizza una delle due azioni x o y. Dopo lesecuzione della prima azione, il comportamento successivo è descritto da P se la prima azione è stata x, da Q se la prima azione è stata y.

Concurrency: introduction7 ©Magee/Kramer FSP - scelta DISTRIBUTORE = (rosso->caffè->DISTRIBUTORE |blu-> thè-> DISTRIBUTORE). LTS Modello FSP di una macchina distributrice di bevande: rosso blu caffè thè rossoblu caffèthè Rete SA

Concurrency: introduction8 ©Magee/Kramer Scelta non deterministica Il processo (x-> P | x -> Q) descrive unazione iniziale x e un comportamento successivo modellato da P o Q. LANCIOMONETA = (lancio->TESTA|lancio->CROCE), TESTA = (vistesta->LANCIOMONETA), CROCE= (viscroce->LANCIOMONETA). Lanciare una moneta

Concurrency: introduction9 ©Magee/Kramer Scelta non deterministica Lanciare una moneta lancio viscroce vistesta lancio vistestaviscroce A) lancio vistestaviscroce lancio B) LTS : Reti SA

Concurrency: introduction10 ©Magee/Kramer Modellare errori (eccezioni) Come si può modellare un canale di comunicazione inaffidabile che accetta un input (in) e produce un output solo nel caso in cui non si presenti un errore? Uso del non-determinismo... CHAN = (in->error ->CHAN |in->out->CHAN). in errorout Rete SA A)

Concurrency: introduction11 ©Magee/Kramer Buffer che prende in input un valore nellintervallo e restituisce in output quel valore: FSP - processi e azioni indicizzati BUFF = (in[i:0..3]-> out[i]-> BUFF). e equivalente a: o, usando un parametro di processo con valore di default: BUFF = (in[0]->out[0]->BUFF |in[1]->out[1]->BUFF |in[2]->out[2]->BUFF |in[3]->out[3]->BUFF ). BUFF(N=3) = (in[i:0..N]->out[i]-> BUFF).

Concurrency: introduction12 ©Magee/Kramer FSP - selezione su condizione La selezione (when B x -> P | y -> Q) significa che quando la condizione B è verificata allora è possibile scegliere sia lazione x sia lazione y, altrimenti se B non è verificata lazione x non può essere scelta. COUNT (N=3) = COUNT[0], COUNT[i:0..N] = (when(i COUNT[i+1] |when(i>0) dec->COUNT[i-1] ).

Concurrency: introduction13 ©Magee/Kramer FSP - selezione su condizione decinc dec inc Valore 0 Valore 1 Valore 2 Valore 3 dec