1、嵌入式系统习题库及答案嵌入式系统习题库及答案1选择题1 以下哪个不是嵌入式系统的设计的三个阶段之一:(A)A 分析B 设计C 实现 D 测试2 以下哪个不是RISC架构的ARM微处理器的一般特点:(C )A 体积小、低功耗 B 大量使用寄存器C采用可变长度的指令格式,灵活高效D 寻址方式灵活简3 通常所讲的交叉编译就是在X86架构的宿主机上生成适用于ARM架构的(A )格式的可执行代码。A elf B exe C pe D sh4 下面不属于Boot Loader 阶段1所完成的步骤的是:(C )A. 硬件设备初始化。B. 拷贝Boot Loader的阶段2到RAM空间中。C. 将kernel
2、映像和根文件系统映像从Flash读到RAM空间中。D.设置堆栈。5. 以下哪个不是ARM的7种运行状态之一:( B)A快中断状态B挂起状态C中断状态D无定义状态6. 用以下的哪个命令可以把server的/tmp mount 到 client的/mnt/tmp 并且是(A)A.mount -o ro server:/tmp /mnt/tmpB. mount -o ro /mnt/tmp server:/tmpC.mount -o ro client:/mnt/tmp server:/tmpD.mount -o ro server:/tmp client:/mnt/tmp7. 以下哪个GUI是由中
3、国人主持的一个自由软件项目:(A )AMinuGUIBOpenGUI C MicroWindows D Qt/Embedded8. 在下面的叙述中,(D )不是嵌入式图形用户接口(GUI)的主要特点。A运行时占用的系统资源少B. 模块化结构,便于移植和定制C. 可靠性高D. 美观华丽,图形算法复杂9. 以下叙述中,不符合 RISC 指令系统特点的是(B )。A. 指令长度固定,指令种类少B. 寻址方式种类丰富,指令功能尽量增强C. 设置大量通用寄存器,访问存储器指令简单D. 选取使用频率较高的一些简单指令10. 通常所说的 32 位微处理器是指(C )。A. 地址总线的宽度为 32 位B. 处
4、理的数据长度只能为 32 位C. CPU 字长为 32 位D. 通用寄存器数目为 32 个11. 在嵌入式软件交叉调试过程中,宿主机与目标机之间的连接与通信方式有(ABCD)种。A.串口 B .并口 C. 网络 D .JTAG E . BDM12.ADD R0,R1,R2属于(B)。 A .立即寻址 B。寄存器间接寻址 C。寄存器寻址 D。 基址变址寻址13、ADD R0,R0,#1属于(A) A .立即寻址 B。寄存器间接寻址 C。寄存器寻址 D。 基址变址寻址14.数据字越长则(D)A时钟频率越快B 运算速度越快C对存储器寻址能力越差D精度越高 15.典型的计算机系统结构是(A)A 冯诺依
5、曼体系结构 B 哈佛结构 C 单总线结构 D双总线结构16.将传统的计算机系统芯片化,是嵌入式系统诞生后的(A )发展模式A 发展模式 B 创新模式 C 电子应用模式 D计算机应用模式17.下列不是RISC指令系统特点的是( C )A大量使用寄存器 B 采用固定长度指令格式 C 使用多周期指令 D 寻址方式多18.与通用操作系统相比嵌入式操作系统还必须具有的特点是( AB )A强稳定性,弱交互性 B 较强实时性 C 可伸缩性 D 功耗管理与节能19.下列那种设备不属于嵌入式系统产品( C )。A、PDA B ATM取款机 C 个人计算机 D 机顶盒20.下列是开源的嵌入式操作系统的是( A )
6、A.嵌入式linux B uc/os D Palm OS E WinCE21.下列是虚拟文件系统的是( B )A proc B vfs C ext D fat3222.英国电机工程师学会的定义:“嵌入式系统为控制、监视或辅助设备、机器或甚至工厂操作的装置,具有( A )A通常执行特定功能 B以微电脑和外围构成核心 C严格的时序和稳定性要求 D全自动操作循环23.下列任务不是在嵌入式产品设计初期,即需求分析阶段完成的任务是( D )A 性能 B 成本 C 功耗 D 操作系统和硬件选型24.下列不属于ARM处理器异常工作模式的是( D )A.快速中断模式 B. 未定义模式 C.数据访问终止模式 D
7、. 用户模式25.嵌入式软件开发与通用软件开发增加了( C )环节A. 代码编写 B. 代码调试 C. 代码固化 D. 软件测试26.嵌入式系统调试方式中不占用系统资源的调试方式是( C )A模拟器方式 B 监控器方式) C ICE在线仿真器 D IDE在线调试器方式27.ARM汇编程序中实现程序跳转的方式有( A )A 使用跳转指令 B 使用goto语句 C 向pc寄存器赋值 D 使用jump指令28.ADD R0,R1,R2中的第二操作数属于( B )方式。A .立即寻址 B。寄存器间接寻址 C.寄存器寻址 D.基址变址寻址29.烧写到FLASH里的是( B)格式的文件。A. .asm B
8、. .bin C. .obj D.cpp29汇编程序中的伪指令是在( C )阶段起作用。A. 编辑 B. 链接 C.编译 D. 执行30、目前嵌入式处理器的种类大约有( C )A. 500多种 B.800多种 C. 1000多种 D.2000多种31.LDM和STM指令最多可以操作( C )寄存器。A. 12个 B .2个 C. 16个 D. 32个二、填空题1.ARM内核有(T)(D)(M)(I)四个功能模块。2.通用寄存器R0R15可分为以下3块:(未分组寄存器R0-R7)(分组寄存器R8-R14)(程序计数器R15)3.ARM可用两种方法存储字数据:(大端模式)(小端模式)4.ARM体系
9、结构支持的最大寻址空间为(4G)。5.ARM是(Advanced RISC Machines)的简称。6.ARM CPU 体系结构中支持的特有的两种指令集是:(ARM指令集、)(Thumb指令集) 7.常用硬件调试工具有(实时在线仿真机)(逻辑分析仪)(ROM仿真机)(在线调试)8. ARM处理器的5种异常模式是(快速终端模式)(外部中断模式)(管理模式)(数据访问终止模式)(未定义模式)9.写出下列指令的含义LDR R1, R0, #0x08 : R0加0x08加载到R1里。即:R1R0+0xSUB R1, R1, R2, LSR R3 :R1R1-(R2右移R3位)LDR R1,R0,R2
10、,LSL#2! :R1(R2左移2位)+R0LDR R1, R0,R2, LSL #1 :R1R0 ,R0R0+(R2左移1位)10. LDM和STM指令最多可以操作( 16 )个寄存器.11.嵌入式软件开发流程分为( 需求分析)( 软件设计 )( 软件实现 )( 软件测试 )。12.BSP是( board support package)的缩写。13.ADS是(ARM developer suite )的缩写。14.JTAG是( Joint Test Action Group )的简称。JTAG技术是一种调试技术,它是在芯片内部封装了专门的测试电路TAP(Test Access Port,测
11、试访问口),通过专用的JTAG测试工具对内部节点进行测试调试技术。15.ARM汇编程序由(指令)( 为操作 )( 宏指令)三种指令组成。16.Bootloader依赖于(CPU体系结构),也依赖于具体板级设备配置。17.ARM中堆栈类型有(满递增)(满递减)(空递增)(空递减 )四种。18.ARM处理器具有( ARM )( Thumb)两种操作状态19.嵌入式系统开发硬件选择主要考虑( 硬件平台 )( 操作系统 )( 编程语言 )( 开发工具 )。20.ARM处理器内核型号中的字母TDMI的含义分别是( thumb支持16位指令集 )(支持片上debug )( 内嵌硬件乘法器multipile
12、r )( 嵌入式ICE支持片上断点和调试点)。21.FLASH存储器的特点是(低功耗大容量 )(擦写速度快)(可整片进行烧写 )22.SDRAM存储器特点是(单位空间存储量大 )( 价格便宜)( 运行速度快 )23.FLASH存储技术中两种流行的存储技术是(norflash )( nandflash ),其中成本较低,而接口比较复杂的flash存储技术是(nandflash )。24.ARM处理器有(快速中断模式 )(管理模式)(外部中断模式)(数据访问终止模式)(用户模式)(系统模式)(未定义模式)种运行模式。其中特权模式是:(快速中断模式 )(管理模式)(外部中断模式)(数据访问终止模式)
13、(系统模式)(未定义模式)异常模式是:(快速中断模式 )(管理模式)(外部中断模式)(数据访问终止模式)(未定义模式)。25.ARM处理器模式转换方式主要有(arm模式)(thumb模式)两种。26.ARM处理器有(37)个寄存器,其中系统模式和用户模式下有( 1 )物理寄存器可用其他5中模式下都有( 5 )物理寄存器可用27ARM处理其每种模式下都有一组寄存器可用,其中( 用户模式 )( 系统模式 )具有完全一样的寄存器组。28ARM处理器分两大类( 通用寄存器 )( 状态寄存器 ),其中( 通用)寄存器又可以分为未分组寄存器,分组寄存器和程序寄存器。29ARM中共有(6)个状态寄存器,其中
14、一个(用户模式和系统模式共用 )和五个(对应其他5种模式),其中CPSR包括( 条件标志位 )(中断标志位)(当前处理模式标志位 )(判别、状态位)内容。30ARM中状态寄存器的修改是通过( arm模式 )( thumb模式)指令来完成的。31ARM寄存器中SP通常叫做(堆栈指针),对应物理寄存器(R13),LR叫做(连接寄存器),对应(R14)物理寄存器,PC叫(程序计数器 ),对应( R15 )物理寄存器。32ARM体系结构支持的最大寻址空间为( 4GB )。33ARM汇编中的加载存储指令是用于在(连系存储单元)和(多寄存器)之间传送数据的,其中加载指令是用于将(一片连续存储器)中的数据传
15、送到(多个寄存器)中,存储指令则相反。加载指令主要有(LDM),存储指令主要有(stm )。34汇编伪指令的功能是(完成汇编程序的各种准备工作),伪指令仅在( 汇编 )过程中起作用。35ARM C/C+和汇编混合编程中都必须遵循ATPCS规则,它主要规定了(子程序中调用过程中寄存器使用的规则)(数据栈的使用规则)(参数传递规则),三方面的内容,其中寄存器使用规则中限定了子程序间的参数传递主要通过( R0)(R1)(R2)(R3 )寄存器来传递。36ATPCS规则中规定的堆栈类型为( FD类型 )。并且对堆栈的操作以(8个字节)为单位。37每一条ARM指令包含(4)位条件码,位于(指令的高字位
16、),条件码共有(16 )种,每种条件码可用( 2 )个字符来表示。38实现程序跳转的指令有( 跳转指令 )(直接向程序计数器取值)两种方法。39乘法指令和乘加指令按其运算结果可分为(32)( 64 )位两类。40数据交换指令在(一片连续存储器 )( 多个寄存器)之间交换数据。42ARM伪指令可以分为如下几类(符号定义伪指令)( 自定义伪指令 )(汇编控制伪指令)( 其他常用伪指令)等。42ARM汇编程序设计采用分段式设计,一个ARM源程序至少需要( 1)个代码段。43一个典型的嵌入式系统软件一般分为(硬件层)、(驱动层)、(操作系统层)、(应用层)。 四个层次。44Bootloader是( 在
17、操作系统内核运行之前运行的一段小程序 ),它的功能是(完成硬件的初始化和建立内存空间的映射关系 )。45Bootloadr启动目标板通常分两个阶段,第一阶段通常用(汇编)语言来实现。这一部分硬件相关,bootloader移植主要是修改这部分代码。第二阶段用通常用(C )语言来实现,具有( 既有较好的可读性 )( 可移植性)。46大多数Bootloader都有两种操作模式(启动加载模式 )( 下载 模式 )。其中(下载)模式只对开发人员有意义。47本学期实验所使用的bootloader是( U-BOOT )( VIVI ),其中(VIVI )具有可配置性。48驱动程序一般具有以下功能( 对设备初
18、始化和释放)(对设备进行管理)(读取应用程序传送给设备文件的数据)(回送应用程序请求的数据)(检测和处理设备出现的错误)。49Flash主要有( nand flash )( nor flash)两种,可以片上执行的是( nor flash )。50C语言调用汇编程序,一般使用(extern )声明外部函数,即可调用汇编子程序。在汇编程序中用(import )申明本子程序,以使其他程序可以调用此子程序。51汇编程序调用C程序,在汇编中用(import )声明将要调用的C程序函数,即可在汇编程序中调用C程序。52C程序中嵌入式汇编指令以( )53.ARM寄存器LR是(连接 )寄存器( R14 ),
19、CPSR和SPSR的功能(异常发生时SPSR用于保存CPSR的值 )。54Linux 系统中的SHELL的主要功能(命令解释 )(任务自动化)(系统管理 ),是通过编写脚本文件来实现系统管理和使任务自动化的。55linux系统中的( make)是linux软件开发管理工具,决定程序的编译链接规则,使工程编译链接自动化,它依赖于( makefile )工作。56.嵌入式软件代码具有(代码量小 )(C和汇编混合编程较灵活)的特点。57.ADS是( ARM developer suite )的缩写,是由ARM公司开发的ARM嵌入式系统集成开发工具。58操作系统中传统的设备管理是通过(文件系统)方式实
20、现的,其中( 设备号 )用来区分设备的种类。二简答1简述Linux在嵌入式系统市场上取得辉煌的成果的原因。答: 广泛的硬件支持 内核高效稳定 开放源码,软件丰富优秀的开发工具 完善的网络通信和文件管理机制2简述嵌入式系统平台移植所需要的步骤。答:硬件平台的移植 引导/装载程序的移植(bootloader移植) 内核的修改配置编译与移植相关驱动程序的移植文件系统的移植 开发环境的移植(GUI库移植) 应用程序的移植3嵌入式根文件系统的设计目标应该包括哪些方面?答: 使用简单方便 实时响应 可伸缩性和可配置性 资源有效性 安全可靠 热插拔、在线更新4简述Linux支持的硬件设备种类和Linux操作
21、系统下的主要的设备文件种类。答:主要硬件设备种类:字符设备、块设备和网络设备。主要设备文件种类:字符设备、块设备。5arm系列处理器arm7tdmi中的tdmi四个字母的含义。答: T功能模块表示16位Thumb,可以在兼顾性能的同时减少代码尺寸。M功能模块表示8位乘法器。D功能模块表示Debug,该内核中放置了用于调试的结构,通常它为一个边界扫描链JTAG,可使CPU进入调试模式,从而可方便地进行断点设置、单步调试。 I功能模块表示EmbeddedICE Logic,用于实现断点观测及变量观测的逻辑电路部分,其中的TAP控制器可接入到边界扫描链。 6.嵌入式系统发展经历了那些阶段,有什么特点
22、?答:(1)萌芽阶段 编程语言:汇编语言 操作系统:无 硬件处理器:单芯片可编程控制器件8位MCU,DSP(单片机)(2)简单系统阶段 编程语言:汇编语言 操作系统:无(3)RTOS阶段:编程语言:汇编语言,c,c 操作系统:VxWorks,QNX,pSOS 硬件处理器:32位嵌入式处理器(ARM)(4)网络化阶段 编程语言:汇编语言,c,c,Java 操作系统:VxWorks,QNX,pSOS,Linux 硬件处理器:高性能嵌入式处理器,SOC7.嵌入式系统的设计方法和过程与传统的单片机开发有什么不同?答:学习方法不同 单片机学习一般从硬件入手,从硬件体系结构、汇编语言到硬件设计、软件设计;
23、嵌入式系统学习可以从软件入手,从应用层编程到操作系统移植、硬件平台设计较好,按单片机设计的学习流程较难掌握硬件处理能力 有无操作系统 系统开发方法:嵌入式系统强调基于平台的设计、软硬件协同设计,单片机大多采用软硬件流水设计 嵌入式系统设计的核心是软件设计(占70%左右的工作量),单片机系统软硬件设计所占比例基本相同 8.简述哈佛体系结构和冯诺依曼体系结构的不同点。答:哈佛体系结构的要点是:(1)使用两个独立的存储器模块,分别存储指令和数据,每个存储模块都不允许指令和数据并存,以便实现并行处理; (2)具有一条独立的地址总线和一条独立的数据总线,利用公用地址总线访问两个存储模块(程序存储模块和数
24、据存储模块),公用数据总线则被用来完成程序存储模块或数据存储模块与CPU之间的数据传输; (3)两条总线由程序存储器和数据存储器分时共用。冯诺依曼理论的要点是:数字计算机的数制采用二进制;计算机应该按照序顺序执行。其中:(1).计算机由控制器、运算器、存储器、输入设备、输出设备五大部分组成。(2).程序和数据以二进制代码形式不加区别地存放在存储器中,存放位置由地址确定。(3).控制器根据存放在存储器中地指令序列(程序)进行工作,并由一个程序计数器控制指令地执行。控制器具有判断能力,能根据计算结果选择不同的工作流程。人们把冯诺依曼的这个理论称为冯诺依曼体系结构。10.简述NAND_FLASH和N
25、OR_FLASH的异同点?答:Nor-flash 的读速度比Nand-Flash快 Nor-flash 的写速度比Nand-Flash慢 Nor-flash 的擦除速度比Nand-Flash慢 大多数写入操作需要先进行擦除操作 Nand-flash的擦除单元更小,相应的擦除电路更少 Norflash待用SRAM接口,有足够多的地址引脚,容易进行电路设计 Nand-flash使用复杂的I/O口串行传输数。 单位面积内Nand-flash存储容量更大 Nand-flash占据大容量存储市场(8-128M) 可靠性和耐用性nandFlash更优秀(可擦写次数100万:10万) 易用性Nor-flas
26、h不需要软件支持,片上执行 Nandflash需要驱动程序支持 10.简述S3C2410与ARM920T的关系.答: S3C2410是韩国三星公司的一款基于ARM920T内核的32位RISC嵌入式微处理器,主要面向手持设备以及高性价比,低功耗的应用11嵌入式系统常用调试方法有几种,各有什么优缺点?答:1模拟器方式 调试工具和待调试的嵌入式软件都在主机上运行,通过软件手段模拟执行为某种嵌入式处理器编写的源程序。简单的模拟器可以通过指令解释方式逐条执行源程序,分配虚拟存储空间和外设,进行语法和逻辑上的调试。2在线仿真器方式在线仿真器ICE是一种完全仿造调试目标CPU设计的仪器,目标系统对用户来说是
27、完全透明的、可控的。由于仿真器自成体系,调试时可以连接目标板,也可以不接目标板。但是ICE价格昂贵,而且每种CPU都需要一种与之对应的ICE,使得开发成本非常高。3.监控器方式主机和目标板通过某种接口(通常是串口)连接,主机上提供调试界面,被调试程序下载到目标板上运行,通过与监控运行于目标机上的监控程序通信,获得调试信息。12.什么是嵌入式操作系统?常见的嵌入式操作系统有哪些?(列举五个以上),嵌入式操作系统有什么特点?答:以应用为中心、以计算机技术为基础、软件硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。” 嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,它是嵌入
28、式系统的重要组成部分。嵌入时操作系统具有通用操作系统的基本特点,能够有效管理复杂的系统资源,并且把硬件虚拟化。Linux、uClinux、WinCE、PalmOS、Symbian、eCos、uCOS-II、VxWorks、pSOS、Nucleus、ThreadX 、Rtems 、QNX、INTEGRITY、OSE、C Executive. 可裁剪;强实时性;统一的接口;操作方便、简单、提供友好的图形用户界面GUI;提供强大的网络功能;稳定性,弱交互性;固化代码;良好的移植性13.什么是交叉开发环境?简述嵌入式linux系统交叉开发环境的构建过程?答:简单的来说:在进行嵌入式开发之前,首先要建立
29、一个交叉编译环境,这是一套编译器、连接器和libc库等组成的开发环境。交叉开发是指在一台通用计算机上进行软件的编辑编译,然后下载到嵌入式设备中进行运行调试的开发方式。 1). 下载源文件、补丁和建立编译的目录2). 建立内核头文件3). 建立二进制工具(binutils)4). 建立初始编译器(bootstrap gcc)5). 建立c库(glibc)6). 建立全套编译器(full gcc) 14什么是bootloader?常用的bootloader有那些?bootloader两种工作模式有什么不同,分别应用在那种情况下?答:Bootloader是在操作系统运行之前执行的一段小程序。通过这段
30、小程序,我们可以初始化硬件设备、建立内存空间的映射表,从而建立适当的系统软硬件环境,为最终调用操作系统内核做好准备。Grub和Lilo是PC计算机上的,U-boot,vivi,blob,ARMBoot是嵌入式系统上的。两种工作模式是:启动加载模式和下载模式,这种区别仅对于开发人员才有意义。从最终用户的角度看,BootLoader的作用就是用来加载操作系统,而并不存在所谓的启动加载模式与下载工作模式的区别。(1)启动加载(Boot loading)模式:这种模式也称为自主模式bootstrap。也即Boot Loader将存储在目标板Flash中的内核和文件系统的镜像装载到SDRAM中,整个过程
31、无需用户的介入。这种模式是BootLoader的正常工作模式,因此在嵌入式产品发布的时候,BootLoader显然必须工作在这种模式下。(2)下载Downloading模式:在这种模式下,目标机上的BootLoader将通过串口连接或网络连接等通信手段从宿主机Host下载文件,比如下载内核映像和根文件系统映像等。从主机下载的文件通常首先被BootLoader保存到目标机的RAM中,然后再被BootLoader写到目标机上的FLASH类固态存储设备中。BootLoader的这种模式通常在第一次安装内核与根文件系统时被使用;此外,以后的系统更新(bootloader自身也可以这样更新)也会使用Boot Loader的这种工作模式。工作于这种模式下的BootLoader通常都会向它的终端用户提供
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1