¿Cuál es la diferencia entre llamar a daemon () y llamar a fork (), setsid (), fork (), etc.
He estado buscando crear demonios Unix, y parece que hay dos métodos. El de largo aliento, que parece aparecer cuando se busca es llamar afork()
, setsid()
, fork()
de nuevo,chdir()
a un lugar seguro, establezcaumask()
y finalmente,close()
stdin
, stdout
ystderr
.
Corriendoman daemon
, sin embargo, muestra información sobre undaemon()
function, que parece hacer todo lo mismo que arriba. ¿Hay alguna diferencia entre los dos enfoques o esdaemon()
@ solo una función de conveniencia que hace lo mismo que el método de largo aliento? ¿Es mejor uno, especialmente para un programador novato de C?