0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

硬件的坑軟件填?盤點(diǎn)處理器重大Bug及解決方案

mK5P_AItists ? 來源:未知 ? 作者:胡薇 ? 2018-09-24 14:55 ? 次閱讀

英特爾CPU存在兩大漏洞 ——Meltdown 和 Spectre,波及自 1995 年以來所有使用英特爾芯片硬件設(shè)備。不止 Linux、Android、Windows、蘋果 OS X 等操作系統(tǒng),AWS、Azure、谷歌云等云計算提供商均受到影響,其威脅范圍之廣,令人咋舌。

其中,Meltdown 可以允許低權(quán)限的用戶和應(yīng)用“越界”訪問系統(tǒng)級內(nèi)存,從而造成數(shù)據(jù)泄露; Spectre 可騙過安全檢查程序,直接通過應(yīng)用訪問內(nèi)存任意位置。對于以往的 軟件安全 Bug 僅需修復(fù)打個補(bǔ)丁即可,但是此次的漏洞存在于處理器端,與硬件相關(guān),Intel 無法通過微代碼的方式修補(bǔ)漏洞,需要操作系統(tǒng)廠商進(jìn)行彌補(bǔ),然而,據(jù)悉,不同的操作系統(tǒng)都要從內(nèi)核層面進(jìn)行漏洞修復(fù),而修補(bǔ)該漏洞之后會讓處理器的性能最高下降 30%。

如今微軟、谷歌、蘋果、亞馬遜公司已經(jīng)相繼發(fā)布了解決方案,其他一些廠商也正在加急的修復(fù)中,不得不說,巨頭的一個 Bug,整個業(yè)界都要抖三抖。事實(shí)上,這并非是第一次 CPU 出現(xiàn) Bug,那么以往 CPU 出現(xiàn) Bug 都是如何處理的呢?接下來,我們將一一盤點(diǎn)曾經(jīng)的 CPU Bug 事件。

不會算數(shù)的奔騰 FDIV Bug

1994 年 6 月,在英特爾首次推出奔騰處理器的前幾天,其技術(shù)人員發(fā)現(xiàn)奔騰芯片的除法運(yùn)算會發(fā)生一些偏差,即 FDIV 缺陷。奔騰 CPU 的 FPU 單元有嚴(yán)重缺陷的產(chǎn)品,影響到 FDIV(浮點(diǎn)除法運(yùn)算)指令。例如:

正常電腦計算器運(yùn)算結(jié)果:962306957033÷11010046=87402.6282027341

帶有 Bug 的奔騰 CPU 運(yùn)算結(jié)果:962306957033÷11010046=87339.5805831329

對于以上偏差,Intel 測試人員表示 90 億次除法運(yùn)算中才可能出現(xiàn) 1 次錯誤,因此懷著僥幸心理無視了該問題,但是嚴(yán)謹(jǐn)?shù)膶W(xué)術(shù)人員還是在這個幾億分之一幾率中找到這個除法 Bug。

圖片來源:太平洋電腦網(wǎng)

解決方案

起初,英特爾只決定為部分已經(jīng)證明受影響的用戶更換 CPU。但是,這引起了用戶的不滿,因?yàn)檫B最基本運(yùn)算的正確都不能百分之百的保證,何來對 CPU 的信任。后來,在用戶以及競爭對手(IBM等公司)的壓力下,英特爾于 1994 年的 12 月對外宣布自身 CPU 的缺陷并召回了受影響的 CPU。

顯然,奔騰 FDIV Bug 并不能通過軟件的方法修補(bǔ),為了解決問題,英特爾召回的成本甚至高達(dá) 4.75 億美元,結(jié)合通貨膨脹率,這大致相當(dāng)于現(xiàn)在的 7.88 億美元。

死機(jī)的奔騰 F00F bug

這是一個在 1997 年發(fā)現(xiàn)的 CPU Bug,影響了奔騰 MMX 和奔騰 OverDrive 處理器等基于 P5 微架構(gòu)的 CPU。這個 Bug 會導(dǎo)致電腦出現(xiàn)死機(jī)之類的情況,需要重啟才能繼續(xù)使用電腦。這也是一個影響深遠(yuǎn)的 Bug,以至于現(xiàn)在很多硬件設(shè)計的缺陷都用 F00F 來命名。

解決方案

英特爾通過更新處理器的步進(jìn)修復(fù)了奔騰 F00F bug,B2 步進(jìn)已經(jīng)解決了相關(guān)的問題。不過對于之前出現(xiàn)錯誤的 CPU,也可以通過操作系統(tǒng)的更新來修復(fù),因此這是一個可以通過軟件修復(fù)的 CPU Bug。

礦渣奔騰 III 1.13GHz

2000 年,英特爾為抗衡 AMD 發(fā)布的 1GHz CPU,迅速的推出 Pentium III 1.13GHz。卻未料,大部分用戶在安裝 Pentium III 1.13GHz 之后,發(fā)現(xiàn)處理器在使用中發(fā)生了執(zhí)行部分軟件時死機(jī)、不穩(wěn)定等情況。

圖片來源:太平洋電腦網(wǎng)

解決方案

因英特爾草率地推出 Coppermine 架構(gòu)的奔騰 III CPU,其在發(fā)售不到一個月后便召回了所有的 CPU。

藍(lán)屏及死機(jī)的英特爾 Broadwell MCE Bug

隨著英特爾 Broadwell 的廣泛推廣,不少 Broadwell 處理器用戶發(fā)現(xiàn)在使用時,會經(jīng)常出現(xiàn)藍(lán)屏死機(jī),Linux、Windows 系統(tǒng)報錯是 MCE( Machine Check Exception,機(jī)器異常檢查)。這個問題是有 SpeedStep 節(jié)能技術(shù)導(dǎo)致的,關(guān)閉了 SpeedStep 后,問題就不會出現(xiàn)。

解決方案

當(dāng)然,就算可以關(guān)閉 SpeedStep 來避免 Bug,用戶也不會當(dāng)是沒事發(fā)生過,而且某些設(shè)備例如筆記本、平板電腦關(guān)閉了節(jié)能技術(shù)的話,會發(fā)熱、能耗大增,甚至已經(jīng)影響正常使用了。英特爾通過微碼更新來修復(fù)了這一問題,只要更新 BIOS,Broadwell MCE Bug 就能夠得到修復(fù),因此這也是一個可以通過軟件更新來解決的 CPU Bug。

黑客可控制計算機(jī)的英特爾 ME 漏洞

在 2008 年后,英特爾在 CPU 中內(nèi)置了一個低功耗子系統(tǒng) Management Engine 也就是 ME。ME 可以協(xié)助專業(yè)人員遠(yuǎn)程管理計算機(jī),深受企業(yè)用戶歡迎。不過,這個 ME 系統(tǒng)卻爆出了問題,它原本設(shè)計用于遠(yuǎn)程維護(hù),但由于存在漏洞反倒讓黑客有可能通過 ME 后門進(jìn)而控制計算機(jī)。

解決方案

英特爾很快就公布了相應(yīng)的修復(fù)方法,釋放了相應(yīng)的代碼,用戶可以通過更新主板 BIOS、操作系統(tǒng)和相應(yīng)的軟件、驅(qū)動來修復(fù) ME 相關(guān)的漏洞。通過軟件就能修復(fù)這個 CPU 漏洞,也算是不幸中的大幸吧。

以上是作為全球知名芯片制造商的英特爾近些年 CPU 發(fā)生的一些重大 Bug,然而,不僅僅是英特爾,AMD、高通、蘋果也曾遇到過一些大的處理器漏洞。

折翼的 Phenom TLC Bug

AMD 的第一代 Phenom(羿龍)處理器被賦予了迎擊 Intel 酷睿處理器的重任,首次使用了三級緩存的設(shè)計。然而不幸的是,率先登場的 B2 步進(jìn)的 Phenom 竟然存在 TLB 的 Bug。TLB 是用來連接內(nèi)存和 CPU 緩存的橋梁,在有 Bug 的 Phenom 處理器中,TLB 會導(dǎo)致 CPU 讀取頁表出現(xiàn)錯誤,出現(xiàn)死機(jī)等情況。出了 Bug 后,AMD 就提供了軟件方案來解決問題。

圖片來源:太平洋電腦網(wǎng)

解決方案

AMD 通過系統(tǒng)補(bǔ)丁及 BIOS 的方法避開了這個硬件 Bug,但會造成性能下降 AMD 發(fā)布了一個新 BIOS,也為 Win 系統(tǒng)提供了一個補(bǔ)丁,無論是那種方法,其作用都是屏蔽某段頁表乃至 CPU 緩存。這當(dāng)然可以避免 Bug 的出現(xiàn),不過也會造成性能降低??梢哉f,這個軟件修復(fù)的方案只是權(quán)宜之計,其實(shí)并不完美。此后 AMD 推出了 B3 步進(jìn)的 Phenom 處理器,從硬件上修改,才徹底解決了問題,步進(jìn)改動后的 CPU 還從 9X00 改名為 9X50,可見此次修補(bǔ)之重要。

