![](https://img-blog.csdnimg.cn/20190918140213434.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Unix编程之进程间通信IPC
进程间通信IPC
粪逗er
努力的人运气不会差
展开
-
mmap共享内存
void *mmap(void *start, size_t length, int prot, int flags, int fd, off_t offset);百度百科:https://baike.baidu.com/item/mmap/1322217?fr=aladdinmmap的封装#include <unistd.h>#include <fcntl.h>...原创 2019-11-05 19:33:45 · 234 阅读 · 0 评论 -
进程间通信:匿名管道pipe
7.进程通信:pipe/fifo原创 2018-10-15 09:24:56 · 491 阅读 · 0 评论 -
进程间通信:有名管道fifo
有名管道fifo1.特点: 半双工 有名管道 在磁盘上有这样一个文件ls -l -&amp;gt;p 伪文件,在磁盘大小永远为0,数据实际上存放在内核中的缓冲区中2.使用场景 无血缘关系的进程间通信(两个不相干的进程)3.创建方式 1.命令:mkfifo 管道名 2.函数:int mkfifo(const char *pathname, mode_t mode);4.fifo...原创 2018-10-15 13:27:21 · 202 阅读 · 0 评论 -
进程间通信:mmap内存映射区
1.mmap—创建内存映射作用:将磁盘文件的数据映射到内存,用户通过[修改内存]就能修改磁盘文件函数原型: void *mmap( void *addr, //映射区首地址,传NULL size_t length, //映射区大小(一般指定为文件fd的大小) 非0 实际大小是4K的整数倍 int prot, //映射区权限 PORT_READ----...原创 2018-10-15 14:15:06 · 393 阅读 · 0 评论 -
进程间通信:mmap内存映射区
1.父子进程永远共享的东西文件描述符内存映射区2.使用mmap[父子]进程间通信父子进程通信,怎么找到同一个mmap内存映射区?答: 返回值ptr 文件描述符fdint main(){ ...原创 2018-10-15 14:44:16 · 273 阅读 · 0 评论 -
消息队列
1.消息队列是有类型的 与管道不同,消息队列中的数据是有[类型编号]的===&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;因此进程在通信的时,接收方可以接收指定[类型编号]的数据。管道消息队列流管道有边界流管道可以后进/先出2.消息大小的3大限制限制原创 2018-10-24 11:03:06 · 2586 阅读 · 0 评论 -
进程同步:信号量sem
1.信号量与PV操作1.互斥:P、V在同一个进程中同步:P、V在不同进程中2.信号量值含义 S&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;0:S表示可用资源的个数 S=0:表示无可用资源,无等待进程 S&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;0:|S|表示等待队列中进程个数3.信号量的数据结构struct semaphore{原创 2018-10-25 20:21:08 · 1551 阅读 · 0 评论 -
共享内存shm
1.最快的IPC通信方式 共享内存区是最快的IPC形式。一旦这样的内存映射到共享它的进程的地址空间,这些进程间数据传递不再涉及到内核,换句话说是进程不再通过执行进入内核的系统调用来传递彼此的数据。图:用管道或者消息队列传递数据图:用共享内存传递数据2.相关API[1]shmgetint shmget(key_t key, size_t size, int shmflg); ...原创 2018-10-25 19:09:20 · 1580 阅读 · 0 评论 -
进程同步:fcntl 文件记录锁
7.进程同步:借助 fcntl函数来实现锁机制原创 2018-10-28 11:51:19 · 363 阅读 · 0 评论 -
进程同步:互斥量
互斥量mutex进程间也可以使用互斥锁,来达到同步的目的。但应在pthread_mutex_init初始化之前,修改其属性为进程间共享。mutex的属性修改函数主要有以下几个。互斥锁APIpthread_mutexattr_t mattr 类型 //用于定义mutex锁的【属性】int pthread_mutexattr_init(pthread_mutexattr_tattr);...原创 2018-10-28 11:40:49 · 122 阅读 · 0 评论 -
key_t键和ftok函数
Centos7安装播放器(mplayer &amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp; vlc)https://www.jianshu.com/p/d6182626c64aCentOS7安装sogou输入法,简单有效https://blog.csdn.net/db_guy/article/details/79978631安装后,reboot,设置CENTOS下firefox看视频缺少flash插件https://bl.原创 2018-10-14 09:23:10 · 8395 阅读 · 1 评论