r   e   k   l   a   m   a
r   e   k   l   a   m   a

Linux 4.9: tym razem (z perspektywy zwykłego Kowalskiego) góra urodziła mysz

Strona główna AktualnościOPROGRAMOWANIE

Pod nazwą kodową „Roaring Lionus” debiutuje Linux 4.9. To duże wydanie, łącznie ponad 16 tysięcy zmian w kodzie, a szczerze mówiąc, z perspektywy zwykłych użytkowników – bardzo mało ciekawe. Wygląda to tak, jakby rozwój Linuksa szedł dziś przede wszystkim we wspieranie nie tylko egzotycznych, ale wręcz nieistniejących w praktyce technologii, podczas gdy wiele kluczowych dla systemu kwestii wciąż pozostaje nierozwiązanych.

Przegląd nowości w 4.9 zacznijmy od tego, co w wydaniu tym faktycznie ważne. Przede wszystkim są to wirtualnie odwzorowywane stosy kernela (virtually mapped kernel stacks). Przy skompilowaniu dla architektury x86_64 jąder z tym mechanizmem, wszelkie przepełnienia stosu mają być natychmiast, precyzyjnie wychwytywane, zamiast zwracać ogólnikową informację o trudnym do zdiagnozowania uszkodzeniu pamięci.

Mechanizm ten już wcześniej był znany z łatek Grsecurity, jednak ceną lepszej diagnostyki i większego bezpieczeństwa był spory, sięgający 1,5 µs narzut na czas tworzenia procesu. Regresję w wydajności udało się jednak wyeliminować, zainteresowanych szczegółami odsyłamy do artykułu Virtually mapped stacks na łamach LWN.net.

r   e   k   l   a   m   a

W grafice mało wyraźnie

Na tym można zakończyć listę ważnych zmian. Cała reszta… no cóż, zacznijmy jak to zwykle bywa od sterowników graficznych.

Sterownik AMDGPU otrzymał eksperymentalne wsparcie dla kart graficznych z układami Southern Islands (architektura GCN 1.0). Wartość tych zmian w tym ogromnym (niemal 100 tys. linii kodu) sterowniku jest dla normalnych użytkowników znikoma – i tak musi być on ręcznie włączony, poza tym bardzo wiele mu brakuje w porównaniu do hybrydowego sterownika, nie zapewnia nawet wsparcia dla audio po HDMI. Poza tym pojawiła się łatka przynosząca wsparcie dla wirtualnych wyświetlaczy, które można np. udostępnić później jako zdalne pulpity i wreszcie poprawne resetowanie GPU.

Sterowniki nouveau dla kart GeForce nie dostały tym razem niczego (ktoś w ogóle korzysta z nouveau na poważnie?), sterowniki Intela przynoszą m.in. ulepszone wsparcie dla wirtualizacji GPU i różne poprawki dla architektury Skylake. Coś tam poprawiono też w sterowniku grafiki VC4 dla Raspberry Pi, zmiany mają nieco przyspieszyć rendering 3D.

Wielka nowość tylko dla Xeonów

W zakresie procesorów jako ważną zmianę obwieszczono wprowadzenie mechanizmu kluczy ochrony pamięci (memory protection keys). To bardzo ciekawy mechanizm, który pozwala procesom działającym w przestrzeni użytkownika na przypisanie kluczy określonym obszarom pamięci i jej ochronę w ten sposób, bez konieczności. Intel wykorzystał po prostu wcześniej ignorowane bity w każdym wpisie tabeli stron pamięci, tworząc w ten sposób elegancki sposób zabezpieczania pamięci nie tylko przed innymi aplikacjami, ale też między różnymi wątkami. Sęk w tym, że mechanizm ten pojawi się dopiero w przyszłości w procesorach Intela – i to najprawdopodobniej tylko w serwerowych Xeonach.

Pozostałe pomniejsze zmiany w tej kategorii to drobne zmiany w algorytmie zarządzania częstotliwościami (P-State), które zawocować mają zwiększeniem wydajności niektórych procesorów Atom, poprawki w zarządcy CPUFreq za sprawą których będzie on lepiej korzystał z informacji systemowego planisty, oraz trochę zmian w hiperwizorach KVM i Xen.

Różne różności

Poprawki w systemach plików objęły XFS (tu można wspomnieć o mechanizmie dzielonych rozszerzeń danych, który przyda się przy robieniu szybkich migawek) oraz FUSE (ten moduł systemów plików w przestrzeni użytkownika obsługuje teraz uprawnienia dostępu ACL standardu POSIX). Do tego trochę zmian w Btrfs, F2FS i OverlayFS.

Do kategorii „Przeróżne” można zaliczyć dodanie oficjalnego wsparcia dla łącznie 29 urządzeń procesorami ARM (spośród bardziej znanych Raspberry Pi Zero oraz LG Nexus 5), wprowadzenie testowego sterownika EFI do sprawdzania gotowości firmware na przeprowadzanie na nim operacji zapisu, obsługa intelowego huba sensorów ISH, wykorzystywanego w wielu nowych urządzeniach hybrydowych, oraz wprowadzenie zupełnie nowego podsystemu Greybus.

Greybus jest działającym na poziomie aplikacji protokołem ujednoliconego informowania o sprzęcie, wokół którego powstawał modularny smartfon Google’a, Project Ara. Z Ary niestety nic nie wyszło, no ale cóż, Greybus i tak trafił do Linuksa. Uzasadniał to sam Greg Kroah-Hartman, wyjaśniając, że są też inni użytkownicy tego protokołu, Toshiba ma w swoim katalogu przynajmniej jeden korzystający z niego czip, niektórzy eksperymentują z sieciowymi zastosowaniami – więc Greybusa nie można skreślić.

© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.