Another daemon for managing control groups
Another daemon for managing control groups
Posted Dec 5, 2013 11:24 UTC (Thu) by anselm (subscriber, #2796)In reply to: Another daemon for managing control groups by tdalman
Parent article: Another daemon for managing control groups
I also agree that lumping many (independent) functionalities in a single component is against my understanding of high quality software. I fail to understand how an init process is connected to udev or cgroups.
Many of the so-called »independent« functionalities are only »independent« because they have been developed at different times by different people, not because of deliberate design. For example, in the traditional setup there are four or five different ways of starting background service processes, all configured differently, most not really working properly, and none aware of each other – mostly through a series of accidents of history. With respect, this is not how one constructs »high quality software«. I wonder how people can claim, with a straight face, that doing things this way is a Good Idea, and that the method of choice for improving the situation is by adding more complexity through yet another disjointed service.
The big advantage of systemd is that it unifies a lot of previously disjointed but similar functionality under a single interface. This means, among other things, that the configuration of the init process (together with other purportedly »independent« bits like inetd, cron, …) is that much easier to understand, to manage, to learn, and to teach. This will be an advantage in the long run.
It is also worth reiterating that Unix didn't start out with the SysV init system. When that was first proposed in the 1980s, the objections against it were pretty similar to the ones fielded against systemd these days – it was accused, by the same sort of people, of being overengineered, needlessly complex, and generally not needed in the first place because the existing approaches were considered perfectly adequate. It's funny how, nearly 30 years later, SysV init seems to have suddenly become the epitome of simplicity and sound Unix-style engineering, and how we must hang on to it at all costs. Incidentally, pretty much none of the other popular Unix implementations out there still use SysV init, and that should also tell us something.
