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


发布评论