【操作系统】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(cmdi);

i++;

}

相关推荐
着迷不白7 小时前
八、shell脚本
linux·运维
诸葛思颖7 小时前
论文阅读笔记——Flow-of-Action
论文阅读·笔记
小蒋学算法7 小时前
算法-乘法表中第K小的数-二分
数据结构·算法
_李小白7 小时前
【android opencv学习笔记】Day 31:提取轮廓之Canny算法
android·opencv·学习
智者知已应修善业7 小时前
【51单片机8个LED,已经使用了D1D2,怎么样在不动D1D2的前提下实现D6~D8的流水灯】2024-1-19
c++·经验分享·笔记·算法·51单片机
零陵上将军_xdr7 小时前
后端转全栈学习-Day6-JavaScript 基础-4
前端·javascript·学习
爱装代码的小瓶子7 小时前
3. 设计buffer模块
linux·服务器·开发语言·c++·php
数智工坊7 小时前
周志华《Machine Learning》学习笔记--第十四章--概率图模型
笔记·学习·机器学习
流浪0017 小时前
Linux系统篇(四):一文吃透 Linux 虚拟地址空间:从页表映射到内核结构体全链路拆解
linux·运维·服务器
Jacob程序员7 小时前
WebSSH技术实现全解析
linux·运维·服务器·websocket