Sistemi Organizzativi



Похожие документы
Organizzazione della produzione

Organizzazione della produzione

Automazione Industriale (scheduling+mms) scheduling+mms

Ottimizzazione Multi Obiettivo

1. Considerazioni generali

Sequenziamento a minimo costo di commutazione in macchine o celle con costo lineare e posizione home (In generale il metodo di ottimizzazione

Modelli dei Sistemi di Produzione Modelli e Algoritmi della Logistica

Schedulazione di attività in presenza di attività interrompibili

1) Descrivere dettagliatamente a quale problema di scheduling corrisponde il problema.

SCHEDULING SCHEDULING

CAPITOLO 6 La programmazione operativa (operations scheduling)

Introduzione alla teoria dello scheduling

Ricerca Operativa e Logistica

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

Sistema operativo: Gestione dei processi

CPM - PERT CPM - PERT. Rappresentazione di un progetto. Gestione di un progetto. Critical Path Method Project Evaluation and Review Technique

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Sistemi Operativi mod. B. Sistemi Operativi mod. B A B C A B C P P P P P P < P 1, >

Bibliografia. Gestione operativa della produzione. Terminologia. Schedulazione. Schedulazione operativa della produzione

Appunti sulla Macchina di Turing. Macchina di Turing

Corso Sistemi Informativi Aziendali, Tecnologie dell Informazione applicate ai processi aziendali. Sistemi informativi aziendali

Prof. Ing. Michele Marra - Appunti delle Lezioni di Ricerca Operativa Sequenze CAPITOLO II

Prodotto Disponibilità Costo e rispettando le seguenti regole di composizione delle benzine:

1. Classificazione delle risorse

Esercizi di Gestione della Produzione Industriale. Tabella 1: tempi di lavorazione di un set di job.

APPLICAZIONI DELLA RICERCA OPERATIVA

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

TECNICHE DI SIMULAZIONE

Macchine a stati finiti G. MARSELLA UNIVERSITÀ DEL SALENTO

Gestione del processore e dei processi

Pronto Esecuzione Attesa Terminazione

Un sistema operativo è un insieme di programmi che consentono ad un utente di

b i 1,1,1 1,1,1 0,1,2 0,3,4

Schedulazione delle attività di un progetto in presenza di multi-calendari

Deadlock (stallo) Parte III. Deadlock

Scheduling. Sistemi Operativi e Distribuiti A.A Bellettini - Maggiorini. Concetti di base

Ottimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni

Programmazione della produzione MT MT

SISTEMI OPERATIVI. Deadlock (blocco critico) Domande di verifica. Luca Orrù Centro Multimediale Montiferru 04/06/2007

Scheduling della CPU. Concetti fondamentali. Concetti fondamentali. Concetti fondamentali. Dispatcher. Scheduler della CPU

La schedulazione. E.Mumolo

Sistemi Operativi Kernel

Corso di Informatica

Produzione e forza lavoro

Sistemi Operativi SCHEDULING DELLA CPU

Sistemi Operativi. Scheduling della CPU SCHEDULING DELLA CPU. Concetti di Base Criteri di Scheduling Algoritmi di Scheduling

Sistemi Operativi SCHEDULING DELLA CPU. Sistemi Operativi. D. Talia - UNICAL 5.1

Corso di Sistemi di Gestione di Basi di Dati. Esercitazione sul controllo di concorrenza 12/02/2004

Parte 3: Gestione dei progetti, Shop scheduling

Il sistema monetario

Scheduling della CPU

Ingegneria del Software MINR. Giuseppe Santucci. 04 B - Esercitazione sui diagrammi Pert e Gantt. Gradi di libertà

Informatica - A.A. 2010/11

Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer.

Monitor. Introduzione. Struttura di un TDA Monitor

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

Automazione Industriale (scheduling+mms) scheduling+mms.

ALGORITMI e PROGRAMMI Programmazione: Lavoro che si fa per costruire sequenze di istruzioni (operazioni) adatte a svolgere un dato calcolo

Progetto di Reti di Telecomunicazione Modelli in Programmazione Lineare Problemi di Localizzazione

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

ESERCIZI SULLO SCHEDULING DEI PROCESSI

Algoritmi e Strutture Dati

Criteri di Scheduling Algoritmi di Scheduling Multiple-Processor Scheduling Asymmetric/Symmetric multiprocessing Processori Multicore

Scheduling della CPU:

SVM. Veronica Piccialli. Roma 11 gennaio Università degli Studi di Roma Tor Vergata 1 / 14

Scheduling. Lo scheduler è la parte del SO che si occupa di

Introduzione all analisi dei segnali digitali.

ARCHITETTURA DI RETE FOLEGNANI ANDREA

Problema del trasporto

Strumenti della Teoria dei Giochi per l Informatica A.A. 2009/10. Lecture 22: 1 Giugno Meccanismi Randomizzati

SCHEDULATORI DI PROCESSO

Principi di Schedulazione in tempo reale

Problemi di localizzazione impianti

Correttezza. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 10. A. Miola Novembre 2007

Università degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi

Valutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput

REGOLE PER L ESAME (agg.te settembre 2015)

Gestione della memoria centrale

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo

1. Che cos è la multiprogrammazione? Si può realizzare su un sistema monoprocessore? 2. Quali sono i servizi offerti dai sistemi operativi?

DMA Accesso Diretto alla Memoria

Corso di Sistemi di Elaborazione delle informazioni

Verbalizzazione e Firma Digitale

Un modello matematico di investimento ottimale

Il concetto di valore medio in generale

mese richiesta

CSP- CSE RSPP FSL - FFSL - CTS CTSS*

1. Sia dato un poliedro. Dire quali delle seguenti affermazioni sono corrette.

Транскрипт:

Sistemi Organizzativi Lezione 12/12/2004 Introduzione al corso e definizioni di base

Informazioni generali Pre-requisiti: lassi di complessità Metodi enumerativi: - programmazione dinamica - branch-and-bound Esame: scritto + orale Programmazione Lineare (Intera) lgoritmi di ricerca locale Materiale didattico: M. Pinedo, Scheduling (Systems, Models and lgorithms) Prentice Hall. gnetis, dispense http://www.di.unisi.it/~agnetis/didattica Trasparenti dalle lezioni Ricevimento: Martedì ore 17-19, smriglio@di.univaq.it

Esempio: fotocopie Silvia (S) e Francesca (F) giungono nello stesso momento ad una macchina fotocopiatrice. F deve fare 1 fotocopia, S ne deve fare 100. Il galateo imporrebbe a S di lasciar passare per prima F, che impegna la macchina per un tempo breve e poi la lascia libera. È questa una buona idea? nalisi. Supponiamo che l esecuzione di una fotocopia richieda 3 secondi. ue casi: S precede F 303 F precede S 3 0 300 ttesa totale = 300 + 303 = 603 0 ttesa totale = 3 + 303 = 306 303

Esempio: fotocopie E se Silvia (S) S giungesse prima di Francesca (F)? 0 300 r f 303 ttesa totale = 300 + 303 r f = 603 r f i nuovo, il galateo imporrebbe a Silvia di interrompere le proprie copie in favore di Francesca: 0 303 r f r f + 3 ttesa totale = 3 + 303 = 306

Esempio: PU uno dei compiti del sistema operativo (multitasking) è quello di disciplinare l accesso alla PU dei diversi programmi di calcolo (eventualmente associati ad una priorità). il processamento di un programma può essere interrotto per consentire il completamento di altri. iò evita che un programma lungo ne blocchi altri molto brevi che hanno priorità più bassa. L obiettivo tipico consiste nel minimizzare l attesa complessiva dei programmi.

Esempio: voli in atterraggio L area terminale di un aeroporto contiene l insieme dei velivoli prossimi all atterraggio. Il sistema di controllo dell aeroporto permette di far atterrare al più un volo alla volta e la durata della manovra di atterraggio è nota per ogni velivolo. d ogni velivolo è inoltre associato un tempo previsto di atterraggio Obiettivo del controllore può essere quello di decidere la sequenza in modo da minimizzare la somma (pesata) dei ritardi. Vincoli aggiuntivi: - a causa della turbolenza, si deve garantire una certa separazione in atterraggio fra un aeromobile di grandi dimensioni ed di piccole dimensioni - precedenze fra voli

Esempio ldo (), runo (), arlo (), uilio () condividono un appartamento. Ogni mattino ricevono 4 giornali: Financial Times (FT), Guardian (G), aily Express (E), Sun (S). iascun lettore inizia la lettura ad una certa ora, ha la propria sequenza fissata di lettura dei gionali e legge ciascun giornale per un tempo prefissato: lettore Ora inizio Sequenza lettura (tempo in min.) ldo 8.30 FT(60) G (30) E (2) S(5) runo 8.45 G(75) E(3) FT(25) S(10) arlo 8.45 E(5) G(15) FT(10) S(30) uilio 9.30 S(90) FT(1) G(1) E(1)

Esempio tutti i lettori preferiscono (eventualmente) aspettare che un giornale (il prossimo nella propria sequenza) sia disponibile anziché modificare la sequenza prefissata. nessun lettore rilascia un giornale prima di averlo letto completamente. ciascun lettore termina la lettura di tutti i giornali prima di uscire. i quattro lettori attendono che tutti abbiano terminato di leggere prima di uscire di casa Problema: Qual è la minima ora in cui,,, possono uscire?

Soluzioni Il problema equivale a: determinare in quale ordine ciascun giornale deve esser letto dai quattro lettori (schedule di lettura) in modo da minimizzare il tempo di lettura totale. Esempio: giornale Lett. 1 Lett. 2 Lett. 3 Lett. 4 FT G E S

Giorn. FT G E S L1 L2 L 3 L4 iagramma di Gantt FT G E S 8.30 9.00 10.00 11.00 11.51

ommenti FT G E S 8.30 9.00 10.00 11.00 11.51 un lettore può essere inattivo (in idle) in certi periodi ( in [10.15, 11.01]) ci può essere un giornale fermo anche se c è un lettore disponibile che deve ancora leggerlo: potrebbe avere S 11.05, ma questo violerebbe la sua sequenza; potrebbe avere alle 9.30 ma viola lo schedule

