μCOS原理与实践5解决方案.ppt

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.2.6删除消息队列 当消息队列不再使用了,就应该尽快归还给系统,即将消息占用的ECB归还给ECB空闲链表以备它用,将QCB也归还给空闲QCB链表。 删除消息队列的函数的名称为OSQDel,参数是ECB的指针、删除操作的选项opt和返回函数执行信息的指针的perr。 其中opt的值为 OS_DEL_NO_PEND 表示只有当没有任务等待该消息队列的时候才允许删除,opt的值为OS_DEL_ALWAYS 表示无论如何都删除。 如果成功删除,返回空指针;否则返回ECB的指针。 表5.17消息队列删除函数OSQDel解析 1.首先进行参数的检查。 2. 根据选项opt决定程序的分支 3. 如果opt不是这两个值当中的一个,那就是说明是错误的选项,也属于参数检查失败。因此,标记错误信息perr为OS_ERR_INVALID_OPT后,直接返回原来ECB指针pevent。 5.2.7取得消息队列的状态 消息队列数据OS_Q_DATA是为返回消息队列信息而提供的,因此用户程序如果想了解消息队列的信息,要先创建OS_Q_DATA的实例。然后以消息队列所在ECB地址及该实例的地址为指针为参数调用获取消息队列的状态函数OSQQuery 表5.19获取消息队列的状态函数OSQQuery解析 5.2.8消息队列应用举例 假设有任务TaskQSen和TaskQRec, TaskQSen在时间片1创建一个消息队列,然后每秒向消息队列中发邮件,其余时间延时。TaskQRec每2秒从消息队列中取邮件,然后延时。 表5.20消息邮箱的例子 习题 1. 比较消息管理和信号量管理,指出他们的区别和共同点。 2. 消息队列管理使用了哪些数据结构,请描述他们之间的关系。 3. 请分析等待消息的过程都涉及了哪些数据结构,画出消息等待的流程。 4. 请分析发消息的过程都涉及了哪些数据结构,画出发消息的流程。 5. 请分析删除消息队列的过程都涉及了哪些数据结构,画出删除消息队列的流程。 6. 请分析提取消息队列信息的过程都涉及了哪些数据结构,画出提取消息队列信息的流程。 7. 有任务A、任务B。任务A接收屏幕上输入的数据,然后将该数据送给任务B,任务B能立刻打印出该数据。请采用消息管理编程实现任务A和任务B并上机实践。 8. 有任务A、任务B。任务A接收屏幕上输入的数据,然后将该数据送给任务B,任务B每20秒打印一次这20秒内接收到的数据。请采用消息队列管理编程实现任务A和任务B并上机实践。 * 2.1 什么是操作系统 嵌入式操作系统是操作系统的一个种类,应用于嵌入式操作系统中,是建立嵌入式应用软件的平台。在学习嵌入式操作系统之前,我们先回顾一下操作系统的有关概念和理论。 计算机系统由硬件和软件组成,它们结合在一起提供了解决具体问题的工具。而软件可以划分为应用软件和系统软件两类。应用软件与计算机系统的应用目的密切相关,例如Office Word软件用于文本编辑,RealPlayer软件用于媒体的播放。系统软件提供一个通用的编程环境,便于程序员根据他们的需要构建生成特定的应用软件。操作系统是系统软件的一个子集。 操作系统介于硬件之上。从应用程序开发角度来看,操作系统隐藏了硬件操作的细节,通过提供一个对硬件操作的抽象模型,使应用程序员可以相对容易地使用计算机硬件资源。操作系统是以应用编程接口(API, Application Programming Interface)的形式,为应用程序的建立提供支持的,对于应用软件的设计者来说,了解API接口并理解后面的机制,是使用操作系统的前提和基础。 所有的操作系统都是在不同的限制条件和环境下设计的,设计的结果往往反映在系统的API接口中。性能和功能是操作系统的衡量指标,两者具有一定的矛盾性,功能强大的操作系统提供了更为丰富的API接口,但性能由此可能会减弱。而提供较少功能的高性能操作系统实际上会使得应用程序承担更多的任务,加大了应用程序的开发难度和工作量。 * * 2.1 什么是操作系统 嵌入式操作系统是操作系统的一个种类,应用于嵌入式操作系统中,是建立嵌入式应用软件的平台。在学习嵌入式操作系统之前,我们先回顾一下操作系统的有关概念和理论。 计算机系统由硬件和软件组成,它们结合在一起提供了解决具体问题的工具。而软件可以划分为应用软件和系统软件两类。应用软件与计算机系统的应用目的密切相关,例如Office Word软件用于文本编辑,RealPlayer软件用于媒体的播放。系统软件提供一个通用的编程环境,便于程序员根据他们的需要构建生成特定的应用软件。操作系统是系统软件的一个子集。 操作系统介于硬件之上。从应

文档评论(0)

我是兰花草 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档