出版時(shí)間:2012-9 出版社:電子工業(yè)出版社 作者:[美] William Stallings 頁(yè)數(shù):541 字?jǐn)?shù):850000 譯者:陳向群,陳渝
Tag標(biāo)簽:無(wú)
前言
譯者序 操作系統(tǒng)在計(jì)算機(jī)系統(tǒng)中占據(jù)重要的地位,是計(jì)算機(jī)系統(tǒng)的核心和靈魂,是構(gòu)建在計(jì)算機(jī)硬件之上的第一層軟件,也是基礎(chǔ)軟件運(yùn)行平臺(tái)的主要成分?!安僮飨到y(tǒng)”是計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)的一門(mén)非常重要的專(zhuān)業(yè)基礎(chǔ)課,一本好的教材可以使學(xué)生通過(guò)仔細(xì)閱讀、深入思考、不斷練習(xí),循序漸進(jìn)地提高自己的專(zhuān)業(yè)知識(shí)和技能水平?! ∫槐窘滩模休d著什么?學(xué)生和教師對(duì)它的期望又是什么?WilliamStallings博士編寫(xiě)的《操作系統(tǒng)——精髓與設(shè)計(jì)原理》第七版給出了完美的答案。WilliamStallings博士在教材的修訂過(guò)程中,將第六版交給了一批從事相關(guān)教學(xué)和研究的教授們審閱,使新一版的敘述更加清晰、緊湊,說(shuō)明文字也進(jìn)行了修正,使本書(shū)在教育學(xué)及用戶(hù)友善性方面有了新的改進(jìn)。作為一本經(jīng)典的教材,在美國(guó),多所大學(xué)采用本書(shū)的前幾個(gè)版本作為教材或參考書(shū)目;在中國(guó),講授操作系統(tǒng)課程的教師和學(xué)習(xí)操作系統(tǒng)課程的學(xué)生對(duì)“精髓”一書(shū)也是非常熟悉?! ∥覀冋嬲\(chéng)地向廣大讀者推薦WilliamStallings博士的這本教材。本教材提供了操作系統(tǒng)原理的全景圖,對(duì)操作系統(tǒng)的概念、結(jié)構(gòu)和機(jī)制,進(jìn)行了系統(tǒng)、全面的闡述,并清晰地展示了當(dāng)代操作系統(tǒng)的本質(zhì)和特點(diǎn)。特別是,由于本教材已經(jīng)出到第七版,每一版本都在多位教師使用、反饋建議的基礎(chǔ)上,對(duì)不足進(jìn)行了更新,并結(jié)合新技術(shù)的發(fā)展,增加了新內(nèi)容以反映操作系統(tǒng)的新進(jìn)展?! 〗滩牡谄甙嬷饕獌?nèi)容分為八個(gè)部分。第一部分綜述了計(jì)算機(jī)組織與系統(tǒng)結(jié)構(gòu),重點(diǎn)講述與操作系統(tǒng)設(shè)計(jì)相關(guān)的主題。第二部分詳細(xì)分析了進(jìn)程、多線程、對(duì)稱(chēng)多處理(SMP)和微內(nèi)核,以及單一系統(tǒng)中的并發(fā)機(jī)制,重點(diǎn)講述互斥和死鎖。第三部分全面介紹了內(nèi)存管理技術(shù),包括虛擬存儲(chǔ)器。第四部分討論了線程調(diào)度、SMP調(diào)度和實(shí)時(shí)調(diào)度,分析比較了多種進(jìn)程調(diào)度方法。第五部分主要分析了操作系統(tǒng)中對(duì)I/O功能的控制,特別是磁盤(pán)I/O,給出了關(guān)于文件管理的綜述。第六部分討論了嵌入式操作系統(tǒng)的一般性原理,并介紹了兩個(gè)實(shí)例系統(tǒng):TinyOS和eCos。第七部分概述了涉及計(jì)算機(jī)和網(wǎng)絡(luò)安全的威脅與機(jī)制。第八部分圍繞分布式系統(tǒng),分析了計(jì)算機(jī)系統(tǒng)網(wǎng)絡(luò)化技術(shù)的主要趨勢(shì),同時(shí)還介紹了分布式系統(tǒng)開(kāi)發(fā)中的一些主要設(shè)計(jì)領(lǐng)域?! ”緯?shū)依然選擇最流行、應(yīng)用最廣泛的Windows(Windows7)和Linux作為實(shí)例操作系統(tǒng),并增補(bǔ)了多核操作系統(tǒng)、虛擬機(jī)、新的調(diào)度程序?qū)嵗?、面向服?wù)的架構(gòu)(SOA)、概率、統(tǒng)計(jì)和排隊(duì)分析、B樹(shù)等反映操作系統(tǒng)領(lǐng)域進(jìn)展變化的新內(nèi)容。在講解操作系統(tǒng)每一功能的過(guò)程中,引入了實(shí)例操作系統(tǒng),以加深讀者對(duì)原理的理解。本書(shū)配備有相應(yīng)的網(wǎng)站,包括一系列相關(guān)鏈接,包括作業(yè)題目和解答、編程項(xiàng)目、重要論文、支持文檔、在線章節(jié)、在線附錄等,并補(bǔ)充了大量的“現(xiàn)場(chǎng)測(cè)試”型作業(yè)練習(xí)。本書(shū)在每一章開(kāi)始給出了學(xué)習(xí)目標(biāo),還按章節(jié)給出了學(xué)生應(yīng)該在本章關(guān)注的主要概念。本書(shū)給教師提供了幾個(gè)教學(xué)大綱樣例,允許教師在有限的時(shí)間(如16周或12周)內(nèi)完成教學(xué)任務(wù)。這些樣例是在一些教師們?cè)诘诹娴恼鎸?shí)教學(xué)經(jīng)驗(yàn)的基礎(chǔ)上形成的。上述內(nèi)容為學(xué)生和教師提供豐富的輔助材料?! 榱伺浜匣诒緯?shū)的操作系統(tǒng)教學(xué),我們參照本書(shū)的重要知識(shí)點(diǎn)實(shí)現(xiàn)了一個(gè)教學(xué)用uCore操作系統(tǒng),并基于uCore操作系統(tǒng)設(shè)計(jì)了8個(gè)增量式的操作系統(tǒng)實(shí)驗(yàn)。有興趣的學(xué)生可在了解基本的操作系統(tǒng)概念和原理的基礎(chǔ)上,通過(guò)閱讀實(shí)驗(yàn)指導(dǎo)書(shū),分析uCore操作系統(tǒng)源碼,完成實(shí)驗(yàn)中的練習(xí),擴(kuò)展uCore操作系統(tǒng)功能,來(lái)逐步體會(huì)一個(gè)操作系統(tǒng)是如何實(shí)現(xiàn)的,以及操作系統(tǒng)的概念原理和實(shí)際實(shí)現(xiàn)之間的緊密聯(lián)系與巨大差異。相關(guān)實(shí)驗(yàn)指導(dǎo)書(shū)文檔和實(shí)驗(yàn)代碼放在https://github.com/chyyuu/ucore_pub上,且會(huì)持續(xù)更新?! ⒓颖緯?shū)翻譯、審閱和校對(duì)的還有劉偉、杜圓圓、閻梵茜、徐淑琪、孔俊俊、閆林、張琳、馮濤、劉晗、王浩宇、周欣、陳剛、李小奇、劉夢(mèng)馨、閆豐潤(rùn)、袁鵬飛、陳昕、呂驍博等人,在此對(duì)他(她)們的貢獻(xiàn)表示誠(chéng)摯的謝意?! ∮捎谧g者水平有限,本書(shū)的譯文中必定會(huì)存在一些不足或錯(cuò)誤之處,歡迎各位專(zhuān)家和廣大讀者批評(píng)指正?! ∽g者 2012年8月
內(nèi)容概要
本書(shū)是一本關(guān)于操作系統(tǒng)的概念、結(jié)構(gòu)和機(jī)制的教材,其目的是盡可能清楚和全面地展示現(xiàn)代操作系統(tǒng)的本質(zhì)和特點(diǎn);同時(shí),本書(shū)也是講解操作系統(tǒng)的經(jīng)典教材,不僅系統(tǒng)地講述了操作系統(tǒng)的基本概念、原理和方法,而且以當(dāng)代最流行的操作系統(tǒng)——Windows
7、UNIX和Linux為例,全面清楚地展現(xiàn)了當(dāng)代操作系統(tǒng)的本質(zhì)和特點(diǎn)。與本書(shū)配套的專(zhuān)用網(wǎng)站,為幫助教師和學(xué)生理解書(shū)中內(nèi)容,提供了及時(shí)、生動(dòng)的材料。
作者簡(jiǎn)介
作者:(美)William Stallings(威廉.斯托林斯) 譯者:陳向群
書(shū)籍目錄
第0章 讀者與教師指南
0.1 本書(shū)概述
0.2 實(shí)例系統(tǒng)
0.3 讀者和教師的學(xué)習(xí)路線圖
0.4 互聯(lián)網(wǎng)和網(wǎng)站資源
第一部分 背景知識(shí)
第1章 計(jì)算機(jī)系統(tǒng)概述
1.1 基本構(gòu)成
1.2 微處理器的發(fā)展演化
1.3 指令的執(zhí)行
1.4 中斷
1.4.1 中斷和指令周期
1.4.2 中斷處理
1.4.3 多個(gè)中斷
1.5 存儲(chǔ)器的層次結(jié)構(gòu)
1.6 高速緩存
1.6.1 動(dòng)機(jī)
1.6.2 高速緩存原理
1.6.3 高速緩存設(shè)計(jì)
1.7 直接內(nèi)存存取
1.8 多處理器和多核計(jì)算機(jī)組織結(jié)構(gòu)
1.8.1 對(duì)稱(chēng)多處理器
1.8.2 多核計(jì)算機(jī)
1.9 推薦讀物和網(wǎng)站
1.10 關(guān)鍵術(shù)語(yǔ)、復(fù)習(xí)題和習(xí)題
1.10.1 關(guān)鍵術(shù)語(yǔ)
1.10.2 復(fù)習(xí)題
1.10.3 習(xí)題
附錄1A 兩級(jí)存儲(chǔ)器的性能特征
第2章 操作系統(tǒng)概述
2.1 操作系統(tǒng)的目標(biāo)和功能
2.1.1 作為用戶(hù)/計(jì)算機(jī)接口的操作系統(tǒng)
2.1.2 作為資源管理器的操作系統(tǒng)
2.1.3 操作系統(tǒng)的易擴(kuò)展性
2.2 操作系統(tǒng)的發(fā)展
2.2.1 串行處理
2.2.2 簡(jiǎn)單批處理系統(tǒng)
2.2.3 多道批處理系統(tǒng)
2.2.4 分時(shí)系統(tǒng)
2.3 主要的成就
2.3.1 進(jìn)程
2.3.2 內(nèi)存管理
2.3.3 信息保護(hù)和安全
2.3.4 調(diào)度和資源管理
2.4 現(xiàn)代操作系統(tǒng)的特征
2.5 虛擬機(jī)
2.5.1 虛擬機(jī)和虛擬化
2.5.2 虛擬機(jī)架構(gòu)
2.6 針對(duì)多處理器和多核的操作系統(tǒng)設(shè)計(jì)考慮因素
2.6.1 對(duì)稱(chēng)多處理器計(jì)算機(jī)的操作系統(tǒng)設(shè)計(jì)考慮因素
2.6.2 多核計(jì)算機(jī)的操作系統(tǒng)設(shè)計(jì)考慮因素
2.7 微軟Windows系統(tǒng)簡(jiǎn)介
2.7.1 歷史
2.7.2 現(xiàn)代操作系統(tǒng)
2.7.3 體系結(jié)構(gòu)
2.7.4 客戶(hù)/服務(wù)器模型
2.7.5 線程和SMP
2.7.6 Windows對(duì)象
2.7.7 Windows 7中的新特性
2.8 傳統(tǒng)的UNIX系統(tǒng)
2.8.1 歷史
2.8.2 描述
2.9 現(xiàn)代UNIX系統(tǒng)
2.9.1 System V版本4(簡(jiǎn)稱(chēng)SVR4)
2.9.2 BSD
2.9.3 Solaris 10
2.10 Linux操作系統(tǒng)
2.10.1 歷史
2.10.2 模塊結(jié)構(gòu)
2.10.3 內(nèi)核組件
2.11 Linux Vserver虛機(jī)器結(jié)構(gòu)
2.12 推薦讀物和網(wǎng)站
2.13 關(guān)鍵術(shù)語(yǔ)、復(fù)習(xí)題和習(xí)題
2.13.1 關(guān)鍵術(shù)語(yǔ)
2.13.2 復(fù)習(xí)題
2.13.3 習(xí)題
第二部分 進(jìn)程
第3章 進(jìn)程描述和控制
3.1 什么是進(jìn)程
3.1.1 背景
3.1.2 進(jìn)程和進(jìn)程控制塊
3.2 進(jìn)程狀態(tài)
3.2.1 兩狀態(tài)進(jìn)程模型
3.2.2 進(jìn)程的創(chuàng)建和終止
3.2.3 五狀態(tài)模型
3.2.4 被掛起的進(jìn)程
3.3 進(jìn)程描述
3.3.1 操作系統(tǒng)的控制結(jié)構(gòu)
3.3.2 進(jìn)程控制結(jié)構(gòu)
3.4 進(jìn)程控制
3.4.1 執(zhí)行模式
3.4.2 進(jìn)程創(chuàng)建
3.4.3 進(jìn)程切換
3.5 操作系統(tǒng)的執(zhí)行
3.5.1 無(wú)進(jìn)程的內(nèi)核
3.5.2 在用戶(hù)進(jìn)程中執(zhí)行
3.5.3 基于進(jìn)程的操作系統(tǒng)
3.6 安全問(wèn)題
3.6.1 系統(tǒng)訪問(wèn)威脅
3.6.2 對(duì)抗措施
3.7 UNIX SVR4進(jìn)程管理
3.7.1 進(jìn)程狀態(tài)
3.7.2 進(jìn)程描述
3.7.3 進(jìn)程控制
3.8 小結(jié)
3.9 推薦讀物
3.10 關(guān)鍵術(shù)語(yǔ)、復(fù)習(xí)題和習(xí)題
3.10.1 關(guān)鍵術(shù)語(yǔ)
3.10.2 復(fù)習(xí)題
3.10.3 習(xí)題
第4章 線程
4.1 進(jìn)程和線程
4.1.1 多線程
4.1.2 線程功能特性
4.2 線程分類(lèi)
4.2.1 用戶(hù)級(jí)和內(nèi)核級(jí)線程
4.2.2 其他方案
4.3 多核和多線程
4.3.1 多核系統(tǒng)上的軟件性能
4.3.2 應(yīng)用示例:Valve游戲軟件
4.4 Windows 7線程和SMP管理
4.4.1 進(jìn)程對(duì)象和線程對(duì)象
4.4.2 多線程
4.4.3 線程狀態(tài)
4.4.4 對(duì)OS子系統(tǒng)的支持
4.4.5 對(duì)稱(chēng)多處理的支持
4.5 Solaris的線程和SMP管理
4.5.1 多線程體系結(jié)構(gòu)
4.5.2 動(dòng)機(jī)
4.5.3 進(jìn)程結(jié)構(gòu)
4.5.4 線程的執(zhí)行
4.5.5 把中斷當(dāng)做線程
4.6 Linux的進(jìn)程和線程管理
4.6.1 Linux任務(wù)
4.6.2 Linux線程
4.7 Mac OS X的GCD技術(shù)
4.8 小結(jié)
4.9 推薦讀物
4.10 關(guān)鍵術(shù)語(yǔ)、復(fù)習(xí)題和習(xí)題
4.10.1 關(guān)鍵術(shù)語(yǔ)
4.10.2 復(fù)習(xí)題
4.10.3 習(xí)題
第5章 并發(fā)性:互斥和同步
5.1 并發(fā)的原理
5.1.1 一個(gè)簡(jiǎn)單的例子
5.1.2 競(jìng)爭(zhēng)條件
5.1.3 操作系統(tǒng)關(guān)注的問(wèn)題
5.1.4 進(jìn)程的交互
5.1.5 互斥的要求
5.2 互斥:硬件的支持
5.2.1 中斷禁用
5.2.2 專(zhuān)用機(jī)器指令
5.3 信號(hào)量
5.3.1 互斥
5.3.2 生產(chǎn)者/消費(fèi)者問(wèn)題
5.3.3 信號(hào)量的實(shí)現(xiàn)
5.4 管程
5.4.1 使用信號(hào)的管程
5.4.2 使用通知和廣播的管程
5.5 消息傳遞
5.5.1 同步
5.5.2 尋址
5.5.3 消息格式
5.5.4 排隊(duì)原則
5.5.5 互斥
5.6 讀者/寫(xiě)者問(wèn)題
5.6.1 讀者優(yōu)先
5.6.2 寫(xiě)者優(yōu)先
5.7 小結(jié)
5.8 推薦讀物
5.9 關(guān)鍵術(shù)語(yǔ)、復(fù)習(xí)題和習(xí)題
5.9.1 關(guān)鍵術(shù)語(yǔ)
5.9.2 復(fù)習(xí)題
5.9.3 習(xí)題
第6章 并發(fā):死鎖和饑餓
6.1 死鎖原理
6.1.1 可重用資源
6.1.2 可消耗資源
6.1.3 資源分配圖
6.1.4 死鎖的條件
6.2 死鎖預(yù)防
6.2.1 互斥
6.2.2 占有且等待
6.2.3 不可搶占
6.2.4 循環(huán)等待
6.3 死鎖避免
6.3.1 進(jìn)程啟動(dòng)拒絕
6.3.2 資源分配拒絕
6.4 死鎖檢測(cè)
6.4.1 死鎖檢測(cè)算法
6.4.2 恢復(fù)
6.5 一種綜合的死鎖策略
6.6 哲學(xué)家就餐問(wèn)題
6.6.1 基于信號(hào)量解決方案
6.6.2 基于管程解決方案
6.7 UNIX的并發(fā)機(jī)制
6.7.1 管道
6.7.2 消息
6.7.3 共享內(nèi)存
6.7.4 信號(hào)量
6.7.5 信號(hào)
6.8 Linux內(nèi)核并發(fā)機(jī)制
6.8.1 原子操作
6.8.2 自旋鎖
6.8.3 信號(hào)量
6.8.4 屏障
6.9 Solaris線程同步原語(yǔ)
6.9.1 互斥鎖
6.9.2 信號(hào)量
6.9.3 多讀者/單寫(xiě)者鎖
6.9.4 條件變量
6.10 Windows 7并發(fā)機(jī)制
6.10.1 等待函數(shù)
6.10.2 分派器對(duì)象
6.10.3 臨界區(qū)
6.10.4 輕量級(jí)讀者-寫(xiě)者鎖和條件變量
6.10.5 鎖無(wú)關(guān)同步機(jī)制
6.11 小結(jié)
6.12 推薦讀物
6.13 關(guān)鍵術(shù)語(yǔ)、復(fù)習(xí)題和習(xí)題
6.13.1 關(guān)鍵術(shù)語(yǔ)
6.13.2 復(fù)習(xí)題
6.13.3 習(xí)題
第三部分 內(nèi)存
第7章 內(nèi)存管理
7.1 內(nèi)存管理的需求
7.1.1 重定位
7.1.2 保護(hù)
7.1.3 共享
7.1.4 邏輯組織
7.1.5 物理組織
7.2 內(nèi)存分區(qū)
7.2.1 固定分區(qū)
7.2.2 動(dòng)態(tài)分區(qū)
7.2.3 伙伴系統(tǒng)
7.2.4 重定位
7.3 分頁(yè)
7.4 分段
7.5 安全問(wèn)題
7.5.1 緩沖區(qū)溢出攻擊
……
第四部分 調(diào)度
第五部分 輸入/輸出和文件
第六部分 嵌入式系統(tǒng)
第七部分 計(jì)算機(jī)安全
第八部分 分布式系統(tǒng)
附錄A 并發(fā)主題
附錄B 編程和操作系統(tǒng)項(xiàng)目
術(shù)語(yǔ)表
參考書(shū)目
章節(jié)摘錄
版權(quán)頁(yè): 插圖: 在查看包含兩個(gè)新掛起狀態(tài)的狀態(tài)轉(zhuǎn)換圖之前,必須提到另一點(diǎn)。到現(xiàn)在為止的論述都假設(shè)沒(méi)有使用虛擬內(nèi)存,進(jìn)程或者都在內(nèi)存中,或者都在內(nèi)存之外。在虛擬內(nèi)存方案中,可能會(huì)執(zhí)行到只有一部分內(nèi)容在內(nèi)存中的進(jìn)程,如果訪問(wèn)的進(jìn)程地址不在內(nèi)存中,則進(jìn)程的相應(yīng)部分可以被調(diào)入內(nèi)存。虛擬內(nèi)存的使用看上去會(huì)消除顯式交換的需要,這是因?yàn)橥ㄟ^(guò)處理器中的存儲(chǔ)管理硬件,任何期望的進(jìn)程中的任何期望的地址都可以移入或移出內(nèi)存。但是,正如在第8章中將會(huì)看到的,如果有足夠多的活動(dòng)進(jìn)程,并且所有進(jìn)程都有一部分在內(nèi)存中,則有可能導(dǎo)致虛擬內(nèi)存系統(tǒng)崩潰。因此,即使在虛擬存儲(chǔ)系統(tǒng)中,操作系統(tǒng)也需要不時(shí)地根據(jù)執(zhí)行情況,顯式地、完全地?fù)Q出進(jìn)程。 現(xiàn)在來(lái)看圖3.9(b)中我們已開(kāi)發(fā)的狀態(tài)變轉(zhuǎn)換型(圖中的虛線表示可能但并不是必需的轉(zhuǎn)換)。比較重要的新轉(zhuǎn)換如下: 阻塞→阻塞∕掛起:如果沒(méi)有就緒進(jìn)程,則至少—個(gè)阻塞進(jìn)程被換出,為另—個(gè)沒(méi)有阻塞的進(jìn)程讓出空間。如果操作系統(tǒng)確定當(dāng)前正在運(yùn)行的進(jìn)程,或就緒進(jìn)程為了維護(hù)基本的性能要求而需要更多的內(nèi)存空間,那么,即使有可用的就緒態(tài)進(jìn)程也可能出現(xiàn)這種轉(zhuǎn)換。 阻塞∕掛起→就緒∕掛起:如果等待的事件發(fā)生了,則處于阻塞∕掛起狀態(tài)的進(jìn)程可轉(zhuǎn)換到就緒/掛起態(tài)。注意,這要求操作系統(tǒng)必須能夠得到掛起進(jìn)程的狀態(tài)信息。 就緒∕掛起→就緒:如果內(nèi)存中沒(méi)有就緒態(tài)進(jìn)程,操作系統(tǒng)需要調(diào)入—個(gè)進(jìn)程繼續(xù)執(zhí)行。此外,當(dāng)處于就緒∕掛起態(tài)的進(jìn)程比處于就緒態(tài)的任何進(jìn)程的優(yōu)先級(jí)都要高時(shí),也可以進(jìn)行這種轉(zhuǎn)換。這種情況的產(chǎn)生是由于操作系統(tǒng)設(shè)計(jì)者規(guī)定,調(diào)入高優(yōu)先級(jí)的進(jìn)程比減少交換量更重要。 就緒→就緒/掛起:通常,操作系統(tǒng)更傾向于掛起阻塞態(tài)進(jìn)程而不是就緒態(tài)進(jìn)程,因?yàn)榫途w態(tài)進(jìn)程可以立即執(zhí)行,而阻塞態(tài)進(jìn)程占用了內(nèi)存空間但不能執(zhí)行。但如果釋放內(nèi)存以得到足夠空間的唯一方法是掛起—個(gè)就緒態(tài)進(jìn)程,那么這種轉(zhuǎn)換也是必需的。并且,如果操作系統(tǒng)確信高優(yōu)先級(jí)的阻塞態(tài)進(jìn)程很快將會(huì)就緒,那么它可能選擇掛起—個(gè)低優(yōu)先級(jí)的就緒態(tài)進(jìn)程,而不是—個(gè)高優(yōu)先級(jí)的阻塞態(tài)進(jìn)程。 還需要考慮的幾種其他轉(zhuǎn)換有: 新建→就緒∕掛起及新建→就緒:當(dāng)創(chuàng)建一個(gè)新進(jìn)程時(shí),該進(jìn)程或者加入就緒隊(duì)列,或者加入就緒∕掛起隊(duì)列。不論哪種情況,操作系統(tǒng)都必須建立一些表以管理進(jìn)程,并為進(jìn)程分配地址空間。操作系統(tǒng)可能更傾向于在初期執(zhí)行這些輔助工作,這使得它可以維護(hù)大量的未阻塞的進(jìn)程。通過(guò)這一策略,內(nèi)存中經(jīng)常會(huì)沒(méi)有足夠的空間分配給新進(jìn)程,因此使用了(新建→就緒/掛起)轉(zhuǎn)換。另一方面,我們可以證明創(chuàng)建進(jìn)程的適時(shí)(just-in-time)原理,即盡可能推遲創(chuàng)建進(jìn)程以減少操作系統(tǒng)的開(kāi)銷(xiāo),并在系統(tǒng)被阻塞態(tài)進(jìn)程阻塞時(shí)允許操作系統(tǒng)執(zhí)行進(jìn)程創(chuàng)建任務(wù)。 阻塞∕掛起→阻塞:這種轉(zhuǎn)換在設(shè)計(jì)中比較少見(jiàn),如果一個(gè)進(jìn)程沒(méi)有準(zhǔn)備好執(zhí)行,并且不在內(nèi)存中,調(diào)入它又有什么意義?但是考慮到下面的情況:—個(gè)進(jìn)程終止,釋放了一些內(nèi)存空間,阻塞∕掛起隊(duì)列中有—個(gè)進(jìn)程比就緒∕掛隊(duì)列中任何進(jìn)程的優(yōu)先級(jí)都要高,并且操作系統(tǒng)有理由相信阻塞進(jìn)程的事件很快就會(huì)發(fā)生,這時(shí),把阻塞進(jìn)程而不是就緒進(jìn)程調(diào)入內(nèi)存是合理的。 運(yùn)行→就緒∕掛起:通常當(dāng)分配給一個(gè)運(yùn)行進(jìn)程的時(shí)間期滿(mǎn)時(shí),它將轉(zhuǎn)換到就緒態(tài)。
編輯推薦
《國(guó)外計(jì)算機(jī)科學(xué)教材系列?操作系統(tǒng):精髓與設(shè)計(jì)原理(第7版)》既注重對(duì)操作系統(tǒng)經(jīng)典知識(shí)的講解,又緊密結(jié)合當(dāng)代最新的操作系統(tǒng)發(fā)展趨勢(shì),全面清楚地展現(xiàn)了當(dāng)代操作系統(tǒng)的本質(zhì)和特點(diǎn)??勺鳛榇髮W(xué)計(jì)算機(jī)專(zhuān)業(yè)學(xué)生的教材和參考書(shū),也可供從事計(jì)算機(jī)專(zhuān)業(yè)研究方向的專(zhuān)業(yè)技術(shù)人員參考。
圖書(shū)封面
圖書(shū)標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版