Vývoj internetu Linuxové jadro sa neustále vyvíja smerom k jeho ďalšej verzii a medzi najvýraznejšie nové funkcie jeden sa nájde Návrh na predvolené povolenie rozšírení jazyka Microsoft CTieto rozšírenia, známe ako -fms-extensions, sú súčasťou vývojovej vetvy kbuild-next. Sú kompatibilné s GCC aj Clang. Umožňujú kompilátoru rozpoznať neštandardné konštrukty jazyka C. inšpirované programom Microsoft Visual C++, ako napríklad použitie anonymných štruktúr a zjednotení v rámci iných štruktúr.
Toto opatrenie, ktorého cieľom je zjednodušiť a sprístupniť zdrojový kód jadra, Snaží sa využiť určité funkcie jazyka Microsoft C, ktoré môžu byť prospešné. v špecifických kontextoch vývoja operačných systémov.
Hoci historicky existoval určitý odpor voči prijatiu prvkov spojených s ekosystémom spoločnosti Microsoft, prítomnosť týchto záplat v kbuild-next naznačuje, že zmena je blízko k prijatiu v zlučovacom okne systému Linux 6.19.
Ďalší krok k integrácii
undefined Túto možnosť zavádzajú dve navrhované záplaty Kompilácia `-fms-extensions` je štandardne zahrnutá v celom procese zostavovania jadra. To znamená, že všetky systémové architektúry a komponenty budú mať pri kompilácii s GCC alebo LLVM/Clang prístup k týmto rozšíreniam.
Vývojár Rasmus Villemoes, jeden z navrhovateľov návrhu, to vysvetlil Povolenie týchto rozšírení by umožnilo vytvorenie „elegantnejšieho a čistejšieho kódu“. C. Villemoes tvrdí, že elimináciou potreby používať ďalšie kompilačné príznaky vždy, keď je vyžadovaná funkcionalita od spoločnosti Microsoft, by sa predišlo individuálnym diskusiám o ich použití, čo by uľahčilo homogénnejší štýl vývoja v rámci jadra.
Implicitné schválenie Linusa Torvaldsa
Hoci V minulosti podobné návrhy neprešli preskúmaním. na mailing liste jadra, Tentoraz sa situácia zdá byť ináLinus Torvalds, tvorca Linuxu, sa zúčastnil diskusie a nenamietal proti aktivácii rozšírení -fms.
toto naznačuje, že zmena by mohla byť oficiálne implementovaná v Linuxe 6.19, za predpokladu, že nevzniknú žiadne námietky od iných významných vývojárov. Jedna z patchov spojených s kompilačným systémom kbuild zabezpečuje, že možnosť -fms-extensions sa vzťahuje aj na architektúry používajúce vlastné CFLAGS, čím sa zachováva konzistencia kompilácie v celom ekosystéme jadra.
La Prijatie rozšírení -fms predstavuje technický krok. Toto je ďalšia súčasť prebiehajúceho vývoja jadra Linuxu. Aj keď sa to môže zdať ako drobný detail, schopnosť podporovať neštandardné konštrukty ponúka väčšiu flexibilitu pri písaní kódu, najmä v zložitých štruktúrach.
Avšak, Časť komunity vyjadrila výhrady o spoliehaní sa na funkcie spojené s Microsoftom, pretože sa obával, že by to mohlo ovplyvniť prenositeľnosť alebo čistotu kódu C používaného v Linuxe. Napriek tomu má iniciatíva podporu viacerých vývojárov ktorí veria, že výhody ďaleko prevažujú nad možnými nevýhodami.
Nedávny pokrok v jadre
Okrem diskusií o rozšíreniach jazyka Microsoft C, Linuxové jadro 6.19 bude obsahovať aj opravy ovládača súborového systému Minix.Tento formát má históriu siahajúcu viac ako štyri desaťročia. V tomto ovládači boli identifikované chyby spôsobujúce poškodenie a plánované opravy zlepšia správu a obnovu poškodených obrazov, čím sa systém stane odolnejším voči chybám pri čítaní a zápise.
Toto vylepšenie demonštruje pokračujúci záväzok vývojárov Linuxu udržiavať spätnú kompatibilitu a stabilitu v systémoch, ktoré sú síce staré, ale stále sa používajú vo vzdelávacích alebo experimentálnych kontextoch.
Zatiaľ čo verzia 6.19 sa dokončuje, Tím jadra pokračuje v práci na predchádzajúcich aktualizáciáchLinux 6.18, momentálne vo svojej piatej verzii (6.18-rc5), vylepšuje subsystém HID o nové funkcie, ako je podpora haptických dotykových panelov, lepšia správa zvuku ovládača DualSense od spoločnosti Sony a väčšia flexibilita v HID-BPF.
tiež Zahŕňa vylepšené zabezpečenie volaní ioctl z hydrawSúčasťou sú nové haptické funkcie PIDFF a pokročilé nastavenia pre Intel QuickI2C. Cieľom týchto optimalizácií je poskytnúť lepší používateľský zážitok a zvýšiť kompatibilitu hardvéru s proprietárnymi operačnými systémami.
Fuente: https://git.kernel.org/