操作系统设计与应用实践期末试卷_第1页
操作系统设计与应用实践期末试卷_第2页
操作系统设计与应用实践期末试卷_第3页
操作系统设计与应用实践期末试卷_第4页
操作系统设计与应用实践期末试卷_第5页
免费预览已结束,剩余3页可下载查看

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、选择题(本题满分14分,每个选择1分)1、一般来说,嵌入式软件系统中的任务函数中,应设计一个(),表示该功能是可以连续执行的。A)条件语句B)循环语句C)普通函数D)无限循环2、采用交叉开发方式,开发平台一般采用()。运行平台基于()。A单片机B)固定硬件C)通用计算机D)实验仪3、在科C/OS-II操作系统中,大部分源码采用移植性很强的()编写,和微处理器硬件相关部分采用()编写。AC语言B)JAVAC)VC+D)汇编语言4、C/OS-II的启动多任务环境的函数叫做OSStart()。用户在调用OSStart()之前,必须已经建立了一个或更多任务,OSStart()函数会调度()的任务运

2、行。A优先级最高B)优先级最低C)当前任务D)随机任务5、利用关闭任务调度函数OSSchedLock()和打开任务调度函数OSSchekUnlock(),可以实现()间互斥访问数据。A函数B)中断处理子程序C)任务和中断处理子程序D)任务6、嵌入式操作系统管理的多任务的堆栈的空间(),在()中定义。A各自独立B)集中在一起C)应用代码D)C/OS-II内核7、假定科C/OS-II设定的时钟节拍率是200Hz,时钟节拍计数器每秒钟递增()。A100B)200C)300D)4008、移植科C/OS-II到一个新的体系结构上,需要修改的文件不包括()。AOS_CPU.HB)TASK.CC)OS_CP

3、U_C.CD)OS_CPU_A.ASM9、科C/OS-II对内存进行()管理,可把管理的动态内存空间分成()的分区,每个分区又分成了()的内存块来进行管理。A一级B)一个C)多个大小相等D)两级E)多个大小不等二、判断题(本题满分10分,共含10道小题,每小题1分)1、时限要求严格的系统称为硬实时系统。2、C/OS-n是非抢占式实时多任务内核,优先级最高的任务一旦准备就绪,则拥有cpu的所有权开始投入运行。3、当系统需要确保响应时间时,需要使用可剥夺型操作系统内核进行管理和编程。4、并发任务所访问的资源必须独占使用的方式,称为互斥。5、为确保临界段代码的互斥执行,通常,在进入临界段之前开中断,

4、而临界段代码执行完以后要立即关中断。6、全部科C/OS-II操作系统的系统函数的执行时间不可以确定。7、科C/OS-II提供的禁止任务切换可以防止中断的干扰。8、congfig.h文件的作用设置所有选项,用于配置和裁剪内核代码及其数据结构。9、OS_CPU.Ht件中的typedefunsignedcharINT8U;表明INT8U的类型为unsignedchar。10、嵌入式操作系统C/OS-II的多任务环境由函数OSStart()启动。用户在调用该函数之前,必须已经建立了一个或更多任务。嵌入式应用程序中,该函数一般在主函数中调用。三、图示题(本题满分17分,共含1道小题)下图是一个嵌入式操作

5、系统多任务管理下的就绪表,由其中变量OSRdyGrp和一维数组OSRdyTbl8均是8bit的无符号整型,根据下图回答以下问题。图中包含几个就绪任务:。这些就绪任务的优先级各为:,其中优先级最高的是,优先级最低的是。当前变量OSRdyGrp的值为。当前一维数组OSRdyTbl8的各个元素的值依次分别为:00000000000:0000:0000011100000000000000000000000000000000011000000OSRdyTbl8XY四、数据结构及算法计算题(本题满分17分)某事件的等待任务表的当前状态,如下图所示:peventOSEventTbl8OSEventTypeO

6、SEventCnt;OSEventPtr;OSEventGrp;卜0100000000100001000000000000000000000000000000000000000000000000假如等待事件到来,需要运用查表法,在等待任务表中查找最高优先级的任务,并从该等待表中删除它。提示,查表法算法如下所示。1、在等待任务表中查找最高优先级任务(优先级为prio)算法如下:y=OSUnMapTblpevent->OSEventGrp;x=OSUnMapTblpevent->OSEventTbly;prio=(y<<3)+x;2、从等待任务表中删除一个任务(优先级为pr

7、io)的算法如下:if(pevent->OSEventTblprio>>3&=OSMapTblprio&0x07)=0)pevent->OSEventGrp&=OSMapTblprio>>3;请利用上述算法运算及其结果,并在空白处填写对应的各表达式的值,并解答相关问题,总结上述算法特性。其中,OSUnMapTbl和OSMapTbl两表的值如下所示。INT81J8gt0SIJnlfc4>TblLJ=INT8UconstOSMapTbl=1,2,4,8,16,32,64,128;0,64,55,由4,0,L1,1,L0,优2,/40

8、,1,0.1,31,3La0.凡0>*3,XXaLLLL2,0,2,52>0t2.0,LL1,LS优0,s0口,K仇2,0>L兔XaL40,L34,0,Ld2,0>1,X仇L2,0,L0,5,Q,L0,2,S1,备XaL2,0,L64,0,1,0,0.|>凡X©L2,%1,0,t>a1,32,S1,凡XL2,51,优4,a1,S2,S1>0,3,0,1,2,0,1,S5,他L32,o>La3,aL2,Q,L64,0,L0,2,3,aL%色L0r6,61,0,Z81>仇XaL2t0,1,0,4,0,1,2,LXaL2f0,h优瓦0,

9、L0>2,0,1>凡X色L2.0>L轨4,。,2,0>L3,仇L2,0,1,01 在等待任务表中查找最高优先级任务的过程如下,请将左边表达式的值写在对应右边的空白处。pevent->OSEventGrpy=OSUnMapTblpevent->OSEventGrppevent->OSEventTblyx=OSUnMapTblpevent->OSEventTblyy<<3prio=(y<<3)+x当前最高优先级等待任务是:2 从等待任务表中删除该优先级在在对应右边的空白处。prio>>3运算前,pevent->

10、;OSEventTblprio>>3prio&0x07OSMapTblprio&0x07运算后,运算前,运算后,pevent->OSEventTblprio>>3pevent->OSEventGrppevent->OSEventGrp此时,该等待任务是否还在等待任务表中?L,评价该算法有何特点|一五、代码分析题(本题满分14分,共含3道小题,每空1分)1、请以下列任务控制块类型定义的代码为例,回答以下问题,说明嵌入式操作系统pC/OSI如何实现内核裁减。typedefstructos_tcbOS_STK*OSTCBStkPtr;#ifO

11、S_TASK_CREATE_EXT_ENVoid*OSTCBExtPtr;OS_STK*OSTCBStkBottom;INT32UOSTCBStkSize;INT16UOSTCBOpt;INT16UOSTCBId;#endifOS_TCB;不可以裁剪的代码部分是。可以裁剪的代码部分是是否裁剪由哪个数据决定?。如需裁剪,该数据设为。如不需裁剪,该数据设为。2、以下程序代码段利用信号量机制实现互斥。OS_EVENT*SemMu;SemMu=OSSemCreate(1);voidTask1(void*pdata)INT8Uerr;for(;)OSSemPend(SemMu,0,&err);O

12、SMboxPost(SemMu);)请根据上述代码,回答以下问题:信号量变量名为。信号量的初值为。需要互斥的代码段是一进入互斥代码段的实现方法为退出互斥代码段的实现方法为3、以下是嵌入式操作系统科C/OSI创建内存分区代码段。OS_MEM*Buf;INT8UCommTx1016;voidmain(void)INT8Uerr;Buf=OSMemCreate(CommTx,10,16,&err);OSStart();)根据代码段,回答以下问题:指示内存分区的变量名为。分区的空间大小为字节。该分区的内存块的个数为。每个内存块的字节数为一。六、程序设计题(本题满分28分,共含2道小题)1、在一

13、个能够持续运行的应用程序中,设计任务1(task1),每1秒运行一次,在屏幕的第一行处显示“1S”;设计任务2(task2),每2秒运行一次,在屏幕的第二彳T处显示“2S”;设计任务3(task3),每5秒运行一次,在屏幕的第三行处显示“5S”。写出以上3个任务函数原型定义及其包含以上功能的代码段。(10分)2、在一个能够持续运行的应用程序中,设计3个任务,其中:任务1(task1)每隔2秒接收信号量集中的第0、1、2、3位的信号全“1”;任务2(task2)每隔3秒接收信号量集中的第4、5、6、7位的信号全“1”;任务3(task3)每隔2秒向信号量集中信号发送信号全“1”。(18分)要求如

14、下:(1)写出3个任务的堆栈定义(3分)(2)创建3个任务的C/OS-II内核调用语句(3分)(3)3个任务函数原型定义及其包含以上功能的代码段。(12分)七、实验题(一)分析与设计题(满分20分,共含2小题,每小题10分)1、对本课题组所开发的综合算法演示程序进行简要描述,包括课题组成员、各算法名称及各算法基本功能。2、你个人开发算法演示程序功能进行简要描述,包括算法中任务数量、任务名称、各任务简要功能描述及并发任务间的同步关系简要描述。(二)设计与实现题(本题满分48分,共含5小题)选择你个人负责开发的一个算法,回答以下开发、设计实现问题。1. 你设计的所有任务如何创建?要求写出调用C/OS-II创建任务系统函数语句。(8分)2. 你设计的信号量如何创建?要求写出调用科C/OS-II创建信号量系统函数语句。(8分)3. 写出1、2、中每个任务的优先级和每个信号量的初值。(8分)4. 简要说明至少两个任务函数的内部处理流程。其中重点应包括信号量申请、信号量释放、界面信息显示方法、时间延迟及无限循环的设计与实现。(16分)5.分别说明4、中两个任务每一次循环执行时,在界面上显示的动态变化的信息说明。(8分)(三)界面设

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论