版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、. uC/OS-II允许中断嵌套,嵌套层数可达多少层?A. 32B. 56C. 128D. 255. uC/OS-II的事件控制块有4种类型,需要使用4种不同的函数来创建。下列哪个函数用于创建事件控制块?A. OSTaskCreate() B. OSThreadCreate() C. OSQCreate() D. OSCtxSw().关于uC/OS-II的基本特点,下列叙述中错误的是()uC/OS-II是抢占式实时操作系统内核uC/OS-II不支持时间片轮转调度法,因此赋予每个任务的优先级是相同的uC/OS-II中每个任务拥有自用栈uC/OS-II属于源代码公开的实时操作系统.与通用计算机的操
2、作系统相比较,下列各项中不属于嵌入式操作系统特点的是()A.实时性 B.抢占式多任务处理C.内核复杂D.高可靠性.关于uC/OS-II的叙述正确的是()uC/OS-II系统拥有统一的驱动程序,不需要开发商自行开发uC/OS-II包含基本驱动程序C.使用uC/OS-II的栈空间校验函数,可以确定每个任务到底需要多少栈空间D. uC/OS-II是一个单内核操作系统. uC/OS-II能够提供周期性的时钟信号(即时钟节拍),用于实现任务的正确延时和超时确认。节拍率应该在什么范围内?A. 10Hz700HzB. 10Hz1000Hz C. 100Hz1000Hz D. 100Hz10000Hz.在uC
3、/OS-II中,OS_Sched()函数进行任务调度的条件是()OSIntNesting=0 & OSLockNesting =0OSIntNesting=0 & OSLockNesting =1OSIntNesting=1 & OSLockNesting =0OSIntNesting=1 & OSLockNesting =1.下列选项中用于完成创建任务的自用栈空间的uC/OS-II程序源代码的是()A. OS_CPU_C.C B. OS_CORE.C C. OS_MEM D. OS_TASK.C.实时操作系统的主要实时指标不包括()A .截止时间(Finish Time) B.吞吐量(Thr
4、oughput)C.生存时间(Survival Time) D.响应时间(Response Time)编写uC/OS-II的中断服务子程序主要使用哪种语言()A .汇编语后或 C语百 B. Java语百 C. PASCAL语百 D. C+语百. RTOS响应时间的具体指标不包括如下哪一项?A.中断延迟时间()B.任务切换时间()C.进程切换时间()D.存储器延迟时间()D.就绪状态的任务表示已经具备运行条件但并不在运行的任务11.关于uC/OS-II中处于就绪状态的任务,下面叙述中正确的是()A.该任务已经可以运行,一旦 CPU空闲该任务将立即运行B.该任务已经可以运行,但由于优先级不够暂时不
5、能运行C.该任务已经可以运行,一旦得到所需要的资源将立即运行D.该任务已经可以运行,一旦事件信号量出现将立即运行12.在uC/OS-II操作系统下,由中断服务子程序代码完成的操作一定包括()A.初始化任务的栈空间B.调用 OSIntEnter()或对 OSNesting 变量加 1C.关闭所有可屏蔽中断D.利用函数 OSSchedLock()给调度器上锁13.在uC/OS-II操作系统下,处于运行态的任务因更高优先级的任务就绪而被剥夺CPU使用权后将转入()A.等待态B.被中断态C.就绪态D.休眠态. uC/OS-II能够支持的任务数最多为()A. 16 B. 32C. 64D. 128.下列
6、关于uC/OS-II操作系统的描述中,错误的是()A.在uC/OS-II中,任务是操作系统的基本调度单位为保证内核精简,uC/OS-II不支持中断嵌套uC/OS-II不支持时间片轮转调度法uC/OS-II的事件控制块可以用于对信号量管理16.关于uC/OS-II的基本特点,以下说法错误的是()A. uC/OS-II是抢占式实时操作系统内核B.由于存在内核任务,用户编写的应用程序最多可以有60个任务uC/OS-II不支持时间片轮转调度法uC/OS-II允许每个任务有不同的栈空间17.在uC/OS-II中有多种方法可以保护任务之间的共享数据和提供任务间的通信。其中不能达到保护目的的方法是()A.利
7、用宏 OS_ENTER_CRITICAL ()和OS_EXIT_CRITICAL ()来关闭中断和打开中 断B.利用函数 OSSchedLock ()和OSSchedUnlock ()对任务调度函数上锁和开锁C.利用信号量、互斥信号量、邮箱和消息队列进行任务间通信D.利用内存文件进行任务间的大规模数据共享.下列选项中与实时系统无必然联系的属性是()A,可配置属性B.可预测性C.时间约束性D.确定性.移植uC/OS-II到一个嵌入式系统电路板上正常运行,下面()条件不是必须的。A.处理器的C编译器能产生可重入代码,且用C语言就可以打开和关闭中断B.该电路板的处理器必须具备MMU (存储管理单元)
8、C.处理器支持中断,并且能产生定时中断(通常在10至100Hz之间)D.处理器支持能够容纳一定量数据(可能是几千字节)的硬件堆栈. uC/OS-II操作系统启动的过程中,Bootloader执行完毕后,调用应用程序主文件(通常是main.c)里的main()函数。main()函数在执行过程中,除了用户函数和硬件初始化函数之 外,需要执行以下三个主要的uC/OS-II 函数:I. OSStart() II. OSTaskCreate() III. OSInit()它们的执行顺序是I、II、IIIIII、I、IIII、III、IIII、II、I.下列关于uC/OS-II任务管理的叙述中错误的是()
9、A.它可以管理64个任务B.用户任务最多只能有32个C.空闲任务是系统所创建的第一个任务22. uC/OS-II系统中的每个任务都处于以下5种状态之一:休眠态、就绪态、运行态、挂起态(等待某一事件发生)和被中断态。以下哪个说法是错误的?A.任务处于休眠态,相当于该任务驻留在外存中,但还没有交给内核管理B.任务处于就绪态,意味着该任务已经准备好,可以运行了,但由于该任务的优先级 比正在运行的任务的优先级低,还暂时不能运行C.任务处于运行态,指任务得到了CPU的控制权正在运行之中D.任务处于被中断态,是指发生中断时执行相应的中断服务,原来正在执行的任务暂 时停止运行,进入了被中断状态23.以下关于
10、嵌入式系统软件的描述中,错误的是()A.在uC/OS-II操作系统中,各个任务间共享任务堆栈()BootLoader的任务之一是加载和启动操作系统WinCE是一种大型嵌入式操作系统D.大多数嵌入式系统都是实时系统.在uC/OS-II中,OSIint()函数先建立最初的任务就绪表,然后建立4个空白的数据链表。这4个空白的数据链表是()A .任务控制块链表、事件控制块链表、消息队列链表和进程控制块链表B .任务控制块链表、事件控制块链表、消息邮箱链表和进程控制块链表C.任务控制块链表、事件控制块链表、消息队列链表和内存控制块链表D .任务控制块链表、事件控制块链表、消息邮箱链表和内存控制块链表E.
11、任务控制块链表、事件控制块链表、标志链表和内存控制块链表. uC/OS-II操作系统内核通过任务控制块管理任务,下列各项中,不属于任务控制块的内 容的是()A .指向任务代码临界区的指针B .指向任务堆栈栈顶的指针C.任务的优先级D.任务的状态字.在uC/OS-II操作系统下,能使运行态任务转入等待态的系统函数是()OSSemPost() (II) OSTaskCreate() (III) OSSemPend() (IV) OSTimeDly()(I)和(III)(II)(IV)(III)和(IV)D.仅(IV).当满足一定条件时,uC/OS-II操作系统内核将进行任务调度。下列各项中属于中断
12、级任 务调度需满足的条件是()A.空闲任务被挂起B .处于就绪态的最高优先级任务的优先级比被中断任务的优先级低C.所有的中断服务程序均已经执行完毕D.有足够的内存空间保存当前任务的上下文Michael批注:当所有的中断服务程序均己经执行完毕时,WC/ OS-II操作系统内核将进行任务调度;如果中断嵌套已经全部退出并且有更高优先级的任务就绪,则最高优先级的就绪任务投入执行。故本题选择 Co .下列是关于uC/OS-II任务管理中空闲任务的叙述,其中错误的是()A.它是系统创建的第一个任务B.它是系统中优先级最低的任务C.它始终处于等待状态D.它是必不可少的一个系统任务. uC/OS-II的以下4
13、个函数中,只有()与任务调度相关。A . OSTickISR() B. OS_Sched()C. OSIntExit() D. OSTaskCreate().进行任务调度的函数是OS Sched()。.嵌入式系统的三个基本要素是嵌入性 、 专用性 、和计算机系统Michael 批注:.嵌入式操作系统 uC/OS-II中的任务状态有 就绪状态 、运行状态、 睡眠状态_、等待状态、和 中断服务状态。Michael 批注:也可填写 WAITING DORMANT READY RUNNING ISR . uC/OS-II中用户任务能够使用的优先级最高的优先级是_0_.uC/OS-II操作系统中表示正在
14、运行任务白优先级的全局变量是OSPrioCur,指向正在运行任务的任务控制块的指针变量是OSTCBCur .队列控制块 OS_Q 的属性有 OSQPtr、_ OSQStart一、 OSQSize 、 OSQOut 、 OSQIn 、OSQEnd 和 OSQEntries .下歹U uC/OS-II 的内核文件中:(A) os_core.c (B) os_mbox.c (C) os_sem.c(D) os_cfg.h (E) os_mutex.c (F) ucos_II.c (G) usos_II.h (H) inculudes.h (I) os_cpu.h (J) os_task.c (K)
15、os_cpu_a.asm (L) os_time.c (M) os_cpu_c.c (N) os_q.c (O) os_flag.c, 和系统运行的硬件相关的是 J、 K 、 M o与应用程序相关有D 、 H 。Michael批注:名字中有cpu的文件都是与硬件相关的;os_cfg.h是裁切时使用,inculudes.h通用包含.事件控制块 OS_EVENT 的一个属性是 OSEventType ,它表示的事件的类型有 OS_EVENT_TYPE_UNUSED、OS EVENT TYPE MUTEX 、OS EVENT TYPE MBOX 、 OS EVENT TYPE SEM 、 OS EV
16、ENT TYPE Q 和 OS_EVENT_TYPE_FLAG . 一个任务的任务控制块中的指针OSTCBStkPtr指向 任务堆栈栈顶.任务控制块中的OSTCBDly的作用是 任务等彳f时限. uC/OS-II的某应用程序通过调用函数 OSTaskCreate来创建任务,该函数主要完成哪些工 作?检测任务优先级是否合法和是否被使用;初始化任务堆栈,任务控制块;如果没有错误任务计数器加一,执行调度;否则放弃任务。.什么是事件的等待任务列表?该表的内存结构是如何组成的?在哪些情况下该表的内 容会发生变化?.分别介绍信息量SEM和互斥性信号量MUTEX的作用和操作方式以及二者的区别。 信号量SEM
17、表明一个共享资源被使用情况的标志,该标志实质上是一个计数 器;互斥性信号量MUTEXT以使任务以独占方式使用共享资源,防止出现优先级 反转现象。.什么是嵌入式系统?列举出三个典型的嵌入式系统。嵌入式系统是对对象进行自动控制而使其具有智能化并可嵌入对象系统中的专用计算机系统。WindowsCE , uCLinux , uC/OS.简述uC/OS-II内存管理中分配内存的过程。1)创建动态内存分区;2)请求获得一个内存块;3)释放一个内存块;4)查询一个内 存分区的状态.简述uC/OS-II任务切换的过程。首先把当前任务的断点指针保存到任务堆栈中,然后彳存cpu寄存器到任务堆栈中;获取新的任务控制
18、块并将新任务堆栈中的cpu寄存器值和断点值恢复。. 一个正在运行的 uC/OS-II系统,某时刻 OSRdyGrp的值为00100000, OSRdyTbl5的值 为 00000011.(1)试判断当前最高优先级别的就绪任务的优先级是多少?(00101001 ) 2 = 43(2)写出判断依据。OSRdyGrp值为00100000可以得出组号为 y = 5 ; OSRdyTbl值为00000011可以得出组内 编号为 x = 3 ;贝 prio = y 0INT32U OSTimeGet (void) (#if OS_CRITICAL_METHOD = 3 OS_CPU_SR cpu_sr;#
19、endifINT32U ticks;OS_ENTER_CRITICAL();ticks = (I);OS_EXIT_CRITICAL();return (II);#endif问题:.完成出(I)、(II)处的语句。OSTickCtrticks.语句(I)和(II)的作用分别是什么?1:获取OSTickCtr系统滴答计数器里面存储的滴答数赋值给ticks; 2:返回ticks61.以下是嵌入式实时操作系统uC/OS-II中的两个系统函数,阅读源代码并回答问题。void OSIntEnter (void) (if (OSRunning = TRUE) if (OSIntNesting 0) C2;
20、9)if (OSIntNesting = 0) & (OSLockNesting = 0) OSIntExitY=OSUnMapTblOSRdyGrp;OSPrioHighRdy=(INT8U)(OSIntExitY 3) +OSUnMapTblOSRdyTblOSIntExitY);if (OSPrioHighRdy != OSPrioCur)OSTCBHighRdy = OSTCBPrioTblOSPrioHighRdy;OSCtxSwCtr+;OSIntCtxSw();)OS_EXIT_CRITICAL();).这两个函数分别在什么时候被调用的?响应中断的时候被调用.填写出(1)、(2)
21、处的语句。OSIntNesting+OSIntNesting-.这两个函数的作用分别是什么?OSIntEnter()的作用是把全局变量OSIntNesting加1用来记录嵌套层数;(进入中断服务程序)OSIntExit():作用退出中断服务程序.函数中的宏 OS_ENTER_CRITICAL()和 OS_EXIT_CRITICAL()的作用是什么?OS_ENTER_CRITICAL()关中断OS_EXIT_CRITICAL()开中断.数组OSTCBPrioTbl口的下标有什么特殊意义?数组元素值是什么?下标是优先级,数组元素值代表此优先级对应的tcb指针.简述OSPrioHighRdy的查找过
22、程。首先使用OSUnMapTab口数组查找下标为 OSRdyGrp的值作为prio的高三位记作 y 然后使用OSUnMapTab口数组查找下标位 OSRdyTaby的值作为prio的低三位 x 最后拼接 y 0) & (OS_MAX_QS 0) | (OS_MBOX_EN 0) | (OS_SEM_EN 0)10| (OS_MUTEX_EN 0)OS_EVENT *OSTCBEventPtr;#endif#if (OS_Q_EN 0) & (OS_MAX_QS 0) | (OS_MBOX_EN 0) void*OSTCBMsg;#endif#if (OS_VERSION = 251) & (O
23、S_FLAG_EN 0) & (OS_MAX_FLAGS 0)#if OS_TASK_DEL_ENOS_FLAG_NODE#endifOS_FLAGS#endifINT16UINT8UINT8UINT8UINT8UINT8UINT8U#if OS_TASK_DEL_ENBOOLEAN 0*OSTCBFlagNode;OSTCBFlagsRdy;OSTCBDly;OSTCBStat;OSTCBPrio;OSTCBX;OSTCBY;OSTCBBitX;OSTCBBitY; 0OSTCBDelReq;11#endif OS_TCB;INT8U OSTaskCreate (void (*task)(v
24、oid *pd), void *pdata, OS_STK *ptos, INT8U prio) #if OS_CRITICAL_METHOD = 3 OS_CPU_SR cpu_sr;#endifOS_STK*psp;INT8Uerr;#if OS_ARG_CHK_EN 0if (prio OS_LOWEST_PRIO) return (OS_PRIO_INV ALID);#endifOS_ENTER_CRITICAL();if (OSTCBPrioTblprio = (OS_TCB *)0) OSTCBPrioTblprio = (OS_TCB *)1;/ (1)OS_EXIT_CRITI
25、CAL();psp = (OS_STK *)OSTaskStkInit(task, pdata, ptos, 0);err = OS_TCBInit(prio,psp,(OS_STK *)0,0,0,(void *)0,0);if (err = OS_NO_ERR) OS_ENTER_CRITICAL();OSTaskCtr+;OS_EXIT_CRITICAL();if (OSRunning = TRUE) OS_Sched(); else OS_ENTER_CRITICAL(); OSTCBPrioTblprio = (OS_TCB *)0;/ ( 2)OS_EXIT_CRITICAL();
26、 return (err); OS_EXIT_CRITICAL(); return (OS_PRIO_EXIST); 1.在创建一个任务后,指针 OSTCBStkPtr、 OSTCBNext、 OSTCBPrev 和 OSTCBEventPtr 的指向分别是什么? OSTCBStkPtr:任务堆栈栈顶; OSTCBNext:下一个任务控制块;OSTCBPrev:前一个任务控制块;OSTCBEventPtr :事件控制块 2.成员 OSTCBDIy、OSTCBStat、OSTCBPrio、OSTCBX、OSTCBY、OSTCBBitX 以及 OSTCBBitY的作用分别是什么? OSTCBDly
27、 :任务等待时限;OSTCBStat:任务当前状态; OSTCBPrio :任务优先级;OSTCBX , OSTCBY , OSTCBBitX , OSTCBBitY 用于快速访问就绪表 3.语句(1)处的 OSTCBPrioTblprio = (OS_TCB *)1; 起什么作用? 保留优先级 4.为什么要有(2)处的语句 OSTCBPrioTblprio = (OS_TCB *)0; 如果任务创建失败需要归还前面保留的优先级 5.哪些情况下不能成功创建任务? (5分)1.任务优先级不合法 2.任务优先级已经被使用 3.初始化TCB失败 4.初始化堆栈失败 5.0 0 063.在uC/OS-
28、II应用程序需要一个内存块时,则通过调用函数 OSMemGet()向某内存分区请求获得一个内存块,该函数的源代码如下,请画出请求获得一个内存块的流程图。void *OSMemGet (OS_MEM *pmem, INT8U *err)#if OS_CRITICAL_METHOD = 3OS_CPU_SR cpu_sr;#endifvoid *pblk;#if OS_ARG_CHK_EN 0if (pmem = (OS_MEM *)0) *err = OS_MEM_INV ALID_PMEM;12return (OS_MEM *)0);)#endifOS_ENTER_CRITICAL();if
29、(pmem-OSMemNFree 0) void OSStart (void) (pblk=pmem-OSMemFreeList;pmem-OSMemFreeList = *(void *)pblk; pmem-OSMemNFree-;OS_EXIT_CRITICAL();*err = OS_NO_ERR;return (pblk);)OS_EXIT_CRITICAL();*err = OS_MEM_NO_FREE_BLKS;return (void *)0);)64.阅读以下uC/OS-II操作系统中系统函数源代码并回答问题。13INT8U y;INT8U x;if (OSRunning =
30、 FALSE) TOC o 1-5 h z y = OSUnMapTblOSRdyGrp;(1)x = OSUnMapTblOSRdyTbly;(2)OSPrioHighRdy = (INT8U)(y 0) /* See if called from ISR . */return (OS_EVENT *)0);/* . cant CREATE from an ISR */ 14OS_ENTER_CRITICAL(); pevent = OSEventFreeList; /* Get next free event control block */ if (OSEventFreeList !=
31、(OS_EVENT *)0) /* See if pool of free ECB pool was empty */ OSEventFreeList = (OS_EVENT *)L1; OS_EXIT_CRITICAL(); if (pevent != (OS_EVENT *)0) /* Get an event control block */ pevent-OSEventType = OS_EVENT_TYPE_SEM; pevent-OSEventCnt =; /* Set semaphore value */ pevent-OSEventPtr = (void *)0; /* Unl
32、ink from ECB free list*/#if OS_EVENT_NAME_SIZE 0 (void)strcpy(pevent-OSEventName, ?); #endifOS_EventWaitListInit(pevent);/* Initialize to nobodywaiting on sem. */ return ( 3); 问题: 1.完成(1)、(2)、(3)处的语句(OS_EVENT *)OSEventFreeList-OSEventPtrCnt 3. pevent 2. (1)、(2)、(3)处的语句的功能分别是什么? 1.OSEventFreeList指向下一个空事件 2.置计数器初始值 3.返回事件指针66.阅读以下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医疗器械经营企业采购验收规范培训试题及答案
- 179红色天安门背景的“弘扬雷锋精神”学雷锋纪念日模板 2
- 分析仪器设备管理制度培训
- 内镜下粘膜剥离术(ESD)围术期健康宣教
- 2026年风力发电并网服务协议
- 冲渣安全技术规程培训课件
- 设备检修挂牌制度安全培训
- 2026年广东省阳江市单招职业倾向性考试题库带答案详解(能力提升)
- 2026年广州城建职业学院单招职业倾向性测试题库带答案详解(研优卷)
- 2026年山西铁道职业技术学院单招职业技能测试题库附答案详解(满分必刷)
- - 育才中学2026学年春季第二学期初二年级地理实践活动与知识应用教学工作计划
- 2026年永州职业技术学院高职单招职业适应性测试模拟试题带答案解析
- 肥胖课件之针灸治疗
- “十五五规划纲要”解读:双碳引领绿色发展
- 建筑施工安全管理细则范本
- 海信集团AI面试求职者常见疑惑解答
- 巴比门店加盟协议书
- DB11∕T 1823-2021 山区水土保持生态修复与监测技术指南
- 中国航空油料招聘笔试题及答案
- 高考化学湖北长江作业本 化学人教选择性必修2 04 课后素养评价(四)
- 2026年苏州工业职业技术学院单招职业适应性测试题库及答案1套
评论
0/150
提交评论