(1)本教材是課程組教師在20年的教學(xué)實(shí)踐基礎(chǔ)上,針對一般本科院校及應(yīng)用類本科院校計算機(jī)相關(guān)專業(yè)學(xué)生的學(xué)習(xí)特點(diǎn)所編寫。
(2)結(jié)構(gòu)清晰,內(nèi)容精煉,實(shí)用。本書本書從計算機(jī)資源管理者的角度,按三學(xué)分(64學(xué)時間)的要求系統(tǒng)、全面、準(zhǔn)確地闡述了操作系統(tǒng)的概念、原理和方法。
(3)可讀性強(qiáng)。通過增加一些實(shí)際生活中的案例豐富對抽象的操作系統(tǒng)概念及原理的理解,增強(qiáng)學(xué)生的學(xué)習(xí)興趣,并通過引入貫穿在全文各章節(jié)中的教學(xué)用操作系統(tǒng)實(shí)例分析,進(jìn)一步增加教材的實(shí)踐性,通過理論與實(shí)踐的緊密結(jié)合幫助學(xué)生深入理解操作系統(tǒng)的基本原理、設(shè)計方法和實(shí)現(xiàn)技術(shù),增強(qiáng)學(xué)生分析問題和解決問題的能力。
(4)本書結(jié)合當(dāng)前大數(shù)據(jù)技術(shù)和移動互聯(lián)技術(shù)的發(fā)展,增加了一章節(jié),專門介紹了移動互聯(lián)背景下的操作系統(tǒng)的原理和特點(diǎn),以及一些典型應(yīng)用。
現(xiàn)代操作系統(tǒng)是一個十分龐大且復(fù)雜的系統(tǒng),操作系統(tǒng)的設(shè)計對整個計算機(jī)系統(tǒng)的總體功能和性能都有著重要的影響。理解操作系統(tǒng)的基本原理,了解真正的操作系統(tǒng)的實(shí)際運(yùn)用,無論對計算機(jī)系統(tǒng)的設(shè)計者還是使用者都十分重要。
本書所有參與者都長期工作在操作系統(tǒng)課程教學(xué)第一線,從事操作系統(tǒng)課程的教學(xué)和相關(guān)科研工作,熟悉學(xué)生對操作系統(tǒng)概念、原理、技術(shù)及應(yīng)用等方面的理解程度和疑難問題。為此,本教材在內(nèi)容的選取上注重基礎(chǔ)性和先進(jìn)性;在內(nèi)容的組織上注重邏輯性、完整性和關(guān)聯(lián)性;在講解上深入淺出,具有易讀、易懂的特點(diǎn)。全書共分為9章,每章開始都包含簡明扼要的導(dǎo)語,每章結(jié)束都有對該章內(nèi)容邏輯清晰的梳理和小結(jié),每章都配備具有較強(qiáng)針對性的習(xí)題,既強(qiáng)調(diào)基礎(chǔ)概念的掌握,又包含提升能力的問答和綜合分析。
本書9章內(nèi)容的具體安排如下:
第1章介紹了操作系統(tǒng)的概念、發(fā)展、基本特征、主要功能以及結(jié)構(gòu)設(shè)計;第2章介紹了操作系統(tǒng)的用戶接口,程序接口和系統(tǒng)調(diào)用;第3章深入闡述了進(jìn)程和線程的基本概念和原理,包括進(jìn)程狀態(tài)與控制、進(jìn)程同步、進(jìn)程通信、死鎖和線程;第4章系統(tǒng)介紹了操作系統(tǒng)的調(diào)度層次、調(diào)度隊列模型及調(diào)度準(zhǔn)則、調(diào)度算法和實(shí)時調(diào)度;第5章詳細(xì)分析了三種基本存儲管理方式以及虛擬存儲管理方式;第6章是設(shè)備管理,介紹了I/O系統(tǒng)、I/O控制方式和緩沖管理,并對I/O軟件的層次結(jié)構(gòu)做了系統(tǒng)闡述;第7章闡述了文件系統(tǒng)管理;第8章介紹了操作系統(tǒng)的安全;第9章介紹了移動操作系統(tǒng)及其最新發(fā)展。
本教材由韓彥嶺、李凈老師主編,王令群、周汝雁、張明華老師副主編。特別感謝張云老師對全文進(jìn)行主審,并提出了許多寶貴的意見和建議。感謝課程組陳曉峰老師、盧鵬老師給予的寶貴建議。另外,魏聰和高儀參與了若干章節(jié)的討論和校對,在此一并表示感謝。本教材還引用了參考文獻(xiàn)中列出的國內(nèi)外著作的一些內(nèi)容,謹(jǐn)此向各位作者表示衷心的感謝和深深的敬意!
限于編者的水平,錯誤不妥與不盡人意之處在所難免,懇請讀者指正及賜教。
編者
2017年5月
第1章操作系統(tǒng)概論
1.1操作系統(tǒng)概念
1.1.1計算機(jī)系統(tǒng)總體結(jié)構(gòu)
1.1.2從不同角度刻畫操作系統(tǒng)
1.2操作系統(tǒng)發(fā)展歷程
1.2.1無操作系統(tǒng)時代(19451955年)
1.2.2單道批處理系統(tǒng)(19551965年)
1.2.3多道程序系統(tǒng)(19651980年)
1.2.4分時操作系統(tǒng)
1.2.5實(shí)時操作系統(tǒng)
1.2.6各種類型操作系統(tǒng)簡介
1.3操作系統(tǒng)基本特性
1.3.1并發(fā)性
1.3.2共享性
1.3.3虛擬性
1.3.4異步性
1.4操作系統(tǒng)功能
1.4.1處理機(jī)管理
1.4.2存儲器管理
1.4.3設(shè)備管理
1.4.4文件管理
1.4.5用戶接口
1.5操作系統(tǒng)結(jié)構(gòu)設(shè)計
1.5.1傳統(tǒng)操作系統(tǒng)結(jié)構(gòu)
1.5.2客戶/服務(wù)器模式
1.5.3微內(nèi)核結(jié)構(gòu)
1.6小結(jié)
習(xí)題
第2章操作系統(tǒng)接口
2.1用戶接口和系統(tǒng)程序
2.1.1用戶接口
2.1.2命令解釋程序
2.1.3系統(tǒng)程序
2.2系統(tǒng)調(diào)用
2.2.1系統(tǒng)態(tài)和用戶態(tài)
2.2.2系統(tǒng)調(diào)用
2.2.3中斷機(jī)制
2.2.4系統(tǒng)調(diào)用的實(shí)現(xiàn)
2.2.5POSIX標(biāo)準(zhǔn)
2.3小結(jié)
習(xí)題
第3章進(jìn)程管理
3.1進(jìn)程的基本概念
3.1.1程序的順序執(zhí)行及特征
3.1.2程序的并發(fā)執(zhí)行及特征
3.1.3進(jìn)程的定義及描述
3.2進(jìn)程狀態(tài)及其轉(zhuǎn)換
3.2.1進(jìn)程狀態(tài)及狀態(tài)轉(zhuǎn)換
3.2.2進(jìn)程控制塊
3.3進(jìn)程控制
3.3.1進(jìn)程的創(chuàng)建
3.3.2進(jìn)程的阻塞與喚醒
3.3.3進(jìn)程的終止
3.3.4進(jìn)程的掛起與激活
3.4進(jìn)程同步
3.4.1進(jìn)程同步的概念
3.4.2臨界區(qū)及其管理
3.4.3信號量及PV操作
3.4.4幾個經(jīng)典的進(jìn)程同步問題
3.4.5管程機(jī)制
3.5進(jìn)程通信
3.5.1進(jìn)程的通信方式
3.5.2有關(guān)消息傳遞的若干問題
3.6死鎖
3.6.1死鎖的定義
3.6.2產(chǎn)生死鎖的原因和條件
3.6.3處理死鎖的方法
3.6.4死鎖的預(yù)防
3.6.5死鎖的避免
3.6.6死鎖的檢測及解決
3.7線程
3.7.1線程的引入
3.7.2線程的基本概念
3.7.3線程管理和線程庫
3.7.4線程的實(shí)現(xiàn)
3.8小結(jié)
習(xí)題
第4章處理機(jī)調(diào)度
4.1處理機(jī)調(diào)度的層次
4.1.1高級調(diào)度
4.1.2低級調(diào)度
4.1.3中級調(diào)度
4.2調(diào)度隊列模型及調(diào)度準(zhǔn)則
4.2.1調(diào)度隊列模型
4.2.2調(diào)度準(zhǔn)則
4.3調(diào)度算法
4.3.1調(diào)度算法的目標(biāo)
4.3.2先來先服務(wù)
4.3.3短作業(yè)優(yōu)先
4.3.4高優(yōu)先權(quán)優(yōu)先
4.3.5高響應(yīng)比優(yōu)先調(diào)度算法
4.3.6基于時間片輪轉(zhuǎn)
4.3.7多級反饋隊列調(diào)度
4.4實(shí)時調(diào)度
4.4.1實(shí)現(xiàn)實(shí)時調(diào)度的基本條件
4.4.2實(shí)時調(diào)度算法的分類
4.4.3實(shí)時調(diào)度算法
4.5小結(jié)
習(xí)題
第5章存儲管理
5.1存儲器
5.1.1存儲器的層次
5.1.2地址變換和存儲保護(hù)
5.2連續(xù)存儲空間管理
5.2.1固定分區(qū)管理方式
5.2.2可變分區(qū)管理方式
5.2.3覆蓋與交換技術(shù)
5.3分頁存儲管理
5.3.1分頁存儲管理基本思想
5.3.2分頁存儲管理的分配與回收
5.3.3兩級和多級頁表
5.3.4分頁存儲管理的頁面共享和保護(hù)
5.4分段存儲管理方式
5.4.1分段存儲管理方式的引入
5.4.2分段系統(tǒng)的基本原理
5.4.3分段與分頁的比較
5.5虛擬存儲管理
5.5.1虛擬存儲器的概念
5.5.2請求分頁虛擬存儲管理
5.5.3頁面置換算法
5.5.4請求分段虛擬存儲管理
5.5.5請求段頁式虛擬存儲管理
5.6小結(jié)
習(xí)題
第6章設(shè)備管理
6.1I/O系統(tǒng)
6.1.1I/O設(shè)備
6.1.2設(shè)備控制器
6.1.3I/O通道
6.2I/O控制方式
6.2.1程序直接控制
6.2.2中斷方式
6.2.3DMA方式
6.2.4通道控制方式
6.3緩沖管理
6.3.1緩沖的引入
6.3.2緩沖的種類
6.3.3緩沖池管理
6.4I/O軟件
6.4.1I/O軟件的設(shè)計目標(biāo)和原則
6.4.2中斷處理程序
6.4.3設(shè)備驅(qū)動程序
6.4.4設(shè)備獨(dú)立性軟件
6.4.5用戶層I/O軟件
6.5設(shè)備分配
6.5.1設(shè)備分配用數(shù)據(jù)結(jié)構(gòu)
6.5.2設(shè)備分配原則
6.5.3設(shè)備分配算法
6.6磁盤存儲器管理
6.6.1磁盤性能
6.6.2磁盤調(diào)度
6.6.3提高磁盤I/O速度的方法
6.7小結(jié)
習(xí)題
第7章文件系統(tǒng)管理
7.1文件系統(tǒng)的概念
7.1.1文件
7.1.2目錄
7.1.3文件系統(tǒng)
7.2文件的邏輯結(jié)構(gòu)
7.2.1文件邏輯結(jié)構(gòu)的形式
7.2.2文件邏輯結(jié)構(gòu)的類型
7.3文件的物理結(jié)構(gòu)
7.3.1順序文件
7.3.2鏈接文件
7.3.3索引文件
7.4文件目錄管理
7.4.1文件的組成
7.4.2文件層次目錄
7.5文件存儲空間管理
7.5.1空閑表
7.5.2空閑鏈表
7.5.3位示圖
7.6文件的共享機(jī)制
7.6.1基于索引結(jié)點(diǎn)的共享方式
7.6.2利用符號鏈實(shí)現(xiàn)文件共享
7.7文件系統(tǒng)性能
7.7.1文件系統(tǒng)的可靠性
7.7.2文件系統(tǒng)性能的優(yōu)化
7.7.3文件的保護(hù)機(jī)制
7.8小結(jié)
習(xí)題
第8章操作系統(tǒng)安全
8.1安全性概述
8.2操作系統(tǒng)面臨的安全威脅
8.2.1病毒和蠕蟲
8.2.2邏輯炸彈
8.2.3特洛伊木馬
8.2.4隱蔽通道
8.3安全策略與模型
8.3.1機(jī)密性安全模型
8.3.2完整性安全模型
8.4安全機(jī)制
8.4.1認(rèn)證機(jī)制
8.4.2訪問控制
8.4.3加密機(jī)制
8.4.4審計機(jī)制
8.5小結(jié)
習(xí)題
第9章移動操作系統(tǒng)
9.1移動操作系統(tǒng)概述
9.2移動操作系統(tǒng)發(fā)展現(xiàn)狀
9.3移動操作系統(tǒng)發(fā)展趨勢
9.3.1Web化成為移動終端操作系統(tǒng)未來發(fā)展新方向
9.3.2智能操作系統(tǒng)促進(jìn)移動互聯(lián)網(wǎng)與物聯(lián)網(wǎng)融合
9.4小結(jié)
習(xí)題
參考文獻(xiàn)