![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux 进程系统编程
文章平均质量分 60
点灯小哥
这个作者很懒,什么都没留下…
展开
-
进程(五)system函数 popen函数
一、system函数system()函数的返回值如下:成功,则返回进程的状态值;当sh不能执行时,返回127;失败返回-1;为了更好的理解system()函数返回值,需要了解其执行过程,实际上system()函数执行了三步操作:1.fork一个子进程;2.在子进程中调用exec函数去执行command;3.在父进程中调用wait去等待子进程结束。 对于fork失败,system()函数返回-1。 如果exec执行成功,也即command顺利执行完毕,则返回command通过e.原创 2021-03-20 20:53:08 · 644 阅读 · 0 评论 -
进程(四)exec函数
一、为什么要用exec族函数,有什么用(1)一个父进程希望复制自己,使父、子进程同时执行不同的代码段。这在网络服务进程种是常见的——父进程等待客户端的服务请求。当这种请求到达时,父进程调用fork,使子进程处理此请求。父进程则继续等待下一个服务请求到达。(2)一个进程要执行一个不同的程序。这对shell是常见的情况。在这种情况下,子进程从fork返回后立即调用exec二、exec族函数函数的作用:我们用fork函数创建新进程后,经常会在新进程中调用exec函数去执行另外一个程序。.原创 2021-03-20 20:07:46 · 3562 阅读 · 0 评论 -
进程(三)vfork函数 僵尸 孤儿
1.vfork创建进程vfork函数 也可以创建进程,与fork有什么区别关键区别一:vfork直接使用父进程存储空间,不拷贝。关键区别二:vfork保证子进程先运行,当子进程调用exit退出后,父进程才执行。如果使用fork调用 while(1)死循环 让父子进程一直争夺cpu资源 有可能一人一次 也有可能是一个人一直争到vforktest9.c#include <stdio.h>#include <sys/types.h>#includ.原创 2021-03-20 16:49:55 · 229 阅读 · 0 评论 -
进程(二)fork函数
使用fork函数创建一个进程pid_t fork(void);fork函数调用成功,返回两次返回值为0, 代表当前进程是子进程返回值非负数, 代表当前进程为父进程调用失败,返回-1原创 2021-03-20 13:01:57 · 334 阅读 · 0 评论 -
进程(一)进程概念
问1.什么是程序,什么是进程,有什么区别?答1:程序是静态的概念,gcc xxx.c -o pro 磁盘中生成的pro文件,叫做程序进程是程序的一次运行活动,通俗点意思是程序跑起来了,系统中就多了一个进程问2.如何查看系统中有哪些进程?a.使用ps指令查看实际工作中,配合grep来查找层序中是否存在某一个进程 ps -aux显示全部进程 ps -aux|grep 想要的进程名 (其实就是把ps -aux显示全部进程 放进一个管道里再用grep去过滤 找到 想要的进程名) .原创 2021-03-17 21:38:35 · 128 阅读 · 0 评论