Një vit e gjysmë pas publikimit të përditësimit të mëparshëm, është prezantuar versioni i ri i sistemit operativ NetBSD 10. Për shkarkim janë përgatitur imazhe instalimi me madhësi 630 MB, të disponueshme në ndërtime për 57 arkitektura sistemore dhe 16 familje të ndryshme CPU. Dega e re përfshin një sërë përmirësimesh të rëndësishme, si mbështetja për listat e kontrollit të qasjes në sistemin e skedarëve FFS, optimizim i ndjeshëm i performancës, enkriptim i diskut me algoritmin Adiantum dhe implementimi në kernel i drajverit për VPN WireGuard.
Projekti mbështet 8 porte kryesore, që përbëjnë bazën e strategjisë së zhvillimit të NetBSD: amd64, i386, evbarm, evbmips, evbppc, hpcarm, sparc64 dhe xen, si edhe 49 porte dytësore të lidhura me CPU si alpha, hppa, m68010, m68k, sh3, sparc dhe vax. Portet dytësore vazhdojnë të mbështeten, por tashmë kanë humbur aktualitetin ose nuk kanë numër të mjaftueshëm zhvilluesish të interesuar për zhvillimin e tyre. Një port (acorn26) është futur në kategorinë e tretë, ku përfshihen portet jofunksionale që mund të hiqen nëse nuk gjenden entuziastë të interesuar për zhvillimin e tyre.
Përmirësimet kryesore në NetBSD 10:
- Në sistemin e skedarëve FFS është shtuar mbështetja për listat e kontrollit të qasjes (POSIX.1e ACL), e realizuar duke përdorur atributet e zgjeruara të skedarëve dhe e portuar nga FreeBSD. Për përdorimin e ACL është propozuar një lloj i ri i sistemit të skedarëve FFSv2ea (nuk përdoret si parazgjedhje), drejt të cilit sistemet ekzistuese të skedarëve mund të konvertohen me ndihmën e mjetit fsck_ffs.
- ĂshtĂ« shtuar ndĂ«rfaqja e rrjetit wg me implementimin e VPN, i pajtueshĂ«m me WireGuard.
- ĂshtĂ« kryer optimizim i performancĂ«s. ĂshtĂ« rritur efikasiteti i cache-it tĂ« shtigjeve tĂ« skedarĂ«ve nĂ« kernel. ĂshtĂ« rritur performanca e planifikuesit tĂ« detyrave, i cili Ă«shtĂ« pĂ«rshtatur pĂ«r punĂ« nĂ« sistemet big.LITTLE Arm, qĂ« kombinojnĂ« bĂ«rthama CPU tĂ« shpejta dhe tĂ« ngadalta. ĂshtĂ« rritur performanca e thirrjeve tĂ« sistemit select dhe poll. ĂshtĂ« rritur performanca e sistemit tĂ« skedarĂ«ve tmpfs. ĂshtĂ« pĂ«rshpejtuar procesi i nisjes. JanĂ« shtuar optimizime specifike pĂ«r arkitekturat x86 dhe AArch64. ĂshtĂ« rritur kapaciteti i operacioneve tĂ« hyrje-daljes dhe i operacioneve tĂ« rrjetit nĂ« sistemet AArch64.
- Janë bërë optimizime në sistemin e memories virtuale: për kërkimin e faqeve të memories përdoret një algoritëm më i shpejtë radix tree, është rritur shpejtësia e gjurmimit të faqeve të pastra dhe të ndotura të memories, është përshpejtuar ndjeshëm funksionimi i fsync për skedarë të mëdhenj, është përmirësuar puna me bllokimet dhe është rritur efikasiteti i ekzekutimit paralel të operacioneve.
- ĂshtĂ« shtuar mbĂ«shtetja pĂ«r enkriptimin e disqeve me pĂ«rdorimin e algoritmit Adiantum, i cili mundĂ«son efikasitet tĂ« lartĂ« nĂ« sisteme pa pĂ«rshpejtim harduerik tĂ« enkriptimit AES. NĂ« mjetin cgdconfig Ă«shtĂ« shtuar mbĂ«shtetja pĂ«r çelĂ«sa tĂ« pĂ«rbashkĂ«t, tĂ« cilĂ«t mund tĂ« pĂ«rdoren pĂ«r enkriptimin e disa disqeve. Algoritmi i parazgjedhur pĂ«r hashimin e fjalĂ«kalimeve Ă«shtĂ« ndryshuar nĂ« Argon2id. ĂshtĂ« aktivizuar enkriptimi automatik i particioneve swap (vm.swap_encrypt=1). ĂshtĂ« shtuar mbĂ«shtetja pĂ«r mekanizmat harduerikĂ« tĂ« pĂ«rshpejtimit tĂ« enkriptimit qĂ« ofrohen nga procesorĂ«t x86 dhe Arm, pĂ«r shembull instruksionet pĂ«r pĂ«rshpejtimin e AES dhe ChaCha. NĂ« implementimin softuerik tĂ« AES tĂ« ofruar nga kerneli, Ă«shtĂ« siguruar kohĂ« konstante e ekzekutimit tĂ« operacioneve pĂ«r tĂ« gjitha arkitekturat.
- ĂshtĂ« shtuar mbĂ«shtetja pĂ«r zgjerimet e sigurisĂ« tĂ« ofruara nĂ« procesorĂ«t Armv8-A: PAN (Privileged Access Never), PA (Pointer Authentication), BTI (Branch Target Identification).
- Për zbulimin e problemeve të sigurisë në kernel janë përdorur mekanizmat Kernel Concurrency Sanitizer dhe Kernel Memory Sanitizer.
- Në stack-un e rrjetit është zbatuar mbështetja për RFC 7048, e cila përmirëson funksionimin e mekanizmit IPv6 Neighbor Discovery dhe e bën atë të pavarur nga adresat.
- ĂshtĂ« shtuar ndĂ«rfaqja e re e rrjetit lagg pĂ«r agregimin e lidhjeve tĂ« rrjetit dhe sigurimin e tolerancĂ«s ndaj dĂ«shtimeve (lagg ka zĂ«vendĂ«suar ndĂ«rfaqen agr).
- ĂshtĂ« shtuar driver-i vether me implementimin e ndĂ«rfaqeve virtuale Ethernet, tĂ« cilat mund tĂ« pĂ«rdoren nĂ« ura rrjeti dhe nĂ« vend tĂ« ndĂ«rfaqeve tap.
- Në implementimin e ipsec është shtuar sysctl net.key.allow_different_idtype për të përmirësuar përputhshmërinë me VPN të tjera.
- ĂshtĂ« pĂ«rmirĂ«suar mbĂ«shtetja pĂ«r formatin UDF (Universal Disk Format, sistem skedarĂ«sh pĂ«r disqe optike), i cili tani Ă«shtĂ« i pĂ«rputhshĂ«m nĂ« nivel gabimesh me implementimin nĂ« Windows 10. NĂ« mjetin newfs_udf Ă«shtĂ« shtuar mundĂ«sia e krijimit nĂ« formatin UDF 2.50 me njĂ« particion tĂ« veçantĂ« pĂ«r metadata. ĂshtĂ« shtuar mjeti fsck_udf pĂ«r kontrollin dhe rikuperimin e sistemeve tĂ« skedarĂ«ve UDF me defekte.
- Në mjetin fstat është shtuar mbështetja për ZFS.
- ĂshtĂ« zgjeruar mbĂ«shtetja pĂ«r mekanizmin FUSE (Filesystem in Userspace); nĂ« driver-in refuse Ă«shtĂ« siguruar mbĂ«shtetje e plotĂ« pĂ«r variantet e API FUSE qĂ« pĂ«rdoren nĂ« versionet FUSE nga 1.1 deri nĂ« 3.10.
- NĂ« implementimin e RAID softuerik Ă«shtĂ« shtuar mbĂ«shtetja pĂ«r konfigurime me renditje bajtesh tĂ« zĂ«vendĂ«suar (swapped-endian). NĂ« utilitĂ«n raidctl Ă«shtĂ« shtuar opsioni â-tâ pĂ«r tĂ« kontrolluar saktĂ«sinĂ« e skedarĂ«ve tĂ« konfigurimit.
- ĂshtĂ« shtuar utilita e re blkdiscard pĂ«r kryerjen manuale tĂ« operacioneve TRIM nĂ« disqe, pĂ«r tĂ« njoftuar mbi blloqet e papĂ«rdorura.
- Në utilitën scan_ffs është shtuar mundësia për të shfaqur statistikat aktuale pas marrjes së sinjalit SIGINFO (Ctrl+T).
- Janë përfshirë programe të reja:
- aiomixer â mikser audio
- realpath â shfaq shtegun absolut tĂ« skedarit bazuar nĂ« njĂ« shteg relativ.
- tradcpp â makroprocesor nĂ« stilin K&R C.
- ioctlprint â shfaqja e vlerave ioctl.
- testpat â shfaqja e njĂ« tabele testuese pĂ«r vlerĂ«simin e riprodhimit tĂ« ngjyrave tĂ« ekranit.
- warp â lojĂ« klasike e sistemeve BSD.
- Janë përfshirë në paketë dhe janë aktivizuar në ctwm fontet bitmap Spleen, të shpërndara me licencën BSD dhe të disponueshme si për ekrane me rezolucion të ulët, ashtu edhe për ekrane me densitet të lartë pikselësh. Gjithashtu, në paketë janë përfshirë fontet e konsolës Terminus.
- Në shtresën e pajtueshmërisë me Linux (compat_linux) është shtuar mbështetja për mekanizmat eventfd, timerfd, timerët POSIX, preadv dhe pwritev.
- ĂshtĂ« pĂ«rmirĂ«suar mbĂ«shtetja pĂ«r virtualizimin. ĂshtĂ« shtuar mbĂ«shtetja pĂ«r Xen PVH, Ă«shtĂ« mundĂ«suar pĂ«rdorimi i driver-Ă«ve Xen PV nĂ« sistemet mysafire tĂ« bazuara nĂ« HVM, si dhe Ă«shtĂ« pĂ«rmirĂ«suar implementimi i ndĂ«rfaqeve tĂ« rrjetit tĂ« paravirtualizuara. NĂ« kernelĂ«t host (Dom0) pĂ«r Xen Ă«shtĂ« aktivizuar mbĂ«shtetja pĂ«r sistemet shumĂ«procesorike. NĂ« kernelĂ«t pĂ«r Xen Ă«shtĂ« mundĂ«suar pĂ«rdorimi i moduleve tĂ« pĂ«rbashkĂ«ta me kernelin e zakonshĂ«m. Pajisjet e rrjetit (xennet) dhe tĂ« bllokut (xbd) janĂ« pĂ«rshtatur pĂ«r sistemet shumĂ«procesorike (kanĂ« marrĂ« statusin MPSAFE). ĂshtĂ« pĂ«rmirĂ«suar ndjeshĂ«m mbĂ«shtetja pĂ«r hipervizorin HyperV dhe janĂ« zgjeruar mundĂ«sitĂ« e hipervizorit nvmm (NetBSD Virtual Machine Monitor). ĂshtĂ« shtuar mundĂ«sia e kalimit nĂ« gjendje pezullimi, gjatĂ« ekzekutimit makinat virtuale nĂ« nvmm.
- JanĂ« pĂ«rmirĂ«suar driver-Ă«t VirtIO, ku tani Ă«shtĂ« implementuar mbĂ«shtetja pĂ«r specifikimin VirtIO 1.0. ĂshtĂ« shtuar driver-i vio9p pĂ«r montimin nĂ« sistemet mysafire tĂ« FS VirtIO 9P, tĂ« eksportuar nga mjedisi host. ĂshtĂ« shtuar driver-i viocon pĂ«r portĂ«n seriale virtuale.
- JanĂ« implementuar thirrjet e sistemit eventfd dhe timerfd, tĂ« pajtueshme me Linux dhe tĂ« pĂ«rdorura nĂ« compat_linux. ĂshtĂ« shtuar thirrja e sistemit fexecve pĂ«r ekzekutimin e njĂ« skedari sipas deskriptorit tĂ« skedarit.
- Janë hequr komponentët e vjetëruar; për shembull, është ndërprerë mbështetja për teknologjitë HIPPI, FDDI dhe TokenRing, nga kerneli janë hequr drejtuesit nsmb dhe mount_smbfs për SMBFS (nuk mbështesin versionet e reja të protokollit SMB), mbështetja për IPv6 Router Advertisment është zhvendosur nga kerneli në hapësirën e përdoruesit, janë hequr bibliotekat libXTrap, libXevie dhe libglut, si edhe drejtuesit për shumë pajisje të vjetruara.
- MbĂ«shtetja pĂ«r pajisjet Ă«shtĂ« zgjeruar ndjeshĂ«m. ĂshtĂ« siguruar mbĂ«shtetje pĂ«r veçoritĂ« e procesorĂ«ve tĂ« rinj Intel dhe AMD. ĂshtĂ« shtuar mbĂ«shtetje pĂ«r platformat e reja ARM (Raspberry Pi 4, Orange Pi 5, Lichee Pi Zero, ODROID-N2+, M1 Mac Mini, HummingBoard Pulse, UDOO Neo Full, PINE64 Quartz64, Asus Tinker etj.). ĂshtĂ« zgjeruar edhe mbĂ«shtetja pĂ«r arkitekturĂ«n MIPS.
- Janë shtuar 17 drejtues të rinj pajisjesh, për shembull drejtues për tabletët Wacom, Realtek 8125 2.5 Gigabit Ethernet, Motorcomm YT8511C / YT8511H Gigabit Ethernet, Intel Ethernet 700, Broadcom GENETv5 Ethernet, përshpejtuesit kriptografikë Intel QuickAssist dhe modemët LTE Intel XMM7360.
- Janë përditësuar drejtuesit grafikë për GPU-të Intel, NVIDIA dhe AMD për sistemet x86. Nën-sistemi DRM/KMS është sinkronizuar me kernelin Linux 5.6.
- Janë përditësuar versionet e komponentëve të palëve të treta, përfshirë menaxherin e dritareve 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_supplican 2.9, OpenLDAP 2.5.6, binutils 2.34, libfido2 1.13.0, pam-u2f 1.2.0, zlib 1.2.13.
Burimi: opennet.ru
