Historia komputerów elektronicznych, część 1: prolog

Historia komputerów elektronicznych, część 1: prolog

Inne artykuły cyklu:

Jak widzieliśmy w W poprzednim artykule, inżynierowie radiowi i telefoniczni w poszukiwaniu potężniejszych wzmacniaczy odkryli nowy obszar technologii, który szybko nazwano elektroniką. Wzmacniacz elektronowy można było łatwo przekształcić w cyfrowy przełącznik, działający z dużo większą prędkością niż jego elektromechaniczny kuzyn — przekaźnik telefoniczny. Dzięki braku części mechanicznych lampa elektronowa mogła włączać się i wyłączać w ciągu mikrosekundy lub jeszcze szybciej, a nie w ciągu dziesiątek milisekund lub dłużej, jakie były wymagane przez przekaźniki.

W latach 1939-1945 na bazie tych nowych komponentów elektronicznych powstały trzy komputery. Daty ich budowy nieprzypadkowo zbiegają się z okresem II wojny światowej. Ten konflikt — bezprecedensowy w historii pod względem tego, jak wciągał ludzi w jarzmo wojenne — na zawsze zmienił relacje zarówno między państwami, jak i między nauką a technologią, a także przyniósł na świat wiele nowych urządzeń.

Historie trzech pierwszych komputerów elektronicznych są splątane z wojną. Pierwszy z nich był poświęcony dekodowaniu niemieckich wiadomości i pozostawał w tajemnicy aż do lat 70., kiedy to stracił wszelkie zainteresowanie, poza historycznym. Drugim, o którym większość czytelników powinna słyszeć, był ENIAC, wojskowy kalkulator, który ukończono zbyt późno, aby pomógł w wojnie. Ale tutaj przyjrzymy się najwcześniejszej z tych trzech maszyn, dziełu Johna Vincenta Atanasowa.

Atanasow

W 1930 roku Atanasow, urodzony w Ameryce syn emigranta z osmańskiej Bułgarii, wreszcie spełnił swoją młodzieńczą marzenie i został teoretycznym fizykiem. Ale, jak w przypadku większości podobnych dążeń, rzeczywistość okazała się nie taka, jakiej się spodziewał. W szczególności, jak większość studentów inżynierii i nauk fizycznych w pierwszej połowie XX wieku, Atanasow musiał znosić uciążliwe ciężary ciągłych obliczeń. Jego praca doktorska na Uniwersytecie Wisconsin dotycząca polaryzacji helu wymagała ośmiu tygodni męczących obliczeń przy użyciu mechanicznego kalkulatora biurkowego.

Historia komputerów elektronicznych, część 1: prolog
John Atanasow w młodości

Do 1935 roku, już zatrudniony jako profesor na Uniwersytecie Stanu Iowa, Atanasow postanowił coś zrobić z tym ciężarem. Zaczął rozważać możliwe drogi budowy nowej, bardziej wydajnej maszyny obliczeniowej. Odrzuciwszy metody analogowe (takie jak różnicowy analizator MIT) z powodu ich ograniczeń i błędów, zdecydował się zbudować maszynę cyfrową, która pracowałaby z liczbami jako z wartościami dyskretnymi, nie zaś z ciągłymi pomiarami. Od najmłodszych lat był zaznajomiony z systemem binarnym i rozumiał, że lepiej on współgra z strukturą włącz/wyłącz cyfrowego przełącznika, niż powszechnie używane liczby dziesiętne. Dlatego postanowił stworzyć maszynę binarną. Ostatecznie zdecydował, że aby była najszybsza i najbardziej elastyczna, powinna być elektroniczna, wykorzystując lampy elektronowe do obliczeń.

Atanasow musiał również określić, w jakim zakresie zadań – do jakich konkretnych obliczeń miała służyć jego maszyna? Ostatecznie zdecydował, że będzie zajmować się rozwiązywaniem układów równań liniowych, redukując je do jednej zmiennej (za pomocą metody Gaussa) – takich samych obliczeń, które dominowały w jego dysertacji. Będzie obsługiwał do trzydziestu równań, z maksymalnie trzydziestoma zmiennymi w każdym. Taka maszyna mogłaby rozwiązywać kluczowe problemy dla naukowców i inżynierów, a jednocześnie wydawała się nie nadmiernie skomplikowana.

Dzieło sztuki

Do połowy lat 30. technologia elektroniczna osiągnęła niezwykłą różnorodność w porównaniu do początków sprzed 25 lat. Dwie technologie szczególnie dobrze pasowały do projektu Atanasowa: przekaźnik bistabilny i licznik elektroniczny.

Od XIX wieku inżynierowie telegraphu i telefonu mieli do dyspozycji wygodne urządzenie zwane przełącznikiem. Przełącznik to bistabilny przekaźnik, który wykorzystuje magnesy trwałe do utrzymania go w stanie, w którym go zostawiłeś — otwartym lub zamkniętym — aż do momentu, gdy otrzyma sygnał elektryczny do zmiany stanu. Jednak lampy elektroniczne nie były do tego zdolne. Nie miały komponentu mechanicznego i mogły być „otwarte” lub „zamknięte” w zależności od tego, czy prąd płynął, czy nie. W 1918 roku dwaj brytyjscy fizycy, William Eccles i Frank Jordan, połączyli ze sobą dwie lampy w taki sposób, że powstał „przekaźnik-trigger” — elektroniczny przekaźnik, który pozostaje włączony po aktywacji początkowym impulsem. Eccles i Jordan stworzyli swój system w celu zastosowań telekomunikacyjnych dla brytyjskiego admiralicji pod koniec I wojny światowej. Jednak obwód Ecclesa-Jordana, później znany jako trigger [ang. flip-flop], można było także postrzegać jako urządzenie do przechowywania bitu binarnego — 1, jeśli sygnał jest przesyłany, i 0 w przeciwnym przypadku. W ten sposób przez n triggerów można było przedstawić liczbę binarną n-bitową.

Około dziesięć lat po triggerze nastąpił drugi poważny przełom w elektronice, który pojawił się w świecie obliczeń: liczniki elektroniczne. I znowu, jak często się zdarzało w wczesnej historii obliczeń, nuda okazała się matką wynalazków. Fizycy badający promieniowanie cząstek subatomowych musieli albo słuchać kliknięć, albo godzinami przeglądać fotografie, licząc wykrycia w celu pomiaru szybkości promieniowania cząstek przez różne substancje. Mechaniczne lub elektromechaniczne liczniki przedstawiały kuszącą możliwość ułatwienia tych działań, ale działały zbyt wolno: nie mogły zarejestrować wielu zdarzeń występujących z różnicą milisekund.

Kluczową postacią w rozwiązaniu tego problemu był Charles Eril Wynn-Williams, pracujący pod kierunkiem Ernesta Rutherforda w Laboratorium Cavendisha w Cambridge. Wynn-Williams umiejętnie posługiwał się elektroniką i już wykorzystywał lampy (lub zawory, jak je nazywano w Wielkiej Brytanii) do budowy wzmacniaczy, dzięki którym można było słyszeć wydarzenia zachodzące z cząstkami. Na początku lat 30-tych zrozumiał, że zawory można wykorzystać do stworzenia licznika, który nazwał „licznikiem dwustopniowym” — to znaczy, binarnym licznikiem. W istocie był to zestaw przekaźników, które mogły przekazywać przełączania w górę łańcucha (w praktyce użył tyratronów, rodzaje lamp, które zawierały nie próżnię, a gaz, które mogły pozostać w włączonym stanie po całkowitej jonizacji gazu).

Licznik Wyanna-Williamsa szybko stał się niezbędnym urządzeniem laboratoryjnym dla wszystkich zajmujących się fizyką cząstek. Fizycy budowali bardzo małe liczniki, często zawierające po trzy znaki (to znaczy, zdolne do liczenia do siedmiu). To wystarczało do stworzenia bufora dla wolnego, mechanicznego licznika, oraz do rejestrowania zdarzeń zachodzących szybciej, niż mógł to zarejestrować licznik z wolno poruszającymi się częściami mechanicznymi.

Historia komputerów elektronicznych, część 1: prolog

Jednak teoretycznie takie liczniki można było rozszerzyć do dowolnych rozmiarów lub precyzji. Były to, ściślej mówiąc, pierwsze cyfrowe elektroniczne maszyny liczące.

Komputer Atanasowa-Berry

Atanasow był zaznajomiony z tą historią, co przekonało go o możliwości zbudowania elektronicznego komputera. Jednak nie zdecydował się bezpośrednio używać liczników binarnych ani przekaźników. Na początku jako podstawę systemu liczenia próbował wykorzystać nieco zmodyfikowane liczniki — bo czym jest dodawanie, jeśli nie powtarzającym się liczeniem? Jednak z jakiegoś powodu nie udało mu się stworzyć obwodów liczących wystarczająco niezawodnych, więc musiał opracować własne schematy dodawania i mnożenia. Nie mógł użyć przekaźników do tymczasowego przechowywania liczb binarnych, ponieważ miał ograniczony budżet i postawiono ambitny cel jednoczesnego przechowywania trzydziestu współczynników. Jak wkrótce zobaczymy, ta sytuacja miała poważne konsekwencje.

