linux应用程序设计基础--进程控制编程

theme:进程控制编程

author:Jeff.Xue

contact information:contactmexkj@163.com


1.获取ID

#include <sys/type.h>
#include <unistd.h>

pid_t getpid(void);
pid_t getppid(void);

2.创建进程

#include <unistd.h>

pid _t fork(void);//代码共享,数据拷贝,父进程与子进程运行顺序不确定
pid_t vfork(void);//代码数据共享,子进程先执行,父进程后执行

3.exec函数族:exec启动一个新进程代替原有进程(替换代码)包括数据,因此PID不变

#include <unistd.h>

int execl(const char *path,const char *arg1,...)//path:被执行程序名(包含路径),eg:execl了("/bin/ls","ls","-al","/etc/passwd",(char*)0);

int execlp(const char *path,const char *arg1,...)//path不包含路径,从path环境变量里面查找

int execv(const char *path,char *const argv[])

int system(const char *string)//产生子进程执行string命令

4.进程等待

#include <sys/type.h>
#include <sys/wait.h>

pid_t wait(int *status);//阻塞进程,知道某个子进程退出,返回等待进程号



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值