版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE12024年(中级)嵌入式系统设计师软考试题库汇总(含答案)一、单选题1.嵌入式系统支持的内存块为极小页时,可分成大小为()的子页。A、1KBB、4KBC、16KBD、不能再细分答案:D解析:嵌入式系统支持的内存块由大到小分别是段(1MB)、大页(64KB)、小页(4KB)和极小页(1KB)。大页可分成大小为16KB的子页,小页可分成大小为1KB的子页。2.假设段页式存储管理系统中的地址结构如下图所示,则系统______。A、最多可有2048个段,每个段的大小均为2048个页,页的大小为2KB、最多可有2048个段,每个段最大允许有2048个页,页的大小为2KC、最多可有1024个段,每个段的大小均为1024个页,页的大小为4KD、最多可有1024个段,每个段最大允许有1024个页,页的大小为4K答案:D解析:本题考查操作系统页式存储管理方面的基础知识。从图中可见,页内地址的长度是12位,212=4096,即4K;页号部分的地址长度是10位,每个段最大允许有210=1024个页;段号部分的地址长度是10位,210=1024,最多可有1024个段。3.SNMP是一种异步请求/响应协议,采用()协议进行封装。A、IPB、ICMPC、TCPD、UDP答案:D解析:SNMP是基于UDP协议的。4.变量W_data定义如下:uniondata_node{floatff'intn;charch;}W_data;则变量W_data所占的内存存储空间可表示为______。A、sizeof(int)B、sizeof(char)C、sizeof(float)D、sizeof(int)+sizeof(char)+sizeof(float)答案:C解析:本题考查C语言编程的基本知识。本题中变量W_data类型为联合。联合中所有数据项占有相同的内存空间。联合体所占的内存存储空间为所包含数据项所占的内存存储空间的最大值。5.将高级语言源程序通过编译或解释方式进行翻译时,可以先生成与源程序等价的某种中间代码。以下关于中间代码的叙述中,正确的是()。A、中间代码常采用符号表来表示B、后缀式和三地址码是常用的中间代码C、对中间代码进行优化要依据运行程序的机器特性D、中间代码不能跨平台答案:B解析:常见的中间代码有后缀式、三地址码、树,符号表是在编译预处理时,中间代码不依赖于硬件平台,可移植性强,可跨平台。6.分配给某公司网络的地址块是/20,该网络可以被划分为_____个C类子网。A、4B、8C、16D、32答案:C解析:根据CIDR(无类别域间路由)的规则,/20表示该网络的前20位是网络地址,剩下的12位是主机地址。因此,该网络可以被划分为2^12个主机地址,即4096个主机。而一个C类网络的主机地址有2^8个,即256个。因此,该网络可以被划分为4096/256=16个C类子网。因此,答案为C。7.以下协议中属于应用层协议的是(请作答此空),该协议的报文封装在()中传送。A、SNMPB、ARPC、ICMPD、X.25答案:A解析:ARP和ICMP是网络层协议,X.25是数据链路层协议,只有SNMP是应用层协议。SNMP协议的报文是封装在UDP协议中传送。8.嵌入式系统中配置了大量的外围设备,即I/O设备。依据工作方式不同可以分为字符设备、块设备和网络设备。下面描述不正确的是______。A、键盘、显示器、打印机、扫描仪、鼠标等都属于字符设备B、块设备是以块为单位进行传输的,如磁盘、磁带和光盘等C、网络设备主要用于与远程设备进行通信D、网络设备的传输速度和字符设备相当答案:D解析:本题考查嵌入式系统中设备分类方面的基础知识。嵌入式系统中配置了大量的外围设备,即I/O设备。依据工作方式不同可以分为字符设备、块设备和网络设备。字符(char)设备是能够像字节流(类似文件)一样被访问的设备,由字符设备驱动程序来实现这种特性。字符设备驱动程序通常至少要实现open、close、read和write的系统调用。字符终端(/dev/console)和串口(/dev/ttyS0以及类似设备)就是两个字符设备,它们能很好的说明“流”这种抽象概念。字符设备可以通过节点来访问,比如/dev/tty1和/dev/lp0等。这些设备文件和普通文件之间的唯一差别是:对普通文件的访问可以前后移动访问位置,而大多数字符设备是一个只能顺序访问的数据通道。然而,也存在具有数据区特性的字符设备,访问它们时可前后移动访问位置。例如framebuffer就是这样的一个设备,可以用mmap或lseek访问抓取的整个图像。与字符设备类似,块设备也是通过/dev目录下的文件系统节点来访问。块设备(例如磁盘)上能够容纳文件系统。在大多数的Unix系统中,进行I/O操作时块设备每次只能传输一个或多个完整的块,而每块包含512字节(或2的更高次幂字节的数据)。Linux可以让应用像字符设备一样地读写块设备,允许一次传递任意多字节的数据。因此,块设备和字符设备的区别仅仅在于内核内部管理数据的方式,也就是内核及驱动程序之间的软件接口,而这些不同对用户来讲是透明的。在内核中,和字符驱动程序相比,块驱动程序具有完全不同的接口。网络接口是一个能够和其他主机交换数据的设备。接口通常是一个硬件设备,但也可能是个纯软件设备,比如回环(loopback)接口。网络接口由内核中的网络子系统驱动,负责发送和接收数据包。许多网络连接(尤其是使用TCP协议的连接)是面向流的,但网络设备却围绕数据包的传送和接收而设计。网络驱动程序不需要知道各个连接的相关信息,它只要处理数据包即可。由于不是面向流的设备,因此将网络接口映射到文件系统中的节点(比如/dev/tty1)比较困难。Unix访问网络接口的方法仍然是给它们分配一个唯一的名字(比如eth0),但这个名字在文件系统中不存在对应的节点。内核和网络设备驱动程序间的通信,完全不同于内核和字符以及块驱动程序之间的通信,内核调用一套和数据包相关的函数而不是fead、write等。9.假设页面大小为1KB,对于逻辑地址0xE9B7所对应的逻辑页面号为()。A、0x3AB、0x1B7C、0xE9D、0xB7答案:A解析:将逻辑地址0xE9B7转换成二进制形式为(1110100110110111)2页面大小为1KB,对于逻辑地址0xE9B7所对应的逻辑页面号为0x3A,页内偏移量为0x1B7。10.ICMP协议属于因特网中的______协议,ICMP协议数据单元封装在(请作答此空)中传送。A、以太帧B、TCP段C、UDP数据报D、IP数据报答案:D解析:ICMP(InternetcontrolMessageProtocol)与IP协议同属于网络层,用于传送有关通信问题的消息。例如数据报不能到达目标站,路由器没有足够的缓存空间,或者路由器向发送主机提供最短通路信息等。ICMP报文封装在IP数据报中传送,因而不保证可靠的提交。11.下列进程状态变化中,______是不可能发生的。A、等待→运行B、运行→等待C、等待→就绪D、运行→就绪答案:A解析:通常一个进程应有3种基本状态:就绪状态、运行状态和等待状态(或称阻塞状态)。进程的3个状态的转换如下图所示。12.下列做法中不利于嵌入式应用软件移植的是______。A、在软件设计上,采用层次化设计和模块化设计B、在软件体系结构上,在操作系统和应用软件之间引入一个中间件层C、将不可移植的部分局域化,集中在某几个特定的文件之中D、在数据类型上,尽量直接使用C语言的数据类型答案:D解析:本题考查嵌入式系统的基础知识。嵌入式系统是指用于执行独立功能的专用计算机系统。它由包括微处理器、定时器、微控制器、存储器、传感器等一系列微电子芯片与器件,和嵌入在存储器中的微型操作系统、控制应用软件组成,共同实现诸如实时控制、监视、管理、移动计算、数据处理等各种自动化处理任务。嵌入式系统以应用为中心,以微电子技术、控制技术、计算机技术和通信技术为基础,强调硬件软件的协同性与整合性,软件与硬件可剪裁,以满足系统对功能、成本、体积和功耗等要求。嵌入式软件通常分为嵌入式操作系统、嵌入式支撑软件和嵌入式应用软件。嵌入式操作系统负责嵌入系统的全部软、硬件资源的分配、调度工作,控制、协调并发活动;嵌入式支撑软件用于帮助和支持软件开发的软件,通常包括一些嵌入式中间件等;嵌入式应用软件是针对特定应用领域,基于某一固定的硬件平台,用来达到用户预期目标的计算机软件。由于用户任务可能有时间和精度上的要求,因此有些嵌入式应用软件需要特定嵌入式操作系统的支持。嵌入式应用软件和普通应用软件有一定的区别,它不仅要求其准确性、安全性和稳定性等方面能够满足实际应用的需要,而且还要尽可能地进行优化,以减少对系统资源的消耗,降低硬件成本。嵌入式软件的特点有:①嵌入式软件具有独特的实用性。嵌入式软件是为嵌入式系统服务的,这就要求它与外部硬件和设备联系紧密。嵌入式系统以应用为中心,嵌入式软件是应用系统,根据应用需求定向开发,面向产业、面向市场,需要特定的行业经验。每种嵌入式软件都有自己独特的应用环境和实用价值。②嵌入式软件应有灵活的适用性。嵌入式软件通常可以认为是一种模块化软件,它应该能非常方便灵活的运用到各种嵌入式系统中,而不能破坏或更改原有的系统特性和功能。首先它要小巧,不能占用大量资源;其次要使用灵活,应尽量优化配置,减小对系统的整体继承性,升级更换灵活方便。综上所述,嵌入式软件和硬件平台密切相关,不同的硬件平台可能使用不同的编译器,直接使用C语言的数据类型,会引入硬件平台和软件平台带来的差异,不利于软件移植。13.以下关于直接存储器访问(DMA)的叙述中,错误的是()。A、DMA是一种快速传递大数据的技术B、DMA将传输的数据从一个地址空间复制到另一个地址空间C、DMA数据传送过程中,由CPU和DMA控制器共同控制D、在DMA控制器控制下,主存和外设之间直接交换数据答案:C解析:DMA直接在主存和外设之间建立一条数据传输通道,无需CPU来控制传输过程,是一种快速传递大数据块的技术。14.若一台服务器只开放了25和110两个端口,那么这台服务器可以提供()服务。A、E-mailB、WebC、DNSD、FTP答案:A解析:25端口是SMTP协议端口,110端口是POP3协议端口,二者分别是发送邮件和接收邮件的协议,因此可以提供电子邮件服务。15.执行下面的一段C程序后,变量ret的值为()。charstr[20];intret=strlen(strcpy(str,”Hello_World”));A、0B、11C、12D、20答案:B解析:本题中,从最内层括号开始看起,将常量拷贝到str中,strcpy函数会在字符结束符\0时停止拷贝,因此只管Hello_World长度,strlen相当于strlen(str),字符串长度为11.16.已知:charstr[10],*p=str;下面C语言语句中正确的是()。A、str="ABC";B、p="ABC";C、*str="ABC";D、*p="ABC”;答案:B解析:在C语言中,`charstr[10];`定义了一个字符数组`str`,它可以存储最多9个字符和一个终止符'\0'。而`*p=str;`定义了一个字符指针`p`并将其初始化为指向`str`的第一个字符。接下来,我们分析每个选项:A.`str="ABC";`这是不正确的,因为`str`是一个字符数组,而不是一个字符指针。你不能直接将一个字符串字面值(如"ABC")赋值给一个字符数组。这样做会导致类型不匹配错误。B.`p="ABC";`这是正确的。`p`是一个字符指针,你可以将一个字符串字面值(如"ABC")赋值给它。这样,`p`将指向该字符串字面值的第一个字符。C.`*str="ABC";`这是不正确的。`*str`表示`str`数组的第一个元素,它是一个字符,而不是一个字符串。你不能将一个字符串字面值(如"ABC")赋值给一个字符。D.`*p="ABC";`这也是不正确的。与C选项类似,`*p`表示`p`指针指向的字符,而不是一个字符串。你不能将一个字符串字面值(如"ABC")赋值给一个字符。因此,正确答案是B,`p="ABC";`。17.DHCP客户端可从DHCP服务器获得______。A、DHCP服务器的地址和Web服务器的地址B、DNS服务器的地址和DHCP服务器的地址C、客户端地址和邮件服务器地址D、默认网关的地址和邮件服务器地址答案:B解析:本题考查DHCP协议的工作原理。DHCP客户端可从DHCP服务器获得本机IP地址,DNS服务器的地址,DHCP服务器的地址,默认网关的地址等,但没有Web服务器、邮件服务器地址。18.下面是路由表的4个表项,与地址2匹配的表项是()。A、2/22B、4/22C、4/22D、4/22答案:D解析:地址2中179的二进制码为1011?0011,假如网络号采用22位,与该地址匹配的路由表项则为4/22。19.计算机系统的层次结构如下图所示,基于硬件之上的软件可分为a、b和c三个层次。图中a、b和c分别表示()。A、操作系统、系统软件和应用软件B、操作系统、应用软件和系统软件C、应用软件、系统软件和操作系统D、应用软件、操作系统和系统软件答案:C解析:从底到上,越来越抽象,与具体应用相关,与硬件无关,并且右边有说明,则a是用户使用的应用软件,b是系统软件,c是操作系统。20.下面是用递推法计算菲波那(Fibonacci)级数第n项的函数,请填补空缺。intf(intn)intf0=0,fl=1,f,i;if(n==0)return0;if(n==1)return1;for(i=2;iA、f=f1B、f1=f0C、f=f0D、f1=f答案:D解析:本题考查C语言编程及算法方面的基础知识。菲波那(Fibonacci)级数数列为0,1,1,2,3,5,8,13,…,即:F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)当n>1时。21.测试网络连通性通常采用的命令是()。A、NetstatB、PingC、MsconfigD、Cmd答案:B解析:ping命令用来测试网络连通性。A用于显示网络状态,C用于windows配置的应用程序;D是打开命令提示符窗口。22.通常嵌入式文件系统不具有()功能。A、提供建立、修改、改变和删除目录等服务B、提供创建、打开、读写、关闭和撤销文件等服务C、提供对文件的加密和解密功能D、设置、修改对文件和目录的存取权限答案:C解析:通常嵌入式文件系统比较简单,主要提供文件存储、检索和更新等功能,一般不提供保护和加密等安全机制。它以系统调用和命令方式提供以下3种文件的操作服务:①提供建立、修改、改变和删除目录等服务;②提供创建、打开、读写、关闭和撤销文件等服务,③设置、修改对文件和目录的存取权限。通常,嵌入式文件系统可支持FAT32等标准的文件系统,还可支持自定义的实时文件系统和多种存储设备,具有可裁减和可配置等特点。23.下面的程序使用了函数指针,其运行结果是______。#include<stdio.h>#include<math.h>intf1(inta){returna*a;}intf2(inta){returna*a*a;}voidmain(){intx=3,y1,y2,y3,y4;f=f1;y1=(*f)(x);y2=f1(x);f=f2;y3=f(x);y4=f2(x);printf("y1=%d,y2=%d,y3=%d,y4=%d\n",y1,y2,y3,y4);}A、y1=27,y2=9,y3=9,y4=27B、y1=9,y2=9,y3=27,y4=27C、y1=9,y2=27,y3=9,y4=27D、y1=27,y2=27,y3=9,y4=9答案:B解析:本题考查C语言函数指针的基础知识。仔细阅读程序,正确理解函数指针并将参数正确代入函数,可得到y1=9,y2=9,y3=27,y4=27的结果。24.DMA数据的传送是以______为单位进行的。A、字节B、字C、数据块D、位答案:C解析:DMA(DirectMemoryAccess,直接内存访问)是一种计算机数据传输方式,它可以在不占用CPU的情况下,直接将数据从外设传送到内存或从内存传送到外设。在DMA传送数据时,数据的传送是以数据块为单位进行的,因此答案为C。选项A字节、选项B字和选项D位都是数据的计量单位,但不是DMA数据传送的单位。25.属于面向对象、解释型程序设计语言的是______A、XMLB、PythonC、PrologD、C++答案:B解析:本题考查程序语言基础知识。XML(可扩展标记语言)是标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。Python是一种面向对象、解释型计算机程序设计语言。Prolog是逻辑型程序设计语言。26.虚拟存储器的管理方式分为段式、页式和段页式三种,以下描述中,不正确的是______。A、页式虚拟存储器中,虚拟地址到实地址的变换是由主存中的页表来实现的B、段式存储管理中,段是按照程序的逻辑结构划分的,各个段的长度一致C、段页式存储管理中主存的调入和调出是按照页进行,但可按段来实现保护D、在一般的大中型机中,都采用段页式的虚拟存储管理方式答案:B解析:本题考查虚拟存储器管理的基础知识。虚拟存储器的工作原理是:在执行程序时,允许将程序的一部分调入主存,其他部分保留在辅存。即由操作系统的存储管理软件先将当前要执行的程序段(如主程序)从辅存调入主存,暂时不执行的程序段(如子程序)仍保留在辅存,当需要执行存放在辅存的某个程序段时,由CPU执行某种程序调度算法将它们调入主存。虚拟存储器的调度方式有分页式、段式、段页式三种。页式调度是将逻辑和物理地址空间都分成固定大小的页。主存按页顺序编号,而每个独立编址的程序空间有自己的页号顺序,通过调度辅存中程序的各页可以离散装入主存中不同的页面位置,并可据表一一对应检索。页式调度的优点是页内零头小,页表对程序员来说是透明的,地址变换快,调入操作简单;缺点是各页不是程序的独立模块,不便于实现程序和数据的保护。段式调度是按程序的逻辑结构划分地址空间,段的长度是随意的,并且允许伸长,它的优点是消除了内存零头,易于实现存储保护,便于程序动态装配;缺点是调入操作复杂。将这两种方法结合起来便构成段页式调度。在段页式调度中把物理空间分成页,程序按模块分段,每个段再分成与物理空间页同样小的页面。段页式调度综合了段式和页式的优点。其缺点是增加了硬件成本,软件也较复杂。大型通用计算机系统多数采用段页式调度。页式虚拟存储器中,虚拟地址到实地址的变换是由主存中的页表来实现的,段页式存储管理中主存的调入和调出是按照页进行,但可按段来实现保护,段式存储管理中,段是按照程序的逻辑结构划分的,各个段的长度可以按照其实际需要进行大小分配。27.计算机系统的层次结构如下图所示,基于硬件之上的软件可分为a、b和c三个层次。图中a、b和c分别表示()。A、操作系统、系统软件和应用软件B、操作系统、应用软件和系统软件C、应用软件、系统软件和操作系统D、应用软件、操作系统和系统软件答案:C解析:从底到上,越来越抽象,与具体应用相关,与硬件无关,并且右边有说明,则a是用户使用的应用软件,b是系统软件,c是操作系统。28.若一台服务器只开放了25和110两个端口,那么这台服务器可以提供()服务。A、E-mailB、WebC、DNSD、FTP答案:A解析:25端口是SMTP协议端口,110端口是POP3协议端口,二者分别是发送邮件和接收邮件的协议,因此可以提供电子邮件服务。29.在某一分页存储管理系统中,页面的大小为4KB。现有一作业,其部分页表如表6-1所示。若给定一个十进制逻辑地址为8644,则其十进制物理地址是()。表6-1某分页存储管理系统部分页表A、6186B、12330C、33220D、因产生缺页中断,暂时无法获得答案:C解析:由于页面的大小为4KB=22×210=4096B,逻辑地址8644=4096×2+452,得页号为2,偏移量为452。查表7-15可知,页号为2所对应的物理块号是8,因此所求物理地址=4096×8+452=33220。30.下列关于C语言中结构类型的叙述中,错误的是()。A、结构第一个成员的地址和整个结构的地址相同B、缺省条件下,编译器为每个成员按自然对齐(alignment)条件分配空间C、结构成员按照它们被声明的顺序在内存中顺序存储D、结构是一种复合数据类型,其构成元素只能是基本数据类型答案:D解析:结构类型即结构体struct,结构体第一个成员放在偏移为0的地方,称为首地址,和整个结构体的地址相同;每个特定平台有默认的对齐系数,程序员可以通过预编译命令#pragmapack(n),n=1,2,4,8,16来改变这一系数,缺省条件下,编译器为每个成员按自然对齐条件分配空间;结构体成员是按照声明的顺序在内存中顺序存储;结构体是C语言中聚合数据类型,可以被声明为变量、指针、数据等,用来实现复杂的数据结构,结构体的成员也可以包含其他结构体。31.PPP中的安全认证协议是______,它使用三次握手的会话过程传送密文。A、MD5B、PAPC、HAPD、HASH答案:C解析:PPP认证是可选的。PPP扩展认证协议(ExtensibleAuthenticationProtocol,EAP)可支持多种认证机制,并且允许使用后端服务器来实现复杂的认证过程。例如通过Radius服务器进行Web认证时,远程访问服务器(RAS)只是作为认证服务器的代理传递请求和应答报文,并且当识别出认证成功/失败标志后结束认证过程。通常PPP支持的两个认证协议是:①口令验证协议(PasswordAuthenticationProtocol,PAP):提供了一种简单的两次握手认证方法,由终端发送用户标识和口令字,等待服务器的应答,如果认证不成功,则终止连接。这种方法不安全,因为采用文本方式发送密码,可能会被第三方窃取;②质询握手认证协议(ChallengeHandshakeAuthenticationProtocol,CHAP):采用三次握手方式周期地验证对方的身份。首先是逻辑链路建立后认证服务器就要发送一个挑战报文(随机数),终端计算该报文的Hash值并把结果返回服务器,然后认证服务器把收到的Hash值与自己计算的Hash值进行比较,如果匹配,则认证通过,连接得以建立,否则连接被终止。计算Hash值的过程有一个双方共享的密钥参与,而密钥是不通过网络传送的,所以CHAP是更安全的认证机制。在后续的通信过程中,每经过一个随机的间隔,这个认证过程都可能被重复,以缩短入侵者进行持续攻击的时间。值得注意的是,这种方法可以进行双向身份认证,终端也可以向服务器进行挑战,使得双方都能确认对方身份的合法性。32.以下描述中不属于嵌入式操作系统特点的是______。A、面向应用,可以进行裁剪和移植B、用于特定领域,不需要支持多任务C、可靠性高,无须人工干预独立运行,并处理各类事件和故障D、要求编码体积小,能够在嵌入式系统的有效存储空间内运行答案:B解析:本题考查嵌入式操作系统的基础知识。嵌入式操作系统(EOS,EmbeddedOperatingSystem)是指用于嵌入式系统的操作系统。嵌入式操作系统是一种用途广泛的系统软件,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。嵌入式操作系统负责嵌入式系统的全部软、硬件资源的分配、任务调度,控制、协调并发活动。它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。目前在嵌入式领域广泛使用的操作系统有:嵌入式实时操作系统μC/OS-Ⅱ、嵌入式Linux、WindowsEmbedded、VxWorks等,以及应用在智能手机和平板电脑的Android、iOS等。嵌入式操作系统的特点有:(1)系统内核小。由于嵌入式系统一般是应用于小型电子装置,系统资源相对有限,所以内核较之传统的操作系统要小得多。(2)专用性强。嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植,即使在同一品牌、同一系列的产品中也需要根据系统硬件的变化和增减不断进行修改。同时针对不同的任务,往往需要对系统进行较大更改,程序的编译下载要和系统相结合,这种修改和通用软件的“升级”是完全两个概念。(3)系统精简。嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。(4)高实时性。高实时性的系统软件是嵌入式软件的基本要求,而且软件要求固态存储,以提高速度;软件代码要求高质量和高可靠性。(5)多任务的操作系统。嵌入式软件开发需要使用多任务的操作系统。嵌入式系统的应用程序可以没有操作系统直接在芯片上运行。但是为了合理地调度多任务、利用系统资源、系统函数以及和专用库函数接口,用户必须自行选配操作系统开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。33.以下关于嵌入式实时系统的叙述中,不正确的是______。A、嵌入式实时系统,要求系统在投入运行前即具有确定性和可预测性B、可预测性是指系统在运行之前,其功能、响应特性和执行结果是可预测的C、确定性是指系统在给定的状态和输入下,在确定的时间内给出确定的结果D、对嵌入式实时系统失效的判断仅依赖对其运行结果的正确性判断答案:D解析:A、B、C三个选项都是嵌入式实时系统的基本要求,即系统需要具有确定性和可预测性,能够在给定的状态和输入下,在确定的时间内给出确定的结果。因此,选项A、B、C都是正确的。而选项D则是不正确的。对于嵌入式实时系统的失效判断,不仅需要对其运行结果的正确性进行判断,还需要考虑系统的实时性和可靠性等因素。因此,选项D是不正确的。34.集线器与网桥的区别是:______。A、集线器不能检测发送冲突,而网桥可以检测冲突B、集线器是物理层设备,而网桥是数据链路层设备C、网桥只有两个端口,而集线器是一种多端口网桥D、网桥是物理层设备,而集线器是数据链路层设备答案:B解析:集线器是物理层设备,相当于在10BASE2局域网中把连接工作站的同轴电缆收拢在一个盒子里,这个盒子只起到接收和发送的功能,可以检测发送冲突,但不能识别数据链路层的帧。网桥是数据链路层设备,它可以识别数据链路层MAC址,有选择地把帧发送到输出端口,网桥也可以有多个端口,如果网桥端口很多,并配置了加快转发的硬件,就成为局域网交换机。35.某系统中有3个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数是()。A、9B、10C、11D、12答案:B解析:3个进程要想不死锁,每个进程都需要4个同类资源,所以只要每个进程都有3个资源,另外一个在给一个额外的资源。那么3个进程中有一个可以运行。运行完以后,释放资源然后其余的进程在申请资源就可以了。36.假设段页式存储管理系统中的地址结构如下图所示,则系统()。A、最多可有256个段,每个段的大小均为2048个页,页的大小为8KB、最多可有256个段,每个段的最大允许有2048个页,页的大小为8KC、最多可有512个段,每个段的大小均为1024个页,页的大小为4KD、最多可有512个段,每个段最大允许有1024个页,页的大小为4K答案:B解析:本题考查操作系统页式存储管理方面的基础知识。从图中可见,页内地址的长度是13位,213=8192,即8K;页号部分的地址长度是11位,每个段最大允许有211=2048个页;段号部分的地址长度是8位,28=256,最多可有256个段。故本题的正确答案为B。37.下列属于低级任务间通信方式的是()。A、共享内存B、PV操作C、消息传递D、管道通信答案:B解析:在实时操作系统中,任务间通信是指任务之间为了协调工作,需要相互交换数据和控制信息,可分为低级通信和高级通信两种类型。PV操作等信号量机制和信号机制属于低级任务间通信方式。消息传递、共享内存、管道通信属于高级任务间通信方式。任务间通信又可分为直接通信和间接通信两种类型。send、receive原语属于直接通信方式,邮箱、消息队列属于间接通信方式。38.假设系统中有n个进程共享3台扫描仪,并采用PV操作实现进程同步与互斥。若系统信号量S的当前值为-1,进程P1、P2又分别执行了1次P(S)操作,那么信号量S的值应为()。A、3B、-3C、1D、-1答案:B解析:本题考查的是操作系统PV操作方面的基本知识。系统采用PV操作实现进程同步与互斥,若有n个进程共享3台扫描仪,那么信号量S初值应为3。若系统当前信号量S的值为-1,此时,P1、P2又分别执行了1次P(S)操作,即当P1进程执行P(S)操作时,信号量S的值等于-2;当P2进程执行P(S)操作时,信号量S的值等于-3。39.仔细阅读下面程序,请给出运行结果()。#include#includeintf1(intx){returnx*x;}intf2(intx){returnx*x*x;}main(){intx=3,y1,y2,y3,y4;int(*f)();f=f1;y1=(*f)(x);y2=f1(x);f=f2;y3=f(x);y4=f2(x);printf(“y1=%d,y2=%d,y3=%d,y4=%d\n”,y1,y2,y3,y4);}A、y1=9,y2=9,y3=27,y4=27B、y1=3,y2=9,y3=27,y4=9C、y1=3,y2=3,y3=9,y4=9D、y1=3,y2=9,y3=9,y4=27答案:A解析:首先,定义了两个函数f1和f2,分别返回参数的平方和立方。在主函数中,定义了变量x和y1、y2、y3、y4,其中y1、y2、y3、y4都是int类型。接着,定义了一个函数指针f,指向函数f1,然后调用f指向的函数,将结果赋值给y1,此时y1=9。然后,直接调用函数f1,将结果赋值给y2,此时y2=9。接着,将函数指针f指向函数f2,然后调用f指向的函数,将结果赋值给y3,此时y3=27。最后,直接调用函数f2,将结果赋值给y4,此时y4=27。最后,输出y1、y2、y3、y4的值,即y1=9,y2=9,y3=27,y4=27。因此,答案为A。40.算法的时间复杂度是指______。A、执行算法程序所需要的时间B、算法程序的长度C、算法执行过程中所需要的基本运算次数D、算法程序中的指令条数答案:C解析:本题考查计算机程序设计方面的基础知识。算法复杂度分为时间复杂度和空间复杂度。时间复杂度是指执行算法所需要的计算工作量;而空间复杂度是指执行这个算法所需要的内存空间。在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。这是一个关于代表算法输入值的字符串的长度的函数。一般情况下,算法的基本操作重复执行的次数是模块n的某一个函数f(n),因此,算法的时间复杂度记做:T(n)=O(f(n))。算法的时间复杂度是一个执行时间数量级的表示,并不是执行算法程序所需要的时间值,也与算法程序的长度无必然联系,也不能简单的认为就是算法程序中的指令条数。而是算法执行过程中在所需要的基本运算次数,与模块n(规模)相关,随着n的增大,算法执行的时间的增长率和f(n)的增长率成正比。41.假设以下代码运行环境为32位系统,其中,__attribute__((packed))的作用是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐。代码段1:structstudent1{charname[10];longsno;charsex;floatscore[4];}__attribute__((packed))*p1,a1,b1;代码段2:unionstudent2{charname[10];longsno;charsex;floatscore[4];}*p2,a2,b2;sizeof(structstudent1)、sizeof(unionstudent2)的结果分别是______。A、248和128B、31和31C、31和16D、16和16答案:C解析:本题考查程序开发的基础知识。题目中student1是一个结构体,sizeof(structstudent1)结果为结构体student1所有元素字节数之和,因此sizeof(structstudent1)结果为:10+4+1+16=31字节。题目中student2是个联合,sizeof(unionstudent2)结果是联合student2中最长一个元素的字节数。因此sizeof(unionstudent2)结果为:16字节。42.以下4种路由中,______路由的子网掩码是55。A、远程网络B、静态C、默认D、主机答案:C解析:主机路由的子网掩码是55。网络路由要指明一个子网,所以不可能为全1,默认路由是访问默认网关,而默认网关与本地主机属于同一个子网,其子网掩码也应该与网络路由相同,对静态路由也是同样的道理。43.现有3个同时到达的作业J1、J2和J3,它们的执行时间分别是T1、T2和T3,且T1<T2<T3。系统按单道方式运行且采用短作业优先算法,则平均周转时间是______。A、T1+T2+T3B、(T1+T2+T3)/3C、(3T1+2T2+T3)/3D、(T1+2T2+3T3)/3答案:C解析:短作业优先(shortestJobFirst,SJF)调度算法用于进程调度时称为短进程优先调度算法,该调度算法既可以用于作业调度也可以用于进程调度。在作业调度中,短作业优先调度算法每次从后备作业队列中选择估计运行时间最短的一个或几个作业,将它们调入内存,分配必要的资源,创建进程并放入就绪队列。由于3个作业同时到达,所以作业执行的次序依次是J1、J2和J3,故周转时间分别为:J1:T1;J2:T1+T2;J3:T1+T2+T3;则平均周转时间:(T1+(T1+T2)+(T1+T2+T3))/3=(3T1+2T2+T3)/344.常用的函数参数传递方式有传值与传引用两种。()。A、在传值方式下,形参与实参之间互相传值B、在传值方式下,实参不能是变量C、在传引用方式下,修改形参实质上改变了实参的值D、在传引用方式下,实参可以是任意的变量和表达式答案:C解析:传值调用和引用调用是常用的两种参数传递方式。在传值调用方式下,是将实参的值传递给形参,该传递是单方向的,调用结束后不会再将形参的值传给实参。在引用调用方式下,实质上是将实参的地址传递给形参,借助指针在间接访问数据方式下(或者将形参看作是实参的别名),在被调用函数中对形参的修改实质上是对实参的修改。45.Linux系统对普通文件默认的访问权限是()。A、-rwxrwxB、-rw-rw-r--C、-rwxD、-rw-r--r--答案:D解析:Linux系统文件访问的三种处理模式是读取,、写入w和执行x。对普通文件默认的访问权限是:文件所有者能够读写,但不能执行;文件所有者同组成员和其他成员只能读取,即“-rw-r--r--”。46.三目运算符表达式“d=a>b?(a>c?a:c):(b>c?b:c);”等价于下列①、②、③、④四组程序的______组解释。A、④B、③C、②D、①答案:A解析:本题考查三目运算符表达式的基础知识。题目中的三目运算表达式“d=a>b?(a>c?a:c):(b>c?b:c)”求值结果是取a、b、c中最大的值赋给d。三目运算符的通常格式为“a>b?a:b”,其含义为:当a>b为真时,取a为表达式的值,否则,取b为表达式的值。需要注意的是,三元运算符“?”的执行优先级低于所有二元操作符,仅高于逗号运算符。47.以太网的数据帧结构如图6-3所示,包含在TCP段中的数据部分最长应该是()字节。A、1434B、1460C、1480D、1500答案:B解析:通常,Ethernet以太网的数据帧最大长度为1518字节,EthernetⅡ帧头为18字节,IP头最少为20字节,TCP头最少为20字节,数据部分最长为1518-18-20-20=1460B。48.设n的初值为正整数,设计一个递归算法如下:intfact(intn){if(n<=0)return1;elsereturn(n*fact(n-1));}以下叙述中,正确的是______。A、计算fact(n)需要执行n+2次函数调用B、计算fact(n)需要执行n+1次函数调用C、计算fact(n)需要执行n次函数调用D、计算fact(n)需要执行n-1次函数调用答案:B解析:本题考查函数递归调用方面的相关知识。递归法是描述算法的一种强有力的方法,其思想是:将N=n时不能得出解的问题,设法递归(压栈)转化为求n-1,n-2,…的问题,一直到N=0或1的初始情况,由于初始情况的解可以给出,因此,开始层层退栈得到N=2,3,…,n时的解,得到最终结果。本题中,主程序调用fact(n)称为外部调用,其他调用称为内部调用,直到调用fact(0)为止。fact(n)调用fact(n-1),fact(n-1)调用fact(n-2)……fact(1)调用fact(0),内部调用n次,外部调用一次,共n+1次。49.以下C语言程序的输出结果是()。structs{intx,y;}data[2]={10,100,20,200};main(){structs*p=data;p++;printf(“%d\n”,++(p->x));}A、10B、11C、20D、21答案:D解析:data是s类型的数组,即结构体数组,用{10,100,20,200}赋值,可知:data[0].x=10data[0].y=100data[1].x=20data[1].y=200structs*p,p是data数组的指针。指向数组的第一个元素,*p即为data[0]。p++之后,即地址向后移动,此时p指向数组的第二个元素,*p即为data[1].p->x和(*p).x是一样的,p->x和data[1].x等价。所以在++(p->x)之后,data[0].x的值变为21。输出21。50.以下关于文件系统的叙述中,不正确的是______。A、文件控制块是文件系统中最重要的数据结构,但不是文件存在的唯一标志B、文件控制块主要包括文件的标识、位置和访问权限等信息C、文件目录将系统中所有的文件控制块按照某种规律组织起来以便于检索D、文件目录也是一种文件答案:A解析:本题考查计算机文件系统方面的基础知识。文件控制块是文件系统中最重要的数据结构,是文件存在的唯一标志,它存放文件的一些基本信息。主要包括三大部分:文件的标识信息,包括文件名、所有者名、文件类型、文件最近修改时间等;文件的位置信息,包括文件的长度、文件存放位置等;文件的访问权限信息,例如口令、保存时限、保护类别等。文件目录是文件控制块的有序集合,将系统中所有的文件控制块按照某种规律组织起来以便于检索,就形成了文件目录,文件目录也由文件组成。51.以下协议中属于应用层协议的是(),该协议的报文封装在(请作答此空)中传送。A、TCPB、IPC、UDPD、ICMP答案:C解析:ARP和ICMP是网络层协议,X.25是数据链路层协议,只有SNMP是应用层协议。SNMP协议的报文是封装在UDP协议中传送。52.假设磁盘块与缓冲区大小相同,每个盘块读入缓冲区的时间为10μs,由缓冲区送至用户区的时间是5μs,系统对每个磁盘块数据的处理时间为2μs。若用户需要将大小为10个磁盘块的Doc1文件逐块从磁盘读入缓冲区,并送至用户区进行处理,那么采用单缓冲区需要花费的时间为______μs。A、100B、107C、152D、170答案:C解析:对于单缓冲区,每个磁盘块需要读入缓冲区、送至用户区、处理三个步骤,总时间为:$10μs+5μs+2μs=17μs$对于大小为10个磁盘块的Doc1文件,需要读入10次,每次读入的时间为17μs,总时间为:$10\times17μs=170μs$因此,选项D为正确答案。53.以下关于文件系统的叙述,错误的是()。A、文件控制块是文件系统中最重要的数据结构,但不是文件存在的唯一标志B、文件控制块主要包括文件的标识信息、位置信息和文件的访问权限信息等C、文件目录将系统中所有的文件控制块按照某种规律组织起来以便于检索D、文件目录也由文件组成答案:A解析:文件控制块FCB就是文件存在的唯一标志,存放文件的一些基本信息,包括文件的标识信息(文件名、所有者、文件类型、最近修改时间等)、位置信息(文件长度、存放位置等)、访问权限信息(口令、保存时限、保护类别)等。文件目录是文件控制块的有序集合,将系统中所有的FCB按照某种规律组织起来便于检索,就形成了文件目录,文件目录也由文件组成。54.在TCP/IP网络中,为各种公共服务保留的TCP端口号范围是()。A、1~255B、1~1023C、1~1024D、1~65535答案:B解析:在TCP/IP网络中,传输层的传输控制协议TCP和用户数据包协议UDP的源端口、目的端口均占用16bit,其所能表达的端口号范围达2^16=65536,但其中为各种公共服务保留的TCP/UDP端口号范围是1~1023。55.分配给某公司网络的地址块是/20,该网络可以被划分为______个C类子网。A、4B、8C、16D、32答案:C解析:由于分配给公司网络的地址块是/20,留给子网掩码的比特数只有4位,所以只能划分为16个C类子网,这16个C类子网的子网号为11000000~11001111,即192~207,所以不属于该公司的网络地址。56.TCP使用的流量控制协议是______。A、固定大小的滑动窗口协议B、后退N帧的ARQ协议C、可变大小的滑动窗口协议D、停等协议答案:C解析:TCP的流量控制采用了可变大小的滑动窗口协议,由接收方指明接收缓冲区的大小(字节数),发送方发送了规定的字节数后等待接收方的下一次请求。固定大小的滑动窗口协议用在数据链路层的HDLC中。可变大小的滑动窗口协议可以应付长距离通信过程中线路延迟不确定的情况,而固定大小的滑动窗口协议则适合链路两端点之间通信延迟固定的情况。57.下列关于任务上下文切换的描述中,不正确的是______。A.任务上下文是任务控制块(TCA、的组成部分B、上下文切换是由一个特殊的任务完成C、上下文切换时间是影响RTOS性能的重要指标D、上下文切换由RTOS内部完成答案:B解析:本题考查嵌入式操作系统的基础知识。在多任务系统中,上下文切换指的是当处理器的控制权由运行任务转移到另外一个就绪任务时所执行的操作。任务的上下文是任务控制块(TCB)的组成部分,记录着任务的寄存器、状态等信息。当运行的任务转为就绪、挂起或删除时,另外一个被选定的就绪任务就成为当前任务。上下文切换包括保存当前任务的状态,决定哪一个任务运行,恢复将要运行的任务的状态。保护和恢复上下文的操作是依赖特定的处理器的。上下文切换时间是影响嵌入式实时操作系统RTOS性能的一个重要指标。上下文切换是在RTOS内部完成的,上下文切换由一个特殊的任务完成的说法是错误的,故本题应选择B。58.会导致进程从执行态变为就绪态的事件是()。A、执行P(wait)操作B、申请内存失败C、启动I/O设备D、被高优先级进程抢占答案:D解析:本题考查操作系统调度的基础知识。进程切换是多任务多用户操作系统所应具有的基本功能。操作系统为了控制进程的执行,必须有能力挂起正在CPU上运行的进程,并恢复以前挂起的某个进程的执行,这种行为被称为进程切换,任务切换或上下文切换。或者说,进行进程切换就是从正在运行的进程中收回CPU,然后再使待运行进程来占用CPU。这里所说的从某个进程收回CPU,实质上就是把进程存放在CPU的寄存器中的中间数据找个地方存起来,从而把CPU的寄存器腾出来让其他进程使用。进程在其生存期内可能处于如下三种基本状态之一:(a)执行态(Run):进程占有CPU资源,正在运行。显然,在单处理机系统中任一时刻只能有一个进程处于此种状态;(b)就绪态(Ready):进程本身具备运行条件,但由于处理机的个数少于可运行进程的个数,暂未投入运行。即相当于等待CPU资源;(c)等待态(Wait):也称挂起态(Suspended)、封锁态(Blocked)、睡眠态(Sleep)。进程本身不具备运行条件,即使分给它处理机也不能运行。进程正等待某一个事件的发生,如等待某一资源被释放,等待与该进程相关的I/O传输的完成信号等。进程的三个基本状态之间是可以相互转换的。具体地说,当一个就绪进程获得CPU时,其状态由就绪变为执行;当一个执行进程被剥夺CPU时,如用完系统分给它的时间片、出现更高优先级别的其他进程,其状态由运行变为就绪;当一个执行进程因某事件受阻时,如所申请资源被占用、启动I/o传输未完成,其状态由运行变为等待;当所等待事件发生时,如得到申请资源、I/O传输完成,其状态由等待变为就绪。59.在C程序中,语句“char*func(intx,inty);”表示的含义是()。A、对函数func的定义B、对函数func的调用C、对函数func返回值类型的说明D、对函数func的原型说明答案:D解析:函数的定义需要返回值、函数名、形参、函数体,这里缺少了函数体,并且后面加了分号表示一条语句,是函数的声明,即函数的原型说明。60.分配到必要的资源并获得处理机时的进程状态是()。A、就绪状态B、执行状态C、阻塞状态D、撤销状态答案:B解析:进程在分配到必要的资源并获得处理机时,即进入执行状态,开始执行其指定的任务。因此,答案为B。其他选项的解释如下:A.就绪状态:进程已经准备好运行,但还未获得处理机的时间片。C.阻塞状态:进程因为等待某些事件的发生而暂停运行,例如等待输入输出完成、等待资源分配等。D.撤销状态:进程被强制终止或自行退出,其占用的资源被释放。61.以下关于层次化局域网模型中核心层的叙述,正确的是______。A、为了保障安全性,对分组要进行有效性检查B、将分组从一个区域高速地转发到另一个区域C、由多台二、三层交换机组成D、提供多条路径来缓解通信瓶颈答案:B解析:在层次化局域网模型中,核心层的主要功能是将分组从一个区域高速地转发到另一个区域。核心层是因特网络的高速骨干,由于其重要性,因此在设计中应该采用冗余组件设计,使其具备高可靠性,能快速适应变化。在设计核心层设备的功能时,应尽量避免使用数据包过滤、策略路由等降低数据包转发处理的特性,以优化核心层获得低延迟和良好的可管理性。汇聚层是核心层和接入层的分界点,应尽量将资源访问控制、核心层流量的控制等都在汇聚层实施。汇聚层应向核心层隐藏接入层的详细信息,汇聚层向核心层路由器进行路由宣告时,仅宣告多个子网地址汇聚而形成的一个网络。另外,汇聚层也会对接入层屏蔽网络其他部分的信息,汇聚层路由器可以不向接入路由器宣告其他网络部分的路由,而仅仅向接入设备宣告自己为默认路由。接入层为用户提供了在本地网段访问应用系统的能力,接入层要解决相邻用户之间的互访需要,并且为这些访问提供足够的带宽。接入层还应该适当负责一些用户管理功能,包括地址认证、用户认证和计费管理等内容。接入层还负责一些信息的用户信息收集工作,例如用户的IP地址、MAC地址和访问日志等信息。62.()主要用于Linux系统中进程间相互传递数据。A、FIFO文件B、设备文件C、链接文件D、目录文件答案:A解析:本题考查的是Linux系统中进程间通信的方式,选项中只有FIFO文件是用于进程间相互传递数据的,因此答案为A。其他选项的作用如下:B.设备文件:用于访问系统中的硬件设备。C.链接文件:用于创建文件的硬链接或符号链接。D.目录文件:用于存储文件和子目录的容器。63.x是整型变量,pb是整型指针变量,如果将pb指向x,则正确的表达式是______。A、pb=&xB、pb=xC、*pb=&xD、*pb=*x答案:A解析:本题考查C语言方面的基础知识。选项A将变量x的地址赋给指针变量pb,使pb指向x;选项B将x的值当作地址赋给指针pb;选项C将x的地址赋给指针pb指向的地址等于x的内存单元;选项D使pb指向一个地址等于x值的内存单元。根据题意,如果将pb指向x,则正确的表达式是pb=&x。因此正确答案为A。64.以下关于程序设计语言的叙述中,不正确的是()。A、脚本语言中不使用变量和函数B、标记语言常用于描述格式化和链接C、脚本语言采用解释方式实现D、编译型语言的执行效率更高答案:A解析:任何程序设计语言都要使变量和函数,这是基本组成,脚本语言中只是不需要定义就可以使用,高级程序设计语言需要先定义再使用。65.执行下面的一段C程序后,变量ret的值为()。charstr[20];intret=strlen(strcpy(str,”Hello_World”));A、0B、11C、12D、20答案:B解析:本题中,从最内层括号开始看起,将常量拷贝到str中,strcpy函数会在字符结束符\0时停止拷贝,因此只管Hello_World长度,strlen相当于strlen(str),字符串长度为11.66.操作系统中的Spooling技术,实质是将______转化为共享设备的技术。A、虚拟设备B、独占设备C、脱机设备D、块设备答案:B解析:本题考查嵌入式操作系统的基础知识。Spooling的意思是外部设备同时联机操作,又称为假脱机输入/输出操作,是操作系统中采用的一项将独占设备改造成共享设备的技术。Spooling系统的组成包括三部分:输入井和输出井、输入缓冲区和输出缓冲区、输入进程和输出进程。为了解决CPU输出数据的速度远远高于打印机的打印速度这一矛盾,在操作系统中一般采用Spooling技术。67.下面的一段C程序中,循环体语句______退出循环。unsignedcharn;inttotal;n=50;while(n-->=0)?{total+=n;}A、执行49次后B、执行50次后C、执行51次后D、死循环,不会答案:D解析:本题考查C语言编程的基本知识。在本题中考生需注意unsignedchar的用法,因为n为无符号整型,永远不会为负数,所以循环语句会陷入死循环,不会退出循环。在实际的软件编程中一定要小心判断条件是否可达到。68.执行下面的一段C程序后,输出结果变量应为______。sub(intx,inty,int*z){*z=y-x;}main(){inta,b,c;sub(10,5,&a);sub(7,a,&b);sub(a,b,&c);printf("%d,%d,%d\n",a,b,c);}A、5,2,3B、-5,-12,-7C、-5,-12,-17D、5,-2,-7答案:B解析:首先看函数sub,它的作用是将y-x的值存入指针z所指向的变量中。在main函数中,先调用sub(10,5,&a),将5存入a中;然后调用sub(7,a,&b),将a(即5)与7相减得到-2,存入b中;最后调用sub(a,b,&c),将a(即5)与b(即-2)相减得到7,存入c中。因此,输出结果应为-5,-12,-7,选项B正确。69.通过______可清除上网痕迹。A、禁用脚本B、禁止SSLC、清除CookieD、查看ActiveX控件答案:C解析:本题考查浏览器配置相关知识。禁用脚本是禁止本地浏览器解释执行客户端脚本;禁止SSL是禁止采用加密方式传送网页;Cookie中保存有用户账号等临时信息,即上网之后留下的信息;ActiveX控件是本地可执行的插件。因此要清除上网痕迹,需清除Cookie。70.以下关于嵌入式微处理器中断的叙述中,错误的是()。A、大多数系统可以使用轮询方式让多个设备共享一个中断B、高优先级中断可以抢占低优先级中断,最高优先级中断不可被抢占C、多个中断源同时请求中断时,系统只能响应一个中断,其他中断会被丢弃D、当中断发生时,系统将自动备份当前程序状态寄存器答案:C解析:A.大多数系统可以使用轮询方式让多个设备共享一个中断。这个说法是正确的。在一些嵌入式系统中,由于中断资源有限,需要多个设备共享一个中断,这时可以使用轮询方式,让多个设备依次使用同一个中断。B.高优先级中断可以抢占低优先级中断,最高优先级中断不可被抢占。这个说法也是正确的。在嵌入式系统中,中断的优先级是非常重要的,高优先级中断可以打断低优先级中断的执行,最高优先级中断不可被其他中断打断。C.多个中断源同时请求中断时,系统只能响应一个中断,其他中断会被丢弃。这个说法是错误的。当多个中断源同时请求中断时,系统会根据中断的优先级来选择响应其中一个中断,其他中断会被暂时挂起,等待下一次中断响应。D.当中断发生时,系统将自动备份当前程序状态寄存器。这个说法是正确的。在中断处理过程中,系统会自动备份当前程序状态寄存器,以便在中断处理完成后能够正确地返回到原来的程序执行状态。综上所述,选项C是错误的。71.将高级语言源程序翻译成机器语言程序的过程中,常引入中间代码。以下关于中间代码的叙述中,不正确的是______。A、中间代码不依赖于具体的机器B、使用中间代码可提高编译程序的可移植性C、中间代码可以用树或图表示D、中间代码可以用栈和队列表示答案:D解析:本题考查程序语言基础知识。从原理上讲,对源程序进行语义分析之后就可以直接生成目标代码,但由于源程序与目标代码的逻辑结构往往差别很大,特别是考虑到具体机器指令系统的特点,要使翻译一次到位很困难,而且用语法制导方式机械生成的目标代码往往是烦琐和低效的,因此有必要设计一种中间代码,将源程序首先翻译成中间代码表示形式,以利于进行与机器无关的优化处理。由于中间代码实际上也起着编译器前端和后端分水岭的作用,所以使用中间代码也有助于提高编译程序的可移植性。常用的中间代码有后缀式、三元式、四元式和树(图)等形式。72.在嵌入式操作系统中,两个任务并发执行,一个任务要等待另外一个任务发来消息后再继续执行,这种制约性合作关系被称为任务的______。A、同步B、互斥C、调度D、等待答案:A解析:本题考查嵌入式操作系统的基础知识。嵌入式操作系统是一种用途广泛的系统软件,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。嵌入式操作系统负责嵌入式系统的全部软、硬件资源的分配、任务调度,控制、协调并发活动。目前在嵌入式领域广泛使用的操作系统有:嵌入式实时操作系统μC/OS-Ⅱ、嵌入式Linux、WindowsEmbedded、VxWorks等,以及应用在智能手机和平板电脑的Android、iOS等。在所有嵌入式操作系统中,同步和互斥都是常用的任务间通信机制。互斥指的是两个或两个以上的任务,不能同时进入关于同一组共享变量的临界区域,否则可能发生与时间有关的错误,这种现象被称作互斥。也就是说,一个任务正在访问临界资源,另一个要访问该资源的进程必须等待。同步则是把异步环境下的一组并发任务因直接制约而互相发送消息、进行互相合作、互相等待,使得各任务按一定的速度执行的过程。具有同步关系的一组并发任务称为合作任务,合作任务间互相发送的信号称为消息或事件。用P、V原语操作实现同步的实例为:设任务A和B通过缓冲区队列传递数据。A为发送任务、B为接收任务、A发送数据时调用发送过程,B接收数据时调用过程,且数据的发送和接收过程满足如下条件:①在A至少送一块数据入一个缓冲区之前,B不可能从缓冲区中取出数据;②A往缓冲队列发送数据时,至少有一个缓冲区是空的;③由A发送的数据块在缓冲队列中按先进先出(FIFO)方式排列。73.在支持多线程的操作系统中,假设进程P创建了若干个线程,那么______是不能被这些线程共享的。A、该进程中打开的文件B、该进程的代码段C、该进程中某线程的栈指针D、该进程的全局变量答案:C解析:在同一进程中的各个线程都可以共享该进程所拥有的资源,如访问进程地址空间中的每一个虚地址;访问进程所拥有的已打开文件、定时器、信号量等,但是不能共享进程中某线程的栈指针。74.gdb是一款GNU组织开发并发布的Linux程序调试工具,它使用户能在程序运行时观察程序的内部结构和内存的使用情况。以下不属于gdb功能的是______。A、能监视程序中变量的值B、能设置断点以使程序在指定的代码行上停止执行C、能逐行的执行代码D、能发现代码中的语法错误答案:D解析:本题考查嵌入式软件开发工具方面的基础知识。gdb是GNU开源组织发布的一个强大的程序调试工具。一般来说,gdb的主要功能包括:1.执行程序。运行准备调试的程序,在命令后面可以跟随发给该程序的任何参数。2.显示数据。检查各个变量的值,显示被调试的语言中任何有效的表达式。3.断点。用来在调试的程序中设置断点,该命令有如下四种形式:使程序恰好在执行给定行之前停止;使程序恰好在进入指定的函数之前停止;如果条件是真,程序到达指定行或函数时停止;在指定例程的入口处设置断点。4.断点管理。包括显示当前gdb的断点信息、删除指定的某个断点、禁止使用某个断点、允许使用某个断点、清除源文件中某一代码行上的所有断点等。5.变量检查赋值。识别数组或变量的类型,提供一个结构的定义,将值赋予变量。6.单步执行。包括不进入的单步执行、进入的单步执行。如果已经进入了某函数,退出该函数返回到它的调用函数中。7.函数调用。调用和执行一个函数。结束执行当前函数,显示其返回值。8.机器语言工具。有一组专用的gdb变量可以用来检查和修改计算机的通用寄存器。9.信号。gdb通常可以捕捉到发送给它的大多数信号,通过捕捉信号,它就可决定对于正在运行的进程要做些什么工作。代码中的语法错误,可在编译阶段由编译器检查出来,不属于调试器的功能。75.以下与文件系统相关的叙述中,不正确的是()。A、文件系统负责文件的组织、存储、检索、命名、共享和保护B、文件系统为用户提供描述文件抽象的程序接口C、文件通常存储在磁盘或其他非易失存储介质上D、程序设计者需要关心文件存储分配的细节答案:D解析:A选项正确,文件系统确实负责文件的组织、存储、检索、命名、共享和保护。B选项正确,文件系统为用户提供描述文件抽象的程序接口,使得用户可以方便地对文件进行操作。C选项正确,文件通常存储在磁盘或其他非易失存储介质上,以保证数据的长期保存。D选项不正确,程序设计者不需要关心文件存储分配的细节,这是文件系统的职责。程序设计者只需要使用文件系统提供的接口来操作文件即可。综上所述,选项D是不正确的。76.在某嵌入式系统中采用PowerPC处理器,若C语言代码中定义了如下的数据类型变量X,则X所占用的内存字节数是()。A、8B、13C、16D、24答案:A解析:C语言中,union的使用与struct的用择非常类似,主要区别在于union维护足够的空间来置放多个数据成员中的“一种”,而不是为每一个数据成员配置空间,在union中所有的数据成员共用一个空间,同1时间只能储存其中一个数据成员,所有的数据成员具有相同的起始地址。—个union只配置—个足够大的空间以来容纳最大长度的数据成员,以上例而言,最大长度是double型态,所以X的空间大小就是double数据类型的大小。Double为双精度浮点数,占用8个字节空间。77.阅读下面的C语言程序,请给出正确的输出结果()。#include#defineN10#defines(x)x*x#definef(x)(x*x)#defineg(x)((x)*(x))main(){inti1,i2,i3,i4;i1=1000/s(N);i2=1000/f(N);i3=f(N+1);i4=g(N+1);printf(“i1=%d,i2=%d,i3=%d,i4=%d\n”,i1,i2,i3,i4);}A、i1=1000,i2=10,i3=21,i4=121B、i1=10,i2=10,i3=121,i4=121C、i1=1000,i2=1000,i3=21,i4=21D、i1=10,i2二1000,i3=121,i4=21答案:A解析:首先,宏定义中的s(x)表示x*x,f(x)表示(x*x),g(x)表示(x*x)。接着,程序中定义了四个整型变量i1、i2、i3、i4。i1=1000/s(N)表示i1的值为1000除以s(N),即1000除以N*N,由于N等于10,所以i1的值为1000/10*10=1000。i2=1000/f(N)表示i2的值为1000除以f(N),即1000除以N*N,由于N等于10,所以i2的值为1000/100=10。i3=f(N+1)表示i3的值为N+1的平方,即11的平方,所以i3的值为121。i4=g(N+1)表示i4的值为N+1的平方,即11的平方,所以i4的值为121。最后,使用printf函数输出i1、i2、i3、i4的值,格式化输出为“i1=%d,i2=%d,i3=%d,i4=%d\n”,其中%d表示输出整型变量的值,\n表示换行。综上所述,程序的正确输出结果为A选项:i1=1000,i2=10,i3=21,i4=121。78.算法是为解决某个问题而设计的步骤和方法。以下关于算法的叙述中,不正确的是______。A、解决同一个问题,不同的人(甚至是同一个人)可能会写出几种不同的算法B、常用算法主要有迭代法、穷举搜索法、递推法、递归法、贪婪法、回溯法等C、递推法是利用所解问题本身所具有的递推关系来求得问题解的一种算法D、任何可以用递推法解决的问题,亦可用递归法解决,反之亦然答案:D解析:A选项正确,因为算法的设计是有很大的灵活性的,不同的人可以根据自己的思路和经验设计出不同的算法。B选项正确,因为这些算法都是常用的算法,可以用来解决很多问题。C选项正确,因为递推法是一种常用的算法,可以利用问题本身的递推关系来求解问题。D选项不正确,因为并非所有可以用递推法解决的问题都可以用递归法解决,反之亦然。有些问题递推法更加高效,有些问题递归法更加高效。因此,D选项是错误的。79.某个应用任务TaskA正在等待信号量到来从而执行,此时TaskA所处的状态名称为()。A、就绪态状态B、执行状态C、阻塞状态D、结束状态答案:C解析:进程基础三态是阻塞、就绪、执行,题中任务没有执行,也不仅仅缺CPU资源,还缺信号量资源,因此是阻塞状态。80.共享内存通信机制的缺点是______。A、需要花费额外的内存空间B、需要使用额外的同步机制C、需要额外硬件支持D、通信过程中需要反复读取内存,时间开销大答案:B解析:本题考查任务间通信方面的基础知识。共享内存指在多处理器的计算机系统中,可以被不同中央处理器(CPU)访问的大容量内存。共享内存也可以是一个操作系统中的多进程之间的通信方法,这种方法通常用于一个程序的多进程间通信,实际上多个程序间也可以通过共享内存来传递信息。如下图所示。共享内存相比其他通信方式有着更方便的数据控制能力,数据在读写过程中会更透明。当成功导入一块共享内存后,它只是相当于一个字符串指针来指向一块内存,在当前进程下用户可以随意的访问。共享内存的一个缺点是:由于多个CPU需要快速访问存储器,这样就要对存储器进行缓存(Cache)。任何一个缓存的数据被更新后,由于其他处理器也可能要存取,共享内存就需要立即更新,否则不同的处理器可能用到不同的数据。另一个缺点是,数据写入进程或数据读出进程中,需要附加的数据结构控制。81.以下关于直接存储器访问(DMA)的叙述中,错误的是()。A、DMA是一种快速传递大数据的技术B、DMA将传输的数据从一个地址空间复制到另一个地址空间C、DMA数据传送过程中,由CPU和DMA控制器共同控制D、在DMA控制器控制下,主存和外设之间直接交换数据答案:C解析:DMA直接在主存和外设之间建立一条数据传输通道,无需CPU来控制传输过程,是一种快速传递大数据块的技术。82.若在一个32位字长的嵌入式微处理器上定义了1个int类型的常量a=0x8192F3A5,按大端存储法存放于0x6000内存地址处,以下选项中能正确表达这种存放顺序的是()。A、8192F3A5B、18293F5AC、A5F39281D、5A3F2918答案:A解析:大端字节顺序存储法是将高字节数据存放在低地址处,低字节数据存放在高地址处,因此选项A是答案。而小端字节顺序存储法是将低字节数据存放在低地址处,高字节数据存放在高地址处,例如选项C。83.相比于TCP,UDP的优势为()。A、可靠传输B、开销较小C、拥塞控制D、流量控制答案:B解析:UDP的优势主要就是开销小,一般用于视频、音频的传输。84.微内核操作系统在嵌入式系统中得到越来越广泛的应用,以下关于微内核操作系统叙述中,错误的是()。A、微内核操作系统,就是一种基于微内核架构的操作系统B、微内核操作系统由一群尽可能将数量最小化的软件程序组成C、微内核并非一个完整的操作系统,而只是操作系统中最基本的部分D、由于微内核不能有效的支持多处理机运行,所以不适用分布式系统环境答案:D解析:微内核操作系统的基本思想是尽可能的将操作系统核心缩小,仅仅实现核心基础部分,如中断、并行调度等与硬件有
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广州中医药大学《商业银行管理》2023-2024学年第一学期期末试卷
- 2025年辽宁省安全员《A证》考试题库
- 2025安徽建筑安全员《B证》考试题库及答案
- 领导力培训课件
- 服装协会策划部课件《分享与实践》
- 结构和原理课件 中央空调
- 【物理课件】电源闭合电路的欧姆定律课件
- 《海南师范大学》课件
- 《抗癫痫药物介绍》课件
- 2024年平凉职业技术学院单招职业技能测试题库带解析答案
- 四川省眉山市2023-2024学年高二上学期期末生物试题【含答案解析】
- 三年级下册数学混合计算100题及答案
- 社会工作专业见习教学大纲
- 中国动画赏析
- 多媒体技术及应用(第3版) 课件全套 第1-10章 多媒体技术基础-多媒体技术展望
- 浙江省温州市2023-2024学年八年级上学期道德与法治期末测试(含答案)
- 地方国企重组改制实施方案
- 空压机及气罐故障事故应急救援预案
- 工程建设标准强制性条文清单
- 劳务派遣劳务外包服务方案(技术方案)
- 护理晨查房课件
评论
0/150
提交评论