Do 1939 roku Atanasow zakończył projektowanie swojego komputera. Teraz potrzebował osoby z odpowiednią wiedzą do jego budowy. Znalazł taką osobę w postaci absolwenta wydziału inżynieryjnego Uniwersytetu Stanowego Iowa, Clifforda Berry'ego. Pod koniec roku Atanasow i Berry zbudowali mały prototyp. W następnym roku ukończyli pełną wersję komputera mającego trzydzieści współczynników. W latach 60. pisarz, który odkopał ich historię, nazwał go komputerem Atanasowa-Berry'ego (Atanasoff-Berry Computer, ABC), i ta nazwa przyjęła się. Jednak nie udało się usunąć wszystkich wad. ABC dawał błędy rzędu jednej cyfry binarnej na 10000, co w przypadku jakichkolwiek dużych obliczeń mogło być fatalne.

Historia komputerów elektronicznych, część 1: prolog
Clifford Berry i ABC w 1942 roku

Niemniej jednak, w Atanasowie i jego ABC można znaleźć korzenie i źródło wszystkich nowoczesnych komputerów. Czyż nie stworzył on (z umiejętną pomocą Berry'ego) pierwszego binarnego elektronicznego komputera cyfrowego? Czyż to nie są podstawowe cechy miliardów urządzeń, które kształtują i zarządzają gospodarką, społeczeństwem i kulturą na całym świecie?

Ale wróćmy do przeszłości. Przymiotniki cyfrowy i binarny nie są wyłączną domeną ABC. Na przykład, komputer liczący liczb zespolonych Bella (Bell Complex Number Computer, CNC), zaprojektowany mniej więcej w tym samym czasie, był cyfrowym, binarnym, elektromechanicznym komputerem, zdolnym do obliczeń na płaszczyźnie zespolonej. ABC i CNC były również podobne pod tym względem, że rozwiązywały problemy w ograniczonej dziedzinie i nie mogły, w przeciwieństwie do nowoczesnych komputerów, wykonywać dowolnej sekwencji instrukcji.

Pozostaje 'elektroniczny'. Ale chociaż matematyczne wnętrzności ABC były elektroniczne, działał on z prędkościami elektromechanicznymi. Ponieważ Atanasow i Berry z przyczyn finansowych nie mogli używać lamp elektronowych do przechowywania tysięcy cyfr binarnych, wykorzystali w tym celu komponenty elektromechaniczne. Kilkaset triodów, które wykonywały podstawowe obliczenia matematyczne, było otoczonych wirującymi bębnami i brzęczącymi maszynami perforującymi, w których przechowywane były wartości pośrednie wszystkich kroków obliczeniowych.

Atanasow i Berry wykonali heroicznie pracę, odczytując i zapisując dane na kartach perforowanych z ogromną prędkością, przepalając je elektrycznością zamiast mechanicznie tworzyć w nich otwory. Doprowadziło to jednak do pewnych problemów: urządzenie do przepalania odpowiedzialne było za 1 błąd na 10 000 liczb. Co więcej, nawet przy największym wysiłku maszyna nie mogła 'przebijać' szybciej niż jedno wiersz na sekundę, dlatego ABC mogło przeprowadzać tylko jedno obliczenie na sekundę przez każde z trzydziestu urządzeń arytmetycznych. W pozostałym czasie lampy elektroniczne siedziały bezczynnie, czekając na 'stukanie palcami w stół', podczas gdy cała ta maszyna męcząco wolno się obracała wokół nich. Atanasow i Berry przypięli rasowego kuca do wozu z sianem. (Kierownik projektu rekonstrukcji ABC w latach 90-tych ocenił maksymalną prędkość maszyny, biorąc pod uwagę wszystkie straty czasu, włącznie z pracą operatora przy zadawaniu problemu, na pięć dodawań lub odejmowań na sekundę. To oczywiście szybciej niż człowiek-kalkulator, ale nie ta prędkość, którą kojarzymy z elektronicznymi komputerami.)

Historia komputerów elektronicznych, część 1: prolog
Schemat ABC. Bębny przechowywały tymczasowy input i output na kondensatorach. Układ tyratronowy do przebijania kart i czytnik kart zapisywały i odczytywały wyniki całego kroku algorytmu (eliminując jedną z zmiennych z układu równań).

Prace nad ABC zatrzymały się w połowie 1942 roku, kiedy Atanasow i Berry zapisali się do szybko rosnącej machinie wojennej USA, gdzie potrzebne były nie tylko ciała, ale i umysły. Atanasowa powołano do Morskiej Laboratorium Artylerii w Waszyngtonie, aby kierował zespołem opracowującym miny akustyczne. Berry ożenił się z sekretarką Atanasowa i znalazł pracę w kontraktowej firmie pracującej dla wojska w Kalifornii, aby nie został powołany do wojska. Atanasow przez jakiś czas próbował opatentować swoje osiągnięcie w stanie Iowa, ale bezskutecznie. Po wojnie zajął się innymi sprawami i już poważnie nie zajmował się komputerami. Sam komputer został wysłany na złom w 1948 roku, aby zwolnić miejsce w biurze dla nowego absolwenta instytutu.

Możliwe, że Atanasiow po prostu zaczął pracować zbyt wcześnie. Opierał się na skromnych dotacjach uniwersyteckich i mógł wydać tylko kilka tysięcy dolarów na stworzenie ABC, dlatego oszczędność zdominowała wszystkie inne problemy w jego projekcie. Gdyby poczekał do początku lat czterdziestych, mógłby uzyskać rządowy grant na pełnoprawne urządzenie elektroniczne. W takim stanie – o ograniczonym zastosowaniu, trudnym w obsłudze, nien niezawodnym, niezbyt szybkim – ABC nie stanowiło obiecującej reklamy użyteczności obliczeń elektronicznych. Amerykańska machina wojenna, pomimo całego głodu obliczeniowego, pozwoliła ABC rdzewieć w miasteczku Ames w stanie Iowa.

Maszyny obliczeniowe wojny

Pierwsza wojna światowa stworzyła i uruchomiła system masowego inwestowania w naukę i technologię, przygotowując go do drugiej wojny światowej. W ciągu zaledwie kilku lat praktyka prowadzenia wojny na lądzie i morzu przeszła do wykorzystania gazów bojowych, min magnetycznych, wywiadu lotniczego, bombardowań itd. Żaden przywódca polityczny i wojskowy nie mógł nie zauważyć tak szybkich przekształceń. Były one na tyle szybkie, że wcześnie rozpoczęte badania mogły przechylić szalę na tę lub tamtą stronę.

W Stanach Zjednoczonych nie brakowało surowców i umysłów (z których wiele uciekło z hitlerowskich Niemiec), a znajdowały się one z dala od bezpośrednich walk o przetrwanie i dominację, które dotknęły inne kraje. Pozwoliło to krajowi wyciągnąć tę lekcję zwłaszcza wyraźnie. Przejawiło się to tym, że rozległe zasoby przemysłowe i intelektualne zostały zaangażowane w tworzenie pierwszej broni atomowej. Mniej znaną, ale nie mniej ważną lub mniejszą inwestycją było zainwestowanie w rozwój technologii radarowej, której centrum znajdowało się w MIT w Rad Lab.

Tak i powstająca dziedzina automatycznych obliczeń otrzymała swoją część wojennego finansowania, chociaż w znacznie mniejszych skalach. Już wcześniej zauważyliśmy różnorodność elektromechanicznych projektów obliczeniowych zrodzonych przez wojnę. Potencjał komputerów opartych na przekaźnikach był, w porównaniu, znany, ponieważ stacje telefoniczne z tysiącami przekaźników działały już od wielu lat. Elementy elektroniczne jeszcze nie udowodniły swojej niezawodności na takich skalach. Większość ekspertów uważała, że komputer elektroniczny nieuchronnie będzie zawodny (ABC był przykładem), lub jego budowa zajmie zbyt dużo czasu. Pomimo nagłego napływu rządowych funduszy, było niewiele wojskowych projektów obliczeń elektronicznych, a one były rzadkie. Uruchomiono tylko trzy projekty, z czego tylko dwa doprowadziły do powstania działających maszyn.

W Niemczech inżynier telekomunikacyjny Helmut Schreyer udowodnił swojemu przyjacielowi Konradowi Zuse wartość maszyny elektronicznej w porównaniu z elektromechanicznym «V3», który Zuse budował dla przemysłu lotniczego (został później znany jako Z3). Zuse zgodził się na współpracę nad drugim projektem razem ze Schreyerem, a Instytut Badań Lotniczych zaproponował sfinansowanie prototypu na 100 lamp w końcu 1941 roku. Jednak obaj mężczyźni najpierw zajęli się bardziej priorytetową pracą wojskową, a następnie ich prace zostały znacznie spowolnione przez uszkodzenia spowodowane bombardowaniami, w rezultacie nie zdołali sprawić, aby ich maszyna działała niezawodnie.

Historia komputerów elektronicznych, część 1: prolog
Zuse (po prawej) i Schreyer (po lewej) pracują nad elektromechanicznym komputerem w berlińskim mieszkaniu rodziców Zuse

A pierwszy elektroniczny komputer, wykonujący użyteczną pracę, został stworzony w tajnym laboratorium w Wielkiej Brytanii, gdzie inżynier telekomunikacyjny zaproponował nowe, radykalne podejście do kryptanalizy oparte na zaworach. Tę historię odkryjemy następnym razem.

Co jeszcze przeczytać:

• Alice R. Burks i Arthur W. Burks, The First Electronic Computer: The Atansoff Story (1988)
• David Ritchie, The Computer Pioneers (1986)
• Jane Smiley, The Man Who Invented the Computer (2010)

Ź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