UNIX操作系統(tǒng)設(shè)計(jì)
定 價(jià):99 元
叢書名:計(jì)算機(jī)科學(xué)經(jīng)典譯叢
- 作者:莫里斯·J.,巴赫(Maurice J.Bach) 著,陳葆鈺,王旭,柳純錄,馮雪山 譯
- 出版時(shí)間:2019/6/1
- ISBN:9787115505231
- 出 版 社:人民郵電出版社
- 中圖法分類:TP316.81
- 頁碼:385
- 紙張:膠版紙
- 版次:1
- 開本:16開
本書以UNIX系統(tǒng)為背景,全面、系統(tǒng)地介紹了UNIX操作系統(tǒng)內(nèi)核的內(nèi)部數(shù)據(jù)結(jié)構(gòu)和算法。本書首先對(duì)系統(tǒng)內(nèi)核結(jié)構(gòu)做了簡(jiǎn)要介紹,然后分章節(jié)描述了文件系統(tǒng)、進(jìn)程調(diào)度和存儲(chǔ)管理,并在此基礎(chǔ)上討論了UNIX系統(tǒng)的問題,如驅(qū)動(dòng)程序接口、進(jìn)程間通信與網(wǎng)絡(luò)等。在每章之后,還給出了大量富有啟發(fā)性和實(shí)際意義的題目。
適讀人群 :高等院校計(jì)算機(jī)專業(yè)高年級(jí)本科生和研究生的教材或參考書從事UNIX系統(tǒng)研究與實(shí)用程序開發(fā)人員
Linux之父Linux Torvalds曾捧讀的經(jīng)典著作
UNIX操作系統(tǒng)經(jīng)典著作,暢銷多年
深度剖析UNIX操作系統(tǒng)內(nèi)核的內(nèi)部數(shù)據(jù)結(jié)構(gòu)、算法和UNIX系統(tǒng)的問題
莫里斯·J. 巴赫(Maurice J.Bach)在AT&T公司貝爾實(shí)驗(yàn)室工作多年,對(duì)UNIX系統(tǒng)的設(shè)計(jì)思想有深刻了解,有講授UNIX系統(tǒng)的豐富經(jīng)驗(yàn)。
第 1章 系統(tǒng)概貌1
1.1 歷史 1
1.2 系統(tǒng)結(jié)構(gòu) 3
1.3 用戶看法 4
1.3.1 文件系統(tǒng) 4
1.3.2 處理環(huán)境 8
1.3.3 構(gòu)件原語 10
1.4 操作系統(tǒng)服務(wù) 11
1.5 關(guān)于硬件的假設(shè) 12
1.5.1 中斷與例外 13
1.5.2 處理機(jī)執(zhí)行級(jí) 13
1.5.3 存儲(chǔ)管理 14
1.6 本章小結(jié) 14
第 2章 內(nèi)核導(dǎo)言 15
2.1 UNIX操作系統(tǒng)的體系結(jié)構(gòu) 15
2.2 系統(tǒng)概念介紹 17
2.2.1 文件子系統(tǒng)概貌 17
2.2.2 進(jìn)程 19
2.3 內(nèi)核數(shù)據(jù)結(jié)構(gòu) 27
2.4 系統(tǒng)管理 28
2.5 本章小結(jié) 28
2.6 習(xí)題 29
第3章 數(shù)據(jù)緩沖區(qū)高速緩沖 30
3.1 緩沖頭部 30
3.2 緩沖池的結(jié)構(gòu) 32
3.3 緩沖區(qū)的檢索 33
3.4 讀磁盤塊與寫磁盤塊 43
3.5 高速緩沖的優(yōu)點(diǎn)與缺點(diǎn) 45
3.6 本章小結(jié) 46
3.7 習(xí)題 47
第4章 文件的內(nèi)部表示 48
4.1 索引節(jié)點(diǎn) 48
4.1.1 定義 48
4.1.2 對(duì)索引節(jié)點(diǎn)的存取 50
4.1.3 釋放索引節(jié)點(diǎn) 53
4.2 正規(guī)文件的結(jié)構(gòu) 53
4.3 目錄 58
4.4 路徑名到索引節(jié)點(diǎn)的轉(zhuǎn)換 59
4.5 超級(jí)塊 61
4.6 為新文件分配索引節(jié)點(diǎn) 62
4.7 磁盤塊的分配 68
4.8 其他文件類型 71
4.9 本章小結(jié) 71
4.10 習(xí)題 72
第5章 文件系統(tǒng)的系統(tǒng)調(diào)用 74
5.1 系統(tǒng)調(diào)用open 75
5.2 系統(tǒng)調(diào)用read 78
5.3 系統(tǒng)調(diào)用write 82
5.4 文件和記錄的上鎖 83
5.5 文件的輸入 輸出位置的調(diào)整—lseek 83
5.6 系統(tǒng)調(diào)用close 84
5.7 文件的建立 86
5.8 特殊文件的建立 87
5.9 改變目錄及根 88
5.10 改變所有者及許可權(quán)方式 90
5.11 系統(tǒng)調(diào)用stat和fstat 90
5.12 管道 90
5.12.1 系統(tǒng)調(diào)用pipe 91
5.12.2 有名管道的打開 92
5.12.3 管道的讀和寫 92
5.12.4 管道的關(guān)閉 94
5.12.5 例 95
5.13 系統(tǒng)調(diào)用dup 95
5.14 文件系統(tǒng)的安裝和拆卸 97
5.14.1 在文件路徑名中跨越安裝點(diǎn) 100
5.14.2 文件系統(tǒng)的拆卸 103
5.15 系統(tǒng)調(diào)用link 104
5.16 系統(tǒng)調(diào)用unlink 108
5.16.1 文件系統(tǒng)的一致性 109
5.16.2 競(jìng)爭(zhēng)條件 110
5.17 文件系統(tǒng)的抽象 113
5.18 文件系統(tǒng)維護(hù) 114
5.19 本章小結(jié) 116
5.20 習(xí)題 116
第6章 進(jìn)程結(jié)構(gòu) 121
6.1 進(jìn)程的狀態(tài)和狀態(tài)的轉(zhuǎn)換 121
6.2 系統(tǒng)存儲(chǔ)方案 125
6.2.1 區(qū) 125
6.2.2 頁和頁表 126
6.2.3 內(nèi)核的安排 128
6.2.4 u區(qū) 130
6.3 進(jìn)程的上下文 131
6.4 進(jìn)程上下文的保存 133
6.4.1 中斷和例外 133
6.4.2 系統(tǒng)調(diào)用的接口 136
6.4.3 上下文切換 139
6.4.4 為廢棄返回(abortive return)而保存上下文 140
6.4.5 在系統(tǒng)和用戶地址空間之間拷貝數(shù)據(jù) 141
6.5 進(jìn)程地址空間的管理 141
6.5.1 區(qū)的上鎖和解鎖 142
6.5.2 區(qū)的分配 142
6.5.3 區(qū)附接到進(jìn)程 143
6.5.4 區(qū)大小的改變 144
6.5.5 區(qū)的裝入 146
6.5.6 區(qū)的釋放 148
6.5.7 區(qū)與進(jìn)程的斷接 148
6.5.8 區(qū)的復(fù)制 150
6.6 睡眠 151
6.6.1 睡眠事件及其地址 151
6.6.2 算法sleep和wakeup 152
6.7 本章小結(jié) 156
6.8 習(xí)題 156
第7章 進(jìn)程控制 159
7.1 進(jìn)程的創(chuàng)建 159
7.2 軟中斷信號(hào) 166
7.2.1 軟中斷信號(hào)的處理 169
7.2.2 進(jìn)程組 175
7.2.3 從進(jìn)程發(fā)送軟中斷信號(hào) 175
7.3 進(jìn)程的終止 176
7.4 等待進(jìn)程的終止 178
7.5 對(duì)其他程序的引用 181
7.6 進(jìn)程的用戶標(biāo)識(shí)號(hào) 188
7.7 改變進(jìn)程的大小 191
7.8 shell程序 193
7.9 系統(tǒng)自舉和進(jìn)程init 195
7.10 本章小結(jié) 198
7.11 習(xí)題 199
第8章 進(jìn)程調(diào)度和時(shí)間 206
8.1 進(jìn)程調(diào)度 206
8.1.1 算法 206
8.1.2 調(diào)度參數(shù) 207
8.1.3 進(jìn)程調(diào)度的例子 210
8.1.4 進(jìn)程優(yōu)先權(quán)的控制 212
8.1.5 公平共享調(diào)度 213
8.1.6 實(shí)時(shí)處理 214
8.2 有關(guān)時(shí)間的系統(tǒng)調(diào)用 215
8.3 時(shí)鐘 218
8.3.1 重新啟動(dòng)時(shí)鐘 218
8.3.2 系統(tǒng)的內(nèi)部定時(shí) 218
8.3.3 直方圖分析 220
8.3.4 記帳和統(tǒng)計(jì) 223
8.3.5 計(jì)時(shí) 223
8.4 本章小結(jié) 224
8.5 習(xí)題 224
第9章 存儲(chǔ)管理策略 226
9.1 對(duì)換 226
9.1.1 對(duì)換空間的分配 226
9.1.2 進(jìn)程的換出 229
9.1.3 進(jìn)程的換入 232
9.2 請(qǐng)求調(diào)頁 236
9.2.1 請(qǐng)求調(diào)頁的數(shù)據(jù)結(jié)構(gòu) 238
9.2.2 偷頁進(jìn)程 243
9.2.3 頁面錯(cuò) 246
9.2.4 在簡(jiǎn)單硬件支持下的請(qǐng)求調(diào)頁系統(tǒng) 253
9.3 對(duì)換和請(qǐng)求調(diào)頁的混合系統(tǒng) 254
9.4 本章小結(jié) 254
9.5 習(xí)題 255
第 10章 輸入 輸出子系統(tǒng) 258
10.1 驅(qū)動(dòng)程序接口 258
10.1.1 系統(tǒng)配置 259
10.1.2 系統(tǒng)調(diào)用與驅(qū)動(dòng)程序
接口 261
10.1.3 中斷處理程序 267
10.2 磁盤驅(qū)動(dòng)程序 268
10.3 終端驅(qū)動(dòng)程序 271
10.3.1 字符表clist 273
10.3.2 標(biāo)準(zhǔn)方式下的終端驅(qū)動(dòng)程序 276
10.3.3 原始方式下的終端驅(qū)動(dòng)程序 280
10.3.4 終端探詢 282
10.3.5 建立控制終端 283
10.3.6 間接終端驅(qū)動(dòng)程序 283
10.3.7 注冊(cè)到系統(tǒng) 284
10.4 流 285
10.4.1 流的詳細(xì)的示例 288
10.4.2 對(duì)流的分析 290
10.5 本章小結(jié) 291
10.6 習(xí)題 291
第 11章 進(jìn)程間通信 294
11.1 進(jìn)程跟蹤 294
11.2 系統(tǒng)Ⅴ IPC 297
11.2.1 消息 299
11.2.2 共享存儲(chǔ)區(qū) 304
11.2.3 信號(hào)量 308
11.2.4 總的評(píng)價(jià) 316
11.3 網(wǎng)絡(luò)通信 317
11.4 套接字 318
11.5 本章小結(jié) 322
11.6 習(xí)題 323
第 12章 多處理機(jī)系統(tǒng) 325
12.1 多處理機(jī)系統(tǒng)的問題 325
12.2 主從處理機(jī)解決方法 326
12.3 信號(hào)量解決方法 328
12.3.1 信號(hào)量定義 329
12.3.2 信號(hào)置實(shí)現(xiàn) 329
12.3.3 幾個(gè)算法 336
12.4 Tunis系統(tǒng) 340
12.5 性能局限性 340
12.6 習(xí)題 340
第 13章 分布式UNIX系統(tǒng) 342
13.1 衛(wèi)星處理機(jī)系統(tǒng) 343
13.2 紐卡斯?fàn)栠B接 350
13.3 透明型分布式文件系統(tǒng) 353
13.4 無存根進(jìn)程的透明分布式模型 356
13.5 本章小結(jié) 357
13.6 習(xí)題 358
附錄A 系統(tǒng)調(diào)用 361
索引 377
參考文獻(xiàn) 382