- 1
- 0
- 约 4页
- 2015-07-29 发布于河南
- 举报
Linux进程通信之消息队列
Linux继承了System V提供的3种进程间通信机制,它们是消息队列、信号量和共享内存。这3种进程间通信机制用于同一主机间两个进程信息的传递或同步。消息队列是消息的链式队列,就是把消息看作一个记录,并且这个记录具有特定的格式以及特定的优先级(用消息类型标示)。对消息队列有写权限的进程可以按照一定的规则添加新消息;对消息队列有读权限的进程则可以从消息队列中读出消息。
Linux用消息队列的方式实现进程间消息的传递。这种消息的发送方式是:发送方不必等待接收方检查它所收到的消息就可以继续工作下去,而接收方如果没有收到消息也不需等待。这种通信机制相对简单,但是应用程序使用起来就需要使用相对复杂的方式来应付了。新的消息总是放在队列的末尾,接收进程接收的时候并不总是从头来接收,可以从中间来接收,根据消息结构中的消息类型变量来确定接收的消息。
消息队列允许一个或多个进程向队列中写入消息,然后由一个或多个读进程读出。Linux系统维护一个消息队列的表,该表是msg_queue类型的结构体数组。数组中每个元素指向一个能完全描述消息队列的msqid_ds结构体。一旦一个新的消息队列被创建,则在系统内存中会为一个新的msqid_ds结构体分配空间并把它插入到msg_queue结构体数组中。
每个msqid_ ds结构体都包含ipc_penn类型的数据结构
您可能关注的文档
- 各国手机制式.doc
- 手机制式及其与不同运营商的对应关系.doc
- 简易乐器演奏器设计.doc
- EDA论文.doc
- 无线网络技术导论.doc
- 6000KW发电机孤网运行方案.doc
- 电子信息工程专业生产实习报告.doc
- 关于CDMA无线网络的一些基础知识.doc
- 生产部员工岗位职责.doc
- 跟单员生产流程补充.doc
- 2026年贵州省黔东南州中考一模英语试卷(含答案).docx
- 2026年贵州省黔东南州中考一模英语试卷(含答案).pdf
- 江苏省常州市2025年初中学业水平考试英语试题(含答案).pdf
- 山东省滨州市2025年中考英语试题(含答案).docx
- 山东省德州市2025年初中学业水平考试英语试题(含答案).docx
- 黑龙江省哈尔滨市2025年中考英语真题(含答案).docx
- 北京市西城区2026年中考一模英语试卷同类卷(含答案).docx
- 北京市西城区2026年中考一模英语试卷同类卷(含答案).pdf
- 四川省中江县凯江中学教育集团2026年九年级中考英语学情调研(一模)(含答案).pdf
- 湖南省浏阳市2023-2024学年高二下学期期末质量监测物理试卷(含答案).pdf
原创力文档

文档评论(0)