On 07.03.2012 00:21, Fernando Lemos wrote: > Hi, > > On Tue, Mar 6, 2012 at 7:46 PM, Josh Triplett <email@example.com> wrote: >> To give one particular example: systemd uses Linux-specific features to >> accurately track all the processes started by a service, which allows >> accurate monitoring and shutdown of processes which could otherwise >> disassociate themselves from their parent processes via the usual >> daemonizing trick. POSIX doesn't provide features that allow this in >> general, but Linux does. (Quite possibly other OSes provide those >> features too, but not in a standardized way.) > > By the way, upstart uses ptrace for this: > > http://netsplit.com/2007/12/07/how-to-and-why-supervise-forking-processes/ > > It's an interesting trick, and probably more portable too. It's an ugly hack, even Scott didn't like that approach very much and definitely one of the weaker points of upstart. Scott was planing on reworking process tracking using a netlink based interface. It's rather easy to confuse upstart's process tracking. You explicitly have to tell upstart if a daemon forks once or twice (expect daemon, expect fork) and if the daemon forks multiple children upstart often doesn't get it right. systemd's usage of cgroups solves all those problem very nicely. It's also one of the reasons, systemd can properly monitor sysv based services, btw. Contrary to upstart, systemd treats sysv init scripts as first class citizens. For systemd, /etc/init.d/<service> files are just another configuration source for its service definitions. This makes it trivial to declare dependencies between native and sysv based services. upstart on the other hand implements sysv compatibility completely different. All it does is run "/etc/init.d/rc 2" on the runlevel 2 event. You can't really declare any interdependencies between upstart and sysv services. This is also the reason why packages need to be converted from the bottom up in a strict order. This is something which will be very hard to do in Debian. systemd's approach of handling sysv based services as first-class citizens makes it easily possible to convert package by package. Michael -- Why is it that all of the instruments seeking intelligent life in the universe are pointed away from Earth?
Description: OpenPGP digital signature