Posts

ACRN is a flexible, lightweight reference hypervisor, built with real-time and safety-criticality in mind.

This article was produced by The Linux Foundation with contributions from Eddie Dong, Principle Engineer of Intel Open Source Center.

As the Internet of Things has grown in scale, IoT developers are increasingly expected to support a range of hardware resources, operating systems, and software tools/applications. This is a challenge given many connected devices are size-constrained. Virtualization can help meet these broad needs, but existing options don’t offer the right mix of size, flexibility, and functionality for IoT development.
ACRN

ACRN is different by design. Launched at Embedded Linux Conference 2018, ACRN is a flexible, lightweight reference hypervisor, built with real-time and safety-criticality in mind and optimized to streamline embedded development through an open source platform.

One of ACRN’s biggest advantages is its small size — roughly only 25K lines of code at launch.

“The idea for ACRN came from our work enabling virtualization technology for customers,” said Imad Sousou, Corporate Vice President and General Manager of the Open Source Technology Center at Intel, which seeded the source code to launch the project. “There’s strong workload consolidation in embedded IoT development. Using hypervisor technology, workloads with mixed-criticality can be consolidated on a single platform, lowering development and deployment costs and allowing for a more streamlined system architecture.”

And about the name: ACRN is not an acronym. Pronounced “acorn,” the name symbolizes something that starts small and grows into something big, similar to how the project hopes to grow through community participation.

There’re two key components of ACRN: the hypervisor itself and the ACRN device model. The ACRN Hypervisor is a Type 1 reference hypervisor stack, running directly on bare-metal. The ACRN Device Model is a reference framework implementation for virtual device emulation that provides rich I/O virtualization support currently planned for audio, video, graphics, and USB. More mediator features are expected as the community grows.

How it works

ACRN features a Linux-based Service operating system (OS) running on the hypervisor and can simultaneously run multiple guest operating systems for workload consolidation. The ACRN hypervisor creates the first virtual environment for the Service OS and then launches Guest OSes. The Service OS runs the native device drivers to manage the hardware and provides I/O mediation to the Guest OS.ACRN

The Service OS runs with the system’s highest virtual machine priority to meet time-sensitive requirements and system quality of service (QoS). The Service OS runs Clear Linux* today, but ACRN can support other Linux* distros or proprietary RTOS as either the Service OS or Guest OS. The community is invited to help enable other Service OS options, and use the reference stack to enable Guest OSes such as other Linux* distributions, Android*, Windows* or proprietary RTOSes.

To keep the ACRN hypervisor code base as small and efficient as possible, the bulk of device model implementation resides in the Service OS to provide sharing and other capabilities. The result is a small footprint, low-latency code base optimized for resource constrained devices, built with virtualization functions specific to IoT development, such as graphics, media, audio, imaging, and other I/O mediators that require sharing of resources. In this way ACRN fills the gap between large datacenter hypervisors and hard partitioning hypervisors, and is ideal for a wide variety of IoT development.

One example is the Software Defined Cockpit (SDC) in vehicles. Using ACRN as the reference implementation, vendors can build solutions including the instrument cluster, in-vehicle infotainment (IVI) system, and one or more rear-seat entertainment (RSE) systems. The IVI and RSE systems can run as an isolated Virtual Machine (VM) for overall system safety considerations.

Software Defined Industrial Systems (SDIS) are further examples, including cyber-physical systems, IoT, cloud computing and cognitive computing. ACRN can help SDIS consolidate industrial workloads and can be orchestrated flexibly across systems. This helps provide substantial benefits to customers including lower costs, simplified security, increased reliability, and easier system management, among others.

Early endorsement of ACRN includes Intel, ADLINK Technology, Aptiv, LG Electronics, and Neusoft. Community members are invited to download the code and participate at the ACRN GitHub site. More detailed use case information and participation information can be found on the ACRN website.

Join us at Open Source Summit + Embedded Linux Conference Europe in Edinburgh, UK on October 22-24, 2018, for 100+ sessions on Linux, Cloud, Containers, AI, Community, and more.

Also, check out the ACRN Hypervisor Meetup in Shanghai – Q2 2018 (Minhang, China):

2018年3月Linux Foundation 发布了 ACRN hypervisor项目。随后陆续收到了很多来自社区和行业伙伴的反馈。这次的Meetup希望给大家一次面对面交流的机会。英特尔公司作为ACRN项目的发起者之一 将会介绍一下项目的体系架构,ACRN 未来的roadmap (draft)讨论,也将演示一些应用场景。各行业伙伴也将会分享各自的关心的话题。ACRN作为一个Linux Foundation的开源项目热情欢迎大家的参与与反馈。

