注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡操作系統(tǒng)計算機系統(tǒng):系統(tǒng)架構與操作系統(tǒng)的高度集成

計算機系統(tǒng):系統(tǒng)架構與操作系統(tǒng)的高度集成

計算機系統(tǒng):系統(tǒng)架構與操作系統(tǒng)的高度集成

定 價:¥99.00

作 者: Umakishore Ramachandran,William D. Leahy
出版社: 機械工業(yè)出版社
叢編項:
標 簽: 操作系統(tǒng)/系統(tǒng)開發(fā) 計算機/網絡 系統(tǒng)開發(fā)

購買這本書可以去


ISBN: 9787111506362 出版時間: 2015-07-01 包裝:
開本: 頁數: 字數:  

內容簡介

  本書采用集成方法,系統(tǒng)地講解了計算機系統(tǒng)的軟件和硬件知識。全書分為5個模塊:處理器、內存系統(tǒng)、存儲系統(tǒng)、并行系統(tǒng)和網絡,分別介紹并討論了處理器及其相關的軟件問題、內存系統(tǒng)和內存分級體系、I/O和文件系統(tǒng)、操作系統(tǒng)問題及支持并行編程的多處理器中相應體系結構特點、網絡硬件的發(fā)展和處理各種網絡行為的網絡協(xié)議堆的特點等。

作者簡介

暫缺《計算機系統(tǒng):系統(tǒng)架構與操作系統(tǒng)的高度集成》作者簡介

圖書目錄

