Jakie są różnice między jądrem dostarczanym z Ubuntu a jądrem nadrzędnym?

31

Jakie są różnice w zestawie funkcji między głównym jądrem Linuksa a jądrem używanym przez Ubuntu? Dlaczego Ubuntu jest rozgałęzione z głównego jądra zamiast bezpośredniego korzystania z głównego jądra?

Andrew Stern
źródło

Odpowiedzi:

18

Jądra wysyłające (nazywane, gdy je udostępniamy, jako jądra głównego ) są po prostu jądrem wysyłającym dla określonej wersji, z kilkoma drobnymi zmianami konfiguracji, dzięki czemu korzystanie z nich podczas instalacji Ubuntu jest minimalne.

Różnicą między tymi jądrami a wersją wydaną dla wersji Ubuntu są liczne inne zmiany konfiguracji , łatki źródłowe *, aw niektórych przypadkach skompilowane w modułach i obsługa sprzętu.

Bardzo niewiele kodu źródłowego różni się od kodu źródłowego innego niż wspomniany powyżej.

*: łatki źródłowe to w większości przypadków zmiany domyślnego zachowania jądra. Nie są one ograniczone do: czarnych list, tabel dziwactw wideo, wbudowanych modułów, zmian źródłowych, które nie są jeszcze w drzewie Linusa lub stabilnej kolejki, itp.

Łatki źródłowe są tym, czego używa zespół, aby wprowadzić opcje konfiguracji wymagane do obsługi szerokiej gamy wydanego oprogramowania dla konkretnej wersji Ubuntu. W wielu przypadkach są one niezbędne do poprawnego działania tych aplikacji. Zasadnicza różnica między tym a jądrem wyższego poziomu polega na tym, że czyste jądro początkowe nie jest specyficzne dla dystrybucji.

Dlatego konfiguracje nie mają na celu zapewnienia, że ​​niektóre aplikacje działają zgodnie z oczekiwaniami. Te konfiguracje istnieją, aby zapewnić poziom zmienności jądra dla określonych rzeczy. Dodatkowo użycie dziwactw pozwala nam zidentyfikować sprzęt, który wymaga określonych rzeczy z jądra, które możemy ustawić po ich wykryciu.

Jest to jedna z głównych cech Linuksa i jeden z powodów, dla których mogliśmy działać na tak wielu różnorodnych platformach przez lata. Są chwile, kiedy dziwactwa i łatki źródłowe powodują problemy między sobą. W tych czasach pracujemy nad złagodzeniem problemów związanych ze zmianami w zachowaniu jądra. W wielu przypadkach zmiany te nie są wprowadzane wcześniej niż po wydaniu, ponieważ w bardzo dużej części wynika z potrzeby prawidłowego kodowania poprawki, dokumentowania tego, co zostało zrobione, testowania zmian oraz przeprowadzania różnych innych testów i testów warunków skrajnych.

W takich przypadkach łatki skierowane do góry są przenoszone jako łatki źródłowe w taki sam sposób, jak robią to wstępnie stabilne i łatki, których jeszcze nie ma w drzewie Linusa. Link do specyfikacji przeglądu delta powinien służyć jako odniesienie do tego, co zostało sprawdzone w bieżącej wersji Natty jądra Ubuntu.

Jeremy Foshee
źródło
1
Czy są więcej szczegółów na temat łatek do sosu i dlaczego niektóre zmiany konfiguracji są pożądane dla jądra Ubuntu?
Andrew Stern,
Andrew, tak, pracuję nad jakimś tekstem objaśnienia, aby dodać do powyższego, który, mam nadzieję, wyjaśni, jakie plastry sosu są nieco bardziej szczegółowe. :-)
Jeremy Foshee
2

Jądro Linux jest w ciągłym rozwoju. Podczas pakowania następnej wersji zespół Ubuntu w pewnym momencie musi powiedzieć: „OK, weźmiemy jądro w obecnej formie”. Od czasu do czasu możesz udostępnić nowe jądro w repozytoriach do użycia w obecny rozkład.

To miejsce może być ciekawą lekturą, ale może być bardzo techniczne. Być może będziesz w stanie dowiedzieć się, co gotuje się wcześniej i czego obecnie brakuje (ale w końcu dostaniesz).

Należy zauważyć, że jak każde oprogramowanie, jądro jest podatne na błędy i często zdarza się, że dochodzi do regresji (dodane nowe elementy psują starą funkcjonalność). Jądra IMHO tak naprawdę nie ekscytują mnie pod względem nowej funkcjonalności. Z przyjemnością uruchomiłbym na przykład jądro, które miało dwa lata.

boehj
źródło
4
Chociaż wszystko to jest bardzo prawdziwe, nie sądzę, że do końca zrozumiałeś pytanie. Myślę, że pytający zastanawiał się nad łatami, które Ubuntu stosuje do jądra.
8128
0

Możesz pobrać drzewo git z Ubuntu i użyć przeglądarki graficznej, aby wyświetlić drzewo git. To pokaże wszystkie łatki Ubuntu. https://wiki.ubuntu.com/Kernel/Dev/KernelGitGuide

Inną możliwą opcją jest subskrypcja listy mailingowej jądra ubuntu. Cała ich praca jest tam opublikowana i możesz dowiedzieć się, co robią. Ale jest duży ruch, a IMHO denerwuje. (Ale hej, to ich lista)

użytkownik1974
źródło
2
Cóż, lista jest skierowana bardziej na otwartą dyskusję na temat proponowanych łat. Prawdopodobnie nie jest to miejsce, które da ci jasny obraz tego, co robimy. Polecam do tego kanał jądra FreeNode # ubuntu-kernel.
Jeremy Foshee