Confederation of microkernel projects (Genode, HelenOS, GNU Hurd, MINIX, Redox)
Microkernels are operating systems that outsource the traditional operating system functionality to ordinary user processes while providing them with mechanisms requisite for implementing it. Microkernel-based operating systems come in many different flavours, each having a distinctive set of goals, features and approaches. Some of the most often cited reasons for structuring the system as a microkernel is flexibility, security and fault tolerance. Many microkernels can take on the role of a hypervisor, too. Microkernels and their user environments are most often implemented in the C or C++ programming languages with a little bit of assembly, but other implementation languages (such as Rust) are possible, too. In fact, each component of a microkernel-based system can be implemented in a different programming language.
We are the collective body representing Genode, HelenOS, GNU Hurd, MINIX 3 and Redox microkernel-based operating systems. Our cooperation dates back to 2012 when we first met at the FOSDEM conference in Brussels and organized the first track (a.k.a. a devroom) entirely dedicated to microkernels and related technologies. The Microkernel devroom has since become a de facto institutionalized feature of each FOSDEM. Now we also take part in the Google Summer of Code as a mentoring organization in order to function as an umbrella for our respective member projects.
Microkernel devroom 2017 Projects
ids1024Make Redox Self-hostingIn order to build Redox on Redox, Rustc has to be ported, along with Cargo, and any dependencies (such as LLVM). Additionally, the build process...
Joan LledóPorting LwIP to the GNU/HurdThe Hurd is the kernel of the GNU system. It consists on the GNU Mach microkernel and several user-space servers that offer most of the functions...
Nikita KorobovPorting MINIX3 to Raspberry PiThe MINIX3 has already supported ARM-based platforms such as BeagleBoard. The goal of this project is port the MINIX3 to the RaspberryPi. The task...