????????所謂玄學bug大多是不易觸發(fā),或者復現(xiàn)非常困難的bug歪沃,而這樣的bug大多隱藏在硬件上或者無法捕獲的外界環(huán)境上。給大家說說那些曾經(jīng)的“玄學”bug:
????????17年英特爾公布了一個cpu內(nèi)的bug,其實這個bug早就出現(xiàn)了硅堆,一直有開發(fā)者說某些程序在打開超線程后不穩(wěn)定,但是一直無法準確找到觸發(fā)條件贿讹,直到這一消息被確認:英特爾第六代和第七代 Core 處理器(桌面渐逃、移動和服務器版的 Skylake/Kaby Lake 和部分奔騰處理器)在啟用超線程時發(fā)現(xiàn)存在一個處理器/微碼缺陷。該缺陷會導致無法預料的操作系統(tǒng)行為民褂,如應用程序崩潰或數(shù)據(jù)丟失茄菊。應對的權宜之計是關閉超線程疯潭,或更新處理器微碼。該缺陷不只是影響 Debian 操作系統(tǒng)面殖,可能會影響所有使用上述處理器的操作系統(tǒng)竖哩。這匯總bug一般不會輕易捕獲,即使捕獲了也不太可能輕易去確認脊僚。
????????還有一個“玄學”bug相叁,cpu被宇宙射線射掉了寄存器的值、宇宙射線擊穿內(nèi)存吃挑,導致電位翻轉等钝荡。在強太陽風暴期間都有多顆衛(wèi)星由于單粒子效應而出現(xiàn)異常和故障,例如舶衬,在2003年埠通,太陽質(zhì)子事件曾經(jīng)導致地球同步軌道衛(wèi)星Inmarsat中的一顆衛(wèi)星由于CPU癱瘓而失效,美國SOHO逛犹、ACE端辱、Wind、Polar虽画、GOES等科學衛(wèi)星數(shù)據(jù)丟失或損壞舞蔽。這一情況在醫(yī)院、研究院码撰、航天領域發(fā)現(xiàn)比較多渗柿。所以呢有時候服務器宕機、數(shù)據(jù)亂碼都有可能是宇宙射線在搞鬼脖岛,但是這種bug說出來一般沒人會相信朵栖,大多數(shù)只能默默認栽了。
????????還有一個環(huán)境導致bug柴梆,嚴格來說并不算是bug陨溅,但也挺“玄學”了,這就是美國通用汽車“香草冰淇淋”bug绍在。美國通用汽車公司收到一封客戶抱怨信门扇,我們家有一個傳統(tǒng)的習慣,就是我們每天在吃完晚餐后偿渡,都會以冰淇淋來當我們的飯后甜點臼寄。由于冰淇淋的口味很多,所以我們家每天在飯后才投票決定要吃哪一種口味溜宽,等大家決定后我就開車去買脯厨。但自從最近我買了一部新的龐帝雅克后,在我去買冰淇淋的這段路程問題就發(fā)生了坑质。每當我買的冰淇淋是香草口味時合武,我從店里出來車子就發(fā)不動。但如果我買的是其他的口味涡扼,車子發(fā)動就順得很稼跳。為什么這部龐帝雅克當我買了香草冰淇淋它就發(fā)不動,而我不管什么時候買其它口味的冰淇淋吃沪,它就可以發(fā)動汤善?為什么?事后證明原因是出在這家冰淇淋店的內(nèi)部設置的問題票彪。因為红淡,香草冰淇淋是所有冰淇淋口味中最暢銷的口味,店家為了讓顧客每次都能很快的取拿降铸,將香草口味特別分開陳列在單獨的冰柜在旱,并將冰柜放置在店的前端;至于其它口味則放置在距離收銀臺較遠的后端⊥频В現(xiàn)在桶蝎,工程師所要知道的疑問是,為什么這部車會因為從熄火到重新激活的時間較短時就會發(fā)不動谅畅?原因很清楚登渣,絕對不是因為香草冰淇淋的關系,答案應該是“蒸氣鎖”毡泻。因為當這位仁兄買其它口味時胜茧,由于時間較久,引擎有足夠的時間散熱仇味,重新發(fā)動時就沒有太大的問題呻顽。但是買香草口味時,由于花的時間較短邪铲,引擎太熱以至于還無法讓“ 蒸氣瑣 ”有足夠的散熱時間芬位。
????????所以,所謂的“玄學”bug不過是還沒找到原因罷了带到,運行環(huán)境復雜昧碉、用戶硬件參差不齊都會導致各種所謂的“玄學”bug。但是我們要相信揽惹,所有的bug都是有因果的被饿,只不過有些還沒發(fā)現(xiàn)而已!