Os dispositivos IoT são construídos em muitos sistemas operacionais diferentes, dependendo das aplicações específicas de uso final.
Distribuições Linux, como Yocto ou Android Things, são muito populares entre dispositivos domésticos inteligentes. O Windows 10 IoT Core é mais adequado para dispositivos de borda IoT no nível do servidor (qualquer hardware que controle o fluxo de dados na fronteira entre duas redes). E, claro, o sistema operacional Raspbian é recomendado para uso regular no Raspberry Pi .
Aqui, o artigo discutirá o TinyOS que, em termos essenciais, é muito útil para redes de sensores de baixa potência.
O que é TinyOS?
TinyOS é um sistema operacional de código aberto baseado em BSD que usa a linguagem de programação nesC para controlar e gerenciar redes de sensores sem fio (WSN). Dispositivos sensores (chamados motes) nessas redes são caracterizados por baixo consumo de energia, memória limitada e formato muito compacto.
TinyOS foi escrito pela primeira vez por Jason Hill na Universidade de Berkeley em 2000. É um software totalmente gratuito e de código aberto.

Considerando seu uso final, o TinyOS é um sistema operacional popular para sensores de baixa potência que controlam luz, aceleração, temperatura, pressão e objetos acústicos. O TinyOS é frequentemente usado em aplicativos da indústria 4.0.
Por que o TinyOS é útil para redes de sensores sem fio?
Sensores de baixa potência, devido às limitações de seu alcance, exigem uso eficiente de recursos. O TinyOS é essencialmente construído em uma arquitetura baseada em componentes, para reduzir o tamanho do código para cerca de 400 a 500 bytes, e em um design baseado em eventos, eliminando a necessidade de um shell de comando.
A arquitetura baseada em componentes usa nesC, que é uma linguagem de programação C projetada para interconectar sistemas embarcados. Cada trecho de código consiste em funções simples colocadas em componentes e funções complexas que integram todos os componentes.
O exemplo de trecho de código a seguir baseado em componentes NesC mostra a integração de diferentes componentes, como temporizadores, relógios e mensagens.
![Saiba mais sobre o sistema operacional dos sensores sem fio TinyOS Saiba mais sobre o sistema operacional dos sensores sem fio TinyOS]()
O TinyOS também utiliza um design baseado em eventos, cujo objetivo é colocar a CPU em estado de repouso quando não há tarefas pendentes. Um evento pode ser algo como disparar um alarme quando a temperatura de um termostato aumenta ou diminui acima de um determinado valor. Assim que o evento termina, os motes do sensor podem entrar em estado de "hibernação".
A necessidade de um design como o TinyOS é imperativa em aplicações como transporte inteligente e fábricas inteligentes. Como existem milhares de sensores, é importante ter uma memória muito pequena para reduzir os requisitos de energia.
Onde o TinyOS está sendo usado?
Atualmente, o TinyOS possui mais de 35.000 downloads. Suas principais aplicações estão em todos os tipos de dispositivos que utilizam redes de sensores sem fio.
- Monitoramento ambiental : Como cada sistema TinyOS pode ser incorporado em um pequeno sensor, eles são úteis no monitoramento da poluição do ar, incêndios florestais e prevenção de desastres naturais.
- Veículos Inteligentes : Os veículos inteligentes são autônomos e podem ser entendidos como uma rede de sensores. Esses sensores se comunicam por meio de redes de área sem fio de baixa potência (LPWAN), tornando o TinyOS perfeito.
- Cidades Inteligentes : TinyOS é uma solução viável para requisitos de detecção de baixo consumo de energia para serviços públicos, redes elétricas, infraestrutura de Internet e muitas outras aplicações de cidades inteligentes.
![Saiba mais sobre o sistema operacional dos sensores sem fio TinyOS Saiba mais sobre o sistema operacional dos sensores sem fio TinyOS]()
- Monitoramento da integridade da máquina : aplicativos máquina a máquina (M2M) possuem múltiplas interfaces de sensores. Não é possível especificar um ambiente computacional completo para cada sensor. O TinyOS pode realizar segurança, gerenciamento de energia e depuração de sensores.
Onde aprender sobre o TinyOS?
Todas as informações de download no TinyOS podem ser acessadas em sua página oficial do GitHub (consulte: https://github.com/tinyos/tinyos-main ). Além do BSD, o TinyOS também oferece suporte ao Mac OS X.
A maior fonte completa de informações sobre o TinyOS está disponível no wiki da Universidade de Stanford (veja: http://tinyos.stanford.edu/tinyos-wiki/index.php/Main_Page ). Esta fonte contém informações sobre a instalação do programa, instruções extensas e um grande índice de código contribuído por muitos outros.
TinyOS é um exemplo de sistema operacional projetado para redes de sensores sem fio de baixo custo e baixo consumo de energia. Mas não é a única opção. Outros exemplos de sistemas operacionais semelhantes incluem Contiki, OpenWSN, FreeRTOS e RIOT.