Linux系統程式設計 會話

2022-03-12 02:18:08 字數 1738 閱讀 1149

會話:是乙個或多個程序組的集合。

建立乙個會話需要注意以下6點注意事項

1. setsid函式:建立乙個會話,並以自己的id設定程序組id,同時也是新會話id

pid_t setsid(void);
分析:呼叫了setsid函式的程序,既是新的會長,也是新的組長。

2. getsid函式:獲取程序所屬會話id

pid_t getsid(pid_t pid);
分析:3. 舉例說明

sunbin@sunbin:~$ cat | cat &[

1] 53903

sunbin@sunbin:~$ cat | cat | cat

結果分析:

ppid    pid   pgid   sid

41184

53884

41270

41270 ? -1 rl 1000

0:00 /usr/lib/gnome-ter

53884

53889

53889

53889 pts/4

53904 ss 1000

0:00

bash

53889

53902

53902

53889 pts/4

53904 t 1000

0:00

cat

53889

53903

53902

53889 pts/4

53904 t 1000

0:00

cat

53889

53904

53904

53889 pts/4

53904 s+ 1000

0:00

cat

53889

53905

53904

53889 pts/4

53904 s+ 1000

0:00

cat

53889

53906

53904

53889 pts/4

53904 s+ 1000

0:00

cat

53884

53907

53907

53907 pts/18

53918 ss 1000

0:00

bash

53907

53918

53918

53907 pts/18

53918 r+ 1000

0:00 ps ajx

1. 測試**:

1 #include 2 #include 3 #include 4

5int

main()613

else

if(pid == 0

) 14

31 printf("

parent process pid is %d\n

", getpid());

32return0;

33 }

輸出結果:

Linux 系統程式設計

1 i o操作 2 檔案和目錄管理 3 記憶體管理 1 建立匿名記憶體對映 2 對映 dev zero檔案 類unix 作業系統中,dev zero是乙個特殊的檔案,當你讀它的時候,它會提供無限的空字元 null,ascii nul,0x00 其中的乙個典型用法是用它提供的字元流來覆蓋資訊,另乙個常...

Linux系統程式設計

1.linux程序 守護程序 脫離終端的後台程序 2.linux程序 殭屍程序 3.linux 下程序通訊 其中setsockopt server sockfd,sol socket,so reuseaddr,on,sizeof on 因為每乙個連線都由本地位址和遠端位址的組合唯一確定,所以只要遠端...

Linux系統程式設計 Linux系統呼叫

linux 系統呼叫 庫函式 目錄 系統呼叫概述 系統呼叫的實現 系統呼叫和庫函式的區別 系統呼叫,顧名思義,說的是作業系統提供給使用者程式呼叫的一組 特殊 介面。使用者程式可以通過這組 特殊 介面來獲得作業系統核心提供的服務,比如使用者可以通過檔案系統相關的呼叫請求系統開啟檔案 關閉檔案或讀寫檔案...