diff --git a/README.md b/README.md
index d3cf76af5..b6c8d163a 100644
--- a/README.md
+++ b/README.md
@@ -2,78 +2,54 @@
[](./LICENSE)
-The Edge Microvisor Toolkit is a streamlined container host that
-showcases the Intel silicon optimizations. Built on Azure Linux, it features a
-Linux Kernel maintained by Intel, incorporating all the latest kernel and user
-patches.
+Edge Microvisor Toolkit is a reference Linux operating system that demonstrates
+the full capabilities of Intel processors for Edge AI workloads through
+Linux patches from Intel that are yet to be upstreamed. Built on Azure Linux,
+it incorporates all the latest kernel and user patches from a Linux
+Kernel maintained by Intel.
-It is published in several versions, both immutable and mutable. Use them to
-quickly deploy and run your solutions for multiple scenarios, like benchmarking
-and validation of edge AI computing workloads, including real-time processing,
-or build your own system, using the existing infrastructure.
+Edge Microvisor Toolkit is published in several versions, both immutable and mutable, for quickly deploying, validating, and benchmarking edge AI workloads, including those requiring real-time processing. You can also use the toolkit's flexible build infrastructure to create custom images from a large set of pre-provisioned packages.
-The currently published versions are:
+Here are the published versions:
* [Edge Microvisor Toolkit Standalone Node (immutable)](https://github.com/open-edge-platform/edge-microvisor-toolkit-standalone-node)
-* [Edge Microvisor Toolkit Developer Node with or without real time extensions (mutable)](./docs/developer-guide/emt-architecture-overview.md#developer-node-mutable-iso-image)
-* [Edge Microvisor Toolkit (immutable) - deployable in Edge Manageability Framework](./docs/developer-guide/emt-deployment-edge-orchestrator.md)
-* [Edge Microvisor Toolkit with real time extensions (immutable) - deployable in Edge Manageability Framework](./docs/developer-guide/emt-deployment-edge-orchestrator.md)
+* [Edge Microvisor Toolkit Developer Node with or without real-time extensions (mutable)](./docs/developer-guide/emt-architecture-overview.md#developer-node-mutable-iso-image)
+* [Edge Microvisor Toolkit (mutuable or immutable) for use with Edge Manageability Framework](./docs/developer-guide/emt-deployment-edge-orchestrator.md)
* [Edge Microvisor Bootkit](./docs/developer-guide/emt-bootkit.md)
-The Edge Microvisor Toolkit has undergone extensive validation across all Intel
-platforms such as Xeon®, Intel® Core Ultra™, Intel Core™ and Intel® Atom®. It
-provides robust support for integrated NPU, as well as a
+Edge Microvisor Toolkit has undergone extensive validation across the Intel Xeon®, Intel® Core Ultra™, Intel Core™, and Intel® Atom® processor families. It provides robust support for integrated NPU as well as a
[selection of discrete GPU cards](./docs/developer-guide/emt-system-requirements.md#hardware-requirements).
-
-You can either build the Edge Microvisor Toolkit by following step-by-step
-instructions or download it directly. Both the Build system and the Edge Microvisor
-Toolkit are available as Open-Source.
+You can either build Edge Microvisor Toolkit by following step-by-step
+instructions or download it directly. Both the build system and Edge Microvisor
+Toolkit are available as open source.
## Get Started
-All articles required to quickly learn how to work with Edge Microvisor Toolkit can be found [here](./docs/developer-guide/emt-get-started.md).
-
-**Demos**
-* [Standalone Edge Microvisor Toolkit (EMT-S) integration with Edge Microvisor Bootkit](https://www.youtube.com/watch?v=rmgmWYi6OpE):
- This demo includes the USB Device Preparation, Provisioning Process, System Readiness, and Final Boot with the cluster starting successfully.
-* [Edge Microvisor Toolkit Standalone Node 3.0](https://www.youtube.com/watch?v=j_4EX_wggSI):
- This demo provides a brief walkthrough of Edge Microvisor Toolkit Standalone Node for the 3.0 release, covering various use cases.
-
-**Demos**
-* [Standalone Edge Microvisor Toolkit (EMT-S) integration with EMT-Micro OS](https://www.youtube.com/watch?v=rmgmWYi6OpE):
- This demo includes: USB Device Preparation, Provisioning Process, System Readiness, and Final Boot with the cluster starting successfully.
-
-## Getting Help
+To find out how to deploy and work with Edge Microvisor Toolkit, see [Get Started](./docs/developer-guide/emt-get-started.md), check out the video demonstrations on [YouTube](https://www.youtube.com/playlist?list=PLg-UKERBljNxIMUUPWHpA8ZJ_YUU5tPP9), or [view the documentation website](https://docs.openedgeplatform.intel.com/2025.1/edge-microvisor-toolkit/index.html).
-If you encounter bugs, have feature requests, or need assistance,
-[file a GitHub Issue](https://github.com/open-edge-platform/edge-microvisor-toolkit/issues).
+## Get Help or Contribute
-Before submitting a new report, check the existing issues to see if a similar one has not
-been filed already. If no matching issue is found, feel free to file the issue as described
-in the [contribution guide](./docs/developer-guide/emt-contribution.md).
+Vendors, developers, and technology partners can take part in the GitHub
+community for Edge Microvisor Toolkit in various ways: contributing code, proposing
+a design, downloading and trying out a release, opening an issue,
+benchmarking application performance, and participating in [Discussions](https://github.com/open-edge-platform/edge-microvisor-toolkit/discussions). To get help with Edge Microvisor Toolkit, contribute to its
+development, or learn more, see the following resources:
-For security-related concerns, please refer to [security considerations](./docs/developer-guide/emt-security-considerations.md).
-
-[Azure Linux Documentation](toolkit/docs/), may also be useful, if you encounter
-problems when using Edge Microvisor Toolkit. Its copy is part of the Edge
-Microvisor Toolkit repository, for easier access.
-
-## Contributing
-
-As an open-source project, Edge Microvisor Toolkit always looks for community-driven
-improvements. If you are interested in making the product even better, see how you can
-help in the [contribution guide](./docs/developer-guide/emt-contribution.md).
+- [Open an issue](https://github.com/open-edge-platform/edge-microvisor-toolkit/issues)
+- [Submit a pull request](https://github.com/open-edge-platform/edge-microvisor-toolkit/pulls)
+- [Read the Contribution Guide](https://github.com/open-edge-platform/edge-microvisor-toolkit/blob/3.0-dev/docs/developer-guide/emt-contribution.md)
+- [View the Azure Linux documentation](toolkit/docs/), a copy of which is included in the Edge Microvisor Toolkit repository for ease of access.
+- [Report a security vulnerability](https://github.com/open-edge-platform/edge-microvisor-toolkit/blob/3.0-dev/SECURITY.md)
+- [Read and respond to blog posts](https://medium.com/open-edge-platform/subpage/5f0ac5579c60)
+- [Download the latest weekly release](https://github.com/open-edge-platform/edge-microvisor-toolkit/discussions/categories/announcements?discussions_q=is%3Aopen+category%3AAnnouncements)
+- [Participate in discussions](https://github.com/open-edge-platform/edge-microvisor-toolkit/discussions)
## License Information
-Edge Microvisor Toolkit is based on [Azure Linux](https://github.com/microsoft/azurelinux),
-sharing its permissive open-source license:
-[MIT](https://github.com/microsoft/azurelinux/blob/3.0/LICENSE).
-
-For more details, see the [LICENSE](./LICENSE) document.
+Based on [Azure Linux](https://github.com/microsoft/azurelinux), Edge Microvisor Toolkit shares its permissive open-source license: [MIT](https://github.com/microsoft/azurelinux/blob/3.0-dev/LICENSE). For more information, see the [LICENSE](./LICENSE) document.
### Attribution
We acknowledge Microsoft's contributions to the open-source community and thank
-them for providing the secure and efficient Linux distribution.
+them for providing a secure and efficient Linux distribution.
diff --git a/docs/developer-guide/emt-architecture-overview.md b/docs/developer-guide/emt-architecture-overview.md
index 5b537a48f..e99fb5b7d 100644
--- a/docs/developer-guide/emt-architecture-overview.md
+++ b/docs/developer-guide/emt-architecture-overview.md
@@ -1,40 +1,37 @@
# Architecture Overview
-Edge Microvisor Toolkit is an OS build pipeline based on
-Azure Linux (as an RPM-based OS), designed to produce Linux OS images optimized for Intel®
-platforms. This article provides an overview of the build infrastructure, as well as
+Edge Microvisor Toolkit is a reference Linux operating system that demonstrates the full capabilities of Intel processors for Edge AI workloads through Linux patches from Intel that are yet to be upstreamed. With an OS build pipeline based on
+Azure Linux, which uses the RPM Package Manager system, Edge Microvisor Toolkit is designed to produce Linux images optimized for Intel®
+platforms. This article provides an overview of the build infrastructure as well as
architectural details of the OS itself.
## Edge Microvisor Toolkit
Edge Microvisor Toolkit is produced and maintained in several editions, in both immutable and
-mutable images. It enables users to quickly deploy and run their workloads on Intel®
-platforms, offering quick solutions to multiple scenarios. Currently, it is deployed as:
+mutable images. It enables you to quickly deploy and validate workloads on Intel®
+platforms in order to demonstrate the full capabilities of Intel silicon for various scenarios. There are several options for deploying the toolkit:
- ISO installer with a mutable image using GRUB as the second-stage bootloader.
-- ISO installer with an immutable image, systemd-boot as the second-stage bootloader with Kubernetes.
-- RAW and VHD/X - immutable image, systemd-boot as the second-stage bootloader.
-- RAW and VHD/X - immutable image, systemd-boot as the second-stage bootloader, with
- real-time support.
+- ISO installer with an immutable image using systemd-boot as the second-stage bootloader with Kubernetes.
+- RAW and VHD/X: immutable image using systemd-boot as the second-stage bootloader.
+- RAW and VHD/X: immutable image using systemd-boot as the second-stage bootloader, with the Preempt_RT kernel patches to support real-time computing.
-The two immutable image microvisor versions integrate the Intel® kernel and
-enable the software and features offered by Intel® Open Edge Platform. Check out the
-overview of key software components:
+The two immutable image versions integrate the Intel® kernel and
+enable the software and features offered by [Edge Manageability Framework](https://github.com/open-edge-platform/edge-manageability-framework). Here's an overview of key software components:

## Edge Microvisor Toolkit Image Versions
-The toolkit comes pre-configured to produce different images, the table below
-outlines the key differences between those.
+The toolkit comes pre-configured to produce different images; the following table outlines the key differences between them.
| Feature | Edge Microvisor Toolkit Developer Node | Edge Microvisor Toolkit Standalone Node & Orchestrated |
| -----------------| -------------------- | ------------------------------------------------- |
-| Capabilities |
- Easy to install, bootable ISO image with precompiled packages for developer evaluation.
- Includes installable rpms with TDNF for extending baseline functionality.
- Complete with toolkit to build image with an opt-in data integrity and security features.
| - Designed for Open Edge Platforms and can be used to onboard and provision edge nodes at scale.
- Can be used independently on bare-metal and as guest OS.
- Fast atomic updates & rollback support with small image footprint and short boot time.|
+| Capabilities |
- Easy to install, bootable ISO image with precompiled packages for developer evaluation.
- Includes installable rpms with TDNF for extending baseline functionality.
- Complete with a toolkit to build an image with opt-in data integrity and security features.
| - Designed for [Open Edge Platform](https://github.com/open-edge-platform) and can be used to onboard and provision edge nodes at scale.
- Can be used independently on bare metal or as a guest OS.
- Fast atomic updates and rollback support with a small image footprint and short boot time.|
| Image Type | Mutable ISO | Immutable RAW + VHD |
| Update Mechanism | RPM package updates with TDNF | Image based A/B updates + Rollback |
| Linux Kernel | Intel® Kernel 6.12 | Intel® Kernel 6.12 |
-| Real time | Available for opt-in | Image variants with standard and RT Kernel provided |
+| Real time | Available for opt-in | Image variants with standard and RT kernel provided |
| Desktop Virtualization | Available | Dedicated non-RT image variant provided |
| Add-on packages | Available for opt-in: Docker + K3s | Downloaded during installation: K3s and extensions |
| OS Bootloader | GRUB | systemd-boot |
@@ -45,17 +42,17 @@ outlines the key differences between those.
### Developer Node mutable ISO image
-Mutable Developer node in an ISO format allows you to add packages and
+The mutable developer node in an ISO format allows you to add packages and
[customize the system after deployment](./emt-tutorials.md).
During setup you can select one of four versions:
- Standard kernel
-- Standard kernel - Docker and K3S provisioned during installation
+- Standard kernel with Docker and K3s provisioned during installation
- [Kernel with real-time extensions](#preempt-rt-kernel)
-- [Kernel with real-time extensions](#preempt-rt-kernel) - Docker and K3S provisioned during installation
+- [Kernel with real-time extensions](#preempt-rt-kernel) and Docker and K3s provisioned during installation
-This image is a customizable developer version that includes only essential pre-installed
-packages, providing a basic ready-to-use environment:
+As a customizable developer version that includes only essential pre-installed
+packages, it provides a basic ready-to-use environment:
| Item | Details |
| ------------------| ----------------------------------------------- |
@@ -68,35 +65,31 @@ packages, providing a basic ready-to-use environment:
| Filesystem | e2fsprogs, mount |
| Included in kernel | iGPU, dGPU (Intel® Arc™), SR-IOV, WiFi, Ethernet, Bluetooth, GPIO, UART, I2C, CAN, USB, PCIe, PWM, SATA, NVMe, MMC/SD, TPM, Manageability Engine, Power Management, Watchdog, RAS |
-You can install additional RPM packages, using DNF to tailor the OS to your specific needs.
-The supported package repository offers additional `rpm` for tailoring the image
-to specific needs of container runtime, virtualization, orchestration software,
-monitoring tools, standard cloud-edge (CNCF) software, and more.
+You can install additional RPM packages, using DNF to tailor the operating system to your needs.
+The supported package repository enables you to tailor the image with a container runtime, orchestration software,
+monitoring tools, cloud-native software, and other edge software.
-Use [kernel with real-time extensions](#preempt-rt-kernel) for enhanced real-time performance
-compared to the standard kernel, if quick responses to critical events are crucial for
-your use case.
+If quick responses to critical events are crucial for
+your use case, you can use the [kernel with real-time extensions](#preempt-rt-kernel).
### Standalone Node immutable RAW images
-Intel® ready-made solution for Edge AI applications. Immutable Standalone Node uses Secure
+The Standalone Node is an immutable, ready-made solution for deploying and validating Edge AI applications. It uses Secure
Boot technology to protect against injecting malicious software, both at rest and during
-runtime. This image cannot be modified after deployment, providing the best security for
-your Edge Node.
+runtime. This image cannot be modified after deployment.
-Download the Edge Microvisor Toolkit Standalone Node installer to your device, run it to
-create a bootable USB stick, and use that USB stick to install the EMT Standalone OS.
+You can download the Edge Microvisor Toolkit Standalone Node installer to your device, run it to
+create a bootable USB stick, and use the USB stick to install the Standalone Node.
-#### Standard kernel with integrated Docker and K3S
+#### Standard kernel with integrated Docker and K3s
-This image has integrated Docker and K3S for deploying and managing applications. The image
-uses the standard linux kernel.
+This image has integrated Docker and K3s for deploying and managing applications.
-#### Kernel with real-time extensions, and integrated Docker and K3S
+#### Kernel with real-time extensions and integrated Docker and K3s
-This image has integrated Docker and K3S for deploying and managing applications. The image
-uses [kernel with real-time extensions](#preempt-rt-kernel), offering enhanced real-time
-performance compared to the standard kernel. Use this image if quick responses to critical
+This image has integrated Docker and K3s for deploying and managing applications. The image
+uses [kernel with real-time extensions](#preempt-rt-kernel) to enhance real-time
+performance. Use this image if quick responses to critical
events are crucial for your use case.
#### Desktop Virtualization - standard Kernel without real-time extensions
@@ -188,6 +181,9 @@ The kernel command line for the RT kernel can be customized specifically for cus
workloads. Currently, `idle` is the only configured command-line argument that affects
real-time performance.
+To configure kernel command line arguments, add them in the `"ExtraCommandLine"` parameter
+inside the imageconfig file, as shown in [edge-image](https://github.com/open-edge-platform/edge-microvisor-toolkit/blob/e22a8f4e72d0edc652f1aacd514d0b5bf5de8b80/toolkit/imageconfigs/edge-image.json#L107).
+
- **idle=poll**
Forces the CPU to actively poll for work when idle, rather than entering low-power idle
states. In RT systems, this can reduce latency by ensuring the CPU is always ready to
@@ -202,7 +198,26 @@ handle high-priority tasks immediately, at the cost of higher power consumption.
- **isolcpus=
**
Isolates specific CPU cores from the general scheduler, preventing non-RT tasks from
being scheduled on those cores. This ensures that designated cores are available solely
-for RT tasks.
+for RT tasks. This way, for example, the workloads can be shifted between efficient
+and performance cores. The parameter takes lists as values:
+
+ - isolcpus=\,...,\
+
+ ```bash
+ isolcpus=1,2,3
+ ```
+
+ - isolcpus=\-\
+
+ ```bash
+ isolcpus=1-3
+ ```
+
+ - isolcpus=\,...,\-\
+
+ ```bash
+ isolcpus=1,4-5
+ ```
- **nohz_full=**
Enables full tickless (nohz) mode on specified cores, reducing periodic timer interrupts
@@ -507,8 +522,5 @@ overall update flow and state transitions.
The Edge Microvisor Toolkit may also be updated as a standalone solution, through a manual
update procedure, without the automation offered by Open Edge Platform. You can download the
new version of the microvisor and run the update by invoking the `os-update-script` and
-providing the path to the downloaded image.
-
-> **Note:**
- Future versions of Edge Microvisor Toolkit will implement automatic image validation,
+providing the path to the downloaded image. Plans for future versions of Edge Microvisor Toolkit may include implementing automatic image validation,
update checks, and releases.
diff --git a/docs/developer-guide/emt-get-started.md b/docs/developer-guide/emt-get-started.md
index d32e845af..3d8b6cedf 100644
--- a/docs/developer-guide/emt-get-started.md
+++ b/docs/developer-guide/emt-get-started.md
@@ -1,22 +1,15 @@
# Get Started
-Edge Microvisor Toolkit is a lightweight, container-first Linux distribution,
-optimized for Intel® architecture. It provides a secure and high-performing
-environment for deploying edge workloads across multiple deployment models.
+Edge Microvisor Toolkit is a reference Linux operating system that demonstrates the full capabilities of Intel platforms for Edge AI workloads through Linux patches from Intel that are yet to be upstreamed. The Linux patches optimize performance and other capabilities for Intel silicon -- a result that streamlines integration for operating system vendors and other technology partners.
[Hardware and Software Requirements](./emt-system-requirements.md)
## Usage Scenarios
-This section outlines the key usage models intended for the initial release of
-Edge Microvisor Toolkit.
+To validate workloads on Intel silicon, you can deploy Edge Microvisor Toolkit as a [standalone edge node](./get-started/emt-build-and-deploy.md) or with Edge Manageability Framework -- a complete integrated system for edge devices with full lifecycle
+management, including remote deployment and management of applications orchestrated by Kubernetes.
-It can be used for [standalone edge node deployments](./get-started/emt-build-and-deploy.md),
-or with Edge Manageability Framework - a complete integrated system providing full lifecycle
-management for your edge devices, including remote deployment and management of Kubernetes
-applications.
-
-[Choose pre-configured Edge Microvisor Toolkit Image](./emt-architecture-overview.md#edge-microvisor-toolkit-image-versions)
+[Choose a pre-configured Edge Microvisor Toolkit Image](./emt-architecture-overview.md#edge-microvisor-toolkit-image-versions)
[Build Your Own Edge Microvisor Toolkit](./get-started/emt-building-howto.md)
diff --git a/docs/developer-guide/emt-tutorials.md b/docs/developer-guide/emt-tutorials.md
index 0086fe7de..728cc508b 100644
--- a/docs/developer-guide/emt-tutorials.md
+++ b/docs/developer-guide/emt-tutorials.md
@@ -8,7 +8,7 @@ of a mutable developer node:
\ No newline at end of file
diff --git a/docs/developer-guide/get-started/deployment/emt-bare-metal.md b/docs/developer-guide/get-started/deployment/emt-bare-metal.md
index 04cb353fb..8fec7fb4d 100644
--- a/docs/developer-guide/get-started/deployment/emt-bare-metal.md
+++ b/docs/developer-guide/get-started/deployment/emt-bare-metal.md
@@ -73,8 +73,8 @@ the instructions below:
9. Confirm warnings about data being erased.
10. Wait for completion and safely eject the USB.
-Next, set up the target machine to [boot from the USB drive](#booting-from-usb) to
-[install Edge Microvisor Toolkit Developer Node](#installing-edge-microvisor-toolkit-developer-node).
+Next, set up the target machine to [boot from the USB drive](#boot-from-usb) to
+[install Edge Microvisor Toolkit Developer Node](#install-edge-microvisor-toolkit-developer-node).
### Flash RAW
diff --git a/docs/developer-guide/get-started/emt-build-and-deploy.md b/docs/developer-guide/get-started/emt-build-and-deploy.md
index 524eb641f..9b9becfcf 100644
--- a/docs/developer-guide/get-started/emt-build-and-deploy.md
+++ b/docs/developer-guide/get-started/emt-build-and-deploy.md
@@ -82,7 +82,7 @@ skip to [Create a bootable USB installer](#2-create-a-bootable-usb-installer).
7. Build the toolkit image:
- All available image configurations are stored in JSON files, located in the `imageconfigs` folder.
+ All available image configurations are stored in JSON files, located in the `imageconfigs` folder. If you want to configure any additional kernel command line arguments, follow the instructions in [Architecture Overview](../emt-architecture-overview.md#kernel-command-line).
For example, to build a RAW image without real-time extensions, use `edge-image.json` and run
the following command:
diff --git a/docs/developer-guide/get-started/emt-building-howto.md b/docs/developer-guide/get-started/emt-building-howto.md
index 4fbfb2200..1e48a2341 100644
--- a/docs/developer-guide/get-started/emt-building-howto.md
+++ b/docs/developer-guide/get-started/emt-building-howto.md
@@ -7,15 +7,15 @@ The toolkit has an `imageconfig` construct in the JSON format that defines the c
of the resulting image, such as:
- Type and size of partitioning table.
-- Partitions, their types (such as EFI, rootfs, etc.), settings, file system, and size.
-- Reference to `packagelists` which defines what packages (i.e. `rpms`) should be included in
+- [Partitions](../emt-architecture-overview.md#packaging), their types (such as EFI, rootfs, etc.), settings, file system, and size.
+- Reference to [packagelists](https://github.com/open-edge-platform/edge-microvisor-toolkit/blob/3.0/toolkit/docs/formats/imageconfig.md#packagelists) which defines what packages (i.e. `rpms`) should be included in
the image.
- Additional configuration files that should be embedded in the image (e.g. network-, systemd
configurations).
- Any required post-installation scripts that should be executed once the image has been
generated.
-- Kernel and command line options.
-- Final configuration properties that should be applied (e.g. enable full disc encryption,
+- [Kernel and command line options](../../developer-guide/emt-architecture-overview.md#kernel-command-line).
+- Final [configuration properties](https://github.com/open-edge-platform/edge-microvisor-toolkit/blob/3.0/toolkit/docs/formats/imageconfig.md) that should be applied (e.g. enable full disc encryption,
immutable image, second stage bootloader provider, purge documentation etc.).
## Build the Toolchain
@@ -73,7 +73,7 @@ microvisor/
```
Different image types can be built by using different JSON config files and parameters.
-You can find more information about specific parameters [here.](https://github.com/open-edge-platform/edge-microvisor-toolkit/blob/3.0/toolkit/docs/building/building.md#local-build-variables)
+You can find more information about specific parameters in the [build variables](https://github.com/open-edge-platform/edge-microvisor-toolkit/blob/3.0/toolkit/docs/building/building.md#local-build-variables) section.
To build an ISO image, run the following command: