考點分析 / 師大 / 115

115 師大資工所硬體考點分析

第 4 題丟一整頁記憶體 hex dump 要你手動走完兩層頁表,15 分是師大硬體六年最硬的一題。

題型與配分

科目「計算機系統」,適用系所:資訊工程學系,全卷 4 頁、9 大題、100 分(頁數是六年最多,因為第 4 題的記憶體 dump 獨佔一整頁)。

題號配分歸屬主題
110%OS保護核心需要哪些硬體支援
210%OSinode 是什麼
315%OSRound-Robin 的平均周轉時間
415%OS兩層頁表的位址轉換(看 hex dump)
510%計組時脈率反推
610%計組MIPS 位移與邏輯運算
710%計組乘除法合併硬體的暫存器配置
810%計組單週期資料路徑的最小週期時間
910%計組快取的 tag 位元與總位元數

OS 50 分(第 1–4 題)、計算機組織 50 分(第 5–9 題),師大連續五年(111–115)精準對半、一分不差。

沒有倒扣,全卷申論與計算題。第 1、2 題明寫「用一句話/至多兩句」 ⇒ 這 20 分要的是精準,不是長度——寫一大段反而容易把關鍵字埋掉。

第 4 題是師大硬體六年來最硬的一題:丟一整頁 57 列的記憶體 hex dump,要你自己找到頁目錄、讀出 PDE、跳到頁表、讀出 PTE、算出實體位址。這是 OSTEP(《Operating Systems: Three Easy Pieces》)分頁章節作業的原始題型。

逐題考點

  • 第 1 題(10%)|保護作業系統核心需要哪些硬體支援(題目限制「至多兩句」)
  • 考的是 OS 保護機制的硬體基礎,要在兩句裡涵蓋執行模式、記憶體、CPU 控制權這幾個面向
  • 只寫出一種機制的名稱拿不到滿分——要說明硬體怎麼強制執行
  • 第 2 題(10%)|inode 是什麼(題目限制「一句話」)
  • 一句話裡要講到它的數量對應關係、存了哪些東西
  • 想想檔名存在哪裡——這是最容易被忽略、也最能展現理解的一點,也能連到 hard link 的原理
  • 第 3 題(15%)|Round-Robin(時間量 3)的平均周轉時間
  • 這題的勝負全在一條規則:時間量用完的程序,與「這段期間新到達者」誰先排進佇列
  • 問的是 turnaround time 不是 waiting time,不要再減掉 burst
  • 第 4 題(15%)|兩層頁表的位址轉換——師大硬體六年來最硬的一題
  • 題目丟一整頁 57 列的記憶體 hex dump,要自己找到頁目錄、讀出 PDE、跳到頁表、讀出 PTE、算出實體位址
  • 這是 OSTEP(《Operating Systems: Three Easy Pieces》)分頁章節作業的原始題型
  • 第一步是切開虛擬位址:由頁面大小得 offset 位元數;由「一頁裝得下幾個條目」得每層索引的位元數
  • 每一層都要先檢查 VALID 位元再往下走
  • 讀 dump 的訣竅:先搞清楚 VALID 位元在條目的哪個位置,無效的條目可以快速跳過;數位元組時固定幾個一組數,用筆尖逐格點,一格都不能跳
  • 第 5 題(10%)|時脈率反推:兩顆處理器都要把執行時間縮短 20%,但 CPI 會增加 20%
  • 把新舊執行時間的比值寫成一個等式,看看原本的 CPI 與時脈在式子裡會不會留下來
  • 只把時脈提高 20% 是最常見的錯法——忘了 CPI 也同時惡化了
  • 第 6 題(10%)|MIPS 位移與邏輯運算後的暫存器內容
  • (a) 左移幾位+OR、(b) 右移幾位+andi
  • 全題最大的陷阱:andi 的立即數怎麼擴展到 32 位元。邏輯類與算術類立即數指令的擴展方式不同,記錯方向會讓高 16 位元算錯
  • srl 與 sra 的差別——題目用的是哪一個要看清楚
  • 逐個 hex digit 做位元運算比攤成 32 個位元快得多
  • 第 7 題(10%)|乘除法合併硬體的暫存器配置與位移方向
  • 題目已示範「被乘數放在 32 位元的那個暫存器、不位移」,要你答乘數與商各放哪裡、往哪個方向位移
  • 要能畫出 Patterson & Hennessy 的乘法器與除法器硬體,比較兩者的結構,就能看出為什麼它們能共用同一組暫存器
  • 第 8 題(10%)|單週期資料路徑的最小週期時間,且只需支援條件式 PC 相對分支
  • 必須真的去追路徑,不能把所有延遲加起來
  • 題目限定「只支援 beq」,要想清楚 beq 會走過資料路徑上的哪些元件、哪些用不到
  • 列出所有候選路徑逐條比較;ALU 的 Zero 輸出延遲算在哪裡、多工器要不要算這些細節要想清楚
  • 第 9 題(10%)|快取的 tag 位元數與總位元數
  • 「4096 個 double-word」講的是資料容量還是區塊數,要先判斷清楚
  • 總位元數要包含資料、tag 與 valid,valid 位元不能忘
  • 位址是 64 位元不是 32 位元——習慣 32 位元的話 tag 會算錯

這份考卷的難點

  1. 第 4 題要在一頁 57 列、每列 32 個位元組的 dump 裡精準數到指定位置。 數錯一格,整題 15 分全沒。這題還要同時處理兩層索引的切法,是六年來單題難度最高的一題。
  2. 第 8 題必須真的去追路徑,不能把延遲全部加起來。 題目限定的指令類型會影響哪些元件在關鍵路徑上——看到延遲最大的元件就直接加進去是刻意設的誘餌。
  3. 第 6(b) 題的 andi 立即數擴展。 記錯方向會讓高 16 位元算錯。
  4. 第 5 題要同時處理「時間縮短 20%」與「CPI 惡化 20%」兩個變動。 兩個因子要一起進到同一個等式裡——只想到其中一個就會少乘一項。
  5. 第 9(b) 題有三個容易漏的細節:容量的意義、valid 位元、位址寬度。
  6. 第 1、2 題各 10 分卻限制「一到兩句」。 20 分靠的是關鍵字密度。

準備建議

  • 115 年的兩層分頁 dump 題值得專門練一輪。 這是 OSTEP 分頁章節作業的原始題型,網路上有大量同款題目。練習重點:(1) 算出每層索引的位元數、(2) 從 dump 裡數出正確的位元組、(3) 每一層都要先檢查 VALID 位元
  • 師大的位址轉換題兩種都考過:111 年的分段(segmentation) 與 115 年的兩層分頁。兩種的共通點是「每一步都要驗證合法性」
  • 單週期資料路徑的關鍵路徑分析(第 8 題)要練到能對五種指令(R-type、lw、sw、beq、j)分別列出走過哪些元件
  • MIPS 立即數的擴展規則(第 6 題):邏輯類與算術類的差別,以及兩種右移的差別
  • 乘除法合併硬體(第 7 題):兩種硬體的暫存器配置與位移方向要能畫出來
  • CPU 效能方程式的變形要練熟(第 5 題)。當題目同時動兩個變數時,先把新舊比值寫成一個等式再解,不要分開想
  • 快取的總位元數(第 9 題):「容量」給的通常是資料容量,要先換算成區塊數
  • 簡答題要抓關鍵字不要抓字數(第 1、2 題)

想看完整逐題詳解?

國立臺灣師範大學 110–115 全年度完整詳解共 190 頁,逐題推導。

購買 · NT$ 850 先看試閱

其他年度與考科