全球旧事资料 分类
上机三:Li
ux进程控制
1目的
(1)掌握系统调用forkexexexit等实现进程创建;(2)掌握进程的终止方式(retur
、exit、_exit、abort);(3)掌握僵尸进程的产生和避免,以及waitwaitpid的使用;(4)了解守护进程的创建。
2内容
主要上机分析代码文件。systemtestc63c64c68c69c其他略。
3步骤1)Li
ux进程的创建
创建进程可以采用几种方式。可以执行一个程序(这会导致新进程的创建),也可以在程序内调用一个fork或exec来创建新进程。fork调用会导致创建一个子进程,而exec调用则会用新程序代替当前进程上下文。exec系列函数并不创建新进程,调用exec前后的进程ID是相同的。
exec系列函数如下。i
cludeu
istdh
i
texecvco
stcharpathcharco
stargv;
i
texecveco
stcharpathcharco
stargvcharco
ste
vp
i
texecvpco
stcharfilecharco
stargv
i
texeclco
stcharpathco
stchararg
1
f。
i
texecleco
stcharpathco
stcharargi
texeclpco
stcharfileco
stchararg
exec函数的主要工作是清除父进程的可执行代码映像,用新程序的代码覆盖调用exec的进程代码。如果exec执行成功,进程将从新程序的mai
函数入口开始执行。调用exec后,除进程ID保持不变外,还有下列进程属性也保持不变。
1进程的父进程ID。2实际用户ID和实际用户组ID。3进程组ID、会话ID和控制终端。4定时器的剩余时间。5当前工作目录及根目录。6文件创建掩码UMASK。7进程的信号掩码。与exec系统调用不同,system将外部可执行程序加载执行完毕后继续返回调用进程。system的返回值就是被加载的程序的返回值。systemtestcfortestSystem调用system创建进程i
cludestdiohi
cludestdlibhvoidmai
调用system执行“lsl”,并输出system的返回值pri
tf
好听全球资料 返回顶部