??
(一)課程性質(zhì)
本課程是計算機科學(xué)與技術(shù)專業(yè)的核心課程之一,,屬于必修課程,。
操作系統(tǒng)”是計算機系統(tǒng)不可缺少的組成部分,,負(fù)責(zé)對系統(tǒng)中各種資源進行有效的管理和對各種活動進行正確的組織,,使整個計算機系統(tǒng)協(xié)調(diào)一致且高效地工作,指揮計算機系統(tǒng)正常運行,。操作系統(tǒng)基于硬件,,并對硬件實施管理,并構(gòu)成對所有軟件運行的支持平臺,,給用戶使用計算機而提供方便靈活友好的接口,。
本課程的先修課為計算機組成原理、微機原理,、數(shù)據(jù)結(jié)構(gòu),、高級語言程序設(shè)計;后續(xù)課程為數(shù)據(jù)庫系統(tǒng)原理,、計算機網(wǎng)絡(luò),、分布式系統(tǒng)等。
(二)教學(xué)目的
通過本課程的學(xué)習(xí),,使學(xué)生在深刻理解計算機系統(tǒng)整體概念的基礎(chǔ)之上,,掌握操作系統(tǒng)的基本內(nèi)容及實現(xiàn)方法,掌握操作系統(tǒng)對計算機系統(tǒng)中各種資源的管理和控制功能,,從而使學(xué)生具備一定的系統(tǒng)軟件開發(fā)技能,,為以后從事的研究、開發(fā)工作(如設(shè)計,、分析或改進各種系統(tǒng)軟件和應(yīng)用軟件)提供必要的軟件基礎(chǔ)和基本技能,。
(三)教學(xué)內(nèi)容
本課程內(nèi)容包括:緒論,是對操作系統(tǒng)的一般性描述,,包括什么是操作系統(tǒng),,操作系統(tǒng)在整個計算機系統(tǒng)的地位及其發(fā)展歷史,,它的功能、分類等,;作業(yè)管理和Linux用戶接口,,介紹作業(yè)和操作系統(tǒng)用戶接口,包括作業(yè)的基本概念和作業(yè)的建立過程,、Linux介紹和它所提供的用戶接口等,;進程管理,主要介紹進程和線程的概念,、進程控制、進程同步/互斥,、死鎖,、進程間通信、線程等,;處理機調(diào)度,,主要介紹作業(yè)調(diào)度、進程調(diào)度,、各種調(diào)度算法及其評價等,;存儲管理,介紹常見存儲管理的方法,,虛擬存儲管理的實現(xiàn)等,;Linux進程和存儲管理;文件系統(tǒng),,包括文件系統(tǒng)的概念,、文件結(jié)構(gòu)和文件存取、文件目錄管理,、Linux文件管理等,;設(shè)備管理;面向?qū)ο蟮牟僮飨到y(tǒng)和分布式操作系統(tǒng),。
(四)教學(xué)時數(shù)
課內(nèi)學(xué)時:60
(五)教學(xué)方式
本課程的教學(xué)環(huán)節(jié)包括:課堂講授,、習(xí)題課、課堂討論,、批改作業(yè),、課外輔導(dǎo)、實驗相結(jié)合,,并逐步采用CAI,、網(wǎng)絡(luò)教學(xué)等教學(xué)手段。通過本課程各個教學(xué)環(huán)節(jié)的教學(xué),,重點培養(yǎng)學(xué)生的自學(xué)能力,、分析問題解決問題的能力,。
教學(xué)方法:采用啟發(fā)式教學(xué),鼓勵學(xué)生自己針對某種操作系統(tǒng)進行分析和研究,,培養(yǎng)學(xué)生的自學(xué)能力,,以“少而精”為原則,精選教學(xué)內(nèi)容,,精講多練,,調(diào)動學(xué)生學(xué)習(xí)的主觀能動性。
教學(xué)手段:開展電子教案,、CAI課件的研制,、引進和應(yīng)用,研制多媒體教學(xué)系統(tǒng),。
考試環(huán)節(jié):考試形式采用筆試,,考試題型分為:填空題、選擇題,、判斷題,、簡答題、分析設(shè)計題,。
第1章 緒論
教學(xué)要點:
操作系統(tǒng)的概念及其發(fā)展歷史,、分類,操作系統(tǒng)功能,,研究操作系統(tǒng)的觀點,。本章是對操作系統(tǒng)的一般性描述。
教學(xué)時數(shù):4學(xué)時
教學(xué)內(nèi)容:
1.1 操作系統(tǒng)概念 (0.5學(xué)時)
掌握操作系統(tǒng)的概念及其在計算機系統(tǒng)中的作用,。
1.2 操作系統(tǒng)的發(fā)展歷史 (1學(xué)時)
了解操作系統(tǒng)的發(fā)展歷史,。
1.3 操作系統(tǒng)的基本類型 (1學(xué)時)
理解批處理系統(tǒng)、分時操作系統(tǒng),、實時操作系統(tǒng),、個人計算機操作系統(tǒng)、網(wǎng)絡(luò)和分布式操作系統(tǒng)的特點,。
1.4 操作系統(tǒng)的功能 (1學(xué)時)
掌握操作系統(tǒng)的處理機管理,、存儲管理、設(shè)備管理,、文件管理和用戶接口五大功能,。
1.5 研究操作系統(tǒng)的幾種觀點 (0.5學(xué)時)
了解操作系統(tǒng)是計算機資源的管理者觀點,用戶界面觀點,,進程管理觀點,。
考核要求:
1. 識記:什么是操作系統(tǒng),操作系統(tǒng)的分類,。
2. 領(lǐng)會:操作系統(tǒng)的功能,,操作系統(tǒng)的發(fā)展歷史及研究觀點,。
第2章 作業(yè)管理和Linux用戶接口
教學(xué)要點:
作業(yè)的概念和建立過程,操作系統(tǒng)為用戶提供的接口,,Linux用戶接口,,Linux shell編程。
教學(xué)時數(shù):8學(xué)時
教學(xué)內(nèi)容:
2.1 作業(yè)的基本概念 (1學(xué)時)
掌握作業(yè)的定義,,作業(yè)的組織,。
2.2 作業(yè)的建立過程 (1學(xué)時)
掌握作業(yè)的輸入方式、JCB的建立,;掌握SPOOLING系統(tǒng),。
2.3 用戶接口 (1學(xué)時)
掌握作業(yè)控制、系統(tǒng)調(diào)用,;了解用戶接口的演變,。
2.4 分時作業(yè)管理 (0.5學(xué)時)
了解分時作業(yè)管理。
2.5 Linux簡介 (1學(xué)時)
了解Linux的發(fā)展歷史和發(fā)展前景,,Linux系統(tǒng)的特點,Linux系統(tǒng)結(jié)構(gòu),。
2.6 Linux的Shell (1.5學(xué)時)
理解Shell提供的命令種類,,程序語言Shell,make命令,。
2.7 Linux的系統(tǒng)調(diào)用 (1學(xué)時)
理解有關(guān)設(shè)備管理的系統(tǒng)調(diào)用,,有關(guān)文件系統(tǒng)的系統(tǒng)調(diào)用,有關(guān)進程控制的系統(tǒng)調(diào)用,,有關(guān)進程通信的系統(tǒng)調(diào)用,,有關(guān)存儲管理的系統(tǒng)調(diào)用。
2.8 Linux桌面環(huán)境KDE介紹 (1學(xué)時)
了解Linux桌面環(huán)境KDE介紹,。
考核要求:
1. 識記并領(lǐng)會:作業(yè)的概念,,JCB的建立,SPOOLING系統(tǒng),,操作系統(tǒng)用戶接口,。
2. 分析:Linux的Shell,Linux的系統(tǒng)調(diào)用,。
第3章 進程管理
教學(xué)要點:
進程的概念和描述,,進程的同步和互斥,進程通信,,死鎖,。
教學(xué)時數(shù):10學(xué)時
教學(xué)內(nèi)容:
3.1 進程和線程的概念 (1學(xué)時)
掌握程序的并發(fā)執(zhí)行、進程的定義,、作業(yè)和進程的關(guān)系,;了解線程的概念,。
3.2 進程的描述 (1學(xué)時)
掌握進程控制塊PCB,進程上下文,。
3.3 進程狀態(tài)及其轉(zhuǎn)換 (1學(xué)時)
掌握進程的三種基本狀態(tài):執(zhí)行狀態(tài),、等待狀態(tài)、就緒狀態(tài),,三種狀態(tài)間的轉(zhuǎn)換,。
3.4 進程控制 (1學(xué)時)
理解進程的創(chuàng)建與撤消,進程的阻塞與喚醒,。
3.5 進程互斥 (2學(xué)時)
掌握資源共享所引起的制約,,互斥的加鎖實現(xiàn),信號量和P,、V原語,,用P、V原語實現(xiàn)進程互斥,。
3.6 進程同步 (1學(xué)時)
掌握同步的概念,,私用信號量,用P,、V原語實現(xiàn)同步,;理解生產(chǎn)者——消費者問題。
3.7 進程通信 (1.5學(xué)時)
理解進程的通信方式,,消息緩沖機制,,郵箱通信。
3.8 死鎖問題 (1.5學(xué)時)
掌握死鎖的概念,,死鎖的排除方法,,銀行家算法。
考核要求:
1. 識記:進程的概念和描述,,進程的互斥和同步,,死鎖的產(chǎn)生條件,線程的概念,。
2. 領(lǐng)會:進程控制,,進程通信, 死鎖的排除方法和各種算法,。
第4章 處理機調(diào)度
教學(xué)要點:
作業(yè)調(diào)度,,進程調(diào)度,各種調(diào)度算法及其評價,,多處理機調(diào)度機制,。
教學(xué)時數(shù):6學(xué)時
教學(xué)內(nèi)容:
4.1 分級調(diào)度 (1學(xué)時)
作業(yè)的狀態(tài)和轉(zhuǎn)換,調(diào)度的層次,。
4.2 作業(yè)調(diào)度 (1學(xué)時)
掌握作業(yè)調(diào)度功能,,作業(yè)調(diào)度目標(biāo)與性能衡量,。
4.3 進程調(diào)度 (1學(xué)時)
掌握進程調(diào)度的功能,進程調(diào)度的時機,,進程上下文切換,;理解進程調(diào)度性能評價。
4.4 調(diào)度算法 (1學(xué)時)
掌握先來先服務(wù)調(diào)度算法,,輪轉(zhuǎn)法,,多級反饋輪轉(zhuǎn)法,優(yōu)先級法,,靜態(tài)優(yōu)先級,,動態(tài)優(yōu)先級。
4.5 算法評價 (1學(xué)時)
理解FCFS方式的調(diào)度性能分析,,輪轉(zhuǎn)法調(diào)度性能評價,,線性優(yōu)先級法的調(diào)度性能。
4.6 多處理機調(diào)度 (1學(xué)時)
了解多處理機系統(tǒng)的概念,,多處理機操作系統(tǒng)的分類,,多處理機系統(tǒng)調(diào)度策略。
考核要求:
1. 識記:作業(yè)調(diào)度的功能和目標(biāo),。
2. 領(lǐng)會:進程調(diào)度,,調(diào)度算法的性能評價。
3. 分析及應(yīng)用進程調(diào)度算法,。
第5章 存儲管理
教學(xué)要點:
虛擬存儲器的概念,分區(qū)存儲管理,,頁式存儲管理,,段式與段頁式存儲管理。
教學(xué)時數(shù):12學(xué)時
教學(xué)內(nèi)容:
5.1 存儲管理的功能 (1.5學(xué)時)
掌握虛擬存儲器,,內(nèi)外存數(shù)據(jù)傳輸?shù)目刂?,?nèi)存的分配與回收;理解地址變換,,內(nèi)存信息的共享與保護,。
5.2 單道環(huán)境下的存儲管理 (0.5學(xué)時)
理解單一連續(xù)區(qū)分配;了解單一連續(xù)區(qū)管理方式的優(yōu)缺點,。
5.3 分區(qū)存儲管理 (2學(xué)時)
理解分區(qū)管理基本原理,,分區(qū)的分配與回收。
5.4 覆蓋與交換技術(shù) (1學(xué)時)
理解覆蓋技術(shù),,交換技術(shù),。
5.5 頁式管理 (3學(xué)時)
掌握頁式管理的基本原理,靜態(tài)頁面管理,,動態(tài)頁式管理,,存儲保護,;理解請求頁式管理中的置換算法;了解頁式管理的優(yōu)缺點,。
5.6 段式與段頁式管理 (3學(xué)時)
掌握段式管理的基本思想,,段頁式管理的基本思想;理解段式管理的實現(xiàn)原理,,段頁式管理的實現(xiàn)原理,;了解段式管理的優(yōu)缺點。
5.7 局部性原理和抖動問題 (1學(xué)時)
掌握局部性原理,;理解工作集概念,。
考核要求:
1. 識記:存儲管理的功能,虛擬存儲器的概念,,頁式管理的基本原理,,動態(tài)頁式管理,頁式管理存儲保護,,段式管理和段頁式管理的基本思想,,局部性原理。
2. 領(lǐng)會:地址變換,,分區(qū)管理的基本原理,,分區(qū)的分配與回收,靜態(tài)頁式管理,,段頁式管理的實現(xiàn)原理,,工作集概念。
3. 應(yīng)用:請求頁式管理中的置換算法,。
第6章 Linux進程和存儲管理
教學(xué)要點:
Linux進程結(jié)構(gòu),、進程控制,Linux進程調(diào)度與交換,,進程間通信,,Linux存儲管理方式。
教學(xué)時數(shù):8學(xué)時
教學(xué)內(nèi)容:
6.1 Linux進程和存儲管理介紹 (1學(xué)時)
6.2 Linux進程結(jié)構(gòu) (1學(xué)時)
掌握Linux進程的概念,,進程的虛地址結(jié)構(gòu),,進程上下文,進程的狀態(tài)和狀態(tài)轉(zhuǎn)換,。
6.3 Linux進程控制 (1學(xué)時)
了解Linux啟動和進程樹的形成,,理解Linux進程控制。
6.4 Linux進程調(diào)度與交換 (1學(xué)時)
掌握Linux進程調(diào)度,,交換,。
6.5 進程間通信 (2學(xué)時)
掌握Linux的低級通信,進程間通信IPC。
6.6 Linux存儲管理 (2學(xué)時)
掌握Linux虛存空間劃分和管理思想,;理解Linux的內(nèi)存分配與釋放,,地址變換過程,Linux的請求調(diào)頁技術(shù),。
考核要求:
1. 領(lǐng)會:Linux進程控制,,內(nèi)存的分配與釋放,Linux進程結(jié)構(gòu),。
2. 分析:Linux進程調(diào)度,,進程間通信,Linux的頁式存儲管理,。
第7章 文件系統(tǒng)
教學(xué)要點:
文件系統(tǒng)的作用,,文件的結(jié)構(gòu)與存取,文件的目錄管理,。
教學(xué)時數(shù):12學(xué)時
教學(xué)內(nèi)容:
7.1 文件系統(tǒng)的概念 (1學(xué)時)
掌握文件系統(tǒng)的引入,,文件與文件系統(tǒng)的概念,文件的分類,。
7.2 文件的邏輯結(jié)構(gòu)與存取方法 (1學(xué)時)
理解文件的邏輯結(jié)構(gòu),,存取方法,順序存取法,,隨機存取法,,按鍵存取法。
7.3 文件的物理結(jié)構(gòu)與存儲設(shè)備 (1學(xué)時)
理解文件的物理結(jié)構(gòu):連續(xù)文件,,串聯(lián)文件,,索引文件;理解文件存儲設(shè)備:順序存取設(shè)備,,直接存取設(shè)備,。
7.4 文件存儲空間管理 (1學(xué)時)
掌握三種不同的空閑塊管理方法:空閑文件目錄,空閑塊鏈,,位示圖。
7.5 文件目錄管理 (2學(xué)時)
掌握文件的組成,,文件目錄,,可共享的文件目錄,目錄管理,。
7.6 文件存取控制 (1學(xué)時)
理解文件存取控制的目標(biāo),,存取控制方法。
7.7 文件的使用 (0.5學(xué)時)
了解文件的使用,。
7.8 文件系統(tǒng)的層次模型 (0.5學(xué)時)
了解文件系統(tǒng)的層次模型,。
7.9 Linux文件系統(tǒng)的特點與數(shù)據(jù)結(jié)構(gòu)、文件類別 (1.5學(xué)時)
掌握Linux文件系統(tǒng)的特點,Linux文件分類,,文件系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)及其關(guān)系,。
7.10 Linux文件系統(tǒng)的資源管理和地址映射 (1.5學(xué)時)
理解磁盤i-node的分配與釋放,內(nèi)存i-node的分配與釋放,,系統(tǒng)打開文件表的分配與釋放,,地址映射。
7.11 Linux系統(tǒng)中的目錄與搜索方法,,以及文件系統(tǒng)的系統(tǒng)調(diào)用 (1學(xué)時)
理解散列搜索法,,算法描述;理解Linux系統(tǒng)調(diào)用,。
考核要求:
1. 識記:文件系統(tǒng)的功能,,文件系統(tǒng)的層次模型。
2. 領(lǐng)會:文件的邏輯與物理結(jié)構(gòu),,文件存取方法及其存取控制,,文件目錄管理。
3. 分析:Linux文件系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)及其相互關(guān)系,,Linux文件系統(tǒng)的資源管理和地址映射,、系統(tǒng)中的目錄與搜索方法,Linux文件系統(tǒng)的系統(tǒng)調(diào)用,。
4. 應(yīng)用層次:文件的使用,。
第8章 設(shè)備管理
教學(xué)要點:
主要介紹設(shè)備管理的基本概念,包括中斷,、緩沖,、設(shè)備分配和控制。
教學(xué)時數(shù):8學(xué)時
教學(xué)內(nèi)容:
8.1 引言 (0.5學(xué)時)
掌握設(shè)備的類別,,設(shè)備管理的功能和任務(wù),。
8.2 數(shù)據(jù)傳送控制方式 (1學(xué)時)
掌握程序直接控制方式,中斷方式,,DMA方式,,通道控制方式。
8.3 中斷技術(shù) (1學(xué)時)
掌握中斷的基本概念,,中斷的分類與優(yōu)先級,,軟中斷;理解中斷處理過程,。
8.4 緩沖技術(shù) (1學(xué)時)
掌握緩沖的目標(biāo),,緩沖的種類,緩沖池的管理,。
8.5 設(shè)備分配 (1學(xué)時)
掌握設(shè)備分配用的數(shù)據(jù)結(jié)構(gòu),,設(shè)備分配的原則,,設(shè)備分配辦法。
8.6 I/O進程控制與設(shè)備驅(qū)動程序 (0.5學(xué)時)
了解I/O控制的功能,,I/O控制的實現(xiàn),,設(shè)備驅(qū)動程序。
8.7 Linux的中斷和異常處理 (1學(xué)時)
理解中斷和異??偪剡^程,,中斷分類和處理,異常處理,。
8.8 Linux緩沖區(qū)管理 (1學(xué)時)
掌握Linux緩沖池結(jié)構(gòu),,緩沖區(qū)的分配與釋放,緩沖區(qū)數(shù)據(jù)讀寫,。
8.9 塊設(shè)備驅(qū)動與字符設(shè)備驅(qū)動 ( 1學(xué)時)
理解塊設(shè)備驅(qū)動:設(shè)備配置,,設(shè)備驅(qū)動程序的接口;理解字符設(shè)備驅(qū)動:主要數(shù)據(jù)結(jié)構(gòu),,包括緩沖區(qū)結(jié)構(gòu),、緩沖隊列的控制結(jié)構(gòu)、字符設(shè)備開關(guān)表,。
考核要求:
1. 識記:數(shù)據(jù)傳送控制方式,,緩沖技術(shù),設(shè)備分配,。
2. 領(lǐng)會:中斷技術(shù),,Linux緩沖區(qū)管理,Linux的中斷和異常處理,。
第9章 面向?qū)ο?、網(wǎng)絡(luò)、分布式操作系統(tǒng)
教學(xué)要點:
介紹面向?qū)ο蟮牟僮飨到y(tǒng)和網(wǎng)絡(luò)操作系統(tǒng),,以及分布式操作系統(tǒng)的概念,。
教學(xué)時數(shù):4學(xué)時
教學(xué)內(nèi)容:
9.1 面向?qū)ο蠛筒僮飨到y(tǒng) (1學(xué)時)
了解面向?qū)ο蟮幕靖拍睿嫦驅(qū)ο蟛僮飨到y(tǒng)的概念及其開發(fā)方法,,面向?qū)ο蟛僮飨到y(tǒng)的分類,。
9.2 網(wǎng)絡(luò)操作系統(tǒng) (1學(xué)時)
了解網(wǎng)絡(luò)操作系統(tǒng)的構(gòu)成,文件與打印服務(wù),,電子郵件服務(wù),。
9.3 分布式操作系統(tǒng) (2學(xué)時)
了解進程遷移,分布進程同步,,分布式進程通信,,分布式系統(tǒng)中的死鎖,。
考核要求:
識記面向?qū)ο蟛僮飨到y(tǒng)的概念,,分布式操作系統(tǒng)的基本概念;領(lǐng)會網(wǎng)絡(luò)操作系統(tǒng)的構(gòu)成與服務(wù)。