为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

(完整word版)嵌入式期末考试试卷(word文档良心出品)

2021-10-29 7页 doc 463KB 46阅读

用户头像 个人认证

天涯明月

暂无简介

举报
(完整word版)嵌入式期末考试试卷(word文档良心出品)第页共16页PAGE\*MERGEFORMAT#第页共16页PAGE\*MERGEFORMAT#arm期末复习资料试题一1、ARM微处理器有_种工作模式,它们分为两类非特权模式、。其中用户模式属于_非特权模式ARM处理器有两种总线架构,数据和指令使用同一接口的是冯诺依曼,数据和指令分开使用不同接口的是哈佛结2、ARM微处理器复位后,PC的地址通常是0x0,初始的工作模式是Supervisor。3、ARM微处理器支持虚拟内存,它是通过系统控制协处理器CP15和MMU(存储管理部件)来进行虚拟内存的存储和管理。当系统发...
(完整word版)嵌入式期末考试试卷(word文档良心出品)
第页共16页PAGE\*MERGEFORMAT#第页共16页PAGE\*MERGEFORMAT#arm期末复习资料试一1、ARM微处理器有_种工作模式,它们分为两类非特权模式、。其中用户模式属于_非特权模式ARM处理器有两种总线架构,数据和指令使用同一接口的是冯诺依曼,数据和指令分开使用不同接口的是哈佛结2、ARM微处理器复位后,PC的地址通常是0x0,初始的工作模式是Supervisor。3、ARM微处理器支持虚拟内存,它是通过系统控制协处理器CP15和MMU(存储管理部件)来进行虚拟内存的存储和管理。当系统发生数据异常和指令领取异常时,异常处理程序透过嵌入式操作系统的内存管理机制,通过MMU交换物理内存和虚拟内存的页面,以保证程序正常执行。4、ARM支持两个指令集,ARM核因运行的指令集不同,分别有两个状态ARM、Thumb,状态寄存器CPSR的J_位反映了处理器运行不同指令的当前状态5、ARM核有多个寄存器,其中大部分用于通用寄存器,有小部分作为专用寄存器,R15寄存器用于存储PC,R13通常用来存储SP6、编译链接代码时,有两种存储代码和数据的字节顺序,一种是小端对齐,另一种是打断对齐7、构建嵌入式系统开发环境的工具链有多种,其中开放源码的工具链GNU工具链,ARM公司提供的工具链是ADS工具链计算机有CISC和RISC两种类型,以ARM微处理器为核心的计算机属于RISC类型,其指令长度是_定长的—1、目前使用的嵌入式操作系统主要有哪些?请举出六种较常用的。—---WindowsCE/WindowsMobile、VxWorkLinux、uCos、Symbian、QNX任选六2、ARM系统中的堆栈有四种,如下图。请按图标出四种堆栈的类型。ATPCS编程约定使用的堆栈是哪一种?LoAddress栈空间的增长方向SP■间的增长方向栈LoAddress空长斤栈空间的增长方向地址的增长方向HiAddressHiAddress答:FD、FA、ED、EA。ATPCS编程规范约定使用的堆栈是FD3、BootLoader在嵌入式系统中主要起什么作用?完成哪些主要的工作?答:BootLoader是在嵌入式系统复位启动时,操作系统内核运行前,执行的一段程序。通过BootLoader,初始化硬件设备,建立内存和I/O空间映射图,为最终加载操作系统内核调整好适当的系统软硬件环境。4、搭建嵌入式开发环境,连接目标板,一般使用什么通信接口连接?在Windows主机上使用什么软件建立连接?在Linux主机上使用什么软件建立连接?1、答:RS-232,以太网口、并口在Windows主机上使用超级终端软件在Linux主机上使用Minicom软件5嵌入式开发环境主要包括哪些组件?嵌入式系统开发需要交叉编译和在线调试的开发环境,主要包括宿主机目标机(评估电路板)基于JTAG的ICD仿真器、或调试监控软件、或在线仿真器ICE运行于宿主机的交叉编译器和链接器、以及开发工具链或软件开发环境嵌入式操作系统6在进行基于ARM核的嵌入式系统软件开发时,调用如下函数:intdo_something(intarg1,void*arg2,chararg3,int*arg4)这四个参数通过什么方式从调用程序传入被调函数?根据ATPCS编程规范,调用函数和子程序通过R0――R3四个寄存器传递参数,超过四个参数使用堆栈传递。因此arg1通过R0传入,arg2,通过R1传入,arg3通过R2传入,arg4通过R3传入7目前使用的嵌入式操作系统主要有哪些?请举出六种较常用的。WindowsCE/WindowsMobile、VxWorkLinux、uCos、Symbian、QNX任选六1、写一条ARM指令,完成操作r1=r2*3(4分)ADDR1,R2,R2,LSL#12、初始值R仁23H,R2=0FH执行指令BICRO,R1,R2,LSL#1后,寄存器RO,R1的值分别是多少?(4分)R0=21H,R1=23H3、说明指令STMIAr12!,{r0-r11}的操作功能。(4分)将R0-R11十二个寄存器中的32位数据,存储到R12地址指针为起始地址的内存中,地址的操作方式是先操作、后增加,并更新地址。4、写一段ARM汇编程序:循环累加队列myarray中的所有元素,直到碰上零值元素,结果放在r4中。程序框架如下,补充代码完成上述功能。(8分)AREAtotal,CODEREADONLYENTRYstartMOVr4,#0ADRr0,myarray;在此补充代码loopLDRr1,[r0],#4ADDr4,r4,r1CMPr1,#0BNEloop5、这是一个由源程序strtest.c和scopy.s组成的混合程序项目,通过调用strcopy完成字符串复制,程序代码如下。要求阅读程序,在程序中的注释符“//”后,说明该句程序的作用,并说明extern和EXPORT%指令的在程序中的作用。(8分)strtest.c#includeexternvoidstrcopy(char*d,constchar*s);intmain(){constchar*srcstr="Firststring-source";chardststr[]="Secondstring-destination";printf("Beforecopying:\n");TOC\o"1-5"\h\zprintf("'%s'\n'%s'\n",srcstr,dststr);//strcopy(dststr,srcstr);//printf("Aftercopying:\n");printf("'%s'\n'%s'\n",srcstr,dststr);//return0;}scopy.sAREASCopy,CODE,READONLYEXPORTstrcopystrcopyTOC\o"1-5"\h\zLDRBr2,[r1],#1;STRBr2,[r0],#1;CMPr2,#0;BNEstrcopy;MOVpc,lr;END//输出源串和目标串(8分)//调用strcopy函数//输出复制后的源串和目标串;r1指向源串,从源串载入一个字节的字符到r2,并更新r1=r1+1;r0指向目标串,从r2保存一个字节的字符到目标串,并更新r0=r0+1;测试串尾标志\0;非零转标号strcopy;返回一、程序测试题(共24分)1、写一段ARM汇编程序:循环累加队列myarray中的所有元素,直到碰上零值元素,结果放在r4中。程序框架如下,补充代码完成上述功能。(8分)AREAtotal,CODEREADONLYENTRYstartMOVr4,#0ADRr0,myarray;在此补充代码答:loopLDRr1,[r0],#4ADDr4,r4,r1CMPr1,#0BNEloopstopBstopmyarrayDCD0x11DCD0x22DCD0x0END2、有如下程序段,画出程序流程图,并回答执行程序以后R0的值是多少。(8分)numEQU2startMOVr0,#0MOVr1,#5MOVr2,#2BLfuncstopBstopfuncCMPr0,#numMOVHSpc,lrADRr3,JumpTableLDRpc,[r3,r0,LSL#2]JumpTableDCDDoADCDDoSDoAADDr0,r1,r2MOVpc,lrDoSSUBr0,r1,r2MOVpc,lrEND答:R0为0调用DoA,R0为1调用DoS,R0大于2直接返回,流程图略。R0=7完成字符串复制,程extern和EXPORT%3、这是一个由源程序strtest.c和scopy.s组成的混合程序项目,通过调用strcopy序代码如下。要求阅读程序,在程序中的注释符后,说明该句程序的作用,并说明指令的在程序中的作用。(8分)strtest.c#includeexternvoidstrcopy(char*d,constchar*s);intmain(){constchar*srcstr="Firststring-source";chardststr[]="Secondstring-destination";第页共16页PAGE\*MERGEFORMAT#STRBr2,[r0],#1;r0指向目标串,从r2保存一个字节的字符到目标串,并更新rO=rO+1CMPr2,#0;测试串尾标志\0BNEstrcopy;非零转标号strcopyMOVpc,lr;返回END[r1],#1;r1指向源串,从源串载入一个字节的字符到r2,并更新r仁r1+1printf("Beforecopying:\n");printf("'%s'\n%s'\n",srcstr,dststr);strcopy(dststr,srcstr);printf("Aftercopying:\n");printf("'%s'\n%s'\n",srcstr,dststr);return0;}scopy.sAREASCopy,CODE,READONLY//输岀源串和目标串//调用strcopy函数//输岀复制后的源串和目标串EXPORTstrcopystrcopyLDRBr2,第页共16页PAGE\*MERGEFORMAT#试题二一、填空题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。1、一般而言,嵌入式系统的构架可以分为4个部分:分别是(处理器)、存储器、输入/输出和软件,一般软件亦分为操作系统相关和(应用软件)两个主要部分。2、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为嵌入式微控制器,(嵌入式DSP处理器),(嵌入式微处理器)以及片上系统。3、操作系统是联接硬件与应用程序的系统程序,其基本功能有(进程管理)、进程间通信、(内存管理)、I/O资源管理。4、从嵌入式操作系统特点可以将嵌入式操作系统分为(实时操作系统)和分时操作系统,其中实时系统亦可分为(硬实时系统)和软实时系统。5、内核负责管理各个任务,或者为每个任务分配CPU寸间,并且负务之间的(通信),内核的基本服务是(任务切换)。6、嵌入式开发一般采用(宿主机/目标机方式)方式,其中宿主机一般是指(PC机或者台式机)。7、哈佛体系结构数据空间和地址空间(分开),ARM7TDM^用(冯诺依曼体系)的内核架构。8、ARM7TDMI采用(3)级流水线结构,ARM920TDM采用(5)级流水线。9.按操作系统的分类可知,Dos操作系统属于顺序执行操作系统,Unix操作系统属于(分时)操作系统,VxWorks属于(实时嵌入式)操作系统。10、ARM7TDM中,T表示支持16位Thumb指令集,D表示(在片可调试),M表示内嵌乘法器支持在线断点和调试。Multiplier,I表示(嵌入式ICE),二、选择题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。1、要使CPU能够正常工作,下列哪个条件不是处理器必须满足的。(D)(A)处理器的编译器能够产生可重入代码(B)在程序中可以找开或者关闭中断(C)处理器支持中断,并且能产生定时中断(D)有大量的存储空间2、下面哪种操作系统最方便移植到嵌入式设备中。(D)(A)DOS(B)unix(C)Windowsxp(D)linux3、下面哪个选项不是SUB设备的特点。(B)(A)串行通信方式(B)不可热拨插(C)分HOSTDEVICE和HUB(D通信速率比RS232快4、下面哪种嵌入式操作系统很少用于手机终端设备上。(C)(A)Symbian(B)WinCE(C)uc/osD)linux5、以下哪项关于SRAM和DRAM勺区别是不对。(A)(A)SRAM比DRAMS(B)SRAM:匕DRAM耗电多(C)DRAM存储密度比SRAM%得多(D)DRM需要周期性刷新6、uc/os操作系统不包含以下哪几种状态。(C)(A)运行(B)挂起(C)退出D)休眠7、0x07&0x11的运算结果是。(A)(A)0x01(B)0x11(C)0x17(D)0x078、以下哪种方式不是uc/os操作系统中任务之间通信方式。(C)(A)信号量(B)消息队列(C)邮件D)邮箱9、以下哪种方式不是文件系统的格式。(B)(A)FAT(B)DOS(C)NTFSD)Ext10、在将uc/os操作系统移植到ARM处理器上时,以下哪些文件不需要修改。(A)(A)OS_CORE.C(B)include.h(C)OS_CPU.H(D)OSTaskInit三、判断题:共5小题,每小题2分,满分10分。1、所有的电子设备都属于嵌入式设备。(F)2、冯诺依曼体系将被哈佛总线所取代。(F)3、嵌入式linux操作系统属于免费的操作系统。(T)4、移植操作系统时需要修改操作系统中与处理器直接相关的程序。(T)5、USB2.0的最大通信速率为12M/S。(F)简答题:共2小题,每小题10分,满分20分。1、根据嵌入式系统的特点,写出嵌入式系统的定义。以应用为中心、以计算机技术为基础、软硬件可裁减、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统2、试分析实时操作系统的工作状态特点及相互之间的转换。运行:获得CPU的控制权;就绪:进入任务等待队列,通过调度中转为运行状态;挂起:任务发生阻塞,称出任务等待队列,等待系统实时事件的发生而被唤醒,从而转为就绪或者运行;休眠:任务完成或者错误等原因被清除的任务,也可以认为是系统中不存在的任务。多任务四、分析计算题:共2小题,每小题10分,满分20分。1、试写抢占式和非抢占式的区别。执行的过程中对中断处理方式不一样,抢先式:某一中断执行完成后,如果有更高优先级的任务处于就绪状态,将执行更高优先级任务,而非抢占式不一样,一个任务只有主动放弃CPU的控制权,其它任务才能够获得CPU的控制权。2、从嵌入式系统底层到上层应用软件,试分析嵌入式计算系统的组成主要分为哪几个部分,并写出各部分所完成的功能。(1)硬件层;(2)中间层(嵌入式系统初始化,硬件相关的驱动程序);(3)软件层(操作系统、文件系统、GUI,网络及通用组件);⑷功能层。五、专业名词解释(写出以下英文简写对应的中文名称):共5小题,每小题2分,满分10分。(1)RTOS(2)CISC(3)Kernel(4)Scheduler(5)non-preemptive(1)RTOS(实时操作系统);(2)CISC(复杂指令集);(3)Kernel(内核)(5)non-preemptive(非抢先式)(4)Scheduler(调度)1.请简述嵌入式系统的设计过程。嵌入式系统得设计过程:(1)系统定义与需求分析(2)系统设计的初步确立(3)初步设计方案性价比评估与方案评审论证(4)完善初步方案、初步方案实施(5)软硬件集成测试(6)系统功能性能测试及可靠性测试2.简述ARM处理器的工作状态。ARM处理器的工作状态:ARM状态:32位,ARM状态下执行字对准的32位ARM指令;Thumb状态:16位,Thumb状态下执行半字对准的16位Thumb指令。在Thumb状态下,程序计数器字。PC使用位1选择另一个半3.简述ARM处理器的7种运行模式及各自的用途。ARM处理器的7种运行模式:(1)用户模式:正常用户模式,程序正常执行模式。(2)FIQ模式:处理快速中断,支持高速数据传送或通道处理。(3)IRQ模式:处理普通中断。(4)SVC模式:操作系统保护模式,处理软件中断。(5)中止模式:处理存储器故障,实现虚拟存储器和存储器保护。(6)未定义模式:处理未定义的指令陷阱,支持硬件协处理器的软件仿真(7)系统模式:运行特权操作系统任务。4.简述BLX、SWI、STM、LDM、MOV、MVN的含义BLX:带链接和状态切换的跳转指令LDM:加载多个寄存器指令MOV:5.请解释下列程序中的各条指令:SWI:软件中断指令STM:批量内存字写入指令数据传送指令MVN:数据取反传送指令.global_start/*声明全局变量*/.text/*将操作符开始的代码编译到代码段*/_start:/*程序代码开始标志*/movsp,#stack_top/*定义堆栈位置*/movr0,#x/*x的值放入r0*/strr0,[sp]/*r0的值保存到堆栈*/movr0,#y/*y的值放入r0*/ldrr1,[sp]/*取堆栈中的数到r1*/addr0,r0,r1/*将r0中的数和r1中的数相加的结构放入strr0,[sp]/*r0的值保存到堆栈*/.equx,45/*定义变量x,并赋值为45*/.equy,64/*定义变量y,并赋值为64*/.equstack_top,0x1000/*定义栈顶0x1000*//*程序结束,进入死循环*/r0*/stop:bstop.end分析说明S3C44B0X的总线优先级顺序。DRAMrefreshcontroller(DRAM刷新控制器);LCD_DMAZDMA0,1BDMA0,1Externalbusmaster(外部总线控制器);Writebuffer(写缓冲区)Cache和CPU。S3C44B0X中具有哪几个定时器?分别有哪些功能特性?6个16位定时器:都可以工作在中断或DMA模式。定时器0、1、2、3、4有PWM功能,定时器输出引脚。PWM定时器特性为:?6个基于DMA或中断操作的16位定时器?3个8位预分频器,2个5位除法器和1个4位除法器。?输出波形可编程的功率控制器(PWM)?自动重装或短脉冲模式(One-shotPulseMode)?死区发生器1个看门狗定时器:看门狗定时器具有以下特性:?带中断请求的普通间隔定时器模式?当定时器计数值达到0时,内部复位信号被激活128MCLK周期5只是一个内部定时器而无8.S3C44B0X中功耗管理的5种模式是什么?S3C44B0X中功耗管理的5种模式:正常模式:正常运行模式;低速模式:不加PLL的低时钟频率模式;空闲模式:只停止CPU的时钟;停止模式:停止所有的时钟;LCD的SL空闲模式:SL空闲模式的进入将导致LCD控制器开始工作。此时,CPU和除LCD控制器外的所有外设都停止工作。简述BootLoader的作用。Bootloader作用:系统引导程序,负责Linux内核的启动,用于初始化系统资源,包括SDRAM。这部分代码用于建立Linux内核运行环境和从Flash中装载初始化Ramdisk等。它首先完成系统硬件的初始化,包括时钟的设置、存储区的映射、堆栈指针的设置等;然后跳转到操作系统内核的入口,将系统控制权交给操作系统。写出S3C44B0X的UART1的初始化设置程序代码。UART初始化程序:staticintwhichUart=0;voidUart_Init(intmclk,intbaud){inti;If(mclk==0)mclk=MCLK;rUFCON1=0x0;rUMCON1=0x0;rULCON1=0x3;rUCON1=0x245;rUBRDIC1=((int)(mclk/16./baud+0.5)-1);for(i=0;i<100;i++);}ARM常见的寻址方式有哪些?立即寻址寄存器寻址寄存器间接寻址基址加偏址寻址堆栈寻址块拷贝寻址相对寻址嵌入式系统软件的层次结构并简要介绍?嵌入式系统软件的层次结构:驱动层程序:驱动层程序是嵌入式系统中不可缺少的重要部分,使用任何的外部设备都需要有相应驱动层程序的支持,他为上层软件提供了设备的操作接口。驱动层程序一般包括硬件抽象层HAL、板极支持包BSP和设备驱动程序。实时操作系统RTOS:对于使用操作系统得嵌入式系统而言,操作系统一般以内核映像的形式下载到目标系统中。内核中通常必需的基本部件是进城管理、进程间通信、内存管理部分,其他部件如文件系统、驱动程序、网络协议等都可以根据用户要求进行配置,并以相关的方式实现。这样一来,整个嵌入式系统与通用操作系统类似,功能比不带有操作系统得嵌入式强大了很多。操作系统的应用程序接口API:API是一系列复杂的函数、消息和结构的集合体。在计算机系统中有很多可通过硬件或外部设备去执行的功能,这些功能的执行可通过计算机操作系统或硬件预留的指令调用。因而系统提供标准的API函数,可加快用户应用程序的开发,统一应用程序的开发标准,也为操作系统版本的升级带来了方便。应用程序:用户应用程序主要通过调用系统的API函数对系统进行操作,完成用户应用功能开发。试述两种常见的ARM开发环境及其特点?两种常见的ARM开发环境及其特点:ADS/SDTIDE开发环境:它由ARM公司开发,使用了CodeWarrior公司的编译器;集成了GNU开发工具的IDE开发环境:它由GNU的汇编器as、交叉编译器gcc、和链接器Id等组成。14:S3C44B0XI2C总线接口操作有那四种操作方式?S3C44B0XI2C总线接口操作的四种操作模式:主传送模式主接收模式从传送模式从接收模式15:嵌入式系统的发展趋势,(+谈谈个人设想)即将迎来以ARM为核心的32位浪潮嵌入式系统应用的高低端:以4位、8位单片机或为控制器(MCU)为核心的嵌入式系统,早已广泛的应用于工业控制、军事、航空航天、家电等各个领域,极大地推动了IT技术的发展。目前这些属于最低端应用的嵌入式系统。这些低端应用市场范围非常广泛,局部带动了低端应用。即将来临的32位浪潮:随着嵌入式系统的不断发展,当应用越来越复杂、使用范围越来越广时,8位处理器已经无法满足的需要,此时32位SoC为高性能嵌入式系统开发提供了功能丰富的硬件平台,也为实时嵌入式操作系统的广泛应用提供了硬件基础。因此,以32位处理器作为高性能嵌入式系统开发的核心已是嵌入式技术发展的必然趋势。32位向ARM转移,形成ARM市场主导地位:在嵌入式微处理器中,虽然有多种嵌入式处理器可供选择,但是ARM处理器核以其低功耗、高性能等突出优点已在32位嵌入式应用中稳居第一。ARM已成为移动通信、手持计算、多媒体数字消费等嵌入式解决方案事实上的标准。优良的性能和广泛的市场定位极大地增加和丰富了ARM的资源,加速了ARM处理器面向各种应用的系统芯片的开发和发展。嵌入式系统与Internet的融合:为适应嵌入式分布处理结构和应用上网需求,面向21世纪的嵌入式系统要求配备标准的一种或多种网络通信接口。针对外部联网要求,嵌入设备必需配有通信接口,相应需要TCP/IP协议簇软件支持;由于家用电器相互关联(如防盗报警、灯光能源控制、影视设备和信息终端交换信息)及实验现场仪器的协调工作等要求,新一代嵌入式设备还需具备IEEE1394、USB、CAN、BIuetooth或IrDA通信接口,同时也需要提供相应的通信组网协议软件和物理层驱动软件。为了支持应用软件的特定编程模式,如Web或无线Web编程模式,还需要相应的浏览器,如HTML、WML等。未来嵌入式系统的发展趋势近几年,在消费电子、工业应用、军事国防、网络设备等领域的嵌入式应用,为中提供了难得的发展机遇。另外,嵌入式技术又不断地刺激新的技术的产生——信息家电、医疗电子病历、微小型智能武器等方面应用也日益广泛,应用深度也进一步加强。互联网的普及、微电子加工工艺的提高、3C技术的普遍融合、使用者需求的增多、信息服务应用的生活化、技术的渗透性和融合性、设备的关联性以及个性化服务的普遍需求。因而,移动化处理信息,即随时随地的获取信息、处理信息等,成为信息社会把握先机而制胜的必然武器。日益发展的嵌入式已能够满足人们随时随地利用任何设备和手段来接收、处理和发布信息第页共16页PAGE\*MERGEFORMAT#的需求。低成本、低功耗的消费电子和宽带、无线通信以及处理运算的高效计算结合技术将进一步刺激和加速嵌入式技术的发展,造就更广阔的市场空间。PAGE\*MERGEFORMAT#第页共16页试题三选择题1、以下说法不正确的是(B)。A、任务可以有类型说畀°CB任务可以返回一个数值C、任务可以有形参变量2下列描述不属于RISC机的特点的是(C。A流水线每周期前进一步。B更多通用寄存器。C指令长度不固定,执行需要多个周期。D独立的外部存储器之间的传输。A0x2Xx65字节单元中‘D以X02存储,则4gCOSI中对关键代码段由于希望在执行的过程中不被中断干扰,通常采用关中断的方式,以下关中断之前的中断开关状态的是(D)A.先CLI、执行关键代码、再STIC.执行关键代码、表示逻辑LI、6A.D、任务是一个无限循环2000H元的内容为(D°X86汇编代码正确而且不会改变POPF5v-15vB、0x000000080x00000014B.先Sg执行关键代码、再CLIPUSHF_口先PUSCF执行关键代码、再+(RD2.(0—答:根据UBRDIVn=(int)(PCLK/(bpsx16))-寄存器UBRDIV0=(int)(40000000/2400*16)-1=1040=10000010000(B)寄存器UBRDIV1=(int)(40000000/115200*16)-1=20=10100(B)任务控制块(TCB)的数据结构OS-TCB表示任务的状态。当任务的CPU控制权被枪战后,任务控制块用来保存该任务的状态。当任务重新获得CPU的控制权后,任务控制块能够保证任务从被中断的位置继续正确执行。任务控制块提供了任务的基本信息,如任务的执行状态、优先级和堆栈位置等。1,text—31LDRR0,=0x56000010«R0为CPBC加寄存此寄存器崛十遇择曲lib各啪ja的功甌也世输:恢绘燈入、胚雄其也vov111,^0x000041X)0cf?LIMGPB7为输出口7LDKSO.=QiS6D00011m设却GPBDAT奇存器此寄存器『预/耳堺口H备引算的救耕SR1,=0^.00000(X)0段可让1EDI焜疋9STFRl、[K0©CPB7输出0.LED1点涯10MAIN.LOaP:11BM?,iy_L00P试题四(一)、填空题1、嵌入式系统的三要素是嵌入、专用、计算机。2、从嵌入式系统设计的角度来看,嵌入式软件结构可以分为循环轮询系统、前后台系统、单处理器多任务系统以及多处理器多任务系统等几大类。3、衡量系统实时性的主要指标有:响应时间、生存时间、吞吐量。4、软件一般包括:程序、数据和文档。5、嵌入式软件的体系结构通常包括:驱动层、操作系统层、中间件层和应用层。6、嵌入式系统中的任务管理主要包括:创建任务、删除任务、改变任务状态和查询任务状态等功能。7、任务由代码、数据、堆栈和任务控制块TCB勾成。&TCE包含操作系统用来控制任务所需要的信息,女口任务状态、CPI寄存器、调度信息、内存管理信息和I/O状态信息等。9、任务的主要特性包括:动态性、并行性和异步独立性。10、任务的特性可能通过优先级、周期、计算时间、就绪时间和截止时间等参数来进行描述。11、任务的三种基本状态为:等待、就绪和执行。12、BSP勺主要特点是:硬件相关性与操作系统相关性。13、评价实时操作系统的主要指标有:系统响应时间、任务切换时间、中断延迟等。14、实时系统与分时以及批处理系统的主要区别是高及时性和高可靠性。15、创建任务原语的主要功能有:为任务申请一个TCE并初始化、将新建任务设置为就绪状态并放入就绪队列中。16、采用优先级调度算法时,一个高优先级任务由阻塞状态变为就绪状态时,可以有非抢占式和抢占式两种处理方式。17、一个从磁盘上读文件的任务,在得到了所需要的文件信息后,它的状态应该从阻塞转换成就绪。18、存储管理中,对存储空间浪费是以内部碎片和外部碎片两种形式表现出来的。19、地址重定位可以分为静态重定位和动态重定位两种。20、静态重定位是在程序装入时进行,动态重定位是在程序执行时进行。21、设备管理的主要目标是:提高外部设备的利用率、为用户提供统一的使用界面。22、信号量的物理意义是当信号量值大于零时表示可分配资源的个数;当信号量值小于零时表示等待该资源的任务的个数。23、用P、V操作管理临界区时,一个任务在进入临界区前应对信号量执行P操作,退出临界区时应对信号量执行V操作。24、在嵌入式系统中,如果被多个任务同时操作,某些资源可能会变得不确定,这些资源包括:共享事件结构、共享文件、共享硬件设备。25、在对一个设备进行操作之前要完成下面三步:安装设备驱动、初始化设备、打开一个设备并得到文件描述符。26、块设备以块为单位传输数据,字符设备以字节为单位传输数据。__(四)、简答题1、什么是嵌入式系统?嵌入式系统的特点是什么?嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件可裁剪,功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统的主要特点如下:高实时性OS系统内核小专用性强系统精简实时性和可靠性要求高嵌入式软件开发走向标准化嵌入式系统需要专门的开发工具和环境2、嵌入式软件的特点有哪些?规模相对较小,开发难度大快速启动,直接运行实时性和可靠性要求高程序一体化两个平台3、嵌入式系统的主要应用领域有哪些?消费电子、通信设备、家庭设备、汽车电子、工业控制、军事国防、医疗电子等。4、按实时性来分,嵌入式系统可分为几类?它们的特点是什么?可分为硬实时系统和软实时系统。其中硬实时系统对响应时间有严格要求,如果系统响应时间得不到满足,就会引起系统崩溃或致命的错误;软实时系统对响应时间有要求,但系统响应时间得不到满足时,不会导致系统崩溃或致命的错误。0deadlinetime1HardSystemSoftSystem5、影响系统响应时间的主要因素有哪些?影响系统响应时间的主要因素有:任务调度算法任务执行时间事件发生的频率任务数量中断响应时间任务响应时间资源共享任务间通信6、根据自己的理解描述嵌入式系统的发展趋势?行业性嵌入式软硬件平台一一标准化互联网的普及一一网络化半导体技术的改善小型化3G技术的快速融合一一功能多样化使用者的需求一一个性化信息服务应用生活化一一泛在化28、请简述计数信号量的工作原理。计数器信号量通常用于保护多实例访问的资源。计数信号量可以看成一个内存单元,这个内存单元的内容保存一个计数值。当一个任务用semTake获取一个计数信号量时,会有两种结果:如果这个信号量的计数是非0的,那这个信号量的计数就会减1,调用semTake的任务也会继续执行;如果这个信号量的计数是0,调用semTake的任务会被阻塞,等待信号量的可用。如果用semTake获取一个计数信号量时指定了超时,并且达到了超时值,这个任务会从阻塞队列移出并移入到就绪队列,同时返回错误状态。有可能会有几个任务同时等待在一个计数信号量上。当一个任务调用semGive()释放一个计数信号量时,等待在这个计数信号量队列中的任务会解除阻塞状态。如果没有任务等待,该信号量计数会加1。29、简述消息队列的工作机制?工作模式?有何优缺点?消息队列是任务之间传递信息的一种机制,允许多个任务,中断之间发送以指针方式定义的变量或其他信息,指向的数据结构的变量类型也可以有所不同;可以看作多个邮箱组成的数组,共用一个等待列表,可以用作计数型信号量。主要的工作模式有两种:C/S模型、双工通信模型。优点:可以携带少量信息,可以缓冲,防止峰值。缺点:效率不高。传递指针信息,没有对消息进行复制,不能对原消息进行修改,效率相对高(vxWorks会复制消息)。30、简述管道的工作机制?与消息队列相比,各有什么优点?管道是构筑于消息队列之上,由pipeDrv所控制的一个虚拟的I/O设备,具有标准的I/O接口。消息队列的优点:具有超时功能、消息有优先级、更快、可以被删除。管道的优点:使用标准的I/O接口,如read(),write(),open(),close();可以通过iotaskStdSet()重定向;在Select()重可以使用文件描述符。31、简要描述VxWorks中信号的定义和用途。改为简要描述Linux中信号和信号量的区别信号是一种软件通知,用以通知处理事件的任务。VxWorks支持软件信号功能,信号异步地改变任务的控制流,任何任务都可以向另外一个任务发送信号。信号多用于异常处理,很少用于任务间通信。32、实时系统软件开发不同于其他软件工程的主要特征有哪些?实时系统的设计是受资源约束的。时间是实时系统的首要资源,除此以外,其他系统资源如内存大小等,在实现系统目标时都有可能与时间进行折衷。实时系统是紧凑而复杂的,通常需要软件硬件协同设计。实时系统的运行常常不需要用户的参与。33、选择嵌入式系统处理器时主要考虑哪些因素?主要考虑的因素有应用类型、I/O接口、主频、功耗、所支持的存储器类型、总线、价格、封装、产品的生命力和厂家的实力、技术支持和第三方软件的支持。34、选择嵌入式操作系统时主要考虑哪些因素?是自建还是购买,或是使用开源软件;应用对嵌入式操作系统的功能、性能的要求;与硬件平台和开发工具的关系;产品所属的应用领域是否有行业的标准或限制;技术支持;版税或服务费的问题。*35、嵌入式Linux网络驱动程序的设计步骤和要点。*36、实验十五网络编程实验一服务器/客户机。*37、下图的代码使用两个信号量实现了两个任务之间的同步。uC/OS-II中使用信号量,通过调用OSSemCreate()建立信号量,并对信号量的初始计数值赋值。该初始值为0到65,535之间的一个数。如果信号量是用来表示一个或者多个事件的发生,那么该信号量的初始值应设为0。如果信号量是用于对共享资源的访问,那么该信号量的初始值应设为1(例如,把它当作二值信号量使用)。通过调用OSSemPost()函数发送一个信号量,通过调用OSSemPend函数等待一个信号量。如果信号量当前是可用的(信号量的计数值大于0),将信号量的计数值减1,然后函数将“无错”错误代码返回给它的调用函数。如果信号量的计数值为0,而OSSemPend()函数又不是由中断服务子程序调用的,则调用OSSemPend(函数的任务要进入睡眠状态,等待另一个任务(或者中断服务子程序)发出该信号量。信号量创建的代码如下,信号量Sem初始为可用状态,而信号量Sem初始为不可用状态。Semi=OSSemCreate(O);Sem2=OSSemCreate(l);任务TaskLED必须等待Sem可用才能够继续往下运行,而Sem在TaskSEG^发送。同样TaskSEG、须等待Sem可用才能够继续往下运行,而Sem在TaskLED中发送,这样就实现了程序中“…”之间代码的顺序执行,而不受OSTimeDly的延时值的影响。ucidIaskLEB(v»id«Id){1HT8URrplp;for(DSSentvstCSenl);OSTinrDLv(?O0);}uuldIdtkiEG(VuiJ*[d)<1N18URepin;for(<吧!iEnma【証mi”删叩耳):DSTlnMlf(10Q):F*uaitforttie*//*tl)rsfFidphor?吋/*uaiteshortvhilp/*ualtFortrie*;t*n^phnrp*//«rhp^^n^phnr?*//«u^ira^hortubilp*/*38、〈〈嵌入式系统实验指导书》中,某个ads实验代码,加注释试题五说明:本试卷共四大题,试卷满分0分,考试时间20分钟。一、填空题请将答案填入题后括号中共10小题,每小题分,满分20分。1、一般而言,嵌入式系统的构架可以分为4个部分:处理器、()、输入/输出和软件,一般软件亦分为(和应用软件两个主要部分。2、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为(3、操作系统是联接硬件与应用程序的系统程序,其基本功能有进程管理、(4、从嵌入式操作系统特点可以将嵌入式操作系统分为实时操作系统和(软实时系统。5、内核负责管理各个任务,或者为每个任务分配CPU寸间,并且负责任务之间的6、嵌入式开发一般采用()方式,其中宿主机一般是指(7、哈佛体系结构数据空间和地址空间(),ARM920采用(8、ARM7TDM采用()级流水线结构,ARM920TDMI用()以及片上系统。)、I/O资源管理。),其中实时系统亦可分为(),嵌入式DSP(()。)的内核架构。)级流水线。),内核的基本服务是()。9.按操作系统的分类可知,Dos操作系统属于顺序执行操作系统,Unix操作系统属于(操作系统。10、ARM7TDMP,T表示支持16位Thumt指令集,D表示(持在线断点和调试。),Ml示内嵌乘法器Multiplier二、选择题请将答案填入题后括号中共10小题,每小题分,下面哪种操作系统不属于商用操作系统。A.windowsxpB.Linux下面哪点不是嵌入式操作系统的特点。A.内核精简B.专用性强下面哪种不属于嵌入式系统的调试方法。C.VxWorksC.功能强大A.模拟调试B.软件调试C.BDM/JTAG调试在嵌入式ARMt理器中,下面哪种中断方式优先级最高。A.ResetB.数据中止C.FIQNANDFLASH和NORFLAS的区别正确的是。A.NOR的读速度比NAN稍慢一些B.NAND的写入速度比NO慢很多C.
/
本文档为【(完整word版)嵌入式期末考试试卷(word文档良心出品)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索