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

Linux 4.11 – dłużej na baterii, szybsze dyski i wirtualizacja Radeonów

Strona główna AktualnościOPROGRAMOWANIE

Z tygodniowym opóźnieniem wynikającym z problemów odkrytych w buildzie rc8, Linux 4.11 oficjalnie zadebiutował w ostatnią niedzielę – przynajmniej w repozytoriach kernel.org. W przerwie między majowymi świętami przyjrzyjmy się najciekawszym nowościom, które przyniosło 70 dni prac programistów i niemal 14 tys. commitów.

Dłuższe życie na baterii

Do dzisiaj laptopy pracujące pod kontrolą Linuksa gorzej sobie radzą z zarządzaniem energią, niż te na których zainstalowano Windowsa – nie mówiąc już o MacBookach z macOS-em. Wraz z 4.11 dostajemy kilka nowości, które mogą znacząco wydłużyć czas pracy na baterii.

I tak Linux potrafi już obsłużyć substany ASPM L1 ze specyfikacji PCIe 3.1 – pozwalają one na głębsze uśpienie sprzętu podłączonego do szyny PCI Express. Zmniejszono zużycie energii przez coraz częściej stosowane pamięci NVMe dzięki zastosowaniu technologii Autonomous Power State Transition – pozwala ona na automatyczne usypianie dysku, jeśli nic aktualnie nie robi. Ulepszono też zarządzanie p-stanami procesorów Intela, a sterownik i915 automatycznie włącza kompresję bufora ramki (FBC) na zintegrowanych grafikach Intela. Wszystkie te zmiany w nowych laptopach mogą przełożyć się nawet na dodatkowe kilka godzin pracy w terenie.

r   e   k   l   a   m   a

Pamięc masowa: szybciej i bezpieczniej

Ważne zmiany zaszły dla pamięci masowych. Wprowadzony w Linuksie 3.13 nowy wielokolejkowy schemat dla warstwy blokowej (Blk-Mq) zoptymalizowano dla dysków półprzewodnikowych (SSD i NVM), jednak nie działał on z przełączaniem różnych zarządców I/O (deadline, cfq, noop itp.) Teraz zarządcy (póki co deadline) mogą się wpinać bezpośrednio w operacje Blk-Mq, zwiększając szybkość dostępu do dysku. Odczuć to będzie można szczególnie w dyskach twardych, gdzie skraca to ruch głowic odczytu/zapisu. Dodano też inne ulepszenia, takie jak obsługa samoszyfrujących się dysków zgodnych ze specyfikacją OPAL oraz zwiększenie bezpieczeństwa zapisu na dyski zestawione w RAID 5, nawet w razie awarii.

Ważną nowością, którą docenią głównie dostawcy usług internetowych jest zoptymalizowanie podsystemu wymiany pod kątem dysków SSD. Dotychczasowa implementacja była tworzona z myślą o dyskach talerzowych, gdzie wydajność i opóźnienia nie miały takiego znaczenia. Z wykorzystaniem szybkich SSD realne staje się nadużywanie RAM dla maszyn wirtualnych i ratowanie się w razie czego takim właśnie szybkim swapem z pamięci masowej.

Warto też wspomnieć o łatkach od Microsoftu do protokołu CIFS/SMB3 – przynoszą one wsparcie dla jednej z najważniejszych jego funkcjonalności, tj. szyfrowania na poziomie zasobów, oraz obsługi rozproszonego systemu plików DFS.

Pożegnanie reliktów

Kolejną interesującą na poziomie systemowym nowością jest nowe wywołanie statx(), które pozwala na szczegółówe i efektywne odpytywanie o pliki, zastępując uniksowy relikt z lat 70. Pozwala ono poznać rzeczy, o których w tamtych czasach nawet nie myślano – lokalizację w sieci, wersjonowanie czy stan szyfrowania. Aby statx() mogło działać, muszą wspierać go oczywiście systemy plików, niebawem wsparcie takie przyniesie najpopularniejszy z nich, ext4.

Do tej pory Linux miał duże problemy z obsługą więcej niż 64 TB pamięci operacyjnej – i limit ten zaczęli odczuwać już niektórzy producenci superkomputerów z procesorami x86-64. W kernelu 4.11 położono podwaliny pod rozwiązanie tego problemu, w planach jest umożliwienie wraz z wydaniem 4.12 obsługi aż do 4 petabajtów RAM, co jak można sądzić, powinno wystarczyć każdemu.

Bezpieczniejszy kernel, bezpieczniejszy system

Wraz z rosnącą popularnością paczek snap – stworzonego przez Canonicala formatu dystrybucji aplikacji w kontenerach – konieczne stało się wprowadzenie do Linuksa ulepszeń mechanizmu bezpieczeństwa AppArmor, obecnie dostępnych tylko w jądrach Ubuntu. Łącznie ponad kilkadziesiąt zmian pozwoli na uruchamianie aplikacji w snapach izolacji od reszty systemu także na innych dystrybucjach, co zapewne jeszcze bardziej spopularyzuje ten format (obecnie dostępny już także na Fedorze i Archu).

To nie koniec wzmacniania zabezpieczeń. Rozpoczęto prace w zakresie wykrywania UEFI Secure Boot i uniemożliwienia załadowania niepodpisanych modułów jądra. Wprowadzono obsługę czipów Trusted Platform Module 2.0 i dodano wtyczkę kompilatora gcc structleak, która służy do inicjalizacji struktur danych dzielonych przez kernel z przestrzenią użytkownika – pozwoli to na ograniczenie wycieków informacji. W podsystemie kryptograficznym pojawiła się nowa implementacja szyfru AES, odporna na ataki czasowe, oraz nowy algorytm haszownia SipHash, szybszy od MD5 czy SHA-1, a znacznie bezpieczeniejszy. Ma on być teraz domyślnie używany przez wszystkie podsystemy kernela, wszędzie tam, gdzie potrzebne były funkcje skrótu.

Ulepszenia sieci

Najistotniejsze zmianą w tym zakresie to udostępnienie mechanizmu TCP Fast Open do przyspieszenia połączeń HTTP także innym aplikacjom, wprowadzenie obsługi czipsetu Wi-Fi Ralink RT5350, zwiększenie wydajności sterownika ath9k w sytuacji, gdy wiele urządzeń łączy się równolegle oraz wprowadzenie kanału psample, który pozwala kernelowi na badanie i klasyfikowanie pakietów ruchu sieciowego – tak by na przykład trasować konkretne pakiety bezpośrednio do przestrzeni użytkownika.

Sterowniki i rozszerzenia

Użytkowników nowszych kart AMD ucieszy wprowadzenie do sterownika AMDGPU mechanizmu wirtualizacji grafiki zgodnego ze standardem SR-IOV. Na razie działa to tylko z kartami FirePro, ale zwykłe Radeony powinny też być już niebawem zdolne do wydzielenia ze swoich rdzeni wirtualnej karty graficznej, którą można będzie podpiąć bezpośrednio do maszyny wirtualnej. Pozwoli to na wygodne korzystanie np. z windowsowych gier czy aplikacji 3D. AMDGPU obsługuje też najnowszą architekturę Polaris z kart RX serii 500, powinno radzić sobie lepiej z konfiguracjami wieloekranowymi i zarządzaniem energią.

Sterownik Nouveau do kart GeForce radzi sobie już z plikami firmware dla kart Pascal, ale dopiero w 4.12 pozwoli to na odpalenie grafiki 3D na najnowszych modelach z serii 1000. Nie spodziewajcie się jednak za wiele, zieloni nie pozwalają póki co na modyfikowanie częstotliwości pracy przez opensource’owe sterowniki, wciąż dla każdego, kto chce grać na Nvidii, jedynym sensownym rozwiązaniem pozostaje sterownik własnościowy.

Wartą uwagi nowością jest obsługa kodeka Realtek ALC1220, powszechnie stosowanego na płytach głównych pod procesory Ryzen i Kaby Lake. Wreszcie więc usłyszymy pod Linuksem dźwięk z tego nowego sprzętu.

To oczywiście wierzchołek góry lodowej – obecnie kernel 4.11 obsługuje ponad 28 tysięcy urządzeń, o ponad 170 więcej, niż 4.10. Z obszerną dokumentacją tych wszystkich zmian najlepiej zapoznać się w serwisie Kernel Newbies.

© 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.