文章目录
- 1. 共享内存
-
- 1.1 共享内存分类
- 2. System V IPC密钥
- 3. System V 共享内存调用
-
- 3.1 shmget()
- 3.2 shmat()
- 3.3 shmdt()
- 3.4 shmctl()
- 4. 实战演练
-
- 4.1 服务端程序代码实现
- 4.2 客户端程序代码实现
1. 共享内存
共享内存是 Linux 和其他类 Unix 系统下可用的三种进程间通信 (IPC) 机制之一。另外两种 IPC 机制是消息队列和信号量。在共享内存的情况下,共享内存段由内核创建并映射到请求进程的地址空间的数据段。进程可以像使用其地址空间中的任何其他全局变量一样使用共享内存。
在管道、fifos、消息队列等进程间通信机制中,从一个进程向另一个进程发送数据所涉及的工作是这样的。进程P1进行