ENIAC

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, wyszukiwania
Komputer ENIAC
Commons in image icon.svg

ENIAC (od ang. Electronic Numerical Integrator And Computer – Elektroniczny, Numeryczny Integrator i Komputer) – komputer skonstruowany w latach 1943-1945 przez J.P. Eckerta i J.W. Mauchly'ego na Uniwersytecie Pensylwanii w USA. Zaprzestano jego używania w 1955.

Do roku 1975 powszechnie uważany był za pierwszy komputer na świecie, jednak teraz o miano to ubiegają się również - po odtajnieniu danych brytyjskich maszyny Colossus oraz niemieckie Konrada Zuse. Do miana pierwszego elektronicznego komputera na świecie pretenduje komputer ABC[1] (od ang. Atanasoff-Berry Computer), zbudowany w Iowa State University na wydziale Computer Science[2] przez Johna Vincenta Atanasoffa i Clifforda Berry'ego w latach 1937-42.

Komputer ten był bardzo innowacyjny: posiadał właściwość przetwarzania równoległego i oddzielne funkcjonalnie moduły jednostki arytmetycznej i pamięci. Atanasoff spotykał się z konstruktorami ENIACa i pokazywał im konstrukcję własnego komputera. Mauchly i Eckert opatentowali konstrukcję ENIACa, opartą w dużym stopniu na ABC i w ten sposób pozbawili Atanasoffa pierwszeństwa. Po wieloletnim procesie sądowym wytoczonym przez tego ostatniego, w październiku 1973 roku sędzia federalny Earl R. Larson podjął decyzję unieważniającą patent ENIACa i przyznał Atanasoffowi miano wynalazcy komputera elektronicznego[3]. 13 listopada 1990 roku prezydent G. Bush odznaczył tego wynalazcę medalem "National Medal of Technology".

ENIAC miał masę ponad 27 ton, zawierał blisko 18 tys. lamp elektronowych i zajmował powierzchnię ok. 140 metrów kwadratowych. Nie miał pamięci operacyjnej i początkowo programowany był przez przełączanie wtyków kablowych, później za pomocą kart perforowanych.

Zastosowanie[edytuj | edytuj kod]

Maszyna używana była głównie do obliczeń związanych z balistyką, wytwarzaniem broni jądrowej, prognozowaniem pogody, projektowaniem tuneli aerodynamicznych i badaniem promieniowania kosmicznego. Wykorzystywano ją także do badania liczb losowych i analizowania błędów zaokrągleń.

Powstanie[edytuj | edytuj kod]

Budowa ENIACA związana jest z potrzebą sporządzania dla wojska tzw. tablic artyleryjskich[4]. W tym celu sprowadzono z Princeton, na stanowisko szefa projektu, wybitnego matematyka norweskiego Oswalda Veblena, 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. W tym samym czasie spotkali się ze sobą: doktor fizyki John W. Mauchly (ur. 1907), inżynier elektronik John Presper Eckert (ur. 1919) oraz doktor matematyki, porucznik armii USA, Herman Heine Goldstine (ur. 1913). 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, który był utalentowanym konstruktorem i wykonawcą (wspomina się, iż 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, a w dwa lata później zaprojektował i wykonał profesjonalny zestaw nagłaśniający dla swojej szkoły). Obaj studenci w wolnych od nauki chwilach zaprojektowali wielki kalkulator, uniwersalną maszynę liczącą. Przekazali go oficjalnie, w formie odpowiedniego pięciostronicowego memorandum, J. G. Brainerdowi, członkowi Zarządu Uniwersytetu Pensylwanii, zajmującemu się służbowo kontaktami z rządem USA. Ten jednak odłożył ten dokument do szuflady biurka (znaleziono go tam w 20 lat później – był nietknięty) nie przekazując go dalej, co spowodowałoby zamknięcie sprawy, gdyby nie trzeci współtwórca ENIACa, dr H. H. Goldstine.

Dr Goldstine pracował we wspomnianym wyżej ośrodku obliczeniowym armii USA (Ballistic Research Laboratory, BRL) i gwałtownie poszukiwał rozwiązania znanego już nam problemu tablic balistycznych. Prowadząc w marcu 1943 rutynową kontrolę pracującego dla wojska ośrodka obliczeniowego Uniwersytetu Pensylwanii, opowiedział o swoich kłopotach pewnemu studentowi. Był to student Mauchly'ego, jeden z autorów wspomnianego memorandum. W kilkanaście dni później Goldstine i Mauchly zostali przyjęci przez kierownictwo BRL. Oswald Veblen 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 wspomniano, 30 czerwca 1946 roku przekazano ENIACa armii, która pokwitowała odbiór "Projektu PX".

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 tylko 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. Miał być sprzedany na złom. Korzystający zeń uczeni zaprotestowali jednak i duże fragmenty maszyny udało się ocalić. Największy z nich znajduje się dziś w Smithsonian Institution w Waszyngtonie.