One of my primary goals at The Linux Foundation is to foster innovation across the entire open source networking ecosystem. This involves coordinating across multiple open source projects and initiatives and identifying key areas for collaboration to create an open source networking stack.

We are working across the entire ecosystem with industry-leading partners — from developers to service providers to vendors — to unify various open source components and create solutions that will accelerate network transformation. As part of this journey, I am pleased to introduce Open Source Networking Days (OSN Days), a series of free events that are hosted and organized by local user groups and The Linux Foundation members, with support from our projects, including DPDK, FD.io, ONAP, OpenDaylight, OPNFV, PNDA, and others.

OSN Days are a fantastic opportunity for network developers and users to learn how ONAP, OPNFV, OpenDaylight  and other open source initiatives are changing NFV/SDN orchestration and networking solutions. Stops on the tour include: Paris, Milan, Stockholm, London, Tel Aviv, and Japan. Register today for an upcoming OSN Day in your region.

The day-long events will start with a plenary session where attendees will hear from site hosts and The Linux Foundation speakers on the state of the industry and the collaboration and touch points between projects that make up the open source networking stack. Presenters will also explore how business opportunities like 5G and IoT are enabled by network transformation.  In the afternoon, events may feature technical sessions, tutorials, demonstrations, and workshops that empower attendees to participate, contribute, and deepen their knowledge of open source networking.

Our first OSN Day kicks off October 9 in Paris, followed by stops in Milan (October 12), Stockholm (October 13), London (October 16), Tel Aviv (October 19), and Japan (October 19). Thanks to our incredible site hosts and sponsors Amdocs, ATOS, Cloudify, Ericsson, Huawei, NEC, Orange, Red Hat, SUSE, and Vodafone, along with our high-caliber roster of speakers, for helping to make these OSN Days a reality!

More details about the events, including site-specific agendas, registration info, and details on hotel and travel, can be found here: https://sites.google.com/linuxfoundation.org/osndays/home. If you have any questions, or would like to host an event yourself in the future, please email OSNDays@linuxfoundation.org.

IoT is largely transitioning from hype to implementation with the growth of smart and connected devices spanning across all industries including building automation, energy, healthcare and manufacturing. The automotive industry has given some of the most tangible examples of both the promise and risk of IoT, with Tesla’s ability to deploy over-the-air software updates a prime example of forward-thinking efficiency. On the other side, the Jeep Cherokee hack in July 2015 displayed the urgent need for security to be a top priority for embedded devices as several security lapses made it vulnerable and gave hackers the ability to remotely control the vehicle. One of the security lapses included the firmware update of the head unit (V850) not having the proper authenticity checks.

The growing number of embedded Linux devices coming online can impact the life and health of people, communities, and nations. And given the upward trajectory of security breaches coinciding with the increasing number of connected devices, the team at Mender decided to address this growing need.

Mender is an open source project to make it easier to deploy over-the-air (OTA) software updates for connected Linux devices (Internet of Things). Mender is end-to-end, providing both the backend management server for campaign management for controlled rollouts of software updates and the client on the device that checks for available updates. Both backend and client are licensed under the Apache License, Version 2.0.

Mender recently became a corporate member of the Linux Foundation. Here, we sit down with their team to learn more about their goals and open source commitment.

Linux.com: What does Mender do?

Thomas Ryd, CEO of Mender: our mission is to secure the world’s connected devices. Our team is focusing the project to be an accessible and inexpensive approach to securing their connected devices. Our goal is to build a comprehensive security solution that is not only inexpensive to use, but easy to implement and use. That will naturally drive Mender to be the de facto standard for securing connected Linux devices.

Eystein Stenberg, CTO of Mender: our first application is an over-the-air software updater for embedded Linux and our first production-ready version will focus on an atomic, dual file system approach to ensure robustness — in case of a failed update due to power failure or poor network connectivity, the device will automatically roll back to the previous working state.

Linux.com: How and why is open source important to Mender?

Ralph Nguyen, Head of Community Development: When we initially ventured into this problem, there were very little OTA solutions that were end-to-end open source. There were limits to some end-to-end vendors for their backend, while others were simply incomplete and didn’t have either a backend or client. There are many proprietary software products targeting the automotive industry, but none provided the level of openness we anticipated. And most of the embedded Linux folks we’ve spoken to implemented a homegrown updater. It was quite common that they had a strong distaste for maintaining it! This was a recurring theme that sealed our initial direction with OTA updates.

And the accessibility of our project for embedded Linux developers is important from a larger perspective: security is a major, tangible threat given recent events such as the Mirai botnet DDoS attack and developers shouldn’t be faced with vendor lock-in to address these very real challenges.

Linux.com: Why did Mender join the Linux Foundation?

Ryd: The Linux Foundation supports a diverse and inclusive ecosystem of technologies and is helping to fix the internet’s most critical security problems. We felt it was only natural to join and become a member to solidify our commitment to open source. We hope it will be an arena for learning and collaboration for the Mender project.

Linux.com: What are some of the benefits of collaborative development for such projects and how does such collaboration benefit Mender’s customers or users?

Nguyen: Our team has a background in open source, and we get that the more eyes there are, the security and quality of the code will increase accordingly. A permissive open source license such as ours encourages a thriving open source community which in turn provides a healthy peer review mechanism that closed source or other restrictive licenses simply cannot compete with. We anticipate the Mender project will improve vastly from a thriving, collaborative community which we hope to encourage and support properly.

Linux.com: What interesting or innovative trends are you witnessing and what role does Linux or open source play in them?

Stenberg: The core mechanisms required for almost any IoT deployment, for example within smart home, smart city, smart energy grids, agriculture, manufacturing, and transportation, is to collect data from sensor networks, analyze the data in the cloud and then manage systems based upon it.

A simple use case from the home automation industry is to open your home from your smartphone. It typically requires the states of the locks in your home to be published to the cloud (data collection), the cloud to visualize the overall state to your smartphone, open or locked (analyze) and give you the ability to change the overall state (manage).

The capabilities of the IoT devices vary, it can be a very heterogeneous environment, but they can generally be split into 1) low-energy sensors that run a small RTOS (Real Time Operating System) firmware of tens or hundreds of kilobytes and 2) local gateways that aggregate, control and monitor these sensors, as well as provide internet connectivity.

Linux plays a large and increasingly important role in the more intelligent IoT devices, such as these local gateways. Historically, the majority of device vendors developed their own proprietary operating systems for these devices, but this is changing due to the increasing software complexity. For example, developing a bluetooth or TCP/IP stack, web server or cryptographic toolkit does not add any differentiation to a product, while it does add significant cost. This is an area where the promise of open source collaboration is working very well, as even competitors are coming together to design and implement the best solution for the community.

Cost and scale are two important keywords for the IoT. Embedded development has historically required a lot of customizations and consulting, but in the future we will see off-the-shelf products with very large deployments, both in terms of hardware and software.

Linux.com: Anything else important or upcoming that you’d like to share?

Ryd: We have been working on Mender for two years and it has been a market-driven approach. Our team has engaged with over a hundred embedded Linux developers in various capacities, including many many user tests to ensure we were building a comprehensive solution to address software updates for IoT. What has become clear is the state of the union is downright scary. There have and will forever be bugs in software. Shipping connected products that can impact people’s lives and health not having a secure and reliable way to update software should soon be a thing of the past.

In 2017, The Linux Foundation’s Embedded Linux Conference marks its 12th year as the premier vendor-neutral technical conference for companies and developers using Linux in embedded products.

Now co-located with OpenIoT Summit, ELC promises to be the best place for embedded and application developers, product vendors, kernel and systems developers as well systems architects and firmware developers to learn, share and advance the technical work required for embedded Linux and IoT.

In anticipation of this year’s North America event, to be held Feb. 21-23 in Portland, Oregon, we rounded up the top videos from the 2017 ELC and OpenIoT Summit. Register now with the discount code, LINUXRD5, for 5% off the registration price. Save over $150 by registering before January 15, 2017.

1. Home Assistant: The Python Approach to Home Automation

Several home automation platforms support Python as an extension, but if you’re a real Python fiend, you’ll probably want Home Assistant, which places the programming language front and center. Paulus Schoutsen created Home Assistant in 2013 “as a simple script to turn on the lights when the sun was setting,” as he told attendees of his recent Embedded Linux Conference and OpenIoT Summit presentation, “Automating your Home with Home Assistant: Python’s Answer to the Internet of Things.”

Schoutsen, who works as a senior software engineer for AppFolio in San Diego, has attracted 20 active contributors to the project. Home Assistant is now fairly mature, with updates every two weeks and support for more than 240 different smart devices and services. The open source (MIT license) software runs on anything that can run Python 3 — from desktop PCs to a Raspberry Pi, and counts thousands of users around the world.

