- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ucos-ii 操作系统习题
一. 填空题
1. uC/OS-II 是一个简洁、易用的 基于优先级的嵌入式 【 抢占式 】多任务
实时内核。
2. 任务是一个无返回的无穷循环。 uc/os-ii 总是运行进入就绪状态的【 最高
优先级 】的任务 。
3. 因为 uc/os-ii 总是运行进入就绪状态的最高优先级的任务。 所以,确定哪个
任 务优 先级 最高 ,下 面该 哪 个 任务运 行,这个工 作就是 由 【调 度器
】
(scheduler) 来完成的。
4. 【 任务级 】的调度是由函数 OSSched()完成的,而【 中断级 】的调度是
由 函 数 OSIntExt() 完 成 。 对 于 OSSched() , 它 内 部 调 用 的 是
【 OS_TASK_SW() 】 完 成 实 际 的 调 度 ; OSIntExt() 内部 调 用 的 是
【 OSCtxSw() 】实现调度。
5. 任务切换其实很简单,由如下 2 步完成:
(1)将被挂起任务的处理器寄存器推入自己的【 任务堆栈 】。
(2 )然后将进入就绪状态的最高优先级的任务的寄存器值从堆栈中恢复到
【寄存器 】中。
6 . 任务的 5 种状态。
【睡眠态(task dormat) 】:任务驻留于程序空间( rom 或 ram)中,暂时没交给
ucos-ii 处理。
【就绪态(task ready)】:任务一旦建立,这个任务就进入了就绪态。
【运行态(task running)】:调用 OSStart ()可以启动多任务。 OSStart ()函
数只能调用一次,一旦调用,系统将运行进入就绪态并且优先级最高的任务。
【等待状态(task waiting )】:正在运行的任务,通过延迟函数或 pend (挂起)
相关函数后,将进入等待状态。
1
【中断状态(ISR running)】:正在运行的任务是可以被中断的,除非该任务将
中断关闭或者 ucos-ii 将中断关闭。
7.【 不可剥夺型 】内核要求每个任务自我放弃 CPU的所有权。不可剥夺型调
度法也称作合作型多任务,各个任务彼此合作共享一个 CPU。
8.当系统响应时间很重要时,要使用【 可剥夺型 】内核。最高优先级的任务
一旦就绪,总能得到 CPU的控制权。
9.使用可剥夺型内核时,应用程序不应直接使用不可重入型函数。调用不可重
入型函数时,要满足互斥条件,这一点可以用【 互斥型信号量 】来实现。
10. 【 可重入型 】函数可以被一个以上的任务调用,而不必担心数据的破坏。
11.可重入型函数任何时候都可以被中断, 一段时间以后又可以运行, 而相应数
据不会丢失。可重入型函数或者只使用【 局部变量 】,即变量保存在 CPU 寄
存器中或堆栈中。如果使用全局变量,则要对全局变量予以【 保护 】。
12.每个任务都有其优先级。任务越重要,赋予的优先级应【 越高 】。
13. μC/OS- Ⅱ初始化是通过调用系统函数【 OSIint() 】实现的,完成 μC/OS- Ⅱ所有的变量和
数据结构的初
原创力文档


文档评论(0)