Linus Torvalds planuje wprowadzić zmiany związane z Rust z pominięciem maintainerów jądra Linux

Linus Torvalds planuje wprowadzić zmiany związane z Rust z pominięciem maintainerów jądra Linux

Christoph Hellwig, maintainer podsystemów DMA, KVM, Slab Allocator oraz architektury PowerPC w jądrze Linux, zdecydowanie sprzeciwił się przyjęciu Rust-owego wsparcia dla podsystemu DMA, twierdząc, że takie zmiany nie mają sensu, dopóki nie zostaną uzgodnione ze społecznością i uwzględnione w dokumentacji jądra.

Christoph zwrócił również uwagę, że w zasadach podano błędne informacje, sugerujące, że maintainerzy mogą samodzielnie podejmować decyzje o włączeniu kodu związanego z Rustem do swoich podsystemów. Zgodnie z jego słowami, Linus Torvalds w prywatnej rozmowie oświadczył, że ma zamiar wprowadzić kod Rust do jądra, pomimo sprzeciwu maintainerów. Oznacza to, że deweloperzy i maintainerzy jądra będą musieli zmierzyć się z Rustem, niezależnie od tego, czy tego chcą, czy nie.

Christoph porównał rozprzestrzenianie się Rust-owych powiązań do przerzutów nowotworowych, które mogą doprowadzić do fragmentacji jądra. W efekcie jądro stanie się projektem napisanym w kilku językach, bez wyraźnego określenia, kiedy który język powinien być używany. Tego rodzaju mieszana baza kodu, według Christopha, będzie jego najgorszym koszmarem, ponieważ ciągle będzie dochodzić do konieczności przepisywania kodu z jednego języka na inny, a potem z powrotem.

Christoph pyta, jaki jest cel wprowadzenia Rust do jądra. Jeśli chodzi o rozwiązanie problemów bezpieczeństwa związanych z niskopoziomową obsługą pamięci, w pierwszej kolejności należy zmodernizować istniejący kod. Jeśli celem jest uproszczenie rozwoju sterowników, wprowadzenie kolejnego języka jedynie zwiększy obciążenie już i tak przeciążonych maintainerów, którzy utrzymują infrastrukturę jądra w pełnej sprawności.

Wśród argumentów zwolenników wprowadzenia Rust do jądra wymienia się:

  1. Pisanie nowego kodu w języku Rust zmniejszy ryzyko błędów związanych z pamięcią, stanami wyścigu oraz wyeliminuje niektóre błędy logiczne.
  2. Maintainerom będzie łatwiej przeglądać zmiany i przeprowadzać refaktoryzację modułów, dzięki gwarancjom oferowanym przez język Rust.
  3. Abstrakcje wykorzystujące zaawansowane możliwości Rustu uproszczą tworzenie nowych sterowników i modułów.
  4. Wsparcie nowoczesnego języka przyciągnie nowych uczestników do rozwoju jądra.
  5. Zastosowanie narzędzi Rust uprości spełnianie wymagań dotyczących dokumentowania kodu, na przykład w projekcie Rust for Linux wprowadzono wymaganie obowiązkowego dokumentowania publicznych API, wymagań bezpieczeństwa, bloków unsafe oraz invariantów typów.

Dodatkowo: Opinie Griega Kroaha-Hartmana i Keisa Cooka na temat celów promowania Rust w jądrze Linux.

Avatar
Sty 23, 2025

Stargate za 500 miliardów dolarów: Musk krytykuje, Altman odpowiada

Świat technologii jest świadkiem zaostrzenia konfliktu pomiędzy Elonem Muskiem a Samem Altmanem, tym razem wokół projektu Stargate – gigantycznej inicjatywy o wartości 500 miliardów dolarów mającej na celu budowę infrastruktury dla sztucznej inteligencji w USA. Projekt, ogłoszony w Białym Domu, ma na celu wzmocnienie amerykańskiej pozycji lidera w dziedzinie AI.
0
Lip 11

Rezygnacja z Google — nowy trend

Wielu z nas wciąż pamięta czasy, gdy Google nazywano „korporacją dobra”, dzięki dewizie Don’t be evil, która była częścią kodeksu etyki firmy. Od tamtej pory wiele się zmieniło. Google, podobnie jak inni giganci technologiczni z grupy FAANG, są oskarżani o nadużywanie zaufania użytkowników, inwigilację i naruszanie prywatności. Niektórzy mogliby wręcz powiedzieć, że ten, kto walczył ze smokiem, sam się nim stał.
0
Mar 13, 2024

Trzech młodych ludzi stworzyło nowy model AI Devin, który może zastąpić ich pracę

Młoda firma z 10-osobowym zespołem o nazwie Cognition AI Inc.stworzyła nowy model sztucznej inteligencji Devin. 21 milionów dolarów na ten wynalazek otrzymano od firmy venture capital Founders Fund Petera Thiela i innych markowych inwestorów, w tym byłego dyrektora Twittera Elada Gila.
0

Ta strona używa plików cookie, aby zapewnić Ci lepsze wrażenia podczas przeglądania.

Dowiedz się więcej o tym, jak używamy plików cookie i jak zmienić preferencje dotyczące plików cookie w naszej Polityka plików cookie.

Zmień ustawienia
Zapisz Akceptuj wszystkie cookies