I think the evaluation partly depends on what is meant by "driver". A real, actual hardware driver probably gains very little by moving to userspace, for reasons already mentioned. "Drivers" that are really just implementing data-driven abstractions (e.g. filesystems), or talk over a standardized protocol to hardware outside the address space (e.g. most USB device drivers), arguably belong in user space. Still, there are a lot of practicalities to consider, even assuming that the performance hits would be acceptable (If the root filesystem driver crashes, where do you reload it from? How do you negotiate critical sections for atomic operations? etc.).
Also, the "security" angle is shortsighted. A kernel-mode compromise is necessarily a serious breach, but the reverse is not even remotely true.
Short answer: if you want MINIX 3, you know where to find it.
Also, the "security" angle is shortsighted. A kernel-mode compromise is necessarily a serious breach, but the reverse is not even remotely true.
Short answer: if you want MINIX 3, you know where to find it.
Comment