why the need for special operating systems for iot and wearable devices?

13
Why the Need for Special Operating Systems for IoT and Wearable Devices? Vincent Perrier, Chief Products Officer, MicroEJ [email protected] #IoTDevCon www.iot-devcon.com 26 May 2016 1

Upload: microej

Post on 15-Apr-2017

324 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Why the Need for Special Operating Systems for IoT and Wearable Devices?

Why the Need for Special Operating Systems for IoT and Wearable Devices?

Vincent Perrier, Chief Products Officer, [email protected]

#IoTDevCon

www.iot-devcon.com

26 May 2016 1

Page 2: Why the Need for Special Operating Systems for IoT and Wearable Devices?

About MicroEJ

• IS2T S.A. founded in 2004 – offices in France, Germany, USA

– $5M Series A funding end 2011 – $20M R&D total investment

– http://www.microej.com/about

• Independent Software Vendor, global player in the IoT industry

– Licenses: embedded (tools & runtime) + cloud (store)

– Professional services, training & consulting

• Expertise in embedded, virtualization, software engineering & processes

• Partnerships with key IoT, silicon, embedded SW and HW vendors, EMS

#IoTDevCon

26 May 2016 2

Page 3: Why the Need for Special Operating Systems for IoT and Wearable Devices?

Embedded Devices

• Smart devices need to be able to acquire, compute and store data, and perform several tasks– Peripherals, processors (MCU, FPU, DSP), RAM, flash…

• Connected devices need to support many connectivity, communications and security standards– Physical/Link: 802.15.4, 868-902 MHz, 802.11, Bluetooth, cellular 2G/3G/4G…

– Network/Transport: Wi-Fi, 6LowPAN, TCP/UDP-IP, TLS/DTLS, ZigBee, Z-Wave…

• Interactive devices provide graphical and touch interface– Graphical User Interface (GUI), Human-Machine Interface (HMI)

• Managed devices allow software content update and operations management from the Cloud– Over-The-Air (OTA) firmware update

– Device Management (DM)

• May use proprietary communication protocols over standard links– Sensors, actuators, I/Os (GPIO, PWM, DAC/ADC, USB, I2C, SPI, UART…)

– Internet client/server (sockets)

26 May 2016 3

#IoTDevCon

Page 4: Why the Need for Special Operating Systems for IoT and Wearable Devices?

IoT Devices

• IoT devices use standard frameworks and agents for communicating with each other and connecting to services in the cloud that provide software content and operations management– TLS, HTTPS REST…

– Thread, AllJoyn, DDS, XMPP, AMQP, MQTT, CoAP, LWM2M…

• They leverage data streams and formats for cloud-based analytics– XML, JSON…

• They may run multiple applications that can be dynamically downloaded and installed/uninstalled (without FW update)– User experience similar to smartphones/tablets = application store

26 May 2016 4

#IoTDevCon

Page 5: Why the Need for Special Operating Systems for IoT and Wearable Devices?

IoT Edge-to-Cloud

26 May 2016 5

#IoTDevCon

• Should use standard communication protocols over standard links

HW

SW

GUI

Peripherals

Data

DM AgentsApps GWY

Data

DM

Store

Download

Page 6: Why the Need for Special Operating Systems for IoT and Wearable Devices?

• Embedded RTOS solutions have efficiently addressed SW bring-up on fragmented hardware by providing vertical integration layers for each combination (ISA/compiler/libs)

• But they may require integration work for the BSP and native libraries

• They may not provide ready-to-use solutions for enabling IoT and cloud-ready SW capabilities

• Applications still need to be ported from one vertical silo to another, further fragmenting developers communities

26 May 2016 6

#IoTDevCon

VERTICALINTEGRATION

Lib

App AppApp App

RTOS RTOS

Lib

?

Lib

Lib

Lib

?

?

API

API

Integrate

DevelopIntegrate

API API API

DevelopPort

Fragmented HW

API API API

Page 7: Why the Need for Special Operating Systems for IoT and Wearable Devices?

• The MicroEJ® Operating System leverages the best of both worlds:

– The scalability of embedded RTOS solutions for SW bring-up

– The large community of mobile & PC developers for efficient SW applications development

• It provides APIs both for BSP/RTOS/libs integration and SW app development

• It enables horizontal integration of OS services thanks to a virtualizationlayer that isolates application layers from lib/RTOS/BSP/compiler/ISA layers

