Anteprima
Vedrai una selezione di 1 pagina su 4
Schedulazione dei processi Pag. 1
1 su 4
Disdici quando vuoi 162x117
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Sintesi

Schedulazione dei processi




La componente del S.O. che opera i cambiamenti di stato di un processo è schedulatore. Lo schedulatore implementa le politiche di gestione dei processi. Ci sono diversi tipi di schedulazione che sono eseguite con frequenza crescente passando dalla schedulazione a lungo termine, a quello a medio termine per finire a quella a breve termine.


Una buona politica di schedulazione mira a;
• Massimizzare la percentuale di utilizzo della CPU.
• Massimizzare il throughput (Portata, capacità di lavorazione) del sistema. Il throughput è misurato come il numero di processi completati nell’unità di tempo.
• Minimizzare il sovraccarico del processore.
• Minimizzare il tempo di turnaround. Il tempo di turnaround(Tempo di circolazione) è il tempo che passa tra la sottomissione di un processo e la sua fine.
• Minimizzare il tempo di risposta dei processi interattivi. È il tempo impiegato dal processo a fornire il primo output.
• Prevenire la situazione di starvation(inedia). È la situazione per la quale un processo non viene mai eseguito. Anche i processi a bassa prioritò prima o poi devono essere completati.

Algoritmi di Schedulazione



Gli Algoritmi di schedulazione possono essere classificati secondo due categorie:
Schedulazione senza perialascio (non preemptive scheduling), cioè un processo running non può essere interrotto durante l’esecuzione. Dopo aver ottenuto il processore, il processo prosegue nell’esecuzione sino alla fine o sino a quando si interrompe per fare un’operazione di Input/Output o per un’altra ragione.
Schedulazione con prerilascio (preemptive scheduling), cioè un processo running può essere interrotto e portato nello stesso ready per lasciare il post ad adltri processi. Questo avviene sia per l’arrivo di un nuovo processo ad elevata priorità, sia per l’intervento dell’orologio di sistema (TIMER) allo scadere del quanto di tempo assegnato a un processo.

Schedulazione FCFS



FCFS (First come First Served, primo arrivato primo servito) è una politica di schedulazione senza prerilascio, secondo la quale i processi sono eseguiti nell’ordine di arrivo.




Un nuovo processo è inserito in una coda di processi ready gestita in modalità FIFO (FIRST IN FIRST OUT). Quando un processo ottiene la CPU continua nell’esecuzione sino alla fine o finchè si deve fermrare in attesa di un evento. L’evento atteso, quando si presenta, causa il trasferimento di un proesso dalla coda dei processi waiting nella coda dei processi ready.
Questo tipo di schedulazione usa l’ordine di arrivo come unico criterio per scegliere il processo da eseguire. Le conseguenze sono:
o Se un processo molto breve arriva subito dopo una serie di processi lunghi, attenderà molto tempo prima di essere eseguito.
o Discrimina i processi I/O band perché i CPU BOUND occupano la CPU. (P1,P2,P3,P4).



Schedulazione a priorità


o Ci sono 2 situazioni che possono causare il prerilascio del processo in esecuzione:

o Quando arriva un nuovo processo a priorità più elevate
o Quando un evento causa lo spostamento di un processo a prirità più elevata dalla coda dei processi waiting a quella dei processi ready

La priorità dei processi è controllata ogni volta che la coda dei processi ready viene aggiornata.



Schedulazione Round Robin



L’uso delle priorità porta a ritenere che ci siamo processi più importanti di altre. La schedulazione Round Robin, all’opposto, considera tutti i processi egualmente importanti.
Il Round Robin è un algoritmo di schedulazione primo arrivato – primo servito con prerilascio, tipico dei sistemi time sharing. È definito un’intervallo di temporale indicato con il termine di quantum oppure time slice, che rappresenta la quantità massima di tempo di CPU concessa a un processo. Se il processo non rilascia la CPU entro questo tempo, è interrotto e posto in coda fra i processi ready.
Estratto del documento

Schedulazione dei processi

La compoenete del S.O. che opera i cambiamenti di

stato di un processo è schedalutore. Lo

schedalutatore implementa le politiche di gestione

dei processi. Ci sono diversi tipi di schedulazione che

sono eseguite con frequenza crescente passando

dalla schedulazione a lungo termine, a quello a

medio termine per finire a quella a breve termine.

Una buona politica di schedulazione mira a;

Massimizzare la percentuale di utilizzo della CPU.

 Massimizzare il throughput (Portata, capacità di

 lavorazione) del sistema. Il throughput è

misurato come il numero di processi completati

nell’unità di tempo.

Minimizzare il sovraccarico del processore.

 Minimizzare il tempo di turnaround. Il tempo di

 turnaround(Tempo di circolazione) è il tempo che

passa tra la sottomissione di un processo e la

sua fine.

Minimizzare il tempo di risposta dei processi

 interattivi. È il tempo impiegato dal processo a

fornire il primo output.

Prevenire la situazione di starvation(inedia). È la

 situazione per la quale un processo non viene

mai eseguito. Anche i processi a bassa prioritò

prima o poi devono essere completati.

Algoritmi di Schedulazione

Gli Algoritmi di schedulazione possono

 essere classificati secondo due categorie:

Schedulazione senza perialascio (non

 preemptive scheduling), cioè un processo

running non può essere interrotto durante

l’esecuzione. Dopo aver ottenuto il

processore, il processo prosegue

nell’esecuzione sino alla fine o sino a quando

si interrompe per fare un’operazione di

Input/Output o per un’altra ragione.

Schedulazione con prerilascio (preemptive

 scheduling), cioè un processo running può

essere interrotto e portato nello stesso ready

per lasciare il post ad adltri processi. Questo

avviene sia per l’arrivo di un nuovo processo

ad elevata priorità, sia per l’intervento

dell’orologio di sistema (TIMER) allo scadere

del quanto di tempo assegnato a un

processo.

Schedulazione FCFS

FCFS (First come First Served, primo arrivato primo

servito) è una politica di schedulazione senza

prerilascio, secondo la quale i processi sono eseguiti

nell’ordine di arrivo. R iin iz ia

A tte s a il

Fifo CPU E v e n ti

e v e n to p ro c e s

so

Un nuovo processo è inserito in una coda di

processi ready gestita in modalità FIFO (FIRST IN

FIRST OUT). Quando un processo ottiene la CPU

continua nell’esecuzione sino alla fine o finchè si

deve fermrare in attesa di un evento. L’evento

atteso, quando si presenta, causa il

trasferimento di un proesso dalla coda dei

processi waiting nella coda dei processi ready.

Questo tipo di schedulazione usa l’ordine di

arrivo come unico criterio per scegliere il

processo da eseguire. Le conseguenze sono:

Se un processo molto breve arriva subito

o dopo una serie di processi lunghi, attenderà

molto tempo prima di essere eseguito.

Discrimina i processi I/O band perché i CPU

o BOUND occupano la CPU. (P1,P2,P3,P4).

Schedulazione a priorità

Ci sono 2 situazioni che possono

causare il prerilascio del processo in

esecuzione:

Quando arriva un nuovo processo a

o priorità più elevate

Quando un evento causa lo

o spostamento di un processo a prirità più

elevata dalla coda dei processi waiting a

quella dei processi ready

Dettagli
Publisher
4 pagine
27 download