人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統 > 網絡技術教程 > 詳細頁面

守護進程的概念與創建辦法

守護進程的概念與創建辦法

更新時間:2019-03-21 文章作者:未知 信息來源:網絡 閱讀次數:

網絡技術是從1990年代中期發展起來的新技術,它把互聯網上分散的資源融為有機整體,實現資源的全面共享和有機協作,使人們能夠透明地使用資源的整體能力并按需獲取信息。資源包括高性能計算機、存儲資源、數據資源、信息資源、知識資源、專家資源、大型數據庫、網絡、傳感器等。 當前的互聯網只限于信息共享,網絡則被認為是互聯網發展的第三階段。

守護進程是一種后臺運行彬接獨立于所有終端控制之外的進程.
  正是因為守護進程獨立于所有的終端控制,因此,他無法向通常程序那樣將信息直接輸出到標準輸出和標準錯誤輸出.威力解決這個問題,linux提供了syslog()函數.通過他,守護進程可以向系統的log文件寫入信息.他在系統函數庫syslog.h中的定義如下:
void syslog(int priority,char *format,...);
在一個進程使用syslog()的時候,應該先用openlog()打開系統紀錄.

#include
void openlog(const *ident,int options,int facility);
參數ident是一個字符竄,通常他是程序的名字.
options可以是下面的值.
LOG_CONS 如果不能寫入LOG值.則直接將其發送給主控臺.
LOG_NDELAY 直接建立SYSLOGD進程而不是打開LOG文件
LOG_PERROR 將信息寫入LOG同時也發送給標準錯誤輸出.
LOG_PID 在每個信息中加入PID值.用一個

下面用一個示例來講解:
#include
#include
#include
#include

#define MAXFD 64

main(){

int i;

if(fork())
exit(1); /*父進程退出,使子進程成為后臺進程*/

setsid(); /*建立一個新的進程組,在這個新的進程組中,子進程成為這個進程組的首進程.這樣,該進程就獨立于所有終端之外*/

signal(SIGHUP,SIG_IGN); /*忽略SIGHUP信號*/

if(fork())
exit(1); /*再次fork(),保證該進程不是進程組的首進程.*/

chdir("/"); /*改變當前目錄,使得進程不和任何文件系統關聯*/

unmask(0); /*清除文件掩碼,消除進程掩碼對其所創建文件的影響*/

for(i=0;i close(i); /*關閉所有文件描述符*/

openlog(pname,LOG_PID,facility); /*打開記錄*/


 



網絡的神奇作用吸引著越來越多的用戶加入其中,正因如此,網絡的承受能力也面臨著越來越嚴峻的考驗―從硬件上、軟件上、所用標準上......,各項技術都需要適時應勢,對應發展,這正是網絡迅速走向進步的催化劑。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 竹北市| 丹东市| 黑河市| 三门县| 石泉县| 大英县| 乐至县| 福海县| 大姚县| 炎陵县| 郑州市| 浦县| 宣城市| 沈阳市| 古交市| 洱源县| 建湖县| 舟曲县| 肇东市| 临沧市| 金坛市| 璧山县| 外汇| 灵山县| 康马县| 格尔木市| 宣城市| 郓城县| 凭祥市| 巴马| 察哈| 修水县| 平顶山市| 焦作市| 江永县| 汝南县| 灵璧县| 肇州县| 武安市| 新源县| 绵竹市|