|
|
|
|
|
by cerales
4857 days ago
|
|
Anyone care to give a very cursory run-down on why someone would look at Minix in this day and age instead of one of the BSDs? Particularly since those release notes mention bringing in the NetBSD build system and much of its userspace. Not to say that I think it's bad to have plenty of unixes floating around - just curious. |
|
The main goal is to improve reliability. Bad drivers or bad hardware are the leading cause of lockups these days. If you isolate the drivers, file system etc from one another, you can prevent the whole system from dying. Minix3 goes further than its predecessors by adding a "reincarnation server", which periodically pings other servers and kills/restarts them if they've become unresponsive.
Minix essentially does at a single-system level what cloud architectures try to do at a multi-system level: assume that the parts are unreliable, isolate faults and recover by restarting sub-units.
To me the more interesting possibility is that in a microkernel world you could solve a number of classic OS/system software bunfights. Databases, for example, tend to fight a bit with OSes about the best way to buffer data or flush to disks. In a microkernel system you can arrange matters so that the database provides its own memory and disk management. It's just another process; nothing special.
Here's the report that was written about the design: http://www.minix3.org/docs/jorrit-herder/osr-jul06.pdf