操作係統:精髓與設計原理(原書第6版) [Operating Systems:Internals and Design Principles,Sixth Edition] pdf epub mobi txt 電子書 下載
編輯推薦
《操作係統:精髓與設計原理(原書第6版)》是計算機界巨擘William Stallings的經典著作之一,其第4版曾獲得美國計算機科學與工程類大奬,得到瞭全球計算機教育界和工程技術人員的好評。書中不僅全麵地講述瞭操作係統的基本概念、原理和方法,而且還以當代流行的操作係統為例,全麵清楚地展現瞭當代操作係統的本質和特點。作者針對近幾年操作係統領域的全新變化,對操作係統的設計原理進行深入的闡述,同時將其對操作係統整個領域全麵而深入的理解呈現給讀者。
《操作係統:精髓與設計原理(原書第6版)》特色
·選擇WirldowsVista、LJNIX和Linux三個操作係統作為示例,以幫助讀者熟悉當代操作係統的設計原理和實現問題。
·新增嵌入式操作係統一章,討論瞭嵌入式操作係統的基本特點,並給齣瞭兩個實例係統:TinyOS和eCos。
·在第5版的基礎上擴展瞭計算機安全的相關內容,包括計算機安全威脅和計算機安全技術。
·擴展和更新瞭並發的相關內容,並增加瞭有關遊戲軟件中多處理器調度設計問題的實例。
·補充動畫演示、模擬項目和編程項目,便於培養學生的動手實踐能力。
·改進瞭插圖,增加大量新的“現場測試”(field-tested)型傢庭作業。
·調整和擴充瞭章末的練習題,有助於讀者深入理解操作係統的精髓。
內容簡介
操作係統是計算機係統的核心係統軟件,負責控製和管理整個係統,使之協調工作。《操作係統:精髓與設計原理(原書第6版)》不僅全麵地講述瞭操作係統的基本概念、原理和方法,還清楚地展現瞭當代操作係統的本質和特點。全書分為八個部分,由淺入深地介紹瞭計算機係統、操作係統、進程描述和控製、綫程、微內核、並發性、內存管理、虛擬內存、單處理器調度、多處理器和實時調度、I/O管理和磁盤調度、文件管理、嵌入式操作係統、計算機安全技術以及分布式操作係統等內容。
《操作係統:精髓與設計原理(原書第6版)》內容豐富,具有很強的實用價值,適閤作為高等院校計算機及相關專業本科生的操作係統課程教材,也可供專業技術人員參考。
作者簡介
斯托林斯(William Stallings),擁有美國麻省理工學院計算機科學博士學位,現任教於澳大利亞新南威爾士大學國防學院(堪培拉)信息技術與電子工程係。他是世界知名的計算機學者和暢銷教材作者,已經撰寫瞭17部著作,齣版瞭40多本書籍,內容涉及計算機安全、計算機網絡和計算機體係結構等方麵,堪稱計算機界的全纔。他曾九次榮獲美國“教材和學術專著作者協會”頒發的“年度上佳計算機科學教材”奬。
內頁插圖
目錄
齣版者的話
譯者序
前言
第0章 讀者指南
0.1 本書概述
0.2 讀者和教師的學習路綫圖
0.3 Internet和Web資源
第一部分 背景
第1章 計算機係統概述
1.1 基本構成
1.2 處理器寄存器
1.2.1 用戶可見寄存器
1.2.2 控製和狀態寄存器
1.3 指令的執行
1.3.1 取指令和執行指令
1.3.2 I/0函數
1.4 扣斷
1.4.1 中斷和指令周期
1.4.2 中斷處理
1.4.3 多個中斷
1.4.4 多道程序設計
1.5 存儲器的層次結構
1.6 高速緩存
1.6.1 動機
1.6.2 高速緩存原理
1.6.3 高速緩存設計
1.7 I/O通信技術
1.7.1 可編程I/O
1.7.2 中斷驅動I/O
1.7.3 直接內存存取
1.8 推薦讀物和網站
1.9 關鍵術語、復習題和習題
附錄1 A兩級存儲器的性能特徵
附錄1 B過程控製
第2章 操作係統概述
2.1 操作係統的目標和功能
2.1.1 作為用戶/計算機接口的操作係統
2.1.2 作為資源管理器的操作係統
2.1.3 操作係統的易擴展性
2.2 操作係統的發展
2.2.1 串行處理
2.2.2 簡單批處理係統
2.2.3 多道程序設計批處理係統
2.2.4 分時係統
2.3 主要的成就
2.3.1 進程
2.3.2 內存管理
2.3.3 信息保護和安全
2.3.4 調度和資源管理
2.3.5 係統結構
2.4 現代操作係統的特徵
2.5 微軟的Windows概述
2.5.1 曆史
2.5.2 單用戶多任務
2.5.3 體係結構
2.5.4 客戶,服務器模型
2.5.5 綫程和SMP
2.5.6 Windows對象
2.6 傳統的UNIX係統
2.6.1 曆史
2.6.2 描述
2.7 現代UNIX係統
2.7.1 係統V版本4(SVR4)
2.7.2 BSD
2.7.3 Solaris10
2.8 Linux操作係統
2.8.1 曆史
2.8.2 模塊結構
2.8.3 內核組件
2.9 推薦讀物和網站
2.10 關鍵術語、復習題和習題
第二部分 進程
第3章 進程描述和控製
3.1 什麼是進程
3.1.1 背景
3.1.2 進程和進程控製塊
3.2 進程狀態
3.2.1 兩狀態進程模型
3.2.2 進程的創建和終止
3.2 -3五狀態模型
3.2.4 被掛起的進程
3.3 進程描述
3.3.1 操作係統的控製結構
3.3.2 進程控製結構
3.4.進程控製
3.4.1 執行模式
3.4.2 進程創建
3.4.3 進程切換
3.5 操作係統的執行
3.5.1 無進程的內核
3.5.2 在用戶進程中執行
3.5.3 基於進程的操作係統
3.6 安全問題
3.6.1 係統訪問威脅
3.6.2 對抗措施
3.7 UNIXSVR4進程管理
3.7.1 進程狀態
3.7.2 進程描述
3.7.3 進程控製
3.8 小結
3.9 推薦讀物
3.10 關鍵術語、復習題和習題
編程項目1:開發一個shell程序
第4章 綫程、對稱多處理(SMP)和微內核
4.1 進程和綫程
4.1.1 多綫程
4.1.2 綫程功能特性
4.1.3例子:Adobe Page Maker
4.1.4 用戶級和內核級綫程
4.1.5 其他方案
4.2 對稱多處理
4.2.1 SMP體係結構
4.2.2 SMP係統的組織結構
4.2.3 多處理器操作係統的設計思考
4.3 微內核
4.3.1 微內核體係結構
4.3.2 微內核組織結構的優點
4.3.3 微內核性能
4.3.4 微內核設計
4.4 Windows綫程和SMP管理
4.4.1 進程對象和綫程對象
4.4.2 多綫程
4.4 -3綫程狀態
4.4.4 X寸操作係統子係統的支持
4.4.5 對稱多處理的支持
4.5 Solaris的綫程和SMP管理
4.5.1 多綫程體係結構
4.5.2 動機
4.5.3 進程結構
4.5.4 綫程的執行
4.5.5 把中斷當做綫程
4.6 Linux的進程和綫程管理
4.6.1 Linux任務
4.6.2 Linux綫程
4.7 小結
4.8 推薦讀物
4.9 關鍵術語、復習題和習題
第5章 並發性:互斥和同步
5.1 並發的原理
5.1.1 一個簡單的例子
5.1.2 競爭條件
5.1 -3操作係統關注的問題
5.1.4 進程的交互
5.1.5 互斥的要求
5.2 互斥:硬件的支持
5.2.1 中斷禁用
5.2.2 專用機器指令
5.3 信號量
5.3.1 互斥
5.3.2 生産者/消費者問題
5.3.3 信號量的實現
5.4 管程
5.4.1 使用信號的管程
5.4.2 使用通知和廣播的管程
5.5 消息傳遞
5.5.1 同步
5.5.2 尋址
5.5.3 消息格式
5.5.4 排隊原則
5.5.5 互斥
5.6 讀者一寫者問題
5.6.1 讀者優先
5.6.2 寫者優先
5.7 小結
5.8 推薦讀物
5.9 關鍵術語、復習題和習題
第6章 並發:死鎖和飢餓
6.1 死鎖的原理
6.1.1 可重用資源
6.1.2 可消耗資源
6.1.3 資源分配圖
6.1.4 死鎖的條件
6.2 死鎖預防
6.2.1 互斥
6.2.2 占有且等待
6.2.3 不可搶占
6.2.4 循環等待
6.3 死鎖避免
6.3.1 進程啓動拒絕
6.3.2 資源分配拒絕
6.4.死鎖檢測
6.4.1 死鎖檢測算法
6.4.2 恢復
6.5 一種綜閤的死鎖策略
6.6 哲學傢就餐問題
6.6.1 使用信號量解決方案
6.6.2 使用管程解決方案
6.7 UNIX的並發機製
6.7.1 管道
6.7.2 消息
6.7.3 共享內存
6.7.4 信號量
6.7.5 信號
6.8 Linux內核並發機製
6.8.1 原子操作
6.8.2 自鏇鎖
6.8.3 信號量
6.8.4 屏障.
6.9 Solaris綫程同步原語
6.9.1 互斥鎖
6.9.2 信號量
6.9.3 多讀者/單寫者鎖
6.9.4 條件變量
6.10 Windows並發機製
6.10.1 等待函數
6.10.2 分派器對象
6.10.3 臨界區
6.10.4 輕量級讀寫鎖和條件變量
6.11 小結
6.12 推薦讀物
6.13 關鍵術語、復習題和習題
第三部分 內存
第7章 內存管理
7.1 內存管理的需求
7.1.1 重定位
7.1.2 保護
7.1.3 共享
7.1.4 邏輯組織
7.1.5 物理組織
7.2 內存分區
7.2.1 固定分區
7.2.2 動態分區
7.2.3 夥伴係統
7.2.4 重定位
7.3 分頁
7.4 分段
7.5 安全問題
7.5.1 緩衝區溢齣攻擊
7.5.2 預防緩衝區溢齣
7.6 小結
7.7 推薦讀物
7.8 關鍵術語、復習題和習題
附錄7A加載和鏈接
第8章 虛擬內存
8.1 硬件和控製結構
8.1.1 局部性和虛擬內存
8.1.2 分頁
8.1.3 分段
8.1.4 段頁式
8.1.5 保護和共享
8.2 操作係統軟件
8.2.1 讀取策略
8.2.2 放置策略
8.2.3 置換策略
8.2.4 駐留集管理
8.2.5 清除策略
8.2.6 加載控製
8.3 UNIX和Solaris內存管理
8.3.1 分頁係統
8.3.2 內核內存分配器
8.4 Linux內存管理
8.4.1 Linux虛擬內存
8.4.2 內核內存分配
8.5 Windows內存管理
8.5.1 Windows虛擬地址映射
8.5.2 Windows分頁
8.6 t]I、結
8.7 推薦讀物和網站
8.8 關鍵術語、復習題和習題
附錄8A散列錶
第四部分 調度
第9章 單處理器調度
9.1 處理器調度的類型
9.1.1 長程調度
9.1.2 p程調度
9.1.3 短程調度
9.2 調度算法
9.2.1 短程調度準則
9.2.2 優先級的使用
9.2.3 選擇調度策略
9.2.4 性能比較
9.2.5 公平共享調度
9.3 傳統的UNIX調度
9.4 小結
9.5 推薦讀物
9.6 關鍵術語、復習題和習題
附錄9A響應時間
附錄9B排隊係統
編程項目2:主機調度shell程序
第10章 多處理器和實時調度
10.1 多處理器調度
10.1.1 粒度
10.1.2 設計問題
10.1.3 進程調度
10.1.4 綫程調度
10.2 實時調度
10.2.1 背景
10.2.2 實時操作係統的特點
10.2.3 實時調度
10.2.4 限期調度
10.2.5 速率單調調度
……
第五部分 I/O和文件
第11章 I/O管理和磁盤調度
第12章 文件管理
第六部分 嵌入式係統
第13章 嵌入式操作係統
第七部分 安全
第14章 計算機安全威脅
第15章 計算機安全技術
第八部分 分布式係統
第16章 分布式處理、客戶/服務器和集群
精彩書摘
第O章讀者指南
USENET新聞組本書及相關Web站點包含瞭大量的資料,下麵將給讀者提供一個總體介紹。
0.1 本書概述
本書共分為八個部分:
第一部分背景:提供關於計算機組織與係統結構的綜述,重點講述與操作係統設計相關的主題,並且概述瞭本書的其餘部分操作係統(OS)的各個主題。
第二部分進程:詳細分析進程、多綫程、對稱多處理(SMP)和微內核,還討論瞭單一係統中的並發機製,重點講述瞭互斥和死鎖。
第三部分存儲器:全麵講述存儲器管理技術,包括虛擬存儲器。
第四部分調度:對多種進程調度方法進行分析比較,同時還討論綫程調度、SMP調度和實時調度。
第五部分輸入/輸齣與文件:分析操作係統中有關輸人/輸齣函數的控製,特彆是磁盤輸入/輸齣,它是決定係統性能的關鍵所在。本部分還給齣瞭關於文件管理的綜述。
第六部分嵌入式係統:嵌入式係統的數量遠遠多於通用計算係統,因此存在許多獨特的嵌入式操作係統。本章討論瞭嵌入式操作係統的一般性原理,並且介紹瞭兩個實例係統:TinyOS和eCoso第七部分安全:對涉及計算機和網絡安全的威脅和防護機製進行瞭概述。
第八部分分布式係統:分析計算機係統網絡化技術的主要趨勢,包括TCP/IP、客戶/服務器計算和集群,同時還介紹分布式係統開發中的一些主要設計領域。
前言/序言
目標本書是一本關於操作係統的概念、結構和機製的教材,其目的是盡可能清楚和全麵地展現當代操作係統的本質和特點。這是一項具有挑戰性的任務。首先,需要為各種各樣的計算機係統設計操作係統,包括單用戶工作站和個人計算機、中等規模的共享係統、大型計算機和超級計算機以及諸如實時係統之類的專門機器。多樣性不僅錶現在機器的容量和速度上,而且錶現在具體應用和係統支持的需求上。其次,計算機係統正以日新月異的速度發展變化,操作係統設計中的許多重要領域都是新近開始研究的,而關於這些領域以及其他新領域的研究工作仍然在繼續著。盡管存在著多樣性和變化快等問題,一些基本概念仍然貫穿始終。當然,這些概念的應用依賴於當前的技術狀況和特定的應用需求。
本書的目的是對操作係統設計的基本原理提供全麵的討論,並且與當代流行的設計問題以及當前操作係統的發展方嚮聯係起來。
示例係統本書試圖使讀者熟悉當代操作係統的設計原理和實現問題,因此單純講述概念和理論是遠遠不夠的。為瞭說明這些概念,同時將它們與真實世界中不得不做齣的設計選擇相聯係,本書選擇瞭三個操作係統作為示例:WindowsVista:用於個人計算機、工作站和服務器的多任務操作係統。它融閤瞭很多操作係統發展的最新技術,此外,Windows是最早采用麵嚮對象原理設計的重要的商業操作係統之一。本書涵蓋瞭在Windows最新版本Vista中所采用的技術。UNIX:最初是為小型計算機而設計的多用戶操作係統,但後來廣泛用於從微機到超級計算機的各種機器中。本書包含若乾版本的UNIX。FreeBSD結閤瞭很多反映當代水平的功能,是一款得到廣泛應用的操作係統。
Solaris是一款應用廣泛的商業版UNIX係統。Linux:一款目前非常普及且源碼開放的UNIX版本。選擇這些係統是由於它們的相關性和代錶性。關於這些示例係統的討論貫穿全書,而不是集中在某一章或附錄部分。因此,在討論並發性的過程中,
操作係統:精髓與設計原理(原書第6版) [Operating Systems:Internals and Design Principles,Sixth Edition] 下載 mobi epub pdf txt 電子書
操作係統:精髓與設計原理(原書第6版) [Operating Systems:Internals and Design Principles,Sixth Edition] pdf epub mobi txt 電子書 下載