Controllo Digitale
a.a. 2005-2006
Sistemi operativi real time
D1-Cap. 4-6-7
Ing. Federica Pascucci
Processi da schedulare
1. Hard Real Time
– Periodici
– Sporadici
2. Soft Real Time
3. Non Real Time
4. Anytime (non considerati qui)
Processi sporadici hard real time
Processo che viene attivato im maniera
aperiodica, in genere è attivato da altri processi
Esempio:
Gestione degli allarmi
Parametri dei processi sporadici HRT
Ci Computation time
di Deadline
MITi Minumum Interarrival Time
Schedulazione processi sporadici HRT
IPOTESI:
H1 MITi coincide con il periodo
H2 Deadline relativa coincide con la
deadline del processo
Sotto le ipotesi (H1,H2) è possibile schedulare
insiemi misti di task HRT periodici e sporadici
con uno degli algoritmi presentati per i processi
periodici.
Osservazioni
I
I
I
I
H1 rende la schedulazione conservativa
Se la di = MITi , allora si può utilizzare il RM
Se la di 6= MITi , allora si può utilizzare il DM
EDF permette di inserire direttamente i
processi sporadici
Processi Soft Real Time
Processi per cui il rispetto della deadline non
deve necessariamente essere assoluto
Esempio:
Memorizzazione dei valori di un processo per la
visualizzazione
Parametri
Ci Computation time
Ds Deadline relativa soft: limite entro cui il processo
dovrebbe preferibilmente terminare
Dv Deadline di validità: valore entro cui è significativo
eseguire il processo
Schedulazione dei processi soft real time
1. La schedulazione dei processi soft real time
non deve in alcun modo pregiudicare la
schedulazione dei processi hard real time
I
Range di priorità separati per i processi soft RT e hard RT
2. Schema di schedulazione best effort: si
soddisfano prima le esigenze dei processi
hard RT, poi al meglio quelli SRT
Osservazioni
Processi Non Real Time
I
Processi che non hanno vincoli temporali
I
La tecnica più semplice per schedularli è la
schedulazione di background: il processore
viene assegnato a un processo NRT solo
quando è libero (idle) e non ci sono processi
hard/soft RT pronti
I
Starvation
Gestione dei processi NRT
Politiche di scheduling
I
Shortest Job First
I
Round Robin
I
First Come First Served
Grandezze di interesse
Iperperiodo mcm tra i periodi dei task periodici,
quando tutti i task sono attivati
all’istante 0
Tempo di idle massimo fattore di utilizzo del
processore, quando nessun processo
sporadico è attivo
Tempo di idle minimo fattore di utilizzo del
processore, quando tutti i processi
sporadici sono attivi
Server
Processo server Processo che gestisce le richieste dei
processi non RT
Ts periodo del server
Cs capacità del server
Il processo server viene schedulato con le stesse politiche
degli altri task periodici
Effettua il servizio delle richieste dei processi non RT
pendenti, nei limiti delle sue capacità
L’ordine di servizio è indipendente dall’algoritmo di
schedulazione
Tipologie di server
I
Server a priorità statica
–
–
–
–
I
Polling server
Deferrable server
Priority Exchange
Sporadic server
Server a priorità dinamica
–
–
–
–
–
Dynamic Priority Exchange
Dynamic Sporadic server
Total Bandwith Server
Earliest Deadline First
Improved Priority Exchange