[Announce] ACRN Open Source Ver3.0 Release Notes

Zou, Terry

Hi all, We are very pleased to announce Version 3.0 release of ACRN. You can see the release blog from https://projectacrn.org/blog/ and detailed Release Notes in website https://projectacrn.github.io/latest/release_notes/release_notes_3.0.html

What’s New in v3.0:

·        Redesigned ACRN Configuration

We heard your feedback: ACRN configuration is difficult, confusing, and had too many parameters that were not easy to understand. Release v3.0 features a new ACRN Configurator UI tool with a more intuitive design and workflow that simplifies getting the setup for the ACRN hypervisor right. You’ll also see changes for configuring individual VMs. We’ve greatly reduced the number of parameters needing your attention, organized them into basic and advanced categories, provided practical defaults, and added error checking so you can be much more confident in your configuration before building ACRN. We’ve also integrated the previously separated scenario and launch options into a merged scenario XML configuration file managed by the new Configurator. Read more in the ACRN Configurator Tool page.

This is our first major step of continued ACRN user experience improvements. If you have feedback on this, or other aspects of ACRN, please share them on the ACRN users mailing list.

We’ve also simplified installation of the Configurator by providing a Debian package that you can download from the ACRN v3.0 tag assets and install. See the Getting Started Guide for more information.

·        Improved Board Inspector Collection and Reporting

You run the ACRN Board Inspector tool to collect information about your target system’s processors, memory, devices, and more. The generated board XML file is used by the ACRN Configurator to determine which ACRN configuration options are possible, as well as possible values for target system resources. The v3.0 Board Inspector has improved scanning and provides more messages about potential issues or limitations of your target system that could impact ACRN configuration options. Read more in Board Inspector Tool.

·        Commercial off-the-shelf Tiger Lake machine support

The Vecow SPC-7100 system is validated and supported by ACRN. This is a commercially available 11th Generation Intel® Core™ Processor (codenamed Tiger Lake) from Vecow. Read more in the Supported Hardware documentation.

·        Refined shutdown & reset sequence

A Windows User VM can now shut down or reset the system gracefully. This supports a user model where a Windows-based VM provides a system management interface. This shutdown capability is achieved by lifecycle managers in each VM that talk to each other via a virtual UART channel.

·        Hypervisor Real Time Clock (RTC)

Each VM now has its own PC/AT-compatible RTC/CMOS device emulated by the hypervisor. With this, we can avoid any sudden jump in a VM’s system clock that may confuse certain applications.

·        ACRN Debianization

We appreciate a big contribution from the ACRN community! Helmut Buchsbaum from TTTech Industrial submitted a “debianization” feature that lets developers build and package ACRN into several Debian packages, install them on the target Ubuntu or Debian OS, and reboot the machine with ACRN running. Read more in debian/README.rst.

Document Updates:

With the introduction of the improved Configurator, we could improve our Getting Started Guide documentation and let you quickly build a simple ACRN hypervisor and User VM configuration from scratch instead of using a contrived pre-defined scenario configuration. That also let us reorganize and change configuration option documentation to use the newly defined developer-friendly names for configuration options.

Check out our improved Getting Started and Configuration documents:

² What Is ACRN

² Getting Started Guide

² Configuration and Development Overview

² Scenario Configuration Options

² Introduction to ACRN Configuration

² Board Inspector Tool

² ACRN Configurator Tool

² Upgrading ACRN Configurations to Recent Releases

² User VM Guide

² Device Model Parameters and Launch Script

Here are some of the high-level design documents that were updated since the v2.7 release:

² ACRN High-Level Design Overview

² AT Keyboard Controller Emulation

² Device Model High-Level Design

² Emulated Devices High-Level Design

² Power Management High-Level Design

² Security High-Level Design

² Virtio Devices High-Level Design

² Host Bridge Emulation

² CPU Virtualization

² Device Passthrough

² Hypercall / HSM Upcall

² Physical Interrupt High-Level Design

² I/O Emulation High-Level Design

² IOC Virtualization High-Level Design

² Virtual Interrupt

² ACRN Shared Memory Based Inter-VM Communication

² System Timer Virtualization

² UART Virtualization

² Virtio-BLK

² Virtio-Console

² Virtio-Input

² Virtio-Net

² vUART Virtualization

² L1 Terminal Fault Mitigation

² Trusty TEE

We’ve also made edits throughout the documentation to improve clarity, formatting, and presentation. We started updating feature enabling tutorials based on the new Configurator, and will continue updating them after the v3.0 release (in the latest documentation).  See the v3.0 full release notes and documentation for more information about this release including fixed and known issues.

Upgrading to v3.0 From Previous Releases

With the introduction of the Configurator UI tool, the need for manually editing XML files is gone. While working on this improved Configurator, we’ve also made many adjustments to available options in the underlying XML files, including merging the previous scenario and launch XML files into a combined scenario XML file. The board XML file generated by the v3.0 Board Inspector tool includes more information about the target system that is needed by the v3.0 Configurator.

We recommend you generate a new board XML for your target system with the v3.0 Board Inspector. You should also use the v3.0 Configurator to generate a new scenario XML file and launch scripts. Scenario XML files and launch scripts created by previous ACRN versions will not work with the v3.0 ACRN hypervisor build process and could produce unexpected errors during the build.

Given the scope of changes for the v3.0 release, we have recommendations for how to upgrade from prior ACRN versions:

1.       Start fresh from our Getting Started Guide. This is the best way to ensure you have a v3.0-ready board XML file from your target system and generate a new scenario XML and launch scripts from the new ACRN Configurator that are consistent and will work for the v3.0 build system.
2.       Use the upgrade tool to attempt upgrading configuration files that worked with a release before v3.0. You’ll need the matched pair of scenario XML and launch XML files from a prior configuration, and use them to create a new merged scenario XML file. See Upgrading ACRN Configurations to Recent Releases for details.
3.       Manually edit your prior scenario XML and launch XML files to make them compatible with v3.0. This is not our recommended approach.


Best & Regards


Join {acrn-dev@lists.projectacrn.org to automatically receive all group messages.