El nucli de Linux és l'element principal dels sistemes operatius (SO) Linux, i és la interfície fonamental entre el maquinari d'un ordinador i els processos.
La setmana passada Linus Torvalds va anunciar la disponibilitat general de la nova versió del nucli Linux 6.8, versió que va portar diversos mesos i va tenir algunes demores a causa d'una major quantitat de lliuraments del que és habitual. Aquest llançament inclou diversos aspectes destacats, com la compatibilitat amb el processador Broadcom BCM2712 a Raspberry Pi 5, la mitigació de banda Wi-Fi RFI (WBRF) basada en ACPI d'AMD, un nou controlador de gràfics Intel Xe DRM, i suport per a fscrypt a CephFS, entre d'altres.
Un dels punts més significatius és el suport inicial de Rust per a l'arquitectura LoongArch i la capacitat de Rust per desenvolupar controladors PHY de xarxa. Tot i que no és un llançament tan gran com Linux 6.7, Linux 6.8 implementa una gran quantitat de canvis i millores.
Principals novetats de Linux 6.8
En aquesta nova versió que es presenta de Linux 6.8 el subsistema Zswap ha estat millorat amb la capacitat de forçar la descàrrega de pàgines de memòria cold que no han estat accedides i probablement quedaran sense fer servir, activant-se en situacions d'escassetat de RAM. Zswap opera emmagatzemant en memòria cau les pàgines que es desallotgen a la partició d'intercanvi, comprimint-les en RAM sempre que sigui possible en lloc de buidar-les sense comprimir al disc. A més, Zswap presenta una nova manera que desactiva l'escriptura a la partició d'intercanvi real si l'escriptura no té èxit, evitant també la descàrrega de pàgines que ja són al grup Zswap a la partició d'intercanvi.
Quant al programador de tasques, s'ha integrat el mecanisme del servidor SCHED_DEADLINE, el qual aborda el problema de la subutilització dels recursos de la CPU per part de tasques regulars quan la CPU està monopolitzada per tasques d'alta prioritat (en temps real). Anteriorment, el nucli utilitzava un mecanisme de limitació en temps real que reservava el 5% de la CPU per a tasques de baixa prioritat, deixant el 95% per a tasques en temps real.
Linux 6.8 ara inclou un controlador DRM Xe dissenyat per a GPU basades en l'arquitectura Intel Xe, presents en targetes de vídeo de la família Intel Arc i en gràfics integrats des dels processadors Tiger Lake en endavant. Aquest controlador Xe és independent del codi que suporta plataformes més antigues, centrant-se a fer funcionar els nous xips de manera òptima. Fes servir una arquitectura renovada que aprofita millor els components del subsistema DRM i del controlador i915 que són genèrics i no estan lligats a GPU específiques.
el controlador Nouveau ha estat configurat per utilitzar les funcions de microprogramari GSP per defecte a les GPU NVIDIA basades en Turing i Ampere. Això implica que les operacions d'inicialització i control de la GPU es fan mitjançant un microcontrolador GSP independent, en lloc de programar directament operacions per interactuar amb l'equip.
Per la seva banda, el controlador AMDGPU ha millorat el suport amb la inclusió d'ACPI WBRF i VPE DPM, canvis en el processament del canal PCIe, la utilització de números de seqüència de 64 bits a les cues de sincronització, la incorporació de mecanismes d'administració de color específics d'AMD i la resolució de problemes relacionats amb el mode de suspensió.
A més, s'hi ha afegit soporti per a controladors de jocs NSO (Nintendo Switch Online) com a variants de controladors antics de SNES, Genesis i N64, adaptats per a Nintendo Switch. També s'ha afegit un controlador per als gamepads Adafruit Seesaw, i s'ha habilitat la compatibilitat amb els controladors Lenovo Legion Go al controlador xpad.
També es destaca que sé ha introduït un nou mode per bloquejar l'escriptura directa en dispositius de bloc que tenen sistemes de fitxers muntats. Quan aquest mode està habilitat, l'usuari root no podrà fer canvis al sistema de fitxers mitjançant manipulacions al nivell del dispositiu de bloc. És important destacar que aquest mode està deshabilitat per defecte i cal especificar el paràmetre BLK_DEV_WRITE_MOUNTED durant l'assemblatge per activar-lo.
Dels altres canvis que es destaquen:
- S'ha afegit la implementació inicial del controlador per a la GPU Broadcom VideoCore 7.1 utilitzada a les plaques Raspberry Pi 5.
- S'hi va afegir un controlador per a les GPU de la sèrie PowerVR 6 basades en la microarquitectura Rogue d'Imagination Technologies.
- S'ha afegit suport per a controladors Thunderbolt/USB4 integrats en xips basats en la microarquitectura Intel Lunar Lake.
- AMD ha realitzat canvis relacionats amb el suport per a la futura sèrie de processadors basats en la nova microarquitectura Zen 5.
- S'han afegit les trucades al sistema listmount() i statmount(), permetent obtenir informació detallada sobre els sistemes de fitxers muntats des de l'espai de l'usuari.
- Al sistema de fitxers XFS, es continua treballant en la capacitat d'utilitzar la utilitat fsck per verificar i corregir problemes identificats en línia, sense desmuntar el sistema de fitxers.
- Ext4 ha implementat la trucada dioread_nolock per a blocs més petits que una pàgina de memòria, millorant el rendiment en eliminar bloquejos innecessaris.
- Btrfs va afegir suport per a l'indicador de muntatge «nospace_cache» per desactivar la memòria cau de blocs lliure.
- AppArmor ha canviat a l'algorisme SHA-256 per a la verificació de regles, reemplaçant els hashes SHA-1 anteriors.
- La funció strlcpy() que es va incloure a Glibc 2.38 C es va eliminar del nucli. Aquesta funció és una alternativa a strncpy() amb protecció contra desbordament del memòria intermèdia.
- KVM ha afegit suport per al subsistema guest_memfd (memòria primer del convidat), que proporciona funcions d'administració de memòria per organitzar la informàtica confidencial a l'entorn del convidat.
Finalment si estàs interessat en poder conèixer més a l'respecte, pots consultar els detalls al següent enllaç.