Po dwóch miesiącach rozwoju, Linus Torvalds przedstawił wydanie Linux Kernel 5.0. W tym samym czasie, Free Software Foundation of Latin America stworzyła całkowicie darmową wersję Kernel 5.0: Linux-libre 5.0-gnu, bez elementów oprogramowania układowego lub sterowników zawierających niewolne komponenty lub sekcje kodu, których zakres jest ograniczony przez producenta.
Między najbardziej znaczącymi zmianami w Kernel 5.0 jest dodanie opartego na systemie Android harmonogramu zadań ARM big.LITTLE CPU, mechanizmu szyfrowania systemu plików Adiantum, Obsługa technologii FreeSync w sterowniku AMDGPU i wiele więcej.
Główne nowości dotyczące Kernel 5.0
Wśród najbardziej zauważalnych zmian w Kernel 5.0 znajduje się dodanie mechanizmu szyfrowania systemu plików Adiantum opracowany przez Google, który można zastosować w urządzeniach o małej mocy, które z powodu nadmiernego przeciążenia nie mogą korzystać z algorytmu szyfrowania blokowego AES.
Wdrożenie Adiantum opiera się na wykorzystaniu szybkiej funkcji skrótu NH, algorytmu uwierzytelniania wiadomości Poly1305 (MAC) i szyfrowania strumienia XChaCha12a także pojedynczą operację opartą na szyfrowaniu blokowym AES-256 dla 16 bajtów w każdym bloku.
Adiantum zostało dodane do podsystemu fscrypt, który służy do przezroczystego szyfrowania plików i katalogów w systemach plików ext4, f2fs i ubifs.
Inną funkcją, którą możemy wyróżnić w tym wydaniu, jest sterownik AMDGPU, który dodał obsługę technologii synchronizacji adaptacyjnej FreeSync (VESA Adaptive-Sync), która pozwala dostosować częstotliwość odświeżania informacji na ekranie monitora, aby zapewnić minimalny czas odpowiedzi, płynne wyjście i brak przerw w grach i wideo.
FreeSync pozwala również zmniejszyć zużycie energii poprzez zmniejszenie intensywności aktualizacji, gdy obraz na ekranie nie zmienia się.
W tym wydaniu jądra 5.0 dodano obsługę macierzy pamięci NVM z wbudowanymi operacjami bezpieczeństwa, takimi jak ochrona hasłem, czyszczenie i blokowanie.
Zintegrowana część poprawki do blokowania luk i unikania ograniczeń UEFI Secure Boot.
Na tym etapie dodano narzędzia kontrolujące użycie wywołania systemowego kexec_load_file (), które można wykorzystać do ominięcia bezpiecznego rozruchu UEFI poprzez zastąpienie testowanego jądra innym jądrem, które nie jest podpisane cyfrowo.
Podsystem dyskowy, we / wy i systemy plików
Dodano możliwość umieszczenia partycji wymiany w plikach w systemie plików Btrfs. Plik stronicowania w Btrfs musi być w pełni zapełniony w trybie „nocow” bez użycia kompresji i umieszczony tylko na jednym dysku.
Podsystem sieciowy
W przypadku UDP możliwość przesyłania danych do gniazda sieciowego realizowana jest w trybie zerowej kopii (wywołanie wysyłania z flagą MSG_ZEROCOPY), co umożliwia przesyłanie danych przez sieć bez pośredniego buforowania.
Stos UDP implementuje podstawową obsługę GRO (Generic Receive Offload) w celu przyspieszenia przetwarzania dużej liczby przychodzących pakietów, dodając kilka pakietów w większe bloki, które nie wymagają oddzielnego przetwarzania każdego pakietu.
Pamięć systemowa i usługi
Zaimplementowano nowy tryb planowania zadań dla asymetrycznych procesorów ARM opartych na architekturze big.LITTLE, który łączy w sobie potężne, ale energochłonne rdzenie procesorów i mniej wydajne, ale bardziej energooszczędne rdzenie.
Nowy tryb będzie pozwala zmniejszyć zużycie energii ze względu na wybudzanie zadań głównie na rdzeniach procesora.
Z drugiej strony dodano wsparcie dla instrukcji procesora WBNOINVD, zaimplementowanych w procesorach AMD i Intel opartych na architekturze x86_64. Określona instrukcja rejestruje wszystkie zmienione kanały pamięci podręcznej na wszystkich poziomach skojarzeń pamięci podręcznej z pamięcią główną, podczas przechowywania wartości w pamięci podręcznej.
Jak zdobyć jądro 5.0?
Jądro 5.0 jest dostępne do pobrania bezpośrednio z kernel.org jeśli chcesz to samodzielnie skompilować.
Chociaż będzie również dostępny w twojej dystrybucji Linuksa w najbliższych dniach.