嵌入式软件助理工程师理论考试试题带答案只是分享.docx
《嵌入式软件助理工程师理论考试试题带答案只是分享.docx》由会员分享,可在线阅读,更多相关《嵌入式软件助理工程师理论考试试题带答案只是分享.docx(11页珍藏版)》请在冰豆网上搜索。
嵌入式软件助理工程师理论考试试题带答案只是分享
(密封线内勿答题)学校专业姓名身份证号(密封线内勿答题)
(考试时间:
150分钟)
题号
一
二
三
四
五
六
总分
分数
一、单项选择题(在备选答案中只有一个是正确的,将它选出填入空格中,每小题1分,共20分)
得分
评阅人
1、在CPU和物理内存之间进行地址转换时,(B)将地址从虚拟(逻辑)地址空间映射到物理地址空间。
A.TCBB.MMU
C.CACHED.DMA
2、NFS服务器通过调用/etc/rc.d/init.d中的portmap和nfs脚本启动,启动后它将通过寻找本地服务器的(D)文件,向网络上的子机提供NFS文件共享服务
A./etc/hostsB./etc/inittab
C./etc/inet.dD./etc/exports
3、Linux下的Vi编辑器分别有命令行模式.插入模式.底行模式3种模式,从插入模式切换到命令行模式需要按(D)
A.回车键B.i键
C.CTRL+I键D.ESC键
4、安装Linux操作系统时需要设置分区,其中SWAP分区的作用是(C)
A.主分区B.引导分区
C.交换分区D.扩展分区
5、文件exer1的访问权限为rw-r--r--,现要增加所有用户的执行权限和同组用户的写权限,下列命令正确的是(A)。
A.chmoda+xg+wexer1B.chmod765exer1
C.chmodo+xexer1D.chmodg+wexer1
6、下列提法中,属于ifconfig命令作用范围的是(B)。
A.编译源程序B.配置网卡的IP地址
C.配置系统内核D.加载网卡到内核中
7、一般可以用(C)实现自动编译。
A.gccB.gdb*
C.makeD.vi
8、在FTP协议中,控制连接是由(B)主动建立的。
A.服务器端B.客户端
C.操作系统D.服务提供商
9、进程有三种状态:
(C)。
A.准备态.执行态和退出态B.精确态.模糊态和随机态
C.运行态.就绪态和等待态D.手工态.自动态和自由态
10、以下叙述中正确的是(C)。
A.宿主机与目标机之间只需要建立逻辑连接即可
B.在嵌入式系统中,调试器与被调试程序一般位于同一台机器上
C.在嵌入式系统开发中,通常采用的是交叉编译器
D.宿主机与目标机之间的通信方式只有串口和并口两种
11、Linux文件系统的文件都按其作用分门别类地放在相关的目录中,对于外部设备文件,一般应将其放在(C)目录中。
A./binB./etc
C./devD./lib
12、安装linux操作系统后,/bin目录下通常存放(C)
A.引导程序B.驱动程序
C.可执行程序D.共享库
13、中断向量是指(C )。
A.中断断点的地址B.中断向量表起始地址
C.中断处理程序入口地址D.中断返回地址
14、在微型计算机中,采用中断方式的优点之一是(C)。
A.简单且容易实现B.CPU可以不工作
C.可实时响应突发事件D.传送速度最快
15、NFS是(C)系统。
A.文件B.磁盘
C.网络文件D.操作
16.嵌入式linux系统中,如果在gcc编译过程中没有指定输出的文件名,则默认输出的可执行文件名为:
(B)
A、a.exeB、a.out
C、aD、a.obj
17.嵌入式linux系统中,关闭系统但不重新启动的命令常采用(B)。
A、Ctrl+Alt+DelB、halt
C、shutdown-rnowD、reboot
18.在ARM处理器中,(A)寄存器包括全局的中断禁止位,控制中断禁止位就可以打开或者关闭中断。
A、CPSRB、SPSR
C、PCD、IR
19.在下面的叙述中,(D)不是嵌入式图形用户接口(GUI)的主要特点。
A.运行时占用的系统资源少 B.上层接口与硬件无关,高度可移植
C.可靠性高 ,高可裁剪性 D.美丽华丽,图形算法复杂
20.制作嵌入式Linux根文件系统时常用到的工具是(B)
AEcpliseBBusyboxCVisualC++DSPY
二、多项选择题(共10个题,每小题不选或选错得0分,漏选得1分,全部选对得2分,共20分)
得分
评阅人
1、嵌入式系统组成一般由:
( ABCD )。
A.嵌入式微处理器B.嵌入式操作系统
C.嵌入式应用软件D.外围设备E.寄存器
2、嵌入式操作系统不同于通用操作系统的功能是(BC)
A.任务调度B.可裁减性
C.强实时D.设备管理 E.存储器管理
3、ARM处理器的工作模式中属于异常模式的有(CDE)
A.用户模式usrB.系统模式sys
C.外部中断模式irqD.中止模式abtE.快速中断模式fiq
4、在ARM汇编语言程序设计中主程序和子程序参数的传递需要满足ATPCS规则,ATPCS规则中用来传递参数的寄存器是(ABCD)
A.R0B.R1
C.R2D.R3E.R4
5、并行接口可以分为( ABD )等几种。
A.SPPB.EPP
C.USBD.ECPE.RS232
6、嵌入式系统中常用的GUI有(CDE)
A.KDEB.GNOME
C.MiniGUID.OpenGUIE.QT/Embedded
7、Linux系统中常用的压缩打包命令有(ACDE)
A.tar命令B.winrar命令
C.gzip命令D.bzip2命令E.compress命令
8、总线是各种信号线的集合。
嵌入式系统中按照总线所传送的信息类型,可以分为( ABC )等几种。
A.数据总线B.地址总线
C.控制总线D.CAN总线E.存储总线
9、下列linux版本为稳定版本的有(ACE)
A.linux2.0B.linux2.3
C.linux2.4D.linux2.5 E.linux2.6
10、linux操作系统支持的文件系统有(ABCDE)
A.EXT2B.VFAT
C.NFSD.ISO9660 E.JFFS
三、判断题(共10个题,在正确的后面括号中对打√,否则打×,每小题1分,共10分)
得分
评阅人
1.实时系统就是响应快的系统。
(×)
2.JTAG是联合测试行动小组定义的一种国际标准测试协议,主要用于芯片内部测试及系统仿真。
(√)
3.C语言中的int类型数据在内存中占8位。
(×)
4.声明一个指针变量的同时系统会自动分配内存。
(×)
5.在用vi编辑文件时,将文件内容存入test.txt文件中,应在命令模式下键入:
wtest.txt。
(√)
6.文件系统的主要功能是实现虚拟存储。
(×)
7.busybox是一种嵌入式系统常用的bootloader。
(×)
8.在vi编辑器中的命令模式下,重复上一次对编辑的文本进行的操作,可使用下箭头命令。
(×)
9.嵌入式系统在开发过程中,下载bootloader采用Jtag接口,而下载嵌入式操作系统镜像文件时一般采用串口或者网口。
(√)
10.触摸屏是一种输入设备。
(√)
四、简述题(共5题,每小题5分,共25分)
得分
评阅人
1、程序、进程、线程有何区别?
参考答案要点:
程序是编译后形成的可执行代码,是静止的。
(1分)
进程是程序的一次执行,是活动的(1分)。
线程是进程的可执行单元,同一进程的不同线程共享进程的资源和地址空间(1分)。
2、什么是BootLoader?
它有几种工作模式并简要说明它们的主要功能?
参考答案要点:
简单地讲,Bootloader就是操作系统内核运行的一段小程序,完成进行初始化系统硬件设置的任务,包括CPU、SDRRAM、Flash、串口等初始化,时钟的设置、存储器的映射等工作。
(2分)
它分为启动加载模式和下载模式:
启动加载模式-启动加载(Bootlaoding)模式又称为“自主”(Autonomous)模式,是指Bootloader从目标机上的某个固态存储设备上将操作系统加载到RAM中运行,整个过程并没有用户的介入。
(1分)
下载模式-在下载模式下,目标机上的Bootloader将先通过串口连接或网络连接等通信手段从宿主机下载文件。
(1分)
3、下列ARM条件码的含义是什么?
(1)EQ
(2)NE
(3)GE
(4)LT
(5)MI
参考答案要点:
(下面每项1分)
(1)相等
(2)不相等
(3)带符号数大于或等于
(4)带符号数小于
(5)负数
4、简述嵌入式操作系统的特点?
参考答案要点:
1)要求编码体积小,能够在嵌入式系统的有效存储空间内运行;(1分)
2)面向应用,可以进行裁减和移植;(2分)
3)实时性强,有时也称为实时多任务操作系统RTOS;(1分)
4)可靠性高,无需人工干预独立运行,并处理各类事件和故障。
(2分)
5、介绍一下嵌入式系统的主要设计步骤?
并简要说明各部分完成的主要工作是什么?
参考答案要点:
(1)需求分析阶段,罗列出用户的需求;(1分)
(2)体系结构设计阶段,描述系统的功能如何实现;(1分)
(3)详细设计阶段,进行硬件系统与软件系统的分类划分,以决定哪些功能用硬件实现,哪些用软件实现;(2分)
(4)系统集成,把系统的软件.硬件和执行装置集成在一起,进行调试,发现并改进在设计过程中的错误;(2分)
(5)系统测试,对设计好的系统进行测试,看其是否满足给定的要求。
(1分)
五、阅读程序与编写应用题(共3题,第1小题5分.第2小题6分.第3小题4分.共15分)
得分
评阅人
1、下列程序实现将一个数从内存某地址中取出一个字,然后将该数进行了处理,结果放回内存中该数的相邻的下一字地址中,阅读程序并说明每条语句的作用。
startldrr1,[r0];1)
movr0,r1,lsl#3;2)
movr2,#20;3)
addr1,r1,r2;4)
strr1,[r0,4];5)
参考答案要点:
1)将寄存器R0所指地址中的字数据取出放置R1(1分)
2)将R1中的数据左移3位,实现乘以8的功能,结果放置R0中(1分)
3)将立即数20放置R2中(1分)
4)将R1中和R2中的数相加,实现R1中的数加20的作用(1分)
5)将R1中的数据存入取出数据内存的下一地址(1分)
2、请为下列Makefile程序加注释,并说明程序的功能。
objects=main.osubr.o//1)
exec=prog//2)
all:
$(objects)//3)
gcc–o$@$^//4)
clean:
rm–r$(exec)$(objects)//5)
参考答案要点:
注释:
(每行1分)
1)定义目标文件:
objects=main.osubr.o
2)定义输出的可执行文件名为prog
3)make命令的入口点
4)开始编译
5)删除可执行文件以及中间文件
功能:
实现对文件main.csubr.c文件的自动编译,并可清除输出的可执行文件以及中间文件。
(1分)
3、根据一段完整的汇编语言代码回答下面的问题。
;/*-----------------------------------------------------------------*/
;/*code*/
;/*-----------------------------------------------------------------*/
GLOBALReset_Handler
areastart,code,readwrite
entry
code32
numEQU20
Reset_Handler
ldrR0,=src
ldrR1,=dst
movR2,#num
ldrsp,=0x30200000
blockcopy
movsR3,R2,LSR#3
beqcopywords
stmfdsp!
{R4-R11};(*1*)
octcopy
ldmiaR0!
{R4-R11}
stmiaR1!
{R4-R11}
subsR3,R3,#1
bneoctcopy
为了解目前大学生对DIY手工艺品制作的消费情况,我们于己于人2004年3月22日下午利用下课时间在校园内进行了一次快速抽样调查。
据调查本次调查人数共50人,并收回有效问卷50份。
调查分析如下:
ldmfdsp!
{R4-R11};(*2*)
copywords
andsR2,R2,#7
beqstop
wordcopy
一、消费者分析ldrR3,[R0],#4
strR3,[R1],#4
2、Google网站www。
people。
com。
cnsubsR2,R2,#1
二、资料网址:
bnewordcopy
调研要解决的问题:
stop
bstop
;/*------------------------------------------------------------------*/
(二)创业弱势分析;/*makeawordpool*/
;/*------------------------------------------------------------------*/
ltorg
(一)DIY手工艺品的“多样化”src
(2)缺乏经营经验dcd1,2,3,4,5,6,7,8,1,2,3,4,5,6,7,8,1,2,3,4
dst
附件
(二):
dcd0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
end
(二)大学生对DIY手工艺品消费态度分析问题:
(1)语句(*1*)和(*2*)实现什么功能?
(2)这一段代码总体完成什么功能?
(3)分析一下程序的流程与细节。
参考答案及要点:
(1)保护现场和恢复现场。
(1分)
(2)将20个字(字长32位,每字为4个字节,)的数据从内存的一个区间(src指向的)复制到另外一个区间(dst指向的)。
(1分)
(3)程序实现20个字的内存之间的数据复制。
使用ldm与stm指令实现多个字的数据加载与存储,一次处理8个字,2次循环共实现16个字的数据复制。
不足8个字的数据用ldr与str指令实现单字的数据加载与存储,4次循环共实现4个字的数据复制。
(2分)
六、实践应用题(10分)
假定你在目录/home/arm下有一个C程序,它由几个单独的文件组成,而这几个文件又分为包含了其他文件,如下图所示:
文件
包含文件
main.c
stdio.h,table.h
list.c
list.h
symbol.c
symbol.h
table.c
table.h
table.h
symbol.h,list.h
完成下列任务:
编写makefile文件,最终的目标文件为hello(交叉编译器为arm-linux-gcc)
在目标机上通过网络文件系统挂载/mnt到宿主机上的/home/arm目录(IP自己定)。
参考答案及要点:
1、答:
(7分)
hello:
main.olist.osymbol.otable.o
gcc-oprogmain.olist.osymbol.otable.o
main.o:
main.ctable.hsymbol.hlist.h
gcc-c-omain.omain.c
list.o:
list.clist.h
gcc-c-olist.olist.c
symbol.o:
symbol.csymbol.h
gcc-c-osymbol.osymbol.c
table.o:
table.ctable.hsymbol.hlist.h
gcc-c-otable.otable.c
clean:
rmhello*.o
2、Mount–tnfs–onoclock192.168.0.10:
/home/armtest/hello/mnt
(3分)