嵌入式系统实时操作系统习题集_第1页
嵌入式系统实时操作系统习题集_第2页
嵌入式系统实时操作系统习题集_第3页
嵌入式系统实时操作系统习题集_第4页
嵌入式系统实时操作系统习题集_第5页
免费预览已结束,剩余15页可下载查看

下载本文档

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

文档简介

1、嵌入式系统实时操作系统 习题集 车畅编 西华大学机械学院 西华大学 机械工程与自动化学院 2010年6月 第一章绪论 一、填空题 1、ARM(AdvancedRISCMachines),既可以认为是一个公司的名字,也可以认为是对一类 处理器的通称,还可以认为是一种技术的名字。1991年ARM公司成立于英国剑桥,主要出 售芯片设计技术的授权,将ARM技术知识产权IP核的技术转让给不同厂商,形成各种芯 片,其中IP核是指(是一段具有特定电路功能的硬件描述语言程序)。 2、从技术的角度,嵌入式系统定义为:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严

2、格要求的专用计算机系统。是将 (应用程序、操作系统和计算机硬件)集成在一起的系统。 3、(MCS-51系列的单片机)是低端嵌入式系统中用得最多的微处理器。 4、嵌入式最小硬件系统由(时钟系统、供电系统、存储器系统、调试测试接口、 复位及其配置系统和嵌入式控制器)组成。 5、计算机系统由(硬件和软件)构成,在发展初期并没有操作系统这个概念,用户使用(脆 控程序)来使用计算机。 6、到目前为止,主流的操作系统有三种:(多道批处理、分时和实时操作系统)。 7、对基于芯片的开发来说,应用程序一般是一个无限的循环,可称为(前后台系统或超循 环系统)。 8、中断服务程序处理异步事件,这部分可以看成前台行为

3、,前台也叫(中断级)。时间相关性很强的关键操作一定是靠中断服务程序来保证的。 9、指处理时不可分割的代码,运行这些代码不允许被打断,称为(代码的临界区).也称为 I 10、可以被一个以上任务使用的资源叫做(共享资源)。 11、多任务系统中,内核负责管理各个任务,或者说为每个任务分配CPU时间,并且负责任 务之间的通信。内核提供的基本服务是(任务切换)。 12、 13、多数实时内核是(基干优先级调度法)的。 二、判断题 1、嵌入式系统一定是实时系统。(x) 2、如果软实时系统”没有满足指定的时间约束并不会导致灾难性的后果,而对于“硬实时 系统”来说却是灾难性的。(,) 3、硬件抽象层是位于操作系

4、统内核与硬件电路之间的接口层,其目的在于将硬件抽象化。 它隐藏了特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可 在多种平台上进行移植。(,) 4、操作系统是计算机中最基本的程序。操作系统负责计算机系统中全部软硬资源的分配与回收、控制与协调等并发的活动;操作系统提供用户接口,使用户获得良好的工作环境;操 作系统为用户扩展新的系统功能提供软件平台。(,) 5、调度是内核的主要职责之一。调度就是决定该轮到哪个任务运行了。(,) 6、非占先式调度法也称作合作型多任务,各个任务彼此合作共享一个CPU。(,) 7、占先式内核要求每个任务自我放弃CPU的所有权。占先式调度法也称作

