Daemon (computing)

daemondaemonsservicesdaemon processserviceDaemon (computer software)Unix daemonbackground processescomputer software daemondaemon program
In multitasking computer operating systems, a daemon ( or ) is a computer program that runs as a background process, rather than being under the direct control of an interactive user.wikipedia
358 Related Articles

Operating system

operating systemsOScomputer operating system
In multitasking computer operating systems, a daemon ( or ) is a computer program that runs as a background process, rather than being under the direct control of an interactive user.
An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs.

Init

sysvinitinit systeminit process
In a Unix environment, the parent process of a daemon is often, but not always, the init process.
Init is a daemon process that continues running until the system is shut down.

Cron

crontabCRON expressioncron job
Daemons such as cron may also perform defined tasks at scheduled times.
The crontab files are stored where the lists of jobs and other instructions to the cron daemon are kept.

Secure Shell

SSHOSSHSSH Client
For example, syslogd is the daemon that implements the system logging facility, and sshd is a daemon that serves incoming SSH connections.
An SSH client program is typically used for establishing connections to an SSH daemon accepting remote connections.

BSD Daemon

aureola beastieBeastieBeastie (mascot)
However, BSD and some of its derivatives have adopted a Christian demon as their mascot rather than a Greek daemon.
The BSD Daemon is named after software daemons, a class of long-running computer programs in Unix-like operating systems, which through a play on words takes the cartoon shape of a demon.

Windows service

serviceservicessystem service
Alternate terms for daemon are service (used in Windows, from Windows NT onwards — and later also in Linux), started task (IBM z/OS), and ghost job (XDS UTS).
It is similar in concept to a Unix daemon.

Super-server

Internet super server
If the process is started by a super-server daemon, such as inetd, launchd, or systemd, the super-server daemon will perform those functions for the process (except for old-style daemons not converted to run under systemd and specified as Type=forking and "multi-threaded" datagram servers under inetd ).
A super-server or sometimes called a service dispatcher is a type of daemon run generally on Unix-like systems.

Inetd

internet service daemon (inetd)
If the process is started by a super-server daemon, such as inetd, launchd, or systemd, the super-server daemon will perform those functions for the process (except for old-style daemons not converted to run under systemd and specified as Type=forking and "multi-threaded" datagram servers under inetd ).
inetd (internet service daemon) is a super-server daemon on many Unix systems that provides Internet services.

Launchd

If the process is started by a super-server daemon, such as inetd, launchd, or systemd, the super-server daemon will perform those functions for the process (except for old-style daemons not converted to run under systemd and specified as Type=forking and "multi-threaded" datagram servers under inetd ).
launchd is an init and operating system service management daemon created by Apple Inc. as part of macOS to replace its BSD-style init and SystemStarter.

Systemd

Eudevjournaldlogind
If the process is started by a super-server daemon, such as inetd, launchd, or systemd, the super-server daemon will perform those functions for the process (except for old-style daemons not converted to run under systemd and specified as Type=forking and "multi-threaded" datagram servers under inetd ).
The name systemd adheres to the Unix convention of naming daemons by appending the letter d. It also plays on the term "System D", which refers to a person's ability to adapt quickly and improvise to solve problems.

Maxwell's demon

Maxwell’s demondemondemon of the second kind
They took the name from Maxwell's demon, an imaginary being from a thought experiment that constantly works in the background, sorting molecules.
Daemons in computing, generally processes that run on servers to respond to users, are named for Maxwell's demon.

Universal Time-Sharing System

UTSCP-VHoneywell CP-V
Alternate terms for daemon are service (used in Windows, from Windows NT onwards — and later also in Linux), started task (IBM z/OS), and ghost job (XDS UTS).
System Daemons, called "ghost jobs" were used to run monitor code in user space.

File descriptor

file handlefile handlesfilehandle
Each Unix process (except perhaps a daemon) should expect to have three standard POSIX file descriptors, corresponding to the three standard streams:

List of Unix daemons

This is a list of Unix daemons that are found on various Unix-like operating systems.

Extension (Mac OS)

extensionextensionssystem extension
On the classic Mac OS, optional features and services were provided by files loaded at startup time that patched the operating system; these were known as system extensions and control panels.
Extensions generally filled the same role as DOS's terminate and stay resident programs, or Unix's daemons, although by patching the underlying OS code, they had the capability to modify existing OS behaviour, the other two did not.

Bounce message

bouncesDelivery Status NotificationDSN
When an e-mail arrives at the destination server for an address (such as mymail.example, when sending to alice@mymail.example), it may be that the mail daemon is unable to deposit the message in the specified user's mailbox if the underlying hard drive of the server has insufficient space.

Background process

backgroundbackground processesbackground task
In multitasking computer operating systems, a daemon ( or ) is a computer program that runs as a background process, rather than being under the direct control of an interactive user.
In the latter case when the session ends, the child processes are not terminated, either because they are not sent SIGHUP or because they ignore it, and thus become orphan processes, which are then adopted by the init process (the kernel sets the init process as their parent), and they continue running without a session, now called daemons.

Service wrapper

A service wrapper is a computer program that wraps arbitrary programs thus enabling them to be installed and run as Windows Services or Unix daemons, programs that run in the background, rather than under the direct control of a user.

Terminate and stay resident program

TSRTerminate and Stay Residentmemory resident
In the Microsoft DOS environment, daemon-like programs were implemented as terminate and stay resident (TSR) software.

Evi Nemeth

In the Unix System Administration Handbook, page 403, Evi Nemeth states the following about daemons:
"Many people equate the word ‘daemon’ with the word ‘demon’, implying some kind of Satanic connection between Unix and the underworld. This is an egregious misunderstanding. ‘Daemon’ is actually a much older form of ‘demon’; daemons have no particular bias towards good or evil, but rather serve to help define a person's character or personality. The ancient Greeks' concept of a ‘personal daemon’ was similar to the modern concept of a ‘guardian angel’ – ‘eudaemonia’ is the state of being helped or protected by a kindly spirit. As a rule, Unix systems seem to be infested with both daemons and demons."

Computer multitasking

multitaskingmulti-taskingmultitask
In multitasking computer operating systems, a daemon ( or ) is a computer program that runs as a background process, rather than being under the direct control of an interactive user.

Computer program

programprogramscomputer programs
In multitasking computer operating systems, a daemon ( or ) is a computer program that runs as a background process, rather than being under the direct control of an interactive user.

Syslog

syslogdcentral loggingLogger
For example, syslogd is the daemon that implements the system logging facility, and sshd is a daemon that serves incoming SSH connections.

Unix

UNIX operating systemAT&T UnixUnix-like
In a Unix environment, the parent process of a daemon is often, but not always, the init process.