gdp调试和exec函数族以及wait函数的使用方式

gdb调试:

            设置父进程调试路径:set follow-fork-mode parent

            设置子进程调试路径:set follow-fork-mode child

exec函数族:

        使用进程执行某一程序。成功无返回值,失败返回-1

        int execlp(const char *file,const char *arg, ...);    借助PATH环境变量找寻待执行程序

  • 参数1:    程序名

  • 参数1:    程序名

  • 参数1:    程序名

  • ........:        argv

  • 哨兵:      NULL

         int execl(const char *file,const char *arg, ...);     自己指定待执行程序路径。

孤儿进程:

        父进程先于子进程终止,子进程沦为“孤儿进程”,会被init进程领养。

僵尸进程:

        子进程终止,父进程尚未对子进程进行回收,在此期间,子进程为“僵尸进程”。

 

wait函数:            回收子进程退出资源

  • 函数作用1:  阻塞等待子进程退出

  • 函数作用2:  清理子进程残留在内核的pcb资源

  • 函数作用3:   通过传出参数,得到子进程结束状态

获取子进程正常终止:

        WIFEXITED(status)--》为真--》调用WEXITSTATUS(status)--》得到子进程 退出值

获取导致子进程异常终止信号:

        WIFSIGNALED(status)---》为真---》调用 WTERMSIC(status)--》得到 导致子进程异常终止的信号编号。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黑马金牌编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值