5、合作型多任务, 各个任务彼此合作共享一个CPU。(X) 8、当系统响应时间很重要时,要使用占先式内核。最高优先级的任务一旦就绪,总能得到 CPU的控制权。(,) 9、中断是一种硬件机制,用于通知CPU有个异步事件发生了。中断一旦被识别,CPU保 存部分(或全部)上下文即部分或全部寄存器的值,跳转到专门的子程序,称为中断服务子 程序(ISR)。中断服务子程序做事件处理,处理完成后,在前后台系统中,程序回到后台程序。(,) 10、中断是一种硬件机制,用于通知CPU有个异步事件发生了。中断一旦被识别,CPU保 存部分(或全部)上下文即部分或全部寄存器的值,跳转到专门的子程序,称为中断服务子 程序(I

6、SR)。中断服务子程序做事件处理,处理完成后,对占先式内核而言,让进入就绪态的优先级最高的任务开始运行。(,) 11、中断是一种硬件机制,用于通知CPU有个异步事件发生了。中断一旦被识别,CPU保 存部分(或全部)上下文即部分或全部寄存器的值,跳转到专门的子程序,称为中断服务子 程序(ISR)。中断服务子程序做事件处理,处理完成后,对非占先式内核而言,程序回到被中断了的任务。(,) 三、论述题 1、什么是嵌入式系统?从两个方面说明嵌入式系统的基本概念。 答:(1)从技术的角度定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机

7、系统。是将应用程序、操作系统和计算机硬件集成在一起的系统。 (2)从系统的角度定义:嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦 合在一起的计算机系统。术语嵌入式反映了这些系统通常是更大系统中的一个完整的部分,称为嵌入的系统。嵌入的系统中可以共存多个嵌入式系统。 2、下图中,分别表示什么系统? 答:分别是前后台系统,非占先操作系统,占先操作系统。第二章嵌入式系统的硬件基础 一、填空题 1、与冯.诺曼结构处理器比较,哈佛结构处理器有两个明显的特点:1)使用两个独立的(立 储器)模块,分别存储指令和数据,每个存储*II块都不允许指令和数据并存;2)使用独立 的(两条总线),分别彳乍为CP

8、U与每个存储器之间的专用通信路径,而这两条总线之间毫无 关联。 2、ARM7系列使用(3级)流水线。 3、通过分时复用的方式,将信息以一个或多个源部件传送到一个或多个目的部件的一组传输线。是电脑中传输数据的公共通道,将其称为(总线)。 4、基于蓝牙接口和红外接口的传输设备,(蓝牙技术)传输距离远。 5、嵌入式系统中的触摸屏分为(电阻式、电容式和电感式)三种。 二、判断题 1、复杂指令集CIS具有大量的指令和寻址方式,指令长度可变8/2;CRISC精简指令集 只包含最有用的指令,指令长度固定,确保数据通道快速执行每一条指令,使CPU硬件结 构设计变得更为简单。(,) 2、冯诺依曼结构的处理器中程

