quarta-feira, 1 de outubro de 2014

Internet das Coisas? Segure a minha cerveja, eu tenho esse: ARM artesanato OS para governá-los todos


Controle remoto seguro para desktops convencionais e virtuais


ARM vai hoje anunciar um novo sistema operacional chamado OS mbed: procura para alisar todas as diferenças entre os vários concorrentes system-on-chip de modo que as aplicações de alto nível pode falar com sensores e aparelhos se eles estão usando o silício da Atmel, Marvell , ST, Freescale, NXP, e assim por diante.



O software será revelado no ARM Techcon 2014 em Santa Clara, Califórnia, na quarta-feira, embora ainda não está totalmente disponível. Mas aqui está o que foi dito sobre ele.


É, essencialmente, vem em duas partes: na metade inferior, há o kernel do sistema operacional em execução no mbed system-on-fritas em pequenos dispositivos: este sistema operacional fornece os drivers, reage a coisas acontecendo ao redor do hardware, e se comunica com o mundo exterior. Os programadores podem escrever software para rodar diretamente em cima do kernel; este código controla a operação do dispositivo.


Em seguida, na metade superior da pilha, não há software de servidor chamado mbed Device Server que é executado em muito maior x86 ou ARM computadores potência. Isso se conecta aplicações de alto nível, como um site de back-end, para os dispositivos individuais; ele permite que grandes pedaços de software para gerenciar e extrair muitos pequenos gadgets que não, individualmente, têm muito em termos de inteligência.


Um gateway conectado à internet, o que poderia ser um smartphone, tablet ou uma pequena caixa em um armário, conversa com os dispositivos mais de comunicadores de curto alcance, tais como Wi-Fi ou Bluetooth, e em seguida, encaminha essas informações através de um Device Server mbed. Esse servidor pode ser na nuvem, ou poderia ser uma máquina local. Um dispositivo poderia, se for capaz, pular a fase de gateway e ir direto para o servidor. É uma arquitetura flexível.


Muita desta pilha, em particular ao nível mais baixo, retira da ARM mbed comunidade que vem acontecendo desde 2009: esta é uma grande pilha de recursos e toolchains para a construção de firmware microcontrolador ARM utilizando C e C ++. Estamos informados de mais de 70.000 programadores se inscreveu no site mbed.org, e tenho trabalhado em milhares de projetos para 30 ou mais de prototipagem e desenvolvimento placas suportadas pelo código mbed.


Agora, ao que parece, da ARM amarrar tudo junto, e embalado-lo para que os desenvolvedores de aplicativos de alto nível pode protótipo coisas para sensors'n'gadgets ARM-motorizados mais rápidos - uma vez que há uma base comum e bem definida a partir da qual começar.


O plano é usar padrões abertos, tais como HTTP e MQTT em cima de TLS e DTLS, para entregar dados de forma segura entre dispositivos e qualquer software é o mentor deles. O software suporta Bluetooth inteligente; Redes de telefonia 2G, 3G, LTE e CDMA; Google rosca; Wi-Fi; e 6LoWPAN.


A pilha também esconde coisas como disponibilidade do dispositivo: por exemplo, software de servidor de alto nível pode solicitar dados de um sensor que pode estar dormindo para poupar energia e, eventualmente, a informação é recebida quando o dispositivo está acordado, os quais é transparente para o aplicativo de alto nível. Isto simplifica o nível mais alto da pilha, que ajuda as pessoas a escrever e liberar o código para usuários um pouco mais rápido.


Isso pode ser uma notícia preocupante para os engenheiros que gostam de obter os seus dedos sujos programação de microcontroladores usando a linguagem assembly, mas o ponto do projeto mbed tem sido a de abstrair o mundo caótico do design SoC longe de desenvolvedores - deixando uma mais limpa, interface comum para trabalhar.


"Compiladores estes dias são muito bons", CTO da ARM, e co-fundador da empresa, Mike Muller disse-nos.


"Não é mais a década de 1980, onde você tem que usar a linguagem assembly é, você pode fazê-lo de forma mais eficiente agora, e tempo de desenvolvimento realmente importa."


Sob o capô


O novo sistema operacional mbed é projetado para a família Cortex-M, série de núcleos de microcontroladores de 32 bits da ARM. Estes podem custar cerca de US $ 5 a US $ 10 cada, e vão desde a pequena M0 a M4 mais corpulento e M7 . O OS mbed não é um porto de um núcleo existente, como as microkernel L4 encontrados rodando em ARM-based crypto-co-processador do iPhone 6, QNX encontrados em vários painéis de carro, nem o GNU ARM onipresente / Linux e uClinux.


Estamos disse o novo sistema operacional usa o código da ARM, além de motoristas e fonte contribuído por fabricantes de hardware e da comunidade mbed. Como seria de esperar de um OS microcontrolador, é pequeno o suficiente para caber dentro das limitações de um Cortex-M SoC. Um pacote típico M0 + terá entre 8 KB e 128 KB de armazenamento flash, e até 16KB de RAM, além de operar em até 48MHz; seu comum-ou-jardim M4 SoCs ir até 180MHz, e incluem 32KB a 2MB de flash e até 256KB de SRAM. Estamos assegurou o OS mbed cabe no espaço lampejo de seus dispositivos de destino.


O sistema operacional é orientado a eventos, em vez de um clássico em tempo real OS, Zach Shelby, diretor de marketing técnico para a Internet das Coisas da ARM, disse-nos. O que isto significa é que ele não é um kernel preemptivo complexo que divide o processador em fatias de tempo; não há nenhuma mudança de contexto ou temporizadores com prazos. Em vez disso, OS mbed dorme até que uma interrupção de um sensor ou outro periférico acorda-lo, ele lida com o evento, faz a decisão de desencadear um sinal mais alto da pilha, e então cai no sono de novo.


Se você está acostumado com o desenvolvimento em nível micro, isso vai vir como nenhuma surpresa. É apenas bom senso em um ambiente de recursos limitados; um projeto que era para economizar energia. "Pilhas não seguem a Lei de Moore", disse Shelby, lembrando-nos processadores móveis que hoje ainda são limitados por suas fontes de energia minúsculas.


Deslize mostrando as camadas de software dentro do sistema operacional

mbed SO ... os componentes do sistema operativo



Acima está o diagrama de ARM das camadas em OS mbed; essencialmente, como um desenvolvedor, você preenche os blocos azuis no topo: os aplicativos e bibliotecas. Abaixo está a composição do mbed Device Server, que abstrai os níveis mais baixos de software que se comunica com iOS e Android, ou outros serviços.


A idéia aqui é para que as pessoas que estão à mão com C ++, JavaScript, HTML, Swift e outras línguas para celulares, tablets e desktops pode protótipo e construir aplicações para hardware complicadas, em última análise escondido sob a pilha mbed. Estes programadores não precisa saber sobre os registros sem documentos e bits de controle, e as rivalidades, que assola o mundo system-on-chip; é abstraída por mbed, que tenta pavimentar a fragmentação.


"Internet das coisas de hoje em grande parte, existem isoladamente, e tem sido impossível realizar um mundo verdadeiramente interligado onde os dispositivos são compatíveis com muitos serviços de nuvem diferentes", disse Krisztian Flautner, gerente geral de seus negócios IoT da ARM.


Deslize mostrando como o software do lado do servidor se encaixa

As camadas do software de servidor mbed ... seus aplicativos sentar-se no topo



Mas o que é tudo isso? Uma boa pergunta. Na verdade, pergunte a um quarto de executivos de engenharia incorporadas para exemplos de sensores e killer apps para a Internet das Coisas, e você pode muito bem acabar sentado em um breve silêncio constrangedor. O fato é que ainda estamos muito na parte de "construir" de "construa e eles virão".


