Linux 5.17 nüvə buraxılışı

İki aylıq inkişafdan sonra Linus Torvalds Linux 5.17 nüvəsinin buraxılışını təqdim etdi. Ən diqqətəlayiq dəyişikliklər arasında: AMD prosessorları üçün yeni performans idarəetmə sistemi, fayl sistemlərində istifadəçi identifikatorlarının rekursiv xəritələşdirilməsi imkanı, portativ tərtib edilmiş BPF proqramlarına dəstək, psevdo-təsadüfi ədəd generatorunun BLAKE2s alqoritminə keçidi, RTLA yardım proqramı real vaxt rejimində icra təhlili üçün, şəbəkə fayl sistemlərinin keşləşdirilməsi üçün yeni fscache backend, anonim mmap əməliyyatlarına ad əlavə etmək imkanı.

Yeni versiyaya 14203 tərtibatçıdan 1995 37 düzəliş daxildir, yamaq ölçüsü 11366 MB-dır (dəyişikliklər 506043 250954 fayla təsir edib, 44 5.17 kod sətri əlavə edilib, 16 15 sətir silinib). 4-də təqdim edilən bütün dəyişikliklərin təxminən 4%-i qurğu drayverləri, dəyişikliklərin təxminən XNUMX%-i hardware arxitekturasına xas kodun yenilənməsi, XNUMX%-i şəbəkə yığını, XNUMX%-i fayl sistemləri və XNUMX%-i ilə əlaqədardır. daxili nüvə alt sistemləri ilə bağlıdır.

Kernel 5.17-də əsas yeniliklər:

  • Disk alt sistemi, giriş/çıxış və fayl sistemləri
    • Quraşdırılmış xarici bölmədəki xüsusi istifadəçinin fayllarını cari sistemdəki başqa bir istifadəçi ilə müqayisə etmək üçün istifadə olunan quraşdırılmış fayl sistemlərinin istifadəçi identifikatorlarının iç-içə xəritələşdirilməsi imkanını həyata keçirdi. Əlavə edilmiş xüsusiyyət, xəritələşdirmənin artıq tətbiq olunduğu fayl sistemlərinin üstündə rekursiv şəkildə xəritədən istifadə etməyə imkan verir.
    • Şəbəkə fayl sistemləri vasitəsilə ötürülən məlumatların lokal fayl sistemində keşləşdirilməsini təşkil etmək üçün istifadə edilən fscache alt sistemi tamamilə yenidən yazılmışdır. Yeni tətbiq kodun əhəmiyyətli dərəcədə sadələşdirilməsi və obyekt vəziyyətlərinin planlaşdırılması və izlənilməsinin mürəkkəb əməliyyatlarının daha sadə mexanizmlərlə əvəz edilməsi ilə fərqlənir. Yeni fscache üçün dəstək CIFS fayl sistemində həyata keçirilir.
    • Fanotify FS-də hadisə izləmə alt sistemi FAN_RENAME adlı yeni hadisə növünü tətbiq edir ki, bu da sizə faylların və ya qovluqların adlarının dəyişdirilməsi əməliyyatına dərhal müdaxilə etməyə imkan verir (əvvəllər adların dəyişdirilməsi prosesi üçün iki ayrı hadisə FAN_MOVED_FROM və FAN_MOVED_TO istifadə olunurdu).
    • Btrfs fayl sistemi böyük kataloqlar üçün giriş və fsync əməliyyatlarını optimallaşdırıb, yalnız indeks açarlarını kopyalamaq və daxil edilmiş metadataların miqdarını azaltmaqla həyata keçirilir. Boş yer qeydlərinin ölçüsünə görə indeksləşdirmə və axtarış üçün dəstək təmin edilmişdir ki, bu da gecikməni təxminən 30% azaldıb və axtarış vaxtını azaldır. Defraqmentasiya əməliyyatlarını dayandırmağa icazə verilir. Sürücülər arasında balanslaşdırarkən cihazları əlavə etmək imkanı qeyri-aktivdir, yəni. skip_balance seçimi ilə fayl sistemini quraşdırarkən.
    • IP ünvanlarına bağlanma ilə bağlı mövcud problemləri həll edən Ceph fayl sisteminin quraşdırılması üçün yeni sintaksis təklif edilmişdir. IP ünvanlarına əlavə olaraq, indi serveri müəyyən etmək üçün klaster identifikatorundan (FSID) istifadə edə bilərsiniz: mount -t ceph [e-poçt qorunur]_name=/[subdir] mnt -o mon_addr=monip1[:port][/monip2[:port]]
    • Ext4 fayl sistemi montaj seçimlərinin təhlili və superblok konfiqurasiya addımlarını ayıran yeni montaj API-yə keçdi. MS_LAZYTIME bayrağından istifadə etmək üçün util-linux-un keçidini asanlaşdırmaq üçün müvəqqəti dəyişiklik kimi əlavə edilmiş tənbəl vaxt və qeyri-lazytime quraşdırma seçimləri üçün dəstəyi dayandırdıq. FS-də etiketlərin qurulması və oxunması üçün əlavə dəstək (ioctl FS_IOC_GETFSLABEL və FS_IOC_SETFSLABEL).
    • NFSv4 fayl və kataloq adlarında hərflərə həssas olmayan fayl sistemlərində işləmək üçün dəstək əlavə etdi. NFSv4.1+ ümumiləşdirilmiş seansları (trunking) müəyyən etmək üçün dəstək əlavə edir.
  • Yaddaş və sistem xidmətləri
    • Optimal performans üçün dinamik tezlik nəzarətini təmin etmək üçün amd-pstate sürücüsü əlavə edildi. Sürücü, Valve ilə birgə hazırlanmış Zen 2 nəslindən başlayaraq AMD CPU və APU-ları dəstəkləyir və enerjinin idarə edilməsinin səmərəliliyinin artırılmasına yönəlib. Uyğunlaşan tezlik dəyişiklikləri üçün CPPC (Birgə Prosessor Performansına Nəzarət) mexanizmi istifadə olunur ki, bu da göstəriciləri daha dəqiq dəyişdirməyə (üç performans səviyyəsi ilə məhdudlaşmır) və əvvəllər istifadə olunan ACPI əsaslı P vəziyyətinə nisbətən vəziyyət dəyişikliklərinə daha tez reaksiya verməyə imkan verir. sürücülər (CPUFreq).
    • eBPF alt sistemi eBPF proqramlarında döngələri təşkil etmək üçün alternativ üsul təqdim edən bpf_loop() işləyicisini təklif edir, yoxlayıcı tərəfindən yoxlanılması üçün daha sürətli və asan.
    • Kernel səviyyəsində, eBPF proqramlarının kodunu yalnız bir dəfə tərtib etməyə və yüklənmiş proqramı cari nüvəyə və BTF tiplərinə uyğunlaşdıran xüsusi universal yükləyicidən istifadə etməyə imkan verən CO-RE (Bir dəfə tərtib et - Hər yerdə işlət) mexanizmi həyata keçirilir. (BPF Tipi Format).
    • Şəxsi anonim (malloc vasitəsilə ayrılmış) yaddaş sahələrinə adlar təyin etmək mümkündür ki, bu da proqramlarda sazlama və yaddaş istehlakının optimallaşdırılmasını asanlaşdıra bilər. Adlar PR_SET_VMA_ANON_NAME bayrağı ilə prctl vasitəsilə təyin edilir və /proc/pid/maps və /proc/pid/smaps formatında "[anon: ]".
    • Tapşırıq planlayıcısı, məsələn, prosessor həddindən artıq qızdıqda yükü azaltmaq üçün istifadə olunan məcburi boş vəziyyətdə proseslərin sərf etdiyi vaxtı /proc/PID/sched-də izləməyi və göstərməyi təmin edir.
    • Sınaq üçün GPIO çiplərini simulyasiya etmək üçün nəzərdə tutulmuş gpio-sim modulu əlavə edildi.
    • Gecikmə məlumatı ilə histoqramlar yaratmaq üçün "perf ftrace" əmrinə "gecikmə" alt əmri əlavə edildi.
    • İşin real vaxt rejimində təhlili üçün bir sıra “RTLA” yardım proqramları əlavə edildi. Buraya osnoise (əməliyyat sisteminin tapşırığın yerinə yetirilməsinə təsirini müəyyənləşdirir) və timerlat (taymerlə əlaqəli gecikmələri dəyişdirir) kimi kommunal proqramlar daxildir.
    • Yamaqların ikinci seriyası mürəkkəb səhifələrə bənzəyən, lakin təkmilləşdirilmiş semantikaya və işin daha aydın təşkilinə malik olan səhifə folioları konsepsiyasının həyata keçirilməsi ilə birləşdirilib. Tomlardan istifadə bəzi nüvə alt sistemlərində yaddaşın idarə edilməsini sürətləndirməyə imkan verir. Təklif olunan yamalar səhifə önbelleğinin tomes istifadəsinə çevrilməsini tamamladı və XFS fayl sistemində tomlara ilkin dəstək əlavə etdi.
    • Bütün əlil alt sistemləri nüvə modulları şəklində toplayan konfiqurasiya yaradan “mod2noconfig etmək” qurma rejimi əlavə edildi.
    • Kernel qurmaq üçün istifadə edilə bilən LLVM/Clang versiyası üçün tələblər qaldırıldı. İndi qurmaq üçün ən azı LLVM 11 buraxılışı tələb olunur.
  • Virtuallaşdırma və Təhlükəsizlik
    • /dev/random və /dev/urandom cihazlarının işinə cavabdeh olan RDRAND psevdo-təsadüfi ədəd generatorunun yenilənmiş tətbiqi təklif olunur ki, bu da entropiyaların qarışdırılması əməliyyatları üçün SHA2 əvəzinə BLAKE1s hash funksiyasından istifadəyə keçidlə diqqət çəkir. Dəyişiklik, problemli SHA1 alqoritmini aradan qaldırmaq və RNG başlatma vektorunun üzərinə yazılmanı aradan qaldırmaqla psevdo-təsadüfi ədəd generatorunun təhlükəsizliyini yaxşılaşdırdı. BLAKE2s alqoritmi performans baxımından SHA1-dən üstün olduğu üçün onun istifadəsi də performansa müsbət təsir göstərmişdir.
    • Şərtsiz irəli atlama əməliyyatlarından sonra təlimatların spekulyativ icrası nəticəsində prosessorlarda zəifliklərə qarşı əlavə qorunma. Problem yaddaşdakı filial təlimatından dərhal sonra təlimatların qabaqcadan işlənməsi səbəbindən baş verir (SLS, Straight Line Speculation). Qorunmanın aktivləşdirilməsi üçün GCC 12-nin hazırda sınaq buraxılışı ilə tikinti tələb olunur.
    • İstinadların hesablanmasında onun boşaldılmasından sonra yaddaşa daxil olmağa səbəb olan xətaların sayını azaltmağa yönəlmiş arayışların hesablanmasına (yenidən hesablama, arayış-sayma) nəzarət mexanizmi əlavə edilib. Mexanizm hazırda şəbəkə alt sistemi ilə məhdudlaşır, lakin gələcəkdə o, nüvənin digər hissələrinə uyğunlaşdırıla bilər.
    • Proses yaddaşı səhifəsi cədvəlində yeni daxilolmaların genişləndirilmiş yoxlamaları həyata keçirilib ki, bu da müəyyən növ zərərləri aşkar etməyə və sistemi dayandırmağa imkan verir, hücumları ilkin mərhələdə bloklayır.
    • Kernel modullarını istifadəçi məkanında idarəedici tərəfindən deyil, birbaşa nüvənin özü tərəfindən açmaq imkanı əlavə edildi ki, bu da LoadPin LSM modulundan istifadə edərək nüvə modullarının təsdiqlənmiş yaddaş qurğusundan yaddaşa yüklənməsini təmin etməyə imkan verir.
    • "-Wcast-funksiya növü" bayrağı ilə montaj təmin edilib, bu, funksiya göstəricilərinin uyğun olmayan tipə ötürülməsi ilə bağlı xəbərdarlıqlara imkan verir.
    • Qonaq sistemlərinə yönləndirilən USB cihazlarına girişi təmin edən Xen hipervizoru üçün pvUSB virtual host sürücüsü əlavə edildi (qonaq sistemlərinə qonaq sisteminə təyin edilmiş fiziki USB cihazlarına daxil olmaq imkanı verir).
    • Intel prosessorlu müasir ana plataların əksəriyyətində təqdim olunan və CPU-dan asılı olmayaraq fəaliyyət göstərən ayrıca mikroprosessor kimi həyata keçirilən IME (Intel Management Engine) alt sistemi ilə Wi-Fi vasitəsilə qarşılıqlı əlaqə yaratmağa imkan verən modul əlavə edilib.
    • ARM64 arxitekturası üçün nüvə daxilində yarış şərtlərini dinamik şəkildə aşkar etmək üçün nəzərdə tutulmuş KCSAN (Kernel Concurrency Sanitizer) sazlama aləti üçün dəstək tətbiq edilmişdir.
    • 32 bitlik ARM sistemləri üçün yaddaşla işləyərkən səhvləri aşkar etmək üçün KFENCE mexanizmindən istifadə etmək imkanı əlavə edilmişdir.
    • KVM hipervizoru qarşıdan gələn Intel Xeon Scalable server prosessorlarında həyata keçirilən AMX (Qabaqcıl Matris Genişləndirilməsi) təlimatlarına dəstək əlavə edir.
  • Şəbəkə alt sistemi
    • Şəbəkə cihazlarının tərəfinə trafikin idarə edilməsi ilə bağlı yükləmə əməliyyatları üçün əlavə dəstək.
    • Serial cihazlar üzərində MCTP (Management Component Transport Protocol) istifadə etmək imkanı əlavə edildi. MCTP idarəetmə nəzarətçiləri və onlarla əlaqəli qurğular (host prosessorları, periferiya qurğuları və s.) arasında əlaqə yaratmaq üçün istifadə edilə bilər.
    • TCP yığını optimallaşdırılmışdır, məsələn, recvmsg zənglərinin işini yaxşılaşdırmaq üçün, yuva buferlərinin gecikdirilmiş buraxılması həyata keçirilmişdir.
    • CAP_NET_RAW səlahiyyət səviyyəsində setsockopt funksiyası vasitəsilə SO_PRIORITY və SO_MARK rejimlərinin qurulmasına icazə verilir.
    • IPv4 üçün xam soketlərin IP_FREEBIND və IP_TRANSPARENT seçimlərindən istifadə edərək yerli olmayan IP ünvanlarına bağlanmasına icazə verilir.
    • ARP monitor yoxlaması zamanı uğursuzluqların həddi sayını konfiqurasiya etmək üçün sysctl arp_missed_max əlavə edildi, bundan sonra şəbəkə interfeysi qeyri-aktiv vəziyyətə gətirilir.
    • Şəbəkə ad məkanları üçün ayrıca sysctl min_pmtu və mtu_expires dəyərlərini konfiqurasiya etmək imkanı təmin edilmişdir.
    • Ettool API-ə daxil olan və gedən paketlər üçün buferlərin ölçüsünü təyin etmək və müəyyən etmək imkanı əlavə edildi.
    • Netfilter şəbəkə körpüsündə tranzit pppoe trafikinin filtrasiyası üçün dəstək əlavə etdi.
    • SMB3 protokolundan istifadə edərək fayl serverini həyata keçirən ksmbd modulu açar mübadiləsi üçün dəstəyi əlavə etdi, smbdirect üçün 445 şəbəkə portunu işə saldı və “smb2 max credit” parametri üçün dəstək əlavə etdi.
  • Оборудование
    • drm (Direct Renderering Manager) altsisteminə və i915 drayverinə məxfi məlumatların nümayişi üçün ekran dəstəyi əlavə edilib, məsələn, bəzi noutbuklar daxili məxfi baxış rejiminə malik ekranlarla təchiz olunub və bu, kənardan baxmağı çətinləşdirir. . Əlavə edilmiş dəyişikliklər bu cür ekranlar üçün ixtisaslaşdırılmış drayverləri birləşdirməyə və adi KMS drayverlərində xassələri təyin etməklə məxfi baxış rejimlərini idarə etməyə imkan verir.
    • Amdgpu drayveri onu dəstəkləyən bütün AMD GPU-ları üçün STB (Smart Trace Buffer) sazlama texnologiyasına dəstək daxildir. STB, sonuncu nasazlıqdan əvvəl yerinə yetirilən funksiyalar haqqında məlumatı xüsusi buferdə saxlamaqla nasazlıqların təhlilini və problemlərin mənbəyini müəyyən etməyi asanlaşdırır.
    • i915 sürücüsü Intel Raptor Lake S çipləri üçün dəstək əlavə edir və defolt olaraq Intel Alder Lake P çiplərinin qrafik alt sistemini dəstəkləməyə imkan verir.Ekranın arxa işığını VESA DPCD interfeysi vasitəsilə idarə etmək mümkündür.
    • Konsolda aparat sürüşməsinin sürətləndirilməsi üçün dəstək fbcon/fbdev drayverlərində geri qaytarıldı.
    • Apple M1 çiplərini dəstəkləmək üçün dəyişikliklərin davamlı inteqrasiyası. Firmware tərəfindən təmin edilən çərçivə buferi vasitəsilə çıxış üçün Apple M1 çipi olan sistemlərdə simpledrm sürücüsündən istifadə etmək imkanı həyata keçirilib.
    • ARM SoС, Snapdragon 7c, 845 və 888 cihazları və lövhələri üçün əlavə dəstək (Sony Xperia XZ2 / XZ2C / XZ3, Xperia 1 III / 5 III, Samsung J5, Microsoft Surface Duo 2), Mediatek MT6589 (Fairphone FP1), Mediatek (MT8183) Acer Chromebook 314), Mediatek MT7986a/b (Wi-fi marşrutlaşdırıcılarında istifadə olunur), Broadcom BCM4908 (Netgear RAXE500), Qualcomm SDX65, Samsung Exynos7885, Renesas R-Car S4-8, TI J721s2, TI SPEXP320, TI SPEX8. , Aspeed AST8/AST2500, Engicam i.Core STM2600MP32, Allwinner Tanix TX1, Facebook Bletchley BMC, Goramo MultiLink, JOZ Access Point, Y Soft IOTA Crux/Crux+, t6/t6000/MacBook Pro.
    • ARM Cortex-M55 və Cortex-M33 prosessorları üçün əlavə dəstək.
    • CPU MIPS əsasında cihazlar üçün əlavə dəstək: Linksys WRT320N v1, Netgear R6300 v1, Netgear WN2500RP v1/v2.
    • RISC-V arxitekturasına əsaslanan StarFive JH7100 SoC üçün əlavə dəstək.
    • Klaviatura arxa işığını idarə etmək və Lenovo Yoga Kitabında müxtəlif sensorlara daxil olmaq üçün lenovo-yogabook-wmi sürücüsü əlavə edildi.
    • AMD Ryzen prosessorlarına əsaslanan Asus X370, X470, B450, B550 və X399 anakartlarında istifadə olunan sensorlara daxil olmaq üçün asus_wmi_sensors sürücüsü əlavə edildi.
    • Android platforması ilə göndərilən x86 əsaslı planşet kompüterlər üçün x86-android-planşetlər drayveri əlavə edildi.
    • TrekStor SurfTab duo W1 sensor ekranları və Chuwi Hi10 Plus və Pro planşetləri üçün elektron qələm üçün əlavə dəstək.
    • SoC Tegra 20/30 üçün drayverlər güc və gərginliyin idarə edilməsi üçün əlavə dəstək veriblər. ASUS Prime TF32, Pad TF201T, Pad TF701T, Infinity TF300T, EeePad TF700 və Pad TF101TG kimi köhnə 300 bitlik Tegra SoC cihazlarında yükləməyə imkan verir.
    • Siemens sənaye kompüterləri üçün əlavə edilmiş drayverlər.
    • Sony Tulip Truly NT35521, Vivax TPC-9150, Innolux G070Y2-T02, BOE BF060Y8M-AJ0, JDI R63452, Novatek NT35950, Wanchanglong W552946ABA və Team043015ABA və TCMSTX EkranXNUMX LCDXNUMX ekranları üçün əlavə dəstək.
    • Səs sistemləri və kodeklər üçün əlavə dəstək AMD Renoir ACP, Asahi Kasei Microdevices AKM4375, NAU8825/MAX98390 istifadə edən Intel sistemləri, Mediatek MT8915, nVidia Tegra20 S/PDIF, Qualcomm ALC5682I-VS, Texas Instruments TLx320 TLx. Tegra3 HD-audio ilə bağlı problemlər aradan qaldırıldı. CS194L35 kodekləri üçün HDA dəstəyi əlavə edildi. Lenovo və HP noutbukları, həmçinin Gigabyte anakartları üçün səs sistemləri üçün təkmilləşdirilmiş dəstək.

Mənbə: opennet.ru

Добавить комментарий