9、序存储器和数据存储器公用一条总线。它需要事先编制程序, 事先将程序(包含指令和数据)存入主存储器中,计算机在运行程序时就能自动地、连续地从存储器中依次取出指令且执行。(,) 3、在存储器系统中,寄存器比本地存储器(Flash、ROM、磁盘)的时钟周期短。(,) 三、论述题 1、嵌入式系统的硬件由哪几个组成部分? 答:嵌入式系统和一般的计算机系统类似,也是由CPU、内存、IO端口、总线等几个 部分组成。 第三章嵌入式ARM体系结构 一、填空题 1、ARM微处理器是整个系统的核心,通常由3大部分组成:(控制单元、算术逻辑单元和 奇存福0。 2、在ARM7TDMI处理器内部有(37个)用户可见的寄存

10、器。 3、ARM处理器为RISC芯片,其简单的结构使ARM内核非常小,这使得器件的功耗也非常低。数据处理操作只针对(寄存器)的内容,而不直接对(存储器)进行操作; 4、各ARM体系结构版本中V1版本的基本的数据处理指令,不包括(乘法)。 5、ARM7TDMI的流水线分3级,分别为:(取指,译码,执行)。 6、ARM处理器支持下列数据类型有:(字节8位.半字16位(必须分配为占用两个字节).字32位(必须分配为占用4各字节)。 7、ARM指令的长度刚好是(1个字(分配为占用4个字节),Thumb指令的长度刚好是半字(占用2个字节)。 8、ARM7TDMI处理器有两种操作状态:(ARM状态和Thu

11、mb状态)。 9、ARM7TDMI处理器的模式有以下七种:(用户.系统.中断.快中断.管理.中I匕未 定义)。 10、除(用户模式)外,其它模式均为特权模式。ARM内部寄存器和一些片内外设在硬件设计上只允许(或者可选为只允许)特权模式下访问。此外,特权模式可以自由的切换处理器模式,而用户模式不能直接切换到别的模式。 11、中断,快中断,管理,中止,未定义这五种模式称为(异常模式)。它们除了可以通过 程序切换进入外,也可以由特定的异常进入。当特定的异常出现时,处理器进入相应的模式。每种异常模式都有一些独立的寄存器,以避免异常退出时用户模式的状态不可靠。 12、(用户和系统)这两种模式都不能由异常

12、进人,而且它们使用完全相同的寄存器组。 13、ARM7TDMI体系结构的处理器,在汇编语言中寄存器(R0R13)为保存数据或地址值的通用寄存器。它们是完全通用的,不会被体系结构作为特殊用途,并且可用于任何使用通用寄存器的指令。 14、ARM7TDMI体系结构的处理器中(R0R7)为未分组的寄存器,也就是说对于任何处理器模式,这些寄存器都对应于相同的(32位)物理寄存器。 15、ARM7TDMI处理器中的寄存器R14为(链接寄存器),在结构上有两个特殊功能:在每种模式下,模式自身的R14版本用于保存子程序返回地址;当发生异常时,将R14对应的异常模式版本设置为异常返回地址(有些异常有一个小的固定

13、偏移量)。 16、ARM7TDMI处理器中的寄存器R15为(程序计数器(PC),它指向正在取指的地址。 可以认为它是一个通用寄存器,但是对于它的使用有许多与指令相关的限制或特殊情况。如 果R15使用的方式超出了这些限制,那么结果将是不可预测的。 17、ARM7TDMI处理器中的寄存器CPSR为(程序状态寄存器),在异常模式中,另外一个寄存器程序状态保存寄存器(SPSR)”可以被访问。每种异常都有自己的SPSR,在进入 异常时它保存CPSR的当前值,异常退出时可通过它恢复CPSR。 18、只要正常的程序流被暂时中止,例如响应一个来自外设的中断,处理器就进入(异常模 式)。 19、当nRESET信

14、号被拉低时(一般外部复位引脚电平的变化和芯片的其它复位源会改变这个内核信号),ARM7TDMI处理器放弃正在执行的指令。在复位后,除(PC和CPSR)之外的所有寄存器的值都不确定。 20、ARM7TDMI处理器的存储器系统有两种映射机制:(小端存储器系统和大端存储器系 统)。 21、一个基于ARM内核的芯片可以只支持大端模式或小端模式,也可以两者都支持。通常, (小端模式)是ARM处理器的默认形式。 二、判断题 1、ARM7的微处理器采用的是哈佛结构。(X) 2、ARM核”并不是芯片,ARM核与其它部件如RAM、ROM、片内外设组合在一起才能构成现实的芯片。(,) 3、ARM7TDMI中T的意

15、思是支持片上调试。(X) 4、ARM7TDMI中T的意思是支持高密度16位的Thumb指令集。(,) 5、ARM7TDMI处理器使用了冯诺依曼(VonNeumann)结构,指令和数据共用一条32位总线。只有装载、存储和交换指令可以对存储器中的数据进行访问。(,) 6、ARM7TDMI处理器有两种操作状态之间的切换并不影响处理器模式或寄存器内容。(,) 7、ARM7TDMI处理器共有37个寄存器,分成两大类:31个通用32位寄存器;6个状态 寄存器。(,) 8、ARM7TDMI处理器中的寄存器R8R12有两个分组的物理寄存器。一个用于除FIQ模式之外的所有寄存器模式,另一个用于FIQ模式。这样在

16、发生FIQ中断后,可以加速FIQ的处理速度。(,) 9、ARM7TDMI处理器中的寄存器R13、R14分别有6个分组的物理寄存器。一个用于用户和系统模式,其余5个分别用于5种异常模式。(,) 10、寄存器R13常作为堆栈指针(SP)。在ARM指令集当中,没有以特殊方式使用R13的指令或其它功能,只是习惯上都这样使用。但是在Thumb指令集中存在使用R13的指令。 (,) 11、ARM7TDMI处理器的存储器系统的在小端格式中,高位数字存放在高位字节中。因此 存储器系统字节0连接到数据线70(低位齐)。(,) 12、ARM7TDMI处理器的大端存储器系统的在大端格式中,高位数字存放在低位字节中。

17、 因此存储器系统字节0连接到数据线3124(高位对齐)。(,) 13、一个基于ARM内核的芯片可以只支持大端模式或小端模式,也可以两者都支持。通常, 小端模式是ARM处理器的默认形式。(,) 三、简答题 1、当多个异常同时发生时,一个固定的优先级系统决定它们被处理的顺序。请在下表中,由高至低排列复位、数据中止、FIQ、IRQ、预取中止、未定义和SWI等异常的优先级。 四、分析题 1、回答以下关于R14(LR)寄存器与子程序调用的问题。异常类型 优先级 1(最高优先级) 2 3 4 5 6 7(最低优先级) 异常类型 优先级 复位 1(最高优先级) 数据中止 2 FIQ 3 RQ 4 预取中止

18、5 未定义指令 6 SWI 7(最低优先级) 由高至低 由高至低 (1)程序A执行过程中调用的是哪个程序?(程序B) (2)程序跳转至标号Lable,执行程序B。同时硬件将BLLable”指令的下一条指令所在 地址存入哪里?(R14(LR) (3)程序B执行最后,将哪个寄存器的内容放入PC,返回程序A。(R14寄存器) 2、以下两图是R14寄存器发生嵌套时的两种使用情况。仔细理解图示,并回答以下问题。 用户模式下的程序 IRQ模式下的程序 A 图1在用户模式下执彳T程序时发生IRQ中断 图2在IRQ模式下的中断处理程序重新使能IRQ中断,并且发生了嵌套的IRQ中断 (1)图1中,执行用户模式下

19、的程序;发生IRQ中断,硬件将某个地址存入IRQ模式下的 R14_irq寄存器,用户模式下的R14有没有被破坏?(没有) (2)图1中,IRQ服务程序A执行完毕,将R14_irq寄存器的内容减去某个常量后存入PC, 能否正确返回之前被中断的程序。(能) (3)如图2所示,如果在IRQ处理程序中打开IRQ中断,并且再次发生IRQ中断;硬件 将返回地址保存在R14_irq寄存器中,原来保存的返回地址会不会被覆盖?(会) (4)图2中,在程序B返回到程序A,然后在返回到用户模式下被中断的程序时,能不能正确返回?(不能) (5)如何防止图2中的情况发生,该怎么做?(确保R14的对应版本在发生中断嵌套时

20、不 再保存任何有意义的值(将R14入栈),或者切换到其它处理器模式下。) 3、将0 x12345678疗数据的分别以大小端存储方式存储 大端模式 低位地址 小端模式 低位地址 答:用户模式下的程序 IRQ 模式下的程序 A IRQ 模式下的程序 B 高位地址 高位地址 0 x120 x340 x560 x78 第四章ARM7指令集 一、填空题 1、ARM处理器具有9中基本寻址方式,分别为:(寄存器寻址,立即寻址,寄存器移位寻址,寄存器间接寻址,基址寻址,多寄存器寻址,堆栈寻址,块拷贝寻址,相对寻址)。 2、指令MOVR1,R2采用的是(寄存器寻址)的寻址方式。 3、堆栈是一个按特定顺序进行存取

21、的存储区,操作顺序为“(后讲先出)”。 4、存储器堆栈可分为(向上生长)和(向下生长)两种方式。 5、ARM处理器是典型的RISC处理器,对存储器的访问只能使用加载和存储指令实现。存 储器访问指令分为(单寄存器操作指令)和(多寄存器操作指令)。 二、程序阅读题 1、指令MOVR0,R2,LSL#3;执行前,各寄存器的值如下,请写出指令执行后,各寄存器的值。 R2 0 x01 R0 0 x55 大端模式 低位地址 高位地址 低位地址 0 x78 0 x56 0 x34 0 x12 高位地址 小端模 答:指令执行后,各寄存器的值为: R2 0 x01 R0 0 x08 2、指令LDMIAR1!,R

22、2-R7,R12)执行什么的操作。并给出指令执行前后寄存器的变化情 况。 指令执行前各寄存器的状态 指令执行前各寄存器的状态 3、读下面的程序,说明这段程序的功能。 AREAExample1,CODE,READONLYR6 0 x? R4 0 x? R3 0 x? R2 0 x? R1 0 x40000000 0 x04 0 x4000000C 0 x03 0 x40000008 0 x02 0 x40000004 0 x01 0 x40000000 R6 0 x04 R4 0 x03 R3 0 x02 R2 0 x01 R1 0 x40000010 0 x04 0 x4000000C 0 x

23、03 0 x40000008 0 x02 0 x40000004 0 x01 0 x40000000 ;声明代码段Example1 存储器 答:(1)将R1指向的单元中的数据读出到 (2)指令执行后各寄存器的状态如下: R2R7、R12中(R1自动加4)。 ;标识程序入口 ;声明32位ARM指令 R0,#0;设置参数 MOVR1,#10 LOOPBLADD_SUB BLOOP;跳转至ULOOP ADD_SUB ADDSR0,R0,R1MOVPC,LR END 答:实现两个寄存器相加。 4、R0和R1中有两个32位数,若R0R1,贝UR0=R0-R1;若R0R1,贝UR1=R1R0;若 R0=R

24、1,贝UR1、R0保持不变。 (1)请用CMP,B和SUB指令完成上述操作。 (2)请用条件SUB指令完成上述操作。 5、用合适的指令实现以下功能:a)r0=16b)r1=r0*4 c)r0=r1/16d)r1=r2*7 6、说明下列指令的功能: a) ADDSr0,r1,r1,LSL#2 b) RSBr2,r1,#0 7、下列指令序列完成什么功能? ADDr0,r1,r1,LSL#1 SUBr0,r0,r1,LSL#4 ADDr0,r0,r1,LSL#7 8、对比说明ADRADRLWLDR的区别与联系。 9、编写一段C语言与汇编语言的混合编程代码,在C语言程序中调用汇编语言代码,完成 字符串

