原创blog,转载请注明出处
头文件:
#include
#include
函数原型:
pid_t fork( void);
(pid_t 是一个宏定义,其实质是int 被定义在#include中)
返回值: 若成功调用一次则返回两个值,子进程返回0,父进程返回子进程ID;否则,出错返回-1
注意,子进程是父进程的副本,拷贝父进程的数据空间,堆栈等资源。父子进程不共享上述资源。...
分类:
系统相关 时间:
2014-10-06 13:02:40
阅读次数:
287
1.子进程是父进程的副本,获得父进程的数据空间/堆/栈,父子进程共享代码段.子进程从fork后开始执行,返回值=0表示子进程,因为子进程可以通过函数来获取父进程的ID,但是父进程无法知道子进程的ID.
2.为了提交效率,fork后,并不立刻复制父进程的空间,而是采取写时复制(COW)的技术,也就是父进程或者子进程要修改数据段/堆/栈的时候,才进行复制操作,并且复制修改的区域.
3.子进程从父进...
分类:
其他好文 时间:
2014-10-03 20:13:55
阅读次数:
151
起因:最近需要从hbase中向 ES中导一批数据,使用multiprocessing 启动多个程序同时向ES导数据,可以大大提高效率,因为导数的任务是可以按照时间分割的。
令我十分不解的,multiprocessing 是如何实现任务的分发,以及结果的回传的。我希望能够把它的实现机制与操作系统的进程机制对应起来。
经过阅读代码,得出的结论如下:
1. 父进程作为整个任务的分发器,每个worker是一个子进程
2. 子进程和父进程之间通过管道通讯,包括任务的分发和结果的回传(2个【管道】) ,管道通过【信号量...
分类:
其他好文 时间:
2014-10-03 13:57:04
阅读次数:
284
#include #include /*功能:复制进程參数:无返回值: 成功: 父进程:返回子进程id 子进程:返回0 失败: 返回-1*/pid_t fork(void); 由fork创建的新进程被称为子进程(child process)。该函数...
分类:
系统相关 时间:
2014-10-01 11:21:01
阅读次数:
219
如果子进程先于父进程退出, 同时父进程又没有调用wait/waitpid,则该子进程将成为僵尸进程。通过ps命令,我们可以看到该进程的状态为Z(表示僵死),...
分类:
其他好文 时间:
2014-09-29 01:08:27
阅读次数:
401
#include #include /*功能:复制进程參数:无返回值: 成功: 父进程:返回子进程id 子进程:返回0 失败: 返回-1*/pid_t fork(void); 由fork创建的新进程被称为子进程(child process)。该函数...
分类:
系统相关 时间:
2014-09-28 17:59:25
阅读次数:
249
嵌入式Linux应用程序开发详解华清远见本文只是阅读文摘。创建一个守护进程的步骤:1、创建一个子进程,然后退出父进程;2、在子进程中使用创建新会话---setsid();3、改变当前工作目录---chdir();4、重新设置文件权限掩码---umask();5、关闭所有的文件描述符---close(...
分类:
系统相关 时间:
2014-09-28 10:40:31
阅读次数:
285
??
1多进程并发服务器
使用多进程并发服务器时要考虑以下几点:
A.父最大文件描述个数(父进程中需要close关闭accept返回的新文件描述符)
B.系统内创建进程个数(和内存大小相关)
C.进程创建过多是否降低整体服务性能(进程调度)
2.案例说明
server.c,代码如下:
#include
#inclu...
分类:
其他好文 时间:
2014-09-28 01:16:00
阅读次数:
320
孤儿进程和僵尸进程
正常的子进程fork其父进程后,二者建立父子关系。
当子进程终结时,它会通知父进程,并清空自己所占据的内存,并在kernel里留下自己的退出信息(exit code,如果顺利运行,为0;如果有错误或异常状况,为>0的整数)。在这个信息里,会解释该进程为什么退出。父进程在得知子进程终结时,有责任对该子进程使用wait系统调用。这个wait函数能从ke...
分类:
系统相关 时间:
2014-09-26 10:59:58
阅读次数:
269
PHP中提供了一个扩展pcntl,可以利用操作系统的fork调用来实现多进程。fork调用后执行的代码将是并行的。注:pcntl仅支持linux平台,并且只能在cli模式下使用。$pid = pcntl_fork();if($pid > 0){//父进程代码exit(0);} elseif($pid...
分类:
编程语言 时间:
2014-09-25 19:15:57
阅读次数:
233