Drygt ett och ett halvt Är efter föregÄende uppdatering har versionen av operativsystemet NetBSD 10 publicerats. Installationsbilder pÄ 630 MB har förberetts för nedladdning, tillgÀngliga i versioner för 57 systemarkitekturer och 16 olika CPU-familjer. Den nya versionen innehÄller ett antal betydande förbÀttringar, sÄsom stöd för accesskontrollister i filsystemet FFS, avsevÀrt optimerad prestanda, disk-kryptering med Adiantum-algoritmen och implementering av drivrutinen för VPN WireGuard direkt i kÀrnan.
Projektet stöder 8 primÀra portar som utgör kÀrnan i NetBSDs utvecklingsstrategi: amd64, i386, evbarm, evbmips, evbppc, hpcarm, sparc64 och xen, samt 49 sekundÀra portar relaterade till CPU:er som alpha, hppa, m68010, m68k, sh3, sparc och vax. SekundÀra portar stödjs fortfarande, men har redan blivit mindre aktuella eller har inte tillrÀckligt med intresserade utvecklare för att fortsÀtta utvecklingen. En port (acorn26) ingÄr i den tredje kategorin som har övergivit portarna, avsedda för borttagning om ingen intresserad entusiast Äterfinns för att utveckla dem.
HuvudförbÀttringarna i NetBSD 10:
- Filsystemet FFS har fÄtt stöd för accesskontrollister (POSIX.1e ACL), implementerat med hjÀlp av utökade filattribut och överfört frÄn FreeBSD. För anvÀndning av ACL har en ny typ av FFS, FFSv2ea (som inte anvÀnds som standard), föreslagits, till vilken befintliga FFS kan konverteras med verktyget fsck_ffs.
- NÀtverksgrÀnssnittet wg har lagts till med implementeringen VPN, som Àr kompatibel med WireGuard.
- Prestanda har optimerats. Effektiviteten i filvÀgskontaktens cache i kÀrnan har ökat. Prestandan hos schemalÀggaren har förbÀttrats, anpassad för att fungera pÄ big.LITTLE Arm-system som kombinerar snabba och lÄngsamma CPU-kÀrnor. Prestandan för systemanropen select och poll har ökat. Prestandan hos filsystemet tmpfs har ökat. Laddningstiden har snabbats upp. Optimeringar specifika för arkitekturerna x86 och AArch64 har införts. In- och utgÄngsbandbredd samt nÀtverksoperationer pÄ AArch64-system har förbÀttrats.
- Optimeringar har införts i det virtuella minnessystemet: en snabbare radix tree-algoritm anvÀnds för att söka sidor i minnet, hastigheten för att spÄra rena och smutsiga minnessidor har ökat, fsync-uppgifterna för stora filer har avsevÀrt snabbats upp, och hanteringen av lÄsningar samt effektiviteten i parallella operationer har förbÀttrats.
- Stöd för disk-kryptering med Adiantum-algoritmen har lagts till, vilket möjliggör hög effektivitet pÄ system utan hÄrdvaruaccelerering för AES-kryptering. Verktyget cgdconfig har fÄtt stöd för delade nycklar som kan anvÀndas för att kryptera flera lagringsenheter. Standard hash-algoritm för lösenord har Àndrats till Argon2id. Automatiskt kryptering av vÀxlingspartitioner (vm.swap_encrypt=1) har aktiverats. Stöd för hÄrdvaruaccelerering av kryptering, tillhandahÄllet av x86- och Arm-processorer, har lagts till, sÄ som instruktioner för att pÄskynda AES och ChaCha. I den programvarubaserade implementeringen av AES som tillhandahÄlls av kÀrnan sÀkerstÀlls konstant exekveringstid för operationer pÄ alla arkitekturer.
- Stöd för sÀkerhetsrelaterade utvidgningar, tillhandahÄllna i Armv8-A-processorer, har lagts till: PAN (Privileged Access Never), PA (Pointer Authentication), BTI (Branch Target Identification).
- För att identifiera sÀkerhetsproblem i kÀrnan har mekanismer för Kernel Concurrency Sanitizer och Kernel Memory Sanitizer anvÀnts.
- I nÀtverksstacken har stöd för RFC 7048 implementerats, vilket förbÀttrar funktionen för IPv6 Neighbor Discovery och gör den oberoende av adresser.
- Ett nytt nÀtverksgrÀnssnitt, lagg, för aggreggation av nÀtverkslÀnkar och redundans har lagts till (lagg har ersatt grÀnssnittet agr).
- En vether-drivrutin med implementering av virtuella Ethernet-grÀnssnitt, som kan anvÀndas i nÀtverksbroar och som alternativ till tap-grÀnssnitt, har lagts till.
- I implementeringen av ipsec har sysctl net.key.allow_different_idtype lagts till för att förbÀttra kompatibiliteten med andra VPN.
- Stödet för UDF-formatet (Universal Disk Format, FS för optiska skivor) har förbÀttrats, som nu Àr felkompatibelt med implementeringen frÄn Windows 10. Verktyget newfs_udf har nu möjlighet att skapa i UDF 2.50-format med en separat partition för metadata. En ny verktyg fsck_udf för att kontrollera och ÄterstÀlla misslyckade FSer i UDF-format har lagts till.
- Stöd för ZFS har lagts till i fstat-verktyget.
- Det har utökats stöd för FUSE (Filesystem in Userspace), och drivrutinen refuse har fullstÀndig stöd för FUSE API-varianter som anvÀnds i versioner av FUSE frÄn 1.1 till 3.10.
- I implementationen av mjukvaru-RAID har stöd lagts till för konfigurationer med omvÀnd byteordning (swapped-endian). I verktyget raidctl har alternativet "-t" lagts till för att kontrollera konfigurationsfilers korrekthet.
- En ny tjÀnst blkdiscard har lagts till för manuell utförande av TRIM-operationer pÄ diskar för att informera om oanvÀnda block.
- I verktyget scan_ffs har möjligheten att visa aktuell statistik vid mottagande av SIGNAL SIGINFO (Ctrl+T) lagts till.
- Nya program har inkluderats:
- aiomixer â ljudmixare.
- realpath â ger den absoluta sökvĂ€gen till en fil baserat pĂ„ dess relativa sökvĂ€g.
- tradcpp â makroprocessor i stil med K&R C.
- ioctlprint â visar vĂ€rden för ioctl.
- testpat â ger en testtabell för att utvĂ€rdera fĂ€rgreproduktionen av skĂ€rmen.
- warp â ett klassiskt spel för BSD-system.
- Rasterteckensnittet Spleen, levererat under BSD-licens, har inkluderats och aktiverats i ctwm, tillgÀngligt för bÄde lÄga och högupplösta skÀrmar. Konsolteckensnittet Terminus har ocksÄ inkluderats.
- Stödet för Linux-kompatibilitetslager (compat_linux) har utökats med stöd för mekanismer som eventfd, timerfd, POSIX-timrar, preadv och pwritev.
- Stödet för virtualisering har förbÀttrats. Stöd har lagts till för Xen PVH, vilket möjliggör anvÀndning av Xen PV-drivrutiner i gÀstsysten baserade pÄ HVM, förbÀttrad implementering av para-virtualiserade nÀtverksgrÀnssnitt. I vÀrdkÀrnor (Dom0) för Xen har stöd för multiprocessorsystem aktiverats. I kÀrnor för Xen har möjligheten att anvÀnda moduler som Àr gemensamma med den vanliga kÀrnan tillhandahÄllits. NÀtverks (xennet) och block (xbd) enheter har anpassats för multiprocessorsystem (Àr nu MPSAFE). Stödet för hypervisorn HyperV har förbÀttrats och funktioner för hypervisorn nvmm (NetBSD Virtual Machine Monitor) har utvidgats. Möjligheten att gÄ in i vilolÀge har lagts till vid utförande virtuella maskiner i nvmm.
- VirtIO-drivrutinerna har förbÀttrats, med stöd för specifikationen VirtIO 1.0. En vio9p-drivrutin har lagts till för att montera VirtIO 9P Filsystem i gÀstsysten, som exponeras av vÀrdmiljön. En viocon-drivrutin för virtuell seriell port har lagts till.
- Systemanropen eventfd och timerfd, kompatibla med Linux, har implementerats och anvÀnds i compat_linux. Ett syscalls fexecve har lagts till för att exekvera filer baserat pÄ filbeskrivare.
- FörÄldrade komponenter har tagits bort, exempelvis har stöd för HIPPI, FDDI och TokenRing upphört, drivrutinerna nsmb och mount_smbfs för SMBFS har tagits bort frÄn kÀrnan (de stöder inte nya versioner av SMB-protokollet), stödet för IPv6 Router Advertisement har flyttats frÄn kÀrnan till anvÀndarutrymmet, och biblioteken libXTrap, libXevie och libglut har tagits bort, liksom drivrutiner för mÄnga förÄldrade enheter.
- Stödet för hÄrdvara har utökats avsevÀrt. Funktionerna hos de nya Intel- och AMD-processorerna har inkluderats. Stöd för nya ARM-plattformar (Raspberry Pi 4, Orange Pi 5, Lichee Pi Zero, ODROID-N2+, M1 Mac Mini, HummingBoard Pulse, UDOO Neo Full, PINE64 Quartz64, Asus Tinker osv.) har lagts till. Stödet för MIPS-arkitekturen har ocksÄ utökats.
- 17 nya enhetsdrivrutiner har lagts till, exempelvis drivrutiner för Wacom-pekplattor, Realtek 8125 2.5 Gigabit Ethernet, Motorcomm YT8511C / YT8511H Gigabit Ethernet, Intel Ethernet 700, Broadcom GENETv5 Ethernet, Intel QuickAssist-kryptoacceleratorer och Intel XMM7360 LTE-modem.
- Grafikdrivrutiner för GPU:er frÄn Intel, NVIDIA och AMD för x86-system har uppdaterats. DRM/KMS-subsystemet har synkroniserats med Linux-kÀrna 5.6.
- Versionerna av tredjepartskomponenter har uppdaterats, inklusive fönsterhanteraren ctwm 4.0.3, gcc 10.5, lua 5.4.6, OpenSSL 3.0.12, postfix 3.8.4, tmux 3.2a, OpenSSH 9.6, X.org Server 21.1.7, BIND 9.18.24, Heimdal kerberos 7.8.0, unbound 1.19.1, wpa_supplicant 2.9, OpenLDAP 2.5.6, binutils 2.34, libfido2 1.13.0, pam-u2f 1.2.0, zlib 1.2.13.
KĂ€lla: opennet.ru