25、STR1和STR2内容的互换。 10、下列语句中,那些是无效的汇编语言指令?并指出无效指令中的错误。 1)ABC:MOVR1,#2ENTRY CODE32 STARTMOV ;调用子程序ADD_SUB ;R0=R0+R1 ;子程序返回 ;文件结束 2)Count RN R0 MOVR0,#1 MOVR2,#3 11、试编写程序,实现计算2+4+6+8+2N的值。 12、试编写汇编程序实现32位除法功能。 第五章基于ARM的硬件系统设计 2、简述S3c44B0X最小系统应包括哪些部分? 1、嵌入式最小系统的结构图。 可造,国势诗步曲御浸入式领域的就校制叁内部隼或T夜亭和舞幅点睛源 3)USR_S

26、TACK Equ 64 4)START LDR R0,=0 x1123456;R0=bx123456H 5)STARTLDR R0, =0 x1123456 6)START 3、S3C44B0X可使用的外部晶振频率范围是多少(使用/不使用PLL功能时)? 4、计算PLL设置值: 设一个基于S3c44B0X的系统使用的晶振为11.0592MHZ石英晶振,请计算出最大的系统时钟 频率为多少MHZ此时PLL的M值和P值为多少? 第六章嵌入式实时操作系统 一、填空题 1、实时系统的特点是,如果逻辑和时序出现偏差将会引起严重后果的系统。有两种类型的 实时系统:(软实时系统)和(硬实时系统)。 2、可以被

