- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统课程设计之消息函数的分析论文
摘 要
Linux是一种自由和开放源码的类Unix操作系统。目前存在着许多不同的Linux,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,从手机、平板电脑、路由器和视频游戏控制台,到台式计算机、大型机和超级计算机。
Linux采用消息队列的方式来实现消息传递。System V的消息队列(message queues)是进程之间互相发送消息的一种异步(asynchronously)方式,在这种情形之下,发送方不必等待接收方检查它的消息——即在发送完消息后,发送方就可以从事其它工作了——而接收方也不必一直等待消息。
新的消息总是放在队列的末尾,接收的时候并不总是从头来接收,可以从中间来接收。消息队列允许一个或多个进程写消息,一个或多个进程读取消息。Linux维护了一系列消息队列的msgque向量表。其中的每一个单元都指向一个msqid_ds的数据结构,完整描述这个消息队列。当创建消息队列的时候,从系统内存中分配一个新的msqid_ds的数据结构并插入到向量表中摘 要 1
1 课设简介 3
1.1课程设计题目 3
1.2课程设计小组成员 3
2 LINUX的消息函数主模块功能描述 3
3 LINUX的消息函数各个子模块功能描述 4
3.1 Msgget: 4
3.2 Msgsnd: 5
3.3 Msgrcv: 6
3.4 Msgctl: 7
4 LINUX的消息函数各个子模块相关函数代码分析结果 9
4.1有关常量、函数及相关错误信息的含义: 9
4.1.1 常量含义: 9
4.1.2 错误信息含义 9
4.1.3 相关函数及文件首部含义 9
4.2函数sys_msgget的分析 16
4.2.1 代码及注释 16
4.3发送消息函数real_msgsnd的分析 23
4.3.1 代码分析 23
4.4接收消息函数real_msgrcv的分析 28
4.4.1 代码及注释 28
4.5函数sys_msgctl的分析 33
4.5.1 代码及注释 33
心得体会 42
参考文献 43
1 课设简介
1.1课程设计题目
LINUX的消息函数的分析
1.2课程设计小组成员
Msgget:孙帅,分析消息队列的创建函数(sys_msgget)以及与它相关的函数newque、findkey、msg_init,写出代码分析结果,明确组内成员的明细分工,总体把握组内成员的进度。后期组织组内成员成果汇总进行本组总体报告撰写。王亚璇,画出流程图来表示相关函数之间的相互调用关系。魏蕾,负责查阅资料。
Msgsnd:张婷,分析消息的发送函数(real_msgsnd)以及与它相关的函数sys_msgsnd,写出代码分析结果。王鑫坤,画出流程图来表示相关函数之间的相互调用关系。闫瞳,张飞龙,负责查阅资料。
Msgrcv:樊德山,分析消息的接收函数(real_msgrcv)以及与它相关的函数sys_msgrcv,写出代码分析结果。赵松,画出流程图来表示相关函数之间的相互调用关系。鹿新宇,孙适,负责查阅资料。
Msgctl:刘晶,分析消息队列的控制sys_msgctl)以及与它相关的函数freeque,写出代码分析结果。鞠冰霜,画出流程图来表示相关函数之间的相互调用关系。刘航,负责查阅资料。
2 LINUX的消息函数主模块功能描述
Linux采用消息队列的方式来实现消息传递。System V的消息队列(message queues)是进程之间互相发送消息的一种异步(asynchronously)方式,在这种情形之下,发送方不必等待接收方检查它的消息——即在发送完消息后,发送方就可以从事其它工作了——而接收方也不必一直等待消息。
新的消息总是放在队列的末尾,接收的时候并不总是从头来接收,可以从中间来接收。消息队列允许一个或多个进程写消息,一个或多个进程读取消息。Linux维护了一系列消息队列的msgque向量表。其中的每一个单元都指向一个msqid_ds的数据结构,完整描述这个消息队列。当创建消息队列的时候,从系统内存中分配一个新的msqid_ds的数据结构并插入到向量表中每一个msqid_ds数据结构都包括一个ipc_perm的数据结构和进入这个队列的消息的指针。另外,Linux保留队列的改动时间,例如上次队列写的时间等。Msqid_ds队列也包括两个等待队列:一个用于向消息队列写,另一个用于读。 每一次一个进程试图向写队列写消息,它的有效用户和组的标识符就要和队列的 ipc_perm数据结构的模式比较。如果进程可以这个队列写,则消息会从进程的地
您可能关注的文档
- 办公楼设计 -.doc
- 基于单片机的数字温度计设计论文草稿.doc
- 办公室精装修分包工程施工组织设计论文.doc
- 自动化测控技术与仪器 基于pc平台的肿瘤辅助治疗系统.doc
- 办公室装饰工程施工组织设计2.doc
- 半导体直流稳压电源设计课程设计.doc
- 板塘生产安置大楼工程项目电气工程监理实施细则.doc
- bcb图形化工艺研究.doc
- 半球形件工艺及拉深模具设计.doc
- 半导体直流稳压电源设计论文课程设计论文.doc
- 2024年度党员干部民主生活会班子对照检查材料.docx
- 公司党委领导班子2024年度民主生活会对照检查材料4个带头方面.docx
- 市府办(政府办)领导班子2024年民主生活会会后综合情况报告.docx
- 在2025年市司法局信息宣传工作推进会上的讲话.docx
- 在2025年全省文化旅游高质量发展推进会上的讲话.docx
- 在2025年全区工业、住建大规模设备更新推进会上的讲话.docx
- 党支部2024年组织生活会民主评议党员情况总结报告_1.docx
- 2024年度组织生活会个人对照检查剖析材料.docx
- 镇党委书记2024年度民主生活会对照检查材料1.docx
- 党支部2024年组织生活会民主评议党员情况总结报告.docx
最近下载
- 小学二年级下册数学解决问题练习题.pdf VIP
- 2025年食品安全知识考试题库及答案.docx VIP
- 中职英语(高教版)基础模块一Unit6 Food and Drinks Listening and Speaking-优质教学课件PPT.pptx VIP
- 通过戏剧教育提升学生审美能力的研究教学研究课题报告.docx
- 年产运动鞋 400 万双项目环境影响报告表(2021年新版环评).pdf VIP
- 理光MPC3004 3504 4504 6004SP维修手册.pdf VIP
- 院感知识培训课件手卫生.pptx
- 居家用电安全知识ppt课件(完整内容).pptx VIP
- 2025年宜春职业技术学院单招职业适应性测试题库及一套完整答案.docx VIP
- 课题开题报告:新质生产力驱动下技能竞赛优化五育融合育人模式的实践研究.docx VIP
文档评论(0)