1、无名管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。 2、有名管道 (named pipe) : 有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。 3、高级管道:将另一个程序当作一个新的进 ...
分类:
系统相关 时间:
2016-08-08 18:58:52
阅读次数:
262
为何要fork()两次来避免产生僵尸进程? 当我们只fork()一次后,存在父进程和子进程。这时有两种方法来避免产生僵尸进程: 父进程调用waitpid()等函数来接收子进程退出状态。 父进程先结束,子进程则自动托管到Init进程(pid = 1)。 目前先考虑子进程先于父进程结束的情况: 若父进程 ...
分类:
系统相关 时间:
2016-08-08 18:58:35
阅读次数:
157
环境变量 Shell进程的环境变量,可以从当前进程传给fork出来的子进程,用printenv命令显示当前进程的环境变量。 。。。 本地变量 只存在与当前Shell进程,set命令可以显示当前Shell进程中定义的所有变量和函数 定义变量、定义和导出环境变量 export VARNAME=value ...
分类:
系统相关 时间:
2016-08-08 00:37:43
阅读次数:
186
一、多线程 1、操作系统有两个容易混淆的概念,进程和线程。 进程:一个计算机程序的运行实例,包含了需要执行的指令;有自己的独立地址空间,包含程序内容和数据;不同进程的地址空间是互相隔离的;进程拥有各种资源和状态信息,包括打开的文件、子进程和信号处理。 线程:表示程序的执行流程,是CPU调度执行的基本 ...
分类:
编程语言 时间:
2016-08-07 16:55:50
阅读次数:
402
《大纲》
Linux系统编程
进程资源上限
进程环境变量
进程获取/修改环境变量
创建子进程fork()
最大进程数测试
程序的设置用户ID/组ID/黏住位
exec簇函数,执行程序覆盖堆栈
fork与execl函数在一起
exec()与主程序同一个PCB
僵尸进程
wait()回收僵尸进程
证明:父子..
分类:
系统相关 时间:
2016-08-06 07:08:52
阅读次数:
484
问题:之前执行mv命令的时候,经常会自动退出,两边都有空间,而且也没有移动完成,这是因为在后台执行的时候,其实是把他放到了队列里边执行,当父进程死掉的时候,默认会给子进程一个信号,子进程就会自动杀死。后来采用了如下三种办法解决了这个问题方法一:[root@pythion~]..
分类:
系统相关 时间:
2016-08-05 12:04:34
阅读次数:
364
进程是程序运行的实体,进程下还有子进程(线程)。 进程统计 开启进程统计,须先准备好accton记录的文件 touch /var/log/pacct #创建记录所用的文件 accton /var/log/pacct #激活accton accton #关闭accton lastcomm -f /va ...
分类:
系统相关 时间:
2016-07-31 19:02:31
阅读次数:
276
表头文件 定义函数 函数说明 popen()会调用fork()产生子进程,然后从子进程中调用/bin/sh -c来执行参数command的指令。参数type可使用“r”代表读取,“w”代表写入。依照此type值,popen()会建立管道连到子进程的标准输出设备或标准输入设备,然后返回一个文件指针。随 ...
分类:
系统相关 时间:
2016-07-31 01:47:15
阅读次数:
312
PHP慢执行日志slowlog=/usr/local/php-fpm/var/log/slow.logrequest_slowlog_timeout=1vim/usr/local/php/etc/php-fpm.conf/usr/local/nginx_php/sbin/php-fpm-t定义open_basedir/usr/local/nginx_php/sbin/php-fpm-t动态、静态子进程pm=static/dynamic如果选择static,则由pm...
分类:
Web程序 时间:
2016-07-30 22:49:04
阅读次数:
438
一、子进程 已安装 pre-removal 脚本 返回了错误号 1或2 解决办法: sudo gedit /var/lib/dpkg/status 找到Package: <package name>,比如Package: vsftpd 删除这部分的描述,删到下个Package: XXX前就好。存档后 ...
分类:
系统相关 时间:
2016-07-25 10:34:27
阅读次数:
224