0
点赞
收藏
分享

微信扫一扫

Linux系统API与库函数-3.进程控制

潇湘落木life 2022-02-13 阅读 69
linuxc语言

3. 进程控制

3.1 环境变量

3.1.1 获取环境变量getenv()

参数说明
name环境变量
return成功:环境变量的值
失败:NULL

3.1.2 修改或添加环境变量setenv()

参数说明
name环境变量名
value变量值
overwrite当环境变量存在时
0:不重写
非0:重写
return成功:0
失败:-1,并设置errno

3.1.3 删除环境变量unsetenv()

参数说明
name环境变量名
return成功:0
失败:-1,并设置errno

3.2创建子进程fork()

参数说明
return成功:子进程:0;父进程:子进程PID
失败:-1,并设置errno

3.3 获得当前进程PIDgetpid()

参数说明
return返回当前进程的PID

3.4 获得父进程PIDgetppid()

参数说明
return返回父进程的PID

示例:

#include <stdio.h>
#include <unistd.h>

int main(int argc, char* argv[])
{
	printf("Begin...\n");
	pid_t pid = fork();
	if(pid < 0)
	{
		perror("fork error:");
		return -1;
	}
	if(pid == 0)
		printf("This is child process, PID = %d, PPID = %d\n", getpid(), getppid());
	if(pid > 0)
		printf("This is parent process, pid = %d, PID = %d, PPID = %d\n", pid, getpid(), getppid());
	printf("End...\n");
	return 0;
}

3.5 执行一个文件execl()

参数说明
pathname可执行文件路径
arg
return成功:不返回
失败:-1,并设置errno

3.5 执行一个文件execlp()

参数说明
file可执行文件路径
arg
return成功:不返回
失败:-1,并设置errno
举报

相关推荐

0 条评论