課程介紹

課程名稱:作業系統概論(3學分/3學時)

課程總學習目標:

本課程目的在協助學生建立對現代作業系統核心機制與系統架構的完整認知。學生將學習作業系統如何扮演硬體資源管理者與應用程式介面的角色,深入理解程序管理、CPU 排程、記憶體分配、程序同步與儲存系統等關鍵技術。完成本課程後,學生將具備分析系統效能、解構作業系統運作流程的能力,並能將這些系統層級的思維與原理,靈活運用於後續的高效能軟體開發與進階系統設計實務中。

 

各章學習目標:

1 : 作業系統與計算機軟體簡介。

 

本章目標在於幫助學生理解作業系統的基本概念、發展歷程及其在計算機架構中的核心定位。學生將學習作業系統如何作為硬體與使用者之間的抽象介面,掌握中斷驅動架構、系統呼叫(System Calls)的運作機制,並能清楚區分雙重模式(User Mode Kernel Mode)的操作差異,進而建立對保護機制與系統資源管理全貌的基礎認知。

 

2: 程序與執行緒。

 

本章重點在於剖析作業系統中動態執行的基本單位。學生將學習程序(Process)的生命週期與狀態轉移模型;同時將深入探討執行緒(Thread)與多執行緒程式設計的概念,比較使用者層級與核心層級執行緒的差異。學習結束後,學生能評估多核心架構下的併發執行效能,並理解現代作業系統如何進行多工作業管理。

 

3: CPU 排程演算法。

 

本章重點在培養學生分析與評估 CPU 資源分配策略的能力。學生將學習 CPU 排程器的運作時機,並區分強佔式與非強佔式排程的根本差異。本章將詳細探討 FCFSSJFPriority SchedulingRound Robin 以及多層佇列等經典排程演算法,學生將學會計算平均等待時間與週轉時間,進而具備評估不同系統環境下排程策略優劣的能力。

 

4: 程序同步與臨界區段問題。

 

本章聚焦於多程序或多執行緒環境下的併發控制與資料一致性問題。學生將理解臨界區段(Critical-Section)的定義,並掌握解決競爭條件(Race Conditions)必須滿足的三大必要條件。透過學習互斥鎖(Mutex)、號誌(Semaphore) Monitor 等同步工具的原理與應用,學生將能夠分析經典的程序同步問題,並設計出避免資料衝突的併發程式架構。

 

5:死結。

 

本章學習目標為理解多工作業環境中資源競爭導致的死結(Deadlock)現象及其處理解決方案。學生將掌握死結發生的四大必要條件,並學會運用資源分配圖進行系統狀態分析。此外,本章將深入比較死結預防(Prevention)、死結避免(Avoidance,如銀行家演算法)、死結偵測與恢復機制的取捨,使學生具備設計穩定且無死結系統的能力。

 

6:記憶體管理。

 

本章學習目標為讓學生掌握實體記憶體的分配、定址與管理機制。學生將學習邏輯位址與實體位址的轉換原理,並理解記憶體管理單元(MMU)的作用。本章將詳細分析連續記憶體分配技術及其產生的碎片問題,並進一步探討分頁(Paging)與分段(Segmentation)機制的運作架構與頁表設計,使學生建立完整的記憶體抽象化概念。

 

7:虛擬記憶體管理。

 

本章目標為協助學生理解如何打破實體記憶體限制,運用虛擬記憶體技術提升系統資源利用率。學生將學習需求分頁(Demand Paging)機制與頁面錯誤(Page Fault)的處理流程,並掌握 FIFOOPTLRU 等頁面置換演算法的運作原理與效能評估。此外,學生亦將理解猛移現象(Thrashing)現象的成因與預防策略,掌握虛擬記憶體的調校技巧。

 

8:大容量儲存結構與磁碟排程。

 

本章學習重點為輔助儲存裝置(如 HDD SSD)的實體結構與 I/O 操作管理。學生將理解磁碟的幾何結構與讀寫頭運作方式,並深入學習 FCFSSSTFSCANC-SCAN 等磁碟排程演算法,分析其對減少尋道時間與提升 I/O 效率的影響。同時,本章也將介紹 RAID 架構的等級與容錯機制,培養學生規劃高可靠度儲存系統的能力。

 

9:檔案系統。

 

本章學習重點為剖析作業系統如何提供抽象化的資料儲存與存取介面。學生將學習檔案與目錄結構的抽象概念、目錄實作方式及檔案權限控制。此外,本章將深入探討檔案系統的底層實作技術,包括控制塊(FCB)、連續/鏈結/索引分配等磁區指派策略,以及空閒空間管理機制,使學生建立從高階介面到底層儲存組織的完整檔案系統認知。

 

三、學分數:3

 

請先報名此課程才可瀏覽教材