EventOS - Sistema Operacional Baseado em Eventos para IoT

Post on 18-Jul-2015

81 views 7 download

Transcript of EventOS - Sistema Operacional Baseado em Eventos para IoT

Instituto Nacional de Telecomunicações

SISTEMA OPERACIONAL DE TEMPO REAL

ORIENTADO A EVENTOS PARA SISTEMAS

EMBARCADOS COM FOCO EM APLICAÇÕES PARA

INTERNET DAS COISAS

Edielson Prevato Frigieri

edielson@inatel.br

Amanda Kelly da Silva

amandakelly@gec.inatel.br

Samuel Pereira

samuelpereira@gec.inatel.brOut 2014

Agenda

1

O que éIoT?

2

Desafios para IoT

3

EventOSRTOS baseado

em eventos

4

Resultados

O que é IoT (Internet of Things)?

O que são estas coisas?

internet

Visão de WeiserAs tecnologias mais profundas são aquelas que

desaparecem. Misturam-se no cotidiano da vida até que se tornam indistinguíveis. (Weiser, 1991)

Casos reais

Monitoramento de vagas de estacionamento

http://www.libelium.com/smart_santander_parking_smart_city/

Casos reais

Monitoramento incêndios em florestas

http://www.libelium.com/wireless_sensor_networks_to_detec_forest_fires/

Agenda

1

O que éIoT?

2

Desafios para IoT

3 4

ResultadosEventOSRTOS baseado

em eventos

Desafios da IoT

Locais de armazenamento ilimitados

Preocupações com privacidade

Interação com as pessoas

Conectividade comum

Eficiência energética do ecossistema

Atualização de aplicação

Agenda

1

O que éIoT?

2

Desafios para IoT

3 4

Resultados EventOSRTOS baseado

em eventos

EventOS

RTOS

baseado em eventos

Atualização de aplicação

Conectividade comum

Eficiência energética

EventOS

Conectividade comum

Utilização de protocolos publish/subscribe baseadoem fila de mensagens

Permite a uniformização da comunicação;

Possui características como velocidade, simplicidade,robustez a conexões instáveis;

Alguns exemplos: MQTT

XMPP

Outros...

EventOS

http://eecatalog.com/m2m/2013/03/14/m2m-promises-growth-for-embedded-wireless-sensors-and-more/

EventOS

Atualização de aplicação

Permite o carregamento de um novo aplicativoremotamente e em tempo de execução.

Permite instalar ou desinstalar novas funcionalidades emtempo de execução;

Permite o monitoramento do estado atual, tanto em relaçãoàs funcionalidades instaladas quanto a capacidade dememória;

EventOS

EventOS

EventOS

Eficiência energética

Escalonamento baseado em eventos

Permite que o sistema trabalhe, na maior parte do tempo,em modo de economia de energia (sleep mode)

Sleep mode Entering

Standby

Wakeup

On-Exit

Tail-chaining

http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0337e/Babjagdg.html

EventOS

Evento 1Média

Evento 1Média

Lista de tarefas

Tarefa 1Evento 1

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

Fila de Eventos

Escalonador

TarefaIdle

EventOS

Evento 2Baixa

Evento 2Baixa

Evento 1Média

Lista de tarefas

Tarefa 1Evento 1

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

Fila de Eventos

Escalonador

TarefaIdle

EventOS

Evento 3Média

Evento 3Média

Evento 1Média

Evento 2Baixa

Lista de tarefas

Tarefa 1Evento 1

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

Fila de Eventos

Escalonador

TarefaIdle

EventOS

Evento 3Média

Evento 1Média

Evento 2Baixa

Lista de tarefas

Tarefa 1Evento 1

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

Fila de Eventos

Escalonador

TarefaIdle

Preempção

EventOS

Evento 1Evento 1

MédiaEvento 3

MédiaEvento 2

Baixa

Lista de tarefas

Tarefa 1Evento 1

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

Fila de Eventos

Escalonador

Tarefa 1

EventOS

Evento 1Evento 3

MédiaEvento 2

Baixa

Lista de tarefas

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

Fila de Eventos

Escalonador

Tarefa 2

Tarefa 1Evento 1

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

EventOS

Evento 1Evento 3

MédiaEvento 2

Baixa

Lista de tarefas

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

Fila de Eventos

Escalonador

Tarefa 5

Tarefa 1Evento 1

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

EventOS

Evento 3Evento 3

MédiaEvento 2

Baixa

Lista de tarefas

Tarefa 3Evento 2

Tarefa 4Evento 3

Fila de Eventos

Escalonador

Tarefa 1Evento 1

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

EventOS

Evento 3Evento 2

Baixa

Lista de tarefas

Tarefa 3Evento 2

Tarefa 4Evento 3

Fila de Eventos

Escalonador

Tarefa 4Evento 3

Tarefa 1Evento 1

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

EventOS

Evento 2Evento 2

Baixa

Lista de tarefas

Tarefa 3Evento 2

Fila de Eventos

Escalonador

Tarefa 1Evento 1

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

EventOS

Evento 2

Lista de tarefas

Fila de Eventos

Escalonador

Tarefa 3Evento 2

Tarefa 1Evento 1

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

EventOS

Lista de tarefas

Tarefa 1Evento 1

Tarefa 2Evento 1

Tarefa 3Evento 2

Tarefa 4Evento 3

Tarefa 5Evento 1

Fila de Eventos

Escalonador

TarefaIdle

Sleep Mode

EventOS

Garantia de tempo real

Tarefas como máquinas de estado

Garante que não ocorrerá travamentos no sistema;

Permite que os sistema atenda a requisitos de tempo real;

Agenda

1

O que éIoT?

2

Desafios para IoT

3 4

Resultados RTOS baseadoem eventos

RTOS baseado em eventos

EventOS

https://eventos.codeplex.com/

EventOS is an event-driven operating system withfocus on Internet of Things that was built to be flexibleand lightweight, with high power efficiency constraint.Targeted for using in small microcontrollers providingremote access and management.

Referências

• M. Gigli, Internet of Things: Services and Applications Categorization, Adv. Internet Things. 01 (2011) 27–31. doi:10.4236/ait.2011.12004.

• Weiser, M.: The Computer for the 21st Century. Scientific American 265(9):66–75 (1991)

• Takada, H. (2001). Real-time operating system for embedded systems. In: M. Imai and N. Yoshida (eds.): Tutorial 2 – Software Development Methods for Embedded Systems, Asia South-Pacific Design Automation Conference (ASP-DAC).

• Li, Q. (2010). Real-Time Concepts for Embedded Systems. First Edition, p. 294.

• C. Media, Embedded Market Survey, Embedded System Design Magazine, 2013.

• T. Mohamadi, Real Time Operating System for AVR microcontrollers, 2011 9th East-West Des. Test Symp., pp. 376–380, Sep. 2011.

Referências

• T. N. B. Anh and S.-L. Tan, Survey and performance evaluation of real-time operating systems (RTOS) for small microcontrollers, IEEE Micro, vol. PP, no. 99, p. 1, 2009.

• R. Barry, Using the FreeRTOS Real Time Kernel - A Practical Guide, First Edit. 2010, p. 216.

FIM

Amanda Kelly

Samuel Pereira

Edielson Prevato Frigieri