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