前端程序员面试分类真题25_第1页
前端程序员面试分类真题25_第2页
前端程序员面试分类真题25_第3页
前端程序员面试分类真题25_第4页
前端程序员面试分类真题25_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

前端程序员面试分类真题25一、单项选择题1.

当用一台机器作为网络客户端时,该机器最多可以保持______个到服务端的连接A.1B.少于1024C.少于65535D.无限制正确答案:C[考(江南博哥)点]网络设备[解析]在一台机器上,到服务器端的连接数由端口的个数来决定,由于端口号的长度为16位,因此,最多可以使用的端口数为2^16-1=65535,故最多可以保持65535个连接。所以,选项C正确。

2.

一个广域网和一个局域网相连,需要的设备是______A.NICB.网关C.集线器D.路由器正确答案:B[考点]网络设备[解析]网关是局域网连接广域网的出口,可以工作在OSI模型网络层以上的不同层次。所以,选项B正确。

3.

下列功能中,能使TCP准确可靠地从源设备到目的地设备传输数据的是______A.封装B.流量控制C.无连接服务D.编号和定序正确答案:D[考点]网络协议[解析]TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议,主要通过如下一些方式实现可靠传输:

(1)当TCP发出一个段后,它启动一个定时器,等待目的端确认收到这个报文段。如果不能及时收到一个确认,将重发这个报文段。当TCP收到发自TCP连接另一端的数据时,它将发送一个确认。

(2)TCP将保持它首部和数据的检验和。这是一个端到端的检验和,目的是检测数据在传输过程中的任何变化。如果收到段的检验和有差错,TCP将丢弃这个报文段,同时,不确认收到此报文段。

(3)由于TCP报文段作为IP数据报来传输,而IP数据报的到达可能会失序,因此,TCP报文段的到达也可能会失序。因此,TCP将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层,这就需要对报文进行编号,以确定报文的顺序。

由此可见,选项D正确。

对于选项A,封装是为了提高传输效率,当个别包传输失败后,只需要重传失败的包即可,如果没有把一个大的包封装成多个小的包,每当一个包出错的时候都需要重发整个包。所以,选项A错误。

对于选项B,拥塞控制的目的是防止过多的数据注入网络中,这样可以避免网络中的路由器或链路过载。所以,选项B错误。

对于选项C,TCP是面向连接的服务,而UDP才是面向无连接的服务。所以,选项C错误。

4.

ping命令使用ICMP的以下______代码类型A.重定向B.Echo响应C.源抑制D.目标不可达正确答案:B[考点]网络协议[解析]ping命令主要用来检测网络是否连通,使用方式为:pingIP地址。底层实现的原理为:ping发送一个ICMPEcho包;接收ICMPEcho(ICMP回声应答)。因此,选项B正确。

对于选项A,ICMP(InternetControlMessageProtocol,网际控制报文协议)重定向报文是ICMP控制报文中的一种。在特定的情况下,当路由器检测到一台机器使用非优化路由时,它会向该主机发送一个ICMP重定向报文,请求主机改变路由。路由器也会把初始数据报向它的目的地转发。因此,选项A错误。

对于选项C,源抑制报文(sourcequenchmessage)一般被接收设备用于帮助防止它们的缓存溢出。接收设备通过发送源抑制报文来请求源设备降低当前的数据发送速度。因此,选项C错误。

对于选项D,当数据包无法被转发到目标结点或者上层协议时,路由器或者目标结点发送ICMPv6目标不可达差错报文。因此,选项D错误。

5.

以下不可以查看某IP是否可达的方式/命令是______A.telnetB.pingC.tracertD.top正确答案:D[考点]网络协议[解析]对于选项A,telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的计算机上使用telnet程序,用它连接到服务器。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。因此,选项A正确。

对于选项B,ping命令可以检查网络是否连通,可以很好地帮助分析和判定网络故障。应用格式为:ping空格IP地址。该命令还可以添加许多其他参数使用,输入ping命令,然后按下回车即可查看到详细说明。因此,选项B正确。

对于选项C,tracert(跟踪路由)是路由跟踪实用程序,用于确定IP数据包访问目标所采取的路径。tracert命令用IP生存时间(TTL)字段和ICMP错误消息来确定从一个主机到网络上其他主机的路由。因此,选项C正确。

对于选项D,top命令是Linux系统中常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况。因此,选项D错误。

6.

HTTPS采用______实现安全网站访问A.SSLB.IPsecC.PGPD.SET正确答案:A[考点]网络协议[解析]本题中,对于选项A,HTTPS(HyperTextTransferProtocoloverSecureSocketLayer)是以安全为目标的HTTP通道,是HTTP的安全版,通过在HTTP下加入SSL(SecureSocketLayer,安全套接层)实现。而SSL是为网络通信提供安全及数据完整性的一种安全协议。所以,选项A正确。

对于选项B,IPSec(InternetProtocolSecurity,互联网协议安全)是一种开放标准的框架结构,通过使用加密的安全服务以确保在Internet上进行保密而安全的通信。所以,选项B错误。

