ARM lanza la versión beta pública de OS mbed, incluye el código fuente
En octubre de 2014, ARM anunció mbed OS, su nuevo sistema operativo para dispositivos IO. Ahora, más o menos en la fecha prevista, la compañía ha lanzado una versión beta pública del sistema operativo para los desarrolladores y aficionados a probar. mbed OS es un sistema operativo libre y de código abierto para la gama Cortex-M de ARM de microcontroladores. Estos procesadores son menos complejos que gama de procesadores Cortex-A de ARM que se encuentran en los teléfonos inteligentes o tabletas. Procesadores Cortex-M son ultra-bajo consumo de energía, correr a velocidades de alrededor de 100 MHz (o menos), y son perfectas para el Internet de las Cosas.
Cuando se anunció primero OS mbed fue diseñado exclusivamente para el Cortex-M, lo que significaba que si quería construir un dispositivo IO con OS mbed que tenía que ser el uso de un tablero con base Cortex-M. Sin embargo, en abril de ARM anunció un compañero para OS mbed llamado Client mbed, un conjunto de librerías básicas que permitirán programas OS mbed para ser portado a equipos basados en Cortex-A y placas que ejecutan Linux. Parte de la beta pública que fue anunciada hoy es también una versión de prueba del cliente mbed.
El anuncio de hoy es en realidad compuesto por cinco proyectos diferentes, tres de los cuales son de código abierto. Los componentes son: el sistema operativo mbed, el Conector de dispositivos mbed, el servidor de dispositivos mbed, el mbed TLS, y el Cliente mbed. El sistema operativo, el cliente, y la biblioteca TLS son los componentes que han sido liberados como de código abierto.
mbed OS
ARM ha lanzado un proyecto github para OS mbed así como más información en mbed.com. mbed OS está diseñado específicamente para la parte de "cosas" de la Internet de las Cosas. Su objetivo es proporcionar una base para los desarrolladores construir sobre y ofrece capacidades de comunicación basadas en estándares, junto con los conductores para los sensores, dispositivos de E / S y de conectividad.
sí mbed OS está formado por varios componentes de software diferentes, combinados juntos y construido usando yotta. Existen los módulos del sistema operativo básico incluyendo minar, el mbed scheduler- evento OS y uvisor, un núcleo de supervisión de la seguridad en OS mbed.
Lo siguiente es la capa de abstracción de hardware que proporciona implementaciones genéricas de CMSIS (la interfaz de software estándar de la corteza de microcontroladores - oficial de abstracción de hardware de bajo nivel de ARM para Cortex-M) para una variedad de tarjetas de conexión incluyendo la junta Freescale FROM-K64F y la placa ST STM32F429I Descubrimiento .
También hay varios componentes de red diferentes, incluyendo una capa de abstracción de socket, y soporte para Ethernet, 6LoWPAN, y Bluetooth Low Energy.
mbed servidor de dispositivos y conector de dispositivos mbed
El servidor de dispositivos mbed es un producto intermedio para la conexión de dispositivos IO a las aplicaciones web. El servidor utiliza el protocolo de aplicación restringida (COAP) para comunicarse con los dispositivos IO. Cada OS mbed y Cliente mbed tiene una pequeña aplicación COAP que permite la información disponible, tales como sensores y datos históricos que se enviará al servidor y puesto a disposición de las aplicaciones web. Cada dispositivo registra sus recursos con la función de directorio de recursos del servidor de dispositivos mbed usando una sola solicitud POST (que está automatizado por sí mismo OS mbed). Una vez que un dispositivo se ha registrado, todas las operaciones de búsqueda, la resolución y el descubrimiento puede ser manejado entre las aplicaciones web y el servidor de dispositivos mbed. Esto elimina la necesidad de la aplicación web para comunicarse con los dispositivos directamente.
El Conector de dispositivos mbed es una versión hospedada del servidor de dispositivos mbed, se ofreció a los desarrolladores mbed ayunar pista desarrollo y creación de prototipos. Se ofrece sin costo alguno para los desarrolladores de la IO, pero está limitada a 100 dispositivos, 200 eventos por hora y dos llaves de API. Básicamente es decir permite a los desarrolladores de la IO para probar a cabo la parte basado en la nube de sus proyectos sin tener que construir la infraestructura.
mbed TLS
El mbed TLS es un código abierto completo una biblioteca SSL. Los módulos TLS mbed son tan débilmente acoplados posible y escritos en el lenguaje C portátil. Esto permite a los desarrolladores la libertad de usar las piezas que necesitan, sin tener que incluir la biblioteca totales.
Como una biblioteca SSL, TLS mbed (antes conocido como PolarSSL) hace que sea fácil para los desarrolladores para incluir capacidades criptográficas y SSL / TLS en sus productos (integrados). Todo el código TLS mbed es liberado bajo la licencia Apache 2.0.
Cliente mbed
El otro componente de código abierto es el Cliente mbed. El código fuente se puede encontrar en github. El uso de esta biblioteca dispositivos basados en sistema operativo no mbed (es decir, dispositivos que no se ejecutan en tablas de Cortex-M) se puede conectar al conector de dispositivos mbed o mbed servidor de dispositivos. Básicamente implementa un subconjunto de la funcionalidad mbed OS y está optimizado para redes y dispositivos limitados. Como sistema operativo mbed utiliza el protocolo de aplicación restringida (COAP) y es compatible con la seguridad de comunicación utilizando mbed TLS.