每日一练20210514

本文探讨了TCP连接的三次握手过程,详细解释了主机甲和主机乙建立连接的正确TCP段交互。同时,涉及多线程环境下的锁操作,指出哪些操作需要同步。接着,讨论了虚拟地址空间的映射机制、进程的最大寻址空间以及X86架构下的内存管理。此外,还讲解了链表插入节点的正确操作,以及图的广度优先遍历与二叉树按层遍历的相似性。最后,介绍了系统抖动的概念及其原因,并分析了二叉树的性质。
摘要由CSDN通过智能技术生成

1、主机甲向主机乙发送一个(SYN=1,seq=11220)的TCP段,期望与主机乙建立TCP连接,若主机乙接受该连接请求,则主机乙向主机甲发送的正确的TCP段可能是()。

2021-05-15 00:47:34

  • A、 (SYN=0,ACK=0,seq=11221,ack=11221)
  • B、 (SYN=1,ACK=1,seq=11220,ack=11220)
  • C、 (SYN=1,ACK=1,seq=11221,ack=11221)
  • D、 (SYN=0,ACK=0,seq=11220,ack=11220)

 回答正确 正确答案: C

解析:

 

 

2、下列操作中,不需要执行加锁的操作是()

2021-05-15 00:48:11

  • A、 x++;
  • B、 x=y;
  • C、 ++x;
  • D、 x=1;

 回答正确 正确答案: D

解析:

 

B:在X86上它包含两个操作:读取y至寄存器,再把该值写入x。读y的值这个操作本身是原子的,把值写入x也是原子的,但是两者合起来不是原子操作,因为它不是不可再分的操作,所以需要进行同步

A、C:x++和++x这样的操作在多线程环境下是需要同步的。因为X86会按三条指令的形式来处理这种语句:从内存中读x的值到寄存器中,对寄存器加1,再把新值写回x 所处的内存地址

D:x=1是原子操作,不可再分

 

3、关于虚拟地址空间理解正确的是()

2021-05-15 00:48:23

  • A、 虚拟空间和物理空间的映射是有一定的规律的
  • B、 在同一个X86兼容的主机上,进程最大寻址空间都是一样的
  • C、 通过多级页表来实现虚拟空间到物理空间的映射
  • D、 进程最大可寻址的空间时:从0开始到2的CPU地址位数幂的线性空间

 回答正确 正确答案: C

解析:

 

A:虚拟空间和物理空间的映射是通过页表进行的,操作系统根据页表映射和置换算法进行操作,无一定的规律可循

B: 在同一个X86兼容的主机上,如果CPU是64位的,最大虚拟空间在32位系统下是2^32字节,在64位下是2^64字节。

D: 进程最大可寻址的空间时:和操作系统的位数也有关系。

 

4、单链表的每个节点中包括一个指针next,它指向该节点的后继节点。现要将指针q指向的新节点插入到指针p指向的单链表节点之后,下面的操作序列中哪一个是正确的?

2021-05-15 00:49:07

  • A、 q=p->next;p->next=q->next;
  • B、 p->next=q->next;q=p->next;
  • C、 q->next=p->next;p->next=q;
  • D、 p->next=q;q->next=q->next;

 回答正确 正确答案: C

解析:

 

 

5、采用邻接表存储的图的广度优先遍历算法类似于二叉树的 _______ 。

2021-05-15 00:49:20

  • A、 先序遍历
  • B、 中序遍历
  • C、 后序遍历
  • D、 按层遍历

 回答正确 正确答案: D

解析:

 

 

6、系统抖动是指 () 。

2021-05-15 00:49:31

  • A、 由于内存分配不当,造成内存不够的现象
  • B、 OS系统不稳定的现象
  • C、 刚被调出的页又立刻被调入所形成的频繁调入调出的现象
  • D、 机器屏幕闪烁的现象

 回答正确 正确答案: C

解析:

 

在请求分页存储管理中,从主存(DRAM)中刚刚换出(Swap Out)某一页面后(换出到Disk),根据请求马上又换入(Swap In)该页,这种反复换出换入的现象,称为系统颠簸,也叫系统抖动。产生该现象的主要原因是置换算法选择不当。

 

7、设某棵二叉树中只有度数为0和度数为2的结点且度数为0的结点数为n,则这棵二叉中共有()个结点。

2021-05-15 00:49:55

  • A、 2n
  • B、 n+l
  • C、 2n-1
  • D、 2n+l

 回答正确 正确答案: C

解析:

 

二叉树中一个性质:度为0的结点(叶子节点)个数n0等于度为2的结点个数n2加1,即N2=N0-1。

总结点数N=N0+N1+N2=N0+0+(No-1)=2N0-1。N1表示树中度为1的结点。

 

8、对于代码 int *p = &a; 描述正确的是 ( )

2021-05-15 00:50:12

  • A、 *p表示指针变量
  • B、 执行*p = 123; a的值就会变成123
  • C、 执行p = 123; a的值会变成123
  • D、 p + 1表示地址向后移动一个字节

 回答正确 正确答案: B

解析:

 

A选项,p 表示指针变量

C选项, *p = 123; a的值会变成123

D选项,p 是 int 类型指针,p + 1 地址会向后移动4个字节

 

9、有关指针与地址,描述正确的是()

2021-05-15 00:50:34

  • A、 一个指针变量占4字节大小
  • B、 一个指针变量占8字节大小
  • C、 在同一个操作系统下,指针变量可以存储得下任何类型的地址
  • D、 指针变量支持乘法操作

 回答正确 正确答案: C

解析:

 

A选项,指针变量大小由环境决定

B选项,指针变量大小由环境决定

C选项,同环境的指针变量大小相同

D选项,不支持乘除操作

 

10、【简答题】(10-10)

如何提升TCP三次握手的性能

 

解答视频:https://www.bilibili.com/video/BV1D64y1C7sk 

=====================================================================

数据序列 F = {2,1,4,9,8,10,6,20} 只能是下列排序算法中的()两趟排序后的结果

2021-05-15 00:46:59

  • A、 快速排序
  • B、 冒泡排序
  • C、 选择排序
  • D、 插入排序

 回答正确 正确答案: A

解析:

 

若为插入排序,则前三个元素应该是有序的,显然不对。而冒泡排序和选择排序经过两趟排序后应该有两个元素处于最终位置(最左/右端),无论是按从小到大还是从大到小排序,数据序列中都没有两个满足这样的条件的元素,因此只可能选A。

 

20210514,一天又快过去了,继续加油鸭~
 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值