---
title: "Unikraft: Baremetal & Embedded Virtualization"
tags: baremetal, embedded, ideas, Unikraft, ARM, IoT
---
# Unikraft: Baremetal & Embedded Virtulization
This document is to be collaboratively edited by the Unikraft community, to collect information, ideas, questions.
The greater goal is to define projects and tasks that can be picked up by the the community.
We meet once every two weeks on Wednesday, 5pm CEST, on the [Unikraft Discord server](http://bit.ly/UnikraftDiscord), on the `monkey-business` voice channel.
We start on August 9, 2023; then on August 23, 2023; then on September 5, 2023; and so on.
We keep the meeting summary in the [`meeting-notes` repository](https://github.com/unikraft/meeting-notes/tree/staging/discussions/baremetal).
### :book: Things to Consider
Nowadays there are 64bit Cortex-M CPUs.
That would require someone to work on MPU.
32bit ARM support - this is gradually getting obsolete
This should be dropped.
The less legacy we introduce, the better.
64bit Cortex-M and Cortex-R platforms can be considered: if maintainers and if use cases.
## :dart: Use Cases
### Unikraft with Guest Support Role
People want some guests in support roles, along Linux.
People would use an RTOS for this (QNX - paid, FreeRTOS).
On top of a hypervisor, you can leverage the hypervisor isolation features.
Potentially, there would be use cases with isolated unikernels on top of an embedded device with a hypervisor.
Unikraft would run isolated, manage a device and provide an interface to the main OS.
### Internet of Things (IoT)
We can look into [OP-TEE OS](https://github.com/OP-TEE/optee_os) and [TrustedFirmware-A (TF-A)](https://www.trustedfirmware.org/projects/tf-a/).
Support for boards that deal with IoT.
## :bulb: Project Ideas
### Security Support
Security is important on the embedded world, Linaro supports Secure Boot.
We can demonstrate our own SecureBoot chain with the latest Unikraft.
### Driver Shim + Porting Driver
**People**: [Radu Niculae](https://github.com/RaduNiculae)
Port existing drivers from OP-TEE, TF-A or Zephyr, with compatible licensing.
These would use a driver shim layer as an internal Unikraft core library, to make the porting process seamless.