launchd is a central component of the Darwin and Mac OS X boot process. About launchdStarting with Darwin 8, launchd replaces different mechanisms for starting and stopping processes, thus replacing more traditional mechanisms found in other UNIX-like systems such as init, rc, the init.d and rc.d scripts, SystemStarter (Mac OS X), inetd and xinetd, atd, crond and watchdogd. As such, it plays a central role in the Darwin and Mac OS X boot process. It is also a key element of Mach IPC on Darwin and Mac OS X systems.
Making launchd verboseWhenever you need to debug boot problems that occur after the root device has been found, you should make launchd verbose. Put the following in your /etc/launchd.conf:log level debug
and append the following to your /etc/syslog.conf:
*.debug /dev/console
Runtime dependenciesThe 9F33 binary root of the launchd project has runtime dependencies on the following libraries and frameworks:find /Users/user/Downloads/launchd.root -exec otool -L {} 2>&1 \; \
| grep "compatibility version" | sort | uniq
Unlike in earlier builds, libauto is no longer a runtime dependency of launchd. launchd from SVNThe launchd project is developed in a publicly accessible subversion repository. To check out the latest development version of launchd, use svn co http://svn.macosforge.org/repository/launchd/trunk launchd Note that this might be developed against a later version of the Core OS than what is publicly available. So something like svn co http://svn.macosforge.org/repository/launchd/branches/SULeopard launchd |
The goal of this project is to make Darwin more usable by providing an installation ISO, documentation, and add-on software. You are welcome to join #puredarwin on irc.freenode.net if you would like to join PureDarwin development and to add to this site.