デーモンプログラム fork()、その後親プロセス終了。 プログラムを起動したシェルに制御が戻る。このfork()は新しいプロセスが プロセスグループリーダーにならないようにするため。 setsid()はプロセスグループリーダーだと失敗する。 setsid()によりプロセスグループとセッショングループのリーダーとなる。制御端末はセッションに関連づけらている。この新しいセッショ ンは制御端末を持たない。そのためこのプロセスは制御端末を持たない。 fork()して、親プロセス(セッショングループリーダー)は終了。デーモンが、セッショングループリーダーでないので、以後制御端末 を持つことがない。 chdir("/")。ファイルシステムを アンマウント出来ないことを避ける。 umask(0)として、書き出すあらゆるファイルのパーミッションを制御。 やらなくてもいいけど。 ファイルディスクリプタ0、