嵌入式期末复习_第1页
嵌入式期末复习_第2页
嵌入式期末复习_第3页
嵌入式期末复习_第4页
免费预览已结束,剩余6页可下载查看

付费下载

下载本文档

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

文档简介

1、( 1)简述嵌入式系统的定义和特点答:定义:以应用为中心, 以计算机技术为基础,软硬件可裁剪, 应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。特点:专用性强、实时性好、可裁剪性好、可靠性高和功耗低等。(2)简述计算机系统的发展历程第一阶段大致在20 世纪 70 年代前后,可以看成是嵌入式系统的萌芽阶段;第二阶段是以嵌入式微处理器为基础,以简单操作系统为核心的嵌入式系统;第三阶段是以嵌入式操作系统为标志的嵌入式系统,也是嵌入式应用开始普及的阶段;第四阶段是以基于Internet 为标志的嵌入式系统,这是一个正在迅速发展的阶段。(1)ARM 和 S3C2410X有什么关系 ?

2、S3C2410 是韩国三星公司生产的嵌入式处理器,它采用了ARM 公司的ARM920T(即 ARM9)内核(2)ARM7 是多少位的RISC处理器?使用几级流水线?采用什么样的体系结构?支持MMU吗?ARM7 是 32 位 RISC处理器,使用3 级流水线,采用冯?诺依曼体系结构,不支持(3)ARM9 是多少位的RISC处理器?使用几级流水线?采用什么样的体系结构?支持吗?MMU 。MMUARM8 是 32 位 RISC处理器,使用5 级流水线,采用哈佛体系结构,支持(4)S3C2410X芯片有多少根地址线,多少根片选线(nGCS),多少根数据线。MMU 。(5) s3c2410 芯片内部集成

3、了哪些控制接口?S3C2410X芯片内部集成了一个 LCD控制器, SDRAM 控制器, 3 个通道 UART,4 个通道 DMA , 4 个具有 PWM 功能的计时器和一个内部时钟, 8 通道的 10 位 ADC。(6)ARM 体系结构有哪几种工作状态?又有哪几种运行模式?其中哪些为特权模式?哪些为异常模式?并指出处理器在什么情况下进入相应模式?工作状态:第 1 种: ARM 状态。处理器执行32 位的字对齐的ARM 指令。 第 2 种: Thumb 状态。处理器执行 16 位的半字对齐的Thumb 指令。运行模式:用户模式 (usr) 快速中断模式 (fiq) 外部中断模式(irq) 管理

4、模式 (svc) 数据访问中止模式(abt) 系统模式 (sys) 未定义指令中止模式 (und)在这 7 种运行模式,除了用户模式外,其他6 种处理器模式都为特权模式。在这 6 种特权模式中,除了系统模式外的其他5 种特权模式又称为异常模式。用户模式: 非特权模式, 也就是正常程序执行的模式,大部分任务在这种模式下执行。在用户模式下, 如果没异常发生,不允许应用程序自行切换果没异常发生,不允许应用程序自行改变处理器的工作模式,如果有异常发生,处理器会自动切换工作模式。快速中断模式:支持高速数据传输和通道处理,当一个高优(fast)中断产生时将会进入这种模式。外部中断模式: 也称为普通中断模式

5、, 当一个低优先级中断产生时将会进入这种模式。在这模式下按中断的处理器方式又分为向量中断和非向量中断两种。通常的中断处理都在IRQ 模式下进行。 管理模式:是一种操作系统保护模式,当复位或软中断指令执行时处理器将进入这种模式。数据访问中止模式: 当存取异常时将会进入这种模式,用来处理存储器故障、 实现虚拟存储或存储保护。精选文库系统模式:使用和user 模式相同寄存器组的特权模式,用来运行特权级的操作系统任务。未定义指令中止模式: 当执行未定义指令时会进入这种模式, 主要是用来处理未定义的指令陷阱,支持硬件协处理器的软件仿真,因为未定义指令多发生在对协处理器的操作上。(7)ARM 体系结构支持

