大题解题模板

按知识范围、常见考点与题型、对应解法梳理九类 408 综合题,配合知识图谱与历年题练习。

做综合题之前,先要知道这一章讲了哪些东西,以及这些知识怎样联系起来。比如存储系统,不能只背 Cache 组数和页表项地址的公式,还要知道虚拟地址怎样变成物理地址,Cache 缺失与缺页各自会发生什么。理解这条访问过程,才能判断一道小问应该用哪种方法。

这里按九个专题整理,阅读顺序是:知识范围与主线 → 常见考点和题型 → 相关原理 → 各类题的解法 → 真题与易错点。

  • 每页先说明这个板块包含哪些知识、它们之间是什么关系,并链接到核心知识图谱或对应基础章节。
  • 接着按题目要求分类:同一板块中的地址计算、过程模拟、代码设计和机制说明,解题方式可能不同。
  • 解法部分说明先求什么、为什么这样求、需要哪些条件,再用具体例子和历年题帮助练习。

初学时建议顺着读完一个专题;做过题后,可以按题型回查方法。遇到不理解的公式,应回到它对应的结构或过程,而不是继续背下一条口诀。长题综合题实践另有题干分析和建模示范;算法设计见算法设计题解题框架。

下面的“第一笔”用来提醒你先确认什么。它只是进入题目的起点,后面仍要按具体问法推导。

页覆盖的题号第一笔写什么
数据结构大题41、42认出对象:散列表 / 图 / AOE / 树 / 排序
数的表示与运算43 附近先写字长、类型和取值范围
存储系统43~46把所有容量换算成位数
CPU 与指令系统43、44把字段翻成一句寄存器传送
I/O 计算43、44定「一次传送多少字节」
进程同步与信号量45、46先写信号量声明段和初值
进程调度与状态转换45、46整理事件、就绪队列与抢占规则
文件系统与磁盘45、46算「一块能放几个地址项」
计算机网络综合题47先定这一问落在哪一层

考场决策树

先按题干的动作分流,再进入对应页面:

先看题目要你做什么
├─ 写算法、代码、复杂度       → 算法设计题框架
├─ 按规则逐轮填表/画图         → 数据结构大题
├─ 算位数、地址、时间、次数    → 看关键词进入数的表示 / 存储 / I/O / 文件系统 / 网络
├─ 写 RTL、控制信号、机器码    → CPU 与指令系统
├─ 写 P/V、前趋边、互斥        → 进程同步与信号量
└─ 排时刻线、判状态、解释机制  → 进程调度与状态转换

进入页面后,先看知识范围,判断具体题型,再选择计算、模拟或论证的方法。

先认板块

题号只能作参考:2014、2016、2019 三年的科目顺序被打乱过,组原不一定在 43、44,网络也不一定在 47。真正可靠的是题干里的关键词。

题干里出现去哪一页
散列函数、装填因子、邻接矩阵、活动与工期、归并段数据结构大题
一小段 C 代码问机器数、会不会溢出、IEEE754数的表示与运算
Cache 数据区容量、路数、块大小、页大小、命中率、缺失损失存储系统
指令格式图、字段含义表、数据通路图、虚线控制信号、节拍CPU 与指令系统
定时查询、中断、DMA、数据传输率、CPU 时间占比I/O 计算
若干进程或线程共享资源、前趋图、P/V 或 wait/signal进程同步与信号量
到达时刻与运行时间表、时间片、优先级、饥饿、系统调用步骤排序进程调度与状态转换
目录项、inode、FAT、索引块、位示图、磁道与扇区文件系统与磁盘
子网掩码、路由表、MAC 与 IP、RTT 与拥塞窗口、帧长计算机网络综合题

同一门课的两道综合题常常连做:组原一道给指令格式、一道给它的数据通路或 Cache;操作系统一道考同步、一道考存储或文件。两道题共用一台机器的参数时,第一题算出的位数直接抄到第二题。

如果某一门的整体结构还没搭起来,先看 核心知识图谱 里对应的一章。图谱管的是知识之间的完整关系,本节每页先说明知识范围,再将常见题型与对应解法连接起来。

交卷前的三项检查

  1. 每一个位数、每一个初值都能说出它来自题干的哪个条件;
  2. 每一个数字都带单位,且单位口径前后一致;
  3. 每一问答的对象和题目问的对象严格对上——问「行号」不要答「组号」,问「页表项的虚拟地址」不要只给物理地址,问「所有方案」不要只给一种。

落笔写到什么程度、怎样保住过程分,见 408 大题书写实践。

示例与评分

每页的历年题索引适合选题,真正练习时建议打开对应真题,按“题干条件 → 第一笔 → 中间过程 → 结论”四行写草稿。答案中保留单位、状态变化、地址分解和选择理由;只写最终数字通常只能拿结果分。遇到评分说明时,优先按评分点逐项作答,再压缩无关叙述。

例如 Cache 数据区 1 KB、2 路组相联、块大小 16 B:先写 组数 = 1024 ÷ (2 × 16) = 32,再写 块内地址 4 位、组号 5 位,最后由题给物理地址位数求 Tag。这样“容量换算”(过程分)和“字段划分”(结果分)都不会混在一个数字里。


数据结构大题

梳理查找、图、树与排序的知识联系,按构造、模拟、计数和论证题讲解方法。

数的表示与运算

从位宽、编码和类型规则出发,讲解机器数、整数运算、标志位、浮点精度与运算器题。

存储系统

连接存储层次、地址翻译和数据访问,讲解字段计算、替换模拟、命中率与访问时间。

CPU 与指令系统

从指令语义连接汇编、数据通路和控制器,分类讲解编码、寻址、控制信号与流水线题。

I/O 计算

梳理总线、接口、中断与 DMA 的分工,讲解 CPU 开销、传送能力和总线时间计算。

进程同步与信号量

从共享状态、先后关系和资源数量建模,讲解信号量设计、前趋关系、并发与死锁检查。

进程调度与状态转换

区分调度、进程状态与 CPU 模式,讲解事件模拟、调度指标、动态优先级和系统调用题。

文件系统与磁盘

沿目录到数据块的访问路径,讲解文件分配、索引容量、访盘、空间回收与磁盘调度。

计算机网络综合题

按网络分层连接一次通信,讲解地址规划、逐跳转发、协议字段、窗口与时延题。