18.08.2013 Views

UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica

UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica

UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

- scambio di dati tra i task;<br />

- gestione opportuna delle situazioni di sovraccarico.<br />

Assegnare le risorse di calcolo significa sostanzialmente eseguire il codice<br />

di un processo piuttosto che quello di un altro sul processore (o sui processori) a<br />

disposizione. Molto semplicisticamente, questo è ciò che si dice “schedulare” un<br />

insieme di processi.<br />

Gli algoritmi di schedulazione più famosi ed utilizzati in ambienti real-time,<br />

utilizzati per trattare processi periodici, sono Rate Monotonic (RM) ed Earliest<br />

Deadline First (EDF), la cui differenza principale risiede nel fatto che, mentre il<br />

primo stabilisce la schedulazione in base al valore del periodo dei task, quindi<br />

genera una sequenza predeterminata di attivazioni, in quanto viene sempre<br />

eseguito il task con periodo più corto per primo, EDF privilegia i task con<br />

deadline più imminente, che sono sostanzialmente quelli per i quali il rischio di<br />

superare la deadline è maggiore.<br />

2.4.1 DEA e HARTIK<br />

DEA è stato sviluppato utilizzando il sistema operativo real-time HARTIK<br />

(HArd Real-TIme Kernel). Si tratta di un sistema basato sull’algoritmo di<br />

schedulazione EDF; supporta task con criticità soft, hard e non real-time, sia<br />

periodici che aperiodici; gestisce i vincoli su risorse mediante l’algoritmo Stack<br />

Resource Policy (SRP). Questi ed altri argomenti inerenti i sistemi real-time sono<br />

efficacemente illustrati in [2].<br />

Il linguaggio di programmazione è il C classico, con il quale sono stati<br />

implementati il kernel e le librerie di funzioni. HARTIK mette a disposizione tutte<br />

le primitive fondamentali per lavorare in un vero ambiente di programmazione<br />

real-time.<br />

La caratteristica più apprezzabile di HARTIK è la semplicità di utilizzo,<br />

rapportata al rigore degli algoritmi utilizzati nel kernel: in molte applicazioni è<br />

12

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!