Computer Systems: An Integrated Approach to Architecture and Operating Systems
出版者的話
譯者序
前言
第1章 概述1
1.1 盒子里有什么1
1.2 計算機系統(tǒng)中的抽象層次1
1.3 操作系統(tǒng)的作用3
1.4 盒子里正在發(fā)生什么事5
1.4.1 在計算機上啟動應用程序7
1.5 計算機硬件的演化7
1.6 操作系統(tǒng)的演化9
1.7 本書導讀9
練習題10
參考文獻注釋和擴展閱讀10
第2章 處理器體系結構12
2.1 處理器設計涉及什么12
2.2 如何設計指令集13
2.3 常見的高級語言功能集13
2.4 表達式和賦值語句14
2.4.1 操作數放在哪里14
2.4.2 在指令中如何指定內存地址17
2.4.3 每個操作數應該有多寬18
2.4.4 字節(jié)序9
2.4.5 操作數打包以及字操作數的對齊21
2.5 高級數據抽象22
2.5.1 結構23
2.5.2 數組23
2.6 條件語句和循環(huán)24
2.6.1 ifthenelse語句25
2.6.2 switch語句26
2.6.3 循環(huán)語句27
2.7 檢查點27
2.8 編譯函數調用27
2.8.1 調用者的狀態(tài)28
2.8.2 過程調用剩余的工作30
2.8.3 軟件慣例31
2.8.4 活動記錄35
2.8.5 遞歸36
2.8.6 幀指針36
2.9 指令集體系結構選擇38
2.9.1 額外的指令38
2.9.2 額外的尋址模式39
2.9.3 體系結構類型39
2.9.4 指令格式39
2.10 LC2200指令集42
2.10.1 指令格式42
2.10.2 LC2200寄存器組43
2.11 影響處理器設計的問題44
2.11.1 指令集44
2.11.2 應用程序對指令集設計的影響45
2.11.3 其他驅動處理器設計的問題46
小結47
練習題47
參考文獻注釋和擴展閱讀49
第3章 處理器實現51
3.1 體系結構與實現51
3.2 處理器實現涉及什么51
3.3 重要的硬件概念52
3.3.1 電路52
3.3.2 數據通路的硬件資源52
3.3.3 邊沿觸發(fā)邏輯53
3.3.4 連接數據通路元件54
3.3.5 基于總線的設計57
3.3.6 有限狀態(tài)機59
3.4 數據通路設計60
3.4.1 ISA與數據通路寬度61
3.4.2 時鐘脈沖寬度62
3.4.3 檢查點62
3.5 控制單元設計62
3.5.1 ROM加狀態(tài)寄存器63
3.5.2 FETCH宏狀態(tài)65
3.5.3 DECODE宏狀態(tài)68
3.5.4 EXECUTE宏狀態(tài):ADD指令(R型指令部分)68
3.5.5 EXECUTE宏狀態(tài):NAND指令(R型指令部分)71
3.5.6 EXECUTE宏狀態(tài):JALR指令(J型指令部分)71
3.5.7 EXECUTE宏狀態(tài):LW指令(I型指令部分72
3.5.8 EXECUTE宏狀態(tài):SW和ADDI指令(I型指令部分)75
3.5.9 EXECUTE宏狀態(tài):BEQ指令(I型指令部分) 75
3.5.10 設計微程序中的條件分支78
3.5.11 再談DECODE宏狀態(tài)79
3.6 控制單元設計的另一種選擇80
3.6.1 微程序控制80
3.6.2 硬連線控制81
3.6.3 在兩種控制設計風格中選擇82
小結82
歷史回顧83
練習題84
參考文獻注釋和擴展閱讀86
第4章 中斷、陷入及異常87
4.1 程序執(zhí)行中的不連續(xù)性88
4.2 處理程序不連續(xù)性89
4.3 處理程序不連續(xù)性的體系結構改進91
4.3.1 修改FSM91
4.3.2 一個簡單的中斷處理過程92
4.3.3 處理級聯中斷92
4.3.4 從處理過程中返回95
4.3.5 檢查點95
4.4 處理程序不連續(xù)性的硬件細節(jié)96
4.4.1 中斷的數據通路細節(jié)96
4.4.2 獲得處理過程地址的細節(jié)97
4.4.3 保存/恢復棧99
4.5 信息匯總100
4.5.1 體系結構和硬件改進總結100
4.5.2 工作中的中斷機制100
小結102
練習題103
參考文獻注釋和擴展閱讀104
第5章 處理器性能與流水線處理器的設計105
5.1 時間和空間性能指標 105
5.2 指令頻率107
5.3 基準測試程序108
5.4 提升處理器的性能111
5.5 加速比112
5.6 提升處理器的吞吐量114
5.7 流水線簡介115
5.8 指令處理流水線115
5.9 簡單指令流水線的問題117
5.10 修正指令流水線里的問題118
5.11 指令流水線的數據通路元件120
5.12 針對流水線的體系結構與實現121
5.12.1 指令穿過流水線的過程
詳解122
5.12.2 流水線寄存器的設計124
5.12.3 各個階段的實現125
5.13 冒險125
5.13.1 結構性冒險126
5.13.2 數據冒險126
5.13.3 控制冒險135
5.13.4 冒險總結141
5.14 在流水線處理器里處理程序
不連續(xù)性142
5.15 處理器設計的高級話題144
5.15.1 指令級并行144
5.15.2 更深的流水線145
5.15.3 在亂序執(zhí)行下再次討論
程序不連續(xù)性147
5.15.4 管理共享資源148
5.15.5 功耗149
5.15.6 多核處理器設計149
5.15.7 Intel Core微架構:
一個流水線150
小結151
歷史回顧152
練習題152
參考文獻注釋和擴展閱讀156
第6章 處理器調度157
6.1 引言157
6.2 程序和進程158
6.3 調度環(huán)境161
6.4 調度基礎162
6.5 性能指標165
6.6 非搶占式調度算法167
6.6.1 先到先服務167
6.6.2 最短作業(yè)優(yōu)先170
6.6.3 優(yōu)先級171
6.7 搶占式調度算法172
6.7.1 輪轉調度器175
6.8 結合優(yōu)先級和搶占178
6.9 元調度器178
6.10 評價179
6.11 調度對處理器體系結構的影響180
小結和展望181
Linux調度器—一個案例研究181
歷史回顧183
練習題185
參考文獻注釋和擴展閱讀186
第7章 內存管理技術187
7.1 內存管理器提供的功能187
7.2 內存管理的簡單方案189
7.3 內存分配方案192
7.3.1 固定尺寸分區(qū)192
7.3.2 變長分區(qū)193
7.3.3 縮并195
7.4 分頁虛擬內存196
7.4.1 頁表197
7.4.2 支持分頁的硬件 199
7.4.3 頁表的建立 199
7.4.4 虛擬和物理內存的相對大小200
7.5 分段虛擬內存200
7.5.1 支持分段的硬件204
7.6 分頁和分段的比較204
7.6.1 解讀CPU生成的地址206
小結207
歷史回顧208
MULTICS209
Intel的內存體系結構210
練習題211
參考文獻注釋和擴展閱讀212
第8章 頁式內存管理213
8.1 按需分頁213
8.1.1 按需分頁的硬件213
8.1.2 頁錯誤處理程序214
8.1.3 按需分頁內存管理的
數據結構214
8.1.4 頁錯誤解析215
8.2 進程調度器和內存管理器間交互217
8.3 頁替換策略218
8.3.1 Belady的Min算法219
8.3.2 隨機替換 219
8.3.3 先進先出策略219
8.3.4 最近最少使用策略221
8.3.5 第二次機會頁替換算法223
8.3.6 頁替換算法回顧225
8.4 優(yōu)化內存管理225
8.4.1 空閑頁幀池225
8.4.2 顛簸226
8.4.3 工作集228
8.4.4 顛簸控制229
8.5 其他考慮229
8.6 旁路轉換緩存230
8.6.1 TLB的地址轉換231
8.7 內存管理的高級話題232
8.7.1 多級頁表232
8.7.2 局部頁表項的訪問權限234
8.7.3 反向頁表234
小結234
練習題234
參考文獻注釋和擴展閱讀236
第9章 分級存儲體系237
9.1 緩存的概念238
9.2 局部性原理238
9.3 基本術語238
9.4 多級存儲層次239
9.5 緩存結構241
9.6 直接映射緩存結構241
9.6.1 緩存查找243
9.6.2 緩存項中的字段244
9.6.3 用于直接映射緩存的硬件245
9.7 流水線處理器設計的影響247
9.8 緩存讀/寫算法247
9.8.1 CPU對緩存的讀訪問248
9.8.2 CPU對緩存的寫訪問248
9.9 處理器流水線中的緩存缺失處理251
9.9.1 在流水線性能上緩存缺失
對內存延遲的影響252
9.10 利用空間局部性提高緩存性能253
9.10.1 增加塊大小對性能的影響256
9.11 靈活的布局策略257
9.11.1 全相關緩存258
9.11.2 組相關緩存259
9.11.3 組相關的極端情況261
9.12 指令和數據緩存263
9.13 降低缺失損失264
9.14 緩存替換策略264
9.15 缺失類型簡要說明266
9.16 TLB和緩存整合268
9.17 緩存控制器269
9.18 虛擬索引物理標記的緩存270
9.19 緩存設計因素概述271
9.20 主存的設計因素272
9.20.1 簡單的主存272
9.20.2 與緩存塊大小相匹配的主
存和總線273
9.20.3 交錯式內存273
9.21 現代主存系統(tǒng)分析274
9.21.1 頁式DRAM278
9.22 分級存儲體系的性能影響279
小結280
現代處理器的分級存儲體系(一個例子)281
練習題281
參考文獻注釋和擴展閱讀283
第10章 輸入/輸出和穩(wěn)定性存儲284
10.1 CPU和I/O設備間的通信284
10.1.1 設備控制器284
10.1.2 內存映射I/O285
10.2 程控I/O287
10.3 DMA288
10.4 總線290
10.5 I/O處理器291
10.6 設備驅動292
10.6.1 例子293
10.7 外圍設備295
10.8 磁盤存儲器296
10.8.1 磁盤技術的傳奇故事302
10.9 磁盤調度算法304
10.9.1 先到先服務305
10.9.2 最短尋道時間優(yōu)先305
10.9.3 SCAN305
10.9.4 CSCAN306
10.9.5 LOOK和CLOOK307
10.9.6 磁盤調度總結307
10.9.7 算法比較308
10.10 固態(tài)硬盤 309
10.11 I/O總線和設備驅動的演化310
10.11.1 設備驅動的動態(tài)負載311
10.11.2 信息匯總312
小結314
練習題314
參考文獻注釋和擴展閱讀315
第11章 文件系統(tǒng)317
11.1 屬性317
11.2 在磁盤子系統(tǒng)上實現文件系統(tǒng)
的設計選擇321
11.2.1 連續(xù)分配322
11.2.2 帶有溢出區(qū)域的連續(xù)分配324
11.2.3 鏈接分配324
11.2.4 文件分配表325
11.2.5 索引分配327
11.2.6 多級索引分配328
11.2.7 混合索引分配328
11.2.8 不同分配策略的比較331
11.3 信息匯總331
11.3.1 索引節(jié)點336
11.4 文件系統(tǒng)的組件336
11.4.1 創(chuàng)建、寫入文件的剖析337
11.5 各種子系統(tǒng)的交互337
11.6 文件系統(tǒng)在物理媒介上的布局340
11.6.1 內存中的數據結構342
11.7 處理系統(tǒng)崩潰343
11.8 其他物理媒介上的文件系統(tǒng)343
11.9 現代文件系統(tǒng)一覽344
11.9.1 Linux344
11.9.2 Microsoft Windows348
小結349
練習題350
參考文獻注釋和擴展閱讀352
第12章 多線程編程與多處理器353
12.1 為什么需要多線程353
12.2 線程所需的編程支持354
12.2.1 線程創(chuàng)建和終止354
12.2.2 線程之間的通信356
12.2.3 讀/寫沖突、競爭條件及不確定性357
12.2.4 線程之間的同步361
12.2.5 線程庫中數據類型的內部表示365
12.2.6 簡單的編程示例366
12.2.7 死鎖和活鎖369
12.2.8 條件變量370
12.2.9 視頻處理示例的完整解決方案373
12.2.10 解決方案的討論374
12.2.11 重新檢查條件375
12.3 線程函數調用和多線程編程概念總結377
12.4 線程編程的一些注意事項379
12.5 使用線程作為軟件結構抽象379
12.6 POSIX pthread庫調用總結379
12.7 操作系統(tǒng)對線程的支持382
12.7.1 用戶級線程383
12.7.2 內核級線程385
12.7.3 Solaris線程:一個內核級線程例子386
12.7.4 線程和庫387
12.8 在單處理器上的多線程的硬件支持388
12.8.1 線程創(chuàng)建、終止以及線程間的通信388
12.8.2 線程之間的同步388
12.8.3 原子的TestandSet指令388
12.8.4 使用TestandSet指令的Lock算法390
12.9 多處理器391
12.9.1 頁表391
12.9.2 分級存儲體系391
12.9.3 保證原子性393
12.10 高級話題393
12.10.1 操作系統(tǒng)話題393
12.10.2 架構話題 403
12.10.3 未來之路:多核與眾核架構412
小結413
歷史回顧414
練習題 415
參考文獻注釋和擴展閱讀417
第13章 網絡與網絡協(xié)議基礎知識419
13.1 預備知識419
13.2 基本術語419
13.3 網絡軟件423
13.4 協(xié)議棧424
13.4.1 因特網協(xié)議棧424
13.4.2 OSI模型426
13.4.3 分層的實際問題427
13.5 應用層427
13.6 傳輸層428
13.6.1 停止并等待協(xié)議429
13.6.2 流水線協(xié)議431
13.6.3 可靠的流水線協(xié)議432
13.6.4 處理傳輸錯誤436
13.6.5 因特網上的傳輸協(xié)議437
13.6.6 傳輸層總結438
13.7 網絡層439
13.7.1 路由算法439
13.7.2 因特網尋址444
13.7.3 網絡服務模式446
13.7.4 網絡路由與轉發(fā)449
13.7.5 網絡層總結450
13.8 鏈路層和局域網450
13.8.1 以太網451
13.8.2 CSMA/CD451
13.8.3 IEEE 802.3453
13.8.4 無線局域網與IEEE 802.11453
13.8.5 令牌環(huán)454
13.8.6 其他鏈路層協(xié)議456
13.9 網絡硬件456
13.10 協(xié)議棧各層之間的關系460
13.11 用于數據包傳輸的數據結構460
13.11.1 TCP/IP包頭461
13.12 消息傳輸時間462
13.13 協(xié)議層功能總結466
13.14 網絡軟件與操作系統(tǒng)466
13.14.1 套接字庫467
13.14.2 在操作系統(tǒng)中實現協(xié)議棧468
13.14.3 網絡設備驅動程序468
13.15 使用UNIX套接字進行網絡編程469
13.16 網絡服務與高層協(xié)議474
小結475
歷史回顧475
練習題480
參考文獻注釋和擴展閱讀482
第14章 尾聲:旅途回顧483
14.1 處理器設計483
14.2 進程483
14.3 虛擬內存系統(tǒng)和內存管理483
14.4 分級存儲體系484
14.5 并行系統(tǒng)484
14.6 輸入/輸出系統(tǒng)484
14.7 永久性存儲484
14.8 網絡485
結束語485
附錄A 使用UNIX套接字進行網絡編程486
參考文獻495
索引500

本目錄推薦

掃描二維碼
Copyright ? 讀書網 ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號