SBE = subacute bacterial endocarditis ,亞急性細菌心內膜炎 ,專業醫學英語縮寫。
SBE是single bit error 的縮寫,中文意思為單比特錯誤。所謂「單比特錯誤」或曰「比特反轉」(bit flipping) 其實不算罕見,但導致系統崩潰的畢竟是極少數。因為日常用的大部分數據是諸如視頻、音樂、圖片這樣的媒體檔案,執行檔的比例相對小得多;就算發生比特反轉,按照機率也更容易發生在總量大的媒體檔案上。
基本介紹
- 中醫病名:亞急性細菌心內膜炎
- 英文名稱:subacute bacterial endocarditis
- 英文別名:SBE
在數據的存儲和傳輸過程中由於各種各樣的原因都有可能導致比特反轉,所以要通過一些技術手段降低這種風險。比如在網路傳輸過程中常用 CRC [1] 校驗的辦法來發現錯誤。在單個計算機內部,出現比特錯誤的主要部件是記憶體和磁碟。因此多數伺服器上使用的是帶 ECC [2] 糾錯機制的記憶體條 [3]【價錢比普通記憶體條貴不少】。磁碟在存儲數據時也需要附帶存儲一些冗餘信息用於糾錯。此外在檔案系統層面也可以通過一些手段修正錯誤,比如 ZFS [4] 採用了哈希樹的方式來避免磁碟自身的糾錯機制無法發現的漏網之魚。
另外,如果你下載過一些 Linux 發行鏡像,會發現通常會附帶一個 MD5 或者 SHA1 的哈希碼,主要是用於驗證檔案是否被惡意篡改過,但也可以用來檢驗下載和存儲過程中是否因為硬體問題導致了比特反轉。
在航空航天這樣的對可靠性要求非常高的場合中會使用特殊的硬體來避免高強度宇宙射線導致的比特反轉,並且核心繫統都是有好幾套完全相同的副本同時運行輸出結果進行比較後才能採用的,因此發生災難性錯誤導致飛機、飛船墜毀的機率幾乎可以忽略不計。