Esercizi eterminare il valore del tempo di completamento di tutte le letture per il seguente schedule: giornale Lett. 1 Lett. 2 Lett. 3 Lett. 4 FT G E S eterminare uno schedule migliore di quello proposto in precedenza

Enumerazione totale Il numero di soluzioni è (4!) 4 = 331.776 per un probelma con n lettori e m giornali diventa (n!) m. esaminando 10.000 soluzioni al secondo (4 giornali e n lettori): n 5 10 tempo 354 min 2 10 17 giorni

Elementi di un problema di scheduling job: attività da svolgere Fotocopia, esecuzione di un programma di calcolo, lettura di un giornale Un job può rappresentare una singola attività o un insieme di attività (task) tecnologicamente legate macchine: risorse che eseguono le attività Fotocopiatrice, PU, giornali L esecuzione di un attività su una macchina è detta operazione. I problemi di scheduling si classificano in base alle caratteristiche dei task e all architettura delle macchine

ttributi dei job tempo di processamento p ij : durata del processamento del job j sulla macchina i release date r j : tempo in cui j arriva nel sistema, rendendosi disponibile al processamento due date d j : tempo entro il quale si desidera che il job j sia completato (data di consegna) peso w j : indica l importanza del job j Notazione a tre campi: a/b/g: a descrive il sistema di macchine b rappresenta vincoli e modalità di processamento (0, 1 o più componenti) g indica l obiettivo

ampo a Macchina singola (1) : ciascun job richiede una singola operazione da eseguirsi sull unica macchina disponibile Macchine identiche parallele (P m ) : ciascun job richiede una singola operazione da eseguirsi su una qualunque delle m macchine identiche. Flow shop (F m ) : m macchine in serie. iascun job deve essere processato su ciascuna di esse (m task). Tutti i job hanno lo stesso routing. Una volta terminata un operazione il job viene posto nel buffer della macchina successiva 1 2 m Job shop (J m ) : ciascun job deve essere processato da un sottoinsieme di un insieme di m macchine, secondo un proprio routing.

ampo b Release dates (r j ) : il job j non può iniziare il processamento prima dell istante r j Tempi di set-up (s jk ) : tempo richiesto per il riattrezzaggio delle macchine fra i job j e k. Se dipende dalla macchina i, si esprime con s i jk Preemption (prmp) : è ammesso interrompere un operazione su una macchina prima del suo completamento per iniziare una nuova operazione. Il processamento eseguito prima dell interruzione non va perso: quando l operazione viene ripresa, essa richiede solo il tempo rimanente di processamento vincoli di precedenza (prec) : un job può essere processato solo se tutti i job di un certo insieme sono stati completati. Grafo delle precedenze. Se ciascun job ha al più un predecessore e un successore b = chain. breakdowns (brkdwn) : le macchine non sono sempre disponibili, ma hanno periodi fissati di interruzione del servizio

ampo g efinizioni. j L j = j d j T j = max (L j, 0) tempo di completamento del job j lateness del job j tardiness del job j U j = 1 se j > d j (tardy job) e 0 altrimenti Makespan ( max ) : max ( 1,, n ) tempo di completamento dell ultimo job Massima Lateness (L max ) Tempo totale pesato di completamento (Swjj) Tardiness totale pesata (SwjTj) Numero di tardy job (SUj)

efinizioni di base Una funzione obiettivo si dice regolare se è nondecrescente in 1,, n Una permutazione dei job che definisce l ordine con cui i job sono processati su una certa macchina si dice sequenza Una soluzione di un problema di scheduling si dice schedule. onsiste nell assegnamento di un istante di inizio a ciascuno dei task di ogni job (se prmp, istanti di inizio di ciascuna delle parti in cui viene suddiviso un task) uno schedule ammissibile è detto nondelay se nessuna macchina è ferma quando esiste un operazione disponibile al processamento

Esempio: produzione Uno stadio di lavorazione è composto da 2 macchine identiche parallele. Un insieme di parti sono immagazzinate in un buffer in attesa di essere processate. Le caratteristiche del processo impongono una relazione di precedenza fra le parti. 2 parte 1 2 3 4 5 6 7 8 9 10 1 10 durata 7 6 6 1 2 1 1 7 7 14 3 5 8 4 6 7 9

P 2 /prec/ max Un obiettivo rilevante è spesso quello di minimizzare il tempo di completamento di tutti i lavori. La regola comunemente adottata è: mandare una parte processabile sulla prima macchina libera. Soluzione: 4 2 1 10 3 5 8 6 7 9 M2 M1 1 2 9 4 6 5 7 8 3 10 32 0 10 20 30

Soluzione ottima 2 Nonostante l idea di non fermare le macchine se non necessario sia ragionevole, la seguente soluzione migliora quella ottenuta dalla regola precedente: 4 1 10 3 5 8 M2 M1 1 2 8 9 4 6 5 7 3 10 27 0 10 20 30 6 7 9 fermo macchina forzato