Historia systemu operacyjnego Unix

system operacyjny

Unix jest przenośnym systemem operacyjnym na wiele architektur komputerowych i mający wiele odmian i modyfikacji. Więcej: Unix.

Narodziny edytuj

 
„Drzewo genealogiczne” Uniksa

Pierwsza wersja systemu operacyjnego Unix powstała w Bell Labs firmy AT&T w stanie New Jersey w 1969 na komputery architektury PDP-7 i PDP-9 firmy DEC. Jej głównymi autorami byli Ken Thompson i Dennis Ritchie. Początkowy cel stworzenia nowego systemu operacyjnego został osiągnięty i autorzy rozpoczęli prace nad drugą wersją systemu na komputery PDP-11, którą nazwano oficjalnie pierwszą edycją Uniksa. Tę wersję uruchomiono w 1971 roku. W tym czasie ukazał się Unix Programmer's Manual, który był de facto opisem ówczesnego Uniksa. Drugie wydanie systemu Unix pojawiło się w 1972 roku, w którym wprowadzono pojęcie łącza komunikacyjnego łączącego procesy. Minikomputery PDP-11 uzyskały wielką popularność i wraz z nimi także Unix. Dlatego wkrótce napisano trzecią wersję systemu operacyjnego Unix[1][2].

Autorzy zrezygnowali z pisania systemu w asemblerze i przenieśli całość kodu do stworzonego przez Dennisa Ritchie wysokopoziomowego języka C, co zaowocowało przenośnością systemu (dziś język C jest uważany za niskopoziomowy z powodu występowania w nim wskaźników).

W roku 1974 Ritchie i Thompson opublikowali artykuł o Uniksie w Communications of the ACM[1]. Opisano w nim strukturę i sposób jego działania. W 1978 roku wydano specjalne wydanie Bell System Technical Journal nt. Uniksa.

Popularyzacja edytuj

1975 – Unix Szóstego Wydania – inaczej Wersja Szósta – rozprowadzana nieodpłatnie w uczelniach dla zastosowań akademickich. Przyczyniło się to do gwałtownego rozwoju systemu, powstawania poza AT&T rozszerzeń i oprogramowania. Legendą tego okresu stała się napisana przez profesora Uniwersytetu Nowej Południowej Walii w Australii, Johna Lionsa tzw. Lions Book zawierająca pełny kod V.6 wraz z komentarzem wers po wersie.

Unix szybko zadomowił się w Uniwersytecie Kalifornijskim Berkeley, gdzie został przeniesiony na zastępującą PDP-11 architekturę VAX. Pierwsza wersja wydana na minikomputery VAX była dostępna jako część Third Berkeley Software distribution, czyli 3BSD.

W 1979 ukazała się wersja 7 (Version 7) – była pierwszą szeroko dostępną, choć AT&T nie zapewniał obsługi i serwisu. Jej zestaw funkcji i programów był aż do czasu ukazania się specyfikacji IEEE i POSIX główną bazą unifikującą rodzące się różne odmiany Uniksa.

Jednym z ważniejszych wydarzeń we wczesnej historii systemu Unix był projekt agencji DARPA przyjęcia jednego systemu operacyjnego na wszystkich komputerach ARPANET. DARPA zdecydowała, że tym systemem będzie wersja Berkeley systemu Unix. W ramach pierwszego kontraktu, który trwał w latach 1981–1982, powstał system 4BSD oraz 4.1BSD. Sukces zaowocował kolejnym dwuletnim kontraktem, którego owocem był 4.2BSD, będący pierwszym systemem operacyjnym zawierającym obsługę TCP/IP.

Ekspansja edytuj

Wraz z początkiem lat 80. AT&T zdecydowała się na komercjalizację Uniksa. W 1980 roku licencję na rozwijanie jego kodu sprzedano firmie Santa Cruz Operations, która na zlecenie Microsoftu, miała przygotować Xenix, jego wersję Uniksa. W 1983 roku ukazała się pierwsza wersja komercyjna Uniksa z AT&T, System V.

Wraz z komercjalizacją AT&T przestała udostępniać kod źródłowy systemu poza licencjami komercyjnymi. Spowodowało to protesty wśród wielu inżynierów akademickich (UCB, MIT), którzy do tej pory pisali własne rozszerzenia systemu i uczestniczyli w jego rozwoju (vide: BSD). Blokada nałożona na kod stała się przyczyną powstania na bazie społeczności użytkowników i niezależnych twórców Uniksa ruchu wolnego oprogramowania. Założona w 1983 roku przez Richarda Stallmana z MIT Free Software Foundation postawiła sobie za cel stworzenie wolnego systemu uniksowego bez kodu pochodzącego z AT&T.

W przeciągu lat 80. powstało mnóstwo komercyjnych wersji systemu, ambicją większości firm informatycznych stało się posiadanie własnej odmiany Uniksa. Większość tych projektów bazowała na kodzie AT&T, znano jako System III, (SCO Xenix, SGI IRIX, DEC Ultrix i in.), inne rozwijane były w oparciu o wolnodostępny kod BSD (SunOS, NeXTStep) lub innych projektów akademickich, np. Mach (NeXTStep), niektóre łączyły cechy obu gałęzi lub ewoluowały z jednej do drugiej (odpowiednio IBM AIX i HP-UX). W tym czasie na Uniwersytecie Berkeley w pracowniach CSRG cały czas rozwijano BSD.

Unifikacja edytuj

Rozdrobnienie systemu na różne wydania i izolacja zespołów programistycznych szybko spowodowały kłopoty ze zgodnością poszczególnych odmian, co zaowocowało staraniami o standaryzację rozwiązań, wywołań i funkcji. Zapotrzebowanie to próbowało spełniać konsorcjum X/Open Company, które realizowało świeżo powstałą ideę open system.

W 1988 roku Sun i AT&T zainicjowały związek, którego wynikiem było najpierw powstanie konsorcjum Unix International oraz wzorcowego systemu SVR4, który łączył zalety SysV i BSD – potem w oparciu o niego powstawały nowy Unix Suna, Solaris (1991) oraz kolejne wersje systemów SCO, m.in. Xeniksa. Konkurencyjni wobec duumwiratu producenci zawiązali Open Software Foundation (OSF), pod auspicjami której ukazał się z czasem ekumeniczny OSF/1, silnie bazujący na BSD. W 1988 roku opublikowano specyfikację POSIX.1 – stanowiącą podstawę tego, co nazywamy Uniksem.

Rewolucja edytuj

Wkrótce z początkiem lat 90. wojujące frakcje stanęły w obliczu opartego na Internecie gwałtownego rozwoju wolnych systemów uniksowych. W 1991 roku Linus Torvalds zaanonsował prace nad jądrem o nazwie Linux, które w połączeniu z narzędziami GNU z FSF stworzyło kompletny uniksopodobny system operacyjny. AT&T, a potem Novell, który kupił (22 grudnia 1992) prawa do Uniksa, próbowały przy pomocy procesu sądowego (1992–1994) powstrzymać rozwój systemów pisanych w oparciu o niezmiennie wolnodostępny kod z CSRG Berkeley. Pozew zahamował rozwój gałęzi BSD, powodując pośrednio wycofanie się CSRG z dalszych prac nad kodem oraz porzucenie budowanego na nim otwartego projektu 386BSD. Jednak rok 1993 to wyłonienie się na bazie ostatniego wydania 4.4BSD i porzuconego kodu 386BSD dwóch nowych, wolnych projektów FreeBSD i NetBSD. (więcej: Historia BSD)

Novellowi nie udało się skutecznie połączyć dwóch udanych projektów: swych usług sieciowych i Uniksa. W 1993 roku ukazała się ostatnia wersja SysV, znana jako SVR4.2MP, wcześniej firma przekazała prawa do przydzielania marki Unix oraz regulowania Single UNIX Specification (SUS) organizacji X/Open, która dwa lata później rozpoczęła program standaryzacji, UNIX 95. W tym samym roku Novell zdecydował się sprzedać kod UnixWare – pod taką nazwą sprzedawał System V – dla SCO a dawne Bell Labs Hewlett-Packardowi.

W 1996 z połączenia Open Software Foundation i X/Open powstało The Open Group, które przyznaje prawo do posługiwania się nazwą UNIX w odniesieniu do systemów komputerowych oraz opiekuje się SUS.

W 1997 roku ukazała się druga wersja SUS – pierwsza publicznie dostępna (wprowadzała 64-bitowość, wątki), a w 2001 trzecia integrująca POSIX z rozszerzeniami przemysłowymi.

Przełom tysiącleci i 30-lecie Uniksa to gwałtowny rozwój wolnych systemów i wypieranie przez nie komercyjnych wersji do zastosowań niszowych. Wielu producentów i sprzedawców Uniksów wprowadza do swej oferty usługi i własne odmiany Linuksa lub włącza się w rozwijanie opartych na nich technologii (BSDI, HP, IBM, SCO, Sun, Yahoo).

Przypisy edytuj

  1. a b Dennis M. Ritchie, Ken Thompson. The UNIX Time-sharing System. „Commun. ACM”. 17 (7), s. 365-375, 1974-07. DOI: 10.1145/361011.361061. ISSN 0001-0782. (ang.). 
  2. Eric S. Raymond: The art of Unix programming. Addison-Wesley Professional, 2003.

Zobacz też edytuj

Linki zewnętrzne edytuj