Originally posted by nasyt
View Post
Btw, all these fairy tales it is easier to develop things in user mode are long outdated. These days it is normal to see devs trying hazardous things in qemu, so plenty of bug reports to Linux kernels mentions qemu these days. This advantage of microkernels does not exists anymore. Yet it easier and faster to do things in kernel mode when it comes to doing something with hardware. To make it more fun, Linux kernel these days provides some (optional) facilities to help in writing some drivers in user mode, mostly for those who does not wants to fiddle with kernel development and does not needs superb speeds and latencies. Not like this got widely used or something, but these parts are present in kernel and could be enabled and used if someone needs it. It seems monolithic kernels devs aren't entirely against of taking some ideas from microkernel world.
And TBH I do think BSDs could have possibly better future than e.g. Minix and somesuch.
About the point of Robustness:
Lets say, there is an interaction between two computers, an Amiga computer (as client) and a GCOS Mainframe (as server). The Amiga TCP/IP stack contains a vast amount of RFC-violations. The GCOS TCP/IP stack has no known exploit, but it is a nitpicker. So the result is, every time the Amiga computer sends a malformed TCP packet, the GCOS Mainframe will simply reset this connection. This doesn't constitutes the robustness of GCOS in my oppinion. (Disclaimer: this example is purely fictional)
Lets say, there is an interaction between two computers, an Amiga computer (as client) and a GCOS Mainframe (as server). The Amiga TCP/IP stack contains a vast amount of RFC-violations. The GCOS TCP/IP stack has no known exploit, but it is a nitpicker. So the result is, every time the Amiga computer sends a malformed TCP packet, the GCOS Mainframe will simply reset this connection. This doesn't constitutes the robustness of GCOS in my oppinion. (Disclaimer: this example is purely fictional)
Well IMHO Robustness in protocol implementations is about being free of bugs and exploits, but also about being tolerant to somehow malfunctioning or not RFC compliant peers.
Thats already simple: Reliability/Dependability - Approximately 15 Kernel bugs vs. 15.000 Kernel bugs. :-)
Comment