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?
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.
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.
źródło
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)
źródło