niedziela, 13 grudnia 2020

Linux Kernel 5.10 LTS - grudzień 2020 roku

Linux 5.10 - Najważniejsza aktualizacja od lat 

Linux 5.10 ujrzał światło dzienne w połowie grudnia 2020 roku, dokładnie 13 czerwca 2020 roku. To jedno z najważniejszych wydań jądra czyli kernela w ostatnich latach, które przynosi wiele nowości i udoskonaleń a do tego ma bardzo duże znaczenie dla całej społeczności linuksowej. 

Jak wyliczył portal Phoronix, kompilacja 5.10 zawiera 704 tysięcy linijek nowego kodu oraz 419 tysięcy usuniętych. Nowa wersja wprowadza szerszą obsługę sprzętu Nvidii i Broadcom, w tym sterowników graficznych do Raspberry Pi 4, a także zgodność z wieloma nowymi procesorami i układami graficznymi. Torvalds łącznie zliczył prawie 14 000 zmian naniesionych przez około 1700 osób. Poprawki dotyczyły najróżniejszych aspektów - od współpracy Linuxa z chipami Nvidii dla autonomicznych samochodów po wsparcie kontrolerów z Nintendo Switch. Przez ostatnie dwa tygodnie pracy słynny inżynier oprogramowania musiał zająć się wdrożeniem około 1000 łatek. 


Linux 5.10 LTS – wydanie jądra na lata 

Linux 5.10 jest wydaniem o wydłużonym wsparciu (to tak zwany LTS) – na pomoc techniczną można liczyć aż do 2026 roku. Zwykle w takich przypadkach twórcy kernela skupiają się na poprawie stabilności, ale jeśli myślisz, że nie ma tu żadnych dużych nowości, to jesteś w błędzie. Linus Torvalds ze swoim zespołem postarał się o wiele naprawdę świetnych zmian i nowinek. Przede wszystkim jądro działa lepiej, szybciej i wydajniej niż kiedykolwiek wcześniej, a o to najbardziej chodzi w postępie technologicznym. Linux 5.10 będzie kolejną edycją jądra, które zostanie objęte długoterminowym wsparciem technicznym. Informację o wyborze tej kolejnej 21 już wersji LTS przekazał Greg Kroah-Hartman. Nastąpiło to w trakcie wirtualnego spotkania Open-Source Summit Europe. Obecnym wydaniem LTS Linuksa jest to z numerkiem 5.4, którą udostępniono w listopadzie 2019 roku. W przypadku Linux 5.4 LTS aktualizacje będą dostarczane do grudnia 2025 roku. 

Wydajniej i bezpieczniej na Linuksie 

Wzrost wydajności odczujemy między innymi w operacjach Btrfs fsync() oraz bezpośrednich operacjach wejścia/wyjścia. Grupowanie żądań we/wy oznacza ponadto krótszy czas hibernacji i wybudzania. Z kolei EXT4 przyspieszy zapis dzięki obsłudze tzw. szybkich zatwierdzeń i zoptymalizowanemu nadpisywaniu plików w trybach DAX/DIO. 

Wdrożono obsługę monitorowania temperatury procesorów AMD Zen3, rozpoczęto wprowadzanie obsługi do Intel Rocket Lake i Alder Lake, poprawiono kwestie kompatybilności ze standardem USB 4 i umożliwiono uruchamianie systemów RISC-V z oprogramowaniem EFI. Dodano przy okazji obsługę różnego sprzętu, w tym Creative SoundBlaster AE-7 i Nintendo Switch Pro. 

Ważne jest nie tylko to, co się dodaje, ale też to, czego się pozbywa. Linux 5.10 jest wolny od parametru set_fs() – ten znajdował się w jądrze od czasu pierwszego wydania i powodował błędy, które to z kolei stwarzały zagrożenie dla użytkowników. Tego starego, historycznego już parametru nie ma w nowym jadrze Lx. Parametr set_fs(), który znajdował się w jądrze Linuxa od jego pierwszego wydania - został usunięty, a jak ujawnił raport z 2010 roku można było wykorzystać ten mechanizm do nadpisania pamięci jądra w przypadku starszych procesorów Intela opartych o architekturę x86 (co jednak szybko załatano poprawkami). 

Linux 5.10 otrzymał poprawki dla systemu plików XFS. Następnie mamy obsługę kontrolera z Nintendo Switch oraz wsparcie dla procesorów Intel Rocket Lake, Alder Lake i Meteor Lake. W przypadku układów AMD bazujących na architekturze Zen 3 mamy ulepszenia obsługi. 

Rozszerzenie obsługi sprzętu Nvidia oraz Broadcom i sterowników graficznych do Raspberry Pi 4 to kolejne ważne zmiany w wydaniu. Dodano także obsługę kontrolera z Nintendo Switch. Ponadto zmiany dotyczą systemu plików XFS. Układy AMD, bazujące na Zen 3, także zyskały lepszą obsługę. Dzięki nowym układom ARM64 SoCs rozszerzenie Arm Memory Tagging Extension zapewnia lepszą ochronę systemu. 

Do obsługi grafiki Intela jest więcej poprawek do grafiki Gen12 / Xe, opcje specyficzne dla użycia Rocket Lake i inne mniej istotne zmiany. Istnieje również szereg zmian z tym powiązanych, takich jak obsługa wyjścia audio HDMI, które działa teraz dla dedykowanej karty graficznej Intel DG1. 

