Jump to content

Daemon (computer software)

From Simple English Wikipedia, the free encyclopedia
Revision as of 18:00, 6 June 2009 by NonvocalScream (talk | changes) (Just the lead, for now)

In Unix and in other computer multitasking operating systems, a daemon (pronounced /ˈdiːmən/ or /ˈdeɪmən/)[1] is a computer program that runs in the background task. This task, rather than existing under the control of a user; they are usually initiated as background processes. Normally, daemons have names that end with the letter "d": for example, syslogd, the daemon that handles the system log, or sshd, which handles incoming SSH connections.

In a Unix environment, the parent process of a daemon is often (but not always) the init process (PID=1). Processes usually become daemons by forking a child process and then having their parent process immediately exit, thus causing init to adopt the child process. This is a somewhat simplified view of the process as other operations are generally performed, such as disassociating the daemon process from any controlling tty. Convenience routines such as daemon(3) exist in some UNIX systems for that purpose.

Systems often start (or "launch") daemons at boot. They usually serve the job of listening to and processing network requests, hardware activity, or other programs by performing some task. Daemons can also set up hardware (like devfsd on some Linux systems), run scheduled tasks (like cron), and perform a variety of other tasks.

References

  1. Eric S. Raymond. "daemon". The Jargon File. Retrieved 2008-10-22.

See also