ARM está trabalhando com a IBM em seu Smart Cities. Isso significa que as luzes da rua ser capaz de sentir, usando Wi-Fi ou Bluetooth, quantas pessoas estão nas proximidades e ajustar a iluminação em conformidade, através de um sistema executando mbed Device Server. Isso pode ser mais fino que depender de detectores de movimento primitivo.


A casa poderia ter sensores de movimento em portas de armário de cozinha para detectar quando as crianças estão passando cookies, pensando mãe ou o pai não está olhando - mas um alerta dispara no smartphone do pai e tablet da criança está bloqueado como punição. Porque não basta colocar um cadeado no armário? Bem, talvez pouco Luke ou Lisa merece um bolinho de vez em quando, assim que o pai diz ao telefone que é permitido.


Talvez, você simplesmente gostaria de controlar o forno do seu SmartWatch. Esperando lotes da ARM de pessoas vão começar a resolver problemas em áreas onde há níveis suficientes de demanda para vender produtos e ganhar dinheiro. Porque isso significa ARM pode fazer algum dinheiro com isso, também.


Deslize mostrando um relato luz de rua de volta para um servidor

Então, como é essa coisa ... luzes de rua que sabem quem está lá trabalho (clique para ampliar)



ARM diz que ele tem um monte de empresas a bordo, já no novo visual do projeto mbed - da IBM fazendo as acima mencionadas Cidades Inteligentes para system-on-chip fabricantes a tomar as plantas núcleo Cortex-M e periféricos de construção em torno deles no silício. Estes fabricantes são esperados para apoiar o OS mbed, a partir das fichas para as placas.


Lista de parceiros que participam no programa mbed OS

Quem está a bordo ... IBM a Ericsson, Atmel a Marvell, etc (clique para ampliar)



O OS mbed deve estar pronto para os parceiros da ARM para uso por Q4 2014, nos é dito; não espere que todos os dispositivos que utilizam o software até 2015 O Device Server mbed já está em produção, aparentemente.


O software é descrito como livre e de código aberto, mas ... há sempre um mas. O OS mbed é livre para usar, e muito do que vai ser de código aberto, estamos disse. Mas haverá blobs binários no firmware. Algumas destas será bem guardado, drivers de código fechado para os SoCs, desenvolvidos pelos fabricantes de chips; algumas delas são para a segurança.


Por exemplo, deve ser possível atualizar o firmware do microcontrolador através do ar, de modo que você vai querer estas atualizações a serem assinados criptograficamente para que os atacantes não podem carregar código malicioso arbitrário dispositivos. Isso significa que, incluindo uma chave pública no flash.


Outra parte é que alguns podem descrever como controle, mas ARM descreve-o como consistência. Você pode ajustar e melhorar as partes de código aberto da pilha mbed, mas ARM gostaria componentes específicos para manter a coerência e compatível em toda a plataforma - especialmente as camadas de hardware de segurança e de rádio, eo código que traz um dispositivo.


Quando um mbed OS SoC é iniciado, pode ser possível para o dispositivo e instalar firmware que melhor se adapte à sua volta; para fazer isso, o SoC tem de inicializar em um estado seguro correndo instruções que ele pode confiar; há pouco a ganhar com a atualizar de forma segura um dispositivo já comprometida. Mais uma vez, este é o lugar onde os componentes binários entram em jogo. Segurança, dizem, está incluído a partir do zero, e não como uma reflexão tardia ou recurso premium.


Até o mais curioso de espírito SoCs jailbreaking início $ 5 sensores para executar um código completamente arbitrária, a parte binária da pilha permite ARM para manter a mão firme no leme, para impedir a fragmentação do projeto e levando a equipe de volta à estaca zero.


"Open source faz com que seja mais fácil de melhorar, e mais fácil para as pessoas a encontrar e corrigir bugs," Shelby da ARM acrescentou.


Enquanto isso, do lado mbed Device Server é livre para usar e desenvolver, mas a licença deve ser obtida para usá-lo comercialmente. Este é ARM, afinal de contas; Licenciamento de Tecnologia é o seu pão e manteiga. ®







via Alimentação (Feed)

Nenhum comentário:

Postar um comentário