Historie počítačů V. – nenápadný půvab tranzistoru

0

Tranzistorové počítače

Technologicky má druhá generace počítačů pevně nastavené hranice: rok nula nastal na počátku roku 1947 s vynálezem tranzistoru. Pak se dlouho nic nedělo, elektronkové přístroje před sebou měly mít ještě dlouhou budoucnost a málokdo měl představu, jak pracovat s tehdy váhradně laboratorní tranzistorovou technologií. Tranzistorová bouře se tak rozpoutala až chvíli, před polovinou padesátých let. Hudební  revoluci spustilo tranzistorové rádio TR-1, kterého se ve Spojených státech prodalo 150 tisíc kusů („tranzistoráky“ prosluly i v normalizačním Československu). Počítačová revoluce odstartovala vzápětí.


Tranzistorové rádio z padesátých let vypadá jako hračka pro děti, ale zbožňovaly je desetitisíce dospělých Američanů

První tranzistorový počítač vyvinuli – jak jinak – na univerzitě v anglickém Manchestru. Prototyp počítače byl postaven v listopadu 1953, plně funkční stroj pak v dubnu 1955. Pokrokoví britští akademici stroj nazvali suše Tranzistorový počítač. Vrchol éry tranzistorových počítačů představuje první domácí minipočítač PDP-8 z roku 1965, kterého se prodalo přes 300 tisíc kusů. V tomto roce se zároveň začaly objevovat stroje, postavené na dalším důležitém vynálezu – mikročipu – které tranzistorové počítače postupně nahradily.


První tranzistor nemá daleko k umění

Rozpuk počítačového průmyslu

Generace tranzistorů ovšem byla svědkem něčeho mnohem většího: kolem počítačů vznikl celý průmysl. Kromě matematiků, inženýrů a armádních laboratoří se o ně začala zajímat veřejnost. Právě v této době začalo být zřejmé, jak moc budou počítače znamenat pro budoucí generace. Vývoj kolem počítačů se rozkošatěl. Kromě samotného hardware se začaly rozvíjet programovací jazyky a výpočetní algoritmy. Objevily se domácí počítače a první hra, vznikla tabulka standardních znaků ASCII. Smysl získaly pojmy jako umělá inteligence a kybernetika, počítačová síť, operační systém, kompatibilita a klávesnice.

Vše samozřejmě doprovázel marketing, zpočátku nesmělý a zvědavý, později stále masivnější. Pohybujeme se převážně na severoamerickém kontinentu, kde od počátku padesátých let televize prožívala obrovský boom. V televizní show se ocitl také jeden z prvních tranzistorových počítačů, TX-0. Na monitoru předváděl simulaci myši, která prochází bludištěm a hledá kousky sýra (v pozdějších verzích hledala panáky Martini a postupně jí to dělalo větší a větší potíže).


Tranzistorový počítač TX-2 už nabízel pohodlné uživatelské rozhraní včetně klávesnice

Do televize se dostal i vojenský projekt SAGE (Semi-Automatic Ground Environment), který propojoval stovky radarů z celého území Spojených států do jediné sítě, postavené kolem počítače Whirlwind II. A do třetice se v televizi objevila ERMA (the Electronic Recording Method of Accounting), první systém pracující s automatickým skenerem. Údaje o účtu byly na kartičce vytištěné strojově čitelným fontem, takže čtečka dokázala samostatně propojit číslo kartičky s informacemi o účtu. To vše ještě v druhé polovině padesátých let.

Klíčové pro rozvoj počítačů jsou samozřejmě programovací jazyky. Také ty v této době zaznamenaly divoký rozvoj. Z úcty ke starému pánovi Zusemu se ale nejdříve musíme vrátit do válečných let.  V letech 1943-5 tento německý inženýr hledal způsob, jak řídit svůj univerzální počítač Z4. Jazyk Plankalkül, který vznikl v podstatě od nuly, se svou genialitou zařadil vedle mistrových počítačů. Jeho základ spočíval v relační algebře a šlo o velmi obecné řešení, daleko přesahující specializované stroje své doby. Jazyk používal přiřazovací příkaz, podmínky, podprogramy, iteraci, aritmetiku s desetinnou čárkou, pole nebo práci s výjimkami. Jako mnoho skvělých věcí, které předběhly svou dobu, zapadl i Plankalkül. První překladač, který umožňuje práci s tímto jazykem, se objevil v roce 1998.

Za mořem se mezitím zrodil brontosaurus ENIAC. Na rozdíl od Plankalkülu, který patří mezi vyšší jazyky (nepřistupují k vnitřnostem počítače přímo, k tomu potřebují překladač do strojové řeči – kompilátor) se ENIAC ovládal přímo prostřednictvím strojového kódu. Namísto elegantního programování zadávali úzce specializovaní odborníci instrukce pro ENIAC přepínáním drátů uvnitř samotného stroje. Podobně fungovalo programování u všech počítačů první generace. Do roku 1954 vzniklo třicet zcela nebo částečně strojových jazyků!

Fortran pro líné inženýry

Fortran pro líné inženýry

Právě v tomto roce vznikl Fortran. Víceúčelový, procedurální a imperativní vyšší jazyk. Vznikl nejdříve jen pro potřebu programátorů IBM. Drtit každodenně stovky instrukcí strojového kódu pro populární IBM 701 (později 704) bylo neudržitelné, proto inženýr John Backus nabídl na podzim 1953 vedení firmy, že napíše jazyk vyšší úrovně.

