Cała historia Linuxa. Część I: jak wszystko się zaczęło

W tym roku jądro Linux obchodzi 27. rocznicę. System operacyjny oparty na jego podstawach używają wielu korporacji, instytucji rządowych, badawczych i centra danych na całym świecie.

Przez ponad ćwierć wieku ukazało się wiele artykułów (w tym także na Habrze), opowiadających o różnych etapach historii Linuxa. W tej serii materiałów postanowiliśmy wyróżnić najważniejsze i najbardziej interesujące fakty związane z tym systemem operacyjnym.

Zaczniemy od prac, które poprzedzały Linuxa, oraz historii powstania pierwszej wersji jądra.

Cała historia Linuxa. Część I: jak wszystko się zaczęło
/ Flickr / Toshiyuki IMAI / CC BY-SA

Era "wolnego rynku"

Pojawienie się Linuxa uważane jest za jedno z najważniejszych wydarzeń w historii oprogramowania open source. Narodziny tego systemu operacyjnego w dużej mierze zawdzięczają pomysłom i narzędziom, które dojrzewały przez dziesięciolecia w środowisku programistów. Dlatego na początku zwrócimy się do korzeni ruchu open source.

Na początku lat 50. większość oprogramowania w USA była tworzona przez pracowników uniwersytetów i laboratoria i była dystrybuowana bez jakichkolwiek ograniczeń. Działania te miały na celu uproszczenie wymiany wiedzy w środowisku naukowym. Pierwszym rozwiązaniem open source z tego okresu uważane jest był system A-2, napisany dla komputerów UNIVAC Remington Rand w 1953 roku.

W tym samym okresie powstała pierwsza grupa programistów oprogramowania wolnego — SHARE. Pracowali oni według modelu "wspólnej produkcji peer-to-peer". Owocem pracy tej grupy pod koniec lat 50. była stała się jednoimienna OS.

Ten system (i inne produkty SHARE) cieszył się popularnością wśród producentów sprzętu komputerowego. Dzięki polityce otwartości mogli oni oferować klientom nie tylko sprzęt, ale również oprogramowanie bez dodatkowych kosztów.

Przybycie handlu i narodziny Unix

W 1959 roku firma Applied Data Research (ADR) otrzymała zlecenie od organizacji RCA — napisanie programu do automatycznego wypełniania schematów blokowych. Programiści wykonali pracę, ale nie doszli do porozumienia z RCA w sprawie ceny. Aby nie "wyrzucać" gotowego produktu, ADR przerobiło rozwiązanie na platformę IBM 1401 i zaczęło je sprzedawać na własną rękę. Sprzedaż jednak nie szła najlepiej, ponieważ wielu użytkowników czekało na darmową alternatywę rozwiązania ADR, którą planowano w IBM.

W ADR nie mogli pozwolić sobie na wydanie darmowego produktu o podobnej funkcjonalności. Dlatego programista Martin Goetz z ADR złożył patent na program i w 1968 roku jako pierwszy w historii USA otrzymał jego. Od tego momentu liczy się epokę komercjalizacji w branży rozwoju – z „boni” do sprzętu oprogramowanie przekształciło się w samodzielny produkt.

W przybliżeniu w tym samym czasie niewielki zespół programistów z Bell Labs rozpoczął pracę nad systemem operacyjnym dla mini-komputera PDP-7 – Unix. Unix został stworzony jako alternatywa dla innego systemu operacyjnego – Multics.

Ten ostatni był zbyt skomplikowany i działał tylko na platformach GE-600 i Honeywell 6000. Przepisany w języku C Unix miał stać się przenośny i łatwiejszy w użyciu (w dużej mierze dzięki hierarchicznej strukturze plików z jednym katalogiem głównym).

W latach 50-tych holding AT&T, do którego wtedy należały Bell Labs, podpisał umowę z rządem USA, zabraniającą korporacji sprzedaży oprogramowania. Z tego powodu pierwsi użytkownicy Uniksa – organizacje naukowe – otrzymywali kod źródłowy systemu operacyjnego za darmo.

AT&T oddaliło się od koncepcji swobodnego rozpowszechniania oprogramowania w początkach lat 80-tych. W rezultacie wymuszonego rozłamu korporacji na kilka firm zakaz sprzedaży oprogramowania przestał obowiązywać, a holding przerwał bezpłatne rozpowszechnianie Uniksa. Programiści byli zagrożeni pozwami za nieautoryzowaną wymianę kodu źródłowego. Groźby nie były bezpodstawne – od 1980 roku programy komputerowe stały się obiektem praw autorskich w USA.

