Historia Uniksa: od Bell Labs do iPhone'a

Autor: Judy Howell
Data Utworzenia: 1 Lipiec 2021
Data Aktualizacji: 13 Móc 2024
Anonim
Historia Uniksa: od Bell Labs do iPhone'a - Technologia
Historia Uniksa: od Bell Labs do iPhone'a - Technologia

Zawartość



Na wynos:

Fakt, że Unix jest nadal używany po ponad 40 latach, świadczy o jego wszechstronności.

Możesz myśleć, że Twój smartfon lub tablet jest zupełnie nowy, ale technologia, która się za nim kryje, ma długą historię sięgającą lat 60. XX wieku. Jeśli masz urządzenie z systemem iOS lub Android, jest ono oparte na systemie operacyjnym o nazwie Unix, który został opracowany w Bell Labs. Nawet jeśli masz komputer z systemem Windows, komunikuje się on z wieloma serwerami w ciągu dnia, z których wiele działa również w systemie Unix. Ze względu na długą historię nieco zaskakujące jest to, że Unix jest nadal tak powszechny. Zobacz, jak to się stało.

Wczesna historia

Geneza tego, co ostatecznie stało się Unixem, rozpoczęła się w połowie lat 60. XX wieku od projektu o nazwie MULTICS. Konsorcjum organizacji, w tym MIT, GE i Bell Labs, połączyło siły, aby stworzyć system do obsługi „narzędzia obliczeniowego”. Dzisiaj możemy to nazwać chmurą obliczeniową. Niestety MULTICS mógł być wtedy zbyt daleko w swoim czasie, a Bell Labs ostatecznie wycofał się z projektu w 1969 roku, pozostawiając kilku programistów, Dennisa Ritchie i Kena Thompsona, którzy utknęli na starszym sprzęcie.


Gdy Thompson i Ritchie zasmakowali w interaktywnym przetwarzaniu, kiedy świat nadal polegał głównie na przetwarzaniu wsadowym, nie mogli wrócić. Dlatego postanowili rozpocząć własny projekt, w którym próbowano zapisać niektóre z najlepszych funkcji MULTICS.

„Chcieliśmy zachować nie tylko dobre środowisko do programowania, ale system, wokół którego mogłaby powstać społeczność” - napisał Ritchie w 1979 roku. „Z doświadczenia wiedzieliśmy, że esencja informatyki komunalnej dostarczana jest zdalnie -dostęp, maszyny współdzielone w czasie, to nie tylko wpisywanie programów w terminalu zamiast klawiatury, ale zachęcanie do bliskiej komunikacji. ”

Oprócz tych wzniosłych bramek Thompson miał również bardziej osobisty motyw: chciał zagrać w wymyśloną przez siebie grę o nazwie „Podróż kosmiczna”.

Thompson i Ritchie postanowili wdrożyć swój system na PDP-7 firmy Digital Equipment Corporation. Naszkicowali podstawowy system i napisali go w języku asemblera. Postanowili nazwać to „UNICS” jako gra słów w MULTICS. Wkrótce zmienili nazwę na „Unix”.


Potrzebowali mocniejszego komputera, więc namówili kierownictwo na zakup PDP-11 w celu opracowania aplikacji przetwarzającej dla działu patentowego Bell Labs. W rezultacie pierwszą aplikacją dla użytkowników końcowych dla systemu Unix była zasadniczo edycja tekstu.

Sukces doprowadził do wzrostu Uniksa w Bell Labs. Jedną z charakterystycznych cech była możliwość przekierowania danych wejściowych z jednego programu do drugiego, umożliwiając podejście „budujące blok” do rozwoju oprogramowania.

Bez błędów, bez stresu - Twój przewodnik krok po kroku do tworzenia oprogramowania zmieniającego życie bez niszczenia życia


Nie możesz poprawić swoich umiejętności programistycznych, gdy nikt nie dba o jakość oprogramowania.

Punktem zwrotnym dla Unixa było jego ponowne zaimplementowanie w C, języku zaprojektowanym przez Thompsona i Ritchiego. C był językiem wysokiego poziomu. Pisanie w ten sposób systemu operacyjnego miałoby głęboki wpływ na jego ewolucję; sprawiło, że Unix był przenośny, co oznaczało, że można go uruchomić na różnych komputerach przy stosunkowo niewielkim wysiłku. (Dowiedz się o historii języków programowania w programowaniu komputerowym: od języka maszynowego do sztucznej inteligencji).

Unix zyskał wiele uwagi, gdy Thompson i Ritchie opublikowali artykuł na temat systemu w prestiżowym czasopiśmie informatycznym Communications of the ACM w 1974 roku.

Dystrybucja oprogramowania Berkeley

Tak popularny jak Unix wchodził do Bell Labs i poza nim, AT&T, którego Bell Labs był ramieniem badawczym, nie mógł z niego skorzystać z powodu dekretu zgody. W zamian za utrzymanie monopolu na usługi telefoniczne w Stanach Zjednoczonych, nie mógł on wchodzić w żadne obszary działalności niezwiązane z telefonem, a mianowicie w oprogramowanie komputerowe, ale musiał udzielić licencji każdemu, kto o to poprosi.

Bell Labs praktycznie rozdawał uniwersytetom kopie Uniksa wraz z kodem źródłowym. Jednym z nich był UC Berkeley. Włączenie kodu źródłowego umożliwiło uczniom, zwłaszcza Billowi Joy, wprowadzanie zmian i ulepszeń. Ulepszenia te stały się znane jako Berkeley Software Distribution (BSD).