2. Linus Torvalds Talks IoT, Smart Devices, Security Concerns, and More

Linus Torvalds, the creator and lead overseer of the Linux kernel, and “the reason we are all here,” in the words of his interviewer, Intel Chief Linux and Open Source Technologist Dirk Hohndel, was upbeat about the state of Linux in embedded and Internet of Things applications. Torvalds’ very presence signaled that embedded Linux, which has often been overshadowed by Linux desktop, server, and cloud technologies, has come of age.

“Maybe you won’t see Linux at the IoT leaf nodes, but anytime you have a hub, you will need it,” Torvalds told Hohndel. “You need smart devices especially if you have 23 [IoT standards]. If you have all these stupid devices that don’t necessarily run Linux, and they all talk with slightly different standards, you will need a lot of smart devices. We will never have one completely open standard, one ring to rule them all, but you will have three of four major protocols, and then all these smart hubs that translate.”

3. Taming the Chaos of Modern Caches

It turns out that software — and computer education curricula — have not always kept up with new developments in hardware, ARM Ltd. kernel developer Mark Rutland said in his presentation “Stale Data, or How We (Mis-)manage Modern Caches.”

“Cache behavior is surprisingly complex, and caches behave in subtly different ways across SoCs,” Rutland told the ELC audience. “It’s very easy to misunderstand the rules of how caches work and be lulled into a false sense of security.”

4. IoTivity 2.0: What’s in Store?

Speaking shortly after the release of Open Connectivity Foundation (OCF)’s IoTivity 1.1, Vijay Kesavan, a Senior Member of Technical Staff in the Communication and Devices Group at Intel Corp, told the ELC audience about plans to support new platforms and IoT ecosystems in v2.0. He also explained how the OCF is exploring usage profiles beyond home automation in domains like automotive and industrial.

5. A Linux Kernel Wizard’s Adventures in Embedded Hardware

Sometimes the best tutorials come not from experts, but from proficient newcomers who are up to date on the latest entry-level technologies and can remember what it’s like to be a newbie. It also helps if, like Grant Likely, the teacher is a major figure in embedded Linux who understands how hardware is ignited by software.

At the Embedded Linux Conference, Likely — who is a Linux kernel engineer and maintainer of the Linux Device Tree subsystem used by many embedded systems — described his embedded hardware journey in a presentation called “Hardware Design for Linux Engineers” — or as he put it, “explaining stuff I only learned six months ago.”

Linux.com readers can register now with the discount code, LINUXRD5, for 5% off the registration price. Save over $150 by registering before January 15, 2017.

Read More:

10 Great Moments from Linux Foundation 2016 Events

Top 7 Videos from ApacheCon and Apache Big Data 2016

The Linux Foundation is seeking developers and systems architects interested in sharing their knowledge, expertise and ideas at the 2017 Embedded Linux Conference and Open Internet of Things (IoT) Summit North America.

The co-located conferences, to be held Feb. 21-23 in Portland, Oregon, bring together embedded and application developers, product vendors, kernel and systems developers as well systems architects and firmware developers to learn, share and advance the technical work required for embedded Linux and IoT.

Now in its 12th year, Embedded Linux Conference is the premier vendor-neutral technical conference for companies and developers using Linux in embedded products. While OpenIoT Summit is the first and only IoT event focused on the development of IoT solutions.

The deadline to submit proposals is Dec.10, 2016.  Submit a proposal today!

Submit an ELC Proposal  

Submit an OpenIoT Summit Proposal

You can see potential speaker topics for ELC, below, and watch speakers in 155+ recorded sessions from ELC 2016

  • Audio, Video, Streaming Media and Graphics

  • Security

  • System Size, Boot Speed

  • Real-Time Linux – Performance, Tuning and Mainlining

  • SDKs for Embedded Products

  • Flash Memory Devices and Filesystems

  • Build Systems, Embedded Distributions and Development Tools

  • Linux in Devices such as Mobile Phones, DVRs, TV, Cameras, etc.

  • Practical Experiences and War Stories

  • And more.

View the full list of suggested Embedded Linux Conference topics here >>

Potential speaker topics for OpenIot Summit include:

  • Frameworks and OSes

  • Low-Power Communication

  • Connected Car

  • Drones

  • Smart Home

  • Device and Firmware Management

  • Provisioning (Device, Service, User)

  • Cloud Integration / Connectivity

  • App Development and UX

  • Security

  • Scaling

  • And More

View the full list of suggested OpenIoT Summit topics here >>