容錯(cuò)系統(tǒng)(第2版)是利用系統(tǒng)方法進(jìn)行計(jì)算機(jī)系統(tǒng)容錯(cuò)設(shè)計(jì)的第1本教科書,這本書全面涵蓋了容錯(cuò)硬件和軟件的設(shè)計(jì),使用容錯(cuò)技術(shù)來提高生產(chǎn)制造產(chǎn)量,以及網(wǎng)絡(luò)的設(shè)計(jì)和分析。結(jié)合10多個(gè)不同計(jì)算機(jī)系統(tǒng)經(jīng)典設(shè)計(jì)案例,分析容錯(cuò)技術(shù)在這些系統(tǒng)設(shè)計(jì)中的實(shí)現(xiàn),該書內(nèi)容還包括用于防范安全威脅的加密子系統(tǒng)的方法。本文更新的內(nèi)容將有助于電氣、計(jì)算機(jī)工程和計(jì)算機(jī)科學(xué)的學(xué)生和從業(yè)者學(xué)習(xí)如何設(shè)計(jì)可靠的計(jì)算系統(tǒng),以及如何分析容錯(cuò)計(jì)算系統(tǒng)。
1.本書由Israel Koren和C. Mani Krishna兩位教授結(jié)合他們?cè)谌蒎e(cuò)計(jì)算領(lǐng)域多年的教學(xué)經(jīng)驗(yàn)和工程實(shí)踐的基礎(chǔ)上編寫而成,是第一本采用系統(tǒng)方法介紹軟硬件容錯(cuò)設(shè)計(jì)技術(shù)的書籍,極大彌補(bǔ)了近幾年容錯(cuò)計(jì)算領(lǐng)域在教材更新上的不足。全書共分11章,系統(tǒng)全面的介紹了容錯(cuò)的基本概念和分析方法,軟硬件容錯(cuò)設(shè)計(jì)技術(shù),容錯(cuò)網(wǎng)絡(luò)及VLSI電路中的缺陷容忍等內(nèi)容,還給出一些實(shí)際案例分析以幫助讀者理解容錯(cuò)技術(shù)的應(yīng)用。2.書中配有大量習(xí)題,它們可以配合課堂教學(xué),幫助讀者準(zhǔn)確理解有關(guān)概念,掌握設(shè)計(jì)方法和技巧。3.本書適合電子、計(jì)算機(jī)工程以及計(jì)算機(jī)科學(xué)領(lǐng)域的學(xué)生和從業(yè)人員學(xué)習(xí)如何設(shè)計(jì)與分析可靠的容錯(cuò)計(jì)算機(jī)系統(tǒng)。
前言
FaultTolerant Systems,Second Edition
本書第2版保留了第1版的結(jié)構(gòu),但在大部分章節(jié)增加了新的內(nèi)容。參考文獻(xiàn)也做了相應(yīng)更新,以反映本領(lǐng)域最新的研究進(jìn)展。
如下為我們?cè)黾拥男聝?nèi)容。
第2章:增加了對(duì)導(dǎo)致硬件失效的主要物理因素的討論。
第3章:增加了對(duì)低密度奇偶校驗(yàn)編碼(LDPC)、層次化RAID以及閃存RAID的討論。
第4章:增加了胖樹、片上網(wǎng)絡(luò)以及無線感知網(wǎng)相關(guān)的容錯(cuò)技術(shù)。
第5章:增加了基于Hypervisor的抗衰恢復(fù),對(duì)軟件可靠性模型的介紹增加了OstrandWeyukerBell模型。
第6章:增加了對(duì)云計(jì)算,以及千萬億次(petascale)、百億億次(exascale)等高性能計(jì)算場(chǎng)景中的檢查點(diǎn)機(jī)制的討論。
第7章:這是一個(gè)全新的章節(jié),主要討論日益顯著的信息物理融合系統(tǒng)(CPS)中的容錯(cuò)相關(guān)技術(shù)。
第8章:這一章增加了一些新的案例分析,包括航空航天系統(tǒng)、IBM的POWER8多核處理器、Intel 至強(qiáng)處理器,以及Oracle和NEC的服務(wù)器。此外,增加了一些云計(jì)算的案例。
第9章:增加了對(duì)拆分方法的介紹。
致謝
我們?cè)诖烁兄xZahava Koren通讀本書全文后提出的寶貴建議。我們也要感謝Morgan Kaufman公司的員工為這個(gè)項(xiàng)目所做的努力。我們還要感謝多年來支持我們工作的資助機(jī)構(gòu),特別是第7章的內(nèi)容是在美國國家科學(xué)基金會(huì)CNS-1717262項(xiàng)目的贊助下完成的。
伊斯雷爾·科倫(Israel Koren) 馬薩諸塞大學(xué)阿默斯特分校電氣和計(jì)算機(jī)工程系名譽(yù)教授。在此之前,他曾在位于海法的以色列理工學(xué)院、加州大學(xué)伯克利分校、南加州大學(xué)和加州大學(xué)圣巴巴拉分校任職。他曾在Analog Devices、AMD、Digital Equipment Corp.、IBM、Intel和National Semiconductors等多家公司擔(dān)任顧問。他的研究興趣包括容錯(cuò)計(jì)算、信息物理系統(tǒng)、計(jì)算機(jī)體系結(jié)構(gòu)、算法以及安全加密系統(tǒng)。
C. 瑪尼·克里希納(C. Mani Krishna) 馬薩諸塞大學(xué)阿默斯特分校電氣和計(jì)算機(jī)工程系教授。他于1984年在密歇根大學(xué)獲得電氣工程博士學(xué)位,1979年在印度理工學(xué)院獲得電氣工程學(xué)士學(xué)位,1980年在倫斯勒理工學(xué)院獲得碩士學(xué)位。Krishna博士的研究興趣集中在信息物理系統(tǒng)、實(shí)時(shí)與容錯(cuò)計(jì)算以及分布式與網(wǎng)絡(luò)系統(tǒng)。
目錄
FaultTolerant Systems,Second Edition
譯者序
前言
第1章 預(yù)備知識(shí)1
1.1 故障的分類1
1.2 冗余類型2
1.3 容錯(cuò)機(jī)制的基本評(píng)測(cè)指標(biāo)4
1.3.1 常用評(píng)測(cè)指標(biāo)4
1.3.2 網(wǎng)絡(luò)系統(tǒng)的評(píng)測(cè)指標(biāo)5
1.4 本書主要內(nèi)容6
1.5 延伸閱讀7
參考文獻(xiàn)8
第2章 硬件容錯(cuò)技術(shù)9
2.1 硬件失效率9
2.2 失效率、可靠度和平均無故障運(yùn)行時(shí)間10
2.3 硬件失效機(jī)制12
2.3.1 電遷移12
2.3.2 應(yīng)力遷移13
2.3.3 負(fù)偏壓溫度不穩(wěn)定性13
2.3.4 熱載流子注入14
2.3.5 時(shí)間依賴的電介質(zhì)擊穿14
2.3.6 綜合考慮多種失效機(jī)制15
2.4 共模失效15
2.5 典型容錯(cuò)結(jié)構(gòu)16
2.5.1 串聯(lián)與并聯(lián)系統(tǒng)16
2.5.2 非串聯(lián)/并聯(lián)系統(tǒng)17
2.5.3 M-of-N系統(tǒng)19
2.5.4 表決器21
2.5.5 NMR的變體21
2.5.6 雙模系統(tǒng)24
2.6 其他可靠性評(píng)估技術(shù)26
2.6.1 泊松過程26
2.6.2 馬爾可夫模型28
2.7 處理器級(jí)容錯(cuò)技術(shù)30
2.7.1 看門狗處理器31
2.7.2 面向容錯(cuò)的同步多線程32
2.8 時(shí)序故障的容錯(cuò)33
2.9 拜占庭故障的容錯(cuò)35
2.9.1 基于消息簽名的拜占庭協(xié)議38
2.10 延伸閱讀39
2.11 練習(xí)題40
參考文獻(xiàn)42
第3章 信息冗余45
3.1 編碼45
3.1.1 奇偶校驗(yàn)碼46
3.1.2 校驗(yàn)和51
3.1.3 M-of-N編碼51
3.1.4 伯格碼52
3.1.5 循環(huán)碼52
3.1.6 算術(shù)編碼57
3.1.7 局部軟判決與硬判決60
3.2 冗余磁盤系統(tǒng)65
3.2.1 RAID 166
3.2.2 RAID 267
3.2.3 RAID 367
3.2.4 RAID 468
3.2.5 RAID 569
3.2.6 層次化RAID系統(tǒng)69
3.2.7 相關(guān)故障模型71
3.2.8 基于固態(tài)硬盤的RAID技術(shù)73
3.3 數(shù)據(jù)復(fù)制74
3.3.1 表決的非層次化方法75
3.3.2 表決的層次化方法79
3.3.3 主備方法80
3.4 基于算法的容錯(cuò)83
3.5 延伸閱讀84
3.6 練習(xí)題85
參考文獻(xiàn)87
第4章 容錯(cuò)網(wǎng)絡(luò)90
4.1 網(wǎng)絡(luò)彈性評(píng)測(cè)90
4.1.1 基于圖論的評(píng)測(cè)指標(biāo)90
4.1.2 計(jì)算機(jī)網(wǎng)絡(luò)的評(píng)測(cè)指標(biāo)91
4.2 常見網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)及其彈性分析92
4.2.1 多級(jí)互連網(wǎng)絡(luò)和擴(kuò)展多級(jí)互連網(wǎng)絡(luò)92
4.2.2 縱橫交叉開關(guān)網(wǎng)絡(luò)96
4.2.3 矩形網(wǎng)格網(wǎng)絡(luò)和填隙網(wǎng)格網(wǎng)絡(luò)98
4.2.4 超立方體網(wǎng)絡(luò)100
4.2.5 帶環(huán)超立方體網(wǎng)絡(luò)103
4.2.6 環(huán)狀網(wǎng)絡(luò)104
4.2.7 樹狀網(wǎng)絡(luò)105
4.2.8 AD HOC點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)107
4.3 容錯(cuò)路由109
4.3.1 超立方體網(wǎng)絡(luò)容錯(cuò)路由110
4.3.2 網(wǎng)格中基于源節(jié)點(diǎn)的路由策略111
4.4 片上網(wǎng)絡(luò)113
4.4.1 路由器容錯(cuò)114
4.4.2 連接容錯(cuò)116
4.4.3 發(fā)生失效后的路由選擇116
4.5 無線傳感器網(wǎng)絡(luò)117
4.5.1 基礎(chǔ)知識(shí)117
4.5.2 傳感器網(wǎng)絡(luò)的失效118
4.5.3 傳感器網(wǎng)絡(luò)中的容錯(cuò)118
4.6 延伸閱讀120
4.7 練習(xí)題122
參考文獻(xiàn)124
第5章 軟件容錯(cuò)127
5.1 可接受性測(cè)試127
5.2 單版本軟件容錯(cuò)128
5.2.1 封裝器128
5.2.2 軟件抗衰130
5.2.3 數(shù)據(jù)多樣性133
5.2.4 軟件實(shí)現(xiàn)的硬件容錯(cuò)134
5.3 N版本編程136
5.3.1 一致性比較問題136
5.3.2 版本獨(dú)立性138
5.3.3 N版本編程的其他問題141
5.4 恢復(fù)塊方法142
5.4.1 基本思想143
5.4.2 成功概率的計(jì)算143
5.4.3 分布式恢復(fù)塊144
5.5 前置條件、后置條件和斷言145
5.6 異常處理146
5.6.1 異常處理程序的要求146
5.6.2 異常和異常處理的基礎(chǔ)知識(shí)146
5.6.3 語言支持148
5.7 軟件可靠性模型148
5.7.1 JelinskiMoranda模型149
5.7.2 LittlewoodVerrall模型149
5.7.3 MusaOkumoto模型150
5.7.4 OstrandWeyukerBell故障模型151
5.7.5 模型選擇和參數(shù)估計(jì)152
5.8 遠(yuǎn)程過程調(diào)用的容錯(cuò)技術(shù)152
5.8.1 主備容錯(cuò)方法152
5.8.2 馬戲團(tuán)方法153
5.9 延伸閱讀154