【操作系统】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++;

}

相关推荐
TracyCoder1233 分钟前
LeetCode Hot100(51/100)——155. 最小栈
数据结构·算法·leetcode
dalong109 分钟前
A24:圈住小猫游戏
笔记·算法·游戏·aardio
学编程的闹钟14 分钟前
C语言GetLastError函数
c语言·开发语言·学习
山岚的运维笔记20 分钟前
SQL Server笔记 -- 第34章:cross apply
服务器·前端·数据库·笔记·sql·microsoft·sqlserver
nxbsc_wanglc40 分钟前
Linux安装redis
linux·运维·redis
Ffe142 分钟前
Linux提权四:Capability能力&LD_Preload加载
linux·提权·笔记总结
looking_for__43 分钟前
【Linux】传输层协议UDP和TCP
linux·运维·tcp/ip·udp
好好学习天天向上~~1 小时前
8_Linux学习总结_进程
linux·运维·学习
shentuyu木木木(森)1 小时前
单调队列 & 单调栈
数据结构·c++·算法·单调栈·单调队列
知识分享小能手1 小时前
SQL Server 2019入门学习教程,从入门到精通,Transact-SQL数据的更新 —语法详解与实战案例(SQL Server 2019)(10)
数据库·学习·sqlserver