Visit The New, Modern Unix Linux Community

Linux and UNIX Man Pages

Test Your Knowledge in Computers #149
Difficulty: Easy
In a 1999, Dennis Ritchie stated that Linux and the BSD operating systems were a continuation of the basis of the Unix design approach and were Unix derivatives.
True or False?
Linux & Unix Commands - Search Man Pages

launchd(8) [osx man page]

launchd(8)						    BSD System Manager's Manual 						launchd(8)

NAME
launchd -- System wide and per-user daemon/agent manager SYNOPSIS
launchd [-d] [-D] [-s] [-S SessionType] [-- command [args ...]] DESCRIPTION
launchd manages processes, both for the system as a whole and for individual users. The primary and preferred interface to launchd is via the launchctl(1) tool which (among other options) allows the user or administrator to load and unload jobs. Where possible, it is preferable for jobs to launch on demand based on criteria specified in their respective configuration files. During boot launchd is invoked by the kernel to run as the first process on the system and to further bootstrap the rest of the system. You cannot invoke launchd directly. ENVIRONMENTAL VARIABLES
LAUNCHD_SOCKET This variable is exported when invoking a command via the launchd command line. It informs launchctl how to find the correct launchd to talk to. NOTES
In Darwin, the canonical way to launch a daemon is through launchd as opposed to more traditional mechanisms or mechanisms provided in ear- lier versions of Mac OS X. These alternate methods should be considered deprecated and not suitable for new projects. In the launchd lexicon, a "daemon" is, by definition, a system-wide service of which there is one instance for all clients. An "agent" is a service that runs on a per-user basis. Daemons should not attempt to display UI or interact directly with a user's login session. Any and all work that involves interacting with a user should be done through agents. If you wish your service to run as a certain user, in that user's environment, making it a launchd agent is the ONLY supported means of accomplishing this on Mac OS X. In other words, it is not sufficient to perform a setuid(2) to become a user in the truest sense on Mac OS X. FILES
~/Library/LaunchAgents Per-user agents provided by the user. /Library/LaunchAgents Per-user agents provided by the administrator. /Library/LaunchDaemons System-wide daemons provided by the administrator. /System/Library/LaunchAgents Per-user agents provided by Mac OS X. /System/Library/LaunchDaemons System-wide daemons provided by Mac OS X. SEE ALSO
launchctl(1), launchd.plist(5), Darwin 1 May, 2009 Darwin

Check Out this Related Man Page

ReportCrash(8)						    BSD System Manager's Manual 					    ReportCrash(8)

NAME
ReportCrash -- Generates crash reports SYNOPSIS
ReportCrash DESCRIPTION
ReportCrash analyzes crashing processes and saves a crash report to disk. A crash report contains information that can help a developer diagnose the cause of a crash. ReportCrash also records the identity of the crashing process and the location of the saved crash report in the system.log and the ASL log database. ReportCrash is invoked automatically by launchd when a crash is detected. For applications and other processes running in the per-user launchd context, ReportCrash runs as a LaunchAgent and saves crash reports in the user's ~/Library/Logs/DiagnosticReports/ directory. For daemons, other processes running in the system launchd context and other privileged processes, ReportCrash runs as a LaunchDaemon and saves crash reports in the system's /Library/Logs/DiagnosticReports directory where they are only readable by admin users. If there are too many crash reports saved for a particular process, older reports will automatically be removed in order to conserve disk space. launchtl can be used to disable and re-enable crash reporting. To disable crash reporting: launchctl unload -w /System/Library/LaunchAgents/com.apple.ReportCrash.plist sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.ReportCrash.Root.plist To re-enable crash reporting: launchctl load -w /System/Library/LaunchAgents/com.apple.ReportCrash.plist sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.ReportCrash.Root.plist For application crashes (but not background process crashes) ReportCrash will display a dialog notifying the user that the application unex- pectedly quit and offering to reopen the application or send the report to Apple. For developers, the behavior of this dialog can be adjusted using /Developer/Applications/Utilities/CrashReporterPrefs.app which is installed as part of the developer tools. Crash reports which are sent to Apple are submitted anonymously by the SubmitDiagInfo process. The reports are used by Apple to improve its products. Users who need support should use http://www.apple.com/support or other authorized support channels. Developers who are ADC mem- bers should report bugs using http://bugreporter.apple.com in order to allow for two way communication between Apple and the bug reporter. More information about interpreting the contents of crash reports can be found in Technote 2123: https://developer.apple.com/library/con- tent/technotes/tn2004/tn2123.html SEE ALSO
launchd(8), launchd.plist(8), launchctl(8), spindump(8), SubmitDiagInfo(8) Mac OS June 1, 2019 Mac OS

Featured Tech Videos