嵌入式系统设计师-72
(总分:28.00,做题时间:90分钟)
一、单项选择题(总题数:26,分数:28.00)
1.以下针对嵌入式系统高速PCB布线描述原则,不正确的是______。
(分数:1.00)
A.合理选择层数
B.增大高频电路器件管脚间的引线 √
C.注意信号线近距离平行走线时所引入的交叉干扰
D.减少高频电路器件管脚间引线的弯折
解析:
2.在程序执行过程中,Cache与主存的地址映像由______。
(分数:1.00)
A.硬件自动完成 √
B.程序员调度
C.操作系统管理
D.程序员与操作系统协同完成
解析:本题考查计算机系统基础知识。
Cache的工作是建立在程序与数据访问的局部性原理上。即经过对大量程序执行情况的结果分析:在一段较短的时间间隔内程序集中在某一较小的内存地址空间执行,这就是程序执行的局部性原理。同样,对数据的访问也存在局部性现象。
为了提高系统处理速度才将主存部分存储空间中的内容复制到工作速度更快的Cache中,同样为了提高速度的原因,Cache系统都是由硬件实现的。
3.有空栈S,对下列待进栈元素序列a、b、c、d、e、f进行进栈、进栈、出栈、进栈、进栈、出栈的操作后,栈S的栈顶和栈底元素分别为______。
(分数:1.00)
A.c和b
B.b和a
C.c和a √
D.d和b
解析:本题考查计算机栈操作方面的相关知识。
栈是限定操作只能在表的同一端执行的线性表。允许插入和删除的一端为栈顶,不允许插入和删除的一端为栈底。
栈的逻辑特点是先进后出或后进先出。
因此,在初始为空的栈S中,对待进栈元素序列a、b、c、d、e、f进行进栈、进栈、出栈、进栈、进栈、出栈的操作后,栈S的栈顶和栈底元素分别为c和a。
4.可用于编写独立程序和快速脚本的语言是______。
(分数:1.00)
A.Python √
B.Prolog
C.Java
D..C#
解析:本题考查程序语言基础知识。
脚本语言又被称为扩建的语言,或者动态语言,是一种编程语言,通常以文本(如ASCII)保存,只在被调用时进行解释或编译。Python是一种脚本语言。
5.下列关于软件开发模型的叙述,不正确的是______。
(分数:1.00)
A.软件开发模型用以指导软件的开发
B.瀑布模型典型地刻画了软件生存周期的阶段划分,与其最相适应的软件开发方法是快速原型化方法 √
C.螺旋模型综合了瀑布模型和演化模型的优点,并增加了风险分析
D.喷泉模型描述的是面向对象的开发过程,反映了软件开发过程的迭代和无间隙特征
解析:本题考查计算机软件开发模型相关的基础知识。
软件开发模型是软件开发的全部过程、活动和任务的结构框架,用以指导软件的开发。主要的软件开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型和智能模型。其中,瀑布模型是典型的软件生存周期模型,将软件的生存周期划分阶段,按阶段定义、开发和使用,与其最适应的是结构化方法。演化模型是在快速开发一个原型的基础上,逐步演化成最终的系统,与其最相适应的软件开发方法是快速原型化方法。螺旋模型综合了瀑布模型和演化模型的优点,并增加了风险分析,沿着螺线由内向外,每旋转一圈,就得到原型的一个新版本。喷泉模型描述的是面向对象的开发过程,反映了该开发过程的迭代和无缝隙特征。
6.在嵌入式系统设计中,用来进行系统初始代码调试的接口称为______。
(分数:1.00)
A.PCI接口
B.USB接口
C.网络接口
D.JTAG接口 √
解析:
7.下列网络攻击行为中,属于DoS攻击的是______。
(分数:1.00)
A.特洛伊木马攻击
B.SYN Flooding攻击 √
C.端口欺骗攻击
D.IP欺骗攻击
解析:本试题考查网络安全相关知识。
特洛伊木马是附着在应用程序中或者单独存在的一些恶意程序,它可以利用网络远程控制网络另一端的安装有服务端程序的主机,实现对被植入了木马程序的计算机的控制,或者窃取被植入了木马程序的计算机上的机密资料。
拒绝服务攻击通过网络的内外部用户来发动攻击。内部用户可以通过长时间占用系统的内存、CPU处理时间使其他用户不能及时得到这些资源,而引起拒绝服务攻击;外部黑客也可以通过占用网络连接使其他用户得不到网络服务。SYN Flooding攻击以多个随机的源主机地址向目的路由器发送SYN包,在收到目的路由器的SYN ACK后并不回应,于是目的路由器就为这些源主机建立大量的连接队列,由于没有收到ACK一直维护着这些队列,造成了资源的大量消耗而不能向正常请求提供服务,甚至导致路由器崩溃。服务器要等待超时才能断开已分配的资源,所以SYN Flooding攻击是一种DoS攻击。
端口欺骗攻击是采用端口扫描找到系统漏洞从而实施攻击。
IP欺骗攻击是产生的IP数据包为伪造的源IP地址,以便冒充其他系统或发件人的身份。
8.现有3个同时到达的作业J1、J2和J3,它们的执行时间分别是T1、T2和T3,且T1<T2<T3。系统按单道方式运行且采用短作业优先算法,则平均周转时间是______。
(分数:1.00)
A.T1+T2+T3
B.(T1+T2+T3)/3
C.(3T1+2T2+T3)/3 √
D.(T1+2T2+3T3)/3
解析:短作业优先(Shortest Job First, SJF)调度算法用于进程调度时称为短进程优先调度算法,该调度算法既可以用于作业调度也可以用于进程调度。在作业调度中,短作业优先调度算法每次从后备作业队列中选择估计运行时间最短的一个或几个作业,将它们调入内存,分配必要的资源,创建进程并放入就绪队列。
由于3个作业同时到达,所以作业执行的次序依次是J1、J2和J3,故周转时间分别为:
J1:T 1 ;
J2:T 1 +T 2 ;
J3:T 1 +T 2 +T 3 ;
则平均周转时间:
(T 1 +(T 1 +T 2 )+(T 1 +T 2 +T 3 ))/3=(3T 1 +2T 2 +T 3 )/3
9.根据信息的交换方式,可以将通道分为三种类型:字节多路通道、数据选择通道和数组多路通道,字节多路通道是按照字节交叉方式工作的,数据选择通道每次以块为单位
传送一批数据,数组多路通道有多个非分配型子通道,可以连接多台高速外围设备,下图中(1)处最适合使用哪种通道方式? ______。
(分数:1.00)
A.字节多路通道 √
B.数据选择通道
C.数组多路通道
D.任意一种都可以
解析:
10.在嵌入式系统中,以下叙述中错误的是______。
(分数:1.00)
A.板级支持包主要目的是屏蔽底层硬件,不负责系统的引导和设备驱动操作 √
B.嵌入式实时操作系统可以分为基本内核和扩展内核两部分
C.应用编程接口一般以库或者组件的形式提供
D.在实际构建嵌入式系统时,并不一定需要应用编程接口API
解析:本题考查嵌入式系统构建的基础知识。
在嵌入式系统中,Board Support Package(简称BSP,板级支持包)是实现特定的支持代码,通常会与bootloader一起设置,bootloader包含最小的设备驱动来加载操作系统与所有在板上的设备的驱动程序。BSP是介于主板硬件和操作系统之间的一层,主要目的是为了支持操作系统,使之能够更好地运行于硬件主板。不同的操作系统对应不同定义形式的BSP,例如VxWorks的BSP和Linux的BSP相对于某一CPU来说尽管实现的功能一样,可是写法和接口定义完全不同。
嵌入式实时操作系统可以分为基本内核和扩展内核。其对应的定义为:当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间内来控制生产过程或对处理系统做出快速响应,并控制所有实时任务协调一致运行的嵌入式操作系统。在工业控制、军事设备、航空航天等领域对系统的响应时间有苛刻的要求,这就需要使用实时系统。嵌入式操作系统通常是实时操作系统。比如μC/OS-Ⅱ、eCOS和Linux。故对嵌入式实时操作系统的理解应该建立在对嵌入式系统的理解之上加入对响应时间的要求。
在实际的嵌入式系统设计中,应用编程接口一般以库或者组件的形式而存在,选择哪种则依赖于对应的嵌入式操作系统,在实际的系统构建时,并不一定需要对应的接口API。
用户B收到用户A带数字签名的消息M,为了验证M的真实性,首先需要从CA获取用户A的数字证书,并利用______验证该证书的真伪,然后利用______验证M的真实性。(分数:2.00)
A.CA的公钥 √
B.B的私钥
C.A的公钥
D.B的公钥
解析:
A.CA的公钥
B.B的私钥
C.A的公钥 √
D.B的公钥
解析:
11.软件测试的目的是发现软件的错误。使用白盒测试方法时,确定测试数据应根据______和制定的覆盖标准。
(分数:1.00)
A.程序的内部逻辑 √
B.程序的复杂程度
C.使用说明书
D.程序的功能
解析:本题考查软件测试相关的基础知识。软件测试的目的是发现软件的错误。软件测试的方法可以分为黑盒测试法和白盒测试法。
黑盒测试也称功能测试,是通过测试来检查每个功能是否都能正常使用,测试时,完全不用考虑程序内部结构和程序内部特征,在程序接口进行测试,测试的依据是软件需求规格说明。
白盒测试是对软件的过程细节做细致的检查,它允许测试人员利用程序内部逻辑结构和有关信息设计或选择测试用例,可以不考虑程序的功能,因此,测试用例的设计仅与模块设计说明书及源程序有关。
12.软件可移植性是用来衡量软件______的重要尺度之一。
(分数:1.00)
A.通用性 √
B.效率
C.质量
D.人机界面
解析:在嵌入式系统中,由于软硬件发展较快,嵌入式处理器更新快,种类多。嵌入式操作系统也在不断的更新,因此,如果要考虑嵌入式软件的通用性,软件的可移植性就必须考虑。
在本题中可移植性对软件的效率并没有多大的贡献,反而由于考虑到可移植性而对软件的执行效率或多或少还会有点影响。
可移植性是软件质量的重要指标之一,但不是最重要的,软件质量的好坏考察的维度很多,最重要的是否按软件工程化要求开发,软件开发过程的成熟度CMM级别的高低等等。
人机界面影响的是易用性,与软件的可移植性无关。
13.时序逻辑电路的框图如下图所示,其中x 1 (t),x 2 (t),…x n (t)称为时序电路的外部输入信号, 称为时序电路的内部输入,F 1 (t),…F r (t)称为时序电路的外部输出,
W 1 (t)…W m (t)称为______。
(分数:1.00)
A.内部函数
B.外部函数
C.激励函数 √
D.输出函数
解析:本题考查时序电路的概念。
时序电路的特点是:在任何时刻电路产生的稳定输出信号不仅与该时刻电路的输入信号有关,而且还与电路过去的状态有关。由于它与过去的状态有关,所以电路中必须具有“记忆”功能的器件,记住电路过去的状态,并与输入信号共同决定电路的现在输出。题目中给出的图示为其对应的电路框图。从图中可以看出,对组合电路而言,它有两组输入和两组输出,其中x 1 (t),x 2 (t),x n (t)称为时序电路的外部输入信号, 称为时序电路的内部输入,F 1 (t),…F r (t)力称为时序电路的外部输出,W 1 (t)…Wm(t)称为时序电路的内部输出,或称为记忆原件的控制函数或激励函数。
14.下列属于不良程序设计风格的是______。
(分数:1.00)
A.使用括号以改善表达式的清晰性
B.不要进行浮点数的相等比较
C.程序中的注释可有可无,应尽量少 √
D.使用有意义的标识符
解析:本题考查有关程序设计风格的基础知识。好的程序设计,是指设计出来的程序不但要保证正确,而且要清晰易读、易于修改。因此,好的程序设计应该从多方面加以注意,例如:
A.应首先保证程序代码清晰、正确、可靠,不要片面追求“优化”和“技巧”;
B.对于复杂的表达式,最好使用括号清楚地表明运算的优先次序;
C.当数据结构是递归定义的时候,最好使用递归的算法;
D.不要进行浮点数比较运算:浮点数的运算是近似的,相等比较可能永远不能达到;
E.为保持程序的简洁性,应尽可能少输出中间结果;
F.应该适当加注注释,因为完全没有注释的程序,会像天书一样难懂;
G.使用有意义的标识符,有助于提高程序的可读性。等等。
15.为了解决CPU输出数据的速度远远高于打印机的打印速度这一矛盾,可采用______。
(分数:1.00)
A.并行技术
B.通道技术
C.缓冲技术 √
D.虚存技术
解析:并行技术是多处理器(CPU)或多处机并行处理任务的技术,为了解决复杂的计算问题,提高计算速度,一般采用这种技术。如现在我们所称的多核技术、众核技术、大规模并行机等等。
通道技术是一种任务(分区或进程)之间通信的一种技术。
缓冲技术也称Spooling技术,Spooling的意思是外部设备同时联机操作,又称为假脱机输入/输出操作,是操作系统中采用的一项将独占设备改造成共享设备的技术。Spooling系统的组成包括三部分:输入井和输出井、输入缓冲区和输出缓冲区、输入进程和输出进程。为了解决CPU输出数据的速度远远高于打印机的打印速度这一矛盾,在操作系统中一般采用Spooling技术。
虚存(VM)技术能从逻辑上对内存进行扩充,达到扩充内存的效果,具有请求调入和置换功能。
16.某C语言程序在一台32位机器上运行。程序中定义了三个变量x,y,z,其中x和z是int型,y为short型。当x=127,y=-9时,执行赋值语句z=x+y后,x,y,z的值分别是______。
(分数:1.00)
A.x=0000007FH,y=FFF9H,z=00000076H
B.x=0000007FH,y=FFF9H,z=FFFF0076H
C.x=0000007FH,y=FFF7H,z=FFFF0076H
D.x=0000007FH,y=FFF7H,z=00000076H √
解析:本题考查计算机中数据存储的基础知识。
X=127,Y=-9,Z=X+Y=127-9=118,计算机中主要用补码存储数据。
17.对信号量S执行V操作后,以下叙述中正确的是______。
(分数:1.00)
A.当S等于0时唤醒一个阻塞进程 √
B.当S小于0时唤醒一个阻塞进程
C.当S小于等于0时唤醒一个就绪进程
D.当S小于0时唤醒一个就绪进程
解析:本题考查操作系统的基础知识。荷兰学者Dijkstra提出的信号量(或信号灯)机制,是一种卓有成效的进程同步与互斥的工具。对信号量的操作原语有两种,P操作和V
操作。P操作和V操作是执行时不被打断的两个操作系统原语,P操作和V操作必须成对使用。
在操作系统中,信号量是表示资源的实体,它由两个成员(S,Q)构成,其中S是一个具有非负初值的整型变量,是一个初始状态为空的队列。整型变量S表示系统中某类资源的使用情况,当其值大于0时,表示系统中当前可用资源的数目;当其值小于0时,其绝对值表示系统中因请求该类资源而阻塞等待的进程数目。除信号量的初值外,信号量的值能由P操作和V操作改变。
P(S)的主要功能是:先执行S=S-1;若S≥0则进程继续执行;若S<0则阻塞该进程,并将它插入到该信号量的等待队列Q中。
V(S)的主要功能是:先执行S=S+1;若S>0则进程继续执行;若S≤0则从该信号量等待队列中移出第一个进程,使其变为就绪状态并插入就绪队列,然后再返回原进程继续执行。
综上所述,当前的S小于等于0时,会将信号量队列中第一个进程移出,变为就绪状态。当S等于0时,原进程执行完后,移出的进程就会被唤醒。
18.下列与文件系统相关的叙述,不正确的是______。
(分数:1.00)
A.文件系统负责文件的组织、存储、检索、命名、共享和保护
B.文件系统为用户提供描述文件抽象的程序接口
C.文件通常存储在磁盘或其他非易失存储介质上
D.应用程序设计者需要关心文件存储分配的细节 √
解析:本题考查计算机操作系统中文件系统相关的基础知识。
计算机系统中,文件存储在磁盘或者其他非易失的存储介质上,文件系统负责文件的组织、存储、检索、命名、共享和保护,并为程序设计者提供描述文件抽象的程序接口,程序员不需要关心文件存储分配细节和存储布局细节,只需通过调用程序接口即可实现对文件的操作。
19.若计算机存储数据采用的是双符号位(00表示正号、11表示负号),两个符号相同的数相加时,如果运算结果的两个符号位经______运算得1,则可断定这两个数相加的结果产生了溢出。
(分数:1.00)
A.逻辑与
B.逻辑或
C.逻辑同或
D.逻辑异或 √
解析:本题考查计算机系统基础知识。
当表示数据时规定了位数后,其能表示的数值范围就确定了,在两个数进行相加运算的结果超出了该范围后,就发生了溢出。在二进制情况下,溢出时符号位将变反,即两个正数相加,结果的符号位是负数,或者两个负数相加,结果的符号位是正数。采用两个符号位时,溢出发生后两个符号位就不一致了,这两位进行异或的结果一定为1。
20.分区分配内存管理方式的主要保护措施是______。
(分数:1.00)
A.界地址保护 √
B.程序代码保护
C.数据保护
D.栈保护
解析:本题考查操作系统存储管理的基础知识。
内存保护是操作系统中的一个机制,对内存的存取权限进行管理。内存保护的主要目的是防止某个行程去存取不是操作系统配置给它的寻址空间。这个机制可以防止某个进程因为某些错误而影响到其他行程或是操作系统本身的运行。分区分配内存管理方式,通过向进程划分专属的存储空间,实现边界保护。
21.结构化分析方法是一种面向数据流的软件需求分析方法,该方法最常用的图形工具是数据流图,与其匹配使用的是______。
(分数:1.00)
A.结构图
B.数据字典 √
C.数据流
D.网络图
解析:本题考查结构化分析方法相关知识。
结构化分析方法(SA)是一种面向数据流的软件分析方法,适用于开发数据处理型软件的需求分析。结构化分析方法适用的工具主要有数据流图(DFD)、数据字典(DD)、结构化语言、判定表和判定树。其中,数据流图以图形的方式表达数据处理系统中信息的交换和传递过程。与数据流图配合使用的是数据字典,它对数据流图中出现的所有图形元素给出逻辑定义。有了数据字典,数据流图中的数据流、加工和文件得到确切的解释。
22.若某计算机字长为32位,内存容量为2GB,按字编址,则可寻址范围为______。
(分数:1.00)
A.1024MB
B.1GB
C.512MB √
D.2GB
解析:本题考查计算机系统基础知识。
内存容量2GB=2*1024*1024*1024*8位,按字编址时,存储单元的个数为2*1024*1024*1024*8/32=512*1024*1024,即可寻址范围为512MB。
IEEE 1394具有______位地址空间,IEEE 1394的通信协议具有三个协议层,不包括______。(分数:2.00)
A.8
B.16
C.32
D.64 √
解析:IEEE 1394总线是由Apple公司提出的FireWire高速串行总线接口发展而来的,1995年被IEEE认可为IEEE 1394-1995规范,之后,又在此基础上相继提出了IEEE 1394a和IEEE 1394b规范。虽然无处理机系统的控制和状态寄存器CSR体系结构定义了32位和64位的解址模式,但IEEE 1394规范仅支持64位固定解址模式。在IEEE 1394的通信协议中定义了三个协议层,分别是事务层、链路层和物理层,用于在请求者和响应者之间的数据传输过程中完成相关服务。
A.事务层
B.表示层 √
C.链路层
D.物理层
解析:
23.基线是一组经过正式验证或确认的,并作为后续工作开展依据的一个或一组工作产品,软件项目至少应形成______三类基线。
(分数:1.00)
A.任务基线、功能基线、产品基线
B.任务基线、功能基线、分配基线
C.功能基线、测试基线、产品基线
D.功能基线、分配基线、产品基线 √
解析:本题考查软件工程的基础知识。在配置项目生存周期的某一特定时间内,一个和一组正式指定或固定下来的配置标准文件。基线加上根据这些基线批准同意的改动构成了当前配置标识,对于配置管理至少应有以下三个基线:
功能基线:是指在系统分析与软件定义阶段结束时,经过正式批准、签字的系统规格说明书、项目任务书、合同书或协议书中所规定的对待开发软件系统的规格说明。
分配基线:是指在需求分析阶段结束时,经过正式评审和批准的需求规格说明。分配基线是最初批准的分配配置标识。
产品基线:是指在综合测试阶段结束时,经过正式评审和批准的有关所开发的软件产品的全部配置项的规格说明。产品基线是最终批准产品配置标识。
24.软件质量特性是用来描述和评价软件产品质量的一组属性,在GJB 5236-2004标准中,将软件质量属性划分为6个特性,下面关于软件质量特性正确的是______。
(分数:1.00)
A.功能性、性能、安全性、可靠性、易用性、维护性
B.功能性、可靠性、易用性、效率、维护性、可移植性 √
C.功能性、安全性、可靠性、易用性、维护性、可移植性
D.功能性、适应性、准确性、可靠性、易用性、维护性
解析:软件产品的质量是指软件产品特性的总和,表示软件产品满足明确或隐含要求的能力。软件产品的质量可分为内部质量和外部质量两部分。
内部质量是指产品属性的总和,决定了软件产品在特定条件下使用时,满足明确和隐
含要求的能力。
外部质量是指软件产品在特定条件下使用时,满足明确或隐含要求的程度。
在GIB 5236-2004标准中,软件产品质量的内部质量和外部质量属性可划分为6个特性:
功能性(适合性、准确性、互操作性、安全保密性和功能性的依从性);
可靠性(成熟性、容错性、易恢复性和可靠性的依从性);
易用性(易理解性、易学性、易操作性、吸引性、易用性的依从性);
效率(时间特性、资源利用性、效率的依从性);
维护性(易分析性、易改变性、稳定性、易测试性、维护性的依从性);
可移植性(适应性、易安装性、共存性、易替换性、可移植性的依从性)。
因篇幅问题不能全部显示,请点此查看更多更全内容