火爐的高通驍龍 810

2015 年,高通旗下高端 CPU 驍龍 810 發(fā)生發(fā)熱問題。事實(shí)上,驍龍 810 芯片推出的主要原因是為了跟進(jìn)蘋果 A7 處理器的 64 位尋址的競爭,驍龍 810 使用 ARM 公版 64 位A 57/A53 架構(gòu),而自家一直研發(fā)的 Krait 架構(gòu) 64 位尋址在短期內(nèi)尚未實(shí)現(xiàn),于是只能用公版四個高性能核心+四個低性能核心的組合,高通在 Krait 架構(gòu)上積累的經(jīng)驗(yàn)無法套用到 ARM 公版上來,于是導(dǎo)致了 810 慘淡收場的后果。

圖片來源:太平洋電腦網(wǎng)

引發(fā)退貨潮流的 iPhone 6S A9 處理器

2015 年,iPhone 6S A9 處理器上有兩個版本,一個是出自臺積電,而另外一個是三星,前者基于 16nm 制程,而后者則是 14nm 制程,由于工藝上的不同,導(dǎo)致它們性能、續(xù)航上有了不同,由此引發(fā)的“芯片門”備受關(guān)注。

解決方案

后續(xù)蘋果官方迅速表態(tài),不同 iPhone 6S 芯片之間功耗差距極小,僅 2%~3%。但部分用戶并不買賬,要求退貨,在中國,不少港臺地區(qū)用戶換貨成功,大陸用戶似乎并未受到太大影響。

總結(jié)

Bug 不僅僅會出現(xiàn)在軟件方面,在硬件上也會時常發(fā)生。整體而言,硬件上的問題似乎要比軟件漏洞更為嚴(yán)重,而作為程序員, CPU 上的部分 Bug 也完全可用軟件來修補(bǔ)。雖然缺陷會不可避免的存在,但是廠商還是應(yīng)該加強(qiáng)自身管理及測試,避免牽一發(fā)而動全身的兩難局面出現(xiàn)。同時作為普通消費(fèi)者,要時刻關(guān)注軟件更新,將已有的漏洞帶來的威脅降到最低。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 英特爾
    +關(guān)注

    關(guān)注

    60

    文章

    9861

    瀏覽量

    171293
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10805

    瀏覽量

    210847
  • 蘋果
    +關(guān)注

    關(guān)注

    61

    文章

    24336

    瀏覽量

    195569

原文標(biāo)題:盤點(diǎn)英特爾、蘋果、高通、AMD 處理器重大 Bug,硬件的坑軟件能填?

