嵌入式系统复习提纲_第1页
嵌入式系统复习提纲_第2页
嵌入式系统复习提纲_第3页
嵌入式系统复习提纲_第4页
嵌入式系统复习提纲_第5页
免费预览已结束,剩余4页可下载查看

下载本文档

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

文档简介

1、嵌入式系统复习提纲一、简答题1、嵌入式开发环境主要包括哪些组件?嵌入式系统开发需要交叉编译和在线调试的开发环境,主要包括:宿主机目标机(评估电路板)基于JTAG的ICD仿真器、或调试监控软件、或在线仿真器ICE运行于宿主机的交叉编译器和链接器、以及开发工具链或软件开发环境嵌入式操作系统2、ARM系结构支持几种类型的异常?优先级状态如何?当多个异常同时发生时,系统根据固定的优先级决定异常的处理次序。异常优先级由高到低的排列次序为:复位异常、数据异常、快速中断异常(FIQ)、外部中断异常(IRQ)、预取异常、软中断异常(SWI)、未定义指令异常。3、请描述建立一个嵌入式开发平台的步骤?(1)连接主

2、机和目标板(2)使用flash工具烧写bootloader配置并启动主机的bootp服务(4)配置并启动主机的tftp服务(5)使用tftp下载内核及根文件系统镜像到目标板,重启目标板(6)配置并启动NFS服务(7)在目标板使用mount挂载主机的目录(8)再次使用bootp命令确认bootp服务是否建立,使用tftp命令确认tftp服务建立。(9)将内核镜像和根文件系统cp到tftp根目录。(10)重启目标板,确认嵌入式linux正常启动。4、简述ARMfe理器从异常返回的步骤?异常处理完毕之后,ARM微处理器会执行以下几步操作从异常返回:1)、将连接寄存器LR的值减去相应的偏移量后送到PC

3、中。2)、将SPSRM制回CPSR中。3)、若在进入异常处理时设置了中断禁止位,要在此清除。可以认为应用程序总是从复位异常处理程序开始执行的,因此复位异常处理程序不需要返回。5、ARM体系结构的技术特点是什么?1)、体积小、低功耗、低成本、高性能。2)、支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件。3)、大量使用寄存器,指令执行速度更快。4)、大多数数据操作都在寄存器中完成。5)、寻址方式灵活简单,执行效率高。6)、指令长度固定。6、指令ADRADRLLDRNO混如何处理地址值读入到寄存器中的?ADR是将基于PC或者寄存器的地址值读入到寄存器的,ADR伪指令