Nie wszyscy programiści byli zadowoleni z warunków, jakie narzucał AT&T. Szukaniem alternatywnego rozwiązania zajęła się grupa entuzjastów z Uniwersytetu Kalifornijskiego w Berkeley. W latach 70-tych uczelnia uzyskała licencję od AT&T, a entuzjaści zaczęli tworzyć na jej podstawie nowy dystrybucję, która później stała się Unix Berkeley Software Distribution, czyli BSD.

Otwartoźródłowy system podobny do Uniksa odniósł sukces, na co od razu zwróciły uwagę AT&T. Firma złożyła do sądu, a autorzy BSD musieli usunąć i zastąpić cały użyty kod źródłowy Unix. To trochę opóźniło rozpowszechnienie Berkeley Software Distribution w tych latach. Ostatnia wersja systemu ukazała się w 1994 roku, ale sam fakt pojawienia się wolnego i otwartego systemu operacyjnego stał się ważnym kamieniem milowym w historii projektów open source.

Cała historia Linuxa. Część I: jak wszystko się zaczęło
/ Flickr / Christopher Michel / CC BY / Фото обрезано

Powrót — do źródeł wolnego oprogramowania

Pod koniec lat 70. pracownicy Massachusetts Institute of Technology napisano stworzyli sterownik do drukarki zainstalowanej w jednej z sal wykładowych. Gdy papier się zaciął i powstała kolejka zadań do druku, użytkownicy otrzymywali powiadomienie z prośbą o rozwiązanie problemu. Później w dziale zainstalowano nową drukarkę, dla której pracownicy chcieli dodać taką funkcję. Aby to zrobić, potrzebny był kod źródłowy pierwotnego sterownika. Programista Richard M. Stallman poprosił swoich kolegów o ten kod, ale otrzymał odmowę — okazało się, że to poufne informacje.

Ten nieznaczny epizod być może stał się jednym z przełomowych momentów w historii wolnego oprogramowania. Stallman był oburzony zaistniałą sytuacją. Nie podobały mu się ograniczenia narzucane na wymianę kodu źródłowego w środowisku IT. Dlatego postanowił stworzyć otwarty system operacyjny i umożliwić entuzjastom swobodne wprowadzanie w nim zmian.

We wrześniu 1983 roku ogłosił powstanie projektu GNU — GNU's Not UNIX („GNU nie Unix”). Jego podstawą był manifest, który stał się również bazą dla licencji na wolne oprogramowanie — GNU General Public License (GPL). Ten krok zapoczątkował aktywne ruchy na rzecz otwartego oprogramowania.

Kilka lat później profesor Andrew S. Tanenbaum z Uniwersytetu WOLNEGO w Amsterdamie opracował system podobny do Unix, Minix, jako materiał dydaktyczny. Chciał, aby był jak najbardziej dostępny dla studentów. Wydawca jego książki, do której dołączony był system operacyjny, nalegał by przynajmniej na symboliczną opłatę za pracę z systemem. Andrew i wydawca osiągnęli kompromis w kwestii ceny licencji wynoszącej 69 dolarów. Na początku lat 90. Minix zdobyła popularność wśród programistów. A jej los był dzięki temu fundamentem do stworzenia Linuxa.

Cała historia Linuxa. Część I: jak wszystko się zaczęło
/ Flickr / Christopher Michel / CC BY

Narodziny Linuxa i pierwszych dystrybucji

W 1991 roku młody programista z Uniwersytetu w Helsinkach Linus Torvalds zgłębiał Minix. Jego eksperymenty z systemem operacyjnym przekształciły się w pracach nad zupełnie nowym jądrem. 25 sierpnia Linus zorganizował otwartą ankietę wśród użytkowników Minix, pytając, co ich nie satysfakcjonuje w tym systemie operacyjnym, i ogłosił rozwój nowego systemu operacyjnego. W sierpniowym liście znajduje się kilka ważnych tez dotyczących przyszłego systemu operacyjnego:

  • system będzie darmowy;
  • system będzie podobny do Minix, ale kod źródłowy będzie całkowicie inny;
  • system nie będzie ‚duży i profesjonalny jak GNU’.

25 sierpnia uznaje się za dzień narodzin Linuxa. Sam Linus liczy czas od innej daty — 17 września. To właśnie tego dnia załadował pierwszy wydanie Linuxa (0.01) na serwer FTP i wysłał e-mail do osób, które wykazały zainteresowanie jego ogłoszeniem i ankietą. W kodzie źródłowym pierwszego wydania pozostało słowo „Freaks”. Tak Torvalds planował nazwać swoje jądro (połączenie słów „free”, „freak” i Unix). Administrator serwera FTP nie zaakceptował tej nazwy i zmienił nazwę projektu na Linux.

Następnie miała miejsce seria aktualizacji. W październiku tego samego roku wydano wersję jądra 0.02, a w grudniu — 0.11. Początkowo Linux był dystrybuowany bez licencji GPL. Oznaczało to, że programiści mogli korzystać z jądra, modyfikować je, ale nie mogli sprzedawać wyników swojej pracy. Od lutego 1992 roku wszystkie ograniczenia komercyjne zostały zniesione — z wydaniem wersji 0.12 Torvalds zmienił licencję na GNU GPL v2. Ten krok Linus później nazwał jednym z kluczowych czynników sukcesu Linuxa.

Popularność Linuxa wśród programistów Minix wzrastała. Przez jakiś czas dyskusje prowadzone były w grupie comp.os.minix w sieci Usenet. Na początku 1992 roku twórca Minix, Andrew Tanenbaum, zainicjował w społeczności spór na temat architektury jąder, twierdząc, że „Linux jest przestarzały”. Jego zdaniem przyczyną była monolityczna architektura systemu operacyjnego, która w wielu aspektach ustępuje mikrojądru Minix. Kolejna jego pretensja dotyczyła „uzależnienia” Linuxa od linii procesorów x86, która według prognoz profesora wkrótce miała zniknąć. W polemikę zaangażował się sam Linus oraz użytkownicy obu systemów operacyjnych. W wyniku sporu społeczność podzieliła się na dwa obozy, a zwolennicy Linuxa uzyskali swoją grupę — comp.os.linux.

Społeczność zajmowała się rozszerzaniem funkcjonalności podstawowej wersji — opracowywano pierwsze sterowniki, system plików. Najwcześniejsze wersje Linuxa zmieściły się na dwóch dyskietkach składały się z dysku rozruchowego z jądrem i dysku głównego, który instalował system plików oraz kilka podstawowych programów z narzędzi GNU.

Z biegiem czasu społeczność zaczęła opracowywać pierwsze dystrybucje oparte na Linuxie. Większość wczesnych wersji tworzona była przez entuzjastów, a nie przez firmy.

Pierwsza dystrybucja — MCC Interim Linux — została stworzona na bazie wersji 0.12 w lutym 1992 roku. Jej twórcą był programista z Centrum Informatyki Uniwersytetu w Manchesterze — nazwany opracowanie „eksperymentem” w celu usunięcia niektórych niedociągnięć w procedurze instalacji jądra oraz dodania szeregu funkcji.

Wkrótce potem liczba dystrybucji użytkowników znacznie wzrosła. Wiele z nich pozostało lokalnymi projektami, „które przetrwały” nie dłużej niż pięć lat, na przykład Softlanding Linux System (SLS). Jednak były także dystrybucje, które nie tylko „zakorzeniły się” na rynku, ale także w dużym stopniu wpłynęły na dalszy rozwój projektów open-source. W 1993 roku odbyła się premiera dwóch dystrybucji — Slackware i Debian — które zapoczątkowały poważne zmiany w branży wolnego oprogramowania.

Debian stworzył Ian Murdock przy wsparciu Free Software Foundation Richarda Stallmana. Został pomyślany jako „estetyczna” alternatywa dla SLS. Debian jest wspierany do dziś i jest jedną z najpopularniejszych opracowań opartych na Linuksie. Na jego podstawie stworzono szereg innych ważnych dystrybucji w historii jądra — na przykład Ubuntu.

Jeśli chodzi o Slackware, jest to kolejny wczesny i udany projekt oparty na Linuksie. Jego pierwsza wersja została wydana w 1993 roku. Według niektórych oszacowań, po dwóch latach na Slackware przypadało już około 80% instalacji Linuksa. A dziesięciolecia później dystrybucja pozostała popularna wśród programistów.

W 1992 roku w Niemczech została założona firma SUSE (akronim od Software- und System-Entwicklung — rozwój oprogramowania i systemów). To ona pierwsza zaczęła wydawać produkty oparte na Linuksie dla klientów biznesowych. Pierwszą dystrybucją, z którą zaczęła pracować SUSE, był właśnie Slackware, dostosowany dla użytkowników niemieckojęzycznych.

Od tego momentu rozpoczyna się era komercjalizacji w historii Linuksa, o której opowiemy w następnym artykule.

Posty z bloga korporacyjnego 1cloud.ru:

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster