Czym jest Linux?

Definicja systemu Linux

Linux to komputerowy system operacyjny, który został opracowany przy użyciu modelu open source. Zasady tworzenia oprogramowania open source są następujące:

  • Przejrzystość
  • Współpraca
  • Wczesne i częste wydawanie
  • Merytokracja integracyjna
  • Społeczność

Model tworzenia oprogramowania open source oznacza również, że ulepszenia wprowadzają różne firmy i różni indywidualni współtwórcy, dzięki czemu kierunek rozwoju produktu jest w dużej mierze określany przez społeczność użytkowników, a nie przez pojedynczy zespół programistów jednego dostawcy.

Czym jest jądro systemu Linux?

Jądro systemu Linux jest centralnym elementem komputerowego systemu operacyjnego Linux. Jądro to podstawowy interfejs między sprzętem komputerowym a jego procesami, który zapewnia dostępną pamięć dla aplikacji systemu Linux, optymalizuje procesory i nawiguje wymaganiami systemowymi między aplikacjami.

Jądro systemu Linux zapewnia komunikację między sprzętem a aplikacjami za pośrednictwem przerwań. Gdy sprzęt chce połączyć się z aplikacją i szerszym systemem, procesor i jądro generują przerwanie w celu efektywnego zarządzania zasobami.

Jądro, które znajduje się wewnątrz twardej powłoki systemu operacyjnego, kontroluje wszystkie podstawowe funkcje danego sprzętu, niezależnie od urządzenia, w tym telefonu komórkowego, tabletu, komputera stacjonarnego lub laptopa, serwera itp. Jądro systemu Linux koncentruje się na tych kluczowych funkcjach:

  1. Zarządzanie pamięcią: śledzi, ile pamięci należy wykorzystać i w jaki sposób.
  2. Zarządzanie procesami: określa, które procesy mogą korzystać z procesora centralnego (CPU) i w jaki sposób.
  3. Sterowniki urządzeń: pełnią rolę pośrednika między sprzętem a aplikacjami/procesami.
  4. Wywołania systemowe i zabezpieczenia: pozwalają odbierać żądania usług z procesów aplikacji.

Linux dla programistów

Programiści od dawna uwielbiają system Linux — nie bez powodu. Jest sprawdzony i bardzo wydajny. W przypadku Oracle Linux programiści stają się członkami dużej społeczności, w ramach której mogą dzielić się tworzonymi przez siebie rozwiązaniami lub zwracać się do innych w celu rozwiązywania problemów.

Na naszym portalu dla programistów już teraz możesz dowiedzieć się, w jaki sposób Oracle Linux przynosi korzyści programistom korzystającym z wielu języków (Python, Node.js, Go), jak można używać Oracle Linux nawet do dostosowywania przypadków użycia sprzętu, a także zapoznać się z samouczkami dotyczącymi aplikacji i infrastruktury.

Kto korzysta z systemu Linux?

System operacyjny Linux jest używany w wielu różnych systemach i środowiskach. Obsługuje duże środowiska infrastruktury chmurowej, lokalne urządzenia infrastruktury konwergentnej, serwery aplikacji, środowiska komputerów stacjonarnych i systemy wbudowane. Niektóre dystrybucje oprogramowania Linux zawierają również hipernadzorcę do hostowania maszyn wirtualnych.


Programiści i Linux — film (17:03)

Kto jest właścicielem systemu Linux?

Żadna osoba ani firma nie jest „właścicielem” systemu Linux. Wiele osób i korporacji wprowadza do systemu Linux aktualizacje i zazwyczaj licencjonuje je na podstawie licencji Open Source Software, takiej jak np. GPLv2. Linus Torvalds posiada prawa autorskie do nazwy Linux, ale każdy może stworzyć dystrybucję systemu Linux, łącząc różne składniki open source. Często firmy pobierają opłaty za korzystanie z ich dystrybucji; ewentualnie mogą pobierać opłaty tylko za dotyczącą jej pomoc techniczną lub udostępniać dystrybucję za darmo (zazwyczaj bez pomocy technicznej).


Czym wyróżnia się system Oracle Linux — film (2:43)

Czym jest dystrybucja systemu Linux?

Dystrybucja systemu Linux (czasami określana skrótem „Linux distro”) to zbiór kluczowych i opcjonalnych składników, które tworzą kompletny system operacyjny. Ogólnie rzecz biorąc, dystrybucja systemu Linux zawiera podstawowe składniki, w tym bootloader, jądro Linux, system init, demony, serwer graficzny i aplikacje. Niektóre dystrybucje obejmują dodatkowe opcje, takie jak wysokowydajne jądro Linux, narzędzia do zarządzania, hipernadzorcę, a nawet składniki środowiska cloud native.

Jak i gdzie można korzystać z różnych dystrybucji systemu Linux

Istotne różnice między dystrybucjami systemu Linux dotyczą tego, gdzie można ich używać, w jaki sposób są obsługiwane, jak zarządzają aktualizacjami oprogramowania i jakie dodatkowe lub opcjonalne składniki zawierają. Biorąc pod uwagę tylko powyższą listę dystrybucji, większość z nich jest używana do obsługi serwerów sieciowych (w przeciwieństwie do komputerów stacjonarnych), ale nie wszystkie można łatwo wykorzystać w każdego rodzaju środowisku serwerowym.

Na przykład system Red Hat Enterprise Linux jest popularny w lokalnych centrach przetwarzania danych i w niektórych chmurach, nie jest jednak obsługiwany we wszystkich chmurach. System Amazon Linux jest dostępny w chmurze Amazon Web Services (AWS), nie jest jednak łatwo dostępny lub obsługiwany w innych chmurach lub lokalnie. Użytkownicy systemu RHEL są na ogół przeciwnego zdania i chętnie płacą stosunkowo wysokie roczne opłaty za wsparcie, aby otrzymywać do niego aktualizacje i telefoniczną pomoc techniczną. System Fedora jest skierowany do użytkowników, których mniej interesuje długoterminowa stabilna konfiguracja i którzy chcą na bieżąco wprowadzać do swoich systemów najnowsze, eksperymentalne funkcje.

Najlepszy system operacyjny Linux dla każdego przypadku użycia

Istnieje prawie tyle dystrybucji systemu Linux, ile jest przypadków jego użycia, więc prawdopodobnie da się znaleźć najlepszą wersję dla każdego z nich. W poniższych sekcjach omówiono różnice między poszczególnymi typami Linuksa, aby pomóc w określeniu, który system operacyjny Linux może być najlepszy w danej sytuacji.

Wersje systemu Linux

Ponieważ każdy może stworzyć dystrybucję systemu Linux na bazie dostępnego kodu źródłowego i wybierać spośród różnych jego składników, istnieje wiele dystrybucji, które są do siebie bardzo podobne. Niektóre dystrybucje pochodzą od różnych firm, ale są w rzeczywistości zamienne.

Różne dystrybucje mogą być również zoptymalizowane pod kątem różnych celów — niektóre są ukierunkowane na możliwie najmniejszy rozmiar, a inne koncentrują się na zapewnieniu szerokiego wsparcia dla stacjonarnego sprzętu komputerowego. Ponadto niektóre dystrybucje oferują specjalistyczne funkcje, takie jak automatyczne instalowanie poprawek lub wyższa wydajność baz danych.

Popularne dystrybucje obejmują:

  • IBM Red Hat/Red Hat Enterprise Linux (RHEL lub Red Hat Linux)
  • Amazon Linux
  • Fedora
  • Oracle Linux
  • SUSE Linux
  • Ubuntu

Jak różne systemy operacyjne Linux zarządzają aktualizacjami i poprawkami

Kolejną różnicą jest sposób, w jaki system operacyjny zarządza opcjonalnymi aktualizacjami i poprawkami oprogramowania. Wiele systemów (ale nie wszystkie) z powyższej listy korzysta z narzędzia RPM (wcześniej znanego jako Red Hat Package Manager). Niektóre inne dystrybucje systemu Linux używają systemu pakietów Debian (dpkg).

Indywidualny menedżer pakietów sam w sobie nie jest bardzo ważny, ale tworzy różnicę w kompatybilności między systemami, które używają jednego lub drugiego rozwiązania. Na przykład w zależności od używanych funkcji można łatwo wymieniać między sobą systemy korzystające z systemu RPM (czasami nazywane „dystrybucjami Linuksa rpm”), ponieważ mogą one pobierać bardzo podobne pakiety z podobnych serwerów dystrybucji.

Można również łatwo przekonwertować instalacje RHEL na instalację Oracle, wskazując ich menedżerowi pakietów nowy serwer aktualizacji. Dzieje się tak między innymi dlatego, że wszystkie one korzystają z systemu RPM. (Należy pamiętać, że jest to oświadczenie techniczne — dostawcy mogą określić dodatkowe warunki licencji, których należy przestrzegać, ale warunki te wykraczają poza zakres tego dokumentu). To samo przejście byłoby trudniejsze w przypadku dystrybucji takiej jak Ubunto, która korzysta z systemu pakietów Debian.

Czynniki, które należy wziąć pod uwagę przy wyborze dystrybucji systemu Linux

Korzyści związane z dolnym stosem

Dla wielu klientów system operacyjny znajduje się na dole stosu platform oprogramowania, a ich aplikacje biznesowe na górze. Może to sprawiać wrażenie, że system operacyjny jest mniej ważny niż wyższe warstwy stosu, więc nie ma znaczenia, którą dystrybucję wybierzesz. Niektórzy mogą nawet pomyśleć, że wszystkie dystrybucje są takie same.

Jednak ze względu na to, że system operacyjny Linux znajduje się na samym dole stosu, może on wpływać na wszystko, co znajduje się nad nim. Poprawa bezpieczeństwa, wydajności, niezawodności i możliwości rozwiązywania problemów na tym niskim poziomie może oznaczać poprawę w tym zakresie na wyższych poziomach. Na przykład technologia o nazwie Ksplice może pozwolić administratorowi na zastosowanie poprawek bezpieczeństwa i poprawek błędów bez ponownego uruchamiania serwera. Samo w sobie wydaje się to niewielką korzyścią. Jeśli jednak weźmiemy pod uwagę koszt wyłączenia aplikacji biznesowej lub ryzyko pozostawienia systemu bez poprawek związanych z najnowszym zagrożeniem bezpieczeństwa, możliwość wprowadzania poprawek bez zakłócania działania aplikacji biznesowej ma nagle bardzo duże znaczenie.

Wartość tych korzyści może się łatwo zwielokrotnić w górnej części stosu. Zaoszczędzenie czasu na ponownym uruchomieniu na poziomie systemu operacyjnego może przynieść administratorowi tylko kilka minut korzyści. Jednak uniknięcie problemów organizacyjnych i potencjalnego negatywnego wpływu na przychody związanego z planowaniem przestojów ważnej aplikacji przeznaczonej do obsługi klientów może być warte tysiące razy więcej niż roczna pensja administratora. Nie wspominając o kosztach i ryzyku dla firmy, które wiążą się z ignorowaniem aktualizacji zabezpieczeń.

Zalety w zakresie wydajności

Na podobnej zasadzie poprawa wydajności systemu operacyjnego może wydawać się nieistotna, ponieważ administratorzy zazwyczaj spędzają niewiele czasu, pracując bezpośrednio w systemie operacyjnym — a użytkownicy jeszcze mniej. Jednak w przełożeniu na poziom aplikacji biznesowych niewielka poprawa wydajności może być pomnożona przez miliony transakcji o wysokiej wartości, prowadząc do oszczędności kosztów każdej transakcji, a nawet do przewagi konkurencyjnej firmy wynikającej z szybszego niż konkurencja dostarczania transakcji, w przypadku których liczy się czas.

Dlaczego warto wybrać system Linux?

Jest otwarty i kompletny

Otwarte i kompletne środowisko operacyjne Oracle Linux zapewnia narzędzia do wirtualizacji, zarządzania i przetwarzania w chmurze, wraz z systemem operacyjnym, w ramach pojedynczej oferty asysty technicznej. Oracle Linux jest w pełni kompatybilny binarnie z RHEL. Ze względu na tę kompatybilność zazwyczaj jest również dobrym zamiennikiem dla innych dystrybucji opartych na RPM.

Jest bezpłatny

Możesz używać Oracle Linux bezpłatnie w środowiskach samoobsługowych lub na mocy umowy o płatną asystę techniczną systemu Linux w zakresie obciążeń produkcyjnych.

Jest stale udoskonalany

Aby zapewnić wysoką wydajność systemu Oracle Database, inżynierowie Oracle stale ulepszają jądro Unbreakable Enterprise Kernel. Chociaż ulepszenia te były przeznaczone dla systemu Oracle Database, zazwyczaj przynoszą one korzyści w przypadku każdej aplikacji wymagającej dużej ilości mocy obliczeniowej lub pamięci. Niektórzy użytkownicy odnotowali ponad 30-procentową poprawę wydajności dzięki temu wariantowi jądra Linux.

Umożliwia instalowanie poprawek bez przestojów

Oracle Linux opcjonalnie obejmuje technologię instalowania poprawek bez przestojów o nazwie Ksplice, która pozwala na regularne wprowadzanie poprawek na serwerach bez konieczności ich ponownego uruchamiania lub, co ważniejsze, ponownego uruchamiania działających na nich aplikacji biznesowych. Prowadzi to do częstszego instalowania poprawek, a tym samym zwiększenia bezpieczeństwa i zgodności systemów. Zmniejsza to również koszty administracyjne typowe dla dużych aplikacji biznesowych, które wymagają znacznego nakładu pracy w celu zaplanowania i zatwierdzenia przez wszystkie zainteresowane strony przed ponownym uruchomieniem. Oracle Linux zawiera również hipernadzorcę KVM typu open source oraz (w przypadku umowy o asystę techniczną) menedżera wirtualizacji (PDF).

Zawiera wiele narzędzi typu cloud native

Wiele obciążeń jest przenoszonych do hostowanego środowiska chmurowego, a te, które pozostają w modelu lokalnym, są często projektowane przy użyciu wzorców i technologii cloud native, Kubernetes, kontenerów Kata i Istio. Oracle Linux jest podstawowym systemem operacyjnym dla Oracle Cloud Infrastructure (OCI) i zawiera wiele narzędzi cloud native wymaganych w tej architekturze. Oznacza to, że Oracle Linux jest testowany w największym, najbardziej wymagającym środowisku ze wszystkich, które ponadto pasuje do wzorca projektowego większości nowoczesnych aplikacji. Wyciągnięte dzięki temu wnioski przekładają się bezpośrednio na usprawnienia systemu operacyjnego. Jednak w przeciwieństwie do innych dostawców, którzy mają własny system leżący u podstaw ich chmury, Oracle Linux jest dostępny w tej samej konfiguracji dla wszystkich użytkowników, niezależnie od tego, czy korzystają z OCI, innej chmury, czy własnego centrum danych klienta.

Jest podstawą systemu Oracle Autonomous Linux

Oracle Linux jest również podstawą jedynego na świecie autonomicznego systemu operacyjnego, który codziennie sam instaluje poprawki, aby jednocześnie zmniejszyć zagrożenia bezpieczeństwa i wysiłek administracyjny.

Od 2006 roku Oracle Linux jest całkowicie bezpłatny do pobrania i używania: kod źródłowy, pliki binarne i aktualizacje są darmowe. Dowolna redystrybucja. Możliwość bezpłatnego używania w środowiskach produkcyjnych.