Linux 中fork的执行的实例详解

 更新时间:2017年07月05日 11:21:00   作者:kenby  
这篇文章主要介绍了Linux 中fork的执行的实例详解的相关资料,需要的朋友可以参考下

Linux 中fork的执行的实例详解

先看看一段fork的程序

int main()
{
   pid_t pid;
 
   语句 a;   
   pid = fork();
   语句 b;
}

 1.当程序运行到 pid = fork()时,这个进程马上分裂(fork的中文意思)成两个进程,我们称为父进程和子进程,子进程是父进程的副本,副本的意思是子进程把父进程的数据空间,堆和栈都复制一遍给自己用,这要求在内存给子进程分配和父进程同样大的存储空间,这样,父,子进程拥有相同的数据,但不会共享存储空间,他们只是共享正文段。

2.apue2这样说fork的执行:fork函数被调用一次,但返回两次,两次返回的唯一区别是子进程的返回值是0,而父进程的返回值则是子进程的进程ID。一直很难理解调用一次,返回两次这句话,我想这样理解可能更好:fork函数被调用一次,但执行两次,父进程执行一次返回子进程的进程ID,子进程执行一次返回0.

3.fork完后,子进程和父进程继续执行fork调用之后的语句,是先执行父进程还是先执行子进程呢?apue2给出了答案:一般来说,在fork之后是父进程先执行还是子进程先执行是不确定的。这取决于所使用的调度算法。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • shell实现字符编码转换工具分享

    shell实现字符编码转换工具分享

    这篇文章主要介绍了shell实现的字符编码转换工具,支持UTF-8转GBK和GBK转UTF-8,需要的朋友可以参考下
    2014-03-03
  • linux下执行shell命令方法简介

    linux下执行shell命令方法简介

    本文给大家分享的是linux系统下执行shell命令的常用的2种方法,希望对初学shell命令的小伙伴能够有所帮助
    2016-12-12
  • linux仿写chmod命令

    linux仿写chmod命令

    这篇文章主要介绍了linux仿写chmod命令的方法,需要的朋友可以参考下
    2014-02-02
  • Linux Shell 脚本编程入门教程

    Linux Shell 脚本编程入门教程

    Linux的Shell种类众多,常见的有:Bourne Shell(/usr/bin/sh或/bin/sh)、Bourne Again Shell(/bin/bash)、C Shell(/usr/bin/csh)、K Shell(/usr/bin/ksh)、Shell for Root(/sbin/sh),Shell是用户与Linux操作系统沟通的桥梁,对本文感兴趣的朋友一起看看吧
    2015-11-11
  • 非常好的12道shell命令经典面试问题

    非常好的12道shell命令经典面试问题

    shell面试题总结了一些,让我们一起看一下吧,非常好的12道shell命令经典面试问题,需要的朋友可以参考下
    2018-02-02
  • Linux shell条件判断if中的-a到-z的意思【推荐】

    Linux shell条件判断if中的-a到-z的意思【推荐】

    这篇文章主要介绍了Linux shell条件判断if中的-a到-z的意思,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-08-08
  • linux 监视端口是否正常的shell脚本

    linux 监视端口是否正常的shell脚本

    linux 监视端口是否正常的shell脚本,需要的朋友可以参考下
    2013-01-01
  • mac使用Shell(终端)SSH连接远程服务器的方法

    mac使用Shell(终端)SSH连接远程服务器的方法

    这篇文章主要介绍了mac使用Shell(终端)SSH连接远程服务器的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Linux使用nohup命令在后台运行脚本

    Linux使用nohup命令在后台运行脚本

    在 Linux 或类 Unix 系统中,后台运行脚本是一项非常实用的技能,尤其适用于需要长时间运行的任务或服务,本文我们来看看如何使用nohup命令在后台运行脚本吧
    2025-01-01
  • shell脚本实现随机生成10个8位密码

    shell脚本实现随机生成10个8位密码

    这篇文章主要介绍了shell脚本实现随机生成10个8位密码的方法,这里推荐给大家,有需要的小伙伴的可以参考下。
    2015-03-03

最新评论