師大資工所考古題詳解硬體十年大統整(106–115)
各章配分
表中數字是各題的卷面配分,依主題加總。有子題的照子題分,沒有子題的整題算在主要考點。計組與 OS 分開列,各自依十年合計排序,顏色越深,占當年總分的比例越高。Amdahl's Law 依主題算在計組,與年度頁的歸法相同;指令記憶體與資料記憶體的存取次數算在 Datapath & Control。
| 章/細項 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 合計 | 占比 | 年數 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Computer Organization | 50 | 50 | 60 | 60 | 55 | 50 | 50 | 50 | 50 | 50 | 525 | 52% | 10 |
| Memory Hierarchy | 24 | 15 | 8 | 15 | 19 | 18 | 10 | 10 | 10 | 10 | 139 | 14% | 10 |
| Cache Organization | 12 | 5 | 8 | 5 | 15 | 14 | 10 | 10 | 10 | 10 | 99 | 10% | 10 |
| Cache Performance & Optimization | 12 | 10 | 10 | 4 | 36 | 4% | 4 | ||||||
| DRAM, Dependability & ECC | 4 | 4 | <1% | 1 | |||||||||
| Pipelining | 10 | 25 | 14 | 10 | 23 | 13 | 10 | 10 | 10 | 125 | 12% | 9 | |
| Hazards & Forwarding | 10 | 25 | 14 | 10 | 15 | 13 | 10 | 10 | 10 | 117 | 12% | 9 | |
| Pipeline Timing | 8 | 8 | <1% | 1 | |||||||||
| Performance | 4 | 6 | 20 | 16 | 9 | 13 | 10 | 10 | 10 | 10 | 108 | 11% | 10 |
| CPU Time, CPI & Benchmarks | 4 | 6 | 10 | 6 | 4 | 10 | 10 | 10 | 60 | 6% | 8 | ||
| Amdahl's Law & Speedup | 10 | 10 | 5 | 6 | 10 | 41 | 4% | 5 | |||||
| Power & Energy | 7 | 7 | <1% | 1 | |||||||||
| Computer Arithmetic | 6 | 4 | 8 | 10 | 4 | 3 | 20 | 10 | 10 | 75 | 8% | 9 | |
| Integer Representation & Overflow | 6 | 4 | 8 | 10 | 4 | 3 | 10 | 10 | 55 | 6% | 8 | ||
| Floating Point | 10 | 10 | 1% | 1 | |||||||||
| Multiplication & Division | 10 | 10 | 1% | 1 | |||||||||
| ISA & Assembly | 20 | 10 | 10 | 40 | 4% | 3 | |||||||
| Assembly & Code Translation | 10 | 10 | 10 | 30 | 3% | 3 | |||||||
| Instruction Set Design & Encoding | 10 | 10 | 1% | 1 | |||||||||
| Datapath & Control | 6 | 10 | 9 | 10 | 35 | 4% | 4 | ||||||
| Single-cycle Datapath & Control | 6 | 10 | 9 | 10 | 35 | 4% | 4 | ||||||
| Other | 3 | 3 | <1% | 1 | |||||||||
| Operating Systems | 50 | 50 | 40 | 40 | 45 | 50 | 50 | 50 | 50 | 50 | 475 | 48% | 10 |
| CPU Scheduling | 15 | 10 | 10 | 12 | 12 | 20 | 7 | 15 | 101 | 10% | 8 | ||
| Scheduling Algorithms | 15 | 10 | 10 | 12 | 12 | 20 | 7 | 15 | 101 | 10% | 8 | ||
| Processes & Threads | 19 | 10 | 8 | 10 | 10 | 15 | 15 | 87 | 9% | 7 | |||
| Process States & Context Switch | 10 | 10 | 10 | 15 | 45 | 4% | 4 | ||||||
| fork / wait / exec | 8 | 10 | 15 | 33 | 3% | 3 | |||||||
| Threads & Concurrency | 9 | 9 | <1% | 1 | |||||||||
| Memory Management | 7 | 10 | 8 | 15 | 20 | 7 | 15 | 82 | 8% | 7 | |||
| Paging, Page Tables & TLB | 20 | 7 | 15 | 42 | 4% | 3 | |||||||
| Segmentation | 10 | 8 | 15 | 33 | 3% | 3 | |||||||
| Contiguous Allocation & Fragmentation | 4 | 4 | <1% | 1 | |||||||||
| Address Binding & Memory Layout | 3 | 3 | <1% | 1 | |||||||||
| Virtual Memory | 10 | 10 | 12 | 12 | 10 | 54 | 5% | 5 | |||||
| Page Replacement | 10 | 10 | 12 | 12 | 10 | 54 | 5% | 5 | |||||
| OS Structure | 9 | 9 | 15 | 7 | 10 | 50 | 5% | 5 | |||||
| System Calls & Dual Mode | 9 | 9 | 15 | 10 | 43 | 4% | 4 | ||||||
| OS Structure & Design Goals | 7 | 7 | <1% | 1 | |||||||||
| Storage & File Systems | 10 | 12 | 10 | 7 | 10 | 49 | 5% | 5 | |||||
| Disk Scheduling & Management | 10 | 12 | 10 | 32 | 3% | 3 | |||||||
| File Allocation & Free Space | 10 | 10 | 1% | 1 | |||||||||
| File System Design & Semantics | 7 | 7 | <1% | 1 | |||||||||
| Synchronization | 10 | 10 | 15 | 7 | 42 | 4% | 4 | ||||||
| Critical Section & Race Condition | 10 | 5 | 15 | 30 | 3% | 3 | |||||||
| Semaphores, Mutex & Monitors | 7 | 7 | <1% | 1 | |||||||||
| Classic Problems & Transactions | 5 | 5 | <1% | 1 | |||||||||
| Deadlock | 10 | 10 | 1% | 1 | |||||||||
| Safe State & Banker's Algorithm | 10 | 10 | 1% | 1 |
計組這邊 Memory Hierarchy 合計 139 分、十年每年都有,Pipelining 125 分、十年考九年。OS 這邊 CPU Scheduling 101 分最多。
重複出題清單
下表列出各年重複出現的考點,以及每年換的問法。
| 考點 | 出現年度 | 怎麼換問法 |
|---|---|---|
| system call 傳遞參數的三種方法 | 106(六)、110(1) | 兩年題目相同 |
| process state diagram | 106(七)、107(10)、112(1a)、113(1a) | 106 與 107 的題目相同,112 與 113 的題目敘述幾乎一字不差 |
| Amdahl's Law | 108(5)、109(8)、110(3)、111(8)、114(10) | 108 與 110 給循序比例 S,題目一字不差;109 與 114 給可平行比例 P,114 只改了幾個字;111 問改善乘法能不能讓程式快四倍 |
| disk scheduling FCFS 加 SSTF | 108(7)、110(4)、111(4) | 三年題目都另外給了前一個請求的位置,108 年有 15 個請求、8000 個 cylinder |
fork() process 計數 | 109(9)、111(2)、114(1) | 109 與 111 都是 for 迴圈裡的 fork()(分別跑 8 次與 6 次),114 的函式裡多了 if (fork() == 0) 分支 |
| 有 forwarding 的 pipeline 週期數 | 106(四)、107(3)、108(4)、109(3) | 四年都給兩段短程式,一段是 ALU 指令之間的相依,一段是 load 之後馬上使用,107 另要列出可用 forwarding 解決的 hazard |
| pipeline data hazard | 110(7)、111(10)、112(7)、113(6)、114(9) | 110 解釋三種 hazard,111 問 forwarding 概念,112 問無 forwarding 要插幾個 NOP,113 問無 forwarding 共幾個週期,114 問哪些相依會 stall |
| forwarding 之後仍會 stall 的相依 | 111(10b)、114(9b) | 111 要自己舉一個例子,114 要從四道指令中找出來 |
| 指令記憶體與資料記憶體的存取次數 | 106(二)、108(3)、109(2) | 106 與 109 同一個模板(CPI、CPU 時間、兩種記憶體的存取次數、哪些指令用到資料記憶體),108 另問兩種記憶體的 miss rate |
| MIPS 迴圈 | 113(8)、114(12) | 113 問執行了幾道指令(以 N 表示),114 問 $s2 最終是多少。兩年的迴圈骨架相同,113 的 $s2 每圈加 2 並多一道 sll,114 每圈加 3 |
| cache | 106(三、五)、107(4、5a)、108(3cd)、109(4)、110(6、8-5)、111(11)、112(8)、113(5)、114(8)、115(9) | 十年每年都有:106 問區塊與 set 編號及兩層 cache 的 AMAT,107 問 AMAT 並解釋 2-way set associative,108 問 miss rate,109 問區塊編號、AMAT 與 stall 週期,110 解釋三種對映與 AMAT,111 問 write-back 與 fully associative 的優缺點,112 問 direct-mapped 的 hit rate,113 由位址欄位問 associativity K,114 問 tag 總位元數,115 問 tag 位元與總位元數 |
| page replacement 模擬 | 107(7)、108(6)、109(7)、110(5)、112(3) | 107 到 110 連四年 FIFO 加 LRU,frame 數依序是 3、4、5、4;112 考 LRU 並要求逐步列出 frame |
| CPU scheduling | 106(九)、107(8)、108(8)、109(6)、110(2)、112(2)、114(5)、115(3) | 106 考 preemptive SJF、FCFS、RR(卷面沒給 time quantum),107 與 108 的前四個 process 資料相同(108 多 P5,RR 的 quantum 從 4 改成 5),109 考 non-preemptive SJF 與 RR,110 考 FCFS 與 non-preemptive SJF,112 一次考 SJF、FCFS、RR、MLFQ 四種,114 問三個工作的 SJF turnaround time 順序,115 考 RR 的平均 turnaround time |
| clock rate 與 CPI | 106(二)、107(2)、108(2)、109(2)、112(4)、113(7)、115(5) | 106 到 109 每年第 2 題都是 clock、CPI 或 CPU 時間;112 算 B 機 clock rate,113 比三顆處理器誰快,115 算「時間減 20%、CPI 增 20%」後的新 clock rate |
| 位址轉換 | 107(6)、109(5)、111(3)、113(4)、115(4) | 107、109、111 都是 16 位元位址加四段段表的 segmentation 轉換,113 問 multi-level paging 的層數與頁數,115 是兩層 paging 並附 hex dump |
| critical section | 108(9)、113(2) | 兩年都問什麼是 critical section,108 另問三個條件,113 另問 busy waiting |
| 進位、數字表示 | 106(一)、107(1)、108(1)、109(1)、110(8-1)、111(5)、112(5、6)、114(11) | 106 到 109 每年第 1 題都是進位轉換;之後有無號二進位、hex 轉二進位、IEEE-754、two's complement |
優先準備的五件事
- Cache。十年每年都有,是出現年數最多的主題。問法包括區塊與 set 編號(106、109)、兩層 cache 的 AMAT(106)、AMAT(107、109、110)、解釋對映方式(107、110)、write-back 與 fully associative cache 的優缺點(111)、direct-mapped 的 hit rate(112)、由位址欄位反推 associativity K(113)、tag 總位元數(114)、tag 位元與總位元數(115)。
- Pipeline data hazard 與 forwarding。106 到 114 連九年。106 到 109 年都是有 forwarding 時求兩段短程式的週期數,110 年起每年換一個問法。112 年第 7 題與 113 年第 6 題的題目都沒有交代 register file 是否前半週期寫、後半週期讀。
- CPU scheduling。十年八年有,FCFS、SJF(preemptive 與 non-preemptive)、RR、MLFQ 都考過,106 年要三張 Gantt chart、112 年一次要四張。
- Clock rate、CPI 與進位轉換這類送分題。106 到 109 年第 1、2 題固定是進位轉換與效能公式,之後也常出現。
- Page replacement 與 Amdahl's Law。page replacement 107 到 110 連四年 FIFO 加 LRU;Amdahl's Law 五年出現,題目有時給循序比例,有時給可平行比例。
其次還有:fork() process 數(109、111、114)、segmentation 位址轉換(107、109、111)、disk scheduling 的 FCFS/SSTF 距離(108、110、111)、process state diagram(106、107、112、113)、critical section(108、113)、IEEE-754(112)、MIPS 位移與邏輯運算(115)、分支目標位址(113)。
各年度的題數與配分
| 年度 | 頁數 | 大題數 | OS | 計組 | 特點 |
|---|---|---|---|---|---|
| 106 | 3 | 10 | 50 | 50 | 題號用一到十,前五題計組、後五題 OS |
| 107 | 4 | 10 | 50 | 50 | 前五題計組、後五題 OS,第 3 題 pipeline 20 分 |
| 108 | 3 | 9 | 40 | 60 | 第 5 題 Amdahl's Law 歸在計組 |
| 109 | 3 | 9 | 40 | 60 | 第 8 題 Amdahl's Law 歸在計組 |
| 110 | 2 | 8 | 45 | 55 | 第 8 題是 5 小題共 20 分的單選題 |
| 111 | 2 | 11 | 50 | 50 | 題數多、單題小分(最小 3 分) |
| 112 | 2 | 8 | 50 | 50 | 第 2 題一次要畫四張 Gantt chart |
| 113 | 2 | 9 | 50 | 50 | 前四題全是 OS,後五題全是計組 |
| 114 | 3 | 12 | 50 | 50 | 第 3、4、6、7 題是全對才給分的複選(共 28 分) |
| 115 | 4 | 9 | 50 | 50 | 第 4 題附 57 列的記憶體 hex dump |
本頁把 Amdahl's Law 歸在計組。108、109、110 年的 Amdahl's Law 題排在作業系統那一段;若改歸 OS,這三年也都是各 50 分。106、107 年與 111 到 115 年依主題算就是 OS 與計組各 50 分。
題型演變
| 年度 | 選擇題 | 申論/計算 | 題目明確要求畫圖或列表 |
|---|---|---|---|
| 106 | 0% | 100% | 第七題 process state diagram、第九題三張 Gantt chart |
| 107 | 0% | 100% | 第 10 題 process state diagram |
| 108 | 0% | 100% | 無 |
| 109 | 0% | 100% | 無 |
| 110 | 20% | 80% | 無 |
| 111 | 0% | 100% | 第 10(b) 題可以畫圖 |
| 112 | 0% | 100% | 第 1(a) 題 process state diagram、第 2 題四張 Gantt chart、第 3(a) 題逐步列出 frame 內容 |
| 113 | 0% | 100% | 第 1(a) 題 process state diagram |
| 114 | 28%(複選) | 72% | 無 |
| 115 | 0% | 100% | 無 |
十年只有 110 年(第 8 題 20 分單選)與 114 年(複選共 28 分)有選擇題,其餘八年全部是申論與計算。
作答規定:十年相同,卷面沒寫倒扣
卷首的注意事項,除了頁數之外十年相同:
「1. 請依序在答案卷上作答,並標明題號,不必抄題。 2. 答案必須寫在指定作答區內,否則依規定扣分。」
| 項目 | 師大的規定 |
|---|---|
| 答錯倒扣 | 十年卷面都沒有寫 |
| 作答方式 | 一律寫在答案卷(110 年的選擇題也是寫在答案卷,不是劃卡) |
| 抄題 | 不必 |
| 「依規定扣分」指的是 | 答案沒有寫在指定作答區內 |
114 年的第 3、4、6、7 題是複選題,卷上寫明「Points will only be given if all the correct statement(s) were picked」,全對才給分,卷面沒有寫倒扣。
給 116 年考生的準備方向
- 十年卷面都沒有寫倒扣,也不必抄題。114 年的複選題全對才給分。
- OS 與計組大致各半,111 到 115 年各 50 分沒變。計組方面,cache 十年都有,pipeline hazard 106 到 114 連九年,效能公式(CPI、clock rate)十年八年有。
- 題數 8 到 12 題。單題最高 20 分(107 年第 3 題、110 年第 8 題、112 年第 1、2 題),114 年最小的單題是 5 分,111 年最小是 3 分。
- 106、107、112、113 年都要求畫 process state diagram,106 與 112 年要畫 Gantt chart。
- 115 年有 4 頁,第 4 題附 57 列的 hex dump,題目給了 PDE 與 PTE 的格式。
- 115 年第 1 題限制至多兩句話,第 2 題限制一句話。
- 重複出題的例子見上方清單,有好幾題是隔幾年原題再出(system call 參數、process state diagram、Amdahl's Law),十年考古題都值得做過一遍。
本頁的分析是個人整理,不是官方資料,各章配分是逐題分類後加總的。106 年第九(三)題 round-robin 卷面沒有給 time quantum;107 年第 6 題與 109 年第 5 題的位址格式圖沒有用數字標出 segment number 的位元數;112 年第 5(a) 題的試卷把 8 位元印成 7 位元;112 年第 7 題與 113 年第 6 題取決於「register file 是否前半寫後半讀」的假設。各年度頁面已標註,作答時要在答案卷上註明假設。
最後更新:2026-10-22