![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
IPC
文章平均质量分 75
CanuxCheng
Linux/Java/Python/Web
展开
-
IPC: 进程间通信
IPC的3种技术: 进程(线程)间传递消息的6种接口: 1.管道 2.消息队列 3.过程调用 进程(线程)间同步的6种接口: 1.信号量(两种) 2.互斥量 3.条件变量 4.读写锁 5.记录上锁 进程(线程)间共享内存的2种接口: 1.匿名共享内存 2.有名共享内存原创 2015-02-28 18:33:28 · 447 阅读 · 0 评论 -
IPC: 管道
管道(管道都是单向的半双工数据流) 管道分类: 1.无名管道:只能在具有共同祖先的进程间使用。 2.命令管道:可以在无论是否有亲缘关系的进程间使用,只能在同一主机上使用。 无名管道使用fcntl设置非阻塞模式, 有名管道可以使用open活fcntl设置非阻塞模式。 管道和fifo的限制: OPEN_MAX :一个进程在任意时刻打开的最大描述符数; PIPE_BUF :可原子的写往一个管道或fifo的最大数据量。原创 2015-02-28 18:44:33 · 391 阅读 · 0 评论 -
IPC: 消息队列
消息队列 消息队列分为: 1.posix消息队列:可以在同一主机上有亲缘关系或无亲缘关系的进程间使用。 2.system v消息队列:同上。 消息队列有随内核的持续性.原创 2015-02-28 18:45:41 · 274 阅读 · 0 评论 -
IPC: 过程调用
过程调用: 过程调用分为: 1.本地过程调用 2.远程过程调用(RPC) 远程过程调用有两种接口: 1.单台主机上的远程过程调用(solaris门) 2.主机间的远程过程调用(Sun RPC)原创 2015-02-28 18:47:33 · 1090 阅读 · 0 评论 -
IPC: 信号量
信号量 信号量:在多线程环境下,用来保证多个关键代码不被并发调用,一次只能有个一个线程访问关键代码。 信号量有两组函数接口: 1.posix信号量 2.system v信号量 信号量的两种形式: 1.二进制信号量:用来保护一段代码,使其每次只能被一个执行线程运行,初始值一般为1. 2.计数信号量:有限数目的线程执行一段指定的代码,初始值一般大于1.原创 2015-02-28 18:48:33 · 334 阅读 · 0 评论 -
IPC: 共享内存
共享内存区 共享内存是IPC形式中最快的,因为共享内存不和内核进行数据交换。 通过fork派生的子进程不与父进程共享内存区。 共享内存区分为: 1.posix共享内存区 2.system V共享内存区 共享内存有两种形式: 1.匿名共享内存 2.有名共享内存原创 2015-02-28 18:50:56 · 296 阅读 · 0 评论 -
IPC: 同步
进程/线程 同步.(posix) 互斥锁 条件变量 读写锁 记录上锁原创 2015-02-28 18:52:29 · 507 阅读 · 0 评论