top of page
  • Linkedin

Orchestration and Services

Public·1 member

The use of root in Infrabase


Infrabase https://github.com/EDGEMTech/infrabase is a lightweight build and deployment environment tailored for embedded systems development, it uses the Bitbake task orchestrator and some classes from the core layer of OpenEmbedded.


It's possible to try out Infrabase - to get started follow the guide to setup the build dependencies :

https://edgemtech.github.io/infrabase/user_guide.html#pre-requisites


Once the setup is complete, you can get a running Linux system like so:


	git clone https://github.com/EDGEMTech/infrabase
	cd infrabase
	. env.sh
	build.sh -a bsp-linux
	build.sh -x qemu	# Build qemu

This builds everything needed to produce a system with a Linux kernel and the user space system utilities provided by Buildroot. It also builds a custom version of Qemu.


19 Views

Configuring a DHCP server

Configuring a DHCP server


In the previous article the remote root filesystem was mounted by the kernel witch itself was loaded by U-boot over HTTP. Both the kernel and root filesystem are served from the development host.


However, there is still a big issue to solve: this setup works only on my home network which has the following netid: 172.22.22.0/24. Many places use the 192.168.1.0/24 netid. In the current setup, the Pi obtains an IP address from the DHCP server running on my home router. This means that uboot.scr will have to be modified when my location changes and I have to remove the SD-Card, mount it, modify and re-generate the Uboot script, unmount - not practical at all.


There are several solutions to this problem, the simplest one is to use a second dedicated network adapter and connect the Pi to it. Configure systemd-networkd to assign a static IP…


14 Views

Mounting Rootfs over 9P


The previous article focused on the U-boot setup, fetching the kernel using HTTP with the wget U-boot monitor command. The next step is configuring the kernel to mount the root file system over the network at start.


The mounting of the root file system is performed by Linux before executing the program that is specified by the init argument of the cmdline.


Linux has many features that can be enabled on a case by case basis depending on the requirements of a project. It has support for a vast amount of network protocols and file systems. The usual method of mounting a root file system over the network is achieved by using the NFSv4 protocol - It is the de facto standard when it comes to sharing files over the network on UNIX-like systems.


On Linux based systems, the NFS server is actually a kernel module, it is configured by…


27 Views

Exploring Embedded Virtualization for Versatile Embedded Systems

Embedded virtualization is an innovative approach that significantly enhances the versatility of multi-core microcontroller units (MCUs) by enabling multiple execution environments on a single platform. This technique allows different operating systems and applications to coexist, offering a range of powerful use cases. Here’s a closer look at its potential and benefits.


Key Use Cases for Embedded Virtualization


  1. Critical Systems: Running a real-time operating system (RTOS) alongside a general-purpose OS, like Linux, to manage time-sensitive tasks without sacrificing usability.

  2. Secure Environments: Isolating secure applications with a dedicated OS while allowing non-secure apps to run separately.

  3. Hardware Resource Partitioning: Efficiently dividing CPU cores, memory, and peripherals among different virtual environments.

  4. Heterogeneous Environments: Managing different operating systems (e.g., Linux, Windows) on the same MCU.


11 Views
bottom of page