La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

La schedulazione dei processi

Presentazioni simili


Presentazione sul tema: "La schedulazione dei processi"— Transcript della presentazione:

1 La schedulazione dei processi
Corso di Sistemi Classe 4

2 Scheduling dei processi
L’operazione con la quale si attribuisce il processore ad uno dei processi in attesa, viene definita scheduling (schedulazione) ed è caratteristica di un particolare processo (detto processo schedulatore) avviato dal sistema operativo. Scheduling di basso livello (o dispatcher) Scheduling di livello intermedio Scheduling di alto livello (scheduler)

3 Scheduling di alto livello
Long term scheduling regola l’accesso dei programmi, (in genere i job batch), al sistema per l’esecuzione; controlla il grado di multiprogrammazione regola il mix tra processi CPU-bound e I/O bound

4 Scheduling di livello intermedio
Medium term scheduling Gestione dello swapping Gestione della memoria virtuale

5 Scheduling di basso livello
Short term scheduling Assegna la CPU ad uno dei processi residenti in memoria centrale E’ invocato su ogni evento che può portare ad eseguire un context switch (interruzioni da clock, interruzioni da I/O ecc.)

6 Lo schema di scheduling dell’IBM OS/MVS
Coda dei programmi da eseguire Livello 1.2 Sistema Operativo programmi terminati Schedulatore di alto livello Coda dei processi sospesi Livello 1.1 Coda dei processi iniziati ma non attivi Schedulatore di livello intermedio Livello 1.0 Coda dei processi in attesa o bloccati Coda dei processi pronti Schedulatore di basso livello Livello 0 Processo in esecuzione

7 Il dispatcher Assicurare che tutti i processi avanzino rispettando eventuali priorità loro assegnate, ma evitando penalizzazioni eccessive o addirittura attese infinite Scegliere i processi da mandare in esecuzione cercando di ottimizzare l’uso della risorsa processore Minimizzare i tempi di scelta del prossimo processo da mandare in esecuzione Processo in esecuzione esecuzione Processo terminato o in attesa Time out Nuovo processo da eseguire

8 Context Switch * * Proc A S.O. Proc B esecuzione salva ricarica

9 RTC: Real Time Clock Per assicurare ad ogni processo un utilizzo equamente condiviso della CPU, occorre servirsi di un clock hardware che genera un interrupt periodico (RTC: Real Time Clock) in aggiunta agli altri interrupt.

10 Il metodo round robin La tecnica più semplice per gestire il rilascio e l’assegnazione del processore è quella che si basa sul principio del time-sharing chiamata round robin. Ad ogni processo in esecuzione è assegnato un quanto di tempo (time slice), allo scadere del quale il processo viene passato dallo stato di esecuzione a quello di pronto e accodato in una lista ordinata, all’ultimo posto. Dal primo posto viene invece prelevato il processo da mandare in esecuzione.

11 Considerazioni Il metodo round robin tratta tutti i processi allo stesso modo, pertanto, per introdurre un criterio di diversificazione (priorità) tra i processi si opera sul quanto di tempo, introducendo un fattore di molteplicità di quest’ultimo. Pertanto i processi che dispongono di un fattore di molteplicità alto utilizzeranno il processore per un tempo maggiore. Quanto sopra penalizza però i processi con numerose richieste di risorse(es. I/O)

12 Il metodo round robin modificato
Coda processi rilasciati per fine quanto Fine quanto Priorità minore Esecuzione processo Nuovi processi Termine processo Priorità maggiore Coda processi nuovi o rilasciati per richiesta di risorsa Attesa risorsa Risorsa non disponibile Termine anomalo


Scaricare ppt "La schedulazione dei processi"

Presentazioni simili


Annunci Google