[ 收藏 ] [ 简体中文 ]  
臺灣貨到付款、ATM、超商、信用卡PAYPAL付款,4-7個工作日送達,999元臺幣免運費   在線留言 商品價格為新臺幣 
首頁 電影 連續劇 音樂 圖書 女裝 男裝 童裝 內衣 百貨家居 包包 女鞋 男鞋 童鞋 計算機周邊

商品搜索

 类 别:
 关键字:
    

商品分类

深入理解計算機繫統 原書第3版 計算機科學叢書 蘭德爾E.布萊恩特
該商品所屬分類:心理學 -> 心理學
【市場價】
1016-1472
【優惠價】
635-920
【出版社】機械工業出版社 
【ISBN】9787111544937
【折扣說明】一次購物滿999元台幣免運費+贈品
一次購物滿2000元台幣95折+免運費+贈品
一次購物滿3000元台幣92折+免運費+贈品
一次購物滿4000元台幣88折+免運費+贈品
【本期贈品】①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
版本正版全新電子版PDF檔
您已选择: 正版全新
溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。
*. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。
*. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。
*. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。
內容介紹



書名:深入理解計算機繫統(原書第3版)/ 深入理解計算機繫統(原書第3版)/
ISBN編號:9787111544937
是否是套裝:否

出版社名稱:機械工業出版社
代碼:139
作者:無


    
    
"

深入理解計算機繫統