6、的数据类型?有多少寄存器?如何组织?支持的数据类型:1.字节 (byte) ,各种处理器体系结构中,字节的长度均为8 位。2.半字 (half-word) ,在 ARM 体系结构中,半字的长度为16 位。3.字(word) ,在 ARM 体系结构中,字的长度为32 位。ARM 处理器共有37 个寄存器,其中31 个通用寄存器,6 个状态寄存器。(8)S3C2410 的存储控制器如何对内存空间进行管理?S3C2410X存储控制器为片外存储器提供控制信号。它将系统的存储空间分成8 组 (Bank),每组的大小为128MB, 共 1GB。(9)分析程序状态寄存器各位的功能描述,并说明C、Z、N、V

7、在什么情况下进行置1 和清 0状态寄存器 (PSR)的具体格式为V溢出标志位对于加 / 减法运算指令,当操作数和运算结果为二进制补码表示的带符号数时,V=1 表示符号位溢出,其它指令通常不影响V 位。例如:两个正数(最高位为 0)相加,运算结果为一个负数 (最高位为 1),则符号位溢出,相应V=1.C-进位或借位标志位对于加法指令(包括比较指令CMN),结果产生进位,则C 1,表示无符号数运算发生上溢出,其他情况下 C 0;在减法指令中(包括比较指令CMP),结果产生借位,则C0 ,表示无符号数运算发生下溢出,其他情况下 C 1;对于包含移位操作的非加 / 减法运算指令, C 中包含最后一次溢

8、出位的数值;对于其他非加 /减法运算指令, C 位的值通常不受影响。Z-结果为 0 标志位 Z1 表示运算结果是0, Z 0 表示运算结果不是零;对于 CMP 指令, Z1 表示进行比较的两个数大小相等。N-符号标志位本位设置成当前指令运算结果的bit31 的值。当两个补码表示有符号整数运算时,N1 表示运算的结果为负数, N 0 表示结果为正数或零。(10)ARM 指令可分为哪几类?说出哪几条指令是无条件执行的。ARM 指令可分为: 数据处理指令,跳转指令,程序状态寄存器处理指令,加载/ 存储指令,协处理器指令 ,异常产生指令。无条件执行指令: BLX指令, BKPT指令 (产生软件断点中断

9、 )(1) make 和 Makefile 之间的关系?答:make 是一种命令, 是根据 Makefile 文件的规则决定如何编译和连接程序或其他的动作。(2)Makefile 的普通变量与预定义变量有什么不同?预定义变量有哪些?它们分别表示什么意思?答:普通变量:引用变量时,只需在变量前面加上 $符;预定义变量:已经定义好,直接引用即可。预定义变量有:$、 $ 、$<。2精选文库$:表示完整的目标文件名; $ :表示所有的依赖文件; $<:表示依赖文件列表中的第一个文件。(3)GCC编译器的常用参数有哪些?它们的功能分别是什么?答: gcc 编译器的常用参数:-o, -I, -

10、L, -E,-S,-c功能:-o 表示编译成一个可执行程序; -I 表示指定头文件目录; -L 表示指定库文件目录选项; -E 表示对源代码进行预编译; -S 表示编译成汇编代码; -c 表示把 .c 文件转换为以 .o 为扩展名的目标文件。(1)简述嵌入式开发环境的搭建过程答:1、交叉编译工具链的安装; 2、安装配置 TFTP服务; 3、安装配置 NFS服务; 4、C-Kermit的安装配置; 5、 minicom 的安装配置; 6、windows 下超级终端的配置。(2) BootLoader 的结构分两部分,简述各部分的功能?答:两部分: Stage1:用汇编语言编写,主要进行设备的初始

11、化;Stage2:用 C 语言编写,增强程序的移植性和可读性。(2) ARM 常用的 Bootloader 程序有哪些?答: U-Boot, Blob , RedBoot, vivi(3) 简述生成内核映像文件zImage 的步骤。答: 1、 make config进入命令行;2、make menuconfig 内核裁剪;3、make clean 清理以前已生成的目标文件;4、 make dep 编译变量的依赖关系;5、make zImage 生成内核镜像文件zImage。(4) BusyBox 工具的功能是什么?答: BusyBox 工具用来精简基本用户命令和程序,它将数以百计的常用UNIX

12、/Linux 命令集成到一个可执行文件中。(5)简述根文件系统的创建过程。答: 1、建立基本的目录结构;2、交叉编译BusyBox;3、创建配置文件;4、利用 cramfs 工具创建根文件系统映像文件。(1) 简述驱动程序的主要功能。答: 1、对设备初始化和释放;2、数据传送;3、检测和处理设备出现的错误。(2) 简述驱动程序的组成。答: 1、自动配置和初始化子程序;2、服务于I/O 请求的子程序;3、中断服务子程序。(3) 简述设备驱动程序与应用程序的区别。答: 1、设备驱动程序工作在内核态下,而应用程序工作在用户态下;2、设备驱动程序从module_init() 开始,将初始化函数加入内核

13、初始化函数列表中,在内核初始化时执行驱动的初始化函数,从而完成驱动的初始化和注册,之后驱动便停止工作,等待应用程序的调用;而应用程序从 main() 函数开始执行。3、应用程序可以和GLIBC 库连接,因此可以包含标准的头文件;驱动程序不能使用标准的C 库,因此不能调用所有的C 库函数。(4)简述设备文件、驱动文件、主设备号和次设备号之间的关系。答:驱动程序加载到内核后有一个主设备号。在Linux 内核中,主设备号标识设备对应的驱动程序,告诉 Linux 内核使用哪一个驱动程序为该设备 (也就是 /dev 下的设备文件 )服务,而次设备号则用来标识具体且唯一的某个设备。(5)简述字符设备驱动程

14、序提供的常用入口点及各自的功能。3精选文库答: open 入口点:对将要进行的I/O 操作做好必要的准备工作,如清除缓冲区等。如果设备是独占的,即同一时刻只能有一个程序访问此设备,则open 子程序必须设置一些标志以表示设备处于忙状态。close 入口点:当设备操作结束时,需要调用close 子程序关闭设备。独占设备必须标记设备可再次使用。read 入口点:当从设备上读取数据时,需要调用read 子程序。write 入口点:向设备上写数据时,需要调用write 子程序。ioctl 入口点: 主要用于对设备进行读写之外的其他操作,比如配置设备、 进入或退出某种操作模式等,这些操作一般无法通过re

15、ad 或 write 子函数完成操作。(1)关于嵌人式系统发展趋势,描述不正确的是(A )A.产品性能不断提高,功耗不断增加B.体积不断缩小C.网络化、智能化程度不断提高D.软件成为影响价格的主要因素嵌入式系统的发展趋势表现在以下几方面: 1.产品种类不断丰富, 应用范围不断普及 2.产品性能不断提高 3.产品功耗不断降低, 体积不断缩小 4.网络化、 智能化程度不断提高 5.软件成为影响价格的主要因素(2)嵌人式操作系统有很多,但(D )不是。A. Linux B. Windows CE C. V× WorksD.Windows XP常见的嵌入式操作系统: VxWorks, Win

16、dows CE、 uC/OS-II 和嵌入式Linux。(3) V × Works是 ( A)于 1983 年开发的一种 32 位嵌人式实时操作系统。A. WindRiverB. Microsoft C. Jean J.LabrosseD. LinusTorvalds说明: VxWorks 是美国 WindRiver 公司于 1983 年开发的一种32 位嵌入式实时操作系统。(1)ARM 公司主要依靠 ( D) 获得利润。A. 生产芯片B销售芯片C. 制定标准D. 出售芯片技术授权(2) S3C2410X 是 (C) 公司生产的嵌人式处理器。A.AKM B.SonyC.Samsung

17、D. Motorola(3)S3C2410X 选用的内核是(A) 公司设计的。A. ARM B. Sony C. SamsLing D. Motorola(4)S3C2410X 采用的内核是 ( B).A. ARM720T B. ARM920T C. ARM1020 D. ARM9E(5)S3C2410×芯片采用的封装是 ( B).A. DIP B. BGA C. QFP D. PGA(6)S3C2410X是(C) 位处理器。(7)S3C2410X 有 ( D) 位通道的I/O 口。A.8B.64C.100 D.117(8)S3C2410X 有 ( C) 个外部中断源。A.8B.16

18、C.24 D.32(9)S3C2410X 将系统的存储空间分成( C)组(bank).A. 2 B.4 C.8 D.166(10)S3C2410×能管理的最大存储空间是( B) 。D.4GB4精选文库(1)GCC 软件是 ( B)A. 调试器B. 编译器 C. 文本编辑器D.连接器(2)GDB 软件是 ( A )A. 调试器 B. 编译器 C.文本编辑器D. 连接器(3) 如果生成通用计算机上 ( 系统是 Linux 操作系统 ) 能够执行的程序, 则使用的 C 编译是 ( C)A.TCB.VC C.GCC D.Arm-linuX-gcc(4)GCC 用于指定头文件目录的选项是 (

19、D )A.-o B.-LC.-gD.-I(5)make有许多预定义变量,表示“目标完整名称”的是( A )A. $B. $ C.$<D.$>(1)minicom是(A)A. 串口通信工具B. 图像软件 C. 操作系统D. 远程控制软件(2)vivi工程序分 2个阶段,第1 阶段是用 ( C) 语言编写的。A.C 语言 B. 机器语言C. 汇编语言D.Basic语言(3)vivi工程序分 2个阶段,第2 阶段是用 ( A) 语言编写的。A.C 语言 B. 机器语言C. 汇编语言D.Basic语言(4) 内核映像文件是 ( A )A.zImageB.kernelD.Yaffs(5) 创

20、建根文件系统映像文件使用的工具是( A )A. BusyBoxB.cramlsC.MakeD.vi(1) 驱动程序的主要功能包括3 个方面,但 ( B) 不属于。A. 对设备初始化和释放B. 控制应用程序C.检测和处理设备出现的错误D.数据传送(2) 驱动程序主要由 3 部分组成,但 ( D) 不属于。A. 自动配置和初始化子程序B. 服务于 I/0请求的子程序C.中断服务子程序D.服务于 CPU子程序(3) 字符设备提供给应用程序的人口点有很多,但( C ) 不是。A.ioctlB.readC.mainD.open(4)Linux系统通常将设备分为3类,但(A) 不属于A. 输人设备 B.

21、字符设备 C. 块设备 D. 网络设备(5)Linux系统用 ( C) 字母表示字符设备。A.A B.BC.CD.D(6) 设备文件包括了较多信息,但没有包括( D ).A. 设备类型B. 主设备号C. 次设备号 D.驱动程序名称(1)通常可以将计算机分为两类,即通用计算机和_嵌入式计算机_。(2)嵌人式系统硬件可分为_微处理器 _、 _外围电路 _和 _外部设备 _等 3 部分。(3)嵌人式系统软件可分为板级支持包、_实时操控系统_、应用编程接口和应用程序 等 4 部分(4)根据结构和功能特点不同,嵌人式处理器可分嵌入式处理器、微控制器 和数字信号处理器等 3类。5精选文库(1)ARM 微处

22、理器目前包括 _ARM7、 ARM9、 ARM9E、 ARM10E_、 ARM11_、等(2)RISC 的意思是 精简指令集。(3)S3C2410x 是 _Samsung_公司生产的嵌人式处理器,它采用了ARM公司的内核,芯片内部还设计了 _IIC_ _线,并集成了一些外围设备控制电路。(4)S3C2410x 采用 BGA封装,主要解决因 _显卡布线 _带来的问题。(5)S3C2410x使用了两组电压供电, 内核采用 _1.8_v _供电,存储器和 I/O采用 _3.3v_ _供电(6)S3C2410x将系统的存储空间分成_8_组 (bank) ,每组的大小为_128_MB,共_1_GB。(7

23、)UP-2410S 实验箱硬件使用的MCU是 _s3c2410_ _ ;内存是 _64MB_ ; Flash 是_64MB_。(1)Linux 下,动态链接库文件是以_.SO_结尾的,静态链接库文件是以_.a_ _结尾的。动态链接库是在 _程序运行过程中 _动态加载的,静态链接库是在编译过程中 静态加载的。(2)GCC 指定库文件目录选项的字母是_L_。指定头文件目录选项的字母_I_ _。指定输出文件名选项的字母是 _O_(3) 为了方便文件的编辑, 在编辑 Makefile 时,可以使用变量。 引用变量时, 只需在变量前面加上 _$_符。(4)Makefile文件预定定义变量有很多,列举3

24、个预定定义变量:_$_, _$_ _和_$<_。(5)Makefile文件预定定义变量“ $”表示 _目标文件的完整名称_,“ $ ”表示 _所有不重复的依赖文件,以空格隔开_,“ $<”表示 _第一个依赖文件的名称 _。(1)当宿主机使用 Linux 操作系统的 minicom 操作实验箱时,宿主机和实验箱之间是利用_串_口来传输数据。(2)配置 minicom 时,一般参数为波特率 _115200_,数据位 _8_位,停止位 _1_位,奇偶校验位 _无_,软硬件控制流为_无 _。(3)对嵌人式系统 Flash 存储器烧写可以通过_编程口 _ 、_串口 _和 _网络接口 _和等不

25、同方式。(4)在构建一个嵌人式系统,最先被烧写到Flash 存储器中的软件是 Bootload_ 。(5)JTAG 仿真器有两种功能,即_程序仿真调试 _和 _程序烧写 _。(6)嵌人式 Linux 的内核映像文件是 zImage _,根映像文件是 _root.cramfs_ _。(7)大多数 Bootloader 程序包括两种不同的操作模式, 即 _启动加载模式 _和 _下载 _模式。(8)Bootloader程序有 stagel和 stage2 ,它们分别是用 _汇编语言 _和 _C_语言来编写的。(9) 流行的 LinuxBootloader 有 _U-Boot _、 _Blob _和

26、_ARMBoot_。(10) 在嵌人式 Linux 系统中,创建根文件系统的工具是_BusyBox_。(11) 开始操作实验箱,当出现提示PressReturnstarttheLINUXnow , anyotherkeyforvivi时,按 Enter 键,则进入vivi的 _启动加载 _模式。(1) 驱动程序运行在 _内核态 _,应用程序运行在用户态。(2) Linux 系统的设备一般分为三类,即 _字符设备 _、 _块设备 _和网络设备。(3) 在 Linu “系统中,设备号包括两部分,即_主设备号 _和次设备号 设备号。6精选文库(4) Linux驱动程序的编译方法有两种,即_静态编译

27、_和 _动态编译 _。(5)Linux系统中,用于加载模块化驱动程序的命令是_insmod_ _。4.程序题(1) 分析下列每条语句,并说明程序实现的功能。CMP R0, #0/ 判断 R0 是否等于 0MOVEQ R1, #0/ 当 R0 等于 0,则 R1 等于 0MOVGT R1,#1/ 当 R0 为正数时,则R1 等于 1此功能码段可以判别R0 中的值为正数还是0。(2) 写一条 ARM 指令,分别完成下列操作。R0 = 16MOV RO, #16R0 = R1 / 16MOV RO,R1,LSR#4R1 = R2 * 4R0 = - R0RSB RO,RO,#0(3) 写出实现下列操

28、作的 ARM 指令。当 Z=1 时,将存储器地址为R1 的字数据读入寄存器 R0。 MOVEQ R0, R1当 Z=1 时,将存储器地址为R1+R2 的字数据读入寄存器R0。 LDREQ R0, R1,R2将存储器地址为R1-4 的字数据读入寄存器R0。 LDRR0,R1,#-4将存储器地址为R1+R6的字数据读入寄存器R0,并将新地址 R1 R6 写入 R1。LDR R0,R1,R6!(4) 写出下列指令所实现的操作。LDR R2 ,R3, -2!将存储器地址为R3-2 的字数据读入 R2,并将地址 R3-2 写入 R3LDR R0 ,R0,R1将存储器地址为R0 的字数据读入R0,并将地址 R0+R1 写入 R0LDR R1 ,R0,R2,LSL #2!将存储器地址为R0+R2*4 的字数据读入 R1,并将地址 R0+R2*4 写入 R0STRBR1, R2, #0xB0R0 的低 8 位存入存储器地址为R2+0xB0字节中LDMIAR0 , R1, R2, R8将内存单元R0 所指向的地址单元以字为单位递减方式读取到R1, R2,R8 中,低地址编号的字数据内存单元对应低编号寄存器STMDBR0!, R1R5, R8, R9R1R5,R8,R9存储到以 R0 为起始地址的递减内存中,最终R0 指向存放 R9

温馨提示

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

评论

0/150

提交评论