Január eleje óta nehéz volt kihagyni a Spectre és a Meltdown hardveres sebezhetőségeiről szóló híreket – a téma olyan komolynak és átfogónak bizonyult. Bár a gyártók már tavaly nyár óta tisztában vannak ezekkel a problémákkal, úgy tűnik, hogy a legtöbben csak azután kezdtek reagálni, hogy a részleteket nyilvánosságra hozták a szakértők. Google Teams Projekt Zero.

Például még januárban az Intel anti-Spectre mikrokód-frissítéseket adott ki Broadwell, Haswell, Skylake, Kaby Lake és Coffee Lake processzoraihoz, többek között a javításokhoz. De szinte azonnal kiderült, hogy kudarcokhoz vezetnek és. Kezdetben az Intel kijelentette, hogy a probléma csak a Broadwell és Haswell lapkákat érinti, de később elismerte, hogy a Skylake, Kaby Lake és Coffee Lake processzorokkal rendelkező számítógépeken is előfordultak hibák, és a partnerek és a felhasználók egyelőre tartózkodnak a javítások telepítésétől. Végül február elején a mikrokód javított változata, de csak a Skylake család mobil és asztali fogyasztói chipjeihez.

Most, az Intel és partnerei által végzett egy hónapos intenzív tesztelés és javítás után, eljött az ideje más többé-kevésbé releváns processzoroknak: megjelentek a mikrokód-frissítések a Kaby Lake és Coffee Lake architektúrákon alapuló chipekhez, amelyek nem érintettek. korábbi frissítés Skylake-alapú platformok. A 6-os, 7-es és 8-as processzorokról beszélünk Az Intel generációi Core i, valamint a legújabb Core X, Xeon Scalable és Xeon D családok.

Az új firmware-változat a legtöbb esetben az OEM-ek új firmware-ének kiadásával lesz elérhető az alaplapokhoz és laptopokhoz. Az Intel továbbra is arra buzdította az embereket, hogy tartsák naprakészen rendszereiket, és közzétett egy fehér könyvet is, amelyben felvázolja a hasonló mikrokódjavítások állapotát más termékeihez, beleértve a 45 nm-es Core 2-től kezdődő korábbi lapkákat is. Ezen chipek némelyikére csak terveznek javításokat. , másoknak a korai tesztelés állapotában vannak, a harmadikoknál már léteznek béta verzió formájában. Általános szabály, hogy minél régebbi az architektúra, annál később kapja meg a Spectre elleni védelemmel ellátott firmware-t. A többé-kevésbé aktuális Sandy Bridge, Ivy Bridge, Haswell és Broadwell architektúrák mikrokódfrissítései azonban már béta tesztelés alatt állnak. Emellett számos Atom chip, sőt Xeon Phi gyorsító is kapott már foltot.

Az Intel emlékeztetett arra, hogy más módszerek is léteznek a modern processzorok ág-előrejelző blokkjának felfedezett sebezhetőségeinek leküzdésére. Például a Retpoline, amelyet a Google fejlesztett ki a Spectre CVE-2017-5715 (elágazási célinjektálás vagy célinjektálás egy ágba) ellen. Az érdeklődőknek további információ A Retpoline-ról és annak működéséről a cég speciális technikai jelentést tett közzé.

Megjelent Intel frissítések A Spectre elleni mikrokód az elkövetkező napokban és hetekben friss BIOS firmware formájában fog megjelenni különböző alaplapokhoz. Érdekelne, hogy lesz-e további hatása a végrendszerek teljesítményének romlására?

Valójában az eredeti módszer, berendezések és mikrokódok megtalálhatók (közvetlenül az AMI-hez utasítások), és a legtöbb esetben ennek a módszernek a használata nem okoz problémát és nincs buktatója, de a gyakorlatomban rendszeresen találkoztam ilyen problémával:

Azok. banális hiány volt szabad hely a képen belül. Ha saját maga módosítja a BIOS-t egy adott processzorhoz, ezt figyelmen kívül hagyhatja, mert. Mindig csak egy mikrokódot tölthet be kifejezetten a processzorához, vagy törölhet néhány régi mikrokódot, hogy helyet szabadítson fel, de ha streamel módosítja, akkor más megoldást, kompromisszumot kell keresnie.

Kompromisszumként a következő megoldást választottam - minden processzorhoz a mikrokódok legújabb verzióit vesszük generációs CORE minden konstrukcióban (Celeron E, Pentium E, Core 2 Duo, Core 2 Quad, Xeon *3xxx/*5xxx), és cserélje ki mindenre, ami korábban volt. A mikrokódok készlete a következő:

Ennek a készletnek a térfogata mindössze 76 kilobájt. Ez a fájl a következő fájlok kombinálásával érhető el:

cpu00010676_plat00000001_ver0000060f_date20100929.bin
cpu00010676_plat00000004_ver0000060f_date20100929.bin
cpu00010676_plat00000010_ver0000060f_date20100929.bin
cpu00010676_plat00000040_ver0000060f_date20100929.bin
cpu00010677_plat00000010_ver0000070a_date20100929.bin
cpu0001067a_plat00000011_ver00000a0b_date20100928.bin
cpu0001067a_plat00000044_ver00000a0b_date20100928.bin
cpu000006f2_plat00000001_ver0000005d_date20101002.bin
cpu000006f6_plat00000001_ver000000d0_date20100930.bin
cpu000006f6_plat00000004_ver000000d2_date20101001.bin
cpu000006f7_plat00000010_ver0000006a_date20101002.bin
cpu000006f7_plat00000040_ver0000006b_date20101002.bin
cpu000006fb_plat00000001_ver000000ba_date20101003.bin
cpu000006fb_plat00000004_ver000000bc_date20101003.bin
cpu000006fb_plat00000010_ver000000ba_date20101003.bin
cpu000006fb_plat00000040_ver000000bc_date20101003.bin
cpu000006fd_plat00000001_ver000000a4_date20101002.bin

Maga a módosítási eljárás is változott egy kicsit, és ha nem is könnyebb, de gyorsabb lett:

1. lépés- nyissa meg a BIOS-képet az MMTool programban:



2. lépés- az ellenőrzéshez menjen ide utolsó lap(CPU PATCH), és nézze meg a mikrokódok számát. Itt van például 31 darab:

3. lépés- lépjen a Csere fülre, és keresse meg rajta a „P6 Micro Code” elemet:

4. lépés- miután kiválasztotta a „P6 Micro Code” elemet, nyomja meg az Ikshtsyu gombot, válassza ki a fent leírt ncpucode.bin fájlt, és cserélje ki a Csere gombbal:





5. lépés- az ellenőrzéshez lépjen az utolsó fülre (CPU PATCH), és nézze meg a mikrokódok számát. A mikrokódok megváltoztatása után 17 maradt, a legújabb verzió:

Nincs alapvető különbség a delidded.com oldalon leírt módosítási sorrendhez képest. A legtöbb esetben a kimenet természetesen nem ugyanaz, de a processzor megkapja a kívánt mikrokódot. Szubjektívből jó pontok Csak arra szeretném felhívni a figyelmet, hogy a mikrokódok garantáltan frissülnek minden jelenlegi processzornál, legyen az „civil” vagy „szerver”, és gyakorlatilag nem áll fenn a veszély, hogy helyhiányról szóló üzenetet kapjunk. Bár az én gyakorlatomban még egy ilyen mikrokódkészlethez sem volt elég hely néhányszor, ez a BIOS-ban volt az ECS P4M900T-M és ECS P4M900T-M2 kártyákhoz, amelyek általában kompatibilisek a Xeon E5450-el.

Hagyomány szerint az archívum linkjét eszközökkel teszem közzé - (zip, 234KB). Az archívum egy végrehajtható fájlt tartalmaz MMTOL.exe(3.22 BKMOD verzió), firmware fájl minden 45/65nm-es mag/xeon processzorhoz ncpucode.bin, valamint két fájl 45nm.binés 65nm.bin mikrokódokkal csak 45nm-es processzorokhoz és csak 65nm-es processzorokhoz. Ezeknek a fájloknak a használata hasznos lehet olyan esetekben, amikor további helyet kell felszabadítani a BIOS-ban, például néhány vezérlő, hálózat, lemez stb. új firmware-éhez.

!NB: Sem az ncpucode.bin fájl, sem a 45nm.bin/65nm.bin fájlok nem támogatják a Pentium 4, Celeron (betűindexek nélkül), Pentium D, Celeron D és Xeon W processzorokat (például Xeon 5080). Ezek NetBrust generációs processzorok.

A modern processzorok összetett eszközök, amelyekben hibák lehetnek. Továbbá az x86 utasítások közvetlen végrehajtása helyett a modern x86 processzorok olyan belső kódot tartalmaznak, amely támogatja az x86 utasításkészletet. A belső kódot mikrokódnak nevezik. A mikrokód frissíthető a CPU hibák javítása vagy enyhítése érdekében.

Egyes CPU hibák a Firefox összeomlását okozhatják. Például ismert, hogy a Firefox 57 és újabb verziók időnként összeomlanak a régi mikrokóddal rendelkező Broadwell-U CPU-kon, ahogy az újabb Broadwell-U mikrokód verzióknál nem tapasztalható.

A mikrokód-frissítések firmware-rel (általában BIOS-nak hívják még azokon a számítógépeken is, amelyek technikailag UEFI firmware-rel rendelkeznek a régi típusú BIOS helyett) vagy az operációs rendszer segítségével tölthetők be a CPU-ra. A mikrokód-frissítések nem maradnak meg újraindításkor, így kettős rendszerindítású rendszer esetén, ha a mikrokód-frissítést nem a BIOS-on keresztül szállítják, mindkét operációs rendszernek biztosítania kell a frissítést.

A Mac rendszeren naprakész rendszerhez alkalmazza az összes OS X rendszerfrissítést és az Apple firmware-frissítését a Frissítések panelen. Alkalmazásbolt kb.

Ha engedélyezni szeretné, hogy a Windows betöltse a frissített mikrokódot a CPU-ba, győződjön meg arról, hogy a Windows Update engedélyezve van, és be van állítva a frissítések telepítésére.

A processzor mikroarchitektúrájának és a használt mikrokód-verzió megtekintéséhez futtassa a HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\0 parancsot a Windows parancssorában. ( tudsz nyissa meg a parancssort a Windows + R billentyűkombináció megnyomásával, írja be a cmd parancsot, majd nyomja meg a Return billentyűt.) A „VendorIdentifier” sor a CPU szállítóját mutatja (GenuineIntel Intelhez vagy AuthenticAMD AMD esetén). Az "Identifier" feliratú sor a mikroarchitektúrát három számban adja meg: "Család", "Modell" és "Lépés". Ezek fontosak annak meghatározásában, hogy egy adott CPU-hiba releváns lehet-e a számítógép CPU-ja szempontjából. Az "Update Revision" feliratú sor az aktuális mikrokód-változatot mutatja (az adott mikroarchitektúrához), mindkét oldalon nullákkal. Például a Revision frissítése REG_BINARY 000000001E000000 azt jelenti, hogy a változat 1E (hexadecimális). Az „Előző frissítési változat” sor a BIOS-ból betöltött mikrokód-változatot mutatja.

Ha a gyártó a GenuineIntel, a család 6, a modell 61 és a stepping 4, a Firefox 57 vagy újabb verziójával való összeomlások elkerülése érdekében a mikrokód-revíziónak 1A-es vagy magasabbnak kell lennie.

Az, hogy a mikrokód-frissítések alapértelmezés szerint használatban vannak-e, a Linux disztribúciótól függ, és eltérő lehet az Intel és az AMD CPU-k esetében.

  • A Debian-alapú disztribúciókon, beleértve az Ubuntut is, az Intel processzorok mikrokód frissítéseit az intel-microcode csomag, az AMD processzorokhoz pedig az amd64-microcode csomag biztosítja.
  • Az Arch rendszeren az AMD mikrokód frissítések alapértelmezés szerint telepítve vannak, de az Intel mikrokód frissítései speciális lépéseket igényelnek.
  • A Fedora rendszeren a mikrokód-frissítések alapértelmezés szerint telepítve vannak.

A processzor mikroarchitektúrájának és a használt mikrokód-változat megtekintéséhez futtassa a less /proc/cpuinfo parancsot a terminálon. A "vendor_id" feliratú sor a CPU szállítóját mutatja (GenuineIntel Intelhez vagy AuthenticAMD AMD esetén). A mikroarchitektúra három számmal van megadva a „cpu család”, „modell” és „lépés” sorokon. Ezek fontosak annak meghatározásában, hogy egy adott CPU-hiba releváns lehet-e a számítógép CPU-ja szempontjából. A „mikrokód” feliratú sor a mikrokód revíziószámát mutatja (az adott mikroarchitektúrához) hexadecimálisan.

A legújabb CPU firmware telepítésével optimalizálhatja számítógépe Intel vagy AMD CPU-jának teljesítményét. Az optimalizálás főként az alaplap firmware-étől kapott szabványos mikrokód hibáinak kijavításával érhető el.

Az alaplap BIOS/UEFI firmware-frissítései általában a támogatott firmware-verziókat tartalmazzák alaplap központi processzorok. Emiatt először győződjön meg arról, hogy a legújabb BIOS/UEFI verziót használja.

Ez az útmutató csak az Intel és az AMD által fejlesztett CPU-k teljesítményének optimalizálását teszi lehetővé.

Megjegyzések:

  • Csomag telepítés szoftver mikrokódokkal a számítógép instabillá válhat. Emiatt csak akkor telepítse ezt a csomagot, ha a számítógépe CPU-jának működésével kapcsolatos problémákat tapasztal!
  • Ne telepítse a CPU firmware szoftvercsomagot, ha azt a számítógép alaplapjának BIOS/UEFI firmware-je előtt adták ki!

1. Intel CPU-k

Gyári CPU használata esetén az Intel által az alábbiakban leírtak szerint folytathatja.

Jegyzet: Olyan Intel CPU firmware-csomagra van szüksége, amely újabb, mint a disztribúció hivatalos tárházában található? Ebben az esetben letöltheti a szoftvercsomag fájlját a kiterjesztéssel .deb tól től

Synaptic csomagkezelő Szoftver

Synaptic csomagkezelő"Keresés számítógépen"), írjon be egy lekérdezést Szinaptikus Synaptic Package Manager Synaptic csomagkezelő "Keresés" "mikrokód"és nyomja meg a gombot "Keresés" mellette.

3.201501106.1 (ebben az esetben a csomag 3-as verziója 2015. november 6-án készült).

« intel-microcode"és nyomja meg a gombot "Alkalmaz"

dmesg | grep mikrokód

Belép

2. AMD CPU-k

Az AMD által gyártott processzorok használatakor ezt a kézikönyvet csak a 2006 után megjelenteknél lesz releváns (AMD K10 és újabb). Ha számítógépén ezen CPU-k valamelyike ​​telepítve van, az alábbiak szerint járjon el.

Jegyzet: Olyan AMD CPU firmware-csomagra van szüksége, amely újabb, mint a disztribúció hivatalos tárházában? Ebben az esetben letöltheti a szoftvercsomag fájlját a kiterjesztéssel .deb abból a Debian terjesztési tárból, ahol a csomagok vannak elhelyezve legújabb verziói. A csomagfájl letöltése után keresse meg a fájlkezelővel, és kattintson duplán a mikrokódok rendszerbe történő telepítéséhez. A telepítés befejezése után újra kell indítania a számítógépet.

V. Ha Ubuntu disztribúciót használ, telepítenie kell Synaptic csomagkezelő(ez megtehető az alkalmazással Szoftver). A Linux Mint rendszerben ez a csomagkezelő közvetlenül a telepítés után megjelenik.

B. Először is futni kell Synaptic csomagkezelő. NÁL NÉL Ubuntu disztribúció ehhez kattintson a fehér Ubuntu logóra az oldalsáv tetején ( "Keresés számítógépen"), írjon be egy lekérdezést Szinaptikusés válassza ki az elsőt a javasolt alkalmazások közül Synaptic Package Manager. Nem szükséges a gyorskereső mezőt használni a főablak szoftvercsomagjaihoz Synaptic csomagkezelő, mivel a megfelelő mechanizmus megbízhatatlan; helyette nyomja meg a gombot "Keresés" az eszköztáron, a megnyíló párbeszédpanel keresőmezőjében írjon be egy lekérdezést "amd64-microcode"és nyomja meg a gombot "Keresés" mellette.

C. Most ellenőrizze a CPU mikrokódokkal ellátott szoftvercsomag létrehozásának dátumát: ezt a csomagot később kell létrehozni, mint a számítógép alaplapjának BIOS / UEFI firmware-ét! A kérdéses csomag létrehozásának dátuma például a verziószámban is megjelenik 2.20160316.1 (ebben az esetben a csomag 2-es verziója 2016. március 2-án készült).

D. Ideje bejelölni a szoftvercsomag neve melletti négyzetet "amd64-microcode"és nyomja meg a gombot "Alkalmaz" az alkalmazás eszköztárán.

E. A szoftvercsomag telepítésének befejezése után újra kell indítania a számítógépet.

F. Újraindítás után érdemes ellenőrizni, hogy a telepített mikrokódok valamelyike ​​megfelelően betöltődött-e a következő parancs beírásával egy terminálablakba (a hibák elkerülése érdekében használja a copy/paste funkciókat):

dmesg | grep mikrokód

A parancs beírása után nyomja meg a gombot Belép végrehajtásához. Ha a firmware sikeresen betöltődött, több üzenetet fog látni róla.

Szeretne tanulni a Linux rendszerekkel végzett munka egyéb beállításairól és trükkjeiről? Ez a weboldal nagyszámú ilyen anyagot tartalmaz.

Ha a lapkakészlet és az LGA 775 alaplap elméletileg támogatja a XEON 771-et, de a natív BIOS nem támogatja, és nincs is módosított, akkor a BIOS-t saját maga módosíthatja.

FONTOS

1. Minden változás a BIOS firmware(Általában .ROM fájl) Ezt saját felelősségére teszi. Hiba esetén garantált „tégla” kerül az alaplapból
2. Az eredeti firmware és a módosított verzió fájlméretének egy bájtig meg kell egyeznie.

3. A módosított BIOS fájl mikroáramkörbe való visszavillantása csak az alaplap fejlesztőjének szabadalmaztatott segédprogramjával történik (a gyártó webhelyéről letölthető).
4. A legjobb alaplapokon maga a BIOS rendelkezik egy beépített firmware-frissítő modullal (például az EZ Flash 2 segédprogram az ASUS P5Q-hoz az Eszközök részben) - ez a legjobb megoldás.

Hogyan csináld jobban:
1. Még mindig keresel az interneten XEON támogatással rendelkező kész verziót?
2. Töltse le a hivatalos webhelyről legújabb verzió firmware és mikrokód hozzáadása?

Mint látható, a második lehetőség biztonságosabb, mindenesetre az alaplap gyártójának webhelyéről töltse le az eredeti firmware-t, pl. a legújabb verzió és a hibák hiánya garantált (pontosabban az összes korábban talált hiba kijavítása). Amikor letölt egy kész verziót harmadik fél forrásaiból (nyilvánvaló okokból ez nem lesz az eredeti webhelyen) - kaphat egy görbe verziót, és megölheti a BIOS-t.

Előzetesen kiértékelheti a XEON mikrokódok jelenlétét a BIOS firmware-ben.

- szerezze be az aktuális AMI BIOS lemezképet a Universal BIOS Backup ToolKit 2.0 segítségével
- nézze meg a fogadott ROM fájl tartalmát az AMIBCP V 3.37-en keresztül

Lehetőség a BIOS-hoz AMI (American Megatrends Inc.).

1. Töltse le a legújabb verziót BIOS az alaplap gyártójának webhelyéről

3. Mikrokódok letöltése XEON 771 processzorokhoz: lga771_microcodes

4. Ismerje meg a processzor CPUID-jét a segítségével AIDA64 vagy egy hasonló program (úgy néz ki, mint cpu0001067Ah). Ha egy BIOS lesz varrva a processzor telepítése előtt, akkor ezt a tételt kihagyjuk.

5. Csomagolja ki az archívumot MMToolés lga771_microcodesés kiterjesztésű fájlokból távozzon .kuka csak azokat a fájlokat, amelyek eleje megegyezik a számítógép CPUID-jével (pl. cpu0001067a_plat00000044_ver00000a0b_date20100928.bin)

Ha nem tudjuk milyen kódot, akkor mindent összevarrunk.

A. Elindítjuk MMTool. Nyomja meg a gombot (1) ROM betöltéseés töltse be a programba az alaplap legfrissebb BIOS-át. Ha a legfrissebb BIOS-szal rendelkezik, akkor a BIOS biztonsági mentési segédprogramját is egyesítheti a számítógépről, és szerkesztheti azt.

b. Ugrás a lapra (2) CPU javítás, majd a (3) gombot Tallózás, nyissa meg a fájlt .kuka megfelel az Ön CPUID-jének.

C. Hagyja a beállításokat alapértelmezettként. "Insert a patch data"és nyomja meg a gombot (4) alkalmaz.

Módosított bios-szal történő frissítés után gyári visszaállítást kell végezni a reset gombon vagy a jumpereken keresztül, ha az alaplap támogatja az ilyen visszaállítást, vagy a BIOS akkumulátorának néhány percre történő kihúzásával. Ezenkívül a processzort a számítógép már helyesen érzékeli, és úgy működik, ahogyan kell.

Basic Input Output System – alap bemeneti/kimeneti rendszer, rövidítve BIOS. kis forgács rajta alaplap, amely elsőként kapja meg a vezérlést, amikor a számítógép be van kapcsolva. Biztosítani: alapbeállítások A számítógép ellenőrizze a számítógép összetevőit indításkor...