如何使用 GRUB 更新 CPU 的微碼並鍊式載入 Windows 10?

如何使用 GRUB 更新 CPU 的微碼並鍊式載入 Windows 10?

我想在運行 Windows 10 之前更新 CPU 的微程式碼。

想法是使用 GRUB(這裡的 NeoGrub 來自https://neosmart.net/wiki/easybcd/neogrub/) 來完成任務。

背景:

我為什麼要這樣做?我的 Intel 主機板配備官方不支援的 Xeon x5470 CPU(因此 BIOS 沒有可用的微代碼,並且 Intel 的 BIOS 由於數位簽章而無法修補); Windows 7 64b 運作正常,但 Windows 10 64b 無法啟動(而具有 E8400 CPU 的同一台機器成功啟動,因此罪魁禍首在於 CPU - 可能缺少compareexchange128 指令,該指令可能是透過微碼更新提供的)

http://answers.microsoft.com/en-us/windows/forum/windows_10-windows_install/windows-10-pro-upgrade-compareexchange128/f86d76d7-a2b7-4551-8a01-6d5169222?

更新:

根據 BIOS BITS,我的 X5470 有:

  • 0001067a 的簽名
  • 平台ID為00000004
  • 00000a0b 的微碼修訂版

並且使用 Intel 的最新微程式碼,沒有更新,Windows 10 仍然掛在啟動:(

所以我確實確認可以透過 BIOS BITS 來完成該任務,但不幸的是它並不能解決我的問題;可能是 BIOS 沒有開啟某些 CPU 功能(PAE、NX、SSE2); BIOS BITS 應該也能做到這一點,我只需要學習如何做到這一點...

嗯,看起來這個 CPU 沒有必要的功能

ecx[13] cnpxchg16b=0

但從網路搜尋我發現它是相當古老的指令,它應該是由這個CPU提供的;該 CPU 的其他用戶報告其可用(http://www.cpu-world.com/cgi-bin/CompareCPUID.pl?CPUID=47075&CPUID=47071&PROCESS=Compare+selected);我可以使用 wrmsr 將其打開嗎?

答案1

是的,這是可能的,但不使用標準 grub。

請檢查「BIOS BITS」專案的引導程式是否可以運作。它更新微程式碼,然後鍊式載入作業系統,但它是一個非常非常先進的工具。

http://www.biosbits.org/

答案2

摘自 BITS 的 README.txt:

  • 「配置選單」包含臨時重新配置系統的選項。這些選項都不會影響您的 BIOS 或永久更改您的系統配置,但它們只會覆蓋目前啟動的配置。

因此,您確實可以加載微代碼,但顯然僅適用於單一啟動會話!

答案3

相關內容