On Thursday 23. January 2020 12.44.29 Martin Decky wrote:
Sorry for playing Captain Obvious here, but there are other microkernel-based operating systems (both inside and outside the happy L4 family :)) that might be closer to achieving this goal of suitability for general-purpose computing.
A curated list can be found at http://www.microkernel.info/
Well, I am aware of several of them, of course. Maybe my memory is failing me, but I am pretty sure I mentioned the Hurd in a recent message, and previous messages will have mentioned Minix 3 as well. Those two are probably the ones that most Free Software developers would recognise and investigate further. I have previously looked at Genode, HelenOS and various parts of seL4, mostly to see what kind of architecture they employ for certain aspects of the system.
My motivation for using L4Re to begin with was that it works on the MIPS architecture. Indeed, using it on the MIPS Creator CI20 was the entry point for using it on other related devices and for more general investigations. I did look into a number of different operating systems - microkernel and otherwise - as part of my familiarisation with the MIPS architecture, experimentation with bare-metal code, and gaining confidence in deploying low- level software. (Of course, I was already using these devices with Linux, in case anyone feels the need to make me aware of its existence as well.)
The primary considerations for me when adopting software include things like whether...
* I have a chance of running it on hardware I actually have * It can be used for practical things * It is documented beyond academic papers * Obtaining and deploying the software is relatively convenient
Where your interests and mine may diverge is that I am not particularly interested in whatever the current trends are with regard to microkernel design, even though some of these design elements may be useful and worth pursuing. Most of the "next big thing" microkernels that get announced tend to get abandoned in short order (often for the next "next big thing"), so I would rather focus on projects that have actually been around for a while.
Naturally, this might mean having to deal with an imperfect collection of mature software, hence my complaints about certain aspects of L4Re, although perhaps my most significant reservation about working with L4Re is that there doesn't seem to be any kind of community around it. Maybe if other independent developers were using it, there would be an exchange of ideas that would be beneficial to everyone concerned.
If you have any concrete suggestions of systems other than L4Re that provide a decent, if basic, level of support for running user space programs written in mature languages, that work on the MIPS architecture, and that have not already laid down a rigidly prescriptive system architecture that would make experimentation awkward, I would obviously like to hear them.
Paul