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