作業系統原理及實驗

作業系統原理及實驗

《作業系統原理及實驗》是 2007年浙江大學出版社出版的圖書,作者是鄭增威。

內容簡介

作業系統作為信息科學、計算機軟體的核心基礎學科,其相關知識存在著抽象、難以理解等特點。為了幫助讀者學習、理解作業系統相關原理和概念,對作業系統工作和組成原理有一個理性的、系統的認識,《作業系統原理及實驗》試圖建立一個完整的作業系統知識體系,以深入淺出的方式描述一些重點、難點知識,並輔以相關Linux實驗內容和適量習題,通過上機實驗和習題訓練,幫助讀者加深理解,實現上述目標。《作業系統原理及實驗》全面系統地介紹了現代計算機作業系統的基本概念、原理和實現方法。全書共分八章和十一個實驗內容,第一章 講述了現代作業系統的發展概況;第二章 至第八章 分別論述了作業系統的基本原理、概念和實現方法,包括進程和執行緒管理、進程的同步和通信,死鎖問題,簡單存儲器管理,虛擬存儲器,處理機調度和實時調度,設備管理和檔案系統;針對作業系統中的一些重點、難點知識,比如進程概念、執行緒概念、進程通信和檔案系統等,在Linux環境下設計了十一個實驗內容,希望通過實驗,幫助讀者加深對這些知識的理解和掌握。

《作業系統原理及實驗》可作為普通高等院校計算機專業及相關專業作業系統課程教材,供大學二年級以上學生和教師使用 。

圖書目錄

第1章 作業系統概述
1.1 什麼是作業系統
1.2 作業系統的目標與功能
1.2.1 作業系統作為用戶與計算機之間的接口
1.2.2 作業系統作為資源管理器
1.2.3 作業系統的擴展性
1.3 作業系統的發展歷程
1.3.1 單道批處理系統
1.3.2 多道批處理系統
1.3.3 分時系統
1.3.4 實時系統
1.3.5 基本作業系統的特徵
1.4 現代Linux系統演變過程
習題一
第2章 進程描述和控制
2.1 進程概念
2.1.1 程式的順序執行
2.1.2 資源與共享
2.1.3 程式的並發執行
2.1.4 進程概念的引入
2.2 進程描述
2.2.1 進程映像
2.2.2 進程控制塊
2.3 進程狀態及轉換
2.4 進程控制
2.4.1 進程創建
2.4.2 進程終止
2.4.3 進程掛起
2.5 執行緒
2.5.1 執行緒的引入
2.5.2 執行緒狀態
2.5.3 執行緒與進程之間的關係
2.5.4 執行緒實現方式
2.6 Linux進程、執行緒創建與管理
2.6.1 Linux進程結構
2.6.2 進程表
2.6.3 系統進程
2.6.4 創建新進程
2.6.5 替換一個進程映像
2.6.6 複製一個進程映像
2.6.7 Linux執行緒創建
習題二
第3章 同步與互斥
3.1 基本概念
3.1.1 並發進程間的關係
3.1.2 競爭關係
3.1.3 協作關係
3.1.4 解決臨界區互斥問題的準則
3.2 實現互斥的軟體方法
3.3 實現互斥的硬體方法
3.3.1 中斷禁用
3.3.2 測試並建立指令
3.3.3 交換指令
3.4 信號量
3.4.1 整型信號量
3.4.2 記錄型信號量
3.4.3 用信號量實現互斥
3.4.4 用信號量實現同步
3.4.5 經典同步/互斥問題
3.5 管程
3.5.1 管程概念
3.5.2 管程套用
3.6 進程通信
3.6.1 信號通信機制
3.6.2 共享存儲區通信機制
3.6.3 已分享檔案通信機制
3.6.4 訊息傳遞通信機制
3.7 死鎖與飢餓
3.7.1 死鎖產生的原因
3.7.2 死鎖產生的條件
3.7.3 死鎖預防(deadlockprevention)
3.7.4 死鎖避免(deadlockavoidance)
3.7.5 死鎖檢測(deadlockdetection)
3.8 Linux進程通信機制及其套用
3.8.1 信號
3.8.2 管道
3.8.3 SystemV
3.8.4 SystemV訊息佇列
3.8.5 SystemV信號量
3.8.6 SystemV共享記憶體
習題三
第4章 存儲器管理
4.1 存儲器管理概述
4.1.1 地址重定位
4.1.2 記憶體的分配和回收
4.1.3 存儲保護
4.1.4 存儲共享
4.2 單一連續存儲區管理
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 段頁式存儲管理
習題四
第5章 虛擬存儲器管理
5.1 基礎知識
5.1.1 分級存儲體系
5.1.2 虛擬存儲器的引入
5.2 虛擬分頁存儲管理
5.2.1 基本思想
5.2.2 硬體支持
5.2.3 兩級頁表和多級頁表
5.2.4 反置頁表
5.3 頁面置換算法
5.3.1 頁面置換過程
5.3.2 最佳置換算法(OPT)
5.3.3 先進先出頁面置換算法(FIFO)
5.3.4 最近最久未使用算法(LRU)
5.3.5 時鐘置換算法(Clock)
5.3.6 駐留集管理
5.4 虛擬分段存儲管理
習題五
第6章 處理器調度
6.1 單處理器調度
6.1.1 調度類型
6.1.2 選擇調度算法的準則
6.2 調度算法
6.2.1 先來先服務算法(IfirstComeFirst-Served,FCFS)
6.2.2 最短進程優先算法(shortestProcessNext,SPN)
6.2.3 時間片輪轉算法(RoundRobin,RR)
6.2.4 最高優先權算法(HighestPriorityFirst,HPF)
6.2.5 最高回響比優先算法(HighestResponseRatioNext,HRRN)
6.2.6 多級反饋佇列算法(MultilevelFeedbackQueue,MFQ)
6.2.7 各種調度算法的比較
6.3 實時調度
6.3.1 實時任務分類
6.3.2 實時任務調度算法
習題六
第7章 設備管理
7.1 概述
7.1.1 I/O設備分類
7.1.2 設備管理功能
7.2 緩衝技術
7.2.1 單緩衝
7.2.2 雙緩衝
7.2.3 循環緩衝
7.3 中斷技術
7.4 SPOOLing技術
7.4.1 SPOOLing技術概述
7.4.2 SPOOLing系統工作原理
7.5 磁碟特性及調度算法
7.5.1 磁碟結構與特性
7.5.2 磁碟性能參數
7.5.3 磁碟調度策略
習題七
第8章 檔案系統
8.1 檔案系統概述
8.1.1 記錄、檔案與資料庫概念
8.1.2 檔案管理功能
8.2 檔案組織和訪問
8.3 檔案目錄
8.3.1 目錄
8.3.2 目錄組成
8.3.3 目錄操作
8.4 檔案共享
8.5 記錄組塊
8.6 輔存管理
習題八
實驗一 Linux及其使用環境、核心查看
實驗二 Shell編程
實驗三 進程的創建和簡單控制
實驗四 進程互斥
實驗五 執行緒機制
實驗六 進程通信——信號
實驗七 進程通信——共享記憶體
實驗八 進程通信——訊息佇列
實驗九 進程通信——管道
實驗十 虛擬記憶體管理
實驗十一 檔案與目錄
附錄1 Linux環境下的程式設計預備知識
附錄2 Linux環境下的常用系統調用簡介
主要參考文獻

相關詞條

熱門詞條

聯絡我們