- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
RTOS本章导引:本章讨论RTOS下程序设计下的若干问题,包括稳定性问题,中断服务程序(ISR)设计问题,线程划分与优先级安排问题,并发与资源共享问题,以及优先级反转问题等,并针对各问题讨论了相应的解决方案。第6章RTOS下程序设计方法
6.1程序稳定性问题RTOS第6章RTOS下程序设计方法6.2ISR设计、线程划分及优先级安排问题6.3利用信号量解决并发与资源共享的问题6.4优先级反转问题6.5本章小结第1页共31页
RTOS6.1.1稳定性的基本要求程序稳定性问题是程序设计的核心问题,但实验室中的嵌入式产品在经过调试、测试、安装,并最终投放到实际应用中后,由于受到干扰往往还会出现很多故障和不稳定的现象。稳定性的基本要求有:保证CPU运行的稳定、保证通信的稳定、保证物理信号输入的稳定、保证物理信号输出的稳定等。6.1程序稳定性问题第2页共31页
RTOS看门狗定时器(WDOG)实际上是一个自动计数器,其通过是否能在适当的时间点将计数置零来判断程序是否正常工作。在程序异常时,强制将系统复位。看门狗的应用是为了保证系统运行的稳定,但对于程序开发阶段,看门狗的启用可能会干扰对BUG的定位。6.1.2看门狗与定期复位的应用注:WDOG实例演示(..\03-Software\CH06-Design-method\Wdog)第3页共31页
RTOS在终端芯片中,有时会出现主程序正常执行只有一个或少许功能运行异常的情况,这时由于喂狗操作仍然定期进行,程序并不会为排除异常主动实现复位重启。定期复位方法就是每隔指定时间主动进行一次终端程序复位重启操作。对于实时性要求不那么高的系统来说,主动重启不会对整个系统的功能造成破坏,而且可以避免出现看门狗无法监控的程序异常,保证系统功能正常运行。芯片重启的方法:软件复位函数、重新上电、拉低复位引脚等。第4页共31页
RTOS6.1.3临界区的处理临界资源主要分硬件和软件两种,硬件如打印机、串行通信接口等,软件如消息缓冲队列、变量等,访问临界资源的代码称为临界区(CriticalSection)。临界区也称为代码临界段,指处理时不可分割的代码。为确保临界段代码的正常执行,在NOS下,在进入临界段之前要关中断,且临界段代码执行完后应立即开中断;而在RTOS下,通常利用信号量或互斥量来保证进程对临界资源的互斥访问。第5页共31页
RTOS6.2ISR设计、线程划分及优先级安排问题(重点)中断服务程序ISR程序设计的基本要求是:短、小、精、悍。RTOS使用ISR来处理硬件中断和异常。用户ISR并不是一个线程,而是一个能快速响应硬件中断和异常的高速短例程。不同操作系统针对ISR跟线程之间的优先关系问题会采用不同的处理方式。如在MQX中线程能屏蔽优先级比它低两级的硬件中断;而在RT-Thread中线程优先级与中断优先级不作关联。6.2.1ISR设计的基本问题第6页共31页
RTOS6.2.2线程划分的基本原则对于线程的划分标准有多种,没有哪一种标准是最好的,只能选取最适合操作系统的一种,下面给出线程划分的几个简明原则。第一,功能集中原则。第二,时间紧迫原则。第三,周期执行原则。第7页共31页
RTOS6.2.3线程优先级安排问题大多数RTOS操作系统均支持优先级的抢占,当某个高优先级的线程处于就绪状态时,就可以马上获得CPU资源得以运行,所以线程优先级的安排非常重要。具体来说,线程优先级的安排要点可以总结如下几点:第一,初始自启动线程优先级最高。第二,紧迫性线程优先级安排。第三,同优先级线程的安排。第四,有执行顺序要求的安排。第五,低优先级的安排。第8页共31页
RTOS6.3利用信号量解决并发与资源共享的问题6.3.1并发与资源共享的问题1.银行取钱问题银行取钱可以分为以下四个步骤:第一,用户输入账户密码,系统判断账户密码是否匹配;第二,用户输入取款金额;第三,系统判断账户余额是否大于取款金额;第四,如果账户余额大于取款金额,则取钱成功,如果余额小于取款金额,则取款失败。第9页共31页
RTOS2.并发的问题现代操作系统是一个并发的系统,并发性是它的重要特征,操作系统的并发性指它具有处理和调度多个程序同时执行的能力。例如:多个I/O设备同时在输入输出;内存中同时有多个系统和用户程序被启动交替、穿插地执行等。并发性虽然能有效改善系统资源的利用率,但也会引发一系列的问题,例如上述银行取钱的问题,由于A和B两个线程并发的执行,若不加“约束”,就会对结果造成很大的影响。第10页共31页
RTOS3.共享缓冲区的问题缓冲区(buffer)是内存空间中用来缓冲输入或输出数据的部分。缓冲区的引入解决了高速设备与低速设备之间处理速度不匹配的问题。共享缓
您可能关注的文档
- 行政法与行政诉讼法(第九版) 课件 胡锦光 第7--12章 行政处罚--行政诉讼参加人.pptx
- 行政法与行政诉讼法(第九版) 课件 胡锦光 第1--6章 行政法概述--行政强制.pptx
- 数字广告——新媒体广告创意、策划、执行与数字整合营销(第2版) 课件 下.ppt
- 实时操作系统应用技术 课件 RTOS-第01章-课程导引+RTOS的基本概念与线程基础知识.pptx
- 实时操作系统应用技术 课件 RTOS-第02章-RT-Thread第一个样例工程.pptx
- 实时操作系统应用技术 课件 RTOS-第03章-RTOS下应用程序的基本要素.pptx
- 实时操作系统应用技术 课件 RTOS-第04章-同步与通信.pptx
- 实时操作系统应用技术 课件 RTOS-第05章-底层硬件驱动构件.pptx
- 实时操作系统应用技术 课件 RTOS-第07章-嵌入式人工智能:EORS.pptx
- 实时操作系统应用技术 课件 RTOS-第08章-基于WiFi通信的物联网应用开发.pptx
文档评论(0)