Návrh se ujal a v létě příštího roku byla koncepce Fortranu na světě. V první verzi jazyk obsahoval pouhých 32 příkazů a prastarému Plankalkülu se nemohl rovnat. Do roku 1966 ovšem spatřily světlo světa čtyři zdokonalené verze Fortranu a brzy kolem jazyka vznikla nadšenecká komunita. Demokratizace programování začala. (Není nezajímavé, že ještě letos by měl přibýt Fortran 2008.)

Fortran návrhářům ukázal, kudy vede cesta, a tak se na konci padesátých a začátku šedesátých let s programovacími jazyky vyšší úrovně roztrhl pytel. Mezi množstvím obskurních jazyků a jazýčků nejprve zaujal LISP (1958), který díky svému zázemí v lambda kalkulu nabídl možnosti funkcionálního programování. Ve stejném roce se objevil IAL (později přejmenovaný na ALGOL 58) s dobře strukturovaným kódem.

Rodina ALGOLů dnes má asi sedmdesát nejrůznějších variant. V roce 1959 díky podpoře amerického ministerstva obrany přibyl COBOL. Novinkou byla podpora objektově orientovaného programování. V čele vývojářského týmu tohoto jazyka stála nejslavnější americká programátorka všech dob, Grace Hopper. Další programátorské paradigma představil jazyk SNOBOL v roce 1962; nabídl něco málo z logického programování.


Novinový článek o první kybernetické paži, která sloužila ve firmě General Motors. Čtyřtunová paže pracovala s roztaveným kovem

Kudy k vám domů?

Na počátku šedesátých let tedy existovaly jazyky, podporující všechny základní programovací paradigmata. Většina pozdějších jazyků stojí na základě, tvořeném některým z uvedených předků. Spor o to, jakým směrem se bude ubírat budoucnost programovacích jazyků, se ale doopravdy odehrál až v roce 1964.

V době, kdy každý obor měl svůj programovací jazyk (případně dialekt), se začaly ozývat hlasy, volající po sjednocení jazyka. Chaos v sotva pár let starém oboru vyvolal takzvanou softwarovou krizi šedesátých let. Nadšení návrhářů byla zkrátka potřeba zkrotit, ať už prostřednictvím standardů, nebo jazykem, který by si získal všechny.

Intenzívní hledání našlo odpověď v podobě dvou zcela rozdílných jazyků: PL/1 od IBM a BASIC na univerzitě v Dartmouth na východním pobřeží Spojených států. Šlo o dva imperativní jazyky, tedy jakýsi střední proud. Rozdíl byl v komplexnosti. Jazyk PL/1 byl mimořádně bohatý na množství příkazů i možnosti syntaxe. Touto cestou se podle mnoha softwarových inženýrů měl ubírat další vývoj – nabízet stále komplexnější jazyky, které toho díky enormnímu poli možností dovedou víc.


První počítačová hra, Spacewar!

BASIC (česky „základ“) stál přesně na opačném konci spektra. Jazyk nebyl primárně navržený pro profesionály, ale studenty a nadšence, které programování zajímá, měl maximálně zjednodušit proces programování. Tomu odpovídaly i jeho nízké paměťové nároky. Tento prvek se ukázal jako zásadní v okamžiku rozvoje relativně levných mikropočítačů v polovině sedmdesátých let. Profesionální nebo specializované programy vyžadovaly příliš mnoho paměti, zatímco jednoduchý BASIC se se slabou pamětí smířil.

Srovnání obou jazyků přineslo vystřízlivění. Programy v PL/1 byly chaotické a nečitelné. Pokud vznikla potřeba program upravit, musel se do toho pustit autor zdrojového kódu. Pojem „strukturované programování“ znamenal jakousi etickou normu: pište zdroj tak, aby ho dokázal přečíst kdokoliv. BASIC se dokázal těmto pravidlům přizpůsobit mnohem snáz. Strukturované programování v kombinaci s BASICem pak otevřelo cestu pro rozšíření mini- a mikropočítačů do malých firem a domácností.

Časová osa:

1945 – Plankalkül (Konrad Zuse, Německo)
1947 – vynález tranzistoru (Brattain a Moore, USA)
1948 – publikace Kybernetika (Norbert Wiener, USA)
1953 – Tranzistorový počítač (Manchester University, UK)
1953 – paměť s magnetickým jádrem (Jay Forrester, USA)
1954 – Fortran (John Backus, USA)
1956 – TX-0, první použitelný tranzistorový počítač (MIT, USA)
1958 – vynález integrovaného obvodu (Jack Kilby, USA)
1958 – SAGE, první počítačová síť, propojovala vojenské radary (IBM a MIT, USA)
1959 – COBOL (konference Codasyl, mezinárodní)
1959 – IBM 1401, úspěšný tranzistorový počítač (IBM, USA)
1960 – Dataphone, první komerční modem (AT&T, USA)
1961 – první integrovaný obvod v monolitickém chipu (Fairchild Camera a Instrument Corp., USA)
1961 – UNIMATE, první průmyslový robot (General Motors, USA)
1962 – Spacewar!, první počítačová hra (Steve Russell, USA)
1963 – Rancho, kybernetická paže pro postižené (nemocnice Rancho Los Amigos, USA)
1964 – PL/1 (IBM, USA)
1964 – BASIC (Kemeny a Kurtz, USA)
1964 – PDP-8, první minipočítač (Clark a Molnar, USA)

Článek vyšel v časopisu Extra PC 11/08, v němž můžete počítačovou historii pravidelně sledovat s „časovým předstihem“

 

Na serveru ExtraHardware dříve vyšly tyto články o historii počítačů:

Historie počítačů I. – počítačový pravěk
Historie počítačů II. – železní hrdinové doby
Historie počítačů III. – spojení křížovkáři
Historie počítačů IV. – poválečná generace

Historie počítačů V. – nenápadný půvab tranzistoru

Ohodnoťte tento článek!