Poettering: The Biggest Myths
Posted Jan 28, 2013 21:27 UTC (Mon) by khim
In reply to: Poettering: The Biggest Myths
Parent article: Poettering: The Biggest Myths
You can't possibly expect that the only way to challenge monolithic design is to run Hurd or some other microkernel.
The only way to show that monolithic design is somehow bad is to show that alternative exist which is non-monolithic and better.
There are exactly two classes of systems:
1. Monolithic ones (as per sorpigal's insane definition), and
2. Failed ones.
Most popular OSes are all almost completely monolithic per this definition: Android, Busybox, BSDs. Only GNU/Linux is weird creature which includes robust and reliable monolithic part (GNU components: GCC, GLibC, binutils, coreutils, etc - they are not really supposed to be used with anything else) and loose and flaky things like sysvinit with it's plethora of weird scripts.
Frankly: init is supposed to be small, simple and reliable part (it's tiny in comparison, to e.g. GLibC) but in reality it's least reliable part - and if you'll think this is exactly because it's not "monolithic". Systemd fixes that and it's a good thing.
People have preached "write programs that do one thing and do it well" that they forgot the whole thing which says instead Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface.
How exactly can you convince programs to work together if you don't write them together? Unix was always created as a large cohesive set of tools which work together, not as a bazillion pieces to be assembled by the end user. Systemd does the same thing - yet somehow people try to say that's un-UNIX-like. How can the basic principle used by Unix for the last fourty years be un-UNIX-like?
to post comments)