<operating system> /day'mn/ or /dee'mn/ (From the mythological meaning,
later rationalised as the acronym "Disk And Execution MONitor") A program that
is not invoked explicitly, but lies dormant waiting for some condition(s) to
occur. The idea is that the perpetrator of the condition need not be aware that
a daemon is lurking (though often a program will commit an action only because
it knows that it will implicitly invoke a daemon).
For example, under ITS writing a file on the LPT spooler's directory would
invoke the spooling daemon, which would then print the file. The advantage is
that programs wanting files printed need neither compete for access to, nor
understand any idiosyncrasies of, the LPT. They simply enter their implicit
requests and let the daemon decide what to do with them. Daemons are usually
spawned automatically by the system, and may either live forever or be
regenerated at intervals.
Unix systems run many daemons, chiefly to handle requests for services from
other hosts on a network. Most of these are now started as required by a single
real daemon, inetd, rather than running continuously. Examples are cron (local
timed command execution), rshd (remote command execution), rlogind and telnetd
(remote login), ftpd, nfsd (file transfer), lpd (printing).
Daemon and demon are often used interchangeably, but seem to have distinct
connotations (see demon). The term "daemon" was introduced to computing by CTSS
people (who pronounced it /dee'mon/) and used it to refer to what ITS called a
D/A converter « DACTL « DADS « daemon » DAG »
Daisy » DAISY 201