Obsługa wyświetlania AMDGPU DC dla procesorów graficznych GCN 1.0 „Southern Islands”. AMDGPU DC dla GCN 1.0 był jednym z dłużej brakujących elementów, które pozostały do potencjalnego włączenia domyślnej obsługi AMDGPU dla sprzętu GCN 1.0 / 1.1 w miejsce dotychczasowego sterownika Radeon DRM. Ostatnim widocznym blokerem dla tego tematu jest jednak nadal brak obsługi wyjścia analogowego z AMDGPU DC, dlatego też nie wprowadzono żadnych zmian w domyślnych ustawieniach. Osoby posiadające takie starzejące się karty graficzne z serii Radeon HD 7000 i inne wybrane produkty GCN 1.0 / 1.1 mogą uruchomić swoje jądro za pomocą amdgpu.cik_support = 1 amdgpu.si_support = 1 radeon.cik_support = 0 radeon.si_support = 0, aby cieszyć się jądrem AMDGPU domyślnie. Oznacza to również obsługę Vulkan, możliwe ulepszenia wydajności i po prostu cieszenie się nowocześniejszą bazą kodu.

Obsługa Raspberry Pi VC4 jest teraz obecna w głównym jądrze Linuksa. Ta obsługa wyświetlacza Raspberry Pi 4 w końcu ma status „gotowe” i przyjemnie to zobaczyć – czas płynie a Mesa 20.3 wprowadziła już sterownik V3DV Vulkan dla obsługi Raspberry Pi 4.

Emulacja instrukcji SLDT i STR z UMIP (User Mode Instruction Prevention)

System plików XFS obsługuje teraz sygnatury czasowe aż do roku 2486. Ma to na celu przezwyciężenie wcześniejszego ograniczenia roku 2038 i jednego z niewielu pozostałych problemów z Y2038 w jądrze. 

Karta dźwiękowa Creative Labs SoundBlaster AE-7 jest wreszcie obsługiwana w systemie Linux – jak zawsze dzięki pracy społeczności open source.

Obsługa kontrolera Nintendo Switch w systemie Linux 5.10 dzięki nowemu sterownikowi Nintendo HID, kolejnemu dziełu społeczności open source. Kontrolery Nintendo Switch Joy-Cons i Pro powinny działać zarówno przy połączeniu przez USB jak i Bluetooth, a także w funkcjach takich jak rumble suport czy żyroskop. Wcześniej sterownik był dostępny poza drzewem jako moduł DKMS. 

Wiele ulepszeń bezpieczeństwa, które chronią przed możliwymi atakami DMA przez zewnętrzne urządzenia PCI Express, opcja montowania „nosymfollow”, która jest podobna do tego, co oferowano na BSD od lat, Linux 5.10 zawiera też nową funkcję static_call() pomagającą przy Retpolines.

Nowy Linux do pobrania. Możesz też zaczekać!  

Jądro Linux 5.10 jest już dostępne do pobrania ze strony twórców. Jeśli nie piszesz się na ręczną instalację, to możesz poczekać kilka tygodni lub miesięcy – wtedy stanie się ono bazą dla nowych wydań takich dystrybucji jak Rosa, Deepin, OpenMandriva, Debian, Fedora, Ubuntu, Mint czy openSUSE. 

Jeśli masz dystrybucję Linuksa typu "rolling release", gdzie zmiany wchodzą (prawie) na bieżąco, tj. twórca wydaje tzw. wersję stabilną i w ciągu paru dni program jest już w paczce gotowy do instalacji. W praktyce wygląda to tak, że nawet parę razy dziennie można mieć aktualizacje. Tak też się dzieje z jądrem Linux. Dla informacji podajemy kilka najpopularniejszych dystrybucji typu "rolling release". Arch i jego pochodne typu Manjaro, KaOS, Solus. Tumbleweed (gałąź Suse), czy KDE Neon będący dystrybucją twórców KDE. Tu najszybciej (w wersji niestabilnej kilka razy dziennie) trafiają zmiany z KDE/Plasma. 

Edycja 5.10.1 

Trwała na serwerach zaledwie dobę, a środowisko Linuksa w ferworze udoskonalania wersji jądra 5.10 po około 24 godzinach 14 grudnia 2020 już wypuściło wersję Linux 5.10.1 z licznymi poprawkami i udoskonaleniami, w tym w kodzie przechowywania. Dotychczas wersja z jedynką była wypuszczana dopiero po kilku dniach lub po tygodniu. 

Edycja 5.10.2 

W dniu 21 grudnia 2020 wydano kernel Linux 5.10.2, co oznacza bardzo szybką ścieżkę udoskonalania, poprawiania i rozwoju linuksowego jądra najnowszej na zimę 2020 generacji. 

Edycja 5.10.3 

W dniu 26 grudnia 2020 wychodzi edycja jądra Linuksa 5.10.3, zatem tempo mamy zaiście ekspresowe. Wiele tradycyjnych, stabilnych dystrybucji lubiących dopracowane kernele, jak Rosa Fresh czy Depeen zapewne dopiero od podwersji 5.10.7 lub 5.10.10 zaimplementuje nowy kernel do dystrybucji! 



Brak komentarzy:

Prześlij komentarz