出版時間:2012-3-15 出版社:機械工業(yè)出版社華章公司 作者:鄒恒明 頁數(shù):448
Tag標簽:無
前言
In Pursuit of Absolute Simplicity求于至簡,歸于永恒當你在電腦上玩游戲、與朋友聊天或編寫一個程序并加載運行的時候,你有沒有一種像在觀看魔術(shù)的感覺?編寫好的程序能夠編譯運行,計算出結(jié)果,并顯示或打印出來。你有沒有覺得它很神秘? 如果想揭開這層神秘的面紗,你就得學(xué)習(xí)操作系統(tǒng)。因為操作系統(tǒng)是掌控計算機運行的系統(tǒng),在學(xué)習(xí)它的過程中,讀者能夠了解程序在計算機上運行的全景,或者說我們所認為的全景(見圖1)。之所以這么說,是因為精確了解程序圖1風(fēng)靡世界的游戲《第二生命》在計算機上運行的全景是極其困難的(有人認為這根本就是不可能的)。當然,這里的程序指的是有一定規(guī)模的程序,而不是那種只有幾行代碼的小程序(trivial program)。從某種程度上說,沒有人敢肯定自己清楚計算機在任意時刻所處的狀態(tài)。例如,在多流水線計算機上,如果發(fā)生中斷或異常, 我們根本就得不到一個精準的狀態(tài)。唯一能做的就是推倒重來。計算機的心智人有心智嗎?我想所有人都會回答:有!人的心智就是人的靈氣。這是每一個人的生命之氣。就是這個靈氣賦予了人豐富的思維、感受和行動能力(當然,也有人認為這是肉體進化的結(jié)果,不過這不是本書要討論的問題)。那么計算機有心智嗎?這不是一個詭秘或者搞笑的問題。人們通常認為能夠運動的生命都是有靈氣的,既然計算機能夠完成一些人腦才能夠完成的理性任務(wù),它當然也有心智!而這個心智就是操作系統(tǒng)(見圖2)。因為操作系統(tǒng)賦予了計算機活力。雖然讀者有可能尚不明白操作系統(tǒng)是怎么一回事兒,但也許知道若沒有操作系統(tǒng),現(xiàn)代計算機是運轉(zhuǎn)不起來的(這里需排除遠古時代的古老計算機)。操作系統(tǒng)作為計算機賴以運轉(zhuǎn)的控制中心,稱其為計算機的心智可謂恰如其分。圖2計算機的心智就是操作系統(tǒng)眾所周知,理解或看透一個人的心智是很困難的,所謂畫虎畫皮難畫骨,知人知面難知心。依此類推,既然操作系統(tǒng)是計算機的心智,恐怕理解起來也是困難重重的了。而這正是許多人在學(xué)習(xí)和研究操作系統(tǒng)時的共同感受。操作系統(tǒng)的奧秘記得小時候常常念過的一首詩是這樣的:從小時候就開始數(shù)了。數(shù)到懂事、數(shù)到成熟,還沒有數(shù)清。天上的星星為什么數(shù)不清呢?像記憶和幻想,永遠背負著固執(zhí)的謎……對于許多大學(xué)計算機及相關(guān)專業(yè)的同學(xué)來說,操作系統(tǒng)就像天上的星星(見圖3),隱藏著一個固執(zhí)的謎,永遠學(xué)不清楚。不過,操作系統(tǒng)真的學(xué)不清楚嗎?不是的。學(xué)不清楚是因為沒有看到其背后的奧秘。這個奧秘不是所有的人都知道的。即使是研究操作系統(tǒng)的人也不一定意識到它,更別提計算機初學(xué)者了。
內(nèi)容概要
操作系統(tǒng)是計算機系統(tǒng)的核心系統(tǒng)軟件,負責(zé)控制和管理整個系統(tǒng),使之協(xié)調(diào)工作。本書對操作系統(tǒng)的核心內(nèi)容進行了全面分析,包括操作系統(tǒng)的發(fā)展歷史和基本概念、進程與線程、內(nèi)存管理、文件系統(tǒng)、輸入與輸出、多核環(huán)境下的進程調(diào)度和操作系統(tǒng)設(shè)計。本書用大量生活實例,生動地解釋了操作系統(tǒng)中的主要難點和模糊點:鎖的實現(xiàn)、同步機制的發(fā)展軸線、純粹分段到段頁式的演變、多核環(huán)境下的進程同步與調(diào)度和操作系統(tǒng)設(shè)計等內(nèi)容。本書重點突出、邏輯清晰、內(nèi)容連貫,便于學(xué)生順利掌握操作系統(tǒng)的核心內(nèi)容。
本書層次豐富、涵蓋操作系統(tǒng)的所有核心內(nèi)容,適合作為國內(nèi)高校計算機及相關(guān)專業(yè)本科生操作系統(tǒng)課程的教材,也是了解計算機操作系統(tǒng)原理不可多得的參考書。
作者簡介
鄒恒明,美國密歇根大學(xué)博士。曾任職美國IBM、國家數(shù)據(jù)公司、朗訊、EMC公司8年多。在IBM和EMC分別從事AIX操作系統(tǒng)和Engenity存儲操作系統(tǒng)的研發(fā),其中包括911中挽摩根斯坦利公司于既倒的、美國唯一的“英雄軟件”SRDF。2007年在中國金融期貨交易系統(tǒng)(股指期貨)專家測評中擔(dān)任軟件測評組長。2004年以來在上海交大研究、執(zhí)教操作系統(tǒng)和算法設(shè)計等14門課程多年。
書籍目錄
前言
第一篇 基礎(chǔ)原理篇
第1章 操作系統(tǒng)導(dǎo)論
引子:智者的挑戰(zhàn)
1.1 人造與神造
1.2 程序是如何運行的
1.3 什么是操作系統(tǒng)
1.4 魔術(shù)與管理
1.5 用戶程序與操作系統(tǒng)
1.6 操作系統(tǒng)的范疇
1.7 為什么學(xué)習(xí)操作系統(tǒng)
思考題
第2章操 作系統(tǒng)歷史
引子:不能承受之真
2.1 第一階段:狀態(tài)機操作系統(tǒng)(1940年以前)
2.2 第二階段:單一操作員單一控制端操作系統(tǒng)(20世紀40年代)
2.3 第三階段:批處理操作系統(tǒng)(20世紀50年代)
2.4 第四代:多道批處理操作系統(tǒng)(20世紀60年代)
2.5 第五代之一:分時操作系統(tǒng)(20世紀70年代)
2.6 第五代之二:實時操作系統(tǒng)
2.7 第六代:現(xiàn)代操作系統(tǒng)(1980年以后)
2.8 操作系統(tǒng)的演變過程
2.9 操作系統(tǒng)的未來發(fā)展趨勢
2.10 討論:操作系統(tǒng)虛擬化和虛擬化的操作系統(tǒng)
思考題
第3章 操作系統(tǒng)基本概念
引子:軟件師的尷尬
3.1 計算機硬件基本知識
3.2 抽象
3.3 內(nèi)核態(tài)和用戶態(tài)
3.4 操作系統(tǒng)結(jié)構(gòu)
3.5 進程、內(nèi)存和文件
3.6 系統(tǒng)調(diào)用
3.7 殼
思考題
第二篇 進程原理篇
第4章 進程
引子:牛頓的困惑
4.1 進程概論
4.2 進程模型
4.3 多道編程的好處
4.4 進程的產(chǎn)生與消失
4.5 進程的層次結(jié)構(gòu)
4.6 進程的狀態(tài)
4.7 進程與地址空間
4.8 進程管理
4.9 進程的缺陷
思考題
第5章 進程調(diào)度
引子:恐怖分子的調(diào)度
5.1 進程調(diào)度的定義
5.2 進程調(diào)度的目標
5.3 先來先服務(wù)調(diào)度算法
5.4 時間片輪轉(zhuǎn)算法
5.5 短任務(wù)優(yōu)先算法
5.6 優(yōu)先級調(diào)度算法
5.7 混合調(diào)度算法
5.8 其他調(diào)度算法
5.9 實時調(diào)度算法
5.10 進程調(diào)度的過程
5.11 高級議題:調(diào)度異常之優(yōu)先級倒掛
思考題
第6章 進程通信
引子:孤獨爆破手的自白
6.1 為什么要通信
6.2 進程對白:管道、記名管道、套接字
6.3 進程電報:信號
6.4 進程旗語:信號量
6.5 進程擁抱:共享內(nèi)存
6.6 信件發(fā)送:消息隊列
6.7 其他通信機制
思考題
第三篇 線程原理篇
第7章 線程
引子:亞歷山大的分身術(shù)
7.1 進程的分身術(shù)——線程
7.2 線程管理
7.3 線程模型的實現(xiàn)
7.4 現(xiàn)代操作系統(tǒng)的線程實現(xiàn)模型
7.5 多線程的關(guān)系
7.6 討論:從用戶態(tài)進入內(nèi)核態(tài)
7.7 討論:線程的困惑——確定性與非確定性
思考題
第8章 線程同步
引子:滑鐵盧的同步
8.1 為什么要同步
8.2 線程同步的目的
8.3 鎖的進化:金魚生存
8.4 睡覺與叫醒:生產(chǎn)者與消費者問題
8.5 信號量
8.6 鎖、睡覺與叫醒、信號量
8.7 管程
8.8 消息傳遞
8.9 柵欄
思考題
第9章 死鎖應(yīng)對之哲學(xué)原理
引子:迷霧籠罩的加拿大
9.1 為什么會發(fā)生死鎖
9.2 死鎖的描述
9.3 死鎖的4個必要條件
9.4 哲學(xué)家就餐問題
9.5 死鎖的應(yīng)對
9.6 消除死鎖的必要條件
9.7 銀行家算法:冒險的代價
9.8 哲學(xué)家就餐問題之解
9.9 討論:死鎖的思考——綜合治理
9.10 討論:死鎖、活鎖與饑餓
思考題
第10章 鎖的實現(xiàn)
引子:高登繩結(jié)
10.1 以中斷啟用與禁止來實現(xiàn)鎖
10.2 以測試與設(shè)置指令來實現(xiàn)鎖
10.3 以非繁忙等待、中斷啟用與禁止來實現(xiàn)鎖
10.4 以最少繁忙等待、測試與設(shè)置來實現(xiàn)鎖
10.5 中斷禁止、測試與設(shè)置
思考題
第四篇 內(nèi)存原理篇
第11章 基本內(nèi)存管理
引子:讓別人無路可走
11.1 內(nèi)存管理的環(huán)境
11.2 內(nèi)存管理的目標
11.3 虛擬內(nèi)存的概念
11.4 操作系統(tǒng)在內(nèi)存中的位置
11.5 單道編程的內(nèi)存管理
11.6 多道編程的內(nèi)存管理
11.7 閑置空間管理
思考題
第12章 頁式內(nèi)存管理
引子:虛擬概念的變現(xiàn)
12.1 基址極限管理模式的問題
12.2 分頁內(nèi)存管理
12.3 分頁系統(tǒng)的優(yōu)缺點
12.4 翻譯速度
12.5 缺頁中斷處理
12.6 鎖住頁面
12.7 頁面尺寸
12.8 內(nèi)存抖動
思考題
第13章 頁面更換算法
引子:黑洞理論的替換
13.1 頁面需要更換
13.2 頁面更換的目標
13.3 隨機更換算法
13.4 先進先出算法
13.5 第二次機會算法
13.6 時鐘算法
13.7 最優(yōu)更換算法
13.8 NRU算法
13.9 LRU算法
13.10 工作集算法
13.11 工作集時鐘算法
13.12 頁面替換策略
思考題
第14章 段式內(nèi)存管理
引子:否定之否定
14.1 分頁系統(tǒng)的缺點
14.2 分段管理系統(tǒng)
14.3 分段的優(yōu)缺點
14.4 段頁式內(nèi)存管理
14.5 段號是否占用尋址字位
14.6 討論:否定之否定的嵌套——純粹分段與邏輯分段、分頁與段頁
思考題
第五篇 文件原理篇
第15章 磁盤操作
引子:EMC——從不可能到可能
15.1 磁盤組織與管理
15.2 磁盤的結(jié)構(gòu)
15.3 盤面的結(jié)構(gòu)
15.4 磁盤驅(qū)動器的訪問速度
15.5 操作系統(tǒng)界面
15.6 磁盤調(diào)度算法
15.7 討論:固態(tài)盤
15.8 討論:智能磁盤系統(tǒng)
思考題
第16章 文件系統(tǒng)
引子:掩飾的極致
16.1 為什么需要文件系統(tǒng)
16.2 文件系統(tǒng)
16.3 文件系統(tǒng)的目標
16.4 文件的基本知識
16.5 從用戶角度看文件系統(tǒng)
16.6 地址獨立的實現(xiàn)機制:文件夾
16.7 文件系統(tǒng)調(diào)用
16.8 內(nèi)存映射的文件訪問
思考題
第17 章文件系統(tǒng)實現(xiàn)
引子:成功中的失敗
17.1 文件系統(tǒng)的布局
17.2 文件的實現(xiàn)
17.3 目錄實現(xiàn):地址獨立的實現(xiàn)
17.4 閑置空間管理
思考題
第18章 文件系統(tǒng)性能
引子:從不可能到可能
18.1 文件授權(quán)管理
18.2 主動控制:訪問控制表
18.3 能力表
18.4 訪問控制的實施
18.5 其他文件安全措施
18.6 文件系統(tǒng)性能
18.7 文件系統(tǒng)效率性能
18.8 文件系統(tǒng)設(shè)計分析:日志結(jié)構(gòu)的文件系統(tǒng)
18.9 海量數(shù)據(jù)文件系統(tǒng)
思考題
第六篇 I/O原理篇
第19章 輸入輸出
引子:約翰遜的輸出——從沒有到爆發(fā)
19.1 輸入輸出
19.2 輸入輸出的目的
19.3 輸入輸出硬件
19.4 I/O軟件
19.5 I/O軟件分層
思考題
第七篇 多核原理篇
第20章 多核結(jié)構(gòu)與內(nèi)存
引子:不能承受之熱
20.1 以量取勝
20.2 多核基本概念
20.3 多核的內(nèi)存結(jié)構(gòu)
20.4 對稱多處理器計算機的啟動過程
20.5 多處理器之間的通信
20.6 SMP緩存一致性
20.7 多處理器、超線程和多核的比較
思考題
第21章 多核環(huán)境下的進程同步與調(diào)度
引子:“多核”帝國的隕落
21.1 多核環(huán)境下操作系統(tǒng)的修正
21.2 多核環(huán)境下的進程同步與調(diào)度
21.3 多核進程同步
21.4 硬件原子操作
21.5 總線鎖
21.6 多核環(huán)境下的軟件同步原語
21.7 旋鎖
21.8 其他同步原語
21.9 多核環(huán)境下的進程調(diào)度
21.10 多核環(huán)境下的能耗管理
21.11 討論:多核系統(tǒng)的性能
思考題
第八篇 操作系統(tǒng)設(shè)計篇
第22章 操作系統(tǒng)設(shè)計之哲學(xué)原理
引子:殘缺心智的勝利
22.1 操作系統(tǒng)設(shè)計的追求
22.2 操作系統(tǒng)設(shè)計的第1條哲學(xué)原理:層次架構(gòu)
22.3 操作系統(tǒng)設(shè)計的第2條哲學(xué)原理:沒有對錯
22.4 操作系統(tǒng)設(shè)計的第3條哲學(xué)原理:懶人哲學(xué)
22.5 操作系統(tǒng)設(shè)計的第4條哲學(xué)原理:讓困于人
22.6 操作系統(tǒng)設(shè)計的第5條哲學(xué)原理:留有余地
22.7 操作系統(tǒng)設(shè)計的第6條哲學(xué)原理:子虛烏有——海市蜃樓之美
22.8 操作系統(tǒng)設(shè)計的第7條哲學(xué)原理:時空轉(zhuǎn)換——滄海桑田之變
22.9 操作系統(tǒng)設(shè)計的第8條哲學(xué)原理:策機分離與權(quán)利分離
22.10 操作系統(tǒng)設(shè)計的第9條哲學(xué)原理:簡單為美——求于至簡,歸于永恒
22.11 操作系統(tǒng)設(shè)計的第10條哲學(xué)原理:適可而止
思考題
結(jié)語:失望與希望
參考文獻
章節(jié)摘錄
版權(quán)頁:插圖:12.第2個版本的衛(wèi)生間共享重做第10題的衛(wèi)生間共享問題。這次把優(yōu)先級賦予當前使用衛(wèi)生間的性別。例如,如果衛(wèi)生間里面已經(jīng)有女士在使用,新來的女士即可以直接進去,即使有男士在衛(wèi)生間外面等待。13.第3個版本的衛(wèi)生間共享重做第10題。這次需要保證公平,并防止饑餓:如果女士在衛(wèi)生間,則只要沒有男士等待在外面,新來的女士皆可以進入衛(wèi)生間。如果有男士等待,則新來的女士就不能進去,而必須等待在男士后面。當衛(wèi)生間里的最后一位女士離開時,等待的男士可全部進入。14.讀者寫者問題中國航信的航空訂票數(shù)據(jù)庫系統(tǒng)是中國國內(nèi)所有航空公司的共享數(shù)據(jù)庫系統(tǒng)。所有的旅行社訂票均使用該系統(tǒng)進行查詢、預(yù)訂和出票。由于旅行社數(shù)量眾多,在任意一個時間都可能有多個進程對該數(shù)據(jù)庫進行操作。所有讀寫數(shù)據(jù)庫的進程分為讀者和寫者:讀者讀數(shù)據(jù)庫而已,寫者則對數(shù)據(jù)庫進行更新。為保持數(shù)據(jù)一致性,該數(shù)據(jù)庫的訪問需滿足如下限制:a)多個讀者可以同時對數(shù)據(jù)庫進行(讀)操作。b)如果有一個寫者進程在對數(shù)據(jù)庫進行(寫)操作,則其他進程都不能對數(shù)據(jù)庫進行操作。請寫出讀者和寫者的偽代碼程序。
編輯推薦
《操作系統(tǒng)之哲學(xué)原理(第2版)》編輯推薦:《操作系統(tǒng)之哲學(xué)原理》自第1版出版以來,受到了讀者廣泛關(guān)注與好評!第2版以最新發(fā)展為內(nèi)容、以融會貫通為著眼、以邏輯演繹為主線、以生活實例為解說,將生活哲學(xué)與操作系統(tǒng)發(fā)展的來龍去脈進行了完美的結(jié)合,并融匯了最新的知識點。帶給讀者更豐富的內(nèi)容和更深刻的思考。所見的暫時的,所不見的是永遠的?!队嬎銠C的心智操作系統(tǒng)之哲學(xué)原理(第2版)》從生活哲學(xué)的視角對操作系統(tǒng)進行了獨到的闡述。從人類自然的行為規(guī)范推演到操作系統(tǒng)的設(shè)計與實現(xiàn),以一條邏輯軸線將整個操作系統(tǒng)的各種原理精彩呈現(xiàn)到讀者面前。《計算機的心智操作系統(tǒng)之哲學(xué)原理(第2版)》以操作系統(tǒng)的最新發(fā)展為內(nèi)容、以融會貫通為著眼點、以邏輯演繹為主線、以生活實例為解說,融匯了許多新的知識點,如鎖的實現(xiàn)、虛擬內(nèi)存的四大抽象、多核環(huán)境下的進程與內(nèi)存管理、操作系統(tǒng)設(shè)計的哲學(xué)原理等?!队嬎銠C的心智操作系統(tǒng)之哲學(xué)原理(第2版)》在論述上保持章節(jié)獨立,同時打破條塊分割和模塊離散,對操作系統(tǒng)進行了有趣、新穎、獨特、深刻的闡述。例如:《計算機的心智操作系統(tǒng)之哲學(xué)原理(第2版)》以程序是如何運行為主線,貫穿介紹操作系統(tǒng)的所有功能;進程部分提出了處理器調(diào)度是操作系統(tǒng)實現(xiàn)進程抽象的根本手段;線程部分闡述了同步機制的發(fā)展軸線:內(nèi)存管理部分提出了虛擬內(nèi)存所實現(xiàn)的四大抽象;文件部分提出了文件管理和內(nèi)存管理的一脈相承關(guān)系等。《計算機的心智操作系統(tǒng)之哲學(xué)原理(第2版)》特點:抽象提升(從哲學(xué)原理上闡述操作系統(tǒng)的各種原理與設(shè)計)。聯(lián)系生活(通過普通人熟知的生活實例來分析操作系統(tǒng))。模塊整合(將操作系統(tǒng)的各個模塊通過舉例聯(lián)結(jié)起來)。邏輯貫通(將操作系統(tǒng)的各種機制以一條邏輯軸線的發(fā)展依次講解)。系統(tǒng)關(guān)聯(lián)(將涉及的其他學(xué)科知識點如體系結(jié)構(gòu)和編譯器等嵌入進來)《計算機的心智操作系統(tǒng)之哲學(xué)原理(第2版)》綜合上述特點,達到了內(nèi)容上更加新穎、系統(tǒng)上更加完整、邏輯上更加連貫、解說上更加清楚和層次上更加豐富的效果。形而上著謂之道,形而下著謂之器。——《易經(jīng)》
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載