Budowa i działanie[edytuj | edytuj kod]

Komputer ENIAC

W chwili, kiedy ujawniono konstrukcję ENIAC-a, opinii publicznej wydawało się, iż nigdy dotąd nie zbudowano urządzenia tej wielkości i stopnia skomplikowania, 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 – mieściły 18 800 lamp elektronowych 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 lutowań. Maszyna ważyła 30 ton i pobierała 140 kW mocy. Jej system wentylacyjny miał wbudowane dwa silniki Chryslera o łącznej mocy 24 KM; każda szafa była wyposażona w termostat, który wstrzymywał pracę komputera, jeśli temperatura wewnątrz którejkolwiek z jego części przekraczała 48 °C. W pomieszczeniu przeznaczonym dla maszyny były jeszcze trzy dodatkowe – również wypełnione elektroniką i 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.

ENIAC rachował – w odróżnieniu od komputerów współczesnych – w systemie dziesiętnym, operując liczbami dziesięciocyfrowymi, dodatnimi lub ujemnymi, z ustalonym położeniem przecinka dziesiętnego. Jego szybkość, na owe czasy niewyobrażalnie niemal wielka, wyrażała się pięcioma tysiącami dodawań takich liczb w ciągu sekundy. 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 pojemność pamięci odpowiednio malała.

ENIAC miał typową budowę modułową. Jego architektura opierała się na zhierarchizowanych układach o zmiennej złożoności. Wewnątrz wspomnianych 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 zapamię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[edytuj | edytuj kod]

Programowanie – czyli zlecanie maszynie konkretnego zadania do wykonania – nie przychodziło łatwo. 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 dwie liczby sześciocyfrowe i ich 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 licznych styków, komutatorów i połączeń. Błędy popełnione przy nastawianiu maszyny powodowały sporo opóźnień i zacięć. Wbrew pogłoskom o bardzo dużej awaryjności, przepalenia lamp zdarzały się średnio co około dwa dni, a lokalizacja uszkodzenia i wymiana lampy trwały ok. 15 min[5].

Znaczenie[edytuj | edytuj kod]

Wprawdzie dziś uważa się, że już przed nim na miano komputera zasłużyły maszyny Z1 oraz Z3 skonstruowane przez niemieckiego inżyniera Konrada Zusego, angielskie maszyny kryptograficzne Colossus, oraz ABC Atanasoffa, to jednak powszechnie uznaje się, iż to ENIAC rozpoczął erę postępu w rozwoju techniki obliczeniowej.

Przypisy

  1. Gary Wolf: Pulitzer Prize-Winning Novelist Tells the Tale of the World’s First Computer (ang.). Wired, 2010-11-01. [dostęp 2010-11-22].
  2. Arthur Oldehoeft: John Vincent Atanasoff & the Birth of The Digital Computer (ang.). W: College of Liberal Arts and Sciences, Department of Computer Science [on-line]. Iowa State University. [dostęp 2010-11-22].
  3. Atanasoff-Berry Computer Court Case. JVA Initiative Committee and Iowa State University. [dostęp 2012-09-06].
  4. Po rozbudowie armii okazało się, że oficerowie mający dowodzić na niższych szczeblach jednostkami artylerii nierzadko mają problemy z szybkim i poprawnym obliczaniem nastaw dział w zależności od odległości od celu, rodzaju pocisku etc. — wynikało to z tego, że z reguły były to osoby cywilne, które zgłaszały się na ochotnika i po kilkumiesięcznym przeszkoleniu zostawały oficerami; jeśli chociażby z racji zawodu nie posługiwały się one na co dzień suwakiem logarytmicznym, to w ciągu tego krótkiego przeszkolenia nie mogły nabrać wprawy w posługiwaniu się suwakiem artyleryjskim (odmiana suwaka logarytmicznego). Dlatego też dowództwo armii zaproponowało, żeby zebrać wyniki obliczeń dla różnych warunków prowadzenia ognia w formie książek z zestawami tablic — oficerowie artylerii na niższych szczeblach mieliby bez wykonywania obliczeń wyszukiwać odpowiednie nastawy.
  5. Alexander Randall 5th: Q&A: A lost interview with ENIAC co-inventor J. Presper Eckert. Computerworld, 2006-02-14. [dostęp 2013-09-10].