Chociaż od dłuższego czasu wiedziałem o istnieniu Hurda i jego misji jako oficjalnego jądra systemu operacyjnego GNU, zastanawiałem się, dlaczego Linux nie jest przez lata uznawany za oficjalne jądro GNU, ponieważ jest w znacznie lepszym stanie niż Hurd?
Linux służył tej roli mniej więcej od ponad 20 lat, jednak widać, że Projekt GNU trzyma dystans, jeśli chodzi o Linuksa. Dlaczego to się dzieje? Czy z powodu snu Hurd (w przyszłości) będzie na poziomie jakości produkcji? Czy dlatego, że projekt GNU nie widzi swojej misji tak bardzo, jak chce w Linuksie? Czy to z innych powodów politycznych?
linux-kernel
gnu
hurd
NlightNFotis
źródło
źródło
Odpowiedzi:
GNU nie przyjmie czegoś jako projektu, chyba że programiści zgodzą się na pewne postanowienia wiążące wszystkie oficjalne projekty GNU.
Obecnie jądro Linuksa prawdopodobnie nie pasuje do tych ograniczeń, a Linus Torvalds, kernel.org i in. czerpać zyski z umieszczenia się pod parasolem GNU i wiele do stracenia - wspomnianą wcześniej wiążącą umowę oraz opinię publiczną, że jądro jest teraz projektem GNU, co miałoby głównie negatywny wpływ. Organizacja macierzysta GNU, Free Software Foundation (FSF), jest organizacją polityczną, a Torvalds krytykował ją publicznie oraz nieco kontrowersyjny, ikonoklastyczny dożywotni lider / założyciel GNU i FSF, Richard M. Stallman.
Co więcej, jądro Linuksa nie wymaga przestrzeni użytkownika GNU bardziej niż przestrzeń użytkownika GNU wymaga jądra Linuksa. Ta niezależność powinna być uważana za dobrą przez podstawowe zasady inżynierii oprogramowania, które sprzyjają modułowości i luźniejszemu sprzężeniu w przeciwieństwie do przeciwieństwa (rzeczy monolityczne z ciasnym sprzężeniem).
Innym argumentem przeciwko tej idei jest to, że chociaż HURD może nie być tak interesujący dla tylu osób jak Linux, programiści i użytkownicy HURD mogą sprzeciwić się efektywnemu wyczyszczeniu projektu w konkursie popularności. I dla nich dobre; „konkurencja” tego rodzaju jest czymś pozytywnym, podczas gdy skłonność do monopolizacji nie jest - powstają masywne byty, które częściowo tłumią kreatywność, ponieważ mają skłonność do monolitycznej / meglomaniakalnej kontroli. Linux Foundation jest już niezależną organizacją, równie dobrze może tak pozostać.
źródło
W sieci jest wiele dokumentacji i dyskusji na ten temat.
Krótka odpowiedź, że istnieją głębokie różnice ideologiczne między projektem GNU a projektami jądra Linuksa, co przeszkadza w możliwej unifikacji.
FSF, organizacja stojąca za Projektem GNU, koncentruje się na ideologicznej czystości w odniesieniu do idei wolnego oprogramowania. W dużej mierze wynika to z poglądów założyciela FSF / GNU, Richarda Stallmana. Ponadto, jak wspomniała Goldilocks, FSF jest obecnie głównie organizacją polityczną. Od dłuższego czasu FSF nie wkłada znacznych zasobów w Projekt GNU, choć zapewnia infrastrukturę pomocniczą.
Projekt jądra Linuksa ma znacznie bardziej pragmatyczne podejście do wolności oprogramowania, znowu w dużej mierze wywodzące się z jego założyciela, Linusa Torvaldsa. Projekt jądra Linuksa to przede wszystkim projekt wolnego oprogramowania, składający się z programistów specjalizujących się w rozwoju jądra / systemu operacyjnego, a pod żadnym względem nie jest organizacją polityczną.
Jako konkretne przykłady tego, jak te ideologie sprawdzają się w praktyce, należy rozważyć
1) Ten Stallman uważa za niedopuszczalny fakt, że projekt Debian „reklamuje” niewolne oprogramowanie, utrzymując niewolną część swojego archiwum oprogramowania. Jest to ironiczne, ponieważ projekt Debian koncentruje się na wolności oprogramowania, która jest dość podobna do FSF, ale nie jest tak sztywna ideologicznie.
2) To, że jądro Linuksa pozwala na używanie (niewolnych) binarnych modułów jądra z jądrem. Chociaż twórcy jądra nie są zachwyceni tym, tolerują to, ale trudno sobie wyobrazić, że FSF to robi.
Warto również zauważyć, że próba Stallmana nazwania systemów operacyjnych opartych na jądrze Linuksa GNU / Linux prawdopodobnie nie poprawiła relacji między FSF a społecznością jądra Linux, chociaż nie mam na ten temat konkretnych danych.
Oprócz wszystkiego innego, jak wspomina Goldilocks, FSF ma różne reguły, które musi spełniać projekt GNU. Obejmuje to przeniesienie praw autorskich do całego kodu do FSF. To samo w sobie stanowiłoby przełom, ponieważ Linus Torvalds nigdy nie wymagał takiego przeniesienia praw autorskich. Dlatego jeśli jądro Linuksa miałoby stać się częścią projektu GNU, wszystkie znaczące wkłady w jądro Linuksa musiałyby mieć przypisane prawa autorskie do FSF. Biorąc pod uwagę wiek i wielkość projektu oraz liczbę uczestników, jest to w zasadzie niemożliwe. Zdecydowanie mniejsze i młodsze projekty (np. Mercurial) uznały, że ponowne licencjonowanie oprogramowania jest trudnym zadaniem.
Należy pamiętać, że ta odpowiedź nie jest w żaden sposób krytykowana zarówno przez twórców FSF, jak i jądra Linuksa. Obie strony mają własne ważne punkty widzenia. Jednak w rzeczywistości sytuacja jest do pewnego stopnia niezgodna z poglądami.
źródło
Cytuję komentarz Richarda Stallmana , dotyczący decyzji o wprowadzeniu Hurda zamiast Linuksa.
źródło
Właśnie dodam tutaj moje 2 centy, myślę, że to, co zostało omówione w tym momencie, ma wiele sensu, ale myślę, że istnieje jeden ważny aspekt, który naprawdę może spolaryzować podstawy GNU i fakt, że Linux staje się coraz bardziej bardziej miejsce, w którym duże korporacje inwestują prawdziwe pieniądze i czas, pomysł, że Linux jest rodzimym projektem , nie jest prawdą, ani trochę, może jest jakiś przypadkowy facet, który próbuje zwrócić na siebie uwagę, dając załatać, ale dla dużej części Linux to zadanie dla korporacji.
źródło
Inne wyjaśnienie znalezione w FAQ gnu.org :
źródło
Linux nie może być Uniksem, ponieważ Linux nie jest zgodny z Posix .
Więc nawet bez problemów politycznych Linux nie może osiągnąć celu projektowego Hurda.
Cytowanie : „Hurd jest zamiennikiem projektu GNU dla popularnego jądra systemu operacyjnego UNIX”.
Zadziwiające, że istnieje Debian / Hurd-Projekt . Ale to prawdopodobnie inna historia ...
BTW: Windows (od NT / XP) również opiera się na jądrze MACH.
źródło