1、 了解系統(tǒng)調(diào)用fork()、EXECL()、exit()、getpid()和waitpid()的功能和實(shí)現(xiàn)過程
2、 編寫一段程序?qū)崿F(xiàn)以下功能:
a) 使用系統(tǒng)調(diào)用fork()創(chuàng)建兩個子進(jìn)程
b) 父進(jìn)程重復(fù)顯示字符串”parent:”,并使用函數(shù)getpid()顯示自己的進(jìn)程ID。
c) 兩個子進(jìn)程分別重復(fù)顯示字符串”child:”,并使用函數(shù)getpid()顯示自己的進(jìn)程ID
3、 編寫一段程序?qū)崿F(xiàn)以下功能:
a) 使用系統(tǒng)調(diào)用fork()創(chuàng)建一個子進(jìn)程
b) 子進(jìn)程顯示自己的進(jìn)程ID和字符串": The child is calling an exec.\n",然后通過EXECL()調(diào)用系統(tǒng)命令ps顯示當(dāng)前運(yùn)行的進(jìn)程情況,從而更換自己的執(zhí)行代碼,最后調(diào)用exit()結(jié)束。
c) 父進(jìn)程顯示自己的進(jìn)程ID和字符串” ": The parent is waiting for child to exit.\n ",然后調(diào)用waitpid()等待子進(jìn)程結(jié)束,并在子進(jìn)程結(jié)束后顯示”The parent exit.\n