108 年 國立高雄大學資訊工程學系碩士班《計算機結構與作業系統》
第 I-(1) 題2 分
有三個處理器 、 和 執行相同的指令集,各處理器的時脈速率與 Cycle per Instruction(CPI)如下:
的時脈速率為 ,CPI 為 。
的時脈速率為 ,CPI 為 。
的時脈速率為 ,CPI 為 。
哪一個處理器有最高的執行效能?
(A)
(B)
(C)
(D) 一樣快
登入後即可作答並保存紀錄。
第 I-(2) 題2 分
若以 IEEE 754 單精準度表示法呈現數字 ,下列何者正確?
(A)
(B)
(C)
(D)
登入後即可作答並保存紀錄。
第 I-(3) 題2 分
假設數據通道(Data Path)中的各階段分別有以下延遲:
🖼️【此處有附圖,請對照原卷】
在管道化及非管道化處理器中,時脈週期時間分別為多少?
(A)
(B)
(C)
(D)
登入後即可作答並保存紀錄。
核心觀念
管道化處理器每個時脈週期只通過一個管道階段,因此時脈週期至少要容納延遲最大的階段:
非管道化處理器在單一時脈週期內依序完成所有階段,因此週期時間是各階段延遲總和:
解題方法
原卷表格列出的各階段延遲為:IF 、ID 、EX 、MEM 、WB 。
管道化處理器的時脈週期由最慢的 MEM 階段決定:
非管道化處理器須在一個週期內完成五個階段:
第 I-(4) 題2 分
假設在有充分前饋(Forwarding)能力的管道化 MIPS 處理器中執行以下指令:
如果有危障(Hazard)以停滯(Stall)解決,請評估需要多少時脈週期完成指令執行?
(A)
(B)
(C)
(D)
登入後即可作答並保存紀錄。
第 I-(5) 題2 分
一筆資料若被存取,可能很快再次被存取,請問以上所描述的是甚麼特性?
(A) Prediction
(B) Speculation
(C) Spatial locality
(D) Temporal locality
登入後即可作答並保存紀錄。
第 I-(6) 題2 分
將週邊裝置的資料內容直接對映到電腦系統的記憶體位址內,程式以存取記憶體的方式即可存取裝置的資料或暫存器,此技術稱為:
(A) Direct memory access
(B) Memory-mapped file
(C) Memory-mapped I/O
(D) Uniform memory access
登入後即可作答並保存紀錄。
第 I-(7) 題2 分
可支援 Process 間函數或模組共用,當需要某函數的頁面時才載入該頁面,此技術稱為:
(A) Dynamic linking
(B) Dynamic loading
(C) Copy-on-write
(D) Demand paging
登入後即可作答並保存紀錄。
第 I-(8) 題2 分
以下那一種排程演算法,可能產生最大的平均反應時間(Response time)?
(A) Earliest-deadline first
(B) First-come first-served
(C) Shortest-job first
(D) Round-robin
登入後即可作答並保存紀錄。
第 I-(9) 題2 分
在 Critical Section 內持續等待,此稱為:
(A) Deadlock
(B) Spinlock
(C) Starvation
(D) Race condition
登入後即可作答並保存紀錄。
第 I-(10) 題2 分
假設某系統中有一個 Process 剛開始執行時,依序需存取以下分頁(Page):
請問可能產生分頁錯誤(Page Fault)的最大值與最小值,相差為多少?
(A)
(B)
(C)
(D)
登入後即可作答並保存紀錄。
第 II-(1) 題10 分
在記憶體階層架構中,有兩種基本的寫入機制:write-through 與 write-back,請解釋說明這兩種機制。
當要對於同一區塊中的多個各別字組做寫入動作時,哪種機制較佳?請說明原因。
登入後即可作答並保存紀錄。
第 II-(2) 題10 分
在一晶片中有多個處理器,如果這些處理器共用一個共同的實體位址空間,當透過快取來存取這些共用資料時,將引發快取一致性問題(cache coherence problem)。
請解釋此問題。有甚麼樣的機制能夠解決這種問題?請說明該機制運作。
登入後即可作答並保存紀錄。
第 II-(3) 題10 分
一個可以容納 資料的四路集合關聯式(4-way set associative)快取記憶體,以 位元定址,且每個快取記憶體區塊(cache block)大小為 個字組(word)。
每個快取記憶體區塊中的標籤(Tag)位元數為多少?
為了設計這個快取記憶體,共需要多少位元的硬體(包含 Valid bit、Tag 和 Data)?
(請給予計算過程,否則不予給分。)
登入後即可作答並保存紀錄。
第 II-(4) 題10 分
如果有一個分支(branch)指令一直重複出現以下的分支結果:
若使用一個兩位元的分支預測器(Branch Predictor Buffer)預測此分支指令的執行,分支預測器的狀態機如下圖,且起始狀態位於圖的右下角。
🖼️【此處有附圖,請對照原卷】
當分支指令的結果不斷重複時,預測器的準確度為何?
(請給予計算過程,否則不予給分。)
登入後即可作答並保存紀錄。
核心觀念
兩位元分支預測器會依目前狀態預測分支結果,再依實際結果轉移到下一個狀態。每次預測都要比較「預測結果」與「實際結果」;相同算一次正確。
解題方法
圖中初始狀態是右下角的 00,預測「不採取分支」;01 也預測不採取分支,10 與 11 則預測「採取分支」。依圖上的箭頭,狀態會隨實際結果轉移。
從初始狀態 00 開始,依序代入結果 T、NT、T、T、NT:
| 次序 | 原狀態 | 預測 | 實際結果 | 是否正確 | 下一狀態 |
|---|---|---|---|---|---|
| 1 | 00 | NT | T | 否 | 01 |
| 2 | 01 | NT | NT | 是 | 00 |
| 3 | 00 | NT | T | 否 | 01 |
| 4 | 01 | NT | T | 否 | 11 |
| 5 | 11 | T | NT | 否 | 10 |
第 II-(5) 題10 分
近年來 AI 人工智慧是熱門的應用,主機可透過加裝繪圖處理器(GPU)來提升 AI 應用的處理效能。
(a) 請闡述說明作業系統的核心(Kernel),主要是進行那三大單元的資源管理。
(b) 以 AI 影像辨識的應用為例,請比較主機硬體有無 GPU,對 Kernel 進行前述三大資源管理的影響。
登入後即可作答並保存紀錄。
核心觀念
作業系統核心(Kernel)負責管理電腦硬體資源,常見的三大類是處理器、記憶體與輸入/輸出裝置。核心透過行程排程、記憶體配置及裝置驅動程式等機制,讓多個程式安全且有效率地共用硬體。
解題方法
依原卷圖,第 5 題題幹從第 5 頁延續至第 6 頁,要求以 AI 影像辨識為例,比較有無 GPU 時,核心對前述三類資源的管理差異。因此先列出三類資源,再逐一說明影像資料與辨識運算如何使用它們。
(a) 核心管理的三大資源
- 處理器管理:管理行程與執行緒,決定其取得處理器的順序與時間,並處理切換與同步。
- 記憶體管理:配置與回收記憶體,管理虛擬記憶體、位址轉換及存取保護。
- 輸入/輸出裝置管理:透過裝置驅動程式管理硬體裝置,處理裝置存取、資料傳輸、中斷及緩衝等工作。
(b) AI 影像辨識有無 GPU 的差異
| 資源 | 沒有 GPU | 有 GPU |
|---|---|---|
| 處理器 | 影像前處理與模型推論主要由 CPU 執行。核心需安排 AI 程式和其他程式競用 CPU,運算量大時 CPU 負載較高。 | CPU 通常負責資料準備、工作派送及部分控制;大量可平行的推論運算交由 GPU 執行。核心與 GPU 驅動程式協調工作提交及裝置使用,可降低 CPU 的主要運算負擔。 |
| 記憶體 | 影像、模型參數及中間結果主要使用主記憶體,核心負責配置、回收與保護這些記憶體。 |
第 II-(6) 題10 分
考量使用者層(User level)與系統核心層(Kernel level)間的多執行緒對應模式(Multi-threading model)。
(a) 請解釋說明 Many-to-1 及 Many-to-Many 模式。
(b) 請比較說明兩種模式在「單核心多處理器(Multiple single-core CPUs)的機器」與「多核心單處理器(Single multi-core CPU)」的執行效能差異。
登入後即可作答並保存紀錄。
第 II-(7) 題10 分
虛擬記憶體管理(VMM)常會仰賴分頁表(Page table)。假設有一電腦系統支援 位元的邏輯位址(Logical address)空間及 的分頁大小,並已安裝 的實體記憶體。
(a) 請用圖文分別說明傳統單層式分頁表(Single level)及兩層式分頁表(Two level)的分頁系統之運作原理,其中兩層式分頁表假設每層均為 位元。
(b) 若有 、 兩個程式,分別佔 、 的連續邏輯位址空間,請問在前述兩種分頁表設計中,、 最多及最少各需要多少筆分頁記錄(Table entry)?請說明理由。
登入後即可作答並保存紀錄。
核心觀念
- 分頁大小 位元組,所以頁內偏移量 為 12 位元。
- 32 位元邏輯位址,頁號為 位元,單層表可有 個記錄,每筆記錄對應一個 4 KB 分頁。
- 實體記憶體 位元組,訊框號碼為 位元。
- 兩層式:外層 10 位元、內層 10 位元、偏移量 12 位元。外層表(目錄)每筆記錄指向一張內層表;每張內層表有 筆記錄,每筆對應一個 4 KB 分頁,所以一張內層表涵蓋 的邏輯位址,邊界每 4 MB 一次。
- 一個程式所需記錄筆數的極值,由它在「分頁邊界」與「4 MB 邊界」上的對齊方式決定。
解題方法
(a) 運作原理與圖示
單層式分頁表:
邏輯位址 (32 位元):
+--------------------+------------------+
| 頁號 p (20 位元) | 偏移量 d (12) |
+--------------------+------------------+
| |
v |
PTBR --> [ 分頁表:2^20 筆 ] |
| ... | |
| p -> [ 訊框號 f ] |
| ... | |
| |
v v
實體位址 (31 位元):
+--------------------+------------------+
| 訊框號 f (19 位元) | 偏移量 d (12) |
+--------------------+------------------+
- CPU 送出 ,MMU 由 PTBR 取得分頁表起點。
- 以 為索引直接取出第 筆記錄,得到訊框號碼 。
- 把 與 串接成實體位址。
- 缺點是表一定得配置完整的 筆(每筆約 4 位元組即約 4 MB),即使程式只用幾個分頁。
兩層式分頁表:
第 II-(8) 題10 分
磁碟機(HDD)、固態硬碟機(SSD)是目前主流的儲存設備,近年也有利用記憶體做為碟機(RAM Disk)的做法。
(a) 請說明三種主要的碟機空間配置方法(Disk space allocation method)類型。
(b) 請說明 HDD 與 RAM Disk 在空間配置時主要的考量差異,並說明採用前述三種配置方法的優劣。
登入後即可作答並保存紀錄。