CPU Microcode.
Intel® 64 and IA-32 processors (x86_64 and i686 processors) are capable of field-upgrading their control program (microcode) as well as parameters for other on-chip subsystems (power management, interconnects, etc). These microcode updates correct processor errata, and are important for safe, stable and correct system operation.
referentie: /usr/share/doc/intel-microcode/README.Debian.gz
Nota: Gebruik de applicatie less om het README bestand te lezen.
Welke microcode is geladen in de CPU van mijn computer?
- Info via cpuinfo:
Geef het volgende commando:
cat /proc/cpuinfo | grep microcode
Het resultaat is afhankelijk van het CPU type in de computer, voorbeeld:karelk@HP-Laptop: cat /proc/cpuinfo | grep microcode
microcode : 0xca
microcode : 0xca
microcode : 0xca
microcode : 0xca
microcode : 0xca
microcode : 0xca
microcode : 0xca
microcode : 0xca
De versie van de microcode wordt getoond voor elke core en/of thread. De CPU in het vorige voorbeeld is een quad core, double thread CPU. Deze informatie kan ook ontbreken bij sommige CPU types alhoewel er toch microcode geladen is. - Info uit
dmesg
commando: Geef het volgende commando:dmesg | grep microcode
Het resultaat is afhankelijk van het CPU type in de computer, voorbeeld:karelk@HP-Laptop:/usr/share/doc/intel-microcode$ dmesg | grep microcode
[ 0.000000] microcode: microcode updated early to revision 0xca, date = 2019-10-03
[ 1.107508] microcode: sig=0x806ea, pf=0x80, revision=0xca
[ 1.108305] microcode: Microcode Update Driver: v2.2.
De versie en release datum worden getoond. Indien geen microcode geladen wordt door de kernel (zoals in het geval dat de microcode geladen wordt door de BIOS), wordt niets getoond.
Verhinderen dat microcode opgeladen wordt.
Je kan verhinderen dat de kernel microcode naar de CPU upload.
Het opladen van microcode in de CPU kan verhinderd worden door het argument dis_ucode_ldr
aan deGRUB_CMDLINE_LINUX_DEFAULT="andere-parameters dis_ucode_ldr" kernel commando lijn toe te voegen.
Je kan dit doen bij het opstarten door de commando lijn in grub aan te passen, in dit geval is de aanpassing eenmalig.
Je kan deze aanpassing permanent maken door het bestand /etc/default/grub
aan te passen.
- Aanpassing gedurende het opstarten
- Stop het opstart proces bij het grub selectie menu. Voor configuraties waar het grub menu niet getoond wordt, start op en houd de SHIFT toets ingedrukt tot het menu getoond wordt.
- Edit de opstartlijn:
Voeg
dis_ucode_ldr
toe aan de kernel parameters - Start de computer (door
ctrl+X
te typen) - Na het opstarten, kan je met het commando
dmesg | grep microcode
nagaan dat er geen microcode is opgeladen.
- Aanpassing van
/etc/default/grub
bestand- open het bestand
/etc/default/grub
met je favoriete editer (vb nano) als root gebruiker - Voeg het argument
dis_ucode_ldr
toe aan de lijn vb:GRUB_CMDLINE_LINUX_DEFAULT="andere-parameters dis_ucode_ldr"
Indien er reeds andere parameters staan, voeg de parameter dan toe op het einde van de lijn, vóór de eind-dubbele-haakjes"
, plaats eenspatie
tussen de parameters. - Sla de veranderingen op.
- Update de grub configuratie.
-
sudo nano /etc/default/grub sla de verandering op door ctrl+O, gevolgd door
Enter
om de bestandsnaam te bevestigen, in te typen, verlaat de editor door ctrl+X te typen. sudo update-grub
- open het bestand
Bronnen:
Als het pakket intel-microcode op het systeem geïnstalleerd is, kan je informatie (engelstalig) vinden in bestanden uit de map /usr/share/doc/intel‑microcode
:
- README.Debian.gz
- changelog.Debian.gz
- op volgende website: wiki.debian.org/Microcode
Er bestaat ook een debian pakket met microcode voor AMD procesoren: amd64-microcode
.