守护进程是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程是一种很有用的进程,Linux的大多服务器就是用守护进程实现的。守护进程的创建步骤:1.使进程在后台运行(创建子进程,父进程退出)if((pid=fork())>0)exi..
分类:
系统相关 时间:
2016-05-10 23:50:20
阅读次数:
322
1.Linux操作系统多用户2.shell命令行解释器使用者<——>核心解释型而不是编译型运行程序fork子进程execv函数簇替换用户指定程序wait进程结束3.vim、gcc/g++(编译时默认使用动态库)、gdb、make($foreach<var>,<list>,<text>)、catgs4.环境变量命令ech..
分类:
其他好文 时间:
2016-05-10 23:43:51
阅读次数:
238
1.关于SIGCHLD信号wait和waitpid函数清理僵尸进程,父进程可以阻塞等待子进程结束,也可以阻塞地查询是否有进程结束等待清理(也就是轮询的方式)。采用第一种方式,父进程阻塞就不能处理自己的工作了。采用第二种方式,父进程在处理自己的工作时还记得时不时轮询一下,程序实现..
分类:
其他好文 时间:
2016-05-07 16:50:36
阅读次数:
501
* child_process模块提供产生子进程的方法
* 当有CPU密集型的任务,为了不阻塞事件循环,
* 或者是执行一个外部命令可以,产生一个子进程,
* 让子进程执行这个任务...
分类:
Web程序 时间:
2016-05-07 11:10:50
阅读次数:
161
exec函数族的作用是根据指定的文件名找到可执行文件,并用它来取代调用进程的内容,主要是在fork()之后,它会诱导fork后的子进程另起炉灶,但是PID不变,自己开创一片新天地,清空原来的堆栈区、代码区和数据区,让新的可执行程序完全替代现有的资源。换句话说,就是在调用进程内部执行一个可执行文件,这里的可执行文件既可以是二进制文件,也可以是任何Linux下可执行的脚本文件。与一般情况不同,exec、、、...
分类:
其他好文 时间:
2016-05-07 10:48:00
阅读次数:
161
SIGCHID:子进程在终止时会给父进程发SIGCHLD信号,该信号的默认处理动作是忽略,父进程可以自定义SIGCHLD信号的处理函数,这样父进程只需专心处理自己的工作,不必关心子进程了,子进程终止时会通知父进程,父进程在信号处理函数中调用wait清理子进程即可。要想不产生僵尸进程还有另..
分类:
其他好文 时间:
2016-05-07 01:18:49
阅读次数:
169
关于perl的多进程,大家可能马上会想到Parallel::ForkManager这个模块。但是今天我们试着自己动手写一个类似的框架:) 该多进程开发模型从开源服务器框架Lighttpd发展而来,核心思路是父进程监控子进程的状态并负责回收,子进程负责任务的执行。当前预先可以设置子进程并发数目的上限值 ...
分类:
系统相关 时间:
2016-05-06 19:06:16
阅读次数:
263
apacheworker/prefork/application/apache/bin/apachectl-l|sed-n‘/worker\|prefork/p‘worker.cServerMPM:Worker./configure--with-mpm=worke//编译时指定,,默认是preforkprefork默认使用多个子进程,每个子进程只有一个线程效率高,稳定,安全,比worker消耗资源多vim/appli..
分类:
Web程序 时间:
2016-05-06 16:31:15
阅读次数:
190
惊群问题
惊群问题是由于系统中有多个进程在等待同一个资源,当资源可用的时候,系统会唤醒所有或部分处于休眠状态的进程去争抢资源,但是最终只会有一个进程能够成功的响应请求并获得资源,但在这个过程中由于系统要对全部的进程唤醒,导致了需要对这些进程进行不必要的切换,从而会产生系统资源的浪费。
这种情况一般是accept或epoll_create在子进程中处于监听状态,也就是先创建子进程或者子线程...
分类:
其他好文 时间:
2016-05-06 12:31:32
阅读次数:
297
1、fork + exec fork用来创建一个子进程。一个程序一调用fork函数,系统就为一个新的进程准备了前述三个段,首先,系统让新的进程与旧的进程使用同一个代码段,因为它们的程序还是相同的,对于数据段和堆栈段,系统则复制一份给新的进程,这样,父进程的所有数据都可以留给子进程,但是,子进程一旦开 ...
分类:
其他好文 时间:
2016-05-06 09:27:52
阅读次数:
1779