2024年4月14日发(作者:)

期末考试复习题

一、填空题

1. ARM微处理器有7 种工作模式,它们分为两类 _特权模式_、 _非特权模式_ 其中用户

模式属于_非特权模式__。

2. ARM微处理器共有__37_个__32__位寄存器,其中__31_个为通用寄存器,_6___个为状态

寄存器。

3. 嵌入式系统一般哪4个部分组成( 嵌入式处理器、 外围设备、 嵌入式操作系统(可选)、

嵌入式应用软件 )

4. 协处理器主要控制:___片内的MMU __、___指令和数据缓存___、___写缓冲___。

5. ARM嵌入式系统主要由___相关支撑硬件___、___ARM处理器___和__嵌入式软件系统

____构成。

6. S3C2410芯片外部寻址空间是1G,被分成___8__个存储块,每块_ 128 _MB。SDRAM

存储器应连接到第 ____7或8__个存储块。

7. 操作系统是联接硬件与应用程序的系统程序,其基本功能有进程管理、内存管理 、 文

件系统管理、I/O资源管理。

8. 常用的嵌入式外围设备有存储设备_、通信设备____和___显示设备___三类。

1

10. 嵌入式系统是用来控制或者监视哪些设备( )

11. 嵌入式系统的三个基本要素。引导程序 内核 文件系统

12. 链接分为:(硬链接 )和 ( 软链接 )。

13. 数据寄存器,其中控制寄存器的主要功能是设置 _引脚的功能 _,数据寄存器的 功能

是从寄存器读取数据或者向寄存器写入数据。

15. 目前流行的嵌入式操作系统主要有:_ WinCE_、_ Vxworks__、_ Linux/µCLinux_和

_µC/OS-II 、PalmOS____。

16. 嵌入式操作系统的调试一般包括:___操作系统__调试和___应用程序__调试。

17. ARM字数据存储格式有:大端格式 和 小端格式 。

18. 某文件的权限为:drw-r--r--,用数值形式表示该权限,则该八进制数为:( 644 ),

该文件属性是( 目录 )。

19. 在宿主机上使用编译器软件将嵌入式应用。嵌入式操作系统编译成为可以在目标机上运

行代码的过程,称为 交叉编译 。

20. 为了满足人们对性能的要求,ARM9处理器使用了哪几级流水线( ARM9为五级流水线

(取指,译码,执行,缓冲/数据,回写), )

21. 全部磁盘块由四个部分组成,分别为(

2

引导块 ) 、专用块 、 i节点表块 和( 数据存

储块 )。

22. 嵌入式系统的三要素是 引导程序 、内核 、 文件系统 。

23. 嵌入式硬件系统是以嵌入式微处理器为核心,主要由哪5个部分组成( )

24. ARM微处理器共有 7 工作状态。

25. 系统交换分区是作为系统 虚拟内存 的一块区域。

26. 内核分为 (进程调度) 、内存管理系统、I/O管理系统和虚拟文件系统等四个子系统。

27. 静态重定位是在程序装入时进行,动态重定位是在程序 运行 时进行。

28. Make的主要工作是读取Makefile文件的内容。该文件描述了源程序与依赖的文件 之

间的依赖关系,以及指定编译过程中使用的工具。

29. 安装Linux系统对硬盘分区时,必须有两种分区类型:文件系统分区 和 交换分区 。

30. Linux中的设备的分类。字符设备 块设备 网络设备

31. Linux系统区分不同设备的方法。

以字节为单位进行访问的设备成为字符设备,如鼠标键盘等

以块数据为单位进行访问的设备成为字符设备 如硬盘 SD卡等

3

其他的为网络设备 如网卡设备 网络设备不是用主次设备号来标识设备

32. ARM微处理器中寄存器的总数、分类。

ARM微处理器共有__37_个__32__位寄存器,其中__31_个为通用寄存器(包含R15:程序计

数器PC),_6___个为状态寄存器。()

33. ARM7TDMI与ARM720T的重要区别。

ARM720T有存储空间管理单元(MMU)

支持标准linux。

ARM7TDMI是ARM7架构,没有MMU,不支持标准linux。

34. ARM微处理器7种运行模式。用户、 快中断、中断、管理、终止、未定义和系统模式

35. 嵌入式操作系统的调试方法。

用GDB调试。。。

传统的调试方法可概括为如下过程:设断点--程序暂停--观察程序状态--继续运行。

36. vi编辑器具有两种工作模式: ( 命令模式 ) 和 输入模式 。

37. 可以用ls –al命令来观察文件的权限,每个文件的权限都用10位表示,并分为四段,

4

其中第一段占 _1___位,表示 文件类型 ,第二段占__3__ 位,表示 __文件拥有者__ 对该文件

的权限。

38. Linux设备可分为___字符设备___、___块设备___和__网络设备____三种。

39. 建立ARM编译环境的主要开发工具有___binutils___、___gcc___和___glibc___。

40. Linux支持多种文件系统,包括:__Romfs_、Cramfs___、___JFFS___和____JFFS2__。

41. 常用的GUI图形开发界面主要有__ X Window ____、___ MicroWindows ___、___

OpenGUI ____和MiniGUI _。Qt/Embedded PicoGUI

选择题:

1.内核不包括的子系统是 ( D ) 。

A 进程管理系统 B 内存管理系统 C I/O管理系统 D硬件管理系统

2. 若一台计算机的内存为128MB,则交换分区的大小通常是 ( C ) 。

A 64MB B 128MB C 256MB D 512MB

3.对名为fido的文件用chmod 551 fido 进行了修改,则它的许可权是 ( D )。

A -rwxr-xr-x B -rwxr--r-- C -r--r--r-- D -r-xr-x—x

5

4.关闭linux系统(不重新启动)可使用命令 ( B ) 。

A Ctrl+Alt+Del B halt C shutdown -r now D reboot

5.实现从IP地址到以太网MAC地址转换的命令为: ( C ) 。

A ping B ifconfig C arp D traceroute

6. 以下哪个不是RISC架构的ARM微处理器的一般特点:(C )

A、体积小、低功耗 B、大量使用寄存器

C、采用可变长度的指令格式,灵活高效 D、寻址方式灵活简

7.下列描述不属于RISC计算机的特点的是 C 。

A.流水线每周期前进一步。 B.更多通用寄存器。

C.指令长度不固定,执行需要多个周期。

D.独立的Load和Store指令完成数据在寄存器和外部存储器之间的传输。

9、通常所讲的交叉编译就是在X86架构的宿主机上生成适用于ARM架构的(

的可执行代码。

A、elf B 、exe C、 pe D、 sh

6

A )格式

8.存储一个32位数0x2168465到2000H~2003H四个字节单元中,若以大端模式存储,

则2000H存储单元的内容为 D 。

A. 0x21 B. 0x68 C. 0x65 D. 0x02

9.系统中有用户user1和user2,同属于users组。在user1用户目录下有一文件file1,

它拥有644的权限,如果user2用户想修改user1用户目录下的file1文件,应拥有 ( B )

权限。 A 744 B 664 C 646 D 746

10.文件exer1的访问权限为rw-r--r--,现要增加所有用户的执行权限和同组用户的写权

限,下列命令正确的是 ( A) 。

A chmod a+x g+w exer1 B chmod 765 exer1

C chmod o+x exer1 D chmod g+w exer1

11.下列进程状态变化中, C 变化是不可能发生的。

A.运行→就绪 B.运行→等待

C.等待→运行 (时间片用完 ) D. 等待→就绪

进程状态间的变迁

①就绪→执行:调度

7

②执行→等待:等待某个事件发生而睡眠

③等待→就绪:因等待的事件发生而唤醒

④执行→就绪:时间片用完

寄存器组有 D 个寄存器。

A. 7 B. 32 C. 6 D. 37