对于选项C,PGP(PrettyGoodPrivacy,完美隐私)是一个基于RSA(RSA是目前最有影响力的公钥加密算法,它能够抵抗目前为止已知的绝大多数密码攻击,已被ISO推荐为公钥数据加密标准,其中,RSA是创始人名字的组合)公钥加密体系的邮件加密系统。所以,选项C错误。

对于选项D,SET(SecureElectronicTransaction,安全电子交易)协议是VISA国际组织、万事达(MasterCard)国际组织创建,结合IBM、Microsoft、Netscope、GTE等公司制定的一个在互联网上保证交易安全性的规范,主要目的是解决信用卡电子付款的安全保障性问题。所以,选项D错误。

7.

应用程序PING发出的是______报文A.ICMP应答B.TCP请求C.TCP应答D.ICMP请求正确答案:A[考点]网络协议[解析]ping命令主要是为了检查网络是否通畅,它通过向计算机发送ICMP(InternetControlMessageProtocol,网际控制报文协议)应答报文并且监听回应报文的返回,以校验与远程计算机或本地计算机的连接。对于每个发送报文,ping最多等待的时间为1s,并且会打印发送和接收报文的数量,比较每个接收报文和发送报文,以校验其有效性。如果能够成功校验IP地址,但不能成功校验计算机名,则说明名称分析存在问题。默认情况下,发送四个回应报文,每个报文包含64字节的数据(周期性的大写字母序列)。通过以上分析,选项A正确。

8.

以下关于TCP关闭过程的描述中,正确的是______A.TIME_WAIT状态称为MSL(MaximumSegmentLifetime)等待状态B.对一个ESTABLISHED状态的TCP连接,在调用shutdown函数之前调用close接口,可以让主动调用的一方进入半关闭状态C.主动发送FIN消息的连接端,收到对方回应ack之前不能发只能收,在收到对方回复ack之后不能发也不能收,进入CLOSING状态D.在已经成功建立连接的TCP连接上,如果一端收到RST消息,可以让TCP的连接端绕过半关闭状态并允许丢失数据正确答案:D[考点]网络协议[解析]本题中,对于选项A,当客户端主动关闭连接时,会发送最后一个ack,然后进入TIME_WAIT状态,再停留2个MSL(MaximumSegmentLifetime,报文最长存活时间,指的是一个IP数据包能在互联网上生存的最长时间,超过这个时间IP数据包将在网络中消失)时间后进入CLOSED状态。正确的说法应该是TIME_WAIT状态是等待2个MSL时间的状态。所以,选项A错误。

对于选项B,对于sockfd,close会引起4次握手断开连接过程。在shutdown之前调用close,只有当一个sockfd引用了此TCP连接时,才会出现4次握手。如果多个进程或者fd引用了TCP连接,那么只close其中一个时,只会减少一次引用。半关闭状态只能由shutdown引起,当然4次握手的中间暂存状态除外,也就是半关闭不是由close引起的,而只能由shutdown引起。即使是暂态,close也不一定会引起。所以,选项B错误。

对于选项C,由于TCP连接是全双工的,因此,每个方向都必须单独进行关闭。这个原则是当一方完成它的数据发送任务后就能发送一个FIN来终止这个方向的连接。收到一个FIN只意味着这一方向上没有数据流动,一个TCP连接在收到一个FIN后仍能发送数据。主动发送FIN消息的连接端,收到对方回应ack之前不能发只能收。所以,选项C错误。

对于选项D,TCP允许在传输过程中突然中断连接,也就是TCP重置,通过设置RST为1来实现。通过shutdown进入半关闭状态,调用close会进入4次握手断开连接。TCP连接在ESTABLISHED状态时收到RST包后,直接清理队列并删除TCB,连接进入CLOSED状态。所以,选项D正确。

9.

HTTP应答中的500错误指的是______A.服务器内部错误B.文件未找到C.客户端网络不通D.没有访问权限正确答案:A[考点]网络协议[解析]下表所列的是HTTP应答中的错误说明(从500开始)。从中可知,选项A正确。HTTP应答错误说明错误编码错误名称描述500InternalServerError(内部服务器错误)服务器遇到了意料不到的情况,不能完成客户的请求501NotImplemented(未实现)服务器不支持实现请求所需要的功能。例如,客户发出了一个服务器不支持的PUT(从客户端向服务器传送的数据取代指定文档的内容)请求502BadGateway(错误网关)服务器作为网关或者代理时,为了完成请求访问下一个服务器,但该服务器返回了非法的应答503ServiceUnavailable(服务不可用)服务器由于维护或者负载过重未能应答。例如,Servlet可能在数据库连接池已满的情况下返回503。当服务器返回503时,可以提供一个Retry-After头504GatewayTimeout(网关超时)由作为代理或网关的服务器使用,表示不能及时地从远程服务器获得应答(HTTP/1.1新)505HTTPVersionNotSupported(HTTP版本不受支持)服务器不支持请求中所指明的HTTP版本(HTTP/1.1新)

10.

以下选项属于HTTP中的请求首部的是______A.Accept-EncodingB.Accpet-RangesC.ServerD.Age正确答案:A[考点]网络协议[解析]请求首部只存在于请求报文中,提供客户端的信息以及对服务器的要求。除了选项A之外,其余3个选项都属于响应首部,选项B中的Accpet-Ranges表示服务器接受的范围类型;选项C中的Server表示服务器软件的名称和版本;选项D中的Age表示响应存在时间。

11.

下列用于产生数字签名的是______A.接收方的私钥B.发送方的私钥C.发送方的公钥D.接收方的公钥正确答案:B[考点]网络安全[解析]要想找出正确答案,首先需要弄懂数字签名的定义,在ISO7498-2标准中,数字签名的定义如下:“附加在数据单元上的一些数据,或者对数据单元所做的密码变换,这种数据和变换允许数据单元的接收者用以确认数据单元来源和数据单元的完整性,并保护数据,防止被人(例如接收者)进行伪造”。它是不对称加密算法的典型应用,依靠公钥加密技术来实现。在公钥加密技术里,每一个使用者都有一对密钥:一把公钥和一把私钥,公钥可以自由发布,但私钥则秘密保存。

具体而言,数字签名的应用过程如下:数据源发送方使用自己的私钥对数据校验和或其他与数据内容有关的变量进行加密处理,完成对数据的合法“签名”,数据接收方则利用对方的公钥来解读收到的“数字签名”,并将解读结果用于对数据完整性的检验,以确认签名的合法性。数字签名技术是在网络系统虚拟环境中确认身份的重要技术,完全可以代替现实过程中的“亲笔签字”,在技术和法律上有保证。在公钥与私钥管理方面,数字签名应用与加密邮件PGP(PrettyGoodPrivacy)技术正好相反。在数字签名应用中,发送者的公钥可以很方便地得到,但他的私钥则需要严格保密。

为了更好地说明数字签名,引用一个较为通俗易懂的方法。

(1)A有两把钥匙,一把是公钥,另一把是私钥。

(2)A把公钥送给B、C、D,每人一把。

(3)D要给A写一封保密的信。他写完后用公钥加密,就可以达到保密的效果。

(4)A收到信后,用私钥解密,就看到了信件内容。注意,只要私钥不泄露,这封信就是安全的,即使落在别人手里,它也是无法被解密的。

(5)A给D回信,决定采用“数字签名”。他写完后先用Hash函数,生成信件的摘要(digest)。

(6)然后,A使用私钥,对这个摘要加密,生成“数字签名”(signature)。

(7)A将这个签名附在信件下面,一起发送给D。

(8)D收到信后,取下数字签名,用A的公钥解密,得到信件的摘要。由此证明,这封信确实是A发出的。

(9)D再对信件本身使用Hash函数,将得到的结果与上一步得到的摘要进行对比。如果两者一致,就证明这封信未被修改过。

(10)复杂的情况出现了。C想欺骗D,他偷偷使用了D的电脑,用自己的公钥换走了A的公钥。此时,D实际拥有的是C的公钥,但是还以为这是A的公钥。因此,C就可以冒充A,用自己的私钥做“数字签名”,写信给D,让D用假的公钥进行解密。

(11)后来,D感觉不对劲,发现自己无法确定公钥是否真的属于A。他想到了一个办法,要求去找“证书中心”(CertificateAuthority,CA)为公钥做认证。证书中心用自己的私钥,对A的公钥和一些相关信息一起加密,生成“数字证书”(DigitalCertificate)。

(12)A拿到数字证书以后,就可以放心了。以后再给D写信,只要在签名的同时,再附上数字证书就行了。

(13)D收信后,用A的公钥解开数字证书,就可以拿到真实的公钥了,然后就能证明“数字签名”是否真的是A签的。

根据上面的分析可知,选项B是正确的。

12.

下列不是实现防火墙的主流技术的是______A.包过滤技术B.应用级网关技术C.NAT技术D.代理服务器技术正确答案:C[考点]网络安全[解析]所谓防火墙指的是一个由软件和硬件设备组合而成、在内部网和外部网之间、专用网与公共网之间构造的保护屏障,是一种获取安全性方法的形象说法。通常,实现防火墙的主流技术有三种。

1.包过滤技术

包过滤是使用很早的一种防火墙技术,它在基于TCP/IP的数据报文进出通道上工作,对这两层数据进行监控,对每个数据包的头部、协议、地址、端口和类型等信息进行详细分析,并与提前设定好的防火墙过滤规则(FilteringRule)进行比对,只要发现一个包的某个或多个部分与过滤规则匹配并且条件为“阻止”的时候,就会丢弃这个包。

2.应用代理技术

由于包过滤技术对于数据的保护不是很完善,对于一些特殊的攻击方式(例如SYN攻击)不能起到很好的作用,因此,出现了“应用代理”(ApplicationProxy)技术的防火墙。代理设备包含两个部分:服务端和客户端。主要工作方式为:当服务端接收来自用户的请求时,通过代理设备的客户端把这个客户端的请求转发给服务器,把从服务器接收到的响应转发给用户。

3.状态检测技术

状态检测技术通过检测网络的状态来做出安全决策,工作方式为在不影响网络正常工作的前提下采用抽取相关数据的方法对网络通信的各个层次进行监测,并根据预定义的过滤规则做出安全决策。

NAT(NetworkAddressTranslation,网络地址转换)是一种将私有(保留)地址转化为合法IP地址的转换技术,完美地解决了IPv4地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。

包过滤技术是最基本的防火墙技术,所以,选项A正确。应用级网关和代理服务器技术都是应用代理技术的防火墙,所以,选项B与选项D正确。而NAT技术是网络地址转换技术,用于公网和内网IP之间的相互转换,它不是防火墙技术,所以,选项C错误。

13.

某主机的IP地址为2/20,其子网掩码是______A.B.C.D.正确答案:B[解析]在计算机网络与通信中,子网掩码用来指明一个IP地址的哪些位标识的是主机所在的子网,它的作用就是将某个IP地址划分成网络地址和主机地址两部分。

子网掩码是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。本题中,/20表示IP地址的前20位都是网络号,后12位是主机号。由此可以确定,子网掩码为11111111.11111111.11110000.00000000,即。所以,选项B正确。

14.

随着IP网络的发展,为了节省可分配的注册IP地址,有一些地址被拿出来用于私有IP地址,以下不属于私有IP地址范围的是______A.4B.8C.0D.00正确答案:C[解析]有3个私有IP地址范围:~55,~55和~55。末尾全为0的表示一个网段,不用于单独的主机IP使用;x.x.0.1一般是路由器的IP地址(大多路由器产品的IP地址为或);末尾全为1的(255)是广播地址,也不用于单独主机IP。所以,选项C正确。

15.

某网络的IP地址空间为/24,采用定长子网划分,子网掩码为48,则该网络的最大子网个数、每个子网内最大可分配地址个数各为______A.8,32B.32,8C.32,6D.8,30正确答案:C[解析]本题中,网络的IP地址空间为/24,这是一个C类IP地址块,其默认子网掩码为。但按照题目要求,如果采用定长子网划分,子网掩码48的二进制表示为11111111.11111111.11111111.11111000,它是在的基础上,向原主机号借用了5个比特位作为新的子网号,因此,本网络的最大子网个数为2^5个,即32个,此时可以排除选项A与选项D。

每个子网内的最大可分配地址个数=2^(32-29)-2=2^3-2=8-2=6个,之所以需要减去2,是因为主机号为全0的地址被保留用于标识子网本身、主机号为全1的地址被保留用作该子网的广播地址,它们不在可分配地址中。所以,选项C正确。

16.

对于IP地址,它属于______类地址A.AB.BC.CD.D正确答案:C[解析]IP地址根据网络ID的不同,分为5种类型:A类地址、B类地址、C类地址、D类地址和E类地址。

一个A类IP地址由1字节的网络地址和3字节的主机地址组成,网络地址的最高位必须是“0”,地址范围从到。可用的A类网络有126个,每个网络能容纳1亿多个主机。一个B类IP地址由2个字节的网络地址和2个字节的主机地址组成,网络地址的最高位必须是“10”,地址范围从到55。可用的B类网络有16382个,每个网络能容纳6万多个主机。一个C类IP地址由3字节的网络地址和1字节的主机地址组成,网络地址的最高位必须是“110”,范围从到55。C类网络有209万余个,每个网络能容纳254个主机。D类IP地址的第一个字节以“1110”开始,它是一个专门保留的地址。它并不指向特定的网络,目前这一类地址被用在多点广播(Multicast)中。多点广播地址用来一次寻址一组计算机,它标识共享同一协议的一组计算机。E类IP地址的第一个字节以“11110”开始,为将来的使用保留。

通过上面分析可知,属于~55范围内,属于C类地址范畴。所以,选项C正确。

二、多项选择题1.

以下可以工作于数据链路层的是______A.tcpdumpB.集线器C.交换机D.路由器正确答案:AC[考点]网络设备[解析]对于选项A,tcpdump是根据使用者的定义对网络上的数据包进行截获的包分析工具,工作在数据链路层。tcpdump是一种免费的网络分析工具,尤其是其提供了源代码,公开了接口,因此,它具备很强的可扩展性,对于网络维护和入侵防范都非常有用。所以,选项A正确。

对于选项B,集线器,英文名称为“Hub”,属于数据通信系统中的基础设备,工作在物理层。所以,选项B错误。

对于选项C,交换机是一种基于MAC地址识别,能完成封装转发数据包功能的网络设备,工作在数据链路层。交换(switching)是按照通信两端传输信息的需要,用人工或设备自动完成的方法,把要传输的信息送到符合要求的相应路由上的技术统称。所以,选项C正确。

对于选项D,路由器用于连接多个逻辑上分开的网络,工作在网络层。所以,选项D错误。

2.

典型的路由选择方式有两种:静态路由和动态路由。以下关于路由选择的描述中,正确的是______A.当动态路由与静态路由发生冲突时,以静态路由为准B.当动态路由与静态路由发生冲突时,以动态路由为准C.静态路由适用于网络规模大、网络拓扑复杂的网络D.动态路由适用于网络规模大、网络拓扑复杂的网络正确答案:AD[考点]网络设备[解析]路由(routing)是指分组从源到目的地时,决定端到端路径的网络范围的进程。具体而言,就是路由器从一个接口上收到数据包,根据数据包的目的地址进行定向并转发到另一个接口的过程。

根据路由器学习路由信息、生成并维护路由表的方法,可以将路由划分为三种,即直连路由、静态路由和动态路由。以下将分别对这几种路由进行介绍。

直连路由是由链路层协议发现的,一般指去往路由器的接口地址所在网段的路径,直连路由无须手工配置,只要接口配置了网络协议地址,同时管理状态、物理状态和链路协议均运行时,路由器能够自动感知该链路存在,接口上配置的IP网段地址会自动出现在路由表中且与接口关联,并动态地随接口状态变化在路由表中自动出现或消失。直连路由只能用于直接相连的路由器端口,非直连的路由器端口是没有直连路由的。

静态路由是在路由器中设置的固定路由表,由管理员人工指定。除非管理员干预,否则静态路由不会发生变化,因而静态路由不能对网络的改变做出及时反应。静态路由的优点是简单、高效、可靠、网络安全、保密性高、转发效率高,缺点是适应性差。所以,它一般用于网络规模不大、拓扑结构固定的网络中,例如小规模局域网。

动态路由是网络中的路由器之间相互通信,传递路由信息,利用收到的路由信息更新路由表的过程。由于路由器每隔一段时间会自动生成路由表,所以,它能实时地适应网络结构的变化。如果路由更新信息表明发生了网络变化,那么路由选择软件就会重新计算路由,并发出新的路由更新信息。这些信息通过各个网络,引起各路由器重新启动其路由算法,并更新各自的路由表以动态地反映网络拓扑变化。动态路由的优点是适应性强,所以,它适用于网络规模大、网络拓扑复杂的网络。

在所有的路由中,静态路由优先级最高。当动态路由与静态路由发生冲突时,以静态路由为准。所以,选项A与选项D正确。

3.

在使用浏览器打开一个网页的过程中,浏览器会使用的网络协议包括______A.DNSB.TCPC.HTTPD.telnet正确答案:ABC[考点]网络协议[解析]一般在打开网页的时候,需要在浏览器中输入网址,因此,需要通过网址找到访问资源的IP地址,从而可以把请求发送到对应的机器上,在这个过程中需要DNS(DomainNameSystem,域名系统,在因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便地访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫作域名解析)协议;HTTP是用于从Web服务器传输超文本到本地浏览器的传输协议。浏览器与服务器通过HTTP进行交互;HTTP是应用层协议,在传输层是通过TCP来传输HTTP请求的;telnet是Internet远程登录服务的标准协议和主要方式,它为用户提供了在本地计算机上完成远程主机工作的能力,一般使用方法为通过终端登录到远程主机,因此,在浏览器打开网页的过程中用不到。所以,本题的答案为A、B和C。

4.

下面关于网络通信的描述中,正确的是______A.TCP是一种不可靠的网络通信协议B.TCP是一种可靠的网络通信协议C.UDP是一种可靠的网络通信协议D.UDP是一种不可靠的网络通信协议正确答案:BD[考点]网络协议[解析]传输层协议主要有TCP协议与UDP协议。UDP(UserDatagramProtocol,用户数据报协议)提供无连接的通信,不能保证数据包被发送到目标地址,典型的即时传输少量数据的应用程序通常使用UDP。而TCP(TransmissionControlProtocol,传输控制协议)是一种面向连接(连接导向)的、可靠的、基于字节流的通信协议,它为传输大量数据或需要接收数据许可的应用程序提供连接定向和可靠的通信。所以,选项B与选项D正确。

TCP连接就像打电话,用户拨打特定的电话号码,对方在线并接起电话,然后双方进行通话,通话完毕之后再挂断,整个过程是一个相互联系、缺一不可的过程。而UDP连接就像发短信,用户短信发送给对方,对方有没有收到信息,发送者根本不知道,而且对方是否回答也不知道,对方对信息发送者发送消息也是一样。

5.

下面关于TCP和UDP的描述中,正确的是______A.TCP提供面向连接的字节流服务B.TCP和UDP都提供可靠的服务C.TCP也提供流控制D.TCP和UDP都提供重传机制正确答案:AC[考点]网络协议[解析]TCP与UDP都是常用的通信方式,在特定的条件下发挥不同的作用。具体而言,TCP和UDP的区别主要表现为以下几个方面:

(1)TCP是面向连接的传输控制协议,而UDP提供的是无连接的数据报服务。

(2)TCP具有高可靠性,能确保传输数据的正确性,不会出现丢失或乱序;UDP在传输数据前不建立连接,不对数据报进行检查与修改,无须等待对方的应答,所以会出现分组丢失、重复、乱序,应用程序需要负责传输可靠性方面的所有工作。

(3)TCP对系统资源要求较多,UDP对系统资源要求较少。

(4)UDP具有较好的实时性,工作效率较TCP要高。

(5)UDP段结构比TCP的段结构简单,因此网络开销也小。

既然UDP比TCP的效率更高,为什么TCP还能够保留呢?其实,TCP和UDP各有所长、各有所短,适用于具有不同要求的通信环境。在有些环境下,UDP确实高效,但在某些环境下,需要可靠的连接,此时采用TCP更好。在提及TCP的时候,也一般会提及IP。IP是一种网络层协议,它规定每个互联网上的计算机都有一个唯一的IP地址,这样数据包就可以通过路由器的转发到达指定的计算机,但IP协议并不保证数据传输的可靠性。

根据以上分析可知,选项A与选项C正确。

6.

UDP报头中没有______A.目的地址B.窗口大小C.序列号D.检验和正确答案:ABC[考点]网络协议[解析]UDP报头只有四个域:源端口号、目的端口号、数据报长度和检验和。UDP(UserDatagramProtocol,用户数据报协议)是OSI(OpenSystemInterconnection,开放式系统互联)参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。

7.

下列关于HTTP的描述中,不正确的是______A.有状态,前后请求有关联关系B.FTP也可以使用HTTPC.HTTP响应包括数字状态码,300代表此次请求有正确返回D.HTTP和TCP、UDP在网络分层里是同一层次的协议正确答案:ABD[考点]网络协议[解析]HTTP是HyperTextTransferProtocol(超文本传输协议)的缩写,它是一个属于应用层、用于从Web服务器传输超文本到本地浏览器的传送协议,由请求和响应构成。主要特点如下:

(1)支持客户/服务器模式。

(2)简单快速:客户向服务器请求服务时,只需传送请求方法和路径。常用的请求方法有GET、HEAD和POST。每种方法规定的客户与服务器联系的类型不同。由于HTTP内容简单,使得HTTP服务器的程序规模小,因此,其通信速度很快。

(3)灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。

(4)无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。

(5)无状态:HTTP是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。而另一方面,在服务器不需要先前信息时它的应答就较快。

本题中,对于选项A,HTTP是无状态的协议,因此,需要cookie、session等对客户端浏览器作标记。所以,选项A不正确。

对于选项B,FTP和HTTP都是应用层协议,不存在谁使用谁的问题。所以,选项B不正确。

对于选项C,HTTP的3xx状态码表示请求资源被转移。所以,选项C正确。

对于选项D,HTTP工作在应用层,TCP与UDP工作在传输层。所以,选项D不正确。

8.

在HTTP中,可用的请求方法包括______A.GETB.POSTC.HEADD.DELETE正确答案:ABCD[考点]网络协议[解析]HTTP通过请求方法说明请求目的,期望服务器执行某个操作。GET方法用于获取数据,POST方法用于提交数据,HEAD方法用于获取除了内容以外的资源信息,DELETE方法用于删除文件。

9.

URL的组成部分包括______A.主机(host)B.端口(port)C.路径(path)D.片段(frag)正确答案:ABCD[考点]网络协议[解析]URL(UniformResourceLocator)即统一资源定位符,俗称网址,是网络资源的标准化名称,应用程序通过URL才能定位到资源所处的位置,URL相当于一个人的住址。它由8部分组成,包括协议方案(scheme)、登录信息(user和password)、主机(host)、端口(port)、路径(path)、查询字符串(query)以及片段(frag)。

10.

下面是对称加密算法的有______A.DESB.AESC.DSAD.RSA正确答案:AB[考点]网络安全[解析]加密算法可以分为两种:对称式加密算法和非对称式加密算法。对称式加密就是加密和解密使用同一个密钥;非对称式加密就是加密和解密所使用的不是同一个密钥。

常见的对称式加密算法有DES(效率高,适用于加密大量数据)、3DES(采用3个不同的密钥,3次加密,更加安全)、RC2和RC4(采用变长的密钥,比DES效率更高)、AES(速度快,安全级别高)等,常见的非对称式加密算法有RSA、DSA(数字签名算法)、ECC等。所以,选项A与选项B正确。

11.

操作系统的功能是进程处理机管理、______管理、______管理、文件管理和作业管理等A.设备B.存储器C.硬件D.软件正确答案:AB[考点]操作系统基本概念

12.

