操作系統(tǒng)概念與Linux實踐教程(雙語)
定 價:39 元
- 作者:楊一濤
- 出版時間:2019/12/1
- ISBN:9787121381973
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP316
- 頁碼:184
- 紙張:
- 版次:01
- 開本:16開
本書按照操作系統(tǒng)的功能分為10章,系統(tǒng)地講述操作系統(tǒng)的基本原理。第1章為導(dǎo)論,介紹操作系統(tǒng)的概念、操作系統(tǒng)的形成與發(fā)展及操作系統(tǒng)的功能和操作系統(tǒng)提供服務(wù)的方式等;第2~6章介紹操作系統(tǒng)的進(jìn)程管理(處理器管理),包括進(jìn)程、線程、進(jìn)程調(diào)度、進(jìn)程同步和死鎖;第7章為內(nèi)存管理;第8章為外存管理;第9章為文件管理;第10章為I/O系統(tǒng)。為了滿足雙語教學(xué)的需要,本書在每章的最后增加了精選的操作系統(tǒng)技術(shù)英文資料,供有能力的讀者進(jìn)行擴展閱讀。本書配有PPT、源代碼等教學(xué)資源,讀者可登錄華信教育資源網(wǎng)(www.hxedu.com.cn)免費下載。本書每章都配有教學(xué)視頻,讀者可以掃描書中二維碼觀看。此外,全書提供8個基于Linux系統(tǒng)的實驗,幫助讀者加深對操作系統(tǒng)原理的理解,部分實驗也提供演示視頻。本書適合作為本科院校、高職高專院校計算機操作系統(tǒng)和Linux相關(guān)課程的教材及參考書,也可供相關(guān)技術(shù)人員參考。
楊一濤,男,南京森林警察學(xué)院信息技術(shù)學(xué)院信息安全技術(shù)教研室主任,教授,江蘇省區(qū)塊鏈專委會委員。主要承擔(dān)《操作系統(tǒng)原理 》、《?嵌入式系統(tǒng) 》、《公安信息技術(shù)基礎(chǔ)》、《人工智能概論》、《應(yīng)用密碼學(xué)》等課程的教學(xué)。
目 錄
第1章 導(dǎo)論 1
1.1 操作系統(tǒng)的概念 1
1.2 操作系統(tǒng)的形成與發(fā)展 3
1.2.1 手工操作階段 3
1.2.2 單道批處理系統(tǒng) 3
1.2.3 多道批處理系統(tǒng) 4
1.2.4 分時操作系統(tǒng) 5
1.2.5 微機操作系統(tǒng) 5
1.2.6 分布式操作系統(tǒng) 7
1.2.7 嵌入式操作系統(tǒng) 7
1.3 操作系統(tǒng)的功能 7
1.3.1 接管計算機 7
1.3.2 進(jìn)程管理 10
1.3.3 存儲管理 11
1.3.4 文件管理 12
1.3.5 設(shè)備管理 13
1.4 操作系統(tǒng)的特點 13
1.4.1 并發(fā)性 13
1.4.2 共享性 14
1.4.3 虛擬性 15
1.4.4 異步性 15
1.5 操作系統(tǒng)提供服務(wù)的方式 15
1.5.1 接口 15
1.5.2 操作接口 16
1.5.3 程序接口 18
1.6 GNU/Linux歷史 19
1.7 Reading Materials 20
1.7.1 Overview 20
1.7.2 Concurrency and Parallelism 22
1.7.3 Graphic User Interface 23
1.8 實驗1 Linux安裝及開發(fā)環(huán)境
搭建 25
第2章 進(jìn)程 26
2.1 程序和進(jìn)程 26
2.2 進(jìn)程的狀態(tài)及轉(zhuǎn)換 27
2.3 進(jìn)程的切換 28
2.3.1 概述 28
2.3.2 中斷機制 29
2.3.3 模式切換 30
2.3.4 進(jìn)程控制塊 30
2.3.5 進(jìn)程切換 31
2.4 Reading Materials 32
2.4.1 Overview 32
2.4.2 Inter Process Communication 33
2.4.3 Process Control Block 34
2.5 實驗2 進(jìn)程的創(chuàng)建 36
第3章 線程 39
3.1 動機和特點 39
3.2 線程定義 40
3.3 線程模型 41
3.4 線程庫 42
3.5 Reading Materials 43
3.5.1 Overview 43
3.5.2 POSIX Thread (Pthread)
Libraries 44
3.6 實驗3 Pthread多線程 45
第4章 進(jìn)程調(diào)度 47
4.1 概述 47
4.2 調(diào)度標(biāo)準(zhǔn) 49
4.3 調(diào)度算法 50
4.3.1 先來先服務(wù)調(diào)度 50
4.3.2 最短作業(yè)優(yōu)先調(diào)度 51
4.3.3 輪轉(zhuǎn)調(diào)度 52
4.3.4 優(yōu)先級調(diào)度 54
4.4 Reading Materials 54
4.4.1 Overview 54
4.4.2 CFS: Completely Fair Process
Scheduling in Linux 56
4.5 實驗4 Linux調(diào)度策略 59
第5章 進(jìn)程同步 60
5.1 背景 60
5.2 進(jìn)程的交互 61
5.3 競爭關(guān)系 62
5.3.1 競爭 62
5.3.2 臨界區(qū) 62
5.3.3 軟件解決方案 63
5.3.4 硬件解決方案 64
5.3.5 忙式等待 65
5.4 協(xié)作關(guān)系 65
5.4.1 信號量 65
5.4.2 二值信號量 66
5.4.3 計數(shù)信號量 66
5.4.4 信號量的實現(xiàn) 67
5.4.5 死鎖與饑餓 68
5.5 經(jīng)典同步問題 68
5.5.1 最簡單的同步問題 68
5.5.2 生產(chǎn)者-消費者問題 69
5.5.3 蘋果桔子問題 70
5.5.4 哲學(xué)家進(jìn)餐問題 71
5.6 Reading Materials 72
5.6.1 Overview 72
5.6.2 Mutual Exclusion 72
5.6.3 Critical Section 73
5.6.4 Mutex VS Semaphore 73
5.7 實驗5 并發(fā)線程互斥同步 74
第6章 死鎖 80
6.1 定義 80
6.2 死鎖特征 80
6.3 資源分配圖 81
6.4 死鎖的防止 82
6.5 死鎖的避免 83
6.5.1 安全狀態(tài) 83
6.5.2 銀行家算法 84
6.6 死鎖的檢測和恢復(fù) 86
6.6.1 死鎖的檢測 86
6.6.2 死鎖的恢復(fù) 86
6.7 Reading Materials 87
6.7.1 Overview 87
6.7.2 Dijkstra Biography 88
第7章 內(nèi)存管理 90
7.1 概述 90
7.1.1 基本概念 90
7.1.2 基本硬件 91
7.1.3 邏輯地址和物理地址 92
7.1.4 地址轉(zhuǎn)換 92
7.2 連續(xù)內(nèi)存分配 95
7.2.1 固定分區(qū)分配 95
7.2.2 可變分區(qū)分配 96
7.2.3 碎片 97
7.3 分段 98
7.3.1 基本方法 98
7.3.2 實現(xiàn)原理 99
7.4 分頁 101
7.4.1 基本方法 101
7.4.2 地址轉(zhuǎn)換 101
7.4.3 快表 103
7.4.4 多級頁表 105
7.5 虛擬內(nèi)存 106
7.5.1 緩存與局部性原理 106
7.5.2 虛擬內(nèi)存 107
7.5.3 請求調(diào)頁 108
7.5.4 頁面置換算法 110
7.5.5 系統(tǒng)抖動 112
7.6 Reading Materials 113
7.6.1 Overview 113
7.6.2 Virtual Memory 116
7.6.3 Segmented Virtual Memory 116
7.7 實驗6 進(jìn)程內(nèi)存空間 117
第8章 外存管理 124
8.1 磁盤結(jié)構(gòu) 124
8.1.1 硬件結(jié)構(gòu) 124
8.1.2 格式化 125
8.2 磁盤調(diào)度 125
8.2.1 磁盤性能指標(biāo) 125
8.2.2 FCFS調(diào)度 126
8.2.3 SSTF調(diào)度 126
8.2.4 SCAN調(diào)度 127
8.2.5 C-SCAN調(diào)度 128
8.2.6 LOOK調(diào)度 128
8.2.7 調(diào)度算法選擇 129
8.3 RAID結(jié)構(gòu) 130
8.3.1 概述 130
8.3.2 RAID級別 130
8.4 Reading Materials 133
第9章 文件管理 135
9.1 概述 135
9.2 文件 135
9.2.1 文件類型 136
9.2.2 文件屬性 136
9.3 存取方法 137
9.3.1 順序存取 137
9.3.2 直接存取 137
9.4 目錄 137
9.4.1 基本概念 137
9.4.2 文件控制塊 138
9.4.3 單級目錄 139
9.4.4 兩級目錄 139
9.4.5 樹形目錄 140
9.4.6 UFS的目錄實現(xiàn) 141
9.5 分配方法 141
9.5.1 連續(xù)分配 142
9.5.2 鏈接分配 142
9.5.3 索引分配 143
9.6 空閑空間管理 145
9.6.1 位圖法 145
9.6.2 空閑鏈表法 145
9.7 Reading Materials 146
9.7.1 Overview 146
9.7.2 Inode 148
9.7.3 Ext4 149
9.8 實驗7 Linux文件系統(tǒng) 152
9.8.1 實驗說明 152
9.8.2 磁盤高級格式化 152
9.8.3 Linux文件系統(tǒng)操作 160
第10章 I/O系統(tǒng) 163
10.1 概述 163
10.2 I/O硬件 163
10.2.1 硬件原理 163
10.2.2 輪詢 164
10.2.3 中斷 165
10.2.4 DMA 166
10.3 內(nèi)核I/O結(jié)構(gòu) 167
10.4 內(nèi)核I/O子系統(tǒng) 168
10.4.1 I/O調(diào)度 168
10.4.2 緩沖區(qū) 168
10.4.3 緩存 169
10.4.4 假脫機 169
10.5 Reading Materials 170
10.5.1 Overview 170
10.5.2 I/O Channel 171
10.5.3 The Buffer Cache 172
10.6 實驗8 Linux驅(qū)動實驗 174
參考文獻(xiàn) 175