On Fri, 17 Jun 2016 16:55:40 +0200 Irrwahn <irrw...@freenet.de> wrote:
> A minimal PID1 (written in whatever language) is not an init > system. Everyone should note the preceding sentence. A lot of people use PID1 and "init" interchangeably, and that's wrong and leads to problems. As a matter of fact, it seems like everybody is making up their own definitions of "init", including a lot who use the word as just a reference to sysvinit. My personal definition of "init" or "an init system" is that it has a PID1 that reaps zombies and looks for and handles the reboot signal, and it has a section, inside or outside of PID1, that manages or supervises processes. My personal preference is an init with PID1 doing nothing but spawning an rc script and then spinning forever, looking for signals. In a real system, that rc script must run a process manager or supervisor after doing some early boot work. > In your example you hid the insteresting stuff behind > some obscure script misleadingly called "osloader.sh". What > was your point again? It's a proof of concept. From there, he puts all the early boot stuff into osloader.sh, and if I were him, the last line of osloader.sh would invoke something like daemontools-encore's svscanboot, or runit's runsvdir, or s6's s6-svscanboot, or sysvinit's /etc/init.d/rc 3 or OpenRC's startup script if you drive on that side of the road. It's the knowledge equivalent of pulling yourself up by your bootstraps, and when he's done documenting it anybody can follow in his footsteps. And those who *do* follow in his footsteps will find it easy to install something like runit or s6 to initialize their machine. SteveT Steve Litt June 2016 featured book: Troubleshooting: Why Bother? http://www.troubleshooters.com/twb _______________________________________________ Dng mailing list Dng@lists.dyne.org https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng