【操作系统】Linux之进程管理二

第1关:进程等待

if(wait(&status) != -1)

{

if(WIFEXITED(status))

status = WEXITSTATUS(status);

else

status = -1;

}

else

{

status = -1;

}

第2关:进程创建操作-exec函数族

void execlProcess()

{

pid_t pid = vfork();

if(pid == -1)

{

printf("创建子进程失败(%s)\n", strerror(errno));

return -1;

}

else if(pid == 0)

{

//子进程

/********** BEGIN **********/

if(execle("touch","touch","testDir",NULL)<0)

{

exit(-1);

}

/********** END **********/

}

else

{

//父进程

/********** BEGIN **********/

printf("Parent Process");

/********** END **********/

}

}

第3关:进程创建操作-system

int test=system("mkdir testDir");

if(test==1)

{

return test;

}

第4关:实现一个简单的命令解析器

int i=0;

while(i<commandNum)

{

system(cmd[i]);

i++;

}

相关推荐
Trouvaille ~几秒前
【Linux】UDP Socket编程实战(二):网络字典与回调设计
linux·运维·服务器·网络·c++·udp·操作系统
凉、介7 分钟前
静态路由探究
网络·笔记·操作系统·嵌入式
niceffking10 分钟前
linux系统编程-线程概述
linux·运维
Bdygsl14 分钟前
Linux(12)—— 文件与文件描述符
linux·运维·服务器
云小逸16 分钟前
【nmap源码学习】 Nmap 源码深度解析:nmap_main 函数详解与 NSE 脚本引擎原理
网络协议·学习·安全
前端玖耀里17 分钟前
Linux C/C++ 中系统调用与库函数调用的区别
linux·c语言·c++
艾莉丝努力练剑17 分钟前
【Linux:文件】基础IO:文件操作的系统调用和库函数各个接口汇总及代码演示
linux·运维·服务器·c++·人工智能·centos·io
松涛和鸣21 分钟前
70、IMX6ULL LED驱动实战
linux·数据库·驱动开发·postgresql·sqlserver
hssfscv22 分钟前
Javaweb学习笔记——后端实战8 springboot原理
笔记·后端·学习
苍煜28 分钟前
超简单 poi-tl 学习博客:从0到1掌握Word生成(无需模板+模板填充)
学习·word