W ramach projektu BSD pojawiło się wiele innowacji, w tym pierwsza wersja systemu Unix, która wykorzystuje wirtualną pamięć linii minikomputerów DECX VAX i edytora vi.

Najważniejszym dodatkiem była implementacja TCP / IP, która uczyniła Unixa, a zwłaszcza BSD Unixa, wybranym systemem operacyjnym w rodzącym się Internecie. (Dowiedz się więcej o rozwoju TCP / IP w Historii Internetu.)

Wersje oparte na BSD stały się również popularne na rozwijającym się rynku stacji roboczych, szczególnie na komputerach Sun Microsystems, do których współtworzył Bill Joy.

GNU i Linux

Sun nie była jedyną firmą handlującą Linuksem. Po rozpadzie AT&T na początku lat 80., w końcu udało mu się wejść do branży komputerowej. AT&T wprowadził System V, który był ukierunkowany na większe instalacje dla wielu użytkowników.

Ale przynajmniej jedna osoba nie była zadowolona ze sposobu, w jaki przemysł przeniósł się ze środowiska akademickiego, w którym wszyscy dzielili się kodem źródłowym do komercyjnego świata, w którym ludzie „gromadzili” kod.

Richard Stallman, programista MITs Artificial Intelligence Laboratory, ogłosił projekt GNU (GNU nie Unix) w 1983 roku.

„Uważam, że Złota Reguła wymaga, że ​​jeśli podoba mi się program, muszę dzielić się nim z innymi ludźmi, którzy go lubią” - napisał Stallman w swoim Manifeście GNU. „Sprzedawcy oprogramowania chcą podzielić użytkowników i podbić ich, sprawiając, że każdy użytkownik zgadza się nie dzielić z innymi. Nie odmawiam w ten sposób solidarności z innymi użytkownikami. Nie mogę z czystym sumieniem podpisać umowy o nieujawnianiu ani licencji na oprogramowanie”.

Projekt GNU miał na celu zastąpienie zastrzeżonego oprogramowania Unix wolnym oprogramowaniem, „jak w mowie, a nie w piwie”, jak to ujął Stallman. Innymi słowy, z kodem źródłowym i licencjami, które faktycznie zachęcały ludzi do rozdawania go.

Jakkolwiek szalony był ten schemat, Stallmanowi udało się przyciągnąć grupę programistów do pracy nad projektem, opracowując wysokiej jakości oprogramowanie, takie jak edytory, kompilatory i inne narzędzia, wszystkie wydane na podstawie licencji (zwłaszcza General Public License (GPL)) ), które gwarantowało dostęp do kodu źródłowego. Wpływ GNU przekonał nawet programistów BSD do usuwania kodu AT&T z systemu, dzięki czemu jest w pełni redystrybucyjny.

Ostatnim brakującym elementem było jądro lub rdzeń systemu. Jądro GNU, HURD, okazało się trudniejsze do wdrożenia niż oczekiwano. Na szczęście jeden projekt hobby absolwentów z Finlandii okazał się łaską ratującą GNU. Linus Torvald wypuścił jądro Linuksa w 1991 roku i chociaż nie zamierzał tego zrobić, rozpoczął rewolucję w systemach operacyjnych. Wkrótce zaczęły pojawiać się „dystrybucje” narzędzi dla Linuksa i GNU, pozwalając każdemu z wymaganymi umiejętnościami mieć system operacyjny podobny do Uniksa podobny do tych, które kosztują tysiące dolarów używanych na uniwersytetach i laboratoriach badawczych. Co najlepsze, mogli to zrobić na zwykłym komputerze, bezpłatnie. (Przeczytaj więcej o dzisiejszych popularnych dystrybucjach w Linux Distros: Who Ones Best?)

Nie można było się oprzeć rosnącej liczbie startupów i dostawców usług internetowych w latach 90. Mogli bezpłatnie pobrać oprogramowanie serwerowe i zatrudnić młodych, inteligentnych absolwentów informatyki, którzy umieli je obsługiwać za niewielkie pieniądze. Stos serwerów Linux / Apache / MySQL / PHP jest nadal jedną z platform preferowanych przez dostawców usług internetowych.

Going Mobile

Chociaż Unix ma ponad 40 lat, jego wszechstronność pozwala na zastosowania znacznie wykraczające poza oryginalne minikomputery, na których po raz pierwszy działał. Jednym z najbardziej widocznych jest Apple iOS, częściowo oparty na FreeBSD, który sam opiera się na oryginalnym kodzie BSD. Drugi główny system operacyjny Android, oparty na zmodyfikowanym jądrze Linuksa. Mimo że żaden z nich nie zawiera oryginalnego kodu uniksowego, zachowuje wiele podstawowych pomysłów, nawet w zgrabnych interfejsach wizualnych, które są dalekie od linii poleceń, które większość ludzi kojarzy z Uniksem.

Obecne główne platformy mobilne oparte na Uniksie pokazują jego wszechstronność. Jest stary, ale wydaje się, że nie ma oznak spowolnienia, chociaż jeden z jego oryginalnych twórców, Dennis Ritchie, zmarł w 2011 roku. Więc następnym razem, gdy będziesz chciał myśleć o swoim smartfonie lub tablecie jako zupełnie nowym, pomyśl jeszcze raz - technologia, która ją popiera, przeszła bardzo długą drogę.