daemon進程簡介:
daemon進程是Linux系統的守護進程,通常在系統啓動後就運行,在系統關閉時才結束。
Daemon進程編寫規則:
1.首先進程運行後調用fork函數,並讓父進程退出,子進程獲得一個新的ID,但繼承了父進程組的ID
2.調用setsid創建新的session,使自己成爲新session,進程的Leader,不受父進程控制。
3.改變自己的工作目錄到根目錄,以免系統文件加載失敗,
4.設置文件mask 爲0,以免受系統權限的影響
5.關閉不需要的文件描述符,因爲daemon在後端運行,無法和前端進行交互,所以比如stdin,stdout,stderr等就可以關閉。
6.無法使用printf函數,可以使用syslog進行調式,輸出