作  者: (美)蘭德爾·E.布萊恩特(Randal E.Bryant) 等 著;龔奕利,賀蓮 譯 著
size="731x8"
定  價: 139
size="731x8"
出?版?社: 機械工業出版社
size="731x8"
出版日期: 2016年11月01日
size="731x8"
頁  數: 737
size="731x8"
裝  幀: 平裝
size="731x8"
ISBN: 9787111544937
size="731x8"
目錄
●出版者的話
中文版序一
中文版序二
譯者序
前言
關於作者
章計算機繫統漫遊1
1.1信息就是位+上下文1
1.2程序被其他程序翻譯成不同的格式3
1.3了解編譯繫統如何工作是大有益處的4
1.4處理器讀並解釋儲存在內存中的指令5
1.4.1繫統的硬件組成5
1.4.2運行hello程序7
1.5高速緩存至關重要9
1.6存儲設備形成層次結構9
1.7操作繫統管理硬件10
1.7.1進程11
1.7.2線程12
1.7.3虛擬內存12
1.7.4文件14
1.8繫統之間利用網絡通信14
1.9重要主題16
1.9.1Amdahl定律16
1.9.2並發和並行17
1.9.3計算機繫統中抽像的重要性19
1.10小結20
參考文獻說明20
練習題答案20
部分
程序結構和執行
第2章信息的表示和處理22
2.1信息存儲24
2.1.1十六進制表示法25
2.1.2字數據大小27
2.1.3尋址和字節順序29
2.1.4表示字符串34
2.1.5表示代碼34
2.1.6布爾代數簡介35
2.1.7C語言中的位級運算37
2.1.8C語言中的邏輯運算39
2.1.9C語言中的移位運算40
2.2整數表示41
2.2.1整型數據類型42
2.2.2無符號數的編碼43
2.2.3補碼編碼44
2.2.4有符號數和無符號數之間的轉換49
2.2.5C語言中的有符號數與無符號數52
2.2.6擴展一個數字的位表示54
2.2.7截斷數字56
2.2.8關於有符號數與無符號數的建議58
2.3整數運算60
2.3.1無符號加法60
2.3.2補碼加法62
2.3.3補碼的非66
2.3.4無符號乘法67
2.3.5補碼乘法67
2.3.6乘以常數70
2.3.7除以2的冪71
2.3.8關於整數運算的後思考74
2.4浮點數75
2.4.1二進制小數76
2.4.2IEEE浮點表示78
2.4.3數字示例79
2.4.4舍入83
2.4.5浮點運算85
2.4.6C語言中的浮點數86
2.5小結87
參考文獻說明88
家庭作業88
練習題答案97
第3章程序的機器級表示109
3.1歷史觀點110
3.2程序編碼113
3.2.1機器級代碼113
3.2.2代碼示例114
3.2.3關於格式的注解117
3.3數據格式119
3.4訪問信息119
3.4.1操作數指示符121
3.4.2數據傳送指令122
3.4.3數據傳送示例125
3.4.4壓入和彈出棧數據127
3.5算術和邏輯操作128
3.5.1加載有效地址129
3.操作130
3.5.3移位操作131
3.5.4討論131
3.5.5特殊的算術操作133
3.6控制135
3.6.1條件碼135
3.6.2訪問條件碼136
3.6.3跳轉指令138
3.6.4跳轉指令的編碼139
3.6.5用條件控制來實現條件分支
3.6.6用條件傳送來實現條件分支
3.6.7循環149
3.6.8switch語句159
3.7過程164
3.7.1運行時棧164
3.7.2轉移控制165
3.7.3數據傳送168
3.7.4棧上的局部存儲170
3.7.5寄存器中的局部存儲空間172
3.7.6遞歸過程174
3.8數組分配和訪問176
3.8.1基本原則176
3.8.2指針運算177
3.8.3嵌套的數組178
3.8.4定長數組179
3.8.5變長數組181
3.9異質的數據結構183
3.9.1結構183
3.9.2聯合186
3.9.3數據對齊189
3.10在機器級程序中將控制與數據結合起來192
3.10.1理解指針192
3.10.2應用:使用GDB調試器193
3.10.3內存越界引用和緩衝區溢出194
3.10.4對抗緩衝區溢出攻擊198
3.10.5支持變長棧幀201
3.11浮點代碼204
3.11.1浮點傳送和轉換操作205
3.11.2過程中的浮點代碼209
3.11.3浮點運算操作210
3.11.4定義和使用浮點常數212
3.11.5在浮點代碼中使用位級操作212
3.11.6浮點比較操作213
3.11.7對浮點代碼的觀察結論215
3.12小結216
參考文獻說明216
家庭作業216
練習題答案226
第4章處理器體繫結構243
4.1Y86—64指令集體繫結構245
4.1.1程序員可見的狀態245
4.1.2Y86—64指令245
4.1.3指令編碼246
4.1.4Y86—64異常250
4.1.5Y86—64程序251
4.1.6一些Y86—64指令的詳情255
4.2邏輯設計和硬件控制語言HCL256
4.2.1邏輯門257
4.2.2組合電路和HCL布爾表達式257
4.2.3字級的組合電路和HCL整數表達式258
4.2.4集合關繫261
4.2.5存儲器和時鐘262
4.3Y86—64的順序實現264
4.3.1將處理組織成階段264
4.3.2SEQ硬件結構272
4.3.3SEQ的時序274
4.3.4SEQ階段的實現277
4.4流水線的通用原理282
4.4.1計算流水線282
4.4.2流水線操作的詳細說明284
4.4.3流水線的局限性284
4.4.4帶反饋的流水線繫統287
4.5Y86—64的流水線實現288
4.5.1SEQ+:重新安排計算階段288
4.5.2插入流水線寄存器289
4.5.3對信號進行重新排列和標號292
4.5.4預測下一個PC293
4.5.5流水線冒險295
4.5.6異常處理306
4.5.7PIPE各階段的實現308
4.5.8流水線控制邏輯314
4.5.9性能分析322
4.5.10未完成的工作323
4.6小結325
參考文獻說明326
家庭作業327
練習題答案331
第5章優化程序性能341
5.1優化編譯器的能力和局限性342
5.2表示程序性能345
5.3程序示例347
5.4消除循環的低效率350
5.5減少過程調用353
5.6消除不必要的內存引用354
5.7理解現代處理器357
5.7.1整體操作357
5.7.2的性能361
5.7.3處理器操作的抽像模型362
5.8循環展開366
5.9提高並行性369
5.9.1多個累積變量370
5.9.2重新結合變換373
5.10優化合並代碼的結果小結377
5.11一些限制因素378
5.11.1寄存器溢出378
5.11.2分支預測和預測錯誤處罰379
5.12理解內存性能382
5.12.1加載的性能382
5.12.2存儲的性能383
5.13應用:性能提高技術387
5.14確認和消除性能瓶頸388
5.14.1程序剖析388
5.14.2使用剖析程序來指導優化390
5.15小結392
參考文獻說明393
家庭作業393
練習題答案395
第6章存儲器層次結構399
6.1存儲技術399
6.1.1隨機訪問存儲器400
6.1.2磁盤存儲406
6.1.3固態硬盤414
6.1.4存儲技術趨勢415
6.2局部性418
6.2.1對程序數據引用的局部性418
6.2.2取指令的局部性419
6.2.3局部性小結420
6.3存儲器層次結構421
6.3.1存儲器層次結構中的緩存422
6.3.2存儲器層次結構概念小結424
6.4高速緩存存儲器425
6.4.1通用的高速緩存存儲器組織結構425
6.4.2直接映射高速緩存427
6.4.3組相聯高速緩存433
6.4.4全相聯高速緩存434
6.4.5有關寫的問題437
6.4.6一個真實的高速緩存層次結構的解剖438
6.4.7高速緩存參數的性能影響439
6.5編寫高速緩存友好的代碼440
6.6綜合:高速緩存對程序性能的影響444
6.6.1存儲器山444
6.6.2重新排列循環以提高空間局部性447
6.6.3在程序中利用局部性450
6.7小結450
參考文獻說明451
家庭作業451
練習題答案459
第二部分
在繫統上運行程序
第7章鏈接464
7.1編譯器驅動程序465
7.2靜態鏈接466
7.3目標文件466
7.4可重定位目標文件467
7.5符號和符號表468
7.6符號解析470
7.6.1鏈接器如何解析多重定義的全局符號471
7.6.2與靜態庫鏈接475
7.6.3鏈接器如何使用靜態庫來解析引用477
7.7重定位478
7.7.1重定位條目479
7.7.2重定位符號引用479
7.8可執行目標文件483
7.9加載可執行目標文件484
7.10動態鏈接共享庫485
7.11從應用程序中加載和鏈接共享庫487
7.12位置無關代碼489
7.13庫打樁機制492
7.13.1編譯時打樁492
7.13.2鏈接時打樁492
7.13.3運行時打樁494
7.14處理目標文件的工具496
7.15小結496
參考文獻說明497
家庭作業497
練習題答案499
第8章異常控制流501
8.1異常502
8.1.1異常處理503
8.1.2異常的類別504
8.1.3Linux/x86—64繫統中的異常505
8.2進程508
8.2.1邏輯控制流508
8.2.2並發流509
8.2.3私有地址空間509
8.2.4用戶模式和內核模式510
8.2.5上下文切換511
8.3繫統調用錯誤處理512
8.4進程控制513
8.4.1獲取進程ID513
8.4.2創建和終止進程513
8.4.3回收子進程516
8.4.4讓進程休眠521
8.4.5加載並運行程序521
8.4.6利用fork和execve運行程序524
8.5信號526
8.5.1信號術語527
8.5.2發送信號528
8.5.3接收信號531
8.5.4阻塞和解除阻塞信號532
8.5.5編寫信號處理程序533
8.5.6同步流以避免討厭的並發錯誤540
8.5.7顯式地等待信號543
8.6非本地跳轉546
8.7操作進程的工具550
8.8小結550
參考文獻說明550
家庭作業550
練習題答案556
第9章虛擬內存559
9.1物理和虛擬尋址560
9.2地址空間560
9.3虛擬內存作為緩存的工具561
9.3.1DRAM緩存的組織結構562
9.3.2頁表562
9.3.3頁命中563
9.3.4缺頁564
9.3.5分配頁面565
9.3.6又是局部性救了我們565
9.4虛擬內存作為內存管理的工具565
9.5虛擬內存作為內存保護的工具567
9.6地址翻譯567
9.6.1結合高速緩存和虛擬內存570
9.6.2利用TLB加速地址翻譯570
9.6.3多級頁表571
9.6.4綜合:端到端的地址翻譯573
9.7案例研究:IntelCorei7/Linux內存繫統576
9.7.1Corei7地址翻譯576
9.7.2Linux虛擬內存繫統580
9.8內存映射582
9.8.1再看共享對像583
9.8.2再看fork函數584
9.8.3再看execve函數584
9.8.4使用mmap函數的用戶級內存映射585
9.9動態內存分配587
9.9.1malloc和free函數587
9.9.2為什麼要使用動態內存分配589
9.9.3分配器的要求和目標590
9.9.4碎片591
9.9.5實現問題592
9.9.6隱式空閑鏈表592
9.9.7放置已分配的塊593
9.9.8分割空閑塊594
9.9.9獲取額外的堆內存594
9.9.10合並空閑塊594
9.9.11帶邊界標記的合並595
9.9.12綜合:實現一個簡單的分配器597
9.9.13顯式空閑鏈表603
9.9.14分離的空閑鏈表604
9.10垃圾收集605
9.10.1垃圾收集器的基本知識606
9.10.2Mark&Sweep垃圾收集器607
9.10.3C程序的保守Mark&Sweep608
9.11C程序中常見的與內存有關的錯誤609
9.11.1間接引用壞指針609
9.11.2讀未初始化的內存609
9.11.3允許棧緩衝區溢出610
9.11.4假設指針和它們指向的對像是相同大小的610
9.11.5造成錯位錯誤611
9.11.6引用指針,而不是它所指向的對像611
9.11.7誤解指針運算611
9.11.8引用不存在的變量612
9.11.9引用空閑堆塊中的數據612
9.11.10引起內存洩漏613
9.12小結613
參考文獻說明613
家庭作業614
練習題答案617
第三部分
程序間的交互和通信
0章繫統級I/O62210.1UnixI/O622
10.2文件623
10.3打開和關閉文件624
10.4讀和寫文件625
10.5用RIO包健壯地讀寫626
10.5.1RIO的無緩衝的輸入輸出函數627
10.5.2RIO的帶緩衝的輸入函數627
10.6讀數據632
10.7讀取目錄內容633
10.8共享文件634
10.9I/O重定向637
10.10標準I/O638
10.11綜合:我該使用哪些I/O函數?638
10.12小結640
參考文獻說明640
家庭作業640
練習題答案641
1章網絡編程642
11.1客戶端服務器編程模型642
11.2網絡643
11.3全球IP因特網646
11.3.1IP地址647
11.3.2因特網域名649
11.3.3因特網連接651
11.4套接字接口652
11.4.1套接字地址結構653
11.4.2socket函數654
11.4.3connect函數654
11.4.4bind函數654
11.4.5listen函數655
11.4.6accept函數655
11.4.7主機和服務的轉換656
11.4.8套接字接口的輔助函數660
11.4.9echo客戶端和服務器的示例662
11.5Web服務器665
11.5.1Web基礎665
11.5.2Web內容666
11.5.3事務667
11.5.4服務動態內容669
11.6綜合:TINYWeb服務器671
11.7小結678
參考文獻說明678
家庭作業678
練習題答案679
2章並發編程681
12.1基於進程的並發編程682
12.1.1基於進程的並發服務器683
12.1.2進程的優劣684
12.2基於I/O多路復用的並發編程684
12.2.1基於I/O多路復用的並發事件驅動服務器686
12.2.2I/O多路復用技術的優劣690
12.3基於線程的並發編程691
12.3.1線程執行模型691
12.3.2Posix線程691
12.3.3創建線程692
12.3.4終止線程693
12.3.5回收已終止線程的資源693
12.3.6分離線程694
12.3.7初始化線程694
12.3.8基於線程的並發服務器694
12.4多線程程序中的共享變量696
12.4.1線程內存模型696
12.4.2將變量映射到內存697
12.4.3共享變量698
12.5用信號量同步線程698
12.5.1進度圖701
12.5.2信號量702
12.5.3使用信號量來實現互斥703
12.5.4利用信號量來調度共享資源704
12.5.5綜合:基於預線程化的並發服務器708
12.6使用線程提高並行性710
12.7其他並發問題716
12.7.1線程安全716
12.7.2可重入性717
12.7.3在線程化的程序中使用已存在的庫函數718
12.7.4競爭719
12.7.5死鎖721
12.8小結722
參考文獻說明723
家庭作業723
練習題答案726
附錄A錯誤處理729
參考文獻733
內容虛線

