人妻丰满熟妇无码区乱com|久久婷婷午夜精品二区|一道本国产不卡视频|国产孕妇故爱A级高清片免费看

<tbody id="geoqw"></tbody>
  • <center id="geoqw"></center>
  • <menu id="geoqw"></menu>
  • <center id="geoqw"></center>
    
    <menu id="geoqw"></menu>
  • CPU微碼升級(jí)與補(bǔ)丁

    時(shí)間:2021-01-19 13:17:11 硬件知識(shí) 我要投稿
    • 相關(guān)推薦

    CPU微碼升級(jí)與補(bǔ)丁

      cpu微碼是指一個(gè) CPU 的指令集作為一微碼指令(微指令)的序列。其中每個(gè)典型地由很多位域和下一個(gè)微指令執(zhí)行的地址組成。那么,CPU微碼怎么升級(jí)?CPU微碼怎么進(jìn)行補(bǔ)丁呢?歡迎大家閱讀!更多相關(guān)信息請(qǐng)關(guān)注相關(guān)欄目!

      在十多年前的Pentium時(shí)代,INTEL曾經(jīng)發(fā)布過(guò)有缺陷的CPU,因?yàn)楦↑c(diǎn)運(yùn)算表邊界上有幾個(gè)數(shù)據(jù)錯(cuò)誤,導(dǎo)致在某些應(yīng)用會(huì)出現(xiàn)錯(cuò)誤,這個(gè)錯(cuò)誤概率很小,出錯(cuò)幾率小于千萬(wàn)分之一,但在還是被捅出來(lái)了。INTEL為此召回CPU。

      從PentiumPro起,INTEL決定給CPU留出一個(gè)補(bǔ)丁接口,當(dāng)CPU內(nèi)部有缺陷的時(shí)候,通過(guò)加載微碼(Microcode),可以修復(fù)CPU的部分缺陷。

      INTEL說(shuō),他們只測(cè)試過(guò)的CPU都是加載了微碼的,如果沒(méi)有加載微碼,INTEL不保證會(huì)出現(xiàn)什么問(wèn)題。

      現(xiàn)在的CPU有一個(gè)CPUID,通過(guò)執(zhí)行CPUID指令,可以知道當(dāng)前CPU的版本和Stepping。根據(jù)這個(gè)信息,再給CPU打相應(yīng)的補(bǔ)丁。

      就是CPUID=06D2,Rev.A2

      何時(shí)給CPU打補(bǔ)丁?

      在給CPU初始化的時(shí)候,就需要把INTEL提供的微碼寫(xiě)進(jìn)CPU去,因此,加載CPU微碼就是系統(tǒng)BIOS的任務(wù)。

      如果系統(tǒng)的CPU是可更換的,那么其微碼也需要更換。因此,在BIOD里,一般要包進(jìn)若干個(gè)ID的CPU微碼,以便工廠安排不同的SKU出貨。如果BIOS發(fā)布是在CPU發(fā)布之前,那么BIOS里很可能就沒(méi)有包進(jìn)最新的微碼,這個(gè)系統(tǒng)要使用新CPU的時(shí)候,CPU微碼是無(wú)法加載的。

      另外,BIOSROM容量有限,一個(gè)微碼補(bǔ)丁最小有2K,如果平臺(tái)兼容的CPU很多,則微碼數(shù)量是十分巨大的,臺(tái)式機(jī)某些主板可能兼容20多個(gè)CPU版本,那么微碼的體積很大,BIOS里根本包不下這么多東西,于是,廠商不得不縮水,去掉一些不常用的微碼。這些不常用的微碼一般都是早期的CPU,如DOTHAN早期的ASTEPPING就很可能沒(méi)有對(duì)應(yīng)的微碼包進(jìn)你的本本中去。

      不打補(bǔ)丁會(huì)有什么問(wèn)題?

      INTEL說(shuō)他們沒(méi)測(cè)過(guò)不打補(bǔ)丁的CPU,也就不知道會(huì)出什么問(wèn)題。呵呵,這顯然,他們不想說(shuō)太多技術(shù)細(xì)節(jié)而已。以俺的經(jīng)驗(yàn),如果不打補(bǔ)丁,99.99%的時(shí)候,用戶(hù)是感覺(jué)不到的,除非問(wèn)題特別突出。只是俺遇到過(guò)幾個(gè)明顯的例子,為此出了幾身汗。有幾個(gè)案例:

      1,某PrescottCPU,在臺(tái)式機(jī)上發(fā)熱量特別大,超出DesignPoint,后來(lái)發(fā)現(xiàn)沒(méi)加載微碼,加上微碼就正常了;

      2,某PentiumDCPU,進(jìn)WINDOWSXP會(huì)藍(lán)屏,以安全模式進(jìn)去后,安裝一個(gè)SP2補(bǔ)丁,就正常了。后來(lái)查出,也是微碼沒(méi)加載;

      3,某PentiumM架構(gòu)CPU,在使用CPU內(nèi)部TSC時(shí),發(fā)現(xiàn)測(cè)出的CPU內(nèi)部頻率高出實(shí)現(xiàn)的4倍,如2GHzCPU測(cè)出卻有8GHz,后查,也是沒(méi)加載微碼造成的.異常。

      此類(lèi)案例很多,特別是Core架構(gòu)CPU,不但微碼必須加載,而且要求盡早加載,否則,連BIOS都跑不完,系統(tǒng)就掛了。但是INTEL但至今沒(méi)有任何官方對(duì)每個(gè)CPU微碼版本進(jìn)行描述的文件。

      怎么檢查CPU微碼是否加載?

      加載微碼后,在CPU的MSR(機(jī)器特定寄存器)里可以讀出版本號(hào)。INTELIA-32編程手冊(cè)上給出標(biāo)準(zhǔn)檢查方法:

      MOVECX,008bh

      XOREAX,EAX

      XOREDX,EDX

      WRMSR;向MSR8BH寫(xiě)0,清除MSR中的信息。

      MOVEAX,0001

      CPUID;讀CPUID,讓CPU查看微碼版本,并把微碼版本送到MSR8B中。

      MOVECX,008bh

      RDMSR;讀出當(dāng)前CPU微碼版本。

      執(zhí)行上面的代碼后,如果EDX的值為0,則說(shuō)明你的CPU微碼是沒(méi)有沒(méi)加載的,你的CPU運(yùn)行在有缺陷的狀態(tài)。如果不為0,則顯示的是當(dāng)前微碼版本號(hào)。

      以上代碼可以在DOS環(huán)境下,用DEBUG32調(diào)試界面執(zhí)行。

      我很郁悶……

      我有一個(gè)雜牌的本本,上的是DothanCPU,某一天,俺升級(jí)CPU,卻發(fā)現(xiàn)發(fā)熱水平異常,于是檢查微碼加載情況,果然,BIOS里沒(méi)有這種CPU版本的微碼。

      換回原來(lái)的原廠CPU繼續(xù)一測(cè),竟然也沒(méi)有加載微碼。

      后來(lái)?yè)Q了BaniasCPU才測(cè)到CPU微碼加載上了。也就是說(shuō),廠商在升級(jí)CPU的時(shí)候,居然沒(méi)有升級(jí)BIOS,這就是某些小品牌電腦廠商的水平,郁悶。

      你的CPU升了么?

      很多同學(xué)把低配的T4X本本換了CPU,不知道這些同學(xué)用得怎么樣,呵呵,你檢查過(guò)你的CPU微碼么?BIOS有升級(jí)支持么?

    【CPU微碼升級(jí)與補(bǔ)丁】相關(guān)文章:

    成長(zhǎng)的補(bǔ)丁作文02-25

    美麗的補(bǔ)丁的作文04-06

    生命的補(bǔ)丁作文12-17

    CPU經(jīng)常超頻對(duì)CPU的壞處02-06

    生命的補(bǔ)丁初中作文02-11

    打補(bǔ)丁小學(xué)作文12-09

    補(bǔ)丁高一作文11-20

    cpu的運(yùn)算09-07

    散裝CPU與盒裝CPU的區(qū)別是什么01-25