在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

編寫daemon進程需要遵循哪些規則?

Linux愛好者 ? 來源:Linux愛好者 ? 作者:Liao Tonglang ? 2020-12-07 16:24 ? 次閱讀

Daemon 進程生命周期長且在后臺運行。編寫daemon進程需要遵循哪些規則呢?

1、執行fork()函數,父進程退出,子進程繼續

執行這一步,原因有兩個:

父進程可能是進程組的組長,從而不能夠執行后面要執行的setsid函數。

子進程繼承了父進程的進程組ID,一定不會是進程組組長,所以子進程一定可以執行setsid。

如果daemon是從終端命令行啟動的,那么父進程退出后,shell會顯示shell提示符,讓子進程在后臺執行。

2、子進程執行下面三個步驟

修改當前目錄為根目錄 如果當前工作路徑上包含根文件系統以外的文件系統,那么這個文件系統將不能被卸載。

當然也可以改成其它合適的目錄。這里使用函數chdir("/")。

調用setsid 這是為了切斷與控制終端的所有關系,創建一個新的會話。

此時無論終端是否發送SIGIN、SIGQUIT或者SIGTSTP或者斷開,都與daemon進程無關。

使用umask(0)設置文件模式創建掩碼為0 這一步的目的是讓daemon進程創建文件的權限屬性與shell脫離關系。

因為默認情況下,進程的umask來源于父進程shell的umask。如果不執行umask(0),那么父進程的shell就會影響daemon,造成daemon每次執行的umask信息不一致。

3、再次執行fork,父進程退出,子進程繼續

執行完前面兩步之后,新建了會話,進程是會話的首進程,也是進程組的首進程;進程ID,進程組ID,會話ID相同;進程和終端失去聯系。

但是還差一步。daemon進程有可能會打開一個終端設備:

intfd=open("/dev/console",O_RDWR);這個設備是否會成為daemon進程的控制終端,取決于兩點:

daemon進程是不是會話的首進程。

系統實現。(BSD的實現不會成為daemon的控制終端,但POSIX由具體實現決定)。

為了萬無一失,需要使用fork()確保daemon不是會話的首進程。

4、關閉stdin,stdout,stderr

關閉之后應該打開/dev/null將0,1,2描述符指向它。這是為了防止后面執行0,1,2上的I/O時出現錯誤。

C庫的daemon函數和這個流程相似,但沒有第二次fork。

原文標題:Daemon 進程的創建

文章出處:【微信公眾號:Linux愛好者】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 編程
    +關注

    關注

    88

    文章

    3636

    瀏覽量

    93898
  • 函數
    +關注

    關注

    3

    文章

    4344

    瀏覽量

    62864

原文標題:Daemon 進程的創建

文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    村田代理商告訴你貼片電容選用的規則

    在選擇貼片電容時,需要遵循一系列一般規則,以確保所選電容能夠滿足電路的設計需求并具備較高的可靠性和穩定性。以下是一些關鍵的選用規則: 一、電路需求分析 確定電容的作用: 首先要明確貼片
    的頭像 發表于 12-23 15:09 ?181次閱讀

    深入解析Linux程序與進程

    關于某個數據集合的一次運行活動。作為系統進行資源分配和調度的基本單位,是操作系統結構的基礎。 程序與進程的關系 進程的狀態 基礎進程狀態 創建狀態:進程在創建時
    的頭像 發表于 12-18 11:01 ?126次閱讀
    深入解析Linux程序與<b class='flag-5'>進程</b>

    芯盾時代參與編寫零信任相關標準

    參加會議,就《標準》草案展開全面、深度的討論,并明確了下一階段的工作計劃和目標。《標準》的編寫工作取得了重要進展,編寫進程穩步、有序推進。
    的頭像 發表于 11-05 11:07 ?794次閱讀

    改造數據中心需要遵循這五大規則

    在數據中心改造過程中,數據存儲問題可能是最艱巨的障礙,以下關于實現數據中心的改造的五大規則,可能會對您有所啟發。 ? 1.使存儲虛擬化更容易 為了實現數據中心的改造,首先實現存儲虛擬化。但是,這項
    的頭像 發表于 10-31 11:02 ?188次閱讀

    【軟件干貨】Android應用進程如何保活?

    在Android應用程序中,為了保證應用的正常運行和穩定性,有時需要對應用進程進行保活。以下是一些實現進程保活的方法:
    的頭像 發表于 10-15 17:05 ?536次閱讀
    【軟件干貨】Android應用<b class='flag-5'>進程</b>如何保活?

    【每天學點AI】五個階段帶你了解人工智能大模型發展史!

    20世紀50年代NLP的早期研究主要基于規則的方法,依賴于語言學專家手工編寫規則和詞典。這些規則通常是關于語法、語義和句法結構的人工規則
    的頭像 發表于 09-25 16:51 ?542次閱讀
    【每天學點AI】五個階段帶你了解人工智能大模型發展史!

    DTU的設備號都在什么情況下需要填寫呢?填寫的規則是什么?

    DTU的設備號都在什么情況下需要填寫,填寫的規則是什么?
    發表于 07-26 08:18

    高速pcb布線規則有哪些

    高速pcb布線規則有哪些 高速PCB布線規則 摘要:隨著電子技術的快速發展,高速PCB設計變得越來越重要。為了確保信號完整性和電磁兼容性,遵循一定的布線規則至關重要。本文將詳細介紹高速
    的頭像 發表于 06-10 17:33 ?942次閱讀

    一句話讓你理解線程和進程

    今天給大家分享一下線程與進程,主要包含以下幾部分內容:一句話說明線程和進程操作系統為什么需要進程為什么要引入線程一圖說明線程和進程的關系一句
    的頭像 發表于 06-04 08:04 ?1282次閱讀
    一句話讓你理解線程和<b class='flag-5'>進程</b>

    嵌入式系統中C語言的編寫規范

    最重要的一條規則 編寫代碼時最重要的一條規則是:檢查周圍的代碼并嘗試模仿它。 作為維護人員,如果收到的補丁明顯與周圍代碼的編碼風格不同,這是令人沮喪的。這是不尊重人的,就像某人穿著泥濘的鞋子走進
    的頭像 發表于 05-11 08:49 ?1206次閱讀

    FPGA入門必備:Testbench仿真文件編寫實例詳解

    編寫完HDL代碼后,往往需要通過仿真軟件Modelsim或者Vivadao自帶的仿真功能對HDL代碼功能進行驗證,此時我們需要編寫Testbench文件對HDL功能進行測試驗證。
    發表于 04-29 10:43 ?2231次閱讀

    降低RF電路寄生信號的八個設計規則

    RF產品電路布局要想降低寄生信號,需要RF工程師發揮創造性。記住以下這八條規則,不但有助于加速產品上市進程,而且還可提高工作日程的可預見性。規則1:接地通孔應位于接地參考層開關處流經所
    的頭像 發表于 04-24 08:05 ?970次閱讀
    降低RF電路寄生信號的八個設計<b class='flag-5'>規則</b>

    如何優化 PCB 布線規則

    而言,限制或是規則非常重要;一如我們從小就要學會遵守社會與法律規則。同理,為PCB制定規則應當受到重視。雖然為此需要花費時間進行研究并投入精力,但設置這些限制條件
    的頭像 發表于 02-19 13:00 ?1291次閱讀
    如何優化 PCB 布線<b class='flag-5'>規則</b>?

    鴻蒙OS跨進程IPC與RPC通信

    使用Binder驅動,用于設備內的跨進程通信,后者使用軟總線驅動,用于跨設備跨進程通信。需要進程通信的原因是因為每個進程都有自己獨立的資源
    發表于 02-17 14:20

    HarmonyOS跨進程通信—IPC與RPC通信開發

    使用Binder驅動,用于設備內的跨進程通信,后者使用軟總線驅動,用于跨設備跨進程通信。需要進程通信的原因是因為每個進程都有自己獨立的資源
    的頭像 發表于 02-02 17:47 ?1332次閱讀
    HarmonyOS跨<b class='flag-5'>進程</b>通信—IPC與RPC通信開發
    主站蜘蛛池模板: 亚欧免费视频 | 色香天天 | 久久夜色精品国产亚洲噜噜 | www网站在线观看 | 国产日韩欧美一区二区 | 78摸在线| 特黄aaaaa日本大片免费看 | 午夜免费啪视频观看网站 | 日本大片免费观看视频 | 亚洲一区二区影视 | 亚洲特级毛片 | 天天做天天爱夜夜想毛片 | 久久国产乱子伦精品免费一 | 久青草国产高清在线视频 | 亚洲mm8成为人影院 亚洲qingse中文在线 | 午夜影院网页 | 日本人的xxxxxxxxx69| 日本久久久 | 成年人网站免费观看 | 婷婷综合激情 | 午夜黄网站 | 欧美日韩一区二区三区毛片 | 手机看片国产免费久久网 | 欧美xxxxxxxxx | 两性午夜欧美高清做性 | 国产美女免费观看 | 啪啪调教所29下拉式免费阅读 | 亚洲jizzjizz中文在线播放 | 99久久久精品免费观看国产 | 久操福利| 天堂男人在线 | 在线天堂资源 | 色网址在线观看 | 桃桃酱无缝丝袜在线播放 | 好男人社区www在线资源视频 | 四虎永久在线精品国产免费 | 欧美一级欧美三级在线 | 一区二区三区四区无限乱码在线观看 | 免费在线公开视频 | 中文字幕在线观看一区 | 最近国语视频免费观看在线播放 |