3 ms·
Certainly, having a well-defined interface makes both empirical testing and portability easier. Microkernels get this by default. To be fair though, modern mo
by nanolith 11y ago
Certainly, having a well-defined interface makes both empirical testing and portability easier. Microkernels get this by default. To be fair though, modern monolithic kernels have pretty decent abstraction mechanisms that do make it easy to test drivers. Hypervisors and fast emulators have dramatically changed operating system and device driver development, removing a lot of the pain in this process.
I remember testing device drivers on bare metal because we had no choice. Now, I can fire up a GDB server in KVM and step through code. Monolithic or microkernel, testing and debugging is so much easier now than it was even 15 years ago.