@lispi314 @cwebber I'm confused about this idea (and admittedly read the linked post quickly and haven't yet dug into Fare's argument)
The author seems to stress microkernels as a set of servers, but to me that seems to confuse the idea of microkernels (mach, zircon, se/L4) with microkernel operating systems (hurd, fuschia, minix [which defines both]).
A microkernel is best thought of as a "CPU driver"; a #microkernel ideally shouldn't define kernel space/ring0 to be any larger than the ISA's supervisor mode flag surface area. Its job is to ensure safe and fault tolerant execution of code and little more. Microkernels typically don't even define file systems, which usually also live in userspace.
But it seems like the author more or less ignores this, zooming in on the operating system-level services. But without a kernel, and only modules, every error should cause the the CPU to fail, with risks of serious corruption. What am I missing here?