Najsłynniejszy komputer w dziejach
Od skonstruowanie tej maszyny świat stał się zupełnie inny. Nikt zapewne nie przewidywał aż takich reperkusji związanych z tym urządzeniem, jakich jesteśmy świadkami dzisiaj. Może tylko... skłonni jak zawsze do szukania sensacji dziennikarze, którzy nazwali ową machinę ?mózgiem elektronowym?. Nawiasem mówiąc, oddali jej i rodzącej się w tym momencie ?poważnej? informatyce iście niedźwiedzią przysługę, wywołując owym określeniem zajadłą krytykę zarówno ze strony ortodoksyjnych materialistów (tych od życia jako formy istnienia białka), jak i, oburzonych samym napomknieniem o możliwości stworzenia przez człowieka jakiejkolwiek formy intelektu, fideistów...
W roku 1946 zatem zaczęła się oficjalnie era komputerów. Dokładną datę trudno ustalić: może jest to 15 lutego 1946 roku, kiedy opinia publiczna została poinformowana o istnieniu ENIAC-a? Może 30 czerwca tegoż roku, kiedy zamknięto okres eksperymentalnych obliczeń i przekazano maszynę jej właścicielowi, czyli armii USA? A może trzeba się cofnąć o kilka miesięcy, aż do listopada 1945, kiedy ENIAC wykonał pierwsze rachunki?
Jakkolwiek zdecydujemy, jedno jest pewne: sześćdziesiąt pięć lat za nami.
ELEKTRONICZNE MONSTRUM
Gdy pokazano ENIAC-a dziennikarzom, było oczywiste, że nikt nigdy dotychczas nie zbudował podobnego monstrum, w każdym razie w dziedzinie elektroniki. Ustawione w prostokącie 12 na 6 m w kształcie litery U czterdzieści dwie pomalowane na czarno szafy z blachy stalowej - każda miała 3 m wysokości, 60 cm szerokości i 30 cm głębokości - były nafaszerowane 18 800 lampami elektronowymi szesnastu rodzajów; zawierały ponadto 6000 komutatorów, 1500 przekaźników, 50 000 oporników. Całość - jak powiedziano przedstawicielom prasy - wymagała ręcznego wykonania 0.5 mln spawów. Monstrum ważyło 30 ton i pobierało 140 kW mocy. Jego system wentylacyjny miał wbudowane dwa silniki Chryslera o łącznej mocy 24 KM; każda szafa była wyposażona w ręcznie regulowany nawilżacz powietrza, zaś termostat zatrzymywał wszelkie działania ?potwora?, jeśli temperatura wewnątrz którejkolwiek z jego części przekraczała 48°C. Dalej, w pomieszczeniu przeznaczonym dla maszyny były trzy dodatkowe - również nafaszerowane elektroniką - jeszcze większe od pozostałych szafy przesuwne na kółkach, dołączane w miarę potrzeb w odpowiednim miejscu do zestawu. Stanowiły uzupełnienie czytnika i dziurkarki kart perforowanych.
Jak liczył?
ENIAC (Electronic Numerical Integrator And Computer) rachował - w odróżnieniu od komputerów nam współczesnych - w systemie dziesiętnym, operując liczbami dziesięciocyfrowymi, dodatnimi lub ujemnymi, z ustalonym położeniem przecinka dziesiętnego. Jego szybkość, zawrotna dla ówczesnych naukowców i w ogóle niewyobrażalna dla ówczesnego przeciętnego człowieka, wyrażała się pięcioma tysiącami dodawań takich liczb w ciągu sekundy; i pomyśleć, że uważane dziś za niezbyt szybkie komputery osobiste są tysiące razy szybsze! W razie potrzeby maszyna mogła pracować na liczbach ?podwójnej precyzji? (dwudziestocyfrowych) o zmiennym miejscu położenia przecinka dziesiętnego; oczywiście, w takim wypadku działała wolniej, a jej pojemność pamięci odpowiednio malała.
ENIAC miał typową budowę modułową. Jak powiada Robert Ligonni?re w swej książce o historii informatyki, jego architektura opierała się na zhierarchizowanych układach o zmiennej złożoności. Wewnątrz wspomnianych wyżej szaf znajdowały się stosunkowo łatwo wymienialne panele, zawierające różne zestawy elementów elektronicznych. Taki typowy panel stanowiła np. ?dekada?, mogąca rejestrować cyfry od 0 do 9 i generować przy dodawaniu sygnał przeniesienia do następnego takiego układu - to w pewnym sensie elektroniczny odpowiednik kół cyfrowych z siedemnastowiecznego sumatora Pascala. Podstawowymi elementami maszyny były ?akumulatory?, które potrafiły ?pamiętać? liczby dziesiętne, dodawać je i przekazywać dalej; każdy z takich akumulatorów zawierał 550 lamp elektronowych. Liczbę, przechowywaną akurat w danym akumulatorze, można było odczytać z układu zapalonych na czołowej części odpowiedniej szafy neonówek.
Programowanie - czyli zlecanie maszynie konkretnego zadania do wykonania - nie przychodziło łatwo. Wspomniany R. Ligonni?re tak to opisuje: ?Operatorzy ENIAC-a mieli trzy ?stoły funkcyjne? - ruchome pulpity sterownicze do wprowadzania liczb bądź instrukcji do kalkulatora. Na każdym stole można było zarejestrować 104 informacje na 14 pozycjach (liczba dwunastocyfrowa i jej znak lub 2 liczby sześciocyfrowe i 2 znaki). Pulpity obsługiwało się ręcznie. Stojąc przy planszy trzeba było wprowadzać, cyfra po cyfrze, liczby bądź polecenia, nastawiając ręcznie tarcze komutatorów. Do uruchomienia wszystkich trzech plansz trzeba było nastawić 4368 komutatorów! (...) Całość danych i instrukcji potrzebnych maszynie w dowolnym momencie obliczeń musiała być wprowadzona na plansze funkcyjne przed rozpoczęciem pracy. Zmiana programu zajmowała bardzo dużo czasu z uwagi na konieczność przełączenia mnóstwa styków, komutatorów i połączeń. Błędy popełnione przy nastawianiu maszyny powodowały sporo opóźnień i zacięć. Dodajmy, że dodatkowych kłopotów przysparzała ówczesna elektronika: średni czas bezawaryjnej pracy maszyny wynosił około pół godziny?.
Rodowód
Ideę ENIAC-a zrodziły obliczeniowe potrzeby wojenne. Jednym z typowych problemów rachunkowych lat czterdziestych było mianowicie sporządzanie tablic balistycznych dla artylerii. Taka tablica, to po prostu zestaw współrzędnych toru lotu pocisku, umożliwiający żołnierzowi odpowiednie ustawienie (wycelowanie) działa z uwzględnieniem jego rodzaju, modelu pocisku, składu chemicznego i wielkości ładunku miotającego, temperatury powietrza, siły i kierunku wiatru, ciśnienia atmosferycznego i paru jeszcze podobnych parametrów.
Z matematycznego punktu widzenia sporządzenie takich tablic, to numeryczne rozwiązywanie pewnego typu tzw. hiperbolicznych równań różniczkowych dwóch zmiennych. W praktyce tor obliczało się wówczas dla 50 punktów pośrednich. Aby uzyskać odpowiednie wartości w jednym z nich należało wykonać 15 mnożeń, co oznaczało, iż rachunki dla pojedynczej trajektorii zajmowały 10-20 minut pracy najbardziej wówczas zaawansowanej technicznie wyspecjalizowanej maszyny rachunkowej, jaką był analizator różniczkowy. Uwzględniając inne, niezbędne podczas układania tablicy działania - jedna pełna tabela wymagała 1000-2000 godzin obliczeniowych, czyli 6-12 tygodni. A trzeba było zbudować dziesiątki tysięcy takich tablic! Gdyby użyć do tego celu najnowocześniejszej wówczas mnożarki firmy IBM i tak zajęłoby to całe lata pracy!
Twórcy
Historia o tym, jak armia USA usiłowała sobie z tym monstrualnym problemem poradzić, warta jest filmu fabularnego. Ściągnięto z Princeton, na stanowisko szefa projektu, wybitnego - choć nie pierwszej już młodości - matematyka norweskiego Oswalda Vebelena, który prowadził podobne obliczenia w 1917 roku; ponadto zatrudniono dalszych 7 matematyków, 8 fizyków i 2 astronomów. Ich doradcą był genialny Węgier, John (Janos) von Neumann.
Do wojska wcielono w charakterze rachmistrzów około 100 młodych matematyczek, zarekwirowano na potrzeby armii cały, nadający się do wykorzystania sprzęt obliczeniowy... Było jednak jasne, że tą drogą potrzeb artylerii w pełni się nie zaspokoi. Na szczęście - nieco przypadkowo - akurat w tym czasie zetknęły się drogi życiowe trzech młodych ludzi. Byli nimi: doktor fizyki John Mauchly (ur. 1907), inżynier elektronik John Presper Eckert (ur. 1919) oraz doktor matematyki, porucznik armii USA, Herman Heine Goldstine (ur. 1913).
[caption id="attachment_3322" align="aligncenter" width="465" caption="Rysunek: Mauchly i Eckert w towarzystwie gen. Barnesa"][/caption]
J. Mauchly już w roku 1940 mówił o możliwości zastosowania elektroniki do budowy maszyny liczącej; wpadł na ten pomysł w związku z ogromem obliczeń, jakie musiał wykonać, gdy zainteresował się zastosowaniami statystyki matematycznej w meteorologii. Kiedy wstąpił na zorganizowane przez Uniwersytet Pensylwanii specjalne kursy, przygotowujące wysokiej klasy specjalistów dla armii, spotkał J. P. Eckerta. Ten z kolei był typową ?złotą rączką?, genialnym konstruktorem i wykonawcą: już w wieku 8 lat potrafił zbudować miniaturowy odbiornik radiowy, który umieścił... na końcu ołówka; mając lat 12 zbudował miniaturowy statek sterowany radiem, w dwa lata później zaprojektował i wykonał profesjonalny zestaw nagłaśniający dla swojej szkoły. Obaj studenci przypadli sobie niezmiernie do gustu... i w wolnych od nauki chwilach zaprojektowali wielki kalkulator, uniwersalną maszynę liczącą.
Niewiele jednak brakowało, aby ten projekt nigdy nie ujrzał światła dziennego. Obaj uczeni przekazali go oficjalnie, w formie odpowiedniego pięciostronicowego memorandum, niejakiemu J. G. Brainerdowi, członkowi Zarządu Uniwersytetu Pensylwanii, zajmującemu się służbowo kontaktami z rządem USA. Ten jednak wetknął ów dokument do biurka (znaleziono go tam w 20 lat później - był nietknięty) i spowodowałby zamknięcie sprawy, gdyby nie trzeci ?ojciec? ENIAC-a, dr H. H. Goldstine.
Dr Goldstine pracował we wspomnianym wyżej ośrodku obliczeniowym armii USA (Ballistic Research Laboratory) i gwałtownie poszukiwał rozwiązania znanego już nam problemu tablic balistycznych. Trzeba trafu, że prowadząc rutynową kontrolę pracującego dla wojska ośrodka obliczeniowego Uniwersytetu Pensylwanii, opowiedział o swoich kłopotach pewnemu studentowi. Był to student Mauchly?ego, który znał to memorandum... Goldstine w lot pojął znaczenie nowej idei.
Zdarzyło się to w marcu 1943 roku. W kilkanaście dni później Goldstine i Mauchly zostali przyjęci przez kierownictwo BRL. Oswald Vebelen nie miał wątpliwości: nakazał natychmiast udostępnić niezbędne pieniądze na budowę maszyny. W ostatnim dniu maja 1943 roku ustalono nazwę ENIAC. Piątego czerwca podpisano uruchomienie najściślej tajnego ?Projektu PX?, którego koszty ustalono na 150 tys. dolarów (faktycznie wyniosły 486 804 dolary i 22 centy). Oficjalnie pracę rozpoczęto 1 lipca, dwa pierwsze akumulatory uruchomiono w czerwcu następnego roku, całą maszynę oddano do prób laboratoryjnych jesienią 1945 roku, pierwsze eksperymentalne obliczenia przeprowadzono w listopadzie roku 1945. Jak mówiliśmy, 30 czerwca 1946 roku przekazano ENIAC-a armii, która pokwitowała odbiór ?Projektu PX?.
[caption id="attachment_3321" align="aligncenter" width="465" caption="Rysunek: Tablica sterownicza ENIAC-a"][/caption]
ENIAC zatem w wojnie udziału nie wziął. Co więcej, uruchamianie go przez armię trwało aż do 29 lipca 1947 roku. Ale raz uruchomiony i po bardzo zasadniczych poprawkach, wprowadzonych do jego działania - według wskazówek von Neumanna - służył w wojsku dość długo, obliczając nie tyko tablice balistyczne, ale także analizując warianty budowy bomby wodorowej, projektując taktyczną broń atomową, badając promienie kosmiczne, projektując tunele aerodynamiczne, czy wreszcie - najzupełniej ?cywilnie? - obliczając wartość liczby pi z dokładnością do tysiąca miejsc po przecinku. Zakończył swą służbę 2 października 1955 roku o godzinie 23.45, kiedy to wyłączono go ostatecznie z sieci i przystąpiono do demontażu.
[caption id="attachment_3320" align="aligncenter" width="465" caption="Rysunek: Wymiana lampy w maszynie"][/caption]
Miał być sprzedany na złom; ale korzystający zeń uczeni zaprotestowali i duże fragmenty maszyny udało się ocalić. Największy z nich znajduje się dziś w Smithsonian Institute w Waszyngtonie.
Zatem w ciągu 148 miesięcy ENIAC przebył drogę od deski kreślarskiej projektanta do muzeum techniki - rozpoczynając tym samym erę niebywałego postępu w rozwoju techniki obliczeniowej. I nie ma znaczenia fakt, że już przed nim na miano komputera zasłużyły maszyny konstruowane przez genialnego Niemca Konrada Zusego, a także - jak to się okazało po otwarciu tajnych archiwów brytyjskich w 1975 roku - angielskie komputery z serii Colossus.
[caption id="attachment_3319" align="aligncenter" width="413" caption="Rysunek: Oryginalny projekt schematu maszyny"][/caption]
W 1946 roku świat poznał właśnie ENIAC-a i to on będzie już zawsze dla opinii publicznej Tym Pierwszym...