全部来自 AI 原创生成并经逐题审校的题目,带 精品 标记的为 AI 复审通过。整卷生成请去组卷。
判断题:在某生产者—消费者系统中,信号量 mutex(初值 1)、empty(初值 n)、full(初值 0)。某同学在完成临界区操作后,将释放操作写为:V(mutex); V(full)。有同学认为,若把这两条 V 操作的顺序交换为先 V(full) 再 V(mutex),程序的正确性会被破坏。请判断这一说法是否正确。
登录后查看答案
判断:某计算机主存按字节编址,Cache 数据区容量 64KB,块大小 32B,采用 8 路组相联映射,主存地址共 28 位。某同学认为:该 Cache 共有 64KB/(32B×8)=256 组,组号占 8 位,块内地址占 5 位,故主存标记字段占 28−8−5=15 位;且当某次访问在 TLB 中命中时,CPU 无需再访问内存中的页表即可完成地址转换。
判断:在每段耗时 1 个时钟周期的五段流水线(IF、ID、EX、MEM、WB)中,若连续执行的 n 条指令之间不存在任何数据冒险和控制冒险,则执行完这 n 条指令共需 n+5 个时钟周期。
判断:在某五段指令流水线(IF、ID、EX、MEM、WB)中,若第 5 条指令需要使用第 4 条 load 指令刚从存储器读出的数据作为源操作数,则即使采用全部数据前递技术,也必须在两条指令之间插入 1 个气泡(停顿 1 个时钟周期)。
判断:设哈夫曼树中仅有度为0和度为2的结点,若叶子结点数为 n,则该树总结点数为 2n−1,且 WPL 等于各非叶(分支)结点权值之和;这一性质对任何哈夫曼树都成立,因此计算 WPL 时必须逐个计算每个叶子的「权值×路径长度」再求和,不能借助分支结点权值求和得到。
判断下列说法是否正确:在一棵二叉排序树(BST)中删除一个左、右子树均非空的结点 p 时,可以先用 p 在整棵树中的中序前驱结点 s(即 p 的左子树中最右侧结点)的关键字值覆盖 p 的关键字值,再转而删除结点 s,且删除后所得的二叉树仍然满足 BST 的性质,该方法时间复杂度为 O(h)(h 为树高)。
判断题:在一棵含 n 个带权叶子结点的哈夫曼树中,权值越大的叶子结点离根越近;并且,哈夫曼树是一棵高度必为 n-1 的二叉树(即每个叶子都位于最深层)。
判断:第二代计算机以晶体管为主要逻辑器件;某小组据此认为,只要一台计算机使用了晶体管,它就一定属于第二代计算机,这一看法是正确的。
判断:某算法的执行时间 T(n) = 1000n + 5n·log₂n + 2000,则其时间复杂度应记为 O(n),因为常数 1000 和 2000 在 n 充分大时不影响增长的数量级。
某 TCP 连接处于拥塞避免阶段,某轮传输开始时 cwnd=24 KB 且 ssthresh=24 KB,该轮发送方收到 3 个重复确认,遂执行快重传并进入快恢复。判断:执行快重传与快恢复后,发送方的新 ssthresh=12 KB,新 cwnd=12 KB,即 cwnd 被设置为更新后的 ssthresh 值而非重置为 1 KB。
判断:TCP 拥塞控制中,发送方在快重传阶段收到 3 个重复确认后,立即重传丢失的报文段,随后将 ssthresh 更新为当前 cwnd 的一半,并把 cwnd 设置为新的 ssthresh 值,直接进入拥塞避免阶段线性增长。
判断题:在某生产者—消费者系统中,信号量 mutex=1、empty=n(n>0)、full=0。某同学编写消费者进程代码为:P(full); V(empty); P(mutex); ……;V(mutex); 即将 V(empty) 提前到了访问缓冲区之前、P(mutex) 之后执行。另一位同学声称:虽然 V(empty) 的位置放得偏早,但 V 操作只释放资源、不申请资源,两个 V 操作之间的先后顺序以及 V 操作与后续 P(mutex) 的相对位置无论如何调整,都只会影响进程被唤醒的时机,不会引入死锁,也不会破坏对该缓冲区的互斥访问(互斥由 P(mutex)/V(mutex) 配对保证)。该同学的判断是否正确?
某进程采用 LRU(最近最久未使用)置换算法进行页面置换。判断下列说法的正误:在初始页框为空、首次调入计入缺页的约定下,对任意页面访问序列,增加分配给该进程的物理页框数,其缺页次数一定不会增加。
某计算机按字节编址,虚拟地址 32 位,页大小 4KB;TLB 共 64 项,采用 4 路组相联。某同学分析后认为:由于 TLB 命中时可直接得到数据所在的物理页框,因此 TLB 命中的那次访存完全不需要访问主存中的页表,也无需访问主存即可取得操作数。
判断:某八位二进制数 1x10x10x(x 表示未知位)对应的十进制值与八进制数 145 对应的十进制值相等,则 x 的取值可以有两种不同的组合。
判断:TCP 拥塞控制中,发送方收到 3 个重复确认并执行快重传后,应将 ssthresh 更新为当前 cwnd 的一半,同时把 cwnd 重置为 1 KB,重新进入慢开始阶段。
某进程页面访问序列为 4,3,2,1,4,3,5,4,3,2,1,5,系统分配 3 个物理页框,采用 FIFO 置换算法,初始时页框为空,每次调入新页均计为一次缺页。判断:按该算法模拟,整个访问序列共发生 9 次缺页。
某计算机主存按字节编址,Cache 数据区容量为 16KB,主存块大小为 64B,采用 2 路组相联映射。某同学分析后认为:主存地址应划分为标记、组号、块内地址三段,且由于 Cache 共有 16KB/64B = 256 块,组号字段应占 8 位。该同学的分析是否正确?
判断下列说法是否正确:在带头结点的单链表 L 上实现就地逆置时,若采用「p 指针扫描原链表、头插法逐个摘下结点插入」的写法,则初始时必须置 L->next = NULL,且扫描过程中 p 前进前须先保存其后继结点,否则算法将出错。
判断题:在带头结点的单链表上用头插法实现就地逆置时,扫描过程中必须先用临时指针暂存当前结点的后继,再修改其指针域进行头插,否则原链表剩余部分将丢失;而当原表为空表(仅含头结点)时,该算法不需要额外的边界判断也能正确结束,逆置后 L->next 仍为 NULL。