
Hi all, I'm Hesham ALMatary a computer science research student at the University of York. I am considering porting L4 microkernel variants to RISC-V [2] (for both my research and Google Summer of Code), and Fiasco.OC is one of these variants, but I want to extend the options here by asking about seL4. Is this project would be: first applicable, and second of interest to you? And if yes, would you offer some help (guidance)? I am sending this message as suggested here [1] that I should contact you if I'm willing to port seL4 to a new platform. [1] http://sel4.systems/GettingStarted/ [2] http://riscv.org/ Thanks, -- Hesham

An architecture port is a bit of a bigger beast than a platform port ;-) I haven’t looked at RISC-V in detail, so don’t know what would be involved. But, generally speaking, a performant ISA port requires a good understanding of both kernel design and implementation as well as architecture. We’re obviously interested in seeing seL4 used as widely as possible, and believe (with support of some solid facts) that seL4 is the leading microkernel that defines the state of the art. It is also much simpler than Fiasco.OC (about 1/3 of the SLOC size). We’ll be happy to provide guidance (on the usual best-effort basis). Gernot ________________________________ The information in this e-mail may be confidential and subject to legal professional privilege and/or copyright. National ICT Australia Limited accepts no liability for any damage caused by this email or its attachments.

Hi Hesham, I would strongly consider seL4 over Fiasco for a few reasons: 1) Fiasco is written in C++ and I found it quit a challenge to read through due to overloaded functions - the control flow jumps between files a lot, and its not always clear which object you have during a static analysis. seL4 on the other hand, is pretty much straight C, and fairly well commented. 2) The code size (as Gernot mentioned) is much smaller in seL4, which makes it easier to comprehend in a short amount of time But I suppose it really depends on what you intend to do with the kernel in the end. If the verification & proofs are important to you, then the choice is easy. If functionality and features are important, Fiasco probably has the advantage. If you want simple code that a student can read and do something useful with in a short time, my vote is for seL4. Regards, Joel On Thu, 12 Mar 2015 13:38:35 +0000, Hesham ALMatary <heshamelmatary@gmail.com> wrote: Hi all,
participants (4)
-
Gernot Heiser
-
Hesham ALMatary
-
Joel Nider
-
Madhu (Macaque Labs)