文档章节

进程小程序

PGSmith
 PGSmith
发布于 2015/08/27 11:05
字数 214
阅读 70
收藏 3

首先是源码:

#include <stdio.h>  
#include <unistd.h>  
int main(int argc, char* argv[])  
{  
   fork();
   fork() && fork() || fork();
   fork();
   return 0;
}
问能生成多少个进程?

答:20个。

现在来分析一下这个函数:

1、第一个fork和最后一个fork都会被执行,这就会产生4个进程。

2、第3-5个fork,根据运算优先级,可以分为以下5种情况(暂时根据顺序将这三个fork命名为A、B、C):

    1)、A>0, B>0,这时不会运行C。
    2)、A=0, 这时不会运行B, C>0 
    3)、A=0, 这时不会运行B, C=0
    4)、A>0, B=0, C>0
    5)、A>0, B=0, C=0

3、5 * 4 = 20

所以会生成20个进程包括自己的main进程。

© 著作权归作者所有

PGSmith

PGSmith

粉丝 95
博文 57
码字总数 68809
作品 0
济南
后端工程师
私信 提问
程序、进程、线程区别与联系

定义: 一程序只是一组指令的有序集合, 二进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位; 三线程是进程的一个实体,是CPU调度和...

sharep
2013/07/23
0
0
Android程序生命周期

软件生命周期和Android程序生命周期 软件生命周期:软件的产生直到报废或停止使用的生命周期。 Android生命周期:从程序启动到程序终止的全过程。 Android程序不能控制自身的生命周期 Androi...

iBazinga
2016/11/11
29
0
linux程序设计之线程、进程和程序的简单比较

线程,进程和程序的简单比较 我对于线程,进程的概念一直都是比较模糊,最近整理了一下。总结起来就是,线程是进程的一部分,进程是程序的一部分。 线程的引入:例如,有一个Web服务器要进程...

捕风的xiao_k
2018/06/26
0
0
进程/线程模型

一、进程的基本概念 1.1 多道程序设计 基本思想是允许多个程序同时进入内存并运行,提高的利用率,其目的是为了提高系统效率。 说明:在第一幅图中在内存中有四个程序,这四个程序是串行执行...

芥末无疆sss
2017/12/29
0
0
关于进程和线程以及句柄

说法一:进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能...

长平狐
2013/01/06
83
0

没有更多内容

加载失败,请刷新页面

加载更多

关于运维,该怎么决定它的方向,这个似工作又似兴趣的存在

我之前主要从事网络、桌面、机房管理等相关工作,这些工作使我迷惘,这应该是大多数运维人都经历过的过程; 18年国庆,我从国内前三的消费金融公司裸辞,下海创业,就是想要摆脱这样的困境。...

网络小虾米
9分钟前
2
0
Java Timer的用法

Timer timer = new Timer(); timer.schedule(new TimerTask() { public void run() { System.out.println("11232"); } }, 200000 , 1000); public void schedule(TimerTask task, long delay......

林词
12分钟前
3
0
使用js动态加载外部js文件以及动态创建script脚本

动态脚本指的是在页面加载时不存在,但将来的某一时刻通过修改该DOM动态添加的脚本。和操作HTML元素一样,创建动态脚本也有两种方式:插入外部文件和直接插入JavaScript代码。 动态加载外的外...

Bing309
20分钟前
2
0
从零开始入门 K8s | Kubernetes 网络概念及策略控制

作者 | 阿里巴巴高级技术专家 叶磊 一、Kubernetes 基本网络模型 本文来介绍一下 Kubernetes 对网络模型的一些想法。大家知道 Kubernetes 对于网络具体实现方案,没有什么限制,也没有给出特...

阿里巴巴云原生
24分钟前
2
0
天气获取

本文转载于:专业的前端网站➨天气获取 $.get("http://wthrcdn.etouch.cn/WeatherApi", { citykey: cityCode }, function (d) { //创建文档对象 var parser = new ......

前端老手
24分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部