30.11.2012 Views

download tesi - MobiLab - Università degli Studi di Napoli Federico II

download tesi - MobiLab - Università degli Studi di Napoli Federico II

download tesi - MobiLab - Università degli Studi di Napoli Federico II

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Progetto e valutazione <strong>di</strong> algoritmi per la raccolta<br />

dati affidabili su reti <strong>di</strong> sensori senza cavo<br />

tutte le caratteristiche necessarie per comunicare con l'hardware e<br />

l'interazione con co<strong>di</strong>ce già esistente è semplificata. Inoltre è un<br />

linguaggio molto conosciuto. D'altra parte però, C non aiuta molto a<br />

scrivere co<strong>di</strong>ce strutturato privo <strong>di</strong> errori. Il nesC garantisce più<br />

modularità grazie ad una sintassi molto ridotta e dà la possibilità <strong>di</strong><br />

strutturare i componenti collegandoli tra loro.<br />

2. Analisi <strong>di</strong> tutto il programma: I programmi nesC, in fase <strong>di</strong><br />

compilazione, vengono analizzati nella loro interezza per ottenere<br />

una sicurezza maggiore e per rendere possibile l'ottimizzazione. Di<br />

conseguenza, non esiste la possibilità <strong>di</strong> compiere compilazioni<br />

separate. D'altra parte i programmi scritti in nesC sono molto<br />

leggeri e <strong>di</strong> conseguenza la compilazione risulta comunque veloce.<br />

3. nesC è un linguaggio “statico”: Non esiste la possibilità <strong>di</strong> allocare<br />

memoria <strong>di</strong>namicamente. Questa restrizione rende più facile e<br />

accurata l'analisi del programma in fase <strong>di</strong> debug.<br />

4. nesC riflette la struttura del TinyOs: nesC è basato sul concetto<br />

<strong>di</strong> componente e supporta appieno il modello <strong>di</strong> concorrenza del<br />

TinyOs. Inoltre il TinyOs è stato completamente programmato in<br />

nesC. Nel momento in cui un'applicazione viene compilata, i<br />

componenti <strong>di</strong> TinyOs vengono compilati insieme ad essa e il<br />

risultato costituisce l'intero software del sensore. Questo approccio<br />

porta ad un ingente risparmio energetico; tuttavia la versatilità viene<br />

notevolmente limitata, non è possibile installare più applicazioni<br />

in<strong>di</strong>pendenti nello stesso sensore.<br />

32

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

Saved successfully!

Ooh no, something went wrong!