操作系統(tǒng)是計算機資源的管理者,《計算機操作系統(tǒng)》從計算機資源管理者的角度出發(fā),系統(tǒng)、全面地闡述了操作系統(tǒng)的概念、原理和方法。全書共分為9章,第1章介紹了操作系統(tǒng)的概念、發(fā)展、基本特征、主要功能以及操作系統(tǒng)的結構;第2章介紹了操作系統(tǒng)的用戶接口和程序接口;第3章深入闡述了進程和線程的基本概念和原理,包括進程狀態(tài)與控制、進程同步,進程通信和死鎖;第4章系統(tǒng)介紹了操作系統(tǒng)的調(diào)度層次、調(diào)度隊列模型和具體的調(diào)度算法;第5章詳細分析了三種基本存儲管理方式以及虛擬存儲管理方式;第6章是設備管理,對I/O軟件的層次結構做了系統(tǒng)闡述;第7章闡述了文件系統(tǒng)管理;第8章介紹了操作系統(tǒng)的安全;第9章介紹了移動操作系統(tǒng)及其*發(fā)展。
(1)本教材是課程組教師在20年的教學實踐基礎上,針對一般本科院校及應用類本科院校計算機相關專業(yè)學生的學習特點所編寫。
(2)結構清晰,內(nèi)容精煉,實用。本書本書從計算機資源管理者的角度,按三學分(64學時間)的要求系統(tǒng)、全面、準確地闡述了操作系統(tǒng)的概念、原理和方法。
(3)可讀性強。通過增加一些實際生活中的案例豐富對抽象的操作系統(tǒng)概念及原理的理解,增強學生的學習興趣,并通過引入貫穿在全文各章節(jié)中的教學用操作系統(tǒng)實例分析,進一步增加教材的實踐性,通過理論與實踐的緊密結合幫助學生深入理解操作系統(tǒng)的基本原理、設計方法和實現(xiàn)技術,增強學生分析問題和解決問題的能力。
(4)本書結合當前大數(shù)據(jù)技術和移動互聯(lián)技術的發(fā)展,增加了一章節(jié),專門介紹了移動互聯(lián)背景下的操作系統(tǒng)的原理和特點,以及一些典型應用。
現(xiàn)代操作系統(tǒng)是一個十分龐大且復雜的系統(tǒng),操作系統(tǒng)的設計對整個計算機系統(tǒng)的總體功能和性能都有著重要的影響。理解操作系統(tǒng)的基本原理,了解真正的操作系統(tǒng)的實際運用,無論對計算機系統(tǒng)的設計者還是使用者都十分重要。
本書所有參與者都長期工作在操作系統(tǒng)課程教學第一線,從事操作系統(tǒng)課程的教學和相關科研工作,熟悉學生對操作系統(tǒng)概念、原理、技術及應用等方面的理解程度和疑難問題。為此,本教材在內(nèi)容的選取上注重基礎性和先進性;在內(nèi)容的組織上注重邏輯性、完整性和關聯(lián)性;在講解上深入淺出,具有易讀、易懂的特點。全書共分為9章,每章開始都包含簡明扼要的導語,每章結束都有對該章內(nèi)容邏輯清晰的梳理和小結,每章都配備具有較強針對性的習題,既強調(diào)基礎概念的掌握,又包含提升能力的問答和綜合分析。
本書9章內(nèi)容的具體安排如下:
第1章介紹了操作系統(tǒng)的概念、發(fā)展、基本特征、主要功能以及結構設計;第2章介紹了操作系統(tǒng)的用戶接口,程序接口和系統(tǒng)調(diào)用;第3章深入闡述了進程和線程的基本概念和原理,包括進程狀態(tài)與控制、進程同步、進程通信、死鎖和線程;第4章系統(tǒng)介紹了操作系統(tǒng)的調(diào)度層次、調(diào)度隊列模型及調(diào)度準則、調(diào)度算法和實時調(diào)度;第5章詳細分析了三種基本存儲管理方式以及虛擬存儲管理方式;第6章是設備管理,介紹了I/O系統(tǒng)、I/O控制方式和緩沖管理,并對I/O軟件的層次結構做了系統(tǒng)闡述;第7章闡述了文件系統(tǒng)管理;第8章介紹了操作系統(tǒng)的安全;第9章介紹了移動操作系統(tǒng)及其最新發(fā)展。
本教材由韓彥嶺、李凈老師主編,王令群、周汝雁、張明華老師副主編。特別感謝張云老師對全文進行主審,并提出了許多寶貴的意見和建議。感謝課程組陳曉峰老師、盧鵬老師給予的寶貴建議。另外,魏聰和高儀參與了若干章節(jié)的討論和校對,在此一并表示感謝。本教材還引用了參考文獻中列出的國內(nèi)外著作的一些內(nèi)容,謹此向各位作者表示衷心的感謝和深深的敬意!
限于編者的水平,錯誤不妥與不盡人意之處在所難免,懇請讀者指正及賜教。
編者
2017年5月
韓彥嶺,女,42歲,博士,上海海洋大學信息學院副教授,專長計算機應用和智能計算。主持和參與了國家自然科學基金面上項目、上海市科委地方院校能力建設項目等8項課題。發(fā)表EI/SCI論文約10篇。合作出版專著一本(《航運大數(shù)據(jù)》)。
第1章操作系統(tǒng)概論
1.1操作系統(tǒng)概念
1.1.1計算機系統(tǒng)總體結構
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實時操作系統(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處理機管理
1.4.2存儲器管理
1.4.3設備管理
1.4.4文件管理
1.4.5用戶接口
1.5操作系統(tǒng)結構設計
1.5.1傳統(tǒng)操作系統(tǒng)結構
1.5.2客戶/服務器模式
1.5.3微內(nèi)核結構
1.6小結
習題
第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中斷機制
2.2.4系統(tǒng)調(diào)用的實現(xiàn)
2.2.5POSIX標準
2.3小結
習題
第3章進程管理
3.1進程的基本概念
3.1.1程序的順序執(zhí)行及特征
3.1.2程序的并發(fā)執(zhí)行及特征
3.1.3進程的定義及描述
3.2進程狀態(tài)及其轉換
3.2.1進程狀態(tài)及狀態(tài)轉換
3.2.2進程控制塊
3.3進程控制
3.3.1進程的創(chuàng)建
3.3.2進程的阻塞與喚醒
3.3.3進程的終止
3.3.4進程的掛起與激活
3.4進程同步
3.4.1進程同步的概念
3.4.2臨界區(qū)及其管理
3.4.3信號量及PV操作
3.4.4幾個經(jīng)典的進程同步問題
3.4.5管程機制
3.5進程通信
3.5.1進程的通信方式
3.5.2有關消息傳遞的若干問題
3.6死鎖
3.6.1死鎖的定義
3.6.2產(chǎn)生死鎖的原因和條件
3.6.3處理死鎖的方法
3.6.4死鎖的預防
3.6.5死鎖的避免
3.6.6死鎖的檢測及解決
3.7線程
3.7.1線程的引入
3.7.2線程的基本概念
3.7.3線程管理和線程庫
3.7.4線程的實現(xiàn)
3.8小結
習題
第4章處理機調(diào)度
4.1處理機調(diào)度的層次
4.1.1高級調(diào)度
4.1.2低級調(diào)度
4.1.3中級調(diào)度
4.2調(diào)度隊列模型及調(diào)度準則
4.2.1調(diào)度隊列模型
4.2.2調(diào)度準則
4.3調(diào)度算法
4.3.1調(diào)度算法的目標
4.3.2先來先服務
4.3.3短作業(yè)優(yōu)先
4.3.4高優(yōu)先權優(yōu)先
4.3.5高響應比優(yōu)先調(diào)度算法
4.3.6基于時間片輪轉
4.3.7多級反饋隊列調(diào)度
4.4實時調(diào)度
4.4.1實現(xiàn)實時調(diào)度的基本條件
4.4.2實時調(diào)度算法的分類
4.4.3實時調(diào)度算法
4.5小結
習題
第5章存儲管理
5.1存儲器
5.1.1存儲器的層次
5.1.2地址變換和存儲保護
5.2連續(xù)存儲空間管理
5.2.1固定分區(qū)管理方式
5.2.2可變分區(qū)管理方式
5.2.3覆蓋與交換技術
5.3分頁存儲管理
5.3.1分頁存儲管理基本思想
5.3.2分頁存儲管理的分配與回收
5.3.3兩級和多級頁表
5.3.4分頁存儲管理的頁面共享和保護
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小結
習題
第6章設備管理
6.1I/O系統(tǒng)
6.1.1I/O設備
6.1.2設備控制器
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軟件的設計目標和原則
6.4.2中斷處理程序
6.4.3設備驅(qū)動程序
6.4.4設備獨立性軟件
6.4.5用戶層I/O軟件
6.5設備分配
6.5.1設備分配用數(shù)據(jù)結構
6.5.2設備分配原則
6.5.3設備分配算法
6.6磁盤存儲器管理
6.6.1磁盤性能
6.6.2磁盤調(diào)度
6.6.3提高磁盤I/O速度的方法
6.7小結
習題
第7章文件系統(tǒng)管理
7.1文件系統(tǒng)的概念
7.1.1文件
7.1.2目錄
7.1.3文件系統(tǒng)
7.2文件的邏輯結構
7.2.1文件邏輯結構的形式
7.2.2文件邏輯結構的類型
7.3文件的物理結構
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文件的共享機制
7.6.1基于索引結點的共享方式
7.6.2利用符號鏈實現(xiàn)文件共享
7.7文件系統(tǒng)性能
7.7.1文件系統(tǒng)的可靠性
7.7.2文件系統(tǒng)性能的優(yōu)化
7.7.3文件的保護機制
7.8小結
習題
第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機密性安全模型
8.3.2完整性安全模型
8.4安全機制
8.4.1認證機制
8.4.2訪問控制
8.4.3加密機制
8.4.4審計機制
8.5小結
習題
第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)促進移動互聯(lián)網(wǎng)與物聯(lián)網(wǎng)融合
9.4小結
習題
參考文獻