操作系統是計算機專業的核心基礎課程,也是計算機相關專業常設的一門課程。本書根據操作系統的教學要求,具體介紹操作系統原理、進程管理、存儲管理、設備管理、文件管理的方法以及計算機安全等知識,并通過指導學生實訓,加強應用技能的培養。
本書具有知識系統、概念清晰、注重實用性和操作性的特點,既可作為應用型大學本科和高職高專院校計算機應用、網絡管理、電子商務等專業的教材,也可以作為從事操作系統管理和計算機從業人員進行軟件開發的參考用書。
隨著計算機技術與網絡通信技術的飛速發展,計算機網絡應用已經滲透到社會經濟領域的各個方面;網絡經濟不僅在促進生產、促進外貿、開拓國際市場、拉動就業、支持大學生創業、推動國家經濟發展、改善民生、豐富社會文化生活、構建和諧社會等方面發揮著巨大作用,而且也在徹底改造企業的經營管理方式,并深刻地改變著企業商務活動的運作模式,因而越來越受到我國各級政府部門和企業的高度重視。
作為計算機硬件與用戶之間交流的界面,計算機操作系統充當著兩者之間的橋梁,協調兩者之間的互動,使計算機用戶能得心應手地控制、使用計算機資源,為用戶提供安全、可靠、方便的工作環境。操作系統是計算機應用的靈魂,也是計算機與網絡系統集成的關鍵技術支撐,操作系統在計算機設施、網絡設備、網站建設、軟件開發應用管理中發揮著越來越重要的作用。
操作系統是應用型大學計算機專業重要的核心基礎課程,也是計算機相關專業常設的一門課程,還是學生就業、從事相關工作必須掌握的關鍵知識技能。本書注重以學習者應用能力培養為主線,堅持科學發展觀,嚴格按照教育部關于“加強職業教育、突出實踐技能培養”的要求,根據計算機軟、硬件技術設備的發展,結合專業教學改革的需要,循序漸進地進行知識講解,力求使讀者在做中學、在學中做,能夠真正利用所學知識解決操作系統開發與應用的實際問題。
本書作為高等教育應用型大學計算機應用和網絡管理專業的特色教材,全書共分7章,采取任務驅動式、案例教學的編寫方法;根據操作系統課程的教學要求,具體介紹操作系統原理、進程管理、存儲管理、設備管理、文件管理的方法,以及計算機安全等知識,并通過指導學生實踐模擬實訓,加強應用能力與應用技能的培養。
本書由李大軍統籌策劃并具體組織編寫,邵晶波和劉曉曉任主編,邵晶波統改稿,武靜、趙立群任副主編,由關忠教授審定。作者編寫分工如下:牟惟仲編寫序言,邵晶波編寫第1~3章,劉曉曉編寫第4章,武靜編寫第5、6章,趙立群編寫第7章,劉靖宇負責文字修改、版式整理及附錄的編寫;李曉新負責制作課件。
在本書編寫過程中,參閱借鑒了中外有關計算機操作系統的最新書刊、網站資料,并得到計算機行業協會及業界專家教授的具體指導,在此一并致謝。為了方便教學,本書配有電子課件,讀者可以登錄清華大學出版社網站免費下載使用。
因作者水平有限,書中難免存在疏漏和不足,懇請專家、同行和讀者批評指正。
編者
2016年11月
第1章緒論
1.1操作系統概述
1.1.1操作系統定義
1.1.2學習操作系統的目的
1.2操作系統的作用
1.2.1用戶視角
1.2.2資源管理者視角
1.2.3虛擬機視角
1.2.4作業組織視角
1.3操作系統的發展歷史
1.3.1操作系統發展的動力
1.3.2操作系統的發展歷史
1.4操作系統的類型
1.4.1批處理操作系統
1.4.2分時操作系統
1.4.3實時操作系統
1.4.4微機操作系統
1.4.5多處理機操作系統
1.4.6網絡操作系統
1.4.7分布式操作系統
1.4.8嵌入式操作系統
1.5操作系統的特征
1.6操作系統的結構
1.6.1傳統的操作系統結構
1.6.2現代操作系統結構
1.7操作系統的用戶界面
1.7.1命令界面
1.7.2程序界面
1.7.3圖形用戶界面
1.8操作系統的硬件環境
1.8.1CPU與外設并行工作
1.8.2I/O中斷的作用
1.8.3管態與目態
1.8.4存儲結構
1.8.5存儲保護
1.9操作系統的安裝與啟動
第2章進程管理
2.1多道程序設計
2.1.1程序的順序執行
2.1.2程序的并發執行
2.1.3并發程序執行的條件
2.2進程的描述
2.2.1進程的概念
2.2.2進程的特征及其與程序的區別
2.2.3進程的基本狀態及其轉換
2.2.4進程控制結構
2.2.5PCB的組織方式
2.3進程的控制
2.3.1進程控制機制
2.3.2進程控制原語
2.4進程的互斥
2.4.1互斥的定義
2.4.2上鎖和開鎖原語
2.4.3用上鎖和開鎖原語實現進程的互斥
2.5信號量機制
2.5.1信號量的概念
2.5.2P、V操作原語
2.5.3用P、V操作原語實現進程的互斥
2.6進程的同步
2.6.1同步的定義
2.6.2用P、V操作原語實現進程的同步
2.6.3幾個經典的進程同步問題
2.7進程的通信
2.7.1進程通信的定義
2.7.2共享存儲器系統
2.7.3消息傳遞系統
2.7.4管道通信系統
2.8死鎖問題
2.8.1死鎖的定義
2.8.2產生死鎖的原因
2.8.3產生死鎖的必要條件
2.8.4死鎖的預防
2.8.5死鎖的避免
2.8.6死鎖的檢測與解除
2.8.7鴕鳥算法
2.9進程調度
2.9.1進程調度算法
2.9.2進程調度時機
2.10線程
2.10.1線程的定義
2.10.2線程與進程的比較
第3章存儲管理
3.1存儲管理的概念
3.1.1存儲系統的分類
3.1.2物理地址和邏輯地址
3.1.3靜態重定位和動態重定位
3.1.4存儲管理的功能
3.1.5內存擴充技術
3.1.6存儲管理的分類
3.2程序的裝入和鏈接
3.3連續分配方式
3.4基本分頁存儲管理方式
3.5基本分段存儲管理方式
3.6段頁式存儲管理方式
3.7虛擬存儲器的基本概念
3.8請求分頁存儲管理方式
3.9請求分段存儲管理方式
3.10頁面置換算法
3.11抖動問題
第4章設備管理
4.1設備管理概述
4.1.1設備分類
4.1.2設備管理的功能和任務
4.1.3設備獨立性
4.1.4設備控制器
4.1.5設備通道
4.1.6I/O系統結構
4.2I/O控制方式
4.2.1程序直接控制方式
4.2.2中斷控制方式
4.2.3DMA方式
4.2.4通道方式
4.3中斷技術
4.3.1中斷的基本概念
4.3.2中斷的分類與優先級
4.3.3軟中斷
4.3.4中斷處理過程
4.4緩沖技術
4.4.1緩沖技術的引入
4.4.2緩沖的種類
4.5設備分配
4.5.1設備分配所用的數據結構
4.5.2設備分配原則
4.5.3設備分配程序
4.5.4SPOOLing技術
4.6磁盤設備管理
4.6.1存儲設備的物理結構
4.6.2磁盤調度
4.6.3磁盤高速緩存
4.6.4提高磁盤I/O速度的其他方法
4.6.5獨立磁盤冗余陣列
第5章文件管理
5.1文件系統概述
5.1.1文件的概念
5.1.2文件的訪問方式
5.1.3文件的邏輯結構
5.1.4文件的物理結構
5.1.5文件系統
5.2文件目錄
5.2.1文件控制塊
5.2.2文件目錄與目錄文件
5.2.3單級目錄結構
5.2.4二級目錄結構
5.2.5多級目錄結構
5.2.6文件目錄操作
5.3文件系統的實現
5.3.1文件系統調用的實現
5.3.2文件存儲空間分配的實現
5.3.3文件共享和保護的實現
第6章操作系統安全性
6.1安全性概述
6.1.1計算機系統安全概念
6.1.2計算機系統安全核心
6.1.3計算機資產及威脅
6.1.4內部與外部攻擊
6.1.5惡意軟件
6.2操作系統安全機制
6.2.1用戶驗證
6.2.2反入侵策略
6.2.3數字加密技術
6.3安全性的設計原則
6.3.1操作系統安全性原則的概念
6.3.2系統保護策略與機制
6.4職業道德教育與法制建設
6.4.1計算機從業人員職業道德教育
6.4.2計算機相關法律法規建設
第7章Ubuntu操作系統實驗
7.1Ubuntu安裝
7.1.1實驗目的
7.1.2實驗內容
7.1.3實驗報告
7.1.4實驗相關資料
7.2熟悉Ubuntu環境
7.2.1實驗目的
7.2.2實驗內容
7.2.3實驗報告
7.2.4實驗相關資料
7.3Shell腳本
7.3.1實驗目的
7.3.2實驗內容
7.3.3實驗報告
7.3.4實驗相關資料
7.4進程間通信
7.4.1實驗目的
7.4.2實驗內容
7.4.3實驗報告
7.4.4實驗相關資料
7.5存儲管理
7.5.1實驗目的
7.5.2實驗內容
7.5.3實驗報告
7.5.4實驗相關資料
7.6文件操作
7.6.1實驗目的
7.6.2實驗內容
7.6.3實驗報告
7.6.4實驗相關資料
附錄Linux操作系統常用命令
參考文獻