內容簡介

size="789x11"

本書是將計算機軟件和硬件理論結合講述的經典教程,內容覆蓋計算機導論、體繫結構和處理器設計等多門課程。本書的大優點是為程序員描述計算機繫統的實現細節,通過描述程序是如何映射到繫統上,以及程序是如何執行的,使讀者更好地理解程序的行為為什麼是這樣的,以及造成效率低下的原因。

作者簡介

(美)蘭德爾·E.布萊恩特(Randal E.Bryant) 等 著;龔奕利,賀蓮 譯 著

size="43x26"

Randal E.Bryant 1981年於麻省理工學院獲得計算機博士學位,1984年至今一直任教於卡內基-梅隆大學。現任卡內基-梅隆大學計算機科學學院院長、教授,同時還受邀任教於電子和計算機工程繫。他從事本科生和研究生計算機繫統方面課程的教學近40年。他和O’Hallaron教授一起在卡內基梅隆大學開設了15-213課程“計算機繫統導論”,那便是本書的基礎。他還是ACM院士、IEEE院士、美國國家工程院院士和美國人文與科學研究院院士。其研究成果被Intel、IBM、Fujitsu和Microsoft等主要計算機制造商使用,他還因研究獲得過Semiconductor Research Corp......

摘要

前言本書(簡稱CS:APP)的主要讀者是計算機科學家、計算機工程師,以及那些想通過學習計算機繫統的內在運作而能夠寫出更好程序的人。 我們的目的是解釋所有計算機繫統的本質概念,並向你展示這些概念是如何實實在在地影響應用程序的正確性、性能和實用性的。其他的繫統類書籍都是從構建者的角度來寫的,講述如何實現硬件或繫統軟件,包括操作繫統、編譯器和網絡接口。而本書是從程序員的角度來寫的,講述應用程序員如何能夠利用繫統知識來編寫出更好的程序。當然,學習一個計算機繫統應該做些什麼,是學習如何構建一個計算機繫統的很好的出發點,所以,對於希望繼續學習繫統軟硬件實現的人來說,本書也是一本很有價值的介紹性讀物。大多數繫統書籍還傾向於重點關注繫統的某一個方面,比如:硬件架構、操作繫統、編譯器或者網絡。本書則以程序員的視角統一覆蓋了上述所有方面的內容。 如果你研究和領會了這本書裡的概念,你將開始成為極......

"




 
網友評論  我們期待著您對此商品發表評論
 
相關商品
在線留言 商品價格為新臺幣
關於我們 送貨時間 安全付款 會員登入 加入會員 我的帳戶 網站聯盟
DVD 連續劇 Copyright © 2024, Digital 了得網 Co., Ltd.
返回頂部