Dove iniziare per programmare SAM3U

Sì , discussione interessante. Soprattutto perché siamo arrivati agli RTOS, argomento che mi interessa e non poco :smiley:

Entriamo nel merito.
Mettiamo che io abbia un RTOS. Gli RTOS (per lo meno quelli per micro ad 8 bit) so che funzionano a tick, una specie di "finestra" temporale entro la quale il micro cede tutte le risorse ad un processo. Terminato il tempo a sua disposizione, l'RTOS congela lo stato della CPU (i registri e gli stack) e passa il controllo al processo successivo, caricando nella CPU registri e stack congelati precedentemente in modo che l'elaborazione riprenda dal punto in cui è stata interrotta. Fin qui tutto giusto, vero? Correggetemi se sbaglio.

Ora viene la domanda.
Mettiamo che il tick duri (ipotesi) 10 mS. Mettiamo che a circa 8 ms il processo debba leggere da un sensore che, mediamente, risponde in 15 ms. Il processo avvia la lettura e poi, dopo 2 mS, "scade" il suo tempo e l'RTOS lo congela. Che succede alla lettura? Resta a mezzo? Oppure in questi casi esistono delle priorità per cui il processo porta comunque a compimento il suo incarico?