DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
The Latest "Software Integration: The Intersection of APIs, Microservices, and Cloud-Based Systems" Trend Report
Get the report
  1. DZone
  2. Data Engineering
  3. Big Data
  4. Why the Need for Special Operating Systems for IoT and Wearable Devices?

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

Design engineers need an OS that can operate on constrained hardware while still delivering the app-driven experiences and services expected of IoT devices. MicroEJ OS bridges the gap.

Linda Marchant user avatar by
Linda Marchant
·
Jun. 03, 16 · Opinion
Like (2)
Save
Tweet
Share
6.95K Views

Join the DZone community and get the full member experience.

Join For Free

The economic constraints of the IoT market dictate that those devices deployed on the Internet run on smaller, cheaper, and power-saving hardware platforms such as low-cost microcontrollers (MCUs). At the same time, these devices are expected to deliver smartphone-like, app-driven usage and business models, connecting and interacting with Cloud-based infrastructure and services.

Embedded systems rely on various commercial, open-source or in-house real-time operating system (RTOS), libraries and compiler/linker tools. All combinations of these software elements need to run on a large variety of 32-bit instruction-set architectures (ISAs) based on the underlying MCU. This vertical integration approach requires porting every application to each combination of ISA, RTOS, libraries and compiler/linker. Such an approach limits the availability of developers, uses enormous resources and requires significant effort and expense in middleware development and integration.

Each device on the Internet uses standard frameworks and agents to inter-communicate and to connect to Cloud services for software content and operations management. In addition, the IoT frameworks need to support the emergence of a strong and large community of developers by enabling all applications to target the same platform across various devices.

Image title


A horizontal-integration approach enabled by a Java platform leverages a virtualization layer that makes applications portable across all ISA/RTOS/compiler combinations. This approach significantly reduces middleware integration work and taps into a large community of application developers. Most Cloud and IoT frameworks are implemented in Java, with standard libraries and APIs for accessing elements that are used in enterprise applications. Using the same language on the Cloud and edge sides of the IoT devices eases development, debugging and deployment of distributed IoT end-to-end applications and ecosystems.

To achieve large-scale deployment of profitable IoT devices and services, things that are connected to the Internet need to leverage the power and efficiencies offered by IT-world solutions while still meeting the cost constraints and resource limitations of the embedded. This requires a specific software platform that successfully adapts and applies mainstream software technologies and practices used in the Cloud and mobile to the embedded world.

Operating systems (OS) are essential foundations for enabling IoT devices. PCs and mobile devices were built on a couple of dominant operating systems, Windows/Linux and Android/iOS, respectively. While these operating systems provide standardized software platforms, they cannot successfully function within the economic constraints that drive the IoT space. The “things” in the IoT are expected to be deployed in billions of devices, with much lower capital and operational expenditures than PCs and smartphones.

An operating system tuned for IoT devices needs to deliver scalability, portability, connectivity, security, usability and multi-app execution. MicroEJ OS offers the best of both worlds by providing the scalability of embedded RTOS solutions while enabling access to a large community of mobile and PC developers for efficient software application development.

MicroEJ OS enables the delivery of app-driven experiences and services to devices that cannot afford to run mobile platforms. It can run on low-power, low-cost megahertz MCUs in the range of kilobytes of memory and storage. Compared to devices on mobile operating systems, MicroEJ OS allows manufactures to save up to 60 percent on bill of materials and to increase up to 80 percent in battery life.

Image title


The hardware virtualization layer in MicroEJ OS isolates application software from ISA/RTOS/BSP/compilers, allowing for binary code reuse across a range of different products. It provides a full set of software foundation blocks through high-level API and stacks for both application software development and RTOS/libraries/BSP integration. MircroEJ OS can focus on just the components required for supporting available hardware functions and delivering needed software services. It helps optimize total software footprint and reduce the size of expensive RAM and flash. It provides build and runtime checks for safe software programming and execution, as well as a multi-application framework for built-time configuration and run-time add-ons.

Designing IoT devices requires a lot of push and pull. Application software can influence the hardware implementation, which in turn can influence the physical design. As designs become more compact and even wearable, the mechanical design can constrain the hardware -- and hence the software -- capabilities of the device. Design engineers need an OS that can operate on constrained hardware while still delivering the app-driven experiences and services expected of IoT devices. MicroEJ OS bridges the gap between embedded world constraints and IT-world techniques by offering the best of both worlds–the scalability of embedded RTOS for firmware bring-up and a large community of mobile and PC developers for efficient applications development. With MicroEJ OS, designers can make more informed decisions on the size, speed, and cost of the IoT devices early in the process.


For additional information, see http://www.microej.com/portfolio-item/microej-operating-system-iot-devices/

Based on a presentation at IoT DevCon 2016 by Vincent Perrier, Chief Products Officer, MicroEJ

operating system IoT Software development mobile app

Published at DZone with permission of Linda Marchant. See the original article here.

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • What To Know Before Implementing IIoT
  • OpenVPN With Radius and Multi-Factor Authentication
  • MongoDB Time Series Benchmark and Review
  • How Agile Architecture Spikes Are Used in Shift-Left BDD

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: