进程间通信(inter process communication) IPC学习笔记

这篇博客介绍了进程间通信(IPC)的三种主要机制:共享内存、信号灯数组和消息队列,重点讨论它们在解决并发进程同步与互斥问题中的应用。通过ipcs命令查看和ipcrm命令删除这些IPC对象,并提到了系统中相关的文件路径,如/proc/sysvipc目录下的shm、sem和msg。
摘要由CSDN通过智能技术生成

利用进程间通信IPC中的三个对象:共享内存信号灯数组消息队列,解决并发进程同步互斥的问题

  • 共享内存是 OS 内核为并发进程间交换数据而提供的一块内存区(段)。如果段
    的权限设置恰当,每个要访问该段内存的进程都可以把它映射到自己私有的地址空
    间中。如果一进程更新了段中数据,那么其他进程立即会看到这一更新。进程创建
    的段也可由另一进程读写。  (ipcs -m)
  • 信号灯数组是 OS 内核控制并发进程间共享资源的一种进程同步与互斥机制。   (ipcs -s)
  • 消息队列是 OS 内核控制并发进程间共享资源的另一种进程同步机制。   (ipcs -q)

 在权限允许的情况下您可以使用 ipcrm 命令删除系统当前存在的 IPC 对象中的任一个对象。

ipcrm -m 21482
 删除标号为 21482 的共享内存。
ipcrm -s 32673
 删除标号为 32673 的信号灯数组。
ipcrm -q 18465
 删除标号为 18465 的消息队列。
在 linux 的 proc 文件系统中有 3 个虚拟文件动态记录了由以上 ipcs 命令显示的
当前 IPC 对象的信息,它们分别是:
  • /proc/sysvipc/shm 共享内存
  • /proc/sysvipc/sem 信号量
  • /proc/sysvipc/msg 消息队列<
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值