文章出處:【微信號:AItists,微信公眾號:人工智能學(xué)家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    硬件的缺陷可以通過軟件來補(bǔ)嗎?看完這個你就知道了

    硬件挖的真的可以通過軟件嗎?軟件的確可以彌補(bǔ)很多硬件方面的缺陷,但也不是此次都能完美
    的頭像 發(fā)表于 03-14 15:46 ?1.2w次閱讀

    通過利用XCore處理器的特點(diǎn)及硬件設(shè)計軟件方案

    )的新技術(shù),XMOS提出了一種革命性的電子設(shè)計方法:硬件設(shè)計軟件化。通過軟件設(shè)計,可以使用XCore處理器實(shí)現(xiàn)以前需要通過FPGA,ASIC實(shí)現(xiàn)的
    發(fā)表于 09-03 13:33 ?2785次閱讀
    通過利用XCore<b class='flag-5'>處理器</b>的特點(diǎn)及<b class='flag-5'>硬件</b>設(shè)計<b class='flag-5'>軟件</b>化<b class='flag-5'>方案</b>

    調(diào)節(jié)多核處理器硬件適應(yīng)軟件設(shè)計方法

    調(diào)節(jié)多核處理器硬件適應(yīng)軟件設(shè)計方法 典型的嵌入式系統(tǒng)設(shè)計人員在硬件平臺上進(jìn)行編程,他們最關(guān)注的一點(diǎn)就是硬件平臺的穩(wěn)定性。如果
    發(fā)表于 09-25 17:17

    死創(chuàng)業(yè)者的硬件產(chǎn)品——“十大

    死創(chuàng)業(yè)者的硬件產(chǎn)品——“十大”第一:錯把產(chǎn)品原型當(dāng)批量生產(chǎn)第二:以為可以修補(bǔ)bug;第三
    發(fā)表于 11-14 15:59

    Mac下安裝pycurl記錄說明

    Mac下安裝pycurl記錄
    發(fā)表于 07-17 14:54

    求一個ARM處理器高效異常處理解決方案?

    文中分析了ARM體系結(jié)構(gòu)下異常處理特點(diǎn),提出一種基于ARM處理器的高效異常處理解決方案,以LPC3250硬件平臺為基礎(chǔ),對該方案進(jìn)行了設(shè)計與
    發(fā)表于 02-23 06:15

    介紹一種基于融合SoC處理器的平臺軟件解決方案

    本文介紹一種面向基站平臺處理單板的基于融合SoC處理器的平臺軟件解決方案。
    發(fā)表于 05-17 06:36

    mongoose開發(fā)中遇到的解決方案

    1. 本文不對mongoose的功能作陳述,只記錄下自己開發(fā)中遇到的,及解決方案。嵌入了mongoose的代碼編譯通過,在調(diào)試運(yùn)行(gdb)時候,卻發(fā)生了段錯誤(Segmentation fault),如下所示:...
    發(fā)表于 12-16 06:56

    核間通信(IPC)解決方案

    框模塊所示,每個核上都運(yùn)行了IPC軟件模塊,從而實(shí)現(xiàn)了TDA4VM上不同核之間的核間通信。本文的后續(xù)部分將以TDA4VM為例說明TI多核異構(gòu)處理器的核間通信方案,對于其它Jacinto7處理器
    發(fā)表于 11-03 07:26

    網(wǎng)絡(luò)處理器軟件開發(fā)模型的研究

    網(wǎng)絡(luò)處理器的高速處理和靈活的可編程性,使它成為當(dāng)今網(wǎng)絡(luò)中數(shù)據(jù)處理的有效解決方案。本文深入探討網(wǎng)絡(luò)處理器
    發(fā)表于 04-15 09:29 ?15次下載

    英特爾將凌動處理器重大升級 整合圖形芯片

    英特爾將凌動處理器重大升級 整合圖形芯片   據(jù)國外媒體今日報道,英特爾將宣布凌動(Atom)處理器自2008年春天發(fā)布以來的最大升級。部分搭配新款凌動處理器的上
    發(fā)表于 11-26 10:08 ?731次閱讀

    基于ARM處理器的高效異常處理解決方案

    嵌入式系統(tǒng)要求對異常及中斷處理器能快速響應(yīng)。文中分析了ARM體系結(jié)構(gòu)下 異常處理 特點(diǎn),提出一種基于 ARM處理器 的高效異常處理解決方案,以LPC3250
    發(fā)表于 02-03 03:38 ?1369次閱讀
    基于ARM<b class='flag-5'>處理器</b>的高效異常<b class='flag-5'>處理解決方案</b>

    硬件缺陷真能用軟件補(bǔ)_盤點(diǎn)軟件填過的硬件

    硬件挖的真的可以通過軟件嗎?實(shí)際上不少硬件產(chǎn)品,都存在一些不盡如人意的地方,這可能是某項(xiàng)技術(shù)天生的短板,也有可能是設(shè)計不當(dāng)帶來的問題。
    的頭像 發(fā)表于 02-26 14:36 ?3156次閱讀

    硬件軟件化”,32位處理器的開發(fā)與8位處理器的開發(fā)資料下載

    電子發(fā)燒友網(wǎng)為你提供“硬件軟件化”,32位處理器的開發(fā)與8位處理器的開發(fā)資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計、用戶指南、
    發(fā)表于 04-22 08:55 ?6次下載
    “<b class='flag-5'>硬件</b><b class='flag-5'>軟件</b>化”,32位<b class='flag-5'>處理器</b>的開發(fā)與8位<b class='flag-5'>處理器</b>的開發(fā)資料下載

    為VoIP解決方案選擇處理器

    為VoIP解決方案選擇處理器
    發(fā)表于 05-18 15:13 ?3次下載
    為VoIP<b class='flag-5'>解決方案</b>選擇<b class='flag-5'>處理器</b>