fork函数跟vfork函数一样能够创建进程,它们主要有两个区别

(1)区别一:

vfork直接使用父进程存储空间,不拷贝。

(2)区别二:

vfork保证子进程先运行,当子进程调用exit退出后,父进程才执行。

一直运行子进程

调用exit退出子进程

运行三秒后父进程开始运行

代码如下:

#include <stdio.h>
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <stdlib.h>

int main()
{
    pid_t pid;

int cnt = 0;
    
    pid = vfork();
        
    if(pid > 0)
    {
        while(1){
            printf("cnt=%d\n",cnt);
            printf("this is father precess, pid = %d\n",getpid());
            sleep(1);
        }    
    }
    
    else if(pid == 0){
        
        while(1){
            printf("this is chilid precess, pid = %d\n",getpid());
            sleep(1);
            cnt++;
            if(cnt == 3){
                exit(0);
                break;
            }
        }    
    }

return 0;
}

linux中fork函数与vfork函数的区别相关推荐

  1. 转:linux中fork()函数详解

    转:linux中fork()函数详解 https://blog.csdn.net/jason314/article/details/5640969 转载于:https://www.cnblogs.co ...

  2. Linux中fork()函数详解

    Linux中fork()函数详解 一.fork入门知识 一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事, ...

  3. fork()函数与vfork()函数的区别

    1.fork()函数与vfork()函数 头文件: #include <sys/types.h> #include <unistd.h> 函数原型: pid_t fork(vo ...

  4. Linux中fork的秘密

    linux中fork()函数详解 一.fork入门知识 一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事, ...

  5. 【linux】linux中fork()详解(实例讲解)|fork的运行机制

    目录 linux中fork()函数详解 从一道面试题谈linux下fork的运行机制 linux中fork()函数详解 原文:linux中fork()函数详解(原创!!实例讲解)_jason314的博 ...

  6. linux中export和source的作用和区别

    linux中export和source的作用和区别 2013-11-12 12:36 1039人阅读 评论(0) 收藏 举报 分类: linux(82) shell与export命令 用户登录到Lin ...

  7. linux中cat、more、less命令区别详解

    linux中cat.more.less命令区别详解 转自:https://blog.csdn.net/xyw_blog/article/details/16861681 众所周知linux中命令cat ...

  8. Linux中kil命令和pkill命令的区别

    Linux中kil命令和pkill命令的区别 kill命令格式: kill [参数][目标程序的端口号] 所以使用kill命令前需要使用ps命令查看目标程序的端口号: ps -ef | grep fi ...

  9. linux中fork()函数与vfork()函数的区别

    对于fork函数: 子进程只继承父进程的文件描述表,不继承但共享文件表项和i-node 父进程创建一个子进程之后,文件表项中的引用计数加1变为2,当父进程作close操作之后计数器减1,子进程还是可以 ...

最新文章

  1. python视窗版_Python GUI tkinter窗口视窗学习3
  2. robots.txt文件里面怎样屏蔽蜘蛛
  3. python必考面试题目
  4. 域渗透——Pass The Hash Pass The Key
  5. RTT移植STM32之创建进程
  6. 《知乎周刊:读书这件小事》摘记及书评
  7. ora-01033 解决方法
  8. 生成均匀分布次序统计量的伪随机数 生成删失伪随机样本
  9. Java简单猜数字游戏
  10. 电脑微信聊天记录删除后如何找回?三个简单方法
  11. IDEA 运行时出现 too long 异常
  12. 华为服务器批量BMC修改密码,华为服务器批量修改bmc地址
  13. memcpy函数优化及DMA对比
  14. 形式化方法(Formal Methods)
  15. 常熟理工学院计算机专业排名2015,2019年常熟理工学院优势专业排名及分数线
  16. 2017年 第8届 蓝桥杯 Java B组 省赛真题详解及总结
  17. 掌握RxJava的葵花宝典
  18. 项目中引入阿里巴巴矢量库(unicode)
  19. 嵌入式工程师学习第二天
  20. 声网再亏损,故事好讲但不好听

热门文章

  1. 中国三反手机市场趋势报告、技术动态创新及市场预测
  2. 女人不喜欢什么样的女人
  3. googlenet 和 VGG 比较
  4. 蔻驰和mk哪个更大牌_mk和coach哪个档次高 michael kors是不是比蔻驰贵?
  5. 模电学习01:半导体二极管
  6. 【经验】博客|使用 dotnet-cnblog 将Gitee图床的图片、本地的图片上传到博客园中
  7. OpenCV双边滤波bilateralFilter去除脸部雀斑
  8. 英雄联盟手游赛事非常火爆电竞从业者有何不同
  9. thrift 中的坑
  10. Ubuntu16.04+Gnome3 锁定屏幕快捷键无效解决办法