Anda di halaman 1dari 31

Estudo sobre o RTOS TinyOS em aplicaes de Redes sensoriais sem fio

Universidade Federal do Cear Engenharia de Teleinformtica Sistemas de Tempo Real Professor: Helano Castro Aluno: Tiago Augusto da Silva Bencardino 2011.1

Redes de sensoriamento sem fio


Definio Exemplo Conceitos Motivao para SO

TinyOS

Histrico Arquitetura Gerenciamento de processos e eventos Implementao NesC Aplicaes

Bibliografia

O que ? Conjunto de ns com capacidade de sensoriamento, processamento e comunicao sem fio Para qu? Monitorar variveis de interesse ou detectar evento em uma regio

Controle: monitoramento industrial Meio ambiente: florestas, oceanos Segurana: alarmes de residncias, prdios, fbricas Trfego: monitoramento de vias, estacionamentos, fotos sensores Medicina: monitorar funcionamento de rgaos como o corao Militar: vigilncia monitoramento, rastreamento, segurana, controle e manuteno

Monitoramento das foras amigas Processo de vigilncia reas crticas, rotas de aproximao e caminhos estreitos Estudos sobre a tropa inimiga e o terreno de batalha ataques surpresa e mtodos de defesa Sistemas modernos de mira automtica Controlar um elemento da tropa: presso cardaca, temperatura, infeco Guerra biolgica/qumica: deteco de agentes contaminadores

Ponteiro: deteco de alvos acsticos, ssmicos, magnticos Localizao e reconhecimento: fuso dos dados C2: ns sink mveis

Baixo custo e baixo consumo de energia Limitao de memria e capacidade de processamento. Ns simples podem mudar de posio ou falhar devido a influncia do meio. Variveis de ambiente precisam ser processadas rapidamente para evitar perda de deadlines. Precisam coletar informao, processar parcialmente e transmitir dados.

Fluxo de dados predominantemente unidimensional ns intermedirios como multi-hop / ad-hoc Energia consumida ~ distncia Sink: ns especiais que processam ou consomem dados

Auto-organizao: organizar em grupos Auto-configurao: adaptar-se a mudanas do ambiente e topologia Auto-diagnstico: detectar problemas (baixa densidade ou desperdcio de energia) Auto-cura: recuperar-se dos problemas. Tolerncia a falhas Auto-proteo: detectar, identificar, proteger contra ameaas internas e externas Auto-conhecimento: conhecer o ambiente e a si prprio

Escalabilidade: grande nmero de ns distribudos Tolerncia a falhas: grandes quantidades de ns podem falhar e o sistema deve, automaticamente, reconfigurar-se Redundncia de informao: algumas aplicaes podem multiplicar a informao para aumentar a preciso. Overhead mnimo para outras aplicaes

Grande nmero de ns distribudos Restrio de energia Rede autnoma, com alto grau de cooperao Protocolos de comunicao e eleio de lder devem levar em conta topologia fsica da rede Muito sujeita a falhas devido a perda de ns e interrupo de comunicao (meio hostil)

Principal motivo para ter um SO: configuraes flexveis nos ns sensores Limitao de memria: torna-se impossvel armazenamento de todos os programas nos ns Compartilhamento dos aplicativos entre os ns da rede Customizao para o projeto Baixo custo/processamento limitam algoritmos complexos. Ex: alguns algoritmos de gerenciamento de processos

Sistema Operacional
TinyOS v1 TinyOS v2 Contiki MantisOS Nano-RK

Modelo
Events Events Events Multithreading Multithreading

ROM
3.4 kB 3.4 kB 3.8 kB 14 kB 10 kB

RAM
336 B 336 B 230 B 500 B 2000 B

Tipo de processo
Tasks, commands, event handlers Tasks, commands, event handlers Protothreads Threads Tasks with priority

T-Kernel Bertha
CORMO SOS SenOS

Multithreading Mobile agents


Events Events

28 kB 10 kB
5.5 kB 20 kB

2000 B 1500 B
130 B 1163 B ------

Threads Process Fragments


Tasks and event handlers Tasks defined as modules Processes

State Machines -----

Sistema operacional baseado em componente Cdigo livre (free) e aberto (open-source) Linguagem de programao utilizada: nesC Incorporado em Smartdusts (Wireless MEMS), como os ns RSSF Recursos MUITO limitados (ex: 8KB de memria de programa, 512 bytes de RAM).

1999: iniciou-se como projeto em UC Berkeley como parte do DARPA NEST program, gerando a primeira plataforma (WeC); 2000: Associao com a Crossbow Inc., para produo de hardware especfico; 2001: verso 0.6 com plataforma mica e mix entre C e Perl script; 2002: verso 1.0, com linguagem nesC, desenvolvida em parceria com a Intel.

2003: verso 1.1 lanada com algumas novidades em nesC, entre elas deteco de condies de corrida (data race) 2006: Verso 2.0 lanada no 3 TinyOS Technology Exchange em Stanford, CA 2007: 2.01 e 2.02 2008: 2.1.0 Abril de 2010: ultima verso, 2.1.1

Caractersticas nicas:

Arquitetura baseada em componentes Concorrncia baseada em tarefas e eventos Operaes divididas em fases

TinyOS prov componentes para abstraes comuns tais como comunicao, roteamento, sensoriamento, atuao e armazenagem.

Tarefas no interferem entre si, ou seja, no h preempo entre as mesmas. Tarefas executam at terminar (Run to Completion) atmicas a outras tarefas

Com isso, possvel perceber que interfaces podem ser fornecidas ou usadas pelos componentes. As interfaces fornecidas consistem na funcionalidade que o componente prov ao aplicativo; as interfaces usadas representam a funcionalidade necessria ao componente para executar o seu trabalho.

Anda mungkin juga menyukai