27、一个以上任务使用的资源叫做(共享资源)。 3、每个任务都有5种状态,这5种状态是(休眠杰,就绪杰、运行杰、桂起杰(等待某一事 件发生)和被中断态)。 4、多任务系统中,内核负责管理各个任务,或者说为每个任务分配CPU时间,并且负责任 务之间的通讯。内核提供的基本服务是(任务切换)。 5、当两个或两个以上任务有同样优先级,内核允许一个任务运行事先确定的一段时间,叫 做时间额度(quantum),然后切换给另一个任务,也叫做(时间片调度)。 6、应用程序执行过程中诸任务优先级不变,则称之为(静态)优先级。应用程序执行过程 中,任务的优先级是可变的,则称之为(动态)优先级。 7、与共享资源打交道时,

28、使之满足互斥条件最一般的方法有:(关中断、使用测试并置位 指令、禁止做任务切换、利用信号量)。 8、处理共享数据时保证互斥,最简便快捷的办法是(关中断)和(开中断)。 9、信号是只有两个值的变量,信号量是计数式的。只取两个值的信号是只有两个值(0和1) 的量,因此也称之为信号量。 10、一般地说,对信号量只能实施三种操作: (初始化)(INITIALIZE),也可称作建立(CREATE);(等信号)(WAIT)也可称作挂起(PEND);(给信号)(SIGNAL)或发信号(POST)。 11、两个任务无限期地互相等待对方控制着的资源,称作(死锁或抱死)。 12、任务间信息的传递有两个途径:(通过

29、全程变量)或(发消息给另一个任务)。 13、中断是一种硬件机制,用于通知CPU有个异步事件发生了。中断一旦被识别,CPU呆存 部分(或全部)现场(Context)即部分或全部寄存器的值,跳转到专门的子程序,称为(中断服务子程序(ISR)。 14、从中断发生到开始执行用户的中断服务子程序代码来处理这个中断的时间,称为(中断 响应)。 15、(时钟节拍)是特定的周期性中断。这个中断可以看作是系统心脏的脉动。中断之间的时间间隔取决于不同的应用,一般在10mS至11200ms之间。 16、三种类型的实时系统是:(前后台系统,不可剥夺型内核和可剥夺型内核)。 二、判断题 1、很多基于微处理器的产品采用前

30、后台系统设计,例如微波炉、电话机、玩具等。在另外 一些基于微处理器的应用中,从省电的角度出发,平时微处理器处在停机状态(halt),所有 的事都靠中断服务来完成。(,) 2、代码的临界段也称为临界区,指处理时不可分割的代码。一旦这部分代码开始执行,则不允许任何中断打入。(,) 3、任何为任务所占用的实体都可称为资源。资源可以是输入输出设备,例如打印机、键盘、 显示器,资源也可以是一个变量,一个结构或一个数组等。(,) 4、实时应用程序的设计过程,包括如何把问题分割成多个任务,每个任务都是整个应用的 某一部分,每个任务被赋予一定的优先级,有它自己的一套CPU寄存器和自己的栈空间。 (,) 5、任

31、务的休眠态相当于该任务驻留在内存中,但并不被多任务内核所调度。(,) 6、就绪意味着该任务已经准备好,可以运行了,但由于该任务的优先级比正在运行的任务的优先级低,还暂时不能运行。(,) 7、运行态的任务是指该任务掌握了CPU的控制权,正在运行中。(,) 8、挂起状态也可以叫做等待事件态WAITING,指该任务在等待,等待某一事件的发生,例如等待某外设的I/O操作,等待某共享资源由暂不能使用变成能使用状态,等待定时脉冲的 到来或等待超时信号的到来以结束目前的等待。(,) 9、单片机一般不能运行实时内核,因为单片机的RAM0I有限。(,) 10、多数实时内核是基于优先级调度法的,CPU总是让处在就

32、绪态的优先级最高的任务先运 行。(,) 11、不可剥夺型内核要求每个任务自我放弃CPU的所有权。不可剥夺型调度法也称作合作型 多任务,各个任务彼此合作共享一个CPU(,) 12、不可剥夺型内核的异步事件是由中断服务来处理的,中断服务以后控制权还是回到原来 被中断了的那个任务, 直到该任务主动放弃CPU的使用权时, 另外一个高优先级的任务才能获彳导CPU的使用权。(,) 13、使用不可剥夺型内核时,几乎不需要使用信号量保护共享数据。运行着的任务占有CPU 而不必担心被别的任务抢占。(,) 14、使用可剥夺型内核,最高优先级的任务什么时候可以执行,可以得到CPU的控制权是可 知的。使用可剥夺型内核

33、使得任务级响应时间得以最优化。(,) 15、可剥夺型内核总是让就绪态的高优先级的任务先运行,中断服务程序可以抢占CPU到 中断服务完成时,内核让此时优先级最高的任务运行(不一定是那个被中断了的任务)。(,)16、可重入型函数可以被一个以上的任务调用,而不必担心数据的破坏。可重入型函数任何 时候都可以被中断,一段时间以后又可以运行,而相应数据不会丢失。可重入型函数或者只 使用局部变量,即变量保存在CP%存器中或堆栈中。(,) 17、目前,Wc/os-n不支持时间片轮番调度法。应用程序中各任务的优先级必须互不相同。 (,) 18、信号量实际上是一种约定机制,在多任务内核中普遍使用。信号量用于控制共

34、享资源的 使用权(满足互斥条件)、标志某事件的发生和使两个任务的行为同步。(,) 19、信号像是一把钥匙,任务要运行下去,得先拿到这把钥匙。如果信号已被别的任务占用,该任务只得被挂起,直到信号被当前使用者释放。(,) 20、消息队列实际上是邮箱阵列。通过内核提供的服务,任务或中断服务子程序可以将一条 消息(该消息白指针)放入消息队列。同样,一个或多个任务可以通过内核服务从消息队列中得到消息。发送和接收消息的任务约定,传递的消息实际上是传递的指针指向的内容。(,) 21、在非屏蔽中断的中断服务子程序中,不能使用内核提供的服务,因为非屏蔽中断是关不 掉的,故不能在非屏蔽中断处理中处理临界区代码。(

35、,) 22、实时内核也称为实时操作系统或RTOSo它的使用使得实时应用程序的设计和扩展变得 容易,不需要大的改动就可以增加新的功能。通过将应用程序分割成若干独立的任务,RTOS 使得应用程序的设计过程大为减化。(,) 第七章嵌入式实时操作系统c/os-n分析 一、填空题 1、C/OS-II微小内核的最少代码有(418)行(剔除文件头和函数头后的数目),是仅包含 5个最基本的服务函数的最小内核 2、科C/OS-II微小内核源代码分为3部分:(内核代码、移植代码和配置文件)。 3、功能最强的内核SOURCE4提供了(14个用户接口函数。 4、 最小的cC/OS-II微小内核SOURCE1中5个主要

36、服务函数 (OSInit ()、OSStart ()、OSTaskCreate()、OSTimeDly()和OSTimeTick()。 5、并行程序执行的独立的基本逻辑单位称之为(任务)。 6、(务控制块)是一个数据结构,当任务的CPU用权被剥夺时,WC/OS-n用它来保存该 任务的状态。 7、每个任务被赋予不同的优先级等级,从0级到最低优先级OS_LOWEST_PR10dC/OS-n初始化的时候,最低优先级OS_LOWEST_PR侬被赋给(空闲)任务。 8、多任务的启动是用户通过调用(OSStart()实现的。然而,启动科C/OS-n之前,用户至少要建立(一个)应用任务。 9、科C/OSn可

37、以管理多达(64_个任务,并从中保留了四个最高优先级和四个最低优先级的任务供自己使用,所以用户可以使用的只有(56)个任务。任务的优先级越高,反映优先 级的值则越低。 10、科C/OSn管理用户的任务,用户必须要先建立任务,用户可以通过传递任务地址和其它 参数到以下两个函数之一来建立任务:(OSTaskCreate()或(OSTaskCreateExt()。 11、通过调用OSTaskDel()可以完成(删除)任务的功能。 12、pC/OSI中的信号量由两部分组成:一个是信号量的(计数值),它是一个16位的无符号整数(0到65,535之间);另一个是由等待该信号量的任务组成的(等待任务表)。

38、13、如果信号量是用来表示一个或者多个事件的发生,那么该信号量的初始值应设为(0).o 如果信号量是用于对共享资源的访问,那么该信号量的初始值应设为(1_(例如,把它当作 二值信号量使用)。 14、(邮箱)是C/OSI中另一种通讯机制,它可以使一个任务或者中断服务子程序向另一个任务发送一个指针型的变量。 15、pC/OSI提供了5种对邮箱的操作:(OSMboxCreate(),OSMboxPend(),OSMboxPost(),OSMboxAccept()和OSMboxQuery()函数)。 16、在使用一个内存分区之前,必须先建立该内存分区。这个操作可以通过调用(OSMemCreate()函

39、数来完成。 17、在C/OSI中,可以使用OSMemQuery()E数来查询一个特定内存分区的有关消息。通 过该函数可以知道特定内存分区中(内存块的大小、可用内存块数和正在使用的内存块数) 等信息。 18、心/OS-n定义了两个宏来禁止和允许中断:(OSENTERCRITICAL()和OSEXITCRITICAL()。 19、微处理器和微控制器的堆栈是有两种生长方式,置OS_STK_GROWTH0表示堆栈(从下 往上长);置OS_STK_GROWTH1表示堆栈(从上往下长)。 二、判断题 1、调用OSSchedLock()以后,用户的应用程序不得使用任何能将现行任务挂起的系统调用。 也就是说,

40、用户程序不得调用OSMboxPend()、OSQPend()、OSSemPend()、OSTaskSuspend(OS_PR1O_SELF)OSTimeDly()或OSTimeDlyHMSM(),直至UOSLockNesting回零为止。因为调度器上了锁,用户就锁住了系统,任何其它任务都不能运行。(,) 2、用OSSchedlock()的任务保持对CPU的控制权,尽管有个优先级更高的任务进入了就绪态。然而,此时中断是可以被识别的,中断服务也能得到(假设中断是开着的)。(,) 3、pC/OS-n总是建立一个空闲任务,这个任务在没有其它任务进入就绪态时投入运行。这个空闲任务OSTaskIdle()永远设为最低优先级,即OS_LOWEST_PRI0空闲任务OSTaskIdle()什么也不做,只是在不停地给一个32位的名叫OSIdleCtr的计数器加1。(,)4、空闲任务可以被应用软件删除。(X) 5、OSTaskStat()告诉用户应用程序使用了多少CPU时间,用百分比表示,这个值放在一个 有符号8位整数OSCPUsag仲,精t度是1个百分点。(,) 6、用户必须在多任务系统启动以后再开启时钟节拍器。(,) 7、任务可以是一个无限的循环,也可以是在一次执行完毕后

温馨提示

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

评论

0/150

提交评论