deamon守護程序

2021-07-26 12:00:35 字數 807 閱讀 3714

在linux下的一種特殊程序稱為守護程序,其作用是在後台默默提供服務的,隨系統結束而結束,或者是kill -9 的訊號結束

daemon,表示守護程序,簡稱為d(程序名後面帶d的基本就是守護程序)

ps -aux
命令得到的程式中在tty 一欄中為?的皆為守護程序,說明不隸屬於任何的控制台的程式。

一般我們在終端中執行的程式其父程序都是bash ,子程序在bash結束後,會被**

子程序等待父程序退出

子程序使用setsid建立新的會話期,脫離控制台

呼叫chdir將當前工作目錄設定為/

umask設定為0以取消任何檔案許可權遮蔽

關閉所有檔案描述符

將0、1、2定位到/dev/null

下面是實現的**demo:

void deamon_creator(char *cmd)  

else if (pid > 0)

if (setsid() < 0)

for (i = 0; i < sysconf(open_max); i++)

if (chdir("/") < 0)

umask(0); //set the mask

fd0 = open("dev/null", o_rdwr);

fd1 = dup(0);

fd2 = dup(0); //copy the fd one by one

for(;;);

}

java執行緒篇 守護執行緒(Deamon)

介紹 守護執行緒使用簡介,簡單的乙個demo示例如下 說明 此為守護執行緒測試,如下注意 1.當守護執行緒沒有可以守護的執行緒時,也就是只有它自己的時候虛擬機器則自動退出 2.守護執行緒必須在start之前進行操作。如果在之後則會提示錯誤。author t.c public class daemon...

linux下的deamon程序

設計乙個linux下的deamon程序,關鍵只有幾個 1.fork兩次。2.fork第一次和第二次之間成為程序組頭。3.改變工作目錄。4.忽略訊號。5.設定讀寫掩碼。一下是乙個從網路蒐集到的例程,非常好的演示了上述要點,存此備忘。上述程式在gcc4.0.1下編譯通過,在fc4 2.6.11下穩定執行...

守護程序及守護程序輸出

1 建立乙個輸出程式 2 建立乙個守護程序 1 建立乙個輸出程式 守護程序不與終端聯絡,所以,需要另外建立乙個程式用於輸出。也可以直接使用 bin echo example daemon help.cc include int main int argc,char argv else if argc...