贡献者: xzllxls; addis
第 1~40 小题,每小题 2 分,共 80 分。下列每题给出的四个选项中,只有一个选项最符合试题要求。
1。求整数 n(n≥0)阶乘的算法如下:
2。已知操作符包括"+"、"-"、"*"、"/"、"("和")"。将中缀表达式
A。5
3。若一棵二叉树的前序遍历序列为 a, e, b, d, c,后序遍历序列为 b, c, d, e, a,则根结点的孩子结点。
A. 只有 e
4。若平衡二叉树的高度为 6,且所有非叶结点的平衡因子均为 1,则该平衡二叉树的结点总数为。
A. 10
5。对有 n 个结点、e 条边且使用邻接表存储的有向图进行广度优先遍历,其算法时间复杂度是。
A。
6。若用邻接矩阵存储有向图,矩阵中主对角线以下的元素均为零,则关于该图拓扑序列的结论是。
A。存在,且唯一
C。存在,可能不唯一
7。对如下有向带权图,若采用迪杰斯特拉(Dijkstra)算法求从源点 a 到其他各顶点的最短路径,则得到的第一条最短路径的目标顶点是 b,第二条最短路径的目标顶点是 c,后续得到的其余各最短路径的目标顶点依次是。
A。d,e,f
8。下列关于最小生成树的叙述中,正确的是。
Ⅰ。最小生成树的代价唯一
Ⅱ。所有权值最小的边一定会出现在所有的最小生成树中
Ⅲ。使用普里姆(Prim)算法从不同顶点开始得到的最小生成树一定相同
Ⅳ。使用普里姆算法和克鲁斯卡尔(Kruskal)算法得到的最小生成树总不相同
A。仅Ⅰ
9。已知一棵 3 阶 B-树,如下图所示。删除关键字 78 得到一棵新 B-树,其最右叶结点中的关键字是。
10。在内部排序过程中,对尚未确定最终位置的所有元素进行一遍处理称为一趟排序。下列排序方法中,每一趟排序结束都至少能够确定一个元素最终位置的方法是
Ⅰ。简单选择排序
A。仅Ⅰ、Ⅲ、Ⅳ
11。对一待排序序列分别进行折半插入排序和直接插入排序,两者之间可能的不同之处是
A。排序的总趟数
12。假定基准程序 A 在某计算机上的运行时间为 100 秒,其中 90 秒为 CPU 时间,其余为 I/O 时间。若 CPU 速度提高 50%,I/O 速度不变,则运行基准程序 A 所耗费的时间是。
A。55 秒
13。假定编译器规定 int 和 short 型长度分别为 32 位和 16 位,执行下列 C 语言语句:
14。float 类型(即 IEEE754 单精度浮点数格式)能表示的最大正整数是。
A。
15。某计算机存储器按字节编址,采用小端方式存放数据。假定编译器规定 int 型和 short 型长度分别为 32 位和 16 位,并且数据按边界对齐存储。某 C 语言程序段如下:
0x00
、0xC00D
0x00
、0xC00E
0x11
、0xC00D
0x11
、0xC00E
16。下列关于闪存(Flash Memory)的叙述中,错误的是
A。信息可读可写,并且读、写速度一样快
B。存储元由 MOS 管组成,是一种半导体存储器
C。掉电后信息不丢失,是一种非易失性存储器
D。采用随机访问方式,可替代计算机外部存储器
17。假设某计算机按字编址,Cache 有 4 个行,Cache 和主存之间交换的块大小为 1 个字。若 Cache 的内容初始为空,采用 2 路组相联映射方式和 LRU 替换策略。访问的主存地址依次为 0,4,8,2,0,6,8,6,4,8 时,命中 Cache 的次数是。
A. 1
18。某计算机的控制器采用微程序控制方式,微指令中的操作控制字段采用字段直接编码法,共有 33 个微命令,构成 5 个互斥类,分别包含 7、3、12、5 和 6 个微命令,则操作控制字段至少有。
A. 5 位
19。某同步总线的时钟频率为 100MHz,宽度为 32 位,地址/数据线复用,每传输一个地址或数据占用一个时钟周期。若该总线支持突发(猝发)传输方式,则一次 “主存写” 总线事务传输 128 位数据所需要的时间至少是。
A. 20ns
20。下列关于 USB 总线特性的描述中,错误的是
A. 可实现外设的即插即用和热拔插
B. 可通过级联方式连接多台外设
C. 是一种通信总线,连接不同外设
D. 同时可传输 2 位数据,数据传输率高
21。下列选项中,在 I/O 总线的数据线上传输的信息包括:
Ⅰ。I/O 接口中的命令字
A。仅Ⅰ、Ⅱ
22。响应外部中断的过程中,中断隐指令完成的操作,除保护断点外,还包括:
Ⅰ。关中断
A。仅Ⅰ、Ⅱ
23。下列选项中,不可能在用户态发生的事件是:
A。系统调用
24。中断处理和子程序调用都需要压栈以保护现场,中断处理一定会保存而子程序调用不需要保存其内容的是:
A。程序计数器
C。通用数据寄存器
25。下列关于虚拟存储器的叙述中,正确的是
A。虚拟存储只能基于连续分配技术
B。虚拟存储只能基于非连续分配技术
C。虚拟存储容量只受外存容量的限制
D。虚拟存储容量只受内存容量的限制
26。操作系统的 I/O 子系统通常由四个层次组成,每一层明确定义了与邻近层次的接口。其合理的层次组织排列顺序是:
A。用户级 I/O 软件、设备无关软件、设备驱动程序、中断处理程序
B。用户级 I/O 软件、设备无关软件、中断处理程序、设备驱动程序
C。用户级 I/O 软件、设备驱动程序、设备无关软件、中断处理程序
D。用户级 I/O 软件、中断处理程序、设备无关软件、设备驱动程序
27。假设 5 个进程 P0、P1、P2、P3、P4 共享三类资源 R1、R2、R3,这些资源总数分别为 18、6、22。T0 时刻的资源分配情况如下表所示,此时存在的一个安全序列是
进程 | * | * | * | * | * | |
R1 | R2 | R3 | R1 | R2 | R3 | |
P0 | 3 | 2 | 3 | 5 | 5 | 10 |
P1 | 4 | 0 | 3 | 5 | 3 | 6 |
P2 | 4 | 0 | 5 | 4 | 0 | 11 |
P3 | 2 | 0 | 4 | 4 | 2 | 5 |
P4 | 3 | 1 | 4 | 4 | 2 | 4 |
A. P0, P2, P4, P1, P3
C. P2, P1, P0, P3, P4
28。若一个用户进程通过 read 系统调用读取一个磁盘文件中的数据,则下列关于此过程的叙述中,正确的是:
Ⅰ。若该文件的数据不在内存,则该进程进入睡眠等待状态
Ⅱ。请求 read 系统调用会导致 CPU 从用户态切换到核心态
Ⅲ。read 系统调用的参数应包含文件的名称
A. 仅Ⅰ、Ⅱ
29。一个多道批处理系统中仅有 P1 和 P2 两个作业,P2 比 P1 晚 5ms 到达,它们的计算和 I/O 操作顺序如下:
P1:计算 60ms,I/O 80ms,计算 20ms
P2:计算 120ms,I/O 40ms,计算 40ms
若不考虑调度和切换时间,则完成两个作业需要的时间最少是:
A。240ms
30。若某单处理器多进程系统中有多个就绪态进程,则下列关于处理机调度的叙述中,错误的是:
A。在进程结束时能进行处理机调度
B。创建新进程后能进行处理机调度
C。在进程处于临界区时不能进行处理机调度
D。在系统调用完成并返回用户态时能进行处理机调度
31。下列关于进程和线程的叙述中,正确的是:
A。不管系统是否支持线程,进程都是资源分配的基本单位
B。线程是资源分配的基本单位,进程是调度的基本单位
C。系统级线程和用户级线程的切换都需要内核的支持
D。同一进程中的各个线程拥有各自不同的地址空间
32。下列选项中,不能改善磁盘设备 I/O 性能的是:
A。重排 I/O 请求次序
C。预读和滞后写
33。在 TCP/IP 体系结构中,直接为 ICMP 提供服务的协议是:
A。PPP
34。在物理层接口特性中,用于描述完成每种功能的事件发生顺序的是:
A。机械特性
C。过程特性
35。以太网的 MAC 协议提供的是:
A。无连接不可靠服务
C。有连接不可靠服务
36。两台主机之间的数据链路层采用后退 N 帧协议(GBN)传输数据,数据传输速率为 16 kbps,单向传播时延为 270ms,数据帧长度范围是 128~512 字节,接收方总是以与数据帧等长的帧进行确认。为使信道利用率达到最高,帧序号的比特数至少为:
A。5
37。下列关于 IP 路由器功能的描述中,正确的是:
Ⅰ。运行路由协议,设备路由表
Ⅱ。监测到拥塞时,合理丢弃 IP 分组
Ⅲ。对收到的 IP 分组头进行差错校验,确保传输的 IP 分组不丢失
Ⅳ。根据收到的 IP 分组的目的 IP 地址,将其转发到合适的输出线路上
A。仅Ⅲ、Ⅳ
C。仅Ⅰ、Ⅱ、Ⅳ
38。ARP 协议的功能是:
A。根据 IP 地址查询 MAC 地址
C。根据域名查询 IP 地址
39。某主机的 IP 地址为 180.80.77.55,子网掩码为 255.255.252.0。若该主机向其所在子网发送广播
分组,则目的地址可以是:
A。180.80.76.0
40。若用户 1 与用户 2 之间发送和接收电子邮件的过程如下图所示,则图中①、②、③阶段分别使用的应用层协议可以是:
A。SMTP、SMTP、SMTP
C。POP3、SMTP、SMTP
第 41~47 题,共 70 分。
41。设有 6 个有序表 A、B、C、D、E、F,分别含有 10、35、40、50、60 和 200 个数据元素,各表中元素按升序排列。要求通过 5 次两两合并,将 6 个表最终合并成 1 个升序表,并在最坏情况下比较的总次数达到最小。请问答下列问题。
1)给出完整的合并过程,并求出最坏情况下比较的总次数。
2)根据你的合并过程,描述 N(N≥2)个不等长升序表的合并策略,并说明理由。
42。假定采用带头结点的单链表保存单词,当两个单词有相同的后缀时,则可共享相同的后缀存储空间,例如,“loading” 和 “being” 的存储映像如下图所示。
设 str1 和 str2 分别指向两个单词所在单链表的头结点,链表结点结构为,请设计一个时间上尽可能高效的算法,找出由 str1 和 str2 所指向两个链表共同后缀的起始位置(如图中字符 i 所在结点的位置 p)。要求:
1)给出算法的基本设计思想。
2)根据设计思想,采用 C 或 C++或 JAVA 语音描述算法,关键之处给出注释。
3)说明你所设计算法的时间复杂度。
43。假定某计算机的 CPU 主频为 80MHz,CPI 为 4,平均每条指令访存 1.5 次,主存与 Cache 之间交换的块大小为 16B,Cache 的命中率为 99%,存储器总线宽带为 32 位。请回答下列问题。
1)该计算机的 MIPS 数是多少?平均每秒 Cache 缺失的次数是多少?在不考虑 DMA 传送的情况下,主存带宽至少达到多少才能满足 CPU 的访存要求?
2)假定在 Cache 缺失的情况下访问主存时,存在 0.0005%的缺页率,则 CPU 平均每秒产生多少次缺页异常?若页面大小为 4KB,每次缺页都需要访问磁盘,访问磁盘时 DMA 传送采用周期挪用方式,磁盘 I/O 接口的数据缓冲寄存器为 32 位,则磁盘 I/O 接口平均每秒发出的 DMA 请求次数至少是多少?
3)CPU 和 DMA 控制器同时要求使用存储器总线时,哪个优先级更高?为什么?
4)为了提高性能,主存采用 4 体低位交叉存储模式,工作时每 1/4 个存储周期启动一个体。若每个体的存储周期为 50ns,则该主存能提供的最大带宽是多少?
44。某 16 位计算机中,带符号整数用补码表示,数据 Cache 和指令 Cache 分离。题 44 表给出了指令系统中部分指令格式,其中
名称 | 指令的汇编格式 | 指令功能 |
加法指令 | | |
算术/逻辑左移 | | |
算术右移 | | |
取数指令 | | |
存数指令 | | |
该计算机采用 5 段流水方式执行指令,各流水段分别是取指(IF)、译码/读寄存器(ID)、执行/计算有效地址(EX)、访问存储器(M)和结果写回寄存器(WB),流水线采用 “按序发射,按序完成” 方式,没有采用转发技术处理数据相关,并且同一个寄存器的读和写操作不能在同一个时钟周期内进行。请回答下列问题:
1)若 int 型变量
2)若某个时间段中,有连续的 4 条指令进入流水线,在其执行过程中没有发生任何阻塞,则执行这 4 条指令所需的时钟周期数为多少?
3)若高级语言程序中某赋值语句为
则这 4 条指令执行过程中,
4)若高级语言程序中某赋值语句为
45。某请求分页系统的局部页面置换策略如下:
系统从 0 时刻开始扫描,每隔 5 个时间单位扫描一轮驻留集(扫描时间忽略不计),本轮没有被访问过的页框将被系统回收,并放入到空闲页框链尾,其中内容在下一次分配之前不被清空。当发生缺页时,如果该页曾被使用过且还在空闲页链表中,则重新放回进程的驻留集中;否则,从空闲页框链表头部取出一个页框。
假设不考虑其它进程的影响和系统开销。初始时进程驻留集为空。目前系统空闲页框链表中页框号依次为 32、15、21、进程 P 依次访问的<虚拟页号,访问时刻>是:<1,1>、<3,2>、<0,4>、<0,6>、<1,11>、<0,13>、<2,14>。请回答下列问题。
1)访问<0,4>时,对应的页框号是什么?
2)访问<1,11>时,对应的页框号是什么?说明理由。
3)访问<2,14>时,对应的页框号是什么?说明理由。
4)该策略是否适合于时间局部性好的程序?说明理由。
46。某文件系统空间的最大容量为 4TB(
1)假设索引表区仅采用直接索引结构,索引表区存放文件占用的磁盘块号,索引表项中块号最少占多少字节?可支持的单个文件最大长度是多少字节?
2)假设索引表区采用如下结构:第 0~7 字节采用<起始块号,块数>格式表示文件创建时预分配的连续存储空间,其中起始块号占 6B,块数占 2B;剩余 504 字节采用直接索引结构,一个索引项占 6B,则可支持的单个文件最大长度是多少字节?为了使单个文件的长度达到最大,请指出起始块号和块数分别所占字节数的合理值并说明理由。
47。主机 H 通过快速以太网连接 Internet,IP 地址为 192.168.0.8,服务器 S 的 IP 地址为 211.68.71.80。H 与 S 使用 TCP 通信时,在 H 上捕获的其中 5 个 IP 分组如题 47 表 a 所示。
回答下列问题。
(1)题 47-a 表中的 IP 分组中,哪几个是由 H 发送的?哪几个完成了 TCP 连接建立过程?哪几个在通过快速以太网传输时进行了填充?
(2)根据题 47-a 表中的 IP 分组,分析 S 已经收到的应用层数据字节数是多少?
(3)若题 47-a 表中的某个 IP 分组在 S 发出时的前 40 字节如题 47-b 表所示,则该 IP 分组到达 H 时经过了多少个路由器?
来自 S 的分组 | 45 00 00 28 | 68 11 40 00 | 40 06 ec ad | d3 44 47 50 | ca 76 01 06 | |
13 88 a1 08 | e0 59 9f f0 | 84 6b 41 d6 | 50 10 16 d0 | b7 d6 00 00 |
注:IP 分组头和 TCP 段头结构分别如题 47 图 a,题 47 图 b 所示。
(一)单选题答案
1。B
9。D
17。C
25。B
33。B
(二)单选题答案解析
1。考查时间复杂度的计算。
该程序中使用了递归运算。本题中递归的边界条件是
2。考查栈的应用、表达式求值。
表达式求值是栈的典型应用。通常涉及中缀表达式和后缀表达式。中缀表达式不仅依赖运算符的优先级,还要处理括号。后缀表达式的运算符在表达式的后面且没有括号,其形式已经包含了运算符的优先级。所以从中缀表达式转换到后缀表达式需要用运算符栈对中缀表达式进行处理,使其包含运算法优先级的信息,从而转换为后缀表达式的形式。转换过程如下表:
运算符栈 | 中缀未处理部分 | 后缀生成部分 |
\# | a+b-a*((c+d)/e-f)+g | |
\# | +b-a*((c+d)/e-f)+g | a |
+ | b-a*((c+d)/e-f)+g | a |
+ | -a*((c+d)/e-f)+g | ab |
- | a*((c+d)/e-f)+g | ab+ |
- | *((c+d)/e-f)+g | ab+a |
-* | ((c+d)/e-f)+g | ab+a |
-*(( | c+d)/e-f)+g | ab+a |
-*(( | +d)/e-f)+g | ab+ac |
-*((+ | d)/e-f)+g | ab+ac |
-*((+ | )/e-f)+g | ab+acd |
-*( | /e-f)+g | ab+acd+ |
-*(/ | e-f)+g | ab+acd+ |
-*(/ | -f)+g | ab+acd+e |
-*(- | f)+g | ab+acd+e/ |
-*(- | )+g | ab+acd+e/f |
-* | +g | ab+acd+e/f- |
- | +g | ab+acd+e/f-* |
\# | +g | ab+acd+e/f-*- |
+ | g | ab+acd+e/f-*- |
\# | ab+acd+e/f-*-g |
3。考查树的遍历、及由遍历序列确定二叉树的树形。
前序序列和后序序列不能唯一确定一棵二叉树,但可以确定二叉树中结点的祖先关系:当两个结点的前序序列为 XY 与后序序列为 YX 时,则 X 为 Y 的祖先。考虑前序序列 a,e,b,d,c、后序序列 b,c,d,e,a,可知 a 为根结点,e 为 a 的孩子结点;此外,a 的孩子结点的前序序列 e,b,d,c、后序序列 b,c,d,e,可知 e 是 bcd 的祖先,故根结点的孩子结点只有 e。本题答案为 A.
【特殊法】前序序列和后序序列对应着多棵不同的二叉树树形,我们只需画出满足该条件的任一棵二叉树即可,任意一棵二叉树必定满足正确选项的要求。
显然选 A,最终得到的二叉树满足题设中前序序列和后序序列的要求。
4。考查平衡二叉树的最少结点情况。
所有非叶结点的平衡因子均为 1,即平衡二叉树满足平衡的最少结点情况,如图 xxx 所示。画图时,先画出
【排除法】对于选项 A,高度为 6、结点数为 10 的树怎么也无法达到平衡。对于选项 C,接点较多时,考虑较极端情形,即第 6 层只有最左叶子的完全二叉树刚好有 32 个结点,虽然满足平衡的条件,但显然再删去部分结点,依然不影响平衡,不是最少结点的情况。同理 D 错误。只可能选 B。
5。考查不同存储结构的图遍历算法的时间复杂度。
6。考查拓扑排序、与存储结构和图性质的关系。
对角线以下元素均为零,表明该有向图是一个无环图,因此一定存在拓扑序列。对于拓扑序列是否唯一,我们试举一例:设有向图的邻接矩阵
7。考查 Dijkstra 算法最单源最短路径。
顶点 | 第 1 趟 | 第 2 趟 | 第 3 趟 | 第 4 趟 | 第 5 趟 |
b | (a,b) 2 | ||||
c | (a,c) 5 | (a,b,c) 3 | |||
d | | (a,b,d) 5 | (a,b,d) 5 | (a,b,d) 5 | |
e | | | (a,b,c,f) 4 | ||
f | | | (a,b,c,e) 7 | (a,b,c,e) 7 | (a,b,d,e) 6 |
集合 S | {a,b} | {a,b,c} | {a,b,c,f} | {a,b,c,f,d} | {a,b,c,f,d,e} |
后续目标顶点依次为 f,d,e,
8。考查最小生成树、及最小生成树算法的性质。
9。考查 B-树的删除操作。
对于上图所示的 3 阶 B-树,被删关键字 78 所在结点在删除前的关键字个数
10。考查各种内部排序算法的性质。
11。考查折半插入和直接插入的区别。
12。考查计算机性能指标的计算。
【误区】CPU 速度提高 50%,则 CPU 运行时间减少一半。错误!
13。考查 C 语言中的类型转换。
14.考查 IEEE754 浮点数的性质。
15。考查字符串的存储方式。
地址 | 0xC008 | 0xC009 | 0xC00A | 0xC00B |
内容 | record.a (0x11) | record.a (0x01) | record.a (0x00) | record.a (0x00) |
地址 | 0xC00C | 0xC00D | 0xC00E | 0xC00F |
内容 | record.b | - | record.c | record.c |
16。考查闪存(Flash Memory)的性质。
17。考查组相联映射的 Cache 置换过程。
注:*表示本次访问命中。
18。考查微指令的编码方式。
19。考查总线传输性能的计算。
20。考查 USB 总线的特性(常识)。
21。考查 I/O 总线的特点。
22。考查中断隐指令。
23。考查用户态和和心态。
24。考查中断处理和子程序调用的区别。
25。考查虚拟存储器的特点。
26。考查 I/O 子系统的层次结构。
27.考查安全序列的计算。
初始时进程 P1 与 P3 可满足需求,排除 A、C。尝试给 P1 分配资源,则 P1 完成后 Available 将变为(6,3,6),无法满足 P0 的需求,排除 B。尝试给 P3 分配资源,则 P3 完成后 Available 将变为(4,3,7),该向量能满足其他所有进程的需求。所以,以 P3 开头的所有序列都是安全序列。
28。考查 read 系统调用的过程与特点。
29。考查批处理系统的性能计算。
30。考查处理机调度的时机。
31。考查进程与线程的区别与联系。
进程 | 线程 | |
资源分配 | 进程是资源分配和拥有的基本单位 | 线程自己基本不拥有系统资源,但它可访问所属进程所拥有全部资源。 |
调度 | 在没有引入线程的操作系统中,进程是独立调度和分派的基本单位。 | 引入线程后的操作系统中,线程是独立调度和分派的基本单位。 |
地址空间 | 进程的地址空间之间互相独立。 | 同一进程的各线程间共享进程的地址空间。 |
32.考查影响磁盘设备 I/O 性能的因素。
33.考查 ICMP 协议的特点。
ICMP 是网络层协议,ICMP 报文作为数据字段封装在 IP 分组中。
34。考查物理层的接口特性。
过程特性定义了各条物理线路的工作过程和时序关系。
35。考查以太网 MAC 协议。
36.考查 GBN 协议。
37.考查 IP 路由器的功能。
38.考查 ARP 协议的功能。
39。考查 IP 地址的特点。
40。考查电子邮件中的协议。
41。解答:
第 1 次合并:表 A 与表 B 合并,生成含有 45 个元素的表 AB;
第 2 次合并:表 AB 与表 C 合并,生成含有 85 个元素的表 ABC;
第 3 次合并:表 D 与表 E 合并,生成含有 110 个元素的表 DE;
第 4 次合并:表 ABC 与表 DE 合并,生成含有 195 个元素的表 ABCDE;
第 5 次合并:表 ABCDE 与表 F 合并,生成含有 395 个元素的最终表。
【1)2)评分说明】
42。解答:
43。解答:
44。解答:
【评分说明】仅正确写出指令执行前的(R1)可给 1 分。
指令 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
I1 | IF | ID | EX | M | WB | ||||||||||||
I2 | IF | ID | EX | M | WB | ||||||||||||
I3 | IF | ID | EX | M | WB | ||||||||||||
I4 | IF | ID | EX | M | WB | ||||||||||||
I5 | IF | ID | EX | M | WB |
45。解答:
46。解答:
47。解答: