TinyOS: un sistema adatto per applicazioni domotiche

TinyOS è il sistema operativo più diffuso sui moduli wireless, in particolare sfruttato dai moduli MICA, prodotti da Crossbow. Il linguaggio di programmazione utilizzato da TinyOS è il NestedC o NesC, molto simile al C, ma con notevoli differenze in fase di linking.

NesC è dotato di due categorie di componenti: configurazioni e moduli. I moduli definiscono le funzioni e lo stato, mentre le configurazioni si occupano di definire le interconnessioni tra diversi componenti.

Diversamente dai sistemi operativi più comuni, TinyOS non utilizza i thread per la sincronizzazione. Ciò è motivato dal fatto che un thread inattivo comporta uno spreco di RAM e, attualmente, sulle piattaforme che supportano i nodi sensori, si hanno a disposizione RAM di ridotte dimensioni, tipicamente 512 byte.

L’interfaccia di TinyOS si basa invece su comandi ed eventi. Un comando è una chiamata verso il basso, una richiesta di esecuzione di un’operazione. Un evento è invece una comunicazione e informa che l’operazione richiesta è stata compiuta. Tale approccio viene definito “split-phase”, in quanto divide la fase di avvio di un’operazione da quella relativa alla sua conclusione.

Ti consigliamo anche

Link copiato negli appunti