进程通信
文章平均质量分 82
y695385603
这个作者很懒,什么都没留下…
展开
-
有名管道FIFO
一、函数原型 #include #include int mkfifo( const char * filename, mode_t mode ); 功能:创建有名管道FIFO 参数: filename:指定新创建FIFO的文件名称(包含路径名) mode:指定FIFO的读写权限,和 op原创 2013-10-26 14:19:36 · 1129 阅读 · 0 评论 -
信号
一、信号概念信号机制是进程之间相互传递消息的一种方法,信号全称为软中断信号,也有人称作软中断。从它的命名可以看出,它的实质和使用很象中断。 信号是进程间通信机制中唯一的异步通信机制。可以看做是异步通知。信号经过Posix扩展后,功能更加强大,除了基本通知功能外,还可以传递附加消息。可靠信号与不可靠信号, 实时信号与非实时信号:原创 2013-10-26 14:24:38 · 798 阅读 · 0 评论 -
消息队列(System V)
一、消息队列概念消息队列的基本概念消息队列 (也叫做报文队列)是UNIX系统V版本中3种进程间通信机制之一。另外两种是信号灯和共享内存。这些IPC机制使用共同的授权方法。只有通过系统调用将标志符传递给核心之后,进程才能存取这些资源。这种系统IPC对象使用的控制方法和文件系统非常类似。使用对象的引用标志符作为资源表中的索引。 消息队列就是一个消息的链表。就是把消原创 2013-10-26 14:32:44 · 993 阅读 · 0 评论 -
信号集
一、信号集在实际的应用中一个应用程序需要对多个信号进行处理,为了方便,linux系统引进了信号集的概念。信号集用多个信号组成的数据类型sigset_t.可用以下的系统调用设置信号集中所包含的数据。typedef struct{ unsigned long int __val[_SIGSET_NWORDS];}sigset_t;原创 2013-10-26 14:23:08 · 766 阅读 · 0 评论 -
信号量(System V)
一、信号量概念信号量集和信号量一样,都是为了控制多个进程对共享资源的同步访问而引入的同步对象;System V IPC中规定:不能只单独定义一个信号量,而是只能定义一个信号量的集合,即:信号量集,其中包含一组信号量,同一信号量集中的多个信号量使用同一个唯一的ID来引用,这样做的目的是为了对多个共享资源进行同步控制的需要;对信号量的一些限制:原创 2013-10-26 14:27:53 · 1137 阅读 · 0 评论 -
无名管道
一、函数原型 #include int pipe(int fd[2])功能:创建无名管道参数: 由参数fd返回两个文件描述符,fd[0]为读而打开,fd[1]为写而打开返回值 :成功 0 失败 -1二、管道特性无名管道又被称为pipe,是进程间通信的一种方式。pipe具有以下特点:原创 2013-10-26 14:32:07 · 1128 阅读 · 0 评论 -
共享内存(System V)
一、共享内存共享内存是由IPC为一个进程所创建并且出现在这个进程的地址空间中的一段特殊的地址序列。其他的进程可以将同样的共享内存段关联到他们自己的地址空间中。所有的进程都可以访问这段内存地址。如果一个进程写入共享内存,这些改变立即就可以为访问相同共享内存的其他进程所见。在/proc/sys/kernel/目录下,记录着共享内存的一些限制,如一 个共享内存区的最大字节数shmma原创 2013-10-26 14:26:08 · 1183 阅读 · 0 评论