Simulazione a eventi discreti
|
|
|
- Annunciata Arena
- 10 anni fa
- Просмотров:
Транскрипт
1 Facoltà di Scienze MM.FF.NN Corso di Laurea in Informatica Introduzione alla simulazione Simulazione a eventi discreti Definizioni struttura ed elementi di un simulatore DES esempi di modelli e implementazione DES Esecuzione di una simulazione DES ([email protected]) 2 Definizione di simulazione Imitazione delle operazioni eseguite nel tempo da un sistema o processo reale Scopo della simulazione Generazione di una storia artificiale del sistema Studio e valutazione delle caratteristiche del sistema (analisi delle prestazioni) Risposta alla domanda cosa accade se Scopo della simulazione Analisi di sistemi ipotetici Confronto tra due o più sistemi Determinare valore ottimale di parametri Determinare i punti critici (bottlenecks) Capacity planning Predire le prestazioni del sistema nel futuro 3 4
2 Possibili alternative per l analisi prestazionale di sistemi: Simulazione Monitor del sistema (benchmark) Analisi Perché la simulazione? Se il sistema non esiste non posso usare benchmarks Permette valutazioni ripetibili di sistemi (e nelle stesse condizioni) Permette valutazioni di eventi e condizioni rare o rischiose Permette stime non misurabili su sistemi reali Non introduce overhead o alterazioni delle stime nel sistema (es. benchmark per valutare prestazioni S.O.) Permette una buona accuratezza 5 6 Vantaggi della simulazione Test di sistemi prima di investire sulle strutture Possibilità di zoom sul tempo simulato Possibilità di capire le cause di eventi Esplorare nuove politiche di gestione Diagnosi di problemi Identificazione di requisiti Comprensione del sistema Ripetibilità Svantaggi della simulazione Costruzione dei modelli lunga e non banale Interpretazione dei risultati lunga e complessa Vengono in aiuto Simulatori (primitive e strutture dati) Ambienti di simulazione (+ analisi dati di output) 7 8
3 Concetti di Modeling e loro impiego in simulazione Sistemi vs. modelli Variabili di stato del sistema eventi Entità e attributi Risorse Gestione di liste Attività e ritardi Modelli di simulazione a eventi discreti Sistema da analizzare: una collezione di HW, SW e FW Metrica: criterio usato per la valutazione delle prestazioni del sistema da analizzare Carico di lavoro (workload) Le richieste fatte dagli utenti del sistema 9 10 Modello: astrazione o rappresentazione di un sistema reale Analisi del sistema e isolamento delle caratteristiche da includere nel modello Complessità: commisurata alle necessità dell analisi Semplicità: favorisce implementazione corretta e prestazioni del simulatore Fedeltà: fornisce dati realmente descrittivi Approssimazione: trade-off con semplicità Tempo simulato vs. wall-clock time Modelli a tempo continuo/discreto tempo continuo: lo stato del sistema è definito sempre in ogni t tempo discreto: lo stato del sistema è definito in istanti di tempo discreti: t, t+1 Es. numero studenti del Mercoledi 11 12
4 Modelli a stato continuo/discreto continuous-event model: le var. di stato sono continue Es. livello del liquido in un bacino idrico Possono essere approssimati da discrete-event models discrete-event model: le var. di stato sono discrete e cambiano valori in corrispondenza di eventi discreti Es. numero di persone in attesa alla posta Modello deterministico/probabilistico deterministico: output(input k)= x probabilistico: output(input k)= x1, x2, x3 Modello statico/dinamico statico: lo stato non dipende dal tempo dinamico: lo stato dipende dal tempo Modello lineare/non lineare lineare: output(x)= k*x non lineare: output(x)!= k*x Modello aperto/chiuso chiuso: nuovi job non entrano o escono dal sistema aperto: source e sink per i job Modello stabile/instabile stabile: comportamento converge allo stato stazionario instabile: comportamento che cambia continuamente (e se è oscillante?) 15 16
5 Variabili di stato del sistema variabili che descrivono lo stato del sistema al tempo (simulato) t, e al livello di definizione sufficiente per l analisi permettono di interrompere e riprendere la simulazione Sono strutture dati del modello Evento un cambiamento nello stato del sistema avviene al tempo simulato t eventi che accadono allo stesso tempo t devono essere serializzati opportunamente (e univocamente, per ripetibilità della simulazione). Evento interno (endogeno) Riguarda variabili interne al modello Es. inizio di un servizio di un job in coda Evento esterno (esogeno) Riguarda variabili esterne al modello Es. arrivo di un nuovo utente in coda Attività Periodo di tempo di durata pre-determinata caratterizzato da attività in corso Scheduling di eventi di inizio/fine attività Nella simulazione a eventi discreti (DES) le attività avanzano il tempo simulato t Durata dell attività Caratterizzata da distribuzione statistica Ritardo (delay) Durata indefinita di un attività, legata alle condizioni e all evoluzione del sistema (attesa) Entità (elementi che eseguono transazioni) Oggetti esplicitamente definiti nel modello sono gli elementi che fluiscono nel sistema determinano l accadere di eventi, oppure reagiscono ad eventi Possono competere per ottenere le risorse ed essere accodati nelle corrispondenti code di attesa Attributi Sono valori locali delle entità Es. tempo di arrivo del cliente, dimensione della richiesta di servizio, ecc
6 Risorse Sono entità che forniscono servizi passivi (risorse) o attivi (server) ad entità dinamiche (che possono richiedere una o più unità della risorsa passiva, e mai due server contemporaneamente) Le risorse richieste, se occupate, possono determinare un attesa in coda gestione della coda, prima e dopo ogni servizio Possono fornire servizi in parallelo (server parallelo) può servire più entità contemporaneamente Liste Sono strutture usate per implementare code Possono essere mantenute ordinate, secondo i valori di attributi per ragioni di efficienza Discipline di attesa/servizio Es. FIFO, LIFO Shortest Request First (basata su attributo locale) ecc DES: una prima visione transaction-flow sistema costituito da unità di traffico (transactions) discrete che fluiscono attraverso le componenti e le risorse del sistema DES: lo stato del sistema cambia solo a determinati istanti di tempo (discreto), anche se casuali
7 Esperimento di simulazione si eseguono più repliche (trials) si usano sequenze pseudo-random diverse producono set di risultati indipendenti e identicamente distribuiti (i.i.d.) ogni replica viene detta RUN di simulazione un RUN di simulazione consiste nell esecuzione del modello avanza il CLOCK di tempo simulato diverso dal Wall Clock Time in DES ci sono due elementi del simulatore ciclicamente eseguiti esegui tutti gli eventi/processi del tempo T avanza il T simulato al prossimo evento/processo esecuzione eventi del tempo simulato T un RUN di simulazione Init. Phase Entity movement phase Clock update phase no end-condition true? Reporting phase 27 28
8 Componenti del simulatore routine di inizializzazione: chiamate per prime, definiscono lo stato iniziale del sistema, gli stream pseudo-casuali, ecc. Varie routine di gestione dei singoli eventi, o scheduling dei processi (simulatore + implementazione del modello) Report generator: procedure che al termine della simulazione generano i dati di stima routine di trace: procedure per notificare eventi o stime a run-time gestione dinamica memoria e garbage collection Traduzione del modello Il modello concettuale ottenuto viene codificato in una forma interpretabile dal calcolatore, ottenendo un modello operazionale Dipende dal simulatore e dalla tecnica di implementazione della simulazione usata Occorre definire le strutture dati, la loro gestione, le funzioni le procedure deputate alla gestione, le funzioni e le procedure di supporto Verifica e Validazione Tipo di simulazione: Discrete-event simulation (DES) simulazione che usa un modello del sistema a tempo discreto opposto di continuous-event simulation può essere basata su stato continuo o discreto Le variabili di stato cambiano solo in corrispondenza ad eventi discreti, determinati a loro volta da attività e ritardi. Strutture di modeling e DES Esistono essenzialmente quattro metodologie noi vediamo rapidamente 1 e soprattutto 2 1. Interazione tra Processi 2. Scheduling di Eventi 3. Scansione di attività 4. Tre fasi 31 32
9 Simulazione per Interazione tra Processi Il flusso di esecuzione di un processo in esecuzione emula il flusso di un oggetto attraverso il sistema L esecuzione procede finchè il flusso non viene bloccato o entra in una nuova attività Attesa in coda, servizio (ritardo), sink Quando il flusso di un entità viene bloccato, il tempo simulato avanza al tempo di inizio previsto dalla prima successiva entità in esecuzione occorre un processo che rileva deadlock? Simulazione per Interazione tra Processi è un approccio naturale alla simulazione per chi sa programmare (transaction flow = flow chart) il comportamento di ogni entità viene codificato come codice da eseguire o procedura esistono regole chiare e univoche su chi viene eseguito e fino a quando. (non lo scheduler di processi gestito dal S.O, a meno che non si creino primitive di gestione e sincronizzazione ad hoc...) primitive di temporizzazione e di sincronizzazione tra processi Simulazione per Interazione tra Processi es. linguaggi SIMULA, C-SIM, ecc. implementazione di processi pseudo-paralleli reentrant-code (un programma eseguibile da più istanze di processi diversi, con stato locale), threads... processi eseguiti in MODEL-time (non real time) che può essere accelerato o rallentato. Simulazione per Interazione tra Processi Vita di un processo nel modello fase attiva di esecuzione (richiede 0 model-time) aggiornamento e gestione stato locale e globale fase passiva di esecuzione (in >0 model-time discreto) es. attesa per risorsa o servizio ricevuto ordine di esecuzione dei processi governato dal calendar (lista di puntatori a processi ordinati per model-time di risveglio ) e gestito attraverso un processo-scheduler (kernel) 35 36
10 Simulazione per Interazione tra Processi Possibili stati dei processi Passive: il processo è definito, ma non ha nessuna entry relativa nel calendar, cioè non si sa se e quando si risveglia Planned: il processo è definito, e ha una entry relativa nel calendar, cioè si sa quando si risveglia Active: il processo è eseguito (la sua entry è in testa al calendar) Terminated: il processo è terminato (non può essere riavviato) e i suoi dati sono ancora mantenuti in memoria le transizioni di stato avvengono attraverso l esecuzione del processo stesso o da parte di terzi Simulazione per Interazione tra Processi Primitive di transizione di stato dei processi passivate(),hold(): l attuale processo ATTIVO diventa PASSIVO e viene rimosso dal calendar. Il primo processo in testa al calendar diventa il processo attivo. wait(dmt): il processo x ATTIVO diventa PLANNED al Model-Time attuale + DeltaModelTime (DMT). Il primo processo in testa al calendar diventa il processo attivo. activate(y,mt): il processo x ATTIVO cambia lo stato del processo Y da PASSIVO a PLANNED(tempo MT). Il processo x rimane ATTIVO. cancel(y): come activate, ma x ATTIVO cambia Y da PLANNED a PASSIVO Simulazione per scheduling di eventi non ci sono processi, ma esecuzione sequenziale di gestori di eventi Si avanza il tempo simulato al tempo T dell evento successivo (di solito il termine o l inizio di un attività) e si eseguono tutti gli eventi di T Simulatore = Lista ordinata di eventi e scheduler di eventi Il termine di un attività coincide con la nuova allocazione di risorse rilasciate tra le entità in attesa e con lo scheduling di nuove attività causalmente determinate scheduler di eventi mantiene struttura di lista ordinata per tempo simulato (multi-linked) di eventi futuri (schedulati, cancellati, rinviati, bloccati). Gestisce l avanzamento del tempo simulato event-driven: clock=(tempo del prossimo evento il lista) unit-time: clock= clock+delta... Sono accaduti eventi? Struttura dati Evento=(time, puntatore al codice della routine di evento) La routine di evento aggiorna le var. di stato e la lista di eventi (inserisce, cancella, o rinvia eventi) 39 40
11 Flusso di esecuzione di un RUN di simulazione DES: (Simulated) Model-time e (Real) WallClock-Time Ciclo tra EMP e CUP Entità: possono essere in 5 stati possibili Attivo solo un entità alla volta (quella in esecuzione al wall clock time attuale) Ready durante una EMP ci possono essere più entità pronte a muoversi al tempo T, che diventeranno ATTIVE una alla volta Time-delayed entità che diventeranno di nuovo READY a un tempo futuro già determinato (per le quali la prossima attività è un evento nel futuro) Entità: possono essere in 5 stati possibili Condition-delayed entità che diventeranno di nuovo READY a un tempo futuro non determinato, che dipende dal verificarsi di una certa condizione (es. il rilascio di una risorsa) Dormienti sono entità per le quali non è prevista una condizione di risveglio automatico, ma che possono essere rese attive dalla logica prevista dal creatore del modello, a seconda dei casi
12 Ciclo dei possibili stati di un entità in un RUN di simulazione DES Es. di entry di una lista di gestione eventi Es. di lista di gestione eventi futuri (FEL) t t+ 1 t+ 2 approccio event driven 1!= 2 t t+ t+2 approccio unit-time costante Strutture dati per il controllo delle entità tipicamente per ogni stato delle entità esiste una lista relativa lista (singolo elemento) Active Entity (AEL) tale entità viene eseguita fino a che non cambia stato o si elimina dal sistema Current Event List (CEL) contiene tutte le entità ATTIVE (pronte all esecuzione) contiene le possibili entità clonate dalla entità attiva possibili criteri di priorità per diventare ATTIVE 47 48
13 Future Event List (FEL) lista di eventi del tempo T1, T2... contiene le entità in stato TIME-DELAYED ordinata per tempo simulato di movimento dell entità quando termina la EMP, il CUP avanza al tempo simulato della prima entry della FEL, poi tutta la lista attuale di FEL viene spostata nella CEL (diventano entità READY), e la EMP riparte a eseguire le entità... Delay List (condition-delayed entities) related waiting (se conosco le cause o eventi che possono liberare) o polled waiting (controllo ciclico condizioni) entità liberate vanno aggiunte alla CEL (ready entity) User Managed List lista di entità in stato dormiente la gestione e la semantica è a carico del creatore del modello Elementi di controllo sono elementi che agiscono da trigger di eventi e rilevano combinazioni di condizioni di stato es. se (coda piena) e Tsimulazione>300 allora... Critici da implementare per questioni di efficienza es. Problemi di implementazione e gestione risorsa rilascia e tenta di acquisire subito la risorsa 1) allocare la risorsa prima di rendere l entità un contendente? 2) rendere l entità un contendente prima di allocare la risorsa? 3) risorsa ri-catturata immediatamente? Il primo della coda viene sempre ritardato A è in coda prima di B per la risorsa R. A chiede 2 R mentre B chiede 1 R... una sola R diventa disponibile: cosa fare? 51 52
14 es. Problemi di implementazione e gestione Yielding control la Active entity vuole dare controllo ad altre Ready entities, poi vuole ri-acquisire il controllo, prima che il CUP avanzi il tempo simulato: come si fa? es. apro porta per 10 entità e poi riblocco la porta... Condizioni di attesa che coinvolgono il clock es. wait until buffer empty OR clock = 1000 (non >=) tipicamente si clonano le entità (dummy entity) e poi si gestiscono in coppia (la prima che si libera elimina l altra) Condizioni di attesa che coinvolgono lo stato delle risorse es. A wait finchè R viene rilasciata da chi la detiene ora (B)... occorre garantire che la entità A sia sbloccata PRIMA dell eventuale cattura della risorsa R da parte di altre entità che erano in attesa Introduzione alla Simulazione Time = 12:00:00 Time = 12:00: Porsche 6 Police 5 conv. 4 corvette 1 VW bug 2 Minivan 3 Porsche 6 Police 5 conv. 4 corvette 1 VW bug 2 Minivan 3 Car 7? 55 56
15 Time = 12:00:20 Time = 12:00:40 Car 7 ( 16 $) $ 10, (kit. 2, next 2) Porsche 6 Police 5 conv. 4 corvette 1 VW bug 2 Minivan 3 Porsche 6 Police 5 conv. 4 VW bug 2 Minivan 3 corvette1 Car 7 (16$) Time = 12:00:56 Time = 12:01: Porsche 6 Police 5 conv. 4 Minivan 3 VW $, (kit. 3, next 3) Porsche 6 Police 5 Minivan 3 conv. 4 (next 5, 4 in nuova coda) schedule end kit
16 Time = 12:01:30 Time = 13:00: CAR 8 Porsche 6 Police 5 Minivan 3 conv. 4 CAR 26 Porsche 25 Police 24 Minivan 22 conv. 23 Car 8 (9 $) Dopo 30 RUN CAR 26 Porsche 25 Police 24 Minivan 22 conv
Automazione Industriale (scheduling+mms) scheduling+mms. [email protected]
Automazione Industriale (scheduling+mms) scheduling+mms [email protected] Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione
Tecniche di Simulazione: Introduzione. N. Del Buono:
Tecniche di Simulazione: Introduzione N. Del Buono: 2 Che cosa è la simulazione La SIMULAZIONE dovrebbe essere considerata una forma di COGNIZIONE (COGNIZIONE qualunque azione o processo per acquisire
FONDAMENTI di INFORMATICA L. Mezzalira
FONDAMENTI di INFORMATICA L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software
Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux
Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Sistemi multiprocessori Fin qui si sono trattati i problemi di scheduling su singola
Un sistema operativo è un insieme di programmi che consentono ad un utente di
INTRODUZIONE AI SISTEMI OPERATIVI 1 Alcune definizioni 1 Sistema dedicato: 1 Sistema batch o a lotti: 2 Sistemi time sharing: 2 Sistema multiprogrammato: 3 Processo e programma 3 Risorse: 3 Spazio degli
Progettaz. e sviluppo Data Base
Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo
TECNICHE DI SIMULAZIONE
TECNICHE DI SIMULAZIONE INTRODUZIONE Francesca Mazzia Dipartimento di Matematica Università di Bari a.a. 2004/2005 TECNICHE DI SIMULAZIONE p. 1 Introduzione alla simulazione Una simulazione è l imitazione
Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.
Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell
Introduzione alla Simulazione Numerica
Introduzione alla Simulazione Numerica Daniele Vigo D.E.I.S. - Università di Bologna [email protected] rev. 1.0 - Novembre 2001 Simulazione numerica Tecnica che permette di eseguire esperimenti su un
rappresentazione astratta di un sistema e/o di una situazione reale tramite un insieme di dati/elementi ad essa analoghi
Modelli Definizione: rappresentazione astratta di un sistema e/o di una situazione reale tramite un insieme di dati/elementi ad essa analoghi Obiettivo: studio del comportamento del sistema e delle relazioni
Scheduling. Sistemi Operativi e Distribuiti A.A. 2004-2005 Bellettini - Maggiorini. Concetti di base
Scheduling Sistemi Operativi e Distribuiti A.A. 2-25 Bellettini - Maggiorini Concetti di base Il massimo utilizzo della CPU si ottiene mediante la multiprogrammazione Ogni processo si alterna su due fasi
Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer.
I Sistemi Operativi Il Software di Base Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer. Il sistema operativo è il gestore di tutte le risorse
La 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
Introduzione alla Virtualizzazione
Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: [email protected] Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse
Scheduling della CPU. Concetti fondamentali. Concetti fondamentali. Concetti fondamentali. Dispatcher. Scheduler della CPU
Scheduling della CPU Concetti fondamentali Criteri di scheduling Algoritmi di scheduling Concetti fondamentali L obiettivo della multiprogrammazione è di avere processi sempre in esecuzione al fine di
Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino
Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.
ESERCIZIO 1 (b) Dove è memorizzato il numero del primo blocco del file? Insieme agli altri attributi del file, nella cartella che contiene il file.
ESERCIZIO 1 Si consideri un hard disk formattato la cui memoria è suddivisa in 16 blocchi (numerati da 0 a 15). Si supponga che sull hard disk sia memorizzato un unico file, contenuto, nell ordine, nei
Parte 4. Progettazione di una simulazione
Parte 4 Progettazione di una simulazione Fasi di uno studio di simulazione l approccio a cascata Problema Analisi e validazione Progettazione e test Sistema Modello concettuale Programma di simulazione
INFORMATICA 1 L. Mezzalira
INFORMATICA 1 L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software del modello
I processi. Un processo è una attività, controllata da un programma, che si svolge su un processore.
I processi Cos è un processo? Un processo è una attività, controllata da un programma, che si svolge su un processore. Il programma è una entità statica che descrive la sequenza di istruzioni che devono
Artifact Centric Business Processes (I)
Introduzione Autore: Docente: Prof. Giuseppe De Giacomo Dipartimento di Informatica e Sistemistica SAPIENZA - Universitá di Roma 16 Novembre 2008 Una visione assiomatica La modellazione dei processi di
Scheduling della CPU:
Coda dei processi pronti (ready( queue): Scheduling della CPU primo ultimo PCB i PCB j PCB k contiene i descrittori ( process control block, PCB) dei processi pronti. la strategia di gestione della ready
Sistemi Operativi GESTIONE DELLA MEMORIA SECONDARIA. D. Talia - UNICAL. Sistemi Operativi 11.1
GESTIONE DELLA MEMORIA SECONDARIA 11.1 Memoria Secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Struttura RAID Affidabilità Implementazione della memoria
Sistemi Operativi. Memoria Secondaria GESTIONE DELLA MEMORIA SECONDARIA. Struttura del disco. Scheduling del disco. Gestione del disco
GESTIONE DELLA MEMORIA SECONDARIA 11.1 Memoria Secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Struttura RAID Affidabilità Implementazione della memoria
Approccio stratificato
Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia
Corso di Informatica
Corso di Informatica Modulo T3 3-Schedulazione 1 Prerequisiti Concetto di media Concetto di varianza 2 1 Introduzione Come sappiamo, l assegnazione della CPU ai processi viene gestita dal nucleo, attraverso
Corso di Basi di Dati e Conoscenza
Corso di Basi di Dati e Conoscenza Gestione dei Dati e della Conoscenza Primo Emicorso - Basi di Dati Roberto Basili a.a. 2012/13 1 Obbiettivi Formativi Scenario Le grandi quantità di dati accumulate nelle
Database. 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
Pronto 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
A 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
Sistemi Operativi. Scheduling della CPU SCHEDULING DELLA CPU. Concetti di Base Criteri di Scheduling Algoritmi di Scheduling
SCHEDULING DELLA CPU 5.1 Scheduling della CPU Concetti di Base Criteri di Scheduling Algoritmi di Scheduling FCFS, SJF, Round-Robin, A code multiple Scheduling in Multi-Processori Scheduling Real-Time
Sistemi Operativi SCHEDULING DELLA CPU. Sistemi Operativi. D. Talia - UNICAL 5.1
SCHEDULING DELLA CPU 5.1 Scheduling della CPU Concetti di Base Criteri di Scheduling Algoritmi di Scheduling FCFS, SJF, Round-Robin, A code multiple Scheduling in Multi-Processori Scheduling Real-Time
EXPLOit Content Management Data Base per documenti SGML/XML
EXPLOit Content Management Data Base per documenti SGML/XML Introduzione L applicazione EXPLOit gestisce i contenuti dei documenti strutturati in SGML o XML, utilizzando il prodotto Adobe FrameMaker per
Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi
Indice generale OOA Analisi Orientata agli Oggetti Introduzione Analisi Metodi d' analisi Analisi funzionale Analisi del flusso dei dati Analisi delle informazioni Analisi Orientata agli Oggetti (OOA)
Scheduling della CPU Simulazione in linguaggio Java
Scheduling della CPU Simulazione in linguaggio Java Realizzato da: Amelio Francesco 556/001699 Di Matteo Antonio 556/000067 Viola Antonio 556/000387 Progetto di Sistemi Operativi Docente Giancarlo Nota
La schedulazione. E.Mumolo [email protected]
La schedulazione E.Mumolo [email protected] Concetti fondamentali Multiprogrammazione: esecuzione simultanea di più sequenze di esecuzione Pseudo-parallelismo su una sola CPU Esecuzione parallela su più
BASI 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
Introduzione 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
Dispensa di Informatica I.1
IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.
Scheduling della CPU
Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux 6.1 Sistemi multiprocessori simmetrici Fin qui si sono trattati i problemi di scheduling
Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1
IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza
Sistemi 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
Base di dati e sistemi informativi
Base di dati e sistemi informativi Una base di dati è un insieme organizzato di dati opportunamente strutturato per lo svolgimento di determinate attività La base di dati è un elemento fondamentale per
Sistemi Operativi. Processi GESTIONE DEI PROCESSI. Concetto di Processo. Scheduling di Processi. Operazioni su Processi. Processi Cooperanti
GESTIONE DEI PROCESSI 4.1 Processi Concetto di Processo Scheduling di Processi Operazioni su Processi Processi Cooperanti Concetto di Thread Modelli Multithread I thread in diversi S.O. 4.2 Concetto di
Processi e Thread. Scheduling (Schedulazione)
Processi e Thread Scheduling (Schedulazione) 1 Scheduling Introduzione al problema dello Scheduling (1) Lo scheduler si occupa di decidere quale fra i processi pronti può essere mandato in esecuzione L
Il memory manager. Gestione della memoria centrale
Il memory manager Gestione della memoria centrale La memoria La memoria RAM è un vettore molto grande di WORD cioè celle elementari a 16bit, 32bit, 64bit (2Byte, 4Byte, 8Byte) o altre misure a seconda
2. 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
Ibpm è lo strumento per la gestione dei processi, dalla modellazione, all esecuzione, al monitoraggio.
L applicazione sviluppata da Ibimec si propone di dare una copertura informatica per quelle attività che vengono svolte al di fuori del sistema informatico gestionale dell azienda, ma indispensabili per
1. BASI DI DATI: GENERALITÀ
1. BASI DI DATI: GENERALITÀ BASE DI DATI (DATABASE, DB) Raccolta di informazioni o dati strutturati, correlati tra loro in modo da risultare fruibili in maniera ottimale. Una base di dati è usualmente
SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09
SISTEMI OPERATIVI Prof. Enrico Terrone A. S: 2008/09 Che cos è il sistema operativo Il sistema operativo (SO) è il software che gestisce e rende accessibili (sia ai programmatori e ai programmi, sia agli
Il costrutto monitor [Hoare 74]
Il monitor 1 Il costrutto monitor [Hoare 74] Definizione: Costrutto sintattico che associa un insieme di operazioni (entry, o public) ad una struttura dati comune a più processi, tale che: Le operazioni
1. 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
Verifica e Validazione del Simulatore
Verifica e del Simulatore I 4 passi principali del processo simulativo Formulare ed analizzare il problema Sviluppare il Modello del Sistema Raccolta e/o Stima dati per caratterizzare l uso del Modello
Strutturazione logica dei dati: i file
Strutturazione logica dei dati: i file Informazioni più complesse possono essere composte a partire da informazioni elementari Esempio di una banca: supponiamo di voler mantenere all'interno di un computer
Funzioni in C. Violetta Lonati
Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni
MODELLISTICA 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
Definizione di processo. Un processo è un programma (o una parte di una programma) in corso di esecuzione
SISTEMI OPERATIVI (parte prima - gestione dei processi) Tra i compiti di un sistema operativo sicuramente troviamo i seguenti: Gestione dei processi Gestione della memoria Gestione del file-system Ci occuperemo
SCHEDULATORI DI PROCESSO
Indice 5 SCHEDULATORI DI PROCESSO...1 5.1 Schedulatore Round Robin...1 5.2 Schedulatore a priorità...2 5.2.1 Schedulatore a code multiple...3 5.3 Schedulatore Shortest Job First...3 i 5 SCHEDULATORI DI
SISTEMI 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
Architettura di un sistema operativo
Architettura di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Struttura di un S.O. Sistemi monolitici Sistemi a struttura semplice Sistemi a livelli Virtual Machine Sistemi
Linguaggi di programmazione
Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di un programma, cioè di una sequenza di istruzioni descritte nel linguaggio interpretabile dal calcolatore
La Gestione delle risorse Renato Agati
Renato Agati delle risorse La Gestione Schedulazione dei processi Gestione delle periferiche File system Schedulazione dei processi Mono programmazione Multi programmazione Gestione delle periferiche File
Realizzazione 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
Scheduling Introduzione Tipi di scheduler Scheduler di lungo termine (SLT) Scheduler di medio termine (SMT) Scheduler di breve termine (SBT)
Scheduling Introduzione Con scheduling si intende un insieme di tecniche e di meccanismi interni del sistema operativo che amministrano l ordine in cui il lavoro viene svolto. Lo Scheduler è il modulo
Lo scheduling. Tipici schedulatori
Lo scheduling Un processo durante la sua evoluzione è o running o in attesa di un evento. Nel secondo caso trattasi della disponibilità di una risorsa (CPU, I/O, struttura dati, ecc.) di cui il processo
Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione
IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza
INFORMATICA. Il Sistema Operativo. di Roberta Molinari
INFORMATICA Il Sistema Operativo di Roberta Molinari Il Sistema Operativo un po di definizioni Elaborazione: trattamento di di informazioni acquisite dall esterno per per restituire un un risultato Processore:
Secondo biennio Articolazione Informatica TPSIT Prova Quarta
Sistema operativo: gestione memoria centrale La Memoria Virtuale consente di superare i limiti della Memoria Centrale : A. no B. a volte C. si, ma non sempre e' adeguata D. si, attraverso tecniche di gestione
Concetti di base. Scheduling della CPU. Diagramma della durata dei CPU-burst. Sequenza Alternata di CPU Burst e I/O Burst
Impossibile visualizzare l'immagine. Scheduling della CPU Concetti di base La multiprogrammazione cerca di ottenere la massima utilizzazione della CPU. L esecuzione di un processo consiste in cicli d esecuzione
Ciclo di vita dimensionale
aprile 2012 1 Il ciclo di vita dimensionale Business Dimensional Lifecycle, chiamato anche Kimball Lifecycle descrive il framework complessivo che lega le diverse attività dello sviluppo di un sistema
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
11. Evoluzione del Software
11. Evoluzione del Software Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 11. Evoluzione del Software 1 / 21 Evoluzione del Software - generalità Cosa,
LABORATORIO DI SISTEMI
ALUNNO: Fratto Claudio CLASSE: IV B Informatico ESERCITAZIONE N : 1 LABORATORIO DI SISTEMI OGGETTO: Progettare e collaudare un circuito digitale capace di copiare le informazioni di una memoria PROM in
Reti sequenziali sincrone
Reti sequenziali sincrone Un approccio strutturato (7.1-7.3, 7.5-7.6) Modelli di reti sincrone Analisi di reti sincrone Descrizioni e sintesi di reti sequenziali sincrone Sintesi con flip-flop D, DE, T
MODELLAZIONE DEI PROCESSI AZIENDALI. workflow 1
MODELLAZIONE DEI PROCESSI AZIENDALI workflow 1 I Processi Definizione: Un Processo è un insieme di attività elementari svolte per raggiungere un certo obiettivo Tipologie di processi: Processi Fisici es.
Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory
FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File
La 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
Lezione 1. Introduzione e Modellazione Concettuale
Lezione 1 Introduzione e Modellazione Concettuale 1 Tipi di Database ed Applicazioni Database Numerici e Testuali Database Multimediali Geographic Information Systems (GIS) Data Warehouses Real-time and
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
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,
12. Evoluzione del Software
12. Evoluzione del Software Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 12. Evoluzione del Software 1 / 21 Evoluzione del Software - generalità Cosa,
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
Sistemi Operativi. 5 Gestione della memoria
Gestione della memoria Compiti del gestore della memoria: Tenere traccia di quali parti della memoria sono libere e quali occupate. Allocare memoria ai processi che ne hanno bisogno. Deallocare la memoria
Business Process Management
Business Process Management Comprendere, gestire, organizzare e migliorare i processi di business Caso di studio a cura della dott. Danzi Francesca e della prof. Cecilia Rossignoli 1 Business process Un
Sommario. 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
UNIVERSITA DEGLI STUDI DI BRESCIA Facoltà di Ingegneria
ESAME DI STATO DI ABILITAZIONE ALL'ESERCIZIO DELLA PROFESSIONE DI INGEGNERE PRIMA PROVA SCRITTA DEL 22 giugno 2011 SETTORE DELL INFORMAZIONE Tema n. 1 Il candidato sviluppi un analisi critica e discuta
Introduzione al package ARENA
Introduzione al package ARENA Daniele Vigo D.E.I.S. - Università di Bologna [email protected] rev. 1.2 - Marzo 2003 ARENA Applicazione Windows che permette di creare modelli ed eseguire simulazioni del
Sistemi Operativi Kernel
Approfondimento Sistemi Operativi Kernel Kernel del Sistema Operativo Kernel (nocciolo, nucleo) Contiene i programmi per la gestione delle funzioni base del calcolatore Kernel suddiviso in moduli. Ogni
Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6
Appunti di Calcolatori Elettronici Esecuzione di istruzioni in parallelo Introduzione... 1 Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD...
Dispensa di database Access
Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di
Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica
Università degli Studi di Padova Dipartimento di Matematica. - Corso di Laurea in Informatica Il presente esame scritto deve essere svolto in forma individuale in un tempo massimo di 60 minuti dalla sua
Valutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput
Valutazione delle Prestazioni Architetture dei Calcolatori (Lettere A-I) Valutazione delle Prestazioni Prof. Francesco Lo Presti Misura/valutazione di un insieme di parametri quantitativi per caratterizzare
