17.03.2023; Verteidigung
Echtzeit-AGLinux in an Isolated Tile on M³
Developing a new operating system comes with the hurdle that there is very little software available for that operating system. Re-developing existing software from scratch for the new operating system may be possible but certainly involves a lot of effort. An alternative approach is to provide a way to reuse existing software on the new operating system. This work lays the foundation for using software, developed for Linux, on M³.
M³ is a hardware/software co-design that targets security-critical and heterogeneous systems. M³ builds upon a tiled hardware architecture and isolates tiles from each other. This work leverages one of these isolated tiles to run Linux as a guest operating system. Running Linux bare metal on an isolated tile makes it possible to host Linux as a guest operating system without the need for virtualization or changes to the Linux kernel source code. The Linux world is properly isolated from the rest of the system by design.
Furthermore, this work provides the basics for an interface between M³ and Linux and thereby discusses how an activity, M³'s concept of processes, can run on Linux and use functionality of M³. This is demonstrated with a user-space program on Linux that establishes a communication channel with the M³ kernel and uses the M³ file system as an example of an M³ system service.
Finally, I evaluate the performance of system calls and of the M³ file system when used by a Linux user-space program and when used by a program running on a regular tile. The comparison shows that there is no significant performance loss on Linux.
(Bachelorverteidigung)