"l'arduino ha un sistema operativo?"
I programmi di Arduino vengono caricati tramite un programma chiamato [Sketch : http://arduino.cc/en/Main/Software]. Il programma caricato viene preso in gestione da un bootstrapper che però, a differenza degli altri sistemi comuni, rimane in esecuzione per tutto il tempo. Infatti i programmi per Arduino non hanno main, ma hanno una funzione di loop che viene chiamata ripetutamente dal bootstrapper. Dalla definizione di Sistema Operativo ricordiamo che: un sistema operativo è un programma che viene avviato al momento del boot e rimane in esecuzione per tutto il tempo.
Notiamo quindi che nel caso dell'Arduino il bootstrapper potrebbe essere considerato una sorta di sistema operativo, sebbene i programmi abbiano accesso diretto all'hardware.