Ocak ayının başından bu yana, Spectre ve Meltdown donanım açıklarıyla ilgili haberleri kaçırmak zordu - konu çok ciddi ve kapsamlı çıktı. Üreticiler geçen yazdan bu yana bu sorunların farkında olsalar da, çoğu ancak uzmanlar tarafından ayrıntıların açıklanmasından sonra tepki vermeye başlamış görünüyor. Google Ekipleri Proje Sıfır.

Örneğin, Ocak ayında Intel, diğer yamaların yanı sıra Broadwell, Haswell, Skylake, Kaby Lake ve Coffee Lake işlemcileri için Spectre karşıtı mikro kod güncellemeleri yayınladı. Ancak hemen hemen başarısızlıklara yol açtıkları ortaya çıktı ve. Intel, başlangıçta sorunun yalnızca Broadwell ve Haswell çiplerini etkilediğini belirtmiş, ancak daha sonra Skylake, Kaby Lake ve Coffee Lake işlemcili bilgisayarlarda ve ortaklarda ve kullanıcılarda şimdilik yama yüklemekten kaçınmaları konusunda arızalar olduğunu kabul etmiştir. Son olarak, Şubat ayının başlarında, mikro kodun düzeltilmiş bir sürümü, ancak yalnızca Skylake ailesinin mobil ve masaüstü tüketici yongaları için.

Şimdi, Intel ve ortakları tarafından bir aylık yoğun test ve yama uygulamasından sonra, az çok ilgili diğer işlemciler için zaman geldi: Kaby Lake ve Coffee Lake mimarilerine dayalı çipler için mikro kod güncellemeleri yayınlandı ve etkilenmedi. önceki güncelleme Skylake tabanlı platformlar. 6, 7 ve 8. işlemcilerden bahsediyoruz Intel Nesiller Core i'nin yanı sıra en yeni Core X, Xeon Scalable ve Xeon D aileleri.

Yeni donanım yazılımı varyantı, çoğu durumda yeni anakart ve dizüstü bilgisayar donanım yazılımının OEM sürümleri aracılığıyla sunulacaktır. Intel hala insanları sistemlerini güncel tutmaya teşvik ediyor ve 45nm Core 2 ile başlayan daha önceki yongalar da dahil olmak üzere diğer ürünleri için benzer mikrokod düzeltmelerinin durumunu özetleyen bir teknik inceleme yayınladı. Bu yongaların bazıları için yamalar sadece planlanmış, diğerleri için erken test durumundalar, üçüncüsü için zaten bir beta sürümü şeklinde varlar. Kural olarak, mimari ne kadar eski olursa, Spectre'ye karşı korumalı bellenimi o kadar geç alır. Bununla birlikte, aşağı yukarı mevcut Sandy Bridge, Ivy Bridge, Haswell ve Broadwell mimarileri için mikro kod güncellemeleri zaten beta testindedir. Ayrıca, bir dizi Atom çipi ve hatta Xeon Phi hızlandırıcıları şimdiden yamalar aldı.

Intel, modern işlemcilerde şube tahmin bloğunun keşfedilen güvenlik açıklarıyla mücadele etmek için başka yöntemler olduğunu hatırlattı. Örneğin, Google tarafından Spectre CVE-2017-5715'e (dal hedef enjeksiyonu veya bir şubeye hedef enjeksiyon) karşı geliştirilen Retpoline. ilgilenenler için Ek Bilgiler Retpoline ve nasıl çalıştığı hakkında şirket özel bir teknik rapor yayınladı.

Piyasaya sürülmüş Intel güncellemeleriÖnümüzdeki günlerde ve haftalarda Spectre'ye karşı mikro kod, çeşitli anakartlar için yeni BIOS ürün yazılımı biçiminde görünmeye başlayacak. Uç sistemlerin performansının düşmesi üzerinde ek bir etkisinin olup olmayacağı merak ediliyor.

Aslında, orijinal yöntem, ekipman ve mikro kodlar bulunabilir (doğrudan AMI için talimatlar) ve çoğu durumda, bu yöntemin kullanılması herhangi bir soruna neden olmaz ve hiçbir tuzak yoktur, ancak uygulamamda düzenli olarak böyle bir sorunla karşılaştım:

Şunlar. banal kıtlık vardı boş alan resmin içinde. Belirli bir işlemci için BIOS'u kendiniz değiştirdiğinizde, bunu görmezden gelebilirsiniz, çünkü. Her zaman işlemciniz için özel olarak yalnızca bir mikro kod yükleyebilir veya yer açmak için bazı eski mikro kodları kaldırabilirsiniz, ancak bir akışla değişiklik yaptığınızda, başka bir çözüm, bir uzlaşma aramanız gerekir.

