![](https://img-blog.csdnimg.cn/20210425142531862.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
进程间通信
进程间通信
_洛_神
raise the rest of your life to meet you , Don't search for defining moments, Because they will never come. The moments that define you have already happened. And they will already happen again.I waited a long time out in the world,before I gave myselsf permission to fail.
展开
-
进程间的七种通信方式之-----(一)无名管道(pipe)
进程间的通信机制一、传统的进程间通信方式(1)无名管道(pipe) (2)有名管道(fifo) (3)信号(signal)二、System V IPC对象(1)共享内存(share memory) (2)消息队列(message queue) (3)信号量(semaphore)三、 BSD(1) 套接字(socket)...原创 2021-04-25 14:46:10 · 284 阅读 · 0 评论 -
进程间的七种通信方式之-----(二)有名管道(pipe)
命名管道(pipe)命名管道的属性:1)有名管道可以使互不相关的两个进程互相通信2)有名管道可以通过路径名来指出,并且在文件系统中可见,管道中的数据,在内核的内存3)进程通过文件IO来操作有名管道4)有名管道遵循先进先出规则5)不支持如lseek() 操作write.c#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#inclu原创 2021-04-26 14:07:42 · 372 阅读 · 0 评论 -
进程间的七种通信方式之-----(三)信号(signal)
信号(signal)信号是在软件层次上对中断机制的一种模拟,是一种异步通信方式信号可以直接进行用户空间进程和内核进程之间的交互,内核进程也可以利用它来通知用户空间进程发生了哪些系统事件信号的类型:2) SIGINT 默认处理:终止进程 物理按键:ctrl + c3) SIGQUIT 默认处理:终止进程 物理按键:ctrl + \9) SIGKILL 默认处理:终止进程10) SIGUSR1 默认处理:无 用户自定义12) SIGUSR2 默认处理:无原创 2021-04-26 14:15:16 · 473 阅读 · 0 评论 -
进程间的七种通信方式之-----(四)消息队列(message queue)
进程间的七种通信方式原创 2021-04-25 14:00:46 · 250 阅读 · 0 评论 -
进程间的七种通信方式之-----(五)共享内存(share memory)
进程间的7种通信方式 之(三)共享内存共享内存是一种最为高效的进程间通信方式,进程可以直接读写内存,而不需要任何数据的拷贝为了在多个进程间交换信息,内核专门留出了一块内存区,可以由需要访问的进程将其映射到自己的私有地址空间进程就可以直接读写这一内存区而不需要进行数据的拷贝,从而大大提高的效率。示例代码#include <stdio.h>#include <string.h>#include <stdlib.h>#include <unistd.h&g原创 2021-04-25 14:21:24 · 1055 阅读 · 0 评论 -
进程间的七种通信方式之-----(六)信号量( semophore )
进程间的七种通信方式之(六)信号量( semophore )信号量( semophore ) : 信号量是一个计数器,可以用来控制多个进程对共享资源的访问。它常作为一种锁机制,防止某进程正在访问共享资源时,其他进程也访问该资源。因此,主要作为进程间以及同一进程内不同线程之间的同步手段。#include <stdio.h>#include <string.h>#include <stdlib.h>#include <unistd.h>#include原创 2021-04-26 09:31:59 · 291 阅读 · 0 评论 -
进程间的七种通信方式之-----(七)套接字( socket )
套接字( socket )套接字( socket )也是一种进程间通信机制,与其他通信机制不同的是,它可用于不同机器间的进程通信。(1)服务器:server创建套接字 socket( )填充服务器网络信息结构体 sockaddr_in将套接字与服务器网络信息结构体绑定 bind( )将套接字设置为被动监听模式 listen( )阻塞等待客户端的连接请求 accept( )进行通信 recv( )/send( ) (read( )/write( ))#include <stdio.h原创 2021-04-26 11:52:05 · 1846 阅读 · 0 评论