26 May 2016 7

#IoTDevCon

RTOS RTOS RTOS

App AppApp App

API

RTOS

API API APIAPI

Develop.

HORIZONTALINTEGRATION

Virtualization

Fragmented HW

Page 8: Why the Need for Special Operating Systems for IoT and Wearable Devices?

HW Virtualization Layer

26 May 2016 8

#IoTDevCon

ADVANTAGES HOW:

Hardware independence• True Portability of BINARY SW across HW (no

recompilation needed)

Micro-Virtualization layer (30KB)• Formal Separation between HW-dependent-SW and

HW-independent-SW

Safe SW programming & execution Build & runtime checks, Sandboxing

Full set of SW foundation blocks High-level API & stacks

Secured investments• Legacy code integration

Multi-language support: Java, C/C++ / ASM

Future-proof• SW updates• New SW downloads

Multi-application framework• Build-time configuration• Run-time add-ons

HW1 HW2 HW3

SW

MicroEJ Operating System

HW dependent SW

HW independent SW

Page 9: Why the Need for Special Operating Systems for IoT and Wearable Devices?

MicroEJ OS

26 May 2016 9

#IoTDevCon

Platform

OPERATING SYSTEM

BSP/DRIVERS

TARGET HARDWARE

APPLICATIONS

APP 1 APP 2 APP 3 APP 4 …

CORESecure Multi-Application Engine

COREMemory Management

CORELanguages/Utilities/Test

CORECPU & Power Management

COREComponents Management

IOSensors/Actuators/GPIO

COMMConnectivity Wired/Wireless

STOREApplication Management

NUMNumerical Methods

FILE & DATAPersistence/File System

GUIGraphics/Touch

NET & SECNetwork Protocols & Security

IOTIoT/Cloud Middleware

Page 10: Why the Need for Special Operating Systems for IoT and Wearable Devices?

MicroEJ OS Foundations

HW Foundations

• MCU/MPU/SoC architectures and starter kits

– ARM Cortex M/A

– MIPS, RX, PowerPC, TriCore…

SW Foundations

• Hardware-dependent Software

– Bare metal/any RTOS

– BSP, drivers, libraries

• Native SW SDKs

26 May 2016 10

#IoTDevCon

Page 11: Why the Need for Special Operating Systems for IoT and Wearable Devices?

End-to-End IoT

• MicroEJ enables secured cloud-based services

26 May 2016 11

#IoTDevCon

IOT DEVICES

SW CONTENT MANAGEMENT

DEVICE MANAGEMENT

DATA ANALYTICS

GATEWAY PP

MicroEJ Partners

OS

STORE

OS

P

Page 12: Why the Need for Special Operating Systems for IoT and Wearable Devices?

OS for IoT

26 May 2016 12

#IoTDevCon

RTOS Linux

MPU (>$10 ASP)MCU ($1-6 ASP)

Vo

lum

es

75%IoT = “sub-gig” things:• Processor < GHz• Memory < GB

25%

SW Foundation

Page 13: Why the Need for Special Operating Systems for IoT and Wearable Devices?

Thank You

• General information

– www.microej.com

• MicroEJ SDK free evaluation for OEMs

– www.microej.com/get-started

• Free MicroEJ Studio for application developersMicroEJ Application Store

– store.microej.com

• Developer’s Community (source, doc, examples…)

– developer.microej.com

• Contact us

[email protected]

26 May 2016 13

#IoTDevCon

All rights reserved.Information, technical data and tutorials contained in this document are proprietary under copyright Law of Industrial Smart Software Technology (IS2T S.A.) operating under the brand name MicroEJ®.Without written permission from IS2T S.A., copying or sending parts of the document or the entire document by any means to third parties is not permitted. Granted authorizations for using parts of the document or the entire document do not mean IS2T S.A. gives public full access rights.IS2T®, MicroEJ® and all relative logos are trademarks or registered trademarks of IS2T S.A. in France and other Countries.Java™ is Sun Microsystems' trademark for a technology for developing application software and deploying it in cross-platform, networked environments. When it is used in this documentation without adding the ™ symbol, it includes implementations of the technology by companies other than Sun.Java™, all Java-based marks and all related logos are trademarks or registered trademarks of Sun Microsystems Inc., in the United States and other Countries.Other trademarks are proprietary of their respective owners.