Synonyms for launchd or Related words with launchd
Examples of "launchd"
There are two main programs in the
" manages the daemons at both a system and user level. Similar to xinetd,
can start daemons on demand. Similar to watchdogd,
can monitor daemons to make sure that they keep running.
also has replaced init as PID 1 on macOS and as a result it is responsible for starting the system at boot time.
"launchctl" is a command line application which talks to
using IPC and knows how to parse the property list files used to describe
jobs, serializing them using a specialized dictionary protocol that
understands. launchctl can be used to load and unload daemons, start and stop
controlled jobs, get system utilization statistics for
and its child processes, and set environment settings.
The basic features of "
", "notifyd", "asld", and "libdispatch" work.
launchctl communicates with
via a Mach-specific IPC mechanism.
is very different from SystemStarter in that it may not actually launch all the daemons at boot time. Key to
, and similar to xinetd, is the idea of launch on demand daemons. When
scans through the job plists at boot time it reserves and listens on all of the ports requested by those jobs. If so indicated in the plist by the "OnDemand" key, the daemon is not actually loaded at the time. Rather,
will listen on the port, start the daemon when needed, and shut it down when it is not. After a daemon is loaded,
will keep track of it and make sure it is running if needed. In this way it is like watchdogd, and shares watchdogd's requirement that processes do not attempt to fork or daemonize on their own. If a process goes into the background
will lose track of it and attempt to relaunch it.
" will start the initial jobs that are part of the repo now.
, a unified service-management framework, starts, stops and manages daemons, applications, processes, and scripts.
Configuration files define the parameters of services run by
. Stored in the LaunchAgents and LaunchDaemons subdirectories of the Library folders, the property list-based files have approximately thirty different keys that can be set.
itself has no knowledge of these configuration files or any ability to read them - that is the responsibility of "launchctl".
– and most of those things "were" superseded when
was introduced with Mac OS X v10.4 (Tiger).
In 2014, with OS X 10.10 and iOS 8, Apple moved code for
to closed source libxpc.
A property list (plist) is a type of file that
uses for program configuration. When
scans a folder, or a job is submitted with launchctl, it reads a plist file that describes how the program is to be run.
SystemStarter is a system program in Mac OS X, started by Mac OS X's BSD-style init prior to Mac OS X v10.4 and by
in Mac OS X v10.4 and later releases, that starts system processes specified by a set of property lists. SystemStarter was originally written by Wilfredo Sanchez for Mac OS X. In Mac OS X v10.4, it was deprecated in favor of
, and kept in the system only to start system processes not yet converted to use
has two main tasks. The first is to boot the system, and the second is to load and maintain services.
In December 2013, R. Tyler Croy announced his intent to resume work on his port of
to FreeBSD, and his "openlaunchd" Github repo subsequently rose in activity.
The evasi0n jailbreak specifically breaches modern security features such as address space layout randomization for kernel space and a version of
with a hard-coded list of exclusive services, which serve device stability as well as vendor lock-in on iOS - where Evasi0n reads fixed data vectors to locate the random address of the kernel space and utilizes the codice_1 file which
processes regardless of the list of exclusive services.
Several replacement init implementations have been created, attempting to address design limitations in the standard versions. These include
, the Service Management Facility, systemd and Upstart; , systemd has been adopted by several major Linux distributions although it remains controversial.
In 2005, R. Tyler Croy ported
to FreeBSD as part of Google Summer of Code Project. It could not be run as PID 1 (only a session init), and it was not commonly used on that platform.
With the other daemon starting facilities, mechanisms for service control are strewn across the OS with no central way to manage them. With
, control of services is centralized in the launchctl application.
The last Wayback Machine capture of the Mac OS Forge area for
was in June 2012, and the most recent open source version from Apple was 842.92.1 in code for OS X 10.9.5.
Copyright © 2017