Does it really matter if you can't use those independent binaries with any other init system? If you want to use systemd, you pretty much have to take the whole ecosystem.
Btw. The Linux kernel does more than one thing.
But monolithic kernels are much better for small student projects that won't be relevant anymore, when Gnu Hurd comes out
Monolithic kernels are also generally more performant, compared to micro-kernels, it turns out. A bit counter-intuitive at first but, makes sense when you think about it.
Micro-kernels in general-purpose OSes suffer from a death of a thousand cuts due to context switching. Something that would be a single callback to the kernel in a monolith turns into a mess of calls bouncing between kernel and user space. When using something like an RTOS where hardware is not likely intended for general-purpose computing, this is not an issue but, when you start adding all of the complexity of user-installable applications that need storage, graphics, inputs, etc, the number of calls gets huge.
You just compared a browser extension and an init system that takes proc id 1. The unix philosophy is about what runs as processes at the system level.
The unix philosophy is about what runs as processes at the system level.
I don't know what you mean by "system level" (cat is userspace) but I don't believe there is any clarification about what kind of applications should apply to the unix philosophy or not. It doesn't say that applications "should do one thing and do it well only if it is a system process or terminal based program built for purely shell environments."
Also, if the argument was exclusively about OS processes, dbus should be in the firing line of everyone in the anti-systemd camp too. That never gets the same level of hate.
The unix philosophy is old and, while nice to have, is insufficient to fully address the needs of the modern world. It's not as simple today as it was in the 1960s and 70s and we need to embrace change to progress.
I’m honestly not sure what you’re talking about here. The unix philosophy is something informal that applies to compiled utilities that run usually in a bin/ directory. The philosophy isn’t attempting to apply to all software that exists and certainly doesn’t intend to apply to browsers or browser extensions.
You just compared a browser extension and an init system that takes proc id 1. The unix philosophy is about what runs as processes at the system level.