Co nowego w jądrze Linuksa 2.6
Spis treści:
Wstęp
17 grudnia roku 2003 jest jednym z ważniejszych w historii społeczności komputerowej. Tego dnia Linus Torvalds, kilkanaście lat temu nikomu nie znany student z Finlandii, dziś jedna z największych gwiazd branży IT, oficjalnie ogłosił wydanie nowej wersji jądra systemu operacyjnego Linux - wersji o numerze 2.6.
Wszelkie zmiany, które zaszły w porównaniu do wydania 2.4, są efektem pracy wielu ludzi rozsianych po całym świecie - najcześciej ludzi, którzy poświęcili swój czas dobrowolnie, dla czystej satysfakcji. Ponieważ bowiem Linux jest produktem open-sourceowym, każdy ma dostęp do jego kodu i każdy może na tym kodzie operować. A gdy komuś udaje się napisać coś naprawdę sensownego, jest to dołączane (choć oczywiście najpierw musi zostać dokładnie przetestowane) do kolejnej wersji jądra. W praktyce odbywa się to tak, że taki programista (zwany developerem Linuxa) pisze łatkę (ang - patch) na starszą wersję jądra, a kod w nowej wersji jest bardzo zbliżony do starego z nałożoną łatką. Taka forma rozwoju oprogramowania - wobec konkurencji produktów wielkich, zorganizowanych firm - mogłaby się wydawać nierealna, bez przyszłości bo bez szans na sukces. A jednak. Popularność Linuxa rośnie z każdym dniem, a nie tak dawno zupełnie niezagrożone Windowsy Microsoftu mają teraz naprawdę poważną konkurencję.
Ponieważ każde kolejne jądro jest większe od poprzedniego, a oprócz rzeczy nowych zmienia implementację wielu starych, nie zostaną tu omówione wszystkie zmiany. Skupmy się jednak na tych najważniejszych, tych, które dotyczyć będą najszerszą grupę użytkowników. Są one wymienione w menu.
Wybrane momenty z historii Linuxa
Rok 1991. Linus Torvalds, student informatyki na Uniwersytecie Helsińskim,
niezadowolony z luk w systemie operacyjnym unix, postanawia napisać własny
system operacyjny. Dnia 25-ego sierpnia ogłasza w usenecie zakończenie prac nad
pierwszą wersją. System działa jedynie na procesorze 386 i obsługuje tylko dyski
twarde AT (bo taki miał Linus). Liczy dokładnie 10239 linii kodu, a jego
rozmiar to 0.2 MB.
jądro 0.01 - rok 1991
Projekt cieszy się coraz większym zainteresowaniem. W czerwcu roku 1996
ukazuje się wersja 2.0.0 rozmiaru 22 MB, na które składa się 777956
linii kodu. Tymczasem Torvalds wyjeżdża - jeszcze nie na stałe - do
Kalifornii, zaproszony przez wchodzącą na rynek kompanię Transmeta. Jednocześnie
jednak stale nadzoruje postęp prac nad kolejnymi funkcjonalnościami.
jądro 2.0 - rok 1996
Przychodzi grudzień roku 2003. Linux oczywiście jest już znany i popularny na całym świecie, podobnie jak jego autor. Pierwsze wydanie wersji 2.6 - 2.6.0 - ma rozmiar 212 megabajtów, na które składa się 5929913 linii kodu. W dziale 'CREDITS' pojawiają się nazwiska 447 osób, a są to jedynie najważniejsi developerzy.
jądro 2.6 - rok 2003
W chwili pisania tego artykułu najnowszą stabilną wersją jądra linuxa jest 2.6.9 (18-10-2004), choć oczywiście trwają już prace nad 2.6.10. Nasuwa się pytanie - czy ten rozwój się kiedyś zatrzyma? Na pewno w najbliższym czasie nic na to nie wskazuje, choćby dlatego, że rozwój sprzętu wymaga równoczesnego rozwoju oprogramowania dla niego. A jaką obecnie pozycję na świecie ma Linux? Dane, że używać go może około dwóch-trzech procent użytkowników komputerów domowych mogłyby wskazywać, że wciąż nie za mocną. Ale...
przekłada się to na kilkanaście-kilkadziesiąt milionów użytkowników, najczęściej zaawansowanych
z Linuxa korzysta około 30% serwerów
IBM BlueGene/L Linux cluster zajmuje pierwsze miejsce na liście 500 najlepszych superkomputerów (Listopad 2004)
Spośród pięciu najszybszych superkomputerów na świecie trzy korzystają z Linuxa (nr 1,2,5).
na Linuxa przerzuciła się największa na świecie internetowa księgarnia - Amazon
pod Linuxem chodzą serwery Google (wzrost ich liczby z 6000 w 2000 do ponad 54000 trzy lata później)
i wieeeeeele innych...
A zatem...
jądro 3.0 - ????
Rozwój jądra krok po kroku:
Linux 0.01 (Wrz 1991) to 10239 linii kodu, 0.2 MB.
Linux 0.10 (Gru 1991) to 17750 linii kodu, 0.4 MB.
Linux 0.99 (Gru 1992) to 81091 linii kodu, 2.2 MB.
Linux 1.0.0 (Mar 1994) to 176250 linii kodu, 4.7 MB.
Linux 1.2.0 (Mar 1995) to 310950 linii kodu, 8.4 MB.
Linux 2.0.0 (Cze 1996) to 777956 linii kodu, 22 MB.
Linux 2.2.0 (Sty 1999) to 1800847 linii kodu, 52 MB.
Linux 2.4.0 (Sty 2001) to 3377902 linii kodu, 100 MB.
Linux 2.5.37 (Wrz 2002) to 5100081 linii kodu, 152 MB.
Linux 2.6.0 (Gru 2003) to 5929913 linii kodu, 212 MB
NA poniższym diagramie widać wykładniczość tego rozwoju:
Dokumentacja
Autorzy