日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

[进程]守护进程

發(fā)布時(shí)間:2024/6/21 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [进程]守护进程 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

這兩天碰到一個(gè)問(wèn)題,應(yīng)用程序運(yùn)行一天,eMMC被塞滿了,查看/var/log下面發(fā)現(xiàn)是daemon.log和sys.log兩個(gè)log日志各增加到1.2G左右,詢問(wèn)參與應(yīng)用程序開發(fā)的同事后了解到他們并沒(méi)與像某個(gè)log日志中填日志。查看了日志的內(nèi)容都是dhcpcd: can....set_mtu....

后來(lái)在/etc/dhcpcd.conf中添加denyinterfaces can0 can1 can2解決了這個(gè)問(wèn)題,取消dhcpcd這個(gè)守護(hù)進(jìn)程去監(jiān)聽can口

于是順道了解了Linux日志結(jié)構(gòu),分享如下的日志

轉(zhuǎn)自:http://www.cnblogs.com/z-sm/p/5675051.html

另外/var/log下20個(gè)Linux日志文件詳解

http://h2appy.blog.51cto.com/609721/781281/

一、普通進(jìn)程與后臺(tái)進(jìn)程

默認(rèn)情況下,進(jìn)程是在前臺(tái)運(yùn)行的,這時(shí)就把shell給占據(jù)了,我們無(wú)法進(jìn)行其它操作。對(duì)于那些沒(méi)有交互的進(jìn)程,很多時(shí)候,我們希望將其在后臺(tái)啟動(dòng),可以在啟動(dòng)參數(shù)的時(shí)候加一個(gè)'&'實(shí)現(xiàn)這個(gè)目的:

zsm@wilburUbun:~/application/zookeeper-3.4.8/bin$ ./zkServer.sh start & [1] 21304 zsm@wilburUbun:~/application/zookeeper-3.4.8/bin$ ZooKeeper JMX enabled by default Using config: /home/zsm/application/zookeeper-3.4.8/bin/../conf/zoo.cfg Starting zookeeper ... STARTED[1]+ Done ./zkServer.sh start

進(jìn)程切換到后臺(tái)的時(shí)候,我們把它稱為job。切換到后臺(tái)時(shí)會(huì)輸出相關(guān)job信息,以前面的輸出為[1] 21304例:[1]表示job, ID是21304表示進(jìn)程ID是21304。 切換到后臺(tái)的進(jìn)程,仍然可以用ps命令查看,或通過(guò)jobs命令只查看所有job(后臺(tái)進(jìn)程)

二、守護(hù)進(jìn)程

如果一個(gè)進(jìn)程永遠(yuǎn)都是以后臺(tái)方式啟動(dòng),并且不能受到Shell退出影響而退出,一個(gè)正統(tǒng)的做法是將其創(chuàng)建為守護(hù)進(jìn)程(daemon)。守護(hù)進(jìn)程值得是系統(tǒng)長(zhǎng)期運(yùn)行的后臺(tái)進(jìn)程,類似Windows服務(wù)。守護(hù)進(jìn)程信息通過(guò)ps –a無(wú)法查看到,需要用到–x參數(shù)(ps -aux),當(dāng)使用這條命令的時(shí)候,往往還附上-j參數(shù)以查看作業(yè)控制信息,其中TPGID一欄為-1就是守護(hù)進(jìn)程。

三、守護(hù)進(jìn)程與后臺(tái)進(jìn)程

后臺(tái)進(jìn)程的文件描述符也是繼承于父進(jìn)程,例如shell,所以它也可以在當(dāng)前終端下顯示輸出數(shù)據(jù)。但是daemon進(jìn)程自己變成了進(jìn)程組長(zhǎng),其文件描述符號(hào)和控制終端沒(méi)有關(guān)聯(lián),是控制臺(tái)無(wú)關(guān)的。

基本上任何一個(gè)程序都可以后臺(tái)運(yùn)行,但守護(hù)進(jìn)程是具有特殊要求的程序,比如要脫離自己的父進(jìn)程,成為自己的會(huì)話組長(zhǎng)等,這些要在代碼中顯式地寫出來(lái)?yè)Q句話說(shuō),守護(hù)進(jìn)程肯定是后臺(tái)進(jìn)程,但反之不成立。?

四、進(jìn)程查看

  • 守護(hù)進(jìn)程:ps -x
  • 普通進(jìn)程:ps 或 帶參數(shù)的其他ps命令
  • 后臺(tái)進(jìn)程:jobs 或 前面的上述的那些命令

五、跟系統(tǒng)任務(wù)相關(guān)的幾個(gè)命令

fg、bg、jobs、&、ctrl+z

1.?&?最經(jīng)常被用到

???這個(gè)用在一個(gè)命令的最后,可以把這個(gè)命令放到后臺(tái)執(zhí)行

2.?ctrl?+?z

? ?可以將一個(gè)正在前臺(tái)執(zhí)行的命令放到后臺(tái),并且暫停

3.?jobs

?????查看當(dāng)前有多少在后臺(tái)運(yùn)行的命令

4.?fg

?????將后臺(tái)中的命令調(diào)至前臺(tái)繼續(xù)運(yùn)行 ?

  ?如果后臺(tái)中有多個(gè)命令,可以用?fg?%jobnumber將選中的命令調(diào)出,%jobnumber是通過(guò)jobs命令查到的后臺(tái)正在執(zhí)行的命令的序號(hào)(不是pid)

5.?bg?將一個(gè)在后臺(tái)暫停的命令,變成繼續(xù)執(zhí)行???

如果后臺(tái)中有多個(gè)命令,可以用bg?%jobnumber將選中的命令調(diào)出,%jobnumber是通過(guò)jobs命令查到的后臺(tái)正在執(zhí)行的命令的序號(hào)(不是pid)

  1.?jobs列舉出后臺(tái)作業(yè)信息。([作業(yè)號(hào)]???運(yùn)行狀態(tài)???作業(yè)名稱)

  2.?ctrl+z?將任務(wù)放到后臺(tái)去,并暫停;

  3.?bg??<%int>?將后臺(tái)任務(wù)喚醒,在后臺(tái)運(yùn)行;

  4.?fg???<%int>?將后任務(wù)的程序放到前臺(tái);

?

轉(zhuǎn)載于:https://www.cnblogs.com/aaronLinux/p/6839708.html

總結(jié)

以上是生活随笔為你收集整理的[进程]守护进程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。