Hacker News new | past | comments | ask | show | jobs | submit login

> Linux being as monolithic as ever

Except for loadable kernel modules which is a pretty big move towards microkernel-like features from the original versions.




AFAIK, loadable kernel modules has nothing to do with microkernels. Those are still running in the kernel space.

Maybe you meant something like FUSE.


They allow loading code (drivers mostly) at runtime, something that's impossible with a "traditional" monolithic kernel.


Which has been possible in non UNIX systems since the mid 90's, this has nothing to do with micro-kernel architecture.


Hurd has been in development since 1990, Tanenbaum–Torvalds was 92. The shipping and loading of drivers separately from the kernel was a micro-kernel advantage and Linux being able to do the same is a move towards micro-kernel features in Linux (fuse and cuse being others).


In MINIX, afaik, you ship some drivers with the kernel in the same file. But those drivers runs in user space and separate from each other. The issue is not related with shipping.

IMO, loading the drivers at runtime is the easiest part of microkernels. It is really very very very tiny step. There are a lot more things to do, like doing IPC between operating system components, managing memory, scheduling, protection of the system & driver process running in the user space.

Finally, loadable kernel modules does not give you any security and reliability. Those modules still share the same address space with the kernel and each other.


A very very very tiny step.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: