Femto OS è un sistema operativo real-time del tipo con prelazione per microcontrollori ad 8 bit della famiglia Atmel AVR sviluppato da Ruud Vlaming. Femto OS è open source e disponibile sia con licenza GPLv3 sia con una licenza di tipo commerciale.[1]
Caratteristiche tecniche
Femto OS è stato scritto ispirandosi a FreeRTOS, un altro sistema operativo real-time che supporta i microcontrollori Atmel AVR. Rispetto a FreeRTOS, sviluppato per i microcontrollori a 32 bit delle famiglie SAMx, AT91 e AVR32, Femto OS è stato progettato per essere utilizzato sui microcontrollori Atmel ad 8 bit delle famiglie ATtiny e ATmega, che hanno ridotti quantitativi di memoria flash per l'applicazione e di memoria RAM per le variabili ed i dati. Per questo motivo Femto OS non permette di eseguire molti processi contemporaneamente ma, al contempo, impiega un limitato quantitativo di memoria: l'autore dichiara che la più piccola applicazione sviluppata con Femto OS occupa solo 258 byte di flash e 10 byte di SRAM.[1].
L'elenco seguente riporta le caratteristiche principali di Femto OS:
- numero massimo di processi: 16
- livelli di priorità: 8
- numero massimo di lock: 15
- dimensione minima dello stack per processo: 4 byte
- dimensione minima dello stack del SO: 9 byte
Il nome Femto OS
Il nome "Femto OS" è stato scelto per indicare un sistema operativo molto piccolo (femto è un prefisso SI che esprime un fattore di 10-15, ossia di 1 milionesimo di miliardesimo), più piccolo di un altro sistema operativo di ridotte dimensioni, pico]OS, non più sviluppato.[1]
Note
Collegamenti esterni