下列关于Linux操作系统的描述中,正确的是______A.线性访问内存非法时,当前线程会进入信号处理函数B.用mv命令移动文件时,文件的修改时间会发生变化C.ulimit-c设置的是函数调用栈的大小D.malloc函数是应用程序向操作系统申请内存的接口正确答案:AD[考点]操作系统基本概念[解析]对于选项A,信号机制是进程之间相互传递消息的一种方法,信号全称为软中断信号、软中断,其实质和使用类似于中断。当线性访问内存非法时,会产生非法内存访问的信号,当前线程会进入信号处理函数。所以,选项A正确。

对于选项B,可以使用mv命令在相同的文件系统或文件系统之间移动文件。不管是在一个文件系统中工作,还是跨文件系统工作,mv命令都会把文件复制到目标处并删除原文件。mv命令在新文件中保存最新数据修改的时间、最新访问时间、用户标识、组标识和原始文件的文件方式。对于符号链路,mv命令仅保存该链路本身的所有者和组。因此,文件的修改时间是不会变化的。所以,选项B不正确。

对于选项C,ulimit是一种Linux操作系统的内建功能,它具有一套参数集,用于为由它生成的shell进程及其子进程的资源使用设置限制,是一种简单并且有效实现资源限制的方式。ulimit用于限制shell启动进程所占用的资源,支持以下各种类型的限制:所创建的内核文件的大小、进程数据块的大小、shell进程创建文件的大小、内存锁住的大小、常驻内存集的大小、打开文件描述符的数量、分配堆栈的最大大小、CPU时间、单个用户的最大线程数及shell进程所能使用的最大虚拟内存。同时,它支持硬资源和软资源的限制。ulimit命令的格式为ulimit[options][limit],.-c设置的是core文件的最大值,而不是函数调用栈的大小。所以,选项C不正确。

对于选项D,malloc函数的原型为void*malloc(intsize),它的功能是向系统申请分配指定字节数的内存空间,返回类型是void*类型,void*表示未确定类型的指针。所以,选项D正确。

所以,本题的答案为A、D。

13.

Linux操作系统中,以下关于硬链接的描述中,正确的是______A.跨文件系统B.不可以跨文件系统C.为链接文件创建新的i结点D.链接文件的i结点与被链接文件的i结点相同正确答案:BD[考点]操作系统基本概念[解析]Linux链接分两种,一种被称为硬链接(HardLink),另一种被称为符号链接(SymbolicLink)。

硬链接实际上是为文件新建一个别名,链接文件和原文件实际上是同一个文件,也就是说,硬链接是一个文件的一个或多个文件名。在Linux操作系统的文件系统中,每个文件都会有一个编号,被称为索引结点号(InodeIndex)。在Linux操作系统中,硬链接的实现方式为使多个文件名指向同一索引结点,从而使得一个文件可以拥有多个有效的路径名。硬链接就是让多个不在或者同在一个目录下的文件名,同时能够修改同一个文件,其中一个修改后,所有与其有硬链接的文件都一起修改了。需要注意的是,硬链接是不能跨文件系统的。

符号链接也叫软链接,非常类似于Windows的快捷方式,是一个特殊的文件。在符号链接中,文件实际上是一个文本文件,其中包含有另一文件的位置信息。需要注意的是,符号链接是可以跨文件系统的。

所以,本题的答案为B、D。

14.

同步机制应该遵循的基本准则有______A.空闲让进B.忙则等待C.有限等待D.让权等待正确答案:ABCD[考点]操作系统基本概念[解析]在多线程的环境中,经常会碰到数据的共享问题,即当多个线程需要访问同一个资源时,它们需要以某种顺序来确保该资源在某一时刻只能被一个线程使用,否则,程序的运行结果将会是不可预料的,在这种情况下,就必须对数据进行同步。例如多个线程同时对同一数据进行写操作。即当线程A需要使用某个资源时,如果这个资源正在被线程B使用,同步机制就会使线程A-直等待下去(在很多情况下,都会设置等待的超时时间,而不会让其无限等待),直到线程B结束对该资源的使用后,线程A才能使用这个资源。由此可见,同步机制能够保证资源的安全。

具体而言,同步机制应该遵循以下基本准则:

(1)空闲让进:空闲说明临界资源没有被其他线程访问,因此,可以允许进入。

(2)忙则等待:忙则说明临界资源正在被访问,因此,必须等待。

(3)有限等待:在等待临界资源的时候,必须保证在有限的时间内能访问到临界资源,否则,将会陷入死等的状态。

(4)让权等待:当线程或进程不能进入临界区的时候,应当释放处理机,防止进程忙等待。即进程状态由运行状态转换为阻塞状态,进程进入阻塞队列中等待。

所以,本题的答案为A、B、C、D。

15.

下面函数调用必须进入内核才能完成的是______A.fopenB.exitC.memcpyD.strlen正确答案:AB[考点]操作系统基本概念[解析]对于选项A,fopen是打开文件的函数。文件也可以看成是一个设备,打开一个设备将导致给设备所属的驱动程序发送一个IRP(I/ORequestPacket,输入/输出请求包),而与真实硬件相关的驱动程序都运行于内核。所以,选项A正确。