4、通常被替换成一条ADD指令或SUB指令来实现该ADR旨令的功能。ADR小指令与ADR旨令的最大不同之处是,它可以读取更大范围内的地址,而且被编译器替换成2条数据处理指令。LDR将一个32位的立即数或者一个地址值读取到寄存器中。大范围的地址读取。NOP&汇编时将被替换成ARW的空操作。7、为什么要使用Thumb模式?与ARM(弋码相比较,Thumb代码的两大优势是什么?如何完成Thumb指令模式和ARM旨令模式之间的切换?为了兼容数据总线宽度为16位的应用系统,使用了ARM旨令系统的一个子集Thumb指令系统。与等价的32位代码相比,Thumb指令集在保留32位代码优势时,系统既节省存储

5、空间及成本,又不降低处理性能,低功耗,小体积,低成本。ARM/Thumb间的状态切换是通过一条专用的转移交换指令BX或BLX来实现的。BX利用Rn寄存器中目的地址值的最后一位来判断跳转后的状态。当最后一位为。时,表示转移到ARM优态;当最后一位为1时,表示转移到Thumb状态。8、简述ARMBt生异常时,AR朦做哪些事情?当异常产生时,ARMcore:拷贝CPSR到SPSR_<mode>设置适当的CPSR位:改变处理器状态进入ARM状态改变处理器模式进入相应的异常模式设置中断禁止位禁止相应中断(如果需要)保存返回地址到LR_<mode>设置PC为相应的异常向量9、嵌入式

6、系统软件的层次结构并简要介绍?无操作系统:应用层,驱动层,硬件层;有操作系统:应用层,内核层,驱动层,硬件层;应用层:实现系统功能的应用程序。驱动层:实现嵌入式系统硬件和软件之间的接口。硬件层:整个嵌入式系统的根本。内核层:嵌入式硬件和软件之间的抽象层,它具有任务管理、定时、设备I/O主管、动态存储分配、任务间同步通信等功能。10、下列AR僚件码的含义是什么?(1) EQ:Equal,相等(2) NE:NotEqual,不相等(3) GE:GreaterorEqual,有符号数大于或等于(4) LT:LessThan,有符号数小于(5) MI:Minus,负数11、ARM7种功能模式是什么?1

7、)、用户模式(Usr):正常的程序执行状态2)、快速中断模式(FIQ):处理快速中断,支持高速数据传送或通道处理3)、中断模式(IRQ):处理普通中断4)、管理模式(SVQ:操作系统使用的保护模式5)、系统模式(System):运行具有特权的操作系统任务6)、数据访问终止模式(Abort):数据或指令预取终止时进入该模式7)、未定义指令终止模式(Undefined):未定义的指令执行时进入该模式12、简述Linux启动过程。加载BIOS-读取MBR-BootLoader-加载内核-用户层init-inittab文件来设定系统运行的等级(一般3或者5,3是多用户命令行,5是界面)-init进程执

8、行rc.sysinit-启动内核模块-执行不同级别运行的脚本程序-执行/etc/rc.d/rc.local(本地运行服务)-执行/bin/login,就可以登录了。13、简述网络文件系统NFS,并说明其作用。网络文件系统是应用层的一种应用服务,它主要应用于Linux和Linux系统、Linux和Unix系统之间的文件或目录的共享。对于用户而言可以通过NFS方便的访问远地的文件系统,使之成为本地文件系统的一部分。采用NFS之后省去了登录的过程,方便了用户访问系统资源。14、嵌入式系统的组成,能画出嵌入式系统的组成框架。嵌入式系统由软件系统和硬件系统两部分组成。硬件是其基础,软件是其核心与灵魂。*

9、人遇*作用-CnJit人就哧1情脚汴£鼬11,14门看卜阳格由蹄凡其他“科噌15、 简述Bootloader的作用Boot-loader的作用与PQ的BIOS类似,通过Boot-loader可以完成对ARM主要部件如CPU、SDRAM、Flash、串行口的初始化,同时下载文件到硬件板,对Flash进行擦除与编程。可以初始化硬件设备,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境,最后从别处(Flash、以太网、UART)载入内核映像并跳到入口地址。16、linux下如何配置ntp服务。(1)基础环境操作系统、ntp、机器,服务端、客户端(2)安装

10、ntp(3)服务端配置(4)客户端配置(5)验证分开开启服务端及客户端的ntp服务,并配置开机自启。(6)配置定时任务在客户端配置crontab定时任务使客户端每隔一段时间自动与服务器端同步时间。17、简述BLXSWkSTMLDMMOVMVN勺含义。BLX:带链接和状态切换的跳转指令SWI:软件中断指令STM:批量内存字写入指令LDM:加载多个寄存器指令MOV:数据传送指令MVN:数据取反传送指令18、Gcc编译时使用静态库与动态库的区别?1)静态库库的名字一般是libxxx.a;利用静态函数库编译成的文件比较大,编译后的执行程序不需要外部的函数库支持。如果静态函数库改变了,那么程序必须重新编

11、译。2)动态库库的名字一般是libxxx.so;相对于静态函数库,程序执行到相关函数时才调用该函数库里的相应函数,因此动态函数库所产生的可执行文件比较小。程序的运行环境中必须提供相应的库。动态函数库的改变并不影响你的程序,所以动态函数库的升级比较方便。19、专业名词解释。(1) RTOS实时操作系统(2) CISC:复杂指令集(3) Kernel:内核(4) Scheduler:调度non-preemptive:非抢先式20、ARM常见的寻址方式有哪些?1)立即寻址:MOVR0,#0xFF002)寄存器寻址:MOVR1,R23)寄存器偏移寻址:MOVR0,R2,LSL#34)寄存器间接寻址:L

12、DRR1,R25)基址寻址:LDRR2,R3,#0x0F6)多寄存器寻址:LDMIAR1!,R2-R7,R127)堆栈寻址:STMFDSP!,R1-R7,LR8)块拷贝寻址:STMIAR0!,R1-R79)相对寻址:BLROUTE121、简要叙述实时系统的评价指标?在实时系统中主要有三个指标来衡量系统的实时性:响应时间(ResponseTime):是计算机识别一个外部事件到作出响应的时间,在控制应用中它是最重要的指标,如果事件不能及时的处理,系统可能就会崩溃。生存时间(SurvivalTime):是数据有效等待时间,在这段时间里数据是有效的。吞吐量(Throughput):是在一给定时间内(秒

13、),系统可以处理的事件总数。例如通讯控制器用每秒钟处理的字符数来表示吞吐量,吞吐量是平均响应时间的倒数。22、请简述Makefile的规则的结构和采用Make巾le有什么优点?Makefile文件描述了目标文件之间的依赖关系,以及指定编译过程中使用的工具规则由目标和命令组成。目标定义目标的的依赖关系:命令则是shell命令,是生成目标的操作。Makefile文件的优点是:1、不必重复输入命令,只要直接Make一下就可以;2、Makefile可灵活完成复杂的编译及层次结构;3、使用Make巾le,可极大地提高软件开发效率;、程序题1、程序每句指令后面解释。;定义一个代码段;程序入口;若Z=1,跳

14、转至ijCWORD将R4-R11的数据存储到R1指向的地址上,R1值AREACOPYBS,CODE,READONLYENTRYLDRRO,=SRCLDRR1,=DSTMOVR2,#20BCOPYMOVSR3,R2,LSR,#3BEQCWORDOCOPYLDMIAR0!,R4-R11STMIAR1!,R4-R11更新SUBSR3,R3,#1BNEOCOPYCWORDANDR2,R2,#7BEQSTOPWCOPYLDRR3,R0,#4STRR3,R1,#4SUBSR2,R2,#1BNEWCOPY;若Z=0,跳转到WCOPYSTOP2、下面给出了一个SHELL程序。#!/bin/bashdir=$1

15、if-d$dirthencd$dirforfilein*doif-f$filethencat$fileecho“endoffile$filefidoneelseecho“baddirectoryname$dirfi3、在ADS编译环境程序如下。AREAJump,CODEREADONLYNUMEQU2;设置本程序的名称及属性;跳转表中的子程序个数ENTRY;程序执行的入口点StartMOVR0,#0MOVR1,#3MOVR2,#2BLFuncStopMOVR0,#0x18;本条与下条指令的作用是参数传递LDRR1,=&20026SWI0x123456FuncCMPR0#NUMMOVHSP

16、CLR;如果超出范围则程序返回ADRR3JTable;读取跳转表的基地址LDRPCR3,R0,LSL#2;根据参数R0的值跳转到相应的子程序JTableDCDDoAddDCDDoSubMz;3Mz;3R0为0时上面的代码将选择DoAddR0为1时上面的代码将选择DoSubDoAddADDR0,R1,R2MOVPCLRDoSubSUBR0,R1,R2;MOVPC,LR;END;结束汇编4、根据一段完整的汇编语言代码回答下面的问题。GLOBALReset_Handlerareastart,code,readwriteentrycode32numEQU20Reset_HandlerldrR0,=srcldrR1,=dstmovR2,#numldrsp,=0x30200000blockcopymovsR3,R2,LSR#3beqcopywordsstmfdsp!,R4-R11octco

温馨提示

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

评论

0/150

提交评论