ノートブックに最新のBIOSをインストールしました。ノートブックのメーカーは、BIOSアップデートにはSpectre/Meltdownの脆弱性に関する修正が含まれると述べています。
Ubuntuは(あなたが話している意味で)マイクロコードをまったく使用していません。ただし、CPUはマイクロコードを使用します。つまり、コードitが機能する必要があります。
Ubuntuは、AMDおよびIntelマイクロコードパッケージを提供し、そのハードウェアの更新されたファームウェアを提供します。これらのパッケージは、サポートされるすべてのUbuntuリリースのすべてのSpectre/Meltdownパッチで完全に更新されます。
脆弱性に対する継続的なパッチは、Ubuntu Security Teamによって処理されます。 Ubuntuのサポートされているリリースでは、supportの通常の部分です。 Ubuntuの-securityリポジトリからアップグレードすると、これらのパッチを定期的に受け取ります。
特定の脆弱性について質問がある場合は、自由に database の脆弱性とパッチを検索してください。
CPUがgrep microcode /proc/cpuinfo
で使用しているファームウェアのバージョンを確認します
最後に、脆弱性を確認するときにバージョン番号が誤解を招く可能性があることに注意してください:パッチを当てたパッケージは、新しいアップストリームバージョンではないため、アップストリームバージョン番号が高くない場合がありますが、修正およびテストされており、脆弱ではありません。これらの場合、DebianとUbuntuは独自の補足バージョン番号を追加するので、違いがわかります。
答えは:
最初にBIOSからマイクロコードをロードし、 then をロードします。OSのロード中に、最新のマイクロコードがOSによって再度ロードされます。両方とも signed バイナリファイルで、おそらく改ざんすることはできません。
したがって、BIOS/UEFIのバージョンがOperating Systemに提供されたバージョンよりも古い場合、MicroCodeはシステムアップデートを介してOSによってロード/更新されます。それ以外の場合は、BIOS/UEFIバージョンが使用されます。
Operating Systemは、 this WiKi で述べたように、起動プロセス中にロードマイクロコードを行います:
ただし、CPUベンダーが提供する「不透明な」更新データ自体はフリーではなく、その内容はDebianに知られていません。この「不透明な」データは、処理のためにCPUにそのまま送信されますが、カーネルおよびユーザー空間ユーティリティがそうする必要があると判断した場合のみです。つまり、実際に必要な場合を除き、マイクロコードの更新はシステムプロセッサに送信されません。
たとえば、プロセッサが同じバージョンまたは新しいバージョンのマイクロコードを実行しているとプロセッサが報告した場合、システムはプロセッサにマイクロコード更新データを送信しません(UEFI/BIOSがすでに更新しているため)。また、そのシステムプロセッサに適切でないマイクロコード更新データも送信しません。