
Linux és un nucli majoritàriament lliure semblant al nucli d'Unix. És un dels principals exemples de programari lliure i de codi obert.
Fa poc Linus Torvalds, el creador i mantenidor del nucli de Linux, va anunciar el llançament de la versió 6.6, després d'esgotar totes les excuses per endarrerir la feina. Aquesta nova versió porta diverses característiques noves i millores, particularment en termes de seguretat, suport de maquinari i rendiment. Una de les característiques noves més notables de Linux 6.6 és el programador EEVDF, que reemplaça el programador CFS.
Entre les principals característiques de Linux 6.6 hi ha la implementació de l'Intel Shadow Stack (que malgrat el seu nom també beneficia certs xips AMD), una tecnologia de seguretat de maquinari que protegeix les aplicacions contra atacs de programació orientada al retorn (ROP, per les sigles en anglès) en processadors Intel Tiger Lake i posteriors.
Principals novetats de Linux 6.6
En aquesta nova versió que es presenta de Linux 6.6, si van afegir configuracions addicionals per a cues de treball independents per millorar l'eficiència de la reutilització de la memòria cau del processador en sistemes grans amb múltiples memòria cau de tercer nivell (L3). El nucli també inclou una utilitat tools/workqueue/wq_dump.py per verificar la configuració actual de les cues de treball.
Un altre dels canvis que es destaca, és que es va afegir suport per a paràmetres numèrics a la configuració /sys/devices/system/cpu/smt/ control que determinen la quantitat de subprocessos disponibles per a cada nucli de CPU (anteriorment només s'admetien valors on i off per habilitar o deshabilitar suport de subprocessos múltiples simètric). La nova característica es pot utilitzar en alguns processadors PowerPC que admeten subprocessos múltiples simètrics hotplug («hotplug SMT») per habilitar selectivament SMT en nuclis específics durant l'operació.
Al costat del sistema de fitxers, Linux 6.6 porta millores per al suport de dispositius zonals i compressió per a F2FS, suport per a mmaps compartits en mode sense memòria cau per a FUSE, correccions per a netfilter i BPF, nombroses correccions per al controlador AMDGPU, correccions de regressió per a suport MIDI 2.0 i una millor administració denergia Intel RAPL.
Linux 6.6 també afegeix un compilador BPF just a temps per a l'arquitectura PA-RISC, suport de connexió en calent SMT per a l'arquitectura PowerPC, un nou indicador per a l'API de muntatge que evita que un muntatge comparteixi superblocs a la memòria amb altres muntatges, suport per a SEV -Convidats SNP i TDX a Hyper-V i suport d'operacions de xarxa inicials per al subsistema io_uring. S'ha afegit al subsistema BPF suport per a la desfragmentació de paquets IPv4 i IPv6, així com la capacitat de filtrar paquets fragmentats. S'ha afegit un controlador nou, update_socket_protocol, a BPF per permetre que els programes de BPF canviïn el protocol sol·licitat per a nous sockets.
A més d'això, s'ha afegit informació al fitxer /proc/pid/smaps per diagnosticar l'efectivitat del mecanisme per fusionar pàgines de memòria idèntiques (KSM: Kernel Samepage Merging).
Es va eliminar l'API Frontswap, cosa que permet col·locar la partició d'intercanvi en una memòria que no es pot abordar directament i no proporciona informació operativa sobre la disponibilitat d'espai lliure. Aquesta API es va fer servir només en zswap, per la qual cosa es va decidir utilitzar aquesta funcionalitat directament en zswap, eliminant capes innecessàries.
XFS ha estat preparat per a la possibilitat d'utilitzar la utilitat fsck per verificar i corregir problemes identificats en línia, sense desmuntar el sistema de fitxers. A més, XFS va implementar la capacitat d'utilitzar publicacions grans a la memòria cau de la pàgina i va afegir algunes optimitzacions relacionades que van millorar significativament el rendiment per a alguns tipus de càrrega de treball.
El sistema d'arxius tmpfs ha afegit suport per a atributs estesos d'usuari (usuari xattrs), E/S directa i quotes d'usuaris i grups. Es van estabilitzar les compensacions de directori, cosa que va resoldre els problemes amb l'exportació de tmpfs a través de NFS.
A més, es va afegir una implementació del mecanisme Shadow Stack, que permet bloquejar el funcionament de molts exploits, utilitzant les capacitats de maquinari dels processadors Intel per protegir contra la sobreescriptura de la direcció de retorn duna funció en cas dun desbordament del memòria intermèdia a la pila.
l'essència de la protecció és que després de transferir el control a una funció, el processador emmagatzema les adreces de retorn no només a la pila normal, sinó també en una pila «Shadow» separada, que no es pot canviar directament. Abans que surti la funció, la direcció de retorn s'extreu de la pila oculta i es compara amb la direcció de retorn de la pila principal. Les adreces no coincidents provoquen la generació d'una excepció, bloquejant situacions en què l'exploit va aconseguir sobreescriure una adreça a la pila principal. La pila d'ombra de maquinari només s'admet en compilacions de 64 bits i l'emulació de programari s'utilitza en compilacions de 32 bits.
Dels altres canvis que es destaquen d'aquesta nova versió:
- S'ha afegit suport inicial per a instruccions ARM SME (Scalable Matrix Extension).
- S'han ampliat les capacitats de la utilitat perf.
- S'ha afegit una nova interfície de caràcters (/dev/vfio/devices/vfioX) al subsistema VFIO per administrar dispositius VFIO, cosa que permet a l'usuari obrir directament un fitxer de dispositiu sense accedir a la interfície de grup heretada /dev/vfio/$ groupID .
- El servidor NFS ja no admet tipus de xifratge Kerberos heretats que utilitzen els algoritmes DES i 3DES.
- La implementació de la família d'adreces AF_XDP (eXpress Data Path) s'ha ampliat per funcionar amb paquets emmagatzemats a múltiples buffers.
- Els programes que utilitzen sockets AF_XDP ara poden rebre i transmetre paquets des de múltiples buffers alhora.
- La bandera de desenvolupament experimental es va eliminar del mòdul ksmbd, que ofereix una implementació a nivell de kernel d'un servidor de fitxers basat en el protocol SMB3.
- S'hi va afegir suport per combinar operacions de lectura (consultes de lectura composta).
Finalment si estàs interessat a poder conèixer més sobre això, pots consultar els detalls al següent enllaç.