对于选项B,exit函数是结束进程的函数。结束进程需要访问PCB(ProcessControlBlock,进程控制块)和TCB(ThreadControlBlock,线程控制块)等一些数据结构,而这些数据都存在于内核中。所以,选项B正确。

对于选项C,memcpy是C/C++语言中的内存复制函数,功能是从源(src)所指内存地址的起始位置开始复制n个字节到目标(dest)所指内存地址的起始位置中。它不必进入内核就可以完成。所以,选项C错误。

对于选项D,strlen函数的功能是求字符串的实际长度,即从内存的某个位置(可以是字符串开头、中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到遇到第一个字符串结束符“\0”为止,然后返回计数器值(长度不包含“\0”)。它不必进入内核就可以完成。所以,选项D错误。

所以,本题的答案为A、B。

16.

下列中断属于强迫性中断的是______A.断电B.设备出错C.时间片到时D.执行pnnt语句正确答案:ABD[考点]操作系统基本概念[解析]中断源一般可分为两类:强迫性中断和自愿性中断。强迫性中断由随机事件引起而非程序员事先安排,包括输入/输出中断、硬件故障中断、时钟中断、控制台中断和程序性中断。设备出错、执行print语句属于其中的输入/输出中断;断电属于硬件故障中断。时间片到时属于自愿性中断。

所以,选项A、选项B、选项D正确。

17.

选择排队作业中等待时间最长的作业优先调度,该调度算法可能不是______A.先来先服务调度算法B.高响应比优先调度算法C.优先级调度算法D.最短作业优先调度算法正确答案:AD[考点]进程与线程

18.

在UNIX操作系统中,可以用于进程间通信的是______A.socketB.共享内存C.消息队列D.信号量正确答案:ABCD[考点]进程与线程[解析]进程间的通信方式主要有如下几种:管道、信号、消息队列、共享内存、内存映射、信号量和套接字(socket)。所以,本题的答案为A、B、C、D。

19.

进程内的线程可以共享以下哪些资源______A.stackB.datasectionC.registersetD.filefd正确答案:BD[考点]进程与线程[解析]线程是指程序在执行过程中,能够执行程序代码的一个执行单元。

进程是指一段正在执行的程序。而线程有时候也被称为轻量级进程,是程序执行的最小单元。一个进程可以拥有多个线程,各个线程之间共享程序的内存空间(代码段、数据段和堆空间)及一些进程级的资源(例如打开的文件),但是各个线程拥有自己的栈空间。进程与线程的关系如下图所示。

进程与线程的关系

具体而言,线程共享的内容包括代码段、数据段、堆空间、进程打开的文件描述符、进程的当前目录以及进程的用户ID和组ID。

线程独占的资源包括栈、线程ID、寄存器的值、错误返回码以及线程的信号屏蔽码。具体内容如下。

1.线程ID

每个线程都有自己的线程ID,这个ID在本进程中是唯一的,进程用此来标识线程。

2.线程的栈

栈是保证线程独立运行所必需的。线程函数可以调用函数,而被调用函数中又是可以层层嵌套的,所以,线程必须拥有自己的函数栈,使得函数调用可以正常执行,不受其他线程的影响。

3.错误返回码

不同的线程应该拥有自己的错误返回码变量。

4.线程的信号屏蔽码

由于每个线程所感兴趣的信号不同,所以,线程的信号屏蔽码应该由线程自己管理,但所有的线程都共享同样的信号处理器。

5.线程的优先级

由于线程需要像进程那样能够被调度,那么就必须要有可供调度使用的参数,这个参数就是线程。

所以,选项B与选项D正确,选项A与选项C错误。

20.

两个线程运行在双核机器上,每个线程主线程如下,线程1:“x=1;r1=y;”,线程2:“y=1;r2=x;”,x和y是全局变量,初始都为0。r1和r2的可能值是______A.r1=1,r2=1B.r1=1,r2=0C.r1=0,r2=0D.r1=0,r2=1正确答案:ABD[考点]进程与线程[解析]本题中,两个线程运行在双核机器上,没有设置临界区,所以,无法保证执行的正确性,而线程1与线程2在执行的过程中,先后顺序是不可控的,可能存在以下三种情况:

(1)首先执行x=1,然后执行y=1,接着执行r1=y,即r1=1,最后执行r2=x,即r2=1。所以,r1=1,r2=1。因此,选项A正确。

(2)首先执行y=1,然后执行r2=x,此时x的值为初始值0,所以,r2=0,接着执行x=1,最后执行r1=y,而y的值为1,所以,r1=1。因此,选项B正确。

(3)首先执行x=1,然后执行r1=y,此时y的值为初始值0,所以,r1=0,接着执行y=1,最后执行r2=x,而x的值为1,所以,r2=1。因此,选项D正确。

所以,本题的答案为A、B、D。

21.

以下关于减少换页的方法描述中,错误的有______A.进程倾向于占用CPUB.访问局部性(localityof

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论