Bir uzlaşma olarak, aşağıdaki çözümü seçtim - tüm işlemciler için mikro kodların en son sürümlerini alıyoruz nesil ÇEKİRDEK tüm yapılarda (Celeron E, Pentium E, Core 2 Duo, Core 2 Quad, Xeon *3xxx/*5xxx) ve bunları daha önceki her şeyle değiştirin. Mikrokod seti aşağıdaki gibidir:

Bu setin hacmi sadece 76 kilobayttır. Bu dosya bu dosyaları birleştirerek elde edilir:

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

Değişiklik prosedürünün kendisi de biraz değişti ve daha kolay olmasa da daha hızlı hale geldi:

Aşama 1- MMTool programında BIOS görüntüsünü açın:



Adım 2- kontrol etmek için gidin son sekme(CPU PATCH) ve mikro kodların sayısına bakın. İşte, örneğin, 31 parça:

Aşama 3- Değiştir sekmesine gidin ve üzerinde "P6 Mikro Kodu" öğesini arayın:

4. Adım- “P6 Mikro Kod” öğesini seçtikten sonra, Ikshtsyu düğmesine basın, yukarıda açıklanan ncpucode.bin dosyasını seçin ve Değiştir düğmesiyle değiştirin:





Adım 5- kontrol etmek için son sekmeye (CPU PATCH) gidin ve mikro kod sayısına bakın. Mikro kodları değiştirdikten sonra, en son sürüm olan 17 kaldı:

delidded.com'da açıklanan değişiklik sırası ile temel bir fark yoktur. Çoğu durumda çıktı elbette aynı değildir, ancak işlemci istenen mikro kodu alır. Subjektiften güzel nokta Yalnızca, "sivil" veya "sunucu" olsunlar, mevcut tüm işlemciler için mikro kodların güncellenmesinin garanti edildiğine ve alan eksikliği hakkında bir mesaj alma riski bulunmadığına dikkat çekmek istiyorum. Uygulamamda, böyle bir dizi mikro kod için bile birkaç kez yeterli alan olmamasına rağmen, genellikle Xeon E5450 ile uyumlu olan ECS P4M900T-M ve ECS P4M900T-M2 kartları için BIOS'taydı.

Gelenek olarak, araçlarla arşive bir bağlantı yayınlıyorum - (zip, 234KB). Arşiv yürütülebilir bir dosya içeriyor MMTOL.exe(sürüm 3.22 BKMOD), tüm 45/65nm çekirdek/xeon işlemciler için bellenim dosyası ncpucode.bin, ayrıca iki dosya 45nm.bin ve 65nm.bin mikro kodlarla yalnızca 45nm işlemciler ve yalnızca 65nm için. Bu dosyaların kullanımı, örneğin bazı denetleyicilerin, ağların, disklerin vb. yeni bellenimi için BIOS'ta ek alan boşaltmanın gerekli olduğu durumlarda yararlı olabilir.

!NB: Ne ncpucode.bin dosyası ne de 45nm.bin/65nm.bin dosyaları Pentium 4, Celeron (harf dizinleri olmadan), Pentium D, Celeron D ve Xeon W işlemcileri (örneğin Xeon 5080) desteklemez. Bunlar NetBrust nesil işlemcilerdir.

Modern işlemciler, hataları olabilen karmaşık cihazlardır. Ayrıca, modern x86 işlemcileri, x86 talimatlarını doğrudan yürütmek yerine, x86 komut seti için destek uygulayan dahili kod içerir. Dahili koda mikro kod denir. CPU hatalarını düzeltmek veya azaltmak için mikro kod güncellenebilir.

Bazı CPU hataları Firefox'un çökmesine neden olabilir. Örneğin, Firefox 57 ve sonraki sürümlerinin, daha yeni Broadwell-U mikrokod sürümlerinde görülmeyen bir şekilde, eski mikro kodlu Broadwell-U CPU'larında ara sıra çöktüğü bilinmektedir.

Mikro kod güncellemeleri, bellenim (eski stil BIOS yerine teknik olarak UEFI bellenimine sahip bilgisayarlarda bile BIOS olarak adlandırılır) veya işletim sistemi tarafından CPU'ya yüklenebilir. Mikrokod güncellemeleri yeniden başlatma boyunca devam etmez, bu nedenle çift önyüklemeli bir sistem söz konusu olduğunda, mikrokod güncellemesi BIOS aracılığıyla sağlanmazsa, her iki işletim sisteminin de güncellemeyi sağlaması gerekir.

Mac'te, güncel bir sisteme sahip olmak için, Güncellemeler bölmesinde sunulan tüm OS X sistem güncellemelerini ve Apple ürün yazılımı güncellemelerini uygulayın. Uygulama mağazası uygulama.

Windows'un güncellenmiş mikro kodu CPU'ya yüklemesine izin vermek için, Windows Update'in etkinleştirildiğinden ve güncellemeleri yüklemek üzere ayarlandığından emin olun.

İşlemci mikro mimarisini ve hangi mikro kod revizyonunun kullanımda olduğunu görmek için Windows komut isteminde reg query HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\0 komutunu çalıştırın. ( Yapabilirsiniz Windows + R tuşlarına basarak, cmd yazıp Return tuşuna basarak komut istemini açın.) "VendorIdentifier" etiketli satır, CPU satıcısını gösterir (Intel için GenuineIntel veya AMD için AuthenticAMD). "Tanımlayıcı" etiketli satır, mikromimariyi üç sayı olarak verir: "Aile", "Model" ve "Adım". Bunlar, belirli bir CPU hatasının bilgisayarınızdaki CPU ile alakalı olup olmadığını belirlemede önemlidir. "Güncelleme Revizyonu" etiketli satır, her iki tarafta sıfır bulunan mevcut mikro kod revizyonunu (belirli mikro mimari için) gösterir. Örneğin, Güncelleme Revizyonu REG_BINARY 000000001E000000, revizyonun 1E (onaltılık) olduğu anlamına gelir. "Önceki Güncelleme Revizyonu" etiketli satır, BIOS'tan yüklenen mikro kod revizyonunu gösterir.

Satıcı GenuineIntel ise, aile 6, model 61 ve adım 4 ise, Firefox 57 veya sonraki sürümlerde çökmeleri önlemek için mikro kod revizyonunun 1A veya daha yüksek olması gerekir.

Mikrokod güncellemelerinin varsayılan olarak kullanımda olup olmadığı Linux dağıtımına bağlıdır ve Intel ve AMD CPU'lar için farklılık gösterebilir.

  • Ubuntu dahil Debian tabanlı dağıtımlarda, Intel işlemciler için mikrokod güncellemeleri intel-mikrokod paketi tarafından sağlanır ve AMD işlemciler için mikrokod güncellemeleri amd64-mikrokod paketi tarafından sağlanır.
  • Arch'ta AMD mikrokod güncellemeleri varsayılan olarak yüklenir, ancak Intel mikrokod güncellemeleri özel adımlar gerektirir.
  • Fedora'da mikro kod güncellemeleri varsayılan olarak yüklenir.

İşlemci mikro mimarisini ve hangi mikro kod revizyonunun kullanımda olduğunu görmek için terminalde less /proc/cpuinfo komutunu çalıştırın. "vendor_id" etiketli satır, CPU satıcısını gösterir (Intel için GenuineIntel veya AMD için AuthenticAMD). Mikromimari, "cpu family", "model" ve "stepping" etiketli satırlarda üç sayı olarak verilmiştir. Bunlar, belirli bir CPU hatasının bilgisayarınızdaki CPU ile alakalı olup olmadığını belirlemede önemlidir. "Mikro kod" etiketli satır, mikro kod revizyon numarasını (belirli mikro mimari için) onaltılı olarak gösterir.

En son CPU bellenimini yükleyerek bilgisayarınızın Intel veya AMD CPU performansını optimize edebilirsiniz. Optimizasyon, esas olarak anakartın belleniminden alınan standart mikro koddaki hataları düzelterek elde edilir.

Anakart BIOS/UEFI bellenim güncellemeleriniz genellikle desteklenenler için yeni bellenim sürümlerini içerir. anakart merkezi işlemciler Bu nedenle yapılacak ilk şey, en son BIOS/UEFI sürümünü kullandığınızdan emin olmaktır.

Bu kılavuz, yalnızca Intel ve AMD tarafından geliştirilen CPU'ların performansını optimize etmenize olanak tanır.

Notlar:

  • Paket kurulumu yazılım mikro kodlarla bilgisayarın kararsız hale gelmesine neden olabilir. Bu nedenle, bu paketi yalnızca bilgisayarınızın CPU'sunun işleyişi ile ilgili herhangi bir sorunla karşılaştığınızda kurmalısınız!
  • Bilgisayarınızın ana kartının BIOS/UEFI belleniminden önce piyasaya sürüldüyse CPU Firmware Yazılım Paketini kurmayın!

1. Intel CPU'lar

Üretim CPU'sunun kullanılması durumunda Intel tarafından aşağıda açıklandığı gibi ilerleyebilirsiniz.

Not: Dağıtımın resmi deposundakinden daha yeni bir Intel CPU ürün yazılımı paketine mi ihtiyacınız var? Bu durumda, uzantılı yazılım paketi dosyasını indirebilirsiniz. .deb itibaren

Sinaptik paket yöneticisi Yazılım

Sinaptik paket yöneticisi"Bilgisayarda ara"), bir sorgu girin sinaptik Sinaptik Paket Yöneticisi Sinaptik paket yöneticisi "Arama" "mikro kod" ve düğmeye basın "Arama" onun yanında.

3.201501106.1 (bu durumda paketin 3. sürümü 6 Kasım 2015'te oluşturulmuştur).

« intel mikrokod" ve düğmeye basın "Uygulamak"

mesaj | grep mikro kodu

Girmek

2. AMD CPU'lar

AMD tarafından üretilen işlemcileri kullanırken bu kılavuz yalnızca 2006'dan sonra piyasaya sürülenler için geçerli olacaktır (AMD K10 ve daha yenisi). Bilgisayarınızda bu CPU'lardan biri kuruluysa, aşağıda anlatıldığı gibi ilerleyebilirsiniz.

Not: Dağıtımın resmi deposundakinden daha yeni bir AMD CPU ürün yazılımı paketine mi ihtiyacınız var? Bu durumda, uzantılı yazılım paketi dosyasını indirebilirsiniz. .deb paketlerin yerleştirildiği Debian dağıtım deposundan en son sürümler. Paket dosyasını indirdikten sonra dosya yöneticisini kullanarak bulmanız ve mikrokodları sisteme yüklemek için çift tıklamanız gerekir. Kurulum tamamlandıktan sonra bilgisayarınızı yeniden başlatmanız gerekir.

A. Ubuntu dağıtımını kullanıyorsanız, yüklemeniz gerekecektir. Sinaptik paket yöneticisi(bu uygulama ile yapılabilir Yazılım). Linux Mint'te bu paket yöneticisi kurulumdan hemen sonra mevcuttur.

B. Her şeyden önce koşmalısın Sinaptik paket yöneticisi. AT Ubuntu dağıtımı bu amaçla kenar çubuğunun üst kısmındaki beyaz Ubuntu logosuna tıklayın ( "Bilgisayarda ara"), bir sorgu girin sinaptik ve önerilen uygulamalardan ilkini seçin Sinaptik Paket Yöneticisi. Ana pencerenin yazılım paketleri için hızlı arama kutusunu kullanmaya gerek yok Sinaptik paket yöneticisi, karşılık gelen mekanizma güvenilmez olduğundan; bunun yerine düğmeye basın "Arama" araç çubuğunda, açılan iletişim kutusunun arama alanına bir sorgu girin "amd64-mikrokod" ve düğmeye basın "Arama" onun yanında.

C. Şimdi CPU mikrokodları ile yazılım paketinin oluşturulma tarihini kontrol etmelisiniz: bu paket, bilgisayarınızın ana kartının BIOS / UEFI belleniminden daha sonra oluşturulmalıdır! Söz konusu paketin oluşturulma tarihi, örneğin sürüm numarasına yansıtılır. 2.20160316.1 (bu durumda paketin 2. sürümü 2 Mart 2016'da oluşturulmuştur).

D. Yazılım paketinin adının yanındaki kutuyu işaretlemenin zamanı geldi "amd64-mikrokod" ve düğmeye basın "Uygulamak" uygulama araç çubuğunda.

E. Yazılım paketinin kurulumu tamamlandıktan sonra bilgisayarınızı yeniden başlatmanız gerekir.

F. Yeniden başlattıktan sonra, bir terminal penceresine aşağıdaki komutu yazarak kurulu mikro kodlardan birinin doğru yüklenip yüklenmediğini kontrol etmeye değer (hataları önlemek için kopyala/yapıştır işlevlerini kullanın):

mesaj | grep mikro kodu

Komutu girmeyi bitirdikten sonra tuşuna basın Girmek yürütülmesi için. Ürün yazılımı başarıyla yüklendiyse, bununla ilgili birkaç mesaj göreceksiniz.

Linux sistemleriyle çalışmak için diğer ayarlar ve püf noktaları hakkında bilgi edinmek ister misiniz? Bu web sitesi bu tür çok sayıda materyal içermektedir.

Yonga seti ve LGA 775 anakart teorik olarak XEON 771'i destekleyebiliyorsa, ancak yerel BIOS bunu desteklemiyorsa ve değiştirilmiş bir BIOS yoksa, BIOS'u kendiniz değiştirebilirsiniz.

ÖNEMLİ

1. Tüm değişiklikler BIOS üretici yazılımı(.ROM dosyası genellikle) Kendi sorumluluğunuzdadır. Bir hata durumunda, anakarttan garantili bir "tuğla" elde edilir
2. Orijinal bellenimin dosya boyutu ve değiştirilen sürüm bir bayta kadar eşleşmelidir.

3. Değiştirilen BIOS dosyasının mikro devreye geri döndürülmesi, yalnızca anakart geliştiricisinin tescilli bir yardımcı programı kullanılarak gerçekleştirilir (üreticinin web sitesinden indirilecek).
4. En iyi anakartlarda, BIOS'un kendisinde yerleşik bir ürün yazılımı güncelleme modülü vardır (örneğin, Araçlar bölümünde ASUS P5Q için EZ Flash 2 yardımcı programı) - en iyi seçenek.

Nasıl daha iyi yapılır:
1. XEON destekli hazır bir sürüm için hala İnternet'te arama yapıyor musunuz?
2. Resmi web sitesinden indirin En son sürümürün yazılımı ve mikro kodlar eklensin mi?

Gördüğünüz gibi, ikinci seçenek daha güvenli, her durumda, orijinal bellenimi anakart üreticisinin web sitesinden indiriyorsunuz, yani. en son sürüm ve hata olmaması garanti edilir (daha doğrusu, daha önce bulunan tüm hataların düzeltilmesi). Üçüncü taraf kaynaklardan hazır bir sürüm indirirken (bariz nedenlerden dolayı orijinal sitede olmayacak) - çarpık bir sürüm alabilir ve BIOS'u öldürebilirsiniz.

Öncelikle, BIOS belleniminde XEON mikro kodlarının varlığını değerlendirebilirsiniz.

- Evrensel BIOS Yedekleme Araç Takımı 2.0 aracılığıyla mevcut AMI BIOS görüntüsünü alın
- AMIBCP V 3.37 aracılığıyla alınan ROM dosyasının içeriğine bakın

BIOS seçeneği AMI (Amerikan Megatrends Inc.).

1. En son sürümü indirin BIOS anakart üreticinizin web sitesinden

3. XEON 771 işlemciler için mikro kodları indirin: lga771_microcodes

4. Kullanarak işlemcinizin CPUID'sini öğrenin. AIDA64 veya benzer bir program (cpu0001067Ah gibi görünüyor). Eğer bir BIOS işlemciyi takmadan önce dikilecek, o zaman bu maddeyi atlıyoruz.

5. Arşivleri paketinden çıkarın MM Aracı ve lga771_microcodes ve uzantılı dosyalardan ayrıl .çöp Kutusu yalnızca başlangıcı bilgisayarınızın CPUID'si ile eşleşen dosyalar (örneğin, cpu0001067a_plat00000044_ver00000a0b_date20100928.bin)

Hangi kodu bilmiyorsak, o zaman her şeyi dikeriz.

A. fırlatıyoruz MM Aracı. (1) düğmesine basın ROM'u yükle ve ana kartınız için en son BIOS'u programa yükleyin. En son BIOS'a sahipseniz, BIOS yedekleme yardımcı programını bilgisayardan da birleştirebilir ve düzenleyebilirsiniz.

b. Sekmeye git (2) CPU Yaması, ardından düğme (3) Araştır, dosyayı aç .çöp Kutusu CPUID'nize karşılık gelen

C. Seçenekleri varsayılan olarak bırakın. "Bir yama verisi ekleyin" ve düğmeye (4) basın uygulamak.

Değiştirilmiş bir bios ile güncelledikten sonra fabrika ayarlarına sıfırlama yapmak gerekiyor anakart böyle bir sıfırlamayı destekliyorsa sıfırlama düğmesi veya atlama telleri aracılığıyla veya BIOS pilini birkaç dakika çekerek. Ayrıca, işlemci bilgisayar tarafından zaten doğru bir şekilde algılanır ve olması gerektiği gibi çalışır.

Temel Giriş Çıkış Sistemi - BIOS olarak kısaltılan temel giriş / çıkış sistemi. küçük çip anakart, bilgisayar açıldığında kontrolü ilk alan kişidir. Sağlanan: temel ayarlar PC, başlangıçta PC bileşenlerini kontrol edin...