线程的概念:线程是运行在进程内的一个基本执行流,和进程共享地址空间及资源(类似于父子进程共享地址空间),但每个也有自己的私有资源。进程强调独占性每个进程都有它独立的地址空间,包括TextSegment、DataSegment等线程强调共享性线程的共享资源:1.进程代码段2.进程的公..
分类:
编程语言 时间:
2016-04-17 23:26:02
阅读次数:
271
在一些对安全性要求较高的场景下。ssh的超时时间是管理员预先设置好的,在闲置一段时间后ssh连接会自己主动断开。这样的情况下假设通过ssh运行脚本,而脚本运行时间又比較长的话。会导致sshclient和server长时间无交互而超时,命令运行失败。 使用bash子进程能够解决这样的问题,思路是由子进 ...
分类:
系统相关 时间:
2016-04-17 14:32:26
阅读次数:
329
僵尸进程:在子进程未退出的情况下,父进程退出,子进程被init进程接管,但是子进程将不会正常退出,退出后也不会被收回该进程的资源,所以这种情况应该被避免,否则数量多了以后系统资源将被消耗完.为了避免这种情况可以是用vfork函数进行子进程的派生,或者在父进程中使用一下函数来等待子进程的退出: 头文件 ...
分类:
系统相关 时间:
2016-04-17 13:10:18
阅读次数:
166
#管道 #有名管道 #信号量 #信号 #共享内存 #消息队列 #套接字 # 管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。# 有名管道 (named pipe) : 有名管道也是半双工的通信方式,但是它允许 ...
分类:
系统相关 时间:
2016-04-17 11:30:37
阅读次数:
250
通过Linux启动过程可以得知,所有进程都是init进程直接或者间接的fork出来的. 首先咱们来看看怎么创建子进程: 头文件 #include <unistd.h> int fork(void); //创建一个子进程(开辟和父进程相同空间)返回值:-1失败,成功返回创建的子进程的Id int vf ...
分类:
系统相关 时间:
2016-04-17 11:28:17
阅读次数:
228
http://blog.csdn.net/piaoairy219/article/details/17333691 1. 管道 管道的优点是不需要加锁。 缺点是默认缓冲区太小,只有4K。 一个管道只适合单向通信,如果要双向通信需要建立两个。 只适合父子进程间通信,而且不适合多个子进程,因为消息会乱。 ...
分类:
其他好文 时间:
2016-04-17 10:12:39
阅读次数:
179
一、RDB 持久化 描述:会在指定的时间间隔内将内存中的数据集快照写入磁盘。 工作机制: Redis 调用 fork()。于是我们有了父子两个进程。 子进程开始将数据集写入一个临时 RDB 文件。 当子进程完成了新 RDB 文件,替换掉旧文件。 优点: RDB 文件适合用于备份,是一种表示某个即时点 ...
分类:
其他好文 时间:
2016-04-14 22:34:17
阅读次数:
275
1、管道(pipe)特点a>.通过pipe建立通信管道,fork创建子进程(传递文件描述符),且这种关系只能由父进程建立,局限于有血缘关系的进程间的通讯;b>.管道是文件,并且只存于内存中,当进程终结时,管道也消失;c>.管道只能是单向通信,一端输入,另一端输出;d>...
分类:
其他好文 时间:
2016-04-13 00:42:42
阅读次数:
170
使用管道需要注意的四种特殊情况第一种情况:如果所有指向管道写端的文件描述符都关闭后,还有进程在读的话,当管道所有内容读完后,再次read会返回0.运行结果:结果分析:我们在子进程里面写了10次,写完后关闭写,然后父进程读,读了10次之后当读第11次时候,read返回了0,证..
分类:
其他好文 时间:
2016-04-13 00:35:01
阅读次数:
163
标准I/O库提供了两个函数popen和pclose这两个函数,它们的功能是创建一个连接到另一个进程的管道,然后读其输出或向其输入端发送数据。先fork一个子进程,关闭未使用的管道端。popen()函数用创建管道的方式启动一个进程,并调用shell。因为管道是被定义成单向的,所以type参数只..
分类:
其他好文 时间:
2016-04-13 00:29:32
阅读次数:
772