13.若R1=2000H,(2000H)=0x28,(2008H)=0x87,则执行指令LDR R0,[R1,#8]!

后R0的值为 D 。

A. 0x2000 B. 0x28 C. 0x2008 D. 0x87

14. 下面不属于Boot Loader 阶段1所完成的步骤的是:(C )

A、硬件设备初始化。

B、拷贝Boot Loader的阶段2到RAM空间中。

C、将kernel映像和根文件系统映像从Flash读到RAM空间中。

D、设置堆栈。

15.S3C2410X可以生成多种时钟信号,下列不属于S3C2410X生成的时钟信号是(C)。

8

A、FCLK B、HCLK C、LCLK D、PCLK

16. 以下叙述中,不符合 RISC 指令系统特点的是( D )。

A、指令长度固定,指令种类少

B、寻址方式种类丰富,指令功能尽量增强

C、设置大量通用寄存器,访问存储器指令简单

D、选取使用频率较高的一些简单指令

17.使用gdb进行程序调试时,下面哪条命令可以实现“执行一行源代码而且进入函数内部”

的功能( A )。

A、next B、step C、break D、list

18. 通常所说的 32 位微处理器是指( C )。

A、地址总线的宽度为 32 位 B、处理的数据长度只能为 32 位

C、CPU 字长为 32 位 D、通用寄存器数目为 32 个

解释:32位是指计算机中的位数,就是说CPU一次能处理的最大位数。32位计算机的CPU

一次最多能处理32位数据

9

19.下列存取速度最快的是( C ) 。

A、Flash存储器 B、DRAM

C、高速缓存(CACHE) D、磁盘

20.寄存器R15除了可以做通用寄存器外,还可以做 A 。

A. 程序计数器 B. 链接寄存器 C. 堆栈指针寄存器 D. 基址寄存器

21.嵌入式系统有硬件和软件部分构成,以下 D 不属于嵌入式系统软件。

A. 系统软件 B. 驱动 C. FPGA编程软件 D. 嵌入式中间件

22. 关闭linux系统(不重新启动)可使用命令 C 。

A .Ctrl+Alt+Del B. halt

C. shutdown -r now D. reboot

23. 若GCC编译时带上选项“-lm”表示连接文件名为什么的数学函数库?(D

A、lm B、m.a C、lm.a D、libm.a

24. 下列是虚拟文件系统的是( B )

10

A、 proc B、vfs C、ext D、fat32

25.关于实时操作系统(RTOS)的任务调度器,以下描述中正确的是( B )。

A、任务之间的公平性是最重要的调度目标

B、大多数RTOS 调度算法都是可抢占式(可剥夺式)的

C、RTOS 调度器都采用了基于时间片轮转的调度算法

D、RTOS 调度算法只是一种静态优先级调度算法

26.烧写到FLASH里的是(B)格式的文件。

A、asm B、bin C、obj D、cpp

27.在实时操作系统中,两个任务并发执行,一个任务要等待其合作伙伴发来消息,或建立某

个条件后再向前执行,这种制约性合作关系被称为任务的( A )。

A、同步 B、互斥 C、调度 D、执行

28.什么命令解压缩tar文件?( B )

A、 tar -czvf B、 tar -xzvf

C、 tar -tzvf D、 tar -dzvf

11

29.在ARM处理器中,哪个寄存器包括全局的中断禁止位,控制中断禁止位就可以打开或者

关闭中断。( C )

A、 CPSR B、 SPSR C、 PC D、IR

30.下面关于存储管理的叙述中,正确的是( C )。

A、在嵌入式微处理器当中,都配备有存储管理单元MMU

B、在嵌入式系统中,内核空间和用户空间必须是两个相互独立的地址空间

C、在有些嵌入式系统中,甚至不提供存储管理功能

D、在虚存系统中,只要磁盘空间无限大,任务就能拥有任意大的编址空间

31.将光盘CD-ROM(hdc)安装到文件系统的/mnt/cdrom目录下的命令是

A. mount /mnt/cdrom B. mount /mnt/cdrom /dev/hdc

C. mount /dev/hdc /mnt/cdrom D. mount /dev/hdc

32.对名为fido的文件用chmod 551 fido 进行了修改,则它的许可权是 D

A. -rwxr-xr-x B. -rwxr--r--

C. -r--r--r-- D. -r-xr-x—x

12

C 。

33.文件exer1的访问权限为rw-r--r--,现要增加所有用户的执行权限和同组用户的写权限,

下列命令正确的是 A 。

A. chmod a+x g+w exer1 B. chmod 765 exer1

C. chmod o+x exer1 D. chmod g+w exer1

指令集和Thumb指令集分别是( D )位的。

A、8位,16位 B、16位,32位

C、16位,16位 D、32位,16位

35.嵌入式系统软硬件协同设计从目标系统构思开始,经过( A )阶段完成。

① 需求描述 ② 软硬件划分 ③ 硬件综合、接口综合、软件编译

硬件集成 ⑤ 软硬件协同仿真与验证

A、①、②、③、④和⑤ B、 ②、③、④和⑤

C、②、④和⑤ D、 ①、②、④和⑤

36.在ARM指令系统的各种寻址方式中,获取操作数最快的方式是 ( A ) 。

A、直接寻址 B、立即寻址 C、寄存器寻址 D、间接寻址

13

④ 软

37.若操作数的地址包含在指令中,则属于( D )方式。

A、直接寻址 B、立即寻址 C、寄存器寻址 D、间接寻址

38.在CPU和物理内存之间进行地址转换时,(B )将地址从虚拟(逻辑)地址空间映射到

物理地址空间。

A、TCB B、MMU C、CACHE D、DMA

39.中断向量是指( C )。

A、中断断点的地址 B、中断向量表起始地址

C、中断处理程序入口地址 D、中断返回地址

判断题

1. 基于ARM架构的指令都是32位的。( F )

2. chmod命令可用来修改处理器的运行模式。( F )

3. LINUX是一个真正的多用户、多任务操作系统,允许多个用户在相同的机器上一次运行很

多程序,并能保证相互之间的共享和安全。( T )

4. BootLoader是嵌入式系统运行的第一个程序。( T )

14

5. Linux 中的 ls 命令的功能是变换工作目录到目标指定目录。( F )

6. BootLoader属于嵌入式操作系统的一部分。( F )

名词解释(写出以下英文简写对应的中文名称)

(1)RISC 精简指令集

(2)IP 网协

(3)ISR 中断服务程序

(4)JTAG 联合测试行为组织

(5)IDE 集成开发环境

简答题:

1. 嵌入式系统的Bootloader的功能是什么?

引导加载系统程序。初始化硬件设备、建立内存空间的映射表,从而建立适当的系统软硬件

环境,为最终调用操作系统内核做好准备。

2. 简述嵌入式系统有哪些特点。

(1)其面向特定系统应用。(2)其涉及计算机、微电子技术、电子技术、通信、和软件等

15

行业。(3)其硬件和软件都必须具备高度可定制性。(4)其生命周期相当长。(5)其不具备本地

系统开发能力,需要专门的工具和环境。

3. 如何编写Makefile文件,其执行过程是怎样的?

#注释

目标文件:依赖文件列表

............................................

命令列表

............................................

执行过程:(1)查找当前目录下的makefile文件。(2)初始化文件中的变量。(3)分析

makefile中的所有规则。(4)为所有的目标文件创建依赖关系。(5)根据依赖关系,决定哪些目

标文件要重新生成。(6)执行生成命令。

4. 表示递增和递减的满堆栈和空堆栈有哪几种组合,请比较它们的特点。

递增和递减的满堆栈和空堆栈有4种组合:(1)满递增,堆栈指针指向最后压入的数据,并

且堆栈以递增方式向上生成。(2)满递减,堆栈指针指向最后压入的数据,并且堆栈以递减方式

向下生成。(3)空递增,堆堆栈指针指向下一个将要放入的数据的空位置,并且由低地址向高地

址生成。(4)空递减,堆堆栈指针指向下一个将要放入的数据的空位置,并且由高地址向低地址

生成。

16

5. 简单描述ARM内核的四个功能模块,各自具备什么功能特点?

ARM内核有四个功能模块T、D、M、I,可供生产厂商根据不同用户的要求来配置生产ARM

芯片。其中T功能模块表示16位Thumb,可以在兼顾性能的同时减少代码尺寸。M功能模块

表示8位乘法器。D功能模块表示Debug,该内核中放置了用于调试的结构,通常它为一个边

界扫描链JTAG,可使CPU进入调试模式,从而可方便地进行断点设置、单步调试。 I功能模块

表示EmbeddedICE Logic,用于实现断点观测及变量观测的逻辑电路部分,其中的TAP控制器

可接入到边界扫描链。

6. 比较Nor Flash和Nand Flash存储器的优缺点。

优点:Nor Flash支持随机访问。Nand Flash芯片价格低,存储容量大,寿命长。缺点:

Nor Flash容量小,寿命短。

Nand Flash不支持随机访问,需要专用的引导程序。

7. 什么是嵌入式微控制器

在一块芯片上集成了中央处理单元(CPU)、存储器 、定时器 、计数器及多种输入输出 等接

口的组成比较完整的数字处理系统。(就是一块SOC)

8.简述QTE应用程序开发过程

9.如何清除上一次make编译的目标文件?

使用命令——“make clean”,以此来清除所有的目标文件

17

10.本地编译与交叉编译的区别是什么?

本地编译,是指在PC平台上编辑程序,然后在PC上编译,编译的结果还是在PC上运行。

交叉编译,是指在PC平台上交叉编译到ARM设备上,可以在PC上编辑程序,然后在PC上编

译,最后把编译的结果下载到ARM中运行。

分析题:

1. 编写led_on.s程序,功能:它只是简单地点亮发光二极管LED2。

假设LED接在2410的GPF5。(地址信息题目会给出)

_start:

LDR R0,=0x56000010 @ R0设为GPBCON寄存器。此寄存器

@ 用于选择端口B各引脚的功能:

@ 是输出、是输入、还是其他

MOV R1,#0x00000400

STR R1,[R0] @ 设置GPB5为输出口, 位[10:9]=0b01

LDR R0,=0x56000014 @ R0设为GPBDAT寄存器。此寄存器

18

@ 用于读/写端口B各引脚的数据

MOV R1,#0x00000000 @ 此值改为0x00000020,

@ 可让LED2熄灭

STR R1,[R0] @ GPB5输出0,LED2点亮

2. 编写一个计算1+2*3的程序,分成4个文件,一个头文件myhead.h、一个进行加法运

算的myadd.c文件、一个进行乘法运算的mymul.c文件和一个result.c文件。然后编写一个

Makefile,使它们在make工具下生成正确的可执行文件myresult。要求写出每个文件的具体

代码。

**********************************myhead.h********************

#include

#include

int myadd(int a,int b);

int mymul(int a,int b);

**********************myaddc.c*************************

#include "myhead.h"

19

int myadd(int a,int b)

{

return (a+b);

}

***********************mymul.c******************

{

#include "myhead.h"

int mymul(int a,int b)

{

return (a*b);

}

*****************sesult.c********************

#include "myhead.h"

20

int main()

{

int m;

m=mymul(2,3);

printf("the resule is %dn",myadd(m,1) );

}

*********makefile***********************

#makefile

result:result.o mysdd.o mymul.o

gcc -o result result.o mysdd.o mymul.o

result.o:rsult.c myhead.h

gcc -c result.c

myadd.o:myadd.c myhead.h

21

gcc -c myadd.c

mymul.o:mumul.c myhead.h

gcc -c mymul.c

clean:

rm -rf *.o result

4. Arm-linux 的三个工具作用(gcc、glibc、binutils)?

二进制文件处理工具binutils主要应用于移植调试操作系统初期的辅助开发;编译工具gcc

用于编译内核代码;glibc用于链接和运行库文件。

5. 从底层硬件到上层应用软件,试分析嵌入式计算系统的组成主要分为哪几个部分,并写出

各部分所完成的功能。

(1)硬件层;搭建硬件环境

(2)操作系统层(包括引导程序,内核和文件系统);细分

引导程序:引导加载内核和文件系统

内核:初始化硬件设备和完成内存空间的映射,并挂载根文件系统

22

文件系统:启动第一个应用程序init,初始化控制台等设备后等待用户调用应用程序。

(3)应用层

根据需求完成所需的功能。

23