Rynek systemów operacyjnych to pole bitwy. Unix i Linux zajmują w nim kluczowe miejsca, ale twórcy i zwolennicy „czystych” technologii uwielbiają gorące dyskusje. Mają wspólne pochodzenie. Mają wspólną filozofię. Ale oddzielają je znaczące różnice. Zrozumienie tych luk pomoże Ci zdecydować, który system jest naprawdę liderem.

Co właściwie robi system operacyjny

Przestań myśleć o systemie operacyjnym jak o „oprogramowaniu”. Jest to pierwszy program uruchamiany po włączeniu zasilania. Jest ładowany do pamięci. Ona przejmuje kontrolę. Następnie przekazuje zasoby aplikacji, którą chcesz uruchomić.

Typowe usługi obejmują harmonogram zadań. Rozdziela czas procesora. Można jednocześnie wydrukować dokument, pobrać plik i przeliczyć tabelę, ponieważ program planujący przełącza się między tymi zadaniami. Menedżer pamięci zarządza pamięcią o dostępie swobodnym (RAM). Tworzy pamięć wirtualną, wykorzystując miejsce na dysku twardym, gdy kończy się pamięć RAM. Menedżer dysków utrzymuje struktury katalogów i plików. Pobiera dane, gdy o to poprosisz.

Menedżer sieci obsługuje przesyłanie danych między komputerem a Internetem. Menedżerowie wejścia/wyjścia (I/O) kontrolują klawiatury, myszy i drukarki. Security Manager chroni Twoje pliki. On decyduje, kto uzyska dostęp, a kto zostanie pominięty.

System operacyjny udostępnia także domyślny interfejs. Windows 98 miał przycisk Start. Mac OS miał swój własny, niepowtarzalny wygląd. Powłoka to okno, które widzisz.

Historia kodu

Linux jest fenomenem. Aby zrozumieć, dlaczego podbiła rynek, spójrz na jego korzenie.

Unix powstał w Bell Labs pod koniec lat sześćdziesiątych. Stworzyli go Ken Thompson i Dennis Ritchie. Chcieli systemu, który będzie przenośny, wielozadaniowy i obsługujący wielu użytkowników. W tamtej epoce dominowały ograniczenia zastrzeżone. Unix przerwał te łańcuchy. Używał małych, modułowych narzędzi. Można je łączyć na nieskończoną liczbę sposobów. Głównym celem była prostota.

Wczesny Unix był sprzętem badawczym. Korzystały z tego uniwersytety. W latach 80. rozpowszechniły się potężne stacje robocze. Sun został liderem. Następnie uplasowały się HP, IBM i Silicon Graphics. Każdy miał własną wersję Uniksa. Sprzedaż oprogramowania na tych rozdrobnionych platformach stała się koszmarem.

Microsoft dostrzegł tę niszę. Wydali Windows NT. Pasował do funkcji Uniksa, takich jak bezpieczeństwo i obsługa wielu procesorów. Pozostał jednak kompatybilny z aplikacjami Windows. To stworzyło dziwną dynamikę. Zastrzeżone systemy Unix były słabe bez władzy centralnej. Ludzie nienawidzili Microsoftu. Linux wypełnił tę pustkę.

Linus Torvalds stworzył jądro Linuksa. Wydał go za darmo. Zażądał, aby depozyty pozostały bezpłatne. Przyłączyło się tysiące programistów. System operacyjny szybko się rozrósł. Pracowała na komputerze. Deweloperzy zaczęli ją lubić.

Kto używa Linuksa?

  • Ludzie, którzy znają Uniksa i chcą go używać na sprzęcie PC.
  • Eksperymentatorzy zainteresowani zasadami systemu operacyjnego.
  • Użytkownicy, którzy potrzebują pełnej kontroli nad konfiguracją.
  • Osoby, które mają osobiste skargi na firmę Microsoft.

Linux jest trudniejszy w zarządzaniu niż Windows. Oferuje dużą elastyczność. Nie jest odpowiedni dla każdego.

Kluczowa różnica: pakiet podstawowy vs pełny pakiet

Kiedy ludzie pytają o Unix vs Linux, zwykle nie mają pewności, co kupują. Unix to rodzina systemów operacyjnych. Linux to tylko jądro.

Jądro kontroluje sprzęt. Komunikuje się z procesorem, pamięcią i dyskiem. Ale pojedynczy rdzeń nie może obsługiwać aplikacji. Potrzebuje bibliotek. Potrzebuje skorupy. Potrzebuje środowiska graficznego.

Dystrybucje Linuksa łączą jądro Linuksa z narzędziami GNU i innym oprogramowaniem. Ubuntu, Fedora, Debian to dystrybucje. Są to kompletne pakiety. Możesz uruchomić komputer z powłoką graficzną lub uruchomić serwer.

Unix jest często sprzedawany jako rozwiązanie autorskie. AIX od IBM. Solaris od Oracle. Płacisz za system operacyjny. Otrzymujesz wsparcie od dostawcy. Kod jest zamknięty. Nie możesz zmienić jądra.

Linux jest oprogramowaniem typu open source. Kod jest publicznie dostępny. Możesz zmienić wszystko. Jeśli coś zepsujesz, naprawisz to sam. Lub skontaktuj się ze społecznością.

Dlaczego Linux wygrał wojnę serwerową

Serwery są tam, gdzie Linux błyszczy. Obsługuje sieć. Obsługuje infrastrukturę chmurową. Dlaczego?

Cena. Żadnych tantiem. Wsparcie jest tańsze niż zakup licencji AIX. Kontrola. Możesz rozebrać system operacyjny na sam sprzęt. Bezpieczeństwo. Otwarty model pozwala tysiącom oczu sprawdzić Twój kod pod kątem błędów.

Unix utrzymuje swoją pozycję w wysokiej klasy systemach korporacyjnych. Banki korzystają z systemu AIX. Służba zdrowia korzysta z Solarisa. Systemy te są stabilne. Są przewidywalne. Są one dostarczane z kosztownymi certyfikowanymi umowami wsparcia.

Linux nadrabia zaległości. Opłaty za pomoc techniczną w systemie Red Hat Enterprise Linux (RHEL). Naśladuje model Uniksa. Zapewnia stabilność. Oferuje funkcje klasy korporacyjnej.

Obsługa komputera stacjonarnego

Na stacjach roboczych obraz jest inny. Dominuje okno. macOS działa na jądrach typu Unix (BSD). Linux zajmuje niszową pozycję.

Dlaczego? Łatwość użycia. Windows po prostu działa. Większość oprogramowania jest tworzona dla systemu Windows. Adobe, Microsoft Office. Nie mają natywnych wersji dla Linuksa.

Linux wymaga konfiguracji. Sterowniki mogą być złożone. Gry są coraz lepsze, ale wciąż pozostają w tyle za Windowsem. Trzeba majstrować. W terminalu musisz czuć się komfortowo.

Jeśli chcesz korzystać z systemu typu plug and play, unikaj Linuksa. Jeśli chcesz dowiedzieć się jak działają komputery, wybierz Linuxa.

Co wybrać?

Odpowiedź zależy od Twoich potrzeb.

Budujesz serwer WWW? Linux to oczywisty wybór. To nic nie kosztuje. Jest potężny. On jest standardem.

Pracujesz w korporacyjnym IT? Możesz wybrać Uniksa ze względu na stabilność starszej wersji. Lub RHEL dla wsparcia dla przedsiębiorstw.

Czy jesteś hobbystą? Linuksa. To nic nie kosztuje. To edukacyjne. Można go rozbić i złożyć z powrotem.

Czy jesteś kreatywnym profesjonalistą? Trzymaj się systemu Windows lub Mac. Ekosystem oprogramowania ma znaczenie.

Nie ma idealnego zwycięzcy. Istnieje tylko odpowiednie narzędzie do danego zadania. Debata trwa, ponieważ obie strony mają rację. Unix zapewnia stabilność. Linux oferuje wolność.

Przyszłość jest hybrydowa. Dostawcy usług w chmurze korzystają z Linuksa. Przedsiębiorstwa korzystają z Uniksa. Współistnieją. Konkurują.

Co się stanie, gdy open source stanie się standardem? Już tam jesteśmy. Granica pomiędzy oprogramowaniem zastrzeżonym a wolnym zaciera się.

Musisz podjąć decyzję. Płacisz za pewność siebie? A może podejmujesz ryzyko ze względu na elastyczność?

Modele licencjonowania i dostępność kodu źródłowego

Podział na Uniksa i Linuksa nie jest jedynie faktem historycznym. To jest kwestia finansowa.

Unix jest oprogramowaniem zastrzeżonym. Musisz za to zapłacić. Firmy takie jak IBM (AIX), Hewlett-Packard (HP-UX) i Oracle (Solaris) posiadają swoje odpowiednie wersje. Oznacza to, że każda „wersja” Uniksa ma swoje własne opłaty licencyjne, własny plan rozwoju i własne uzależnienie od dostawców. Nie otrzymasz kodu źródłowego. Otrzymujesz licencję na korzystanie z oprogramowania na konkretnym sprzęcie, który zazwyczaj sprzedawany jest jako kompletny pakiet ze wsparciem.

Linux to inna sprawa. Jest to oprogramowanie typu open source. Jądro, stworzone przez Linusa Torvaldsa i tysiące członków społeczności, można dowolnie modyfikować i rozpowszechniać. Ta wolność dała początek dystrybucjom takim jak Ubuntu, Fedora i Debian. Nie kupujesz systemu operacyjnego; często pobierasz zestaw oprogramowania zbudowany na jądrze Linuksa. Zmienia się struktura kosztów. Zamiast opłat licencyjnych możesz zapłacić za wsparcie premium lub stabilność na poziomie korporacyjnym od dostawcy takiego jak Red Hat.

Ta różnica określa, gdzie te systemy żyją. Unix rezyduje w kontrolowanych korporacyjnych centrach danych z dużymi budżetami. Linux rozprzestrzenia się wszędzie, od superkomputerów i telefonów z systemem Android po serwery internetowe.

Architektura jądra i zgodność

Ludzie zakładają, że Unix i Linux są wymienne, ponieważ wyglądają podobnie. Nie są.

Jądro Uniksa jest zastrzeżone. Różni się znacznie między różnymi dostawcami. Jądro systemu AIX nie komunikuje się z jądrem Solaris. Mają wspólne koncepcje, ale kod źródłowy jest inny.

Jądro Linuksa to pojedyncza, ujednolicona baza kodu. Torvalds zaczął od zera, aby uniknąć problemów licencyjnych, ale rozrósł się do ogromnego projektu kierowanego przez społeczność. Ponieważ Linux jest otwarty, programiści mogą go dostosować do dowolnego zadania. Czy potrzebujesz rdzenia do inteligentnej lodówki? Zapisz to. Czy jest potrzebny łazikowi marsjańskiemu? Dostosuj to.

Pomimo podobieństw wizualnych, oba systemy są niekompatybilne. Nie można po prostu zastąpić pliku binarnego Uniksa Linuksem i oczekiwać, że zadziała. Wywołania systemowe są różne. Struktury plików, choć podobne, mają subtelne różnice, które zakłócają przenośność oprogramowania. Mają wspólne pochodzenie, ale są oddzielnymi gałęziami.

Wspieraj ekosystemy

Kto naprawia system, gdy się psuje?

W świecie Uniksa zajmuje się tym sprzedawca. Jeśli na serwerze HP-UX wystąpi panika jądra, skontaktuj się z firmą HP. Płacisz za ten przywilej. Wsparcie jest zorganizowane, drogie i gwarantowane. Nie ma niejasności. Wiadomo, kto jest odpowiedzialny.

Obsługa Linuksa jest fragmentaryczna. Pochodzi zewsząd. Masz oficjalne umowy wsparcia od Canonical (Ubuntu) lub Red Hat. Masz wątki na Stack Overflow, w których anonimowi programiści spekulują na temat rozwiązań. Masz wewnętrzne zespoły IT piszące poprawki.

Ten brak centralnej kontroli jest cechą, a nie błędem. Pozwala to na szybkie wprowadzanie innowacji. Jeśli w systemie Linux zostanie wykryta luka w zabezpieczeniach, społeczność załata ją w ciągu kilku godzin. W zastrzeżonym systemie Unix można poczekać na następną kwartalną aktualizację od dostawcy.

Wspólne DNA: filozofia i projektowanie

Dlaczego wyglądają podobnie, skoro nie są takie same?

Ponieważ podzielają filozofię projektowania. Obydwoje kładą nacisk na prostotę. Obaj wierzą w „sposób Uniksa”: małe programy mające jeden cel, które dobrze wykonują jedną rzecz i można je łączyć w łańcuchy.

Ta modułowość jest podstawą obu systemów. Edytor tekstu. Kompilator. Usługa sieciowa. Każdy z nich jest odrębnym instrumentem. Przekazujesz wyjście jednego programu na wejście innego. Taka konstrukcja sprawia, że ​​oba systemy są niezwykle elastyczne. Jeśli nie podoba Ci się domyślny edytor tekstu w systemie Linux, możesz go zastąpić. Jeśli nie podoba Ci się powłoka w systemie Unix, zastąpisz ją. Systemu to nie obchodzi. Po prostu wykonuje polecenia.

Interfejs wiersza poleceń

CLI (interfejs wiersza poleceń) jest powszechnym językiem.

Zarówno Unix, jak i Linux korzystają z wiersza poleceń dla zaawansowanych użytkowników. Graficzny interfejs użytkownika (GUI) jest opcjonalny. Wymagana jest skorupa.

Polecenia takie jak ls, cd, grep i chmod są standardem w większości systemów uniksowych. Dzięki tej spójności administratorzy systemów mogą przełączać się między różnymi wersjami Uniksa i różnymi dystrybucjami Linuksa bez konieczności ponownego uczenia się, jak z nich korzystać. Składnia może się nieznacznie różnić. Flagi mogą się różnić. Ale logika pozostaje ta sama.

Wpisujesz polecenie. System to robi. Pojawi się wynik. Żadnych nieporozumień związanych z przeciąganiem i upuszczaniem. Tylko bezpośrednia kontrola.

Zgodność i interoperacyjność z POSIX

Jak zapewnić pewien poziom interoperacyjności?

POSIX. Przenośny interfejs systemu operacyjnego.

Większość odmian Uniksa i wiele dystrybucji Linuksa jest zgodnych ze standardami POSIX. Ten standard definiuje zestaw interfejsów API, narzędzi wiersza poleceń i zachowań, które musi obsługiwać system operacyjny.

Zgodność z POSIX gwarantuje, że oprogramowanie napisane dla jednego systemu uniksowego ma szansę działać na innym. Nie gwarantuje doskonałej tolerancji. Gwarantuje poziom podstawowy. Umożliwia programistom jednorazowe napisanie kodu i wdrożenie go na wielu platformach przy minimalnych zmianach.

Dzięki tej standaryzacji wiele aplikacji dla przedsiębiorstw może działać zarówno w systemie Solaris, jak i Ubuntu. Podstawowe jądro jest inne. Wyposażenie może się różnić. Jednak poziom API jest na tyle podobny, że można wypełnić tę lukę.

Wybór właściwej opcji

Decyzja nie dotyczy tego, co jest „najlepsze”. Chodzi o to, co najlepiej sprawdza się w przypadku Twoich ograniczeń.

Jeśli potrzebujesz certyfikowanego wsparcia sprzętowego, gwarantowanej odpowiedzialności dostawcy i dysponujesz budżetem na licencje własnościowe, Unix będzie bezpieczniejszym wyborem. Jest stabilny. Jest drogi. To jest kontrolowane.

Jeśli potrzebujesz elastyczności, dostosowania i efektywności kosztowej, Linux będzie właściwym wyborem. Jest otwarte. Można to dostosować. Jest napędzana przez społeczność. Wydobędziesz to, co w to włożysz.

Żadne z nich nie znika. Unix obsługuje infrastrukturę krytyczną starszych systemów korporacyjnych. Linux napędza nowoczesny Internet, przetwarzanie w chmurze i świat mobilny. Współistnieją. Konkurują. Wpływają na siebie nawzajem.

Często zadawane pytania

Czy Windows 10 jest lepszy od Linuksa?

To zależy od przypadku użycia. Windows 10 dominuje na rynku konsumenckim ze względu na kompatybilność oprogramowania i łatwość obsługi. Linux jest ogólnie bezpieczniejszy i wydajniejszy w środowiskach serwerowych. Jest także bardziej konfigurowalny. Jeśli chcesz uruchomić określone oprogramowanie dostępne tylko dla systemu Windows, jesteś ograniczony do systemu Windows. Jeśli chcesz mieć kontrolę nad każdym aspektem swojego systemu, Linux wygrywa.

Czy Linux jest komputerem (PC)?

Nie. Linux to system operacyjny. Działa na komputerach stacjonarnych, serwerach, urządzeniach wbudowanych i superkomputerach. To nie jest sprzęt. To jest oprogramowanie sterujące sprzętem. Instalujesz Linuksa na komputerze PC. Sam komputer PC jest maszyną fizyczną.