Upstart developers not having a messianic stance to have everyone in the world use their product is also a plus.
One of the reasons Linux is getting its ass kicked is the abysmal kernel support for stuff that desktop user cares about; A kernel layer and init that just dont fuck up. The only way to keep it managable is keeping it fucking simple and enable a sane level of debugging. Systemd does that. There is no need to spawn shit about UNIX or POSIX compliance. users dont care.
Userland is stil uncharted land. Now Canonical starts blabbering about user session management in Upstart. Well maybe those guys should help fix the kernel layer first. THEY CHOSE NOT TO BECAUSE THEY DONT CARE. Now they want a piece of user land following their session stuff while the systemd guys have been holding back for at least 1 year because no hard systemd deps could be accepted by Canonical. Waiting one year on Canonical, and now they are on the verge to add user land deps on Upstart. How ridiculous!
When everything is compiled you get these binaries:
Which are normally located in the /usr/bin/ directory. So you see, systemd is not like COMMAND.COM
init should be less than 10kB statically linked to some bloat free library.
You're making my, and his, point for us. That is _huge_. That's 850kb of code, all unnecessary, there to increase the chance of bugs disrupting the only task init should do.
My sysvinit is ~32kb, and that is a bit too big too.
So yes, that is exactly like command.com despite systemd having some commands split off.