一般社団法人 全国個人事業主支援協会

COLUMN コラム

  • 「デーモン」について

デーモンとは、UNIX系OSでメインメモリ上に常駐して特定の機能を提供するプログラム。

利用者の操作とは無関係に処理を行うバックグラウンドプロセスの一種で、
別のプログラムや機器、通信相手など外部からの要求を受け付けて処理を実行したり、
あらかじめ設定されたタイミングで自律的に特定の処理を実行したりする。

デーモンはOSに登録され、コンピュータやOSの起動(ブート)時に一緒に起動され、
実行状態となる。
強制終了など特殊な場合を除いて基本的に利用者が直に操作することはない。

HTTP通信を処理する「httpd」のように、デーモンの実体となる実行可能ファイルの
名称には末尾に「d」を付ける習慣がある(必ずしも従う必要はないため例外も多い)。

ちなみに、Windowsではほぼ同様のプログラムを「サービス」という。

<デーモンの種類>

主に、多くのプログラムが共通して必要とするシステム関連の処理を
担うもの(systemd、syslogdなど)や、ハードウェア制御に関連するもの、
通信ネットワークを通じて外部の相手から届く要求を処理するもの
(inetd、tcpd、httpd、ftpd、smtpd、imapd、dhcpd、smbd、sshdなど)がある。

指定された時間にプログラムを起動する機能を提供するcrondなど能動的に動作するものもある。

基本的、汎用的な機能のものはOSの一部に組み込まれて一緒に提供される場合もあるが、
特定の目的のためにソフトウェアパッケージの一部として提供されるものも多い。
例えばデータベース管理システム(DBMS)などは主要なプログラムをデーモンとして実装することが多い。

DAEMONの語源は、ギリシャ神話に登場する守護神である。
システムの面倒な雑用を実行してくれる、バックグラウンドプロセスである事から、
DAEMON = 守護神 の名前がついたと言われている。

DAEMONの主な働きは、Webサーバ・メール送受信・プリントなどの処理。
具体的なサービス名を挙げると

電子メール:
fetchmail、postfix、imapd、sendmail、smtpd

タスクスケジューリング系:
anacron、crond、atd

データベースサーバ:
postgresql、mysql

など

例えば、電子メールで、偶に MAILER-DAEMON から英文メールが届く事があるが、
これが電子メールサーバのDAEMONである。
相手のサーバが故障している、宛先が間違っている等の理由で、送信出来なかった場合に
メール送信者へ自動返信する働きをする。

 

The following two tabs change content below.

久米 大輔

この記事をシェアする

  • Twitterでシェア
  • Facebookでシェア
  • LINEでシェア