Czytaj więcej"/> Drukuj
Linux jest to jądro będące podstawą jednej z wersji uniksowych systemów operacyjnych. Nazwa Linux jest też powszechnie używana do określenia całego systemu opartego o to jądro, choć niektórzy (m.in. projekt GNU oraz Debian) używają w tym celu nazwy GNU/Linux.

Historia rozwoju

Linux zaczął powstawać w 1991 roku, kiedy to fiński programista, Linus Torvalds stworzył jądro nowego systemu operacyjnego przeznaczonego do pracy z procesorami rodziny 80386 firmy Intel.
Informacje o systemie, opublikowane przez Torvaldsa na internetowej liście dyskusyjnej, spotkały się z dużym zainteresowaniem i wkrótce przy rozwoju systemu pracowała już grupa ludzi. Znacznie przyspieszyło to jego rozwój – otrzymał on później nazwę "Linux". Im bardziej system ten stawał się popularny, tym więcej ludzi wspierało jego rozwój. Proces ten trwa do dziś, a liczbę użytkowników różnych dystrybucji Linuksa szacuje się obecnie na wiele milionów na całym świecie.
Kolejne wersje jądra systemu Linux przynosiły zmiany i wiele nowości:

Etymologia nazwy

Sama nazwa pochodzi ze zbitki słów Linus (będącego imieniem twórcy) i Unix (Linus' Unix). Nie przyjęła się proponowana przez Torvaldsa nazwa Freax. Nazwa "Linux" informuje nas także że nie jest to system Unix: Linux Is Not UNIX.
Jakkolwiek teoria ta wydaje się prawdopodobna -> Freax = (free+freak+[1]X), to jednak pewne inne źródła twierdzą, iż nazwa LINUX pochodzi po prostu od połączenia słów: Linus i Minix lub Linus i Unix. Ten dylemat może chyba wyjaśnić tylko sam Linus...

Nazwa Linux w języku polskim

Nazwę "Linux", gdy używamy jej w innym przypadku niż mianownik, spolszczamy w następujący sposób: M: Linux, D: Linuksa, C: Linuksowi, B: Linuksa, N: Linuksem, Msc: Linuksie, W: Linuksie!

Cechy systemu

Linux charakteryzuje się dużą zgodnością ze standardami ANSI i POSIX, jest wielozadaniowy, wielowątkowy, wielobieżny, ma monolityczną budowę (choć z obsługą modułów - najczęściej zawierającymi sterowniki urządzeń), a także wsparcie dla klastrów (rozwijany w Izraelu akademicki projekt MOSIX) i architektury SMP (w najnowszych wersjach także NUMA). Jest bardzo wydajny, stabilny i bezpieczny. Wadą jest brak możliwości wywłaszczenia procesów jądra (taka możliwość istnieje w najnowszych jądrach 2.6) oraz korzystanie w małym stopniu z wątków jądra, które w Linuksie nie mogą zajmować się wykonywaniem programów użytkownika.
Działa na wielu platformach sprzętowych: i wiele innych...
Dzięki Wirtualnemu Systemowi Plików (ang. VFS) obsługuje blisko 50 systemów plików:

Zastosowanie

Linux przede wszystkim stosowany jest na systemach serwerowych (serwery WWW, FTP, e-mail i inne), jako zapory sieciowe (firewall), a także w systemach osadzonych oraz w niektórych odtwarzaczach DVD.
Ze względu na powstanie i rozwój dystrybucji o łatwej instalacji, graficznym wyglądzie i bogactwie wydajnego oprogramowania przewiduje się szerokie wejście Linuksa na rynek biurowy i domowy. Rządy kilku państw europejskich prowadzą wdrożenia Linuksa na komputerach administracji państwowej. Ponadto z Linuksa korzystają agencje wywiadowcze i kontrwywiad, ze względu na bezpieczeństwo, stabilność oraz możliwość audytu oraz modyfikacji kodu (dostępność kodu źródłowego). Niezawodność tego systemu została doceniona przez niektóre banki i instytucje finansowe korzystające z Linuksa (np. system notowań Wall Street oparty jest na tym systemie operacyjnym).
Linux jest używany w większości superkomputerów z listy TOP500.

Schemat rozwoju

Rozwój Linuksa można podzielić na dwie gałęzie - stabilną (oznaczaną numerami parzystymi serii, np. 2.6) oraz rozwojową (oznaczaną numerami nieparzystymi np. 2.5).
Wersja stabilna - jak sama nazwa wskazuje - ma być stabilna, autorzy wstrzymują się od wprowadzania do niej rewolucyjnych zmian, jedynie poprawki wykrytych błędów, drobne usprawnienia. Jednym z najpoważniejszych odstępstw od tej reguły była wymiana nieefektywnego podsystemu pamięci wirtualnej w serii 2.4.
Po każdej serii stabilnej (a właściwie już w jej trakcie) rozpoczynana jest seria rozwojowa, w której jest miejsce na eksperymenty, przebudowy itd. Z tego powodu wersje rozwojowe nie nadają się do poważnego użytkowania, często nawet nie mogą zostać skompilowane. Po jakimś czasie seria rozwojowa "dojrzewa" i staje się pierwszą wersją nowej serii stabilnej, a poprzednia stabilna seria wchodzi w stan "spoczynku", kiedy wprowadzane są praktycznie tylko poprawki bezpieczeństwa oraz z rzadka porty fragmenty kodu z nowszych serii (np. sterowników urządzeń).
W serii 2.6 Linus w porozumieniu z jej opiekunem, Andrew Mortonem, wprowadzają model nawet dużych, choć stopniowo wprowadzanych modyfikacji, jeszcze w ramach wersji stabilnej. Zmiany zaakceptowane przez Torvaldsa po okresie niezbędnych testów są włączane do głównej gałęzi nadzorowanej przez Mortona.
Ponieważ ten model pracy sprawdza się, jak dotąd nie uznali za konieczne utworzenia gałęzi 2.7. Argumentem na rzecz takiego trybu rozwoju jest fakt, że faktyczna stabilizacja jądra dla końcowych użytkowników od dłuższego czasu odbywa się i tak w ramach poszczególnych dystrybucji.
Od wersji 2.6.11 zaczęto wydawać wersje 2.6.11.x, zawierające mniejsze poprawki. Taki tryb pracy wprowadza na nowo stabilną wersję jądra dla użytkowników niezadowolonych z eksperymentalnego charakteru głównej linii rozwojowej.

Numeracja jąder

Wersję Linuksa zapisujemy używając 3 lub 4 liczb naturalnych rozdzielonych kropką, na przykład:
2.4.17

Pierwsza liczba - 2 - to numer wydania, aktualnie 2. Następna liczba (u nas 4) oznacza serię. Gdy jest parzysta, mamy do czynienia z serią stabilną, jeśli nie - rozwojową. 17 to już numer wersji w danej serii. Dodatkowa, czwarta liczba w numerze wersji oznacza wersję lekko poprawionej, stabilnej wersji jądra.
Często używa się oznaczeń typu 2.4.18-pre6 - co oznacza szósta przymiarka do wydania 2.4.18
Koordynatorzy projektu dobierają łaty (ang. patch) według swego uznania. Wielu osobom się to nie podoba lub nie wystarcza, więc tworzą swoje gałęzie jądra, w których sami decydują o łatkach jakie zostaną do niego wprowadzone lub odrzucone, przez co mogą wpływać na kierunek i szybkość rozwoju.
Oficjalną gałęzią Linuksa zarządza Linus Torvalds lub osoba przez niego wyznaczona: Często istnieją równoległe, nieoficjalne gałęzie, np. 2.4 Alana Coksa lub Andrei Arcangelego. Oznaczane są poprzez dodanie odpowiedniej końcówki, np.: -ac dla jąder Alana Coksa, -aa dla jąder Andrei itd. Należy zaznaczyć, że niektóre jądra nieoficjalne sprawują się lepiej niż te prowadzone przez samego Linusa Torvaldsa.
Oznaczenie typu 2.4.18-rc1, to tzw. wydanie kandydujące (ang. release candidate), czyli "kandydat" do bycia nową wersją stabilną, o ile nie zostaną w nim znalezione poważniejsze błędy. Gdy ich nie ma, to (w teorii) nowa wersja stabilna nie będzie się niczym różniła (oprócz samej nazwy) od powstałej na jej podstawie wersji stabilnej. Jeśli się znajdą, zostają one poprawione, w wyniku czego powstaje nowe wersja "kandydująca" i cykl się powtarza. Wersje -rc pojawiają się z reguły już po kilku wersjach -pre. Do używania "wersji kandydujących" zobowiązał się obecny opiekun linii 2.4, Marcelo Tosatti.
Odkąd zmiany w kodzie jądra, przechowywane są w repozytorium BitKeeper, na stronach projektu znaleźć można również wersje oznaczane jako np. 2.6.11-rc1-bk8. Są to tak zwane snapshoty, zawierające kod wprowadzony w przeciągu okresu który minął od wydania wersji (w tym wypadku) 2.6.11-rc1. Tworzone są automatycznie w formie patchy, które można nałożyć na kod jądra.

Oprogramowanie

Linux potrafi uruchamiać programy w formatach a.out oraz ELF. Dzięki zaznaczeniu przy kompilacji opcji Kernel support for MISC binaries może również uruchamiać inne programy np Java poprzez Maszynę wirtualną albo MS-DOS lub MS Windows poprzez emulatory.
Oprogramowanie dla Linuksa jest najczęściej otwarte i wolne. Jest rozprowadzane w formie gotowych pakietów binarnych dla danej dystrybucji (np. RPM, DEB i TGZ), lub jako źródła (np. tar.bz2, tar.gz), które należy przed użyciem skompilować.

Kwestie prawne

Linux jest wolnodostępnym systemem rozprowadzanym na licencji GNU General Public License, co oznacza, że kod źródłowy jest dostępny dla każdego i każdy może dowolnie go modyfikować wedle własnego uznania. Do gałęzi oficjalnej nie jest włączany żaden zamknięty kod, choć możliwe jest dołączanie do jądra modułów komercyjnych.
Moduły w Linuksie mają automatyczne oznaczenia licencji, tak żeby przypadkiem nie został włączony moduł na licencji niezgodnej z GPL (zgodnymi licencjami są GPL, LGPL, Licencja BSD i kilka innych).
Linux jest zastrzeżonym znakiem towarowym należącym do Linusa Torvaldsa.
Materiał wydrukowany z portalu zgapa.pl dnia 2021-03-09 08:45:08