操作系統之哲學原理(第2版)

操作系統之哲學原理(第2版)

作者: 鄒恒明

ISBN: 9787111366928

出版時間: 2012-03-01

出版社: 機械工業出版社華章公司

鄒恒明 0 0 0

下載的epub,mobi,azw3 文件不懂打開,格式轉換,尋求幫助,請關注微信公衆號“ebookcn”
操作系統是計算機系統的核心系統軟件,負責控制和管理整個系統,使之協調工作。本書對操作系統的核心内容進行了全面分析,包括操作系統的發展曆史和基本概念、進程與線程、内存管理、文件系統、輸入與輸出、多核環境下的進程調度和操作系統設計。本書用大量生活實例,生動地解釋了操作系統中的主要難點和模糊點:鎖的實現、...
操作系統是計算機系統的核心系統軟件,負責控制和管理整個系統,使之協調工作。本書對操作系統的核心内容進行了全面分析,包括操作系統的發展曆史和基本概念、進程與線程、内存管理、文件系統、輸入與輸出、多核環境下的進程調度和操作系統設計。本書用大量生活實例,生動地解釋了操作系統中的主要難點和模糊點:鎖的實現、同步機制的發展軸線、純粹分段到段頁式的演變、多核環境下的進程同步與調度和操作系統設計等内容。本書重點突出、邏輯清晰、内容連貫,便于學生順利掌握操作系統的核心内容。
本書層次豐富、涵蓋操作系統的所有核心内容,适合作為國内高校計算機及相關專業本科生操作系統課程的教材,也是了解計算機操作系統原理不可多得的參考書。
前言
第一篇 基礎原理篇
第1章 操作系統導論
引子:智者的挑戰
1.1 人造與神造
1.2 程序是如何運行的
1.3 什麼是操作系統
1.4 魔術與管理
1.5 用戶程序與操作系統
1.6 操作系統的範疇
1.7 為什麼學習操作系統
思考題
第2章操 作系統曆史
引子:不能承受之真
2.1 第一階段:狀态機操作系統(1940年以前)
2.2 第二階段:單一操作員單一控制端操作系統(20世紀40年代)
2.3 第三階段:批處理操作系統(20世紀50年代)
2.4 第四代:多道批處理操作系統(20世紀60年代)
2.5 第五代之一:分時操作系統(20世紀70年代)
2.6 第五代之二:實時操作系統
2.7 第六代:現代操作系統(1980年以後)
2.8 操作系統的演變過程
2.9 操作系統的未來發展趨勢
2.10 讨論:操作系統虛拟化和虛拟化的操作系統
思考題
第3章 操作系統基本概念
引子:軟件師的尴尬
3.1 計算機硬件基本知識
3.2 抽象
3.3 内核态和用戶态
3.4 操作系統結構
3.5 進程、内存和文件
3.6 系統調用
3.7 殼
思考題
第二篇 進程原理篇
第4章 進程
引子:牛頓的困惑
4.1 進程概論
4.2 進程模型
4.3 多道編程的好處
4.4 進程的産生與消失
4.5 進程的層次結構
4.6 進程的狀态
4.7 進程與地址空間
4.8 進程管理
4.9 進程的缺陷
思考題
第5章 進程調度
引子:恐怖分子的調度
5.1 進程調度的定義
5.2 進程調度的目标
5.3 先來先服務調度算法
5.4 時間片輪轉算法
5.5 短任務優先算法
5.6 優先級調度算法
5.7 混合調度算法
5.8 其他調度算法
5.9 實時調度算法
5.10 進程調度的過程
5.11 高級議題:調度異常之優先級倒挂
思考題
第6章 進程通信
引子:孤獨爆破手的自白
6.1 為什麼要通信
6.2 進程對白:管道、記名管道、套接字
6.3 進程電報:信號
6.4 進程旗語:信號量
6.5 進程擁抱:共享内存
6.6 信件發送:消息隊列
6.7 其他通信機制
思考題
第三篇 線程原理篇
第7章 線程
引子:亞曆山大的分身術
7.1 進程的分身術——線程
7.2 線程管理
7.3 線程模型的實現
7.4 現代操作系統的線程實現模型
7.5 多線程的關系
7.6 讨論:從用戶态進入内核态
7.7 讨論:線程的困惑——确定性與非确定性
思考題
第8章 線程同步
引子:滑鐵盧的同步
8.1 為什麼要同步
8.2 線程同步的目的
8.3 鎖的進化:金魚生存
8.4 睡覺與叫醒:生産者與消費者問題
8.5 信號量
8.6 鎖、睡覺與叫醒、信號量
8.7 管程
8.8 消息傳遞
8.9 栅欄
思考題
第9章 死鎖應對之哲學原理
引子:迷霧籠罩的加拿大
9.1 為什麼會發生死鎖
9.2 死鎖的描述
9.3 死鎖的4個必要條件
9.4 哲學家就餐問題
9.5 死鎖的應對
9.6 消除死鎖的必要條件
9.7 銀行家算法:冒險的代價
9.8 哲學家就餐問題之解
9.9 讨論:死鎖的思考——綜合治理
9.10 讨論:死鎖、活鎖與饑餓
思考題
第10章 鎖的實現
引子:高登繩結
10.1 以中斷啟用與禁止來實現鎖
10.2 以測試與設置指令來實現鎖
10.3 以非繁忙等待、中斷啟用與禁止來實現鎖
10.4 以最少繁忙等待、測試與設置來實現鎖
10.5 中斷禁止、測試與設置
思考題
第四篇 内存原理篇
第11章 基本内存管理
引子:讓别人無路可走
11.1 内存管理的環境
11.2 内存管理的目标
11.3 虛拟内存的概念
11.4 操作系統在内存中的位置
11.5 單道編程的内存管理
11.6 多道編程的内存管理
11.7 閑置空間管理
思考題
第12章 頁式内存管理
引子:虛拟概念的變現
12.1 基址極限管理模式的問題
12.2 分頁内存管理
12.3 分頁系統的優缺點
12.4 翻譯速度
12.5 缺頁中斷處理
12.6 鎖住頁面
12.7 頁面尺寸
12.8 内存抖動
思考題
第13章 頁面更換算法
引子:黑洞理論的替換
13.1 頁面需要更換
13.2 頁面更換的目标
13.3 随機更換算法
13.4 先進先出算法
13.5 第二次機會算法
13.6 時鐘算法
13.7 最優更換算法
13.8 NRU算法
13.9 LRU算法
13.10 工作集算法
13.11 工作集時鐘算法
13.12 頁面替換策略
思考題
第14章 段式内存管理
引子:否定之否定
14.1 分頁系統的缺點
14.2 分段管理系統
14.3 分段的優缺點
14.4 段頁式内存管理
14.5 段號是否占用尋址字位
14.6 讨論:否定之否定的嵌套——純粹分段與邏輯分段、分頁與段頁
思考題
第五篇 文件原理篇
第15章 磁盤操作
引子:EMC——從不可能到可能
15.1 磁盤組織與管理
15.2 磁盤的結構
15.3 盤面的結構
15.4 磁盤驅動器的訪問速度
15.5 操作系統界面
15.6 磁盤調度算法
15.7 讨論:固态盤
15.8 讨論:智能磁盤系統
思考題
第16章 文件系統
引子:掩飾的極緻
16.1 為什麼需要文件系統
16.2 文件系統
16.3 文件系統的目标
16.4 文件的基本知識
16.5 從用戶角度看文件系統
16.6 地址獨立的實現機制:文件夾
16.7 文件系統調用
16.8 内存映射的文件訪問
思考題
第17 章文件系統實現
引子:成功中的失敗
17.1 文件系統的布局
17.2 文件的實現
17.3 目錄實現:地址獨立的實現
17.4 閑置空間管理
思考題
第18章 文件系統性能
引子:從不可能到可能
18.1 文件授權管理
18.2 主動控制:訪問控制表
18.3 能力表
18.4 訪問控制的實施
18.5 其他文件安全措施
18.6 文件系統性能
18.7 文件系統效率性能
18.8 文件系統設計分析:日志結構的文件系統
18.9 海量數據文件系統
思考題
第六篇 I/O原理篇
第19章 輸入輸出
引子:約翰遜的輸出——從沒有到爆發
19.1 輸入輸出
19.2 輸入輸出的目的
19.3 輸入輸出硬件
19.4 I/O軟件
19.5 I/O軟件分層
思考題
第七篇 多核原理篇
第20章 多核結構與内存
引子:不能承受之熱
20.1 以量取勝
20.2 多核基本概念
20.3 多核的内存結構
20.4 對稱多處理器計算機的啟動過程
20.5 多處理器之間的通信
20.6 SMP緩存一緻性
20.7 多處理器、超線程和多核的比較
思考題
第21章 多核環境下的進程同步與調度
引子:“多核”帝國的隕落
21.1 多核環境下操作系統的修正
21.2 多核環境下的進程同步與調度
21.3 多核進程同步
21.4 硬件原子操作
21.5 總線鎖
21.6 多核環境下的軟件同步原語
21.7 旋鎖
21.8 其他同步原語
21.9 多核環境下的進程調度
21.10 多核環境下的能耗管理
21.11 讨論:多核系統的性能
思考題
第八篇 操作系統設計篇
第22章 操作系統設計之哲學原理
引子:殘缺心智的勝利
22.1 操作系統設計的追求
22.2 操作系統設計的第1條哲學原理:層次架構
22.3 操作系統設計的第2條哲學原理:沒有對錯
22.4 操作系統設計的第3條哲學原理:懶人哲學
22.5 操作系統設計的第4條哲學原理:讓困于人
22.6 操作系統設計的第5條哲學原理:留有餘地
22.7 操作系統設計的第6條哲學原理:子虛烏有——海市蜃樓之美
22.8 操作系統設計的第7條哲學原理:時空轉換——滄海桑田之變
22.9 操作系統設計的第8條哲學原理:策機分離與權利分離
22.10 操作系統設計的第9條哲學原理:簡單為美——求于至簡,歸于永恒
22.11 操作系統設計的第10條哲學原理:适可而止
思考題
結語:失望與希望
參考文獻

0 條評論