- 2
- 0
- 约 22页
- 2016-11-23 发布于海南
- 举报
第4章进程间通信
操作系统与实验 第4章2 第4章 进程间通信 3 4.4 Linux消息缓冲通信(消息队列)4.4.1 消息缓冲通信概述 1. Linux消息队列概述 消息队列满足IPC通信机制的通用规则:使用一个消息队列标识符(键值key,参考上节中的ipc_perm结构)来唯一标识一个消息队列,并依此检查访问权限。 通过多进程共享同一个消息队列实现。 消息队列本身是一个临界资源,需实现互斥操作。 2. Linux消息缓冲通信的数据结构 ⑴.消息缓冲区msgbuf 该数据结构用来存放需要发送或接收的消息类型和消息正文。 消息缓冲区msgbuf的结构在 /usr/src/linux-2.4/include/linux/msg.h文件中描述如下: /* message buffer for msgsnd and msgrcv calls */ struct msgbuf { long mtype; //消息类型,由用户约定 char mtext[1]; //消息正文 }; mtext[1]是消息正文,该域可由程序员定义为任意数据结构,但消息及消息队列的长度有限,其设置在系统配置时可以改变,其缺省值定义在 /usr/src/linux-2.4/include/linux/msg.h中: #define
原创力文档

文档评论(0)