Obsah
1. Sálové počítače Burroughs B5000
2. Mainframe Burroughs B5000 a jeho konkurenti
3. Architektura počítačů Burroughs B5000
4. Periferní zařízení počítačů Burroughs B5000 používaná pro vstup dat
5. Výstupní periferní zařízení
6. Operační paměť a zásobníkové rámce
7. Pomocné pracovní registry a jejich význam
8. Obsah následující části seriálu
1. Sálové počítače Burroughs B5000
V předchozí části seriálu o historii vývoje výpočetní techniky jsme si stručně řekli, jakým způsobem v předminulém století vznikla firma Burroughs Corporation, která se původně (ještě pod odlišným názvem) zabývala výrobou mechanických sčítacích strojů a později i plnohodnotných kalkulátorů. Teprve ve druhé polovině padesátých let minulého století se tato společnost začala orientovat i na konstrukci sálových počítačů. V předchozím dílu seriálu jsme si popsali mainframy Datatron 205/Burroughs 205, které firmě Burroughs Corporation umožnily vstup na trh se sálovými počítači. Tento typ mainframů se stal významný především z toho důvodu, že se právě na této platformě potvrdila užitečnost vyšších programovacích jazyků, a to jak při psaní běžných aplikací, tak i při vytváření systémových utilit. Tento trend se ještě ve větší míře potvrdil po zavedení nové architektury mainframů firmy Burroughs – řady Burroughs B5000. Právě touto platformou se budeme podrobněji zabývat v následujících kapitolách.
![ibm06](https://i.iinfo.cz/images/656/ibm06-prev.jpg)
Obrázek 1: Ovládací panel sálového počítače IBM-702.
2. Mainframe Burroughs B5000 a jeho konkurenti
Na prvních návrzích počítače Burroughs B5000 se začalo pracovat již na konci padesátých let minulého století, ale jeho finální verze připravená pro prodej byla dokončena až v roce 1961, tj. v době, kdy na trhu vládly mainframy firmy IBM řady 700, 7000 a 1400, ovšem několik let předtím, než se situace na trhu poměrně radikálně změnila s příchodem slavného počítače IBM/360 a taktéž minipočítačů PDP firmy Digital Equipment Corporation (v zájmu přesnosti raději upřesním, že počítač PDP-1 byl sice zkonstruován již v roce 1960, ovšem větší význam pro další vývoj informatiky měly až modely vytvořené v pozdějších letech). Abychom si uvědomili, s jakým „obrem“ musel „trpaslík“ představovaný firmou Burroughs soutěžit, jsou v následujících tabulkách vypsány všechny tři řady (série) sálových počítačů firmy IBM vyráběných v rozmezí padesátých a první poloviny šedesátých let minulého století:
Sálové počítače IBM řady 700:
Označení modelu | Určení | Rok výroby |
---|---|---|
701 | první elektronický počítač firmy IBM | 1952 |
702 | hromadné zpracování dat | 1953 |
704 | vědeckotechnické výpočty | 1954 |
705 | hromadné zpracování dat | 1954 |
709 | vědeckotechnické výpočty | 1958 |
![ibm07](https://i.iinfo.cz/images/118/ibm07-prev.jpg)
Obrázek 2: Sálový počítač IBM-704.
Sálové počítače IBM řady 7000:
Označení modelu | Určení | Rok výroby |
---|---|---|
7090 | vědeckotechnické výpočty | 1959 |
7094 | vědeckotechnické výpočty | 1962 |
7094 II | vědeckotechnické výpočty | 1964 |
7040 | vědeckotechnické výpočty | 1963 |
7044 | vědeckotechnické výpočty | 1963 |
7080 | hromadné zpracování dat | 1961 |
7010 | rozšířená verze IBM 1410 | 1962 |
7070 | dekadická číselná soustava | 1960 |
7072 | dekadická číselná soustava | 1962 |
7074 | dekadická číselná soustava | 1961 |
![ibm08](https://i.iinfo.cz/images/311/ibm08-prev.jpg)
Obrázek 3: Sálový počítač IBM-705.
Sálové počítače IBM řady 1400:
Označení modelu | Určení | Rok výroby |
---|---|---|
IBM 1240 | zpracování řetězců a BCD čísel proměnné délky | 1963 |
IBM 1401 | zpracování řetězců a BCD čísel proměnné délky | 1959 |
IBM 1410 | zpracování řetězců a BCD čísel proměnné délky | 1960 |
IBM 1420 | zpracování řetězců a BCD čísel proměnné délky | 1962 |
IBM 1440 | zpracování řetězců a BCD čísel proměnné délky | 1962 |
IBM 1450 | zpracování řetězců a BCD čísel proměnné délky | 1968 |
IBM 1460 | zpracování řetězců a BCD čísel proměnné délky | 1963 |
IBM 7010 | zpracování řetězců a BCD čísel proměnné délky | 1962 |
![ibm2](https://i.iinfo.cz/images/503/ibm2-2-prev.jpg)
Obrázek 4: Zrekonstruovaný řídicí panel počítače IBM 1401.
3. Architektura počítačů Burroughs B5000
Z hlediska použitých technologií se platforma Burroughs B5000 příliš nelišila od ostatních mainframů, které byly na přelomu padesátých a šedesátých let minulého století navrhovány. Řadič a aritmeticko-logická jednotka byla vytvořena z diskrétních tranzistorů a samozřejmě též z pasivních elektronických součástek. Zajímavé bylo především to, že namísto jedné procesorové jednotky bylo možné v počítači Burroughs B5000 použít procesory dva, což do velké míry ovlivnilo jak strukturu a organizaci operační paměti, tak i způsob řízení jednotlivých procesů a přenosu dat mezi oběma procesory (více informací si řekneme příště). Pro konstrukci operační paměti byly použity dvě různé technologie, což znamenalo, že celá operační paměť byla rozdělena do dvou odlišných modulů – bubnovou paměť a paměť sestavenou z feromagnetických jader (core memory). Každá z těchto pamětí měla samozřejmě odlišnou kapacitu a taktéž jinou dobu přístupu ke čteným a/nebo zapisovaným informacím a z tohoto důvodu se každá z těchto pamětí používala poněkud odlišným způsobem popsaným v následující kapitole.
![pdp1](https://i.iinfo.cz/images/271/pdp1-1-prev.jpg)
Obrázek 5: V pozadí této fotografie můžeme vidět počítač PDP-1 (procesorovou jednotku i jednotku periferií), v popředí je vidět stůl operátora s řídicím panelem.
Na platformě Burroughs B5000 však byly použity i některé ve své době přelomové technologie. Především se jednalo o první počítač, na němž byla implementována virtuální paměť používající deskriptory a segmenty. Dále byly díky použité instrukční sadě a způsobu organizace operační paměti všechny funkce vytvářené programátory reentrantní, což v mnoha případech zjednodušilo jak návrh programů, tak i návrh operačního systému (připomeňme si, že například funkce v původním FORTRANu nebyly reentrantní kvůli způsobu předávání parametrů a metodě použité pro alokaci proměnných). Pravděpodobně největší novinkou však bylo to, že procesor počítače Burroughs B5000 nebyl optimalizovaný na provádění konkrétních typů úloh, jak tomu bylo například u mainframů firmy IBM (viz též tabulky uvedené v první kapitole). Konstruktéři mainframu B5000 zvolili poněkud odlišný postup, protože procesor svého počítače navrhli tak, aby se na něm zjednodušil překlad a současně i spouštění programů napsaných v některém vyšším programovacím jazyce – především ALGOLu a v menší míře taktéž COBOLu (při použití tohoto jazyka se navíc projevila dobrá podpora pro práci s řetězci).
![ibm10](https://i.iinfo.cz/images/645/ibm10-prev.jpg)
Obrázek 6: Sálový počítač System/360 model 50, který byl v mnoha ohledech konkurentem řady Burroughs B5000.
4. Periferní zařízení počítačů Burroughs B5000 používaná pro vstup dat
Již v předchozí části tohoto seriálu jsme si řekli, že společnost Burroughs nenabízela svým zákazníkům pouze vlastní mainframe (tj. procesor sestavený z diskrétních součástek, řadič a operační paměť), ale i všechna potřebná periferní zařízení, operátorskými konzolami počínaje a tiskárnami konče. Na následujícím obrázku jsou všechna nabízená periferní zařízení zobrazena. Pro vstup dat se používaly zejména čtečky děrných štítků. Štítky mohly být vyděrovány buď v samostatném (částečně mechanickém) zařízení nebo děrovačkou štítků připojenou přímo k počítači. Pro vstup menšího množství údajů bylo taktéž možné použít klávesnici, i když se vzhledem ke způsobu práce tehdejších aplikací – existoval velký tlak na tvorbu aplikací běžících v dávkovém režimu (batch mode) – tato možnost používala pouze v malém množství aplikací. Po zpracování mohla být data uložena na magnetické pásky, přičemž k počítači B5000 mohlo být připojeno celkem šestnáct jednotek s magnetickými pásky (jednotky pracovaly paralelně, protože každá měla přiřazený samostatný I/O kanál). Kromě magnetických pásek bylo možné data vyděrovat i na děrné štítky.
![](https://i.iinfo.cz/images/39/4807-prev.jpg)
Obrázek 7: Periferní zařízení počítače Burroughs B5000.
5. Výstupní periferní zařízení
O bubnové paměti, kterou lze v určitých ohledech taktéž považovat za periferní zařízení, se ještě zmíníme v následující kapitole, takže nám zbývá popis tiskáren, tj. výstupních periferních zařízení. K počítači Burroughs B5000 byla připojena jedna relativně pomalá tiskárna používaná pro tisk hlášení operačního systému i zpráv posílaných spuštěnými programy. Pro výstup dat, například pro tvorbu tiskových sestav atd., se používaly takzvané řádkové tiskárny. Jednalo se o rozměrná zařízení, která dokázala v jednom kroku vytisknout celý textový řádek, protože pro každou znakovou pozici na textovém řádku bylo použito samostatné rotující kolečko obsahující všechny tisknutelné znaky (tisková hlava se tedy u řádkových tiskáren nemusela pohybovat ve vodorovném směru tak, jak je tomu u jehličkových nebo inkoustových tiskáren, pouze se ve vhodných okamžicích typové kolečko přitisklo přes barvicí pásku na papír). Tyto tiskárny vzhledem k poměrně vysoké rychlosti tisku používaly traktorový papír.
![](https://i.iinfo.cz/images/529/4808-prev.jpg)
Obrázek 8: Sálový počítač Burroughs B5000.
Kromě těchto tiskáren používaných pro výstup textu bylo možné k počítači Burroughs B5000 připojit i grafický plotter. Původně se sice nejednalo o velkoformátový plotter, protože tisknutelná plocha zhruba odpovídala formátu A3, ovšem v následujících letech došlo i k vývoji větších a přesnějších plotterů vhodných i pro tisk větších výkresů (na tomto místě je však vhodné poznamenat, že éra systémů CAD a CAM nastala až o mnoho let později, takže se plottery v první generaci počítačů Burroughs B5000 spíše používaly pro tisk různých grafů).
6. Operační paměť a zásobníkové rámce
V předchozím textu jsme si řekli, že operační paměť počítače Burroughs B5000 byla rozdělena do dvou modulů – bubnové paměti a paměti s feritovými jádry (core memory). Bubnová paměť byla dále rozdělena do několika oblastí. První z těchto oblastí byla vyhrazena pro takzvaný MCS neboli Master Control Program. Původně se jednalo o poměrně jednoduchou utilitu sloužící pro načítání a řízení jednotlivých programů, ovšem později se z této utility (samozřejmě po mnoha rozšířeních a vylepšeních) stal plnohodnotný operační systém používaný na počítačích Burroughs a později i na počítačích Unisys ClearPath atd. (jedná se tedy o operační systém využívaný po více než 40 let, je o několik let starší než UNIX). Další část bubnové paměti byla vyhrazena pro překladače vyšších programovacích jazyků (ALGOL, COBOL), které si zde ukládaly překládaný objektový kód, informace o chybách při překladu atd. V bubnové paměti byly taktéž uloženy informace o všech segmentech, na které byla paměť rozdělena (více informací bude uvedeno v následující části seriálu).
![](https://i.iinfo.cz/images/535/4809-prev.jpg)
Obrázek 9: Paměťové oblasti vytvořené v bubnové paměti.
Taktéž paměť zkonstruovaná z feromagnetických jader byla rozdělena na mnoho oblastí, z nichž nejdůležitější byly oblasti s uloženými zásobníkovými rámci (stack frames) jednotlivých procesů, které byly v daném okamžiku spuštěny. Tím se dostáváme k zásobníkové architektuře počítačů B5000. Procesor i instrukční sada těchto mainframů totiž byla navržena takovým způsobem, aby se všechny aritmetické a logické operace prováděly s operandy uloženými na zásobníku, přičemž pro každou volanou funkci byl vytvořen nový rámec zásobníku (stack frame), na němž byly kromě zpracovávaných operandů uloženy i parametry funkce a její lokální proměnné. Díky použití zásobníků byly všechny funkce reentrantní a navíc se při pádu programu namísto dnes běžně používaného core dumpu na počítačích B5000 vygeneroval takzvaný stack dump podobný výpisu zásobníku používaného na platformě Java, ovšem s tím poměrně podstatným a důležitým rozdílem, že stack dump obsahoval i hodnoty lokálních proměnných uložených v jednotlivých zásobníkových rámcích. Jinými slovy to znamená, že stack frame obsahoval celý stav programu, který zhavaroval.
![](https://i.iinfo.cz/images/684/4810-prev.jpg)
Obrázek 10: Paměťové oblasti vytvořené v paměti sestavené z feritových jader.
7. Pomocné pracovní registry a jejich význam
Všechny zásobníkové rámce volaných funkcí byly ukládány do operační paměti, konkrétně do oblasti tvořené pamětí s feritovými jádry. To je sice z teoretického hlediska zcela korektní, už jen z toho důvodu, že je celý stav procesu uložen v paměti a ne částečně v registrech (což problematizuje přepínání procesů), ovšem v praxi by provedení každé aritmetické či logické operace znamenalo, že by se operand či operandy musely před provedením operace nejdříve načíst z operační paměti (konkrétně z prvních několika položek ležících na vrcholu zásobníku), což je časově náročná operace. Taktéž výsledek operace by bylo nutné přenést zpět do operační paměti, aby se mohl uložit zpět na vrchol zásobníku. Aby se toto neustálé a současně i zdlouhavé přenášení operandů eliminovalo, byly přímo v procesoru počítače Burroughs B5000 umístěny dva pracovní registry nazvané A a B. Tyto registry však nebyly přímo přístupné ani viditelné programátorům, protože sloužily pouze pro uložení prvních dvou položek umístěných na vrcholu zásobníku.
![](https://i.iinfo.cz/images/482/4811.jpg)
Obrázek 11: Operátorská konzole počítače Burroughs B5000.
Ve skutečnosti se tedy některá aritmetická operace, například operace součtu ADD, provedla takovým způsobem, že se oba operandy přečetly z pomocných registrů A a B a po provedení operace se její výsledek uložil zpět do registru A. Nový obsah pomocného registru B se mezitím načetl z operační paměti, přičemž tato operace mohla proběhnout paralelně s vlastním výpočtem (pro přenos dat se nepoužívá ALU a naopak ALU nepotřebuje přenášet žádná data, protože je má umístěná v registrech). Naprostá většina aritmetických a logických operací pracovala pouze s jedním či dvěma operandy, takže postačovalo skutečně implementovat pouze dva pomocné registry. Procesor počítače Burroughs B5000 obsahoval ještě jeden registr (opět neviditelný pro programátory). Jednalo se o registr S obsahující ukazatel na vrchol zásobníku, jehož obsah se zvyšoval nebo snižoval podle toho, jaká operace se se zásobníkem prováděla. Kromě aritmetických a logických operací pracovaly s obsahem zásobníku ještě následující instrukce:
Instrukce | Význam |
---|---|
DLET | odstranění položky z vrcholu zásobníku |
EXCH | prohození nejvyšších dvou položek na zásobníku |
RSUP | rotace prvních třech položek na zásobníku směrem nahoru |
RSDN | rotace prvních třech položek na zásobníku směrem dolů |
DUPL | duplikace položky uložené na vrcholu zásobníku |
MKST | vytvoření nového zásobníkového rámce |
Poznámka: znalci programovacího jazyka Forth si pravděpodobně povšimli, že výše uvedené instrukce se i přes odlišná jména podobají Forthovským slovům DROP, SWAP, ROT a DUP. Skutečně je tomu tak, protože Chuck Moore (autor Forthu) v jednom rozhovoru řekl, že se při jeho návrhu inspiroval mj. i platformou Burroughs B5000.
8. Obsah následující části seriálu
V následující části tohoto seriálu si podrobněji popíšeme, jakým způsobem vlastně byla operační paměť počítače Burroughs B5000 organizována, tj. jak se používaly deskriptory a segmenty. Taktéž se zmíníme o tom, jak se zpracovávaná data opatřovala takzvaným tagem, který nesl informaci o typech zpracovávaných dat. Díky použití tagů mohla sada instrukcí počítače B5000 zůstat velmi jednoduchá; protože se například instrukce ADD mohla chovat odlišně pro operandy různých typů (je ostatně zajímavé, že bajtkód používaný v JVM sice má podporu pro tagování a následnou kontrolu typů dat, ovšem namísto jediné instrukce ADD existuje celá řada instrukcí používaných pro různé typy operandů – návrháři Javy si toho sice jsou vědomi, ale zavedený bajtkód již nemohou z důvodů zpětné kompatibility nijak změnit).
![](https://i.iinfo.cz/images/76/4812-prev.jpg)
Obrázek 12: Postup při překladu programu napsaného v programovacím jazyce ALGOL.
Kromě výše zmíněných informací si příště taktéž řekneme, jakým způsobem se prováděl překlad programů napsaných v programovacím jazyce ALGOL.. Tento programovací jazyk totiž na platformě Burroughs B5000 nahrazoval assembler (jazyk symbolických instrukcí), což zjednodušilo návrh systémových programů a navíc to umožnilo dosažení dopředné kompatibility již napsaných aplikací se všemi dalšími mainframy, které firma Burroughs v následujících přibližně 25 letech vytvořila.
9. Odkazy na Internetu
- HOW ASCII GOT ITS BACKSLASH
http://www.bobbemer.com/BACSLASH.HTM - Burroughs B5000 Computer
http://www.cs.uaf.edu/2010/fall/cs441/proj1/b5000/ - Burroughs large systems (Wikipedia)
http://en.wikipedia.org/wiki/Burroughs_large_systems - Burroughs large systems instruction sets (Wikipedia)
http://en.wikipedia.org/wiki/Burroughs_large_systems_instruction_sets - William Seward Burroughs
http://history-computer.com/MechanicalCalculators/19thCentury/Burroughs.html - Burroughs Corporation (Wikipedia)
http://en.wikipedia.org/wiki/Burroughs_Corporation - Adding machine (Wikipedia)
http://en.wikipedia.org/wiki/Adding_machine - Burroughs B-205
http://www.angelfire.com/scifi/B205/ - Burroughs 205 Hardware Package Design
http://tjsawyer.com/B205Pkg.htm - ERA 1101 Documents
http://ed-thelen.org/comp-hist/ERA-1101-documents.html - Ukázkový program pro UNIVAC 1101/ERA 1101
https://wiki.cc.gatech.edu/folklore/index.php/Engineering_Research_Associates_and_the_Atlas_Computer_(UNIVAC_1101) - UNIVAC I Computer System
http://univac1.0catch.com/ - UNIVAC I Computer System
http://univac1.0catch.com/yellowpage.htm - UNIVAC (Wikipedia)
http://en.wikipedia.org/wiki/Univac - UNIVAC I (Wikipedia)
http://en.wikipedia.org/wiki/UNIVAC_I - UNIVAC II – Universal Automatic Computer Model II
http://ed-thelen.org/comp-hist/BRL61-u4.html - UNIVAC II (Wikipedia)
http://en.wikipedia.org/wiki/UNIVAC_II - UNIVAC III (Wikipedia)
http://en.wikipedia.org/wiki/UNIVAC_III - UNIVAC 1101 (Wikipedia)
http://en.wikipedia.org/wiki/UNIVAC_1101 - UNISYS History Newsletter
https://wiki.cc.gatech.edu/folklore/index.php/Main_Page - UNIVAC Solid State (Wikipedia)
http://en.wikipedia.org/wiki/UNIVAC_Solid_State - Bi-quinary coded decimal (Wikipedia)
http://en.wikipedia.org/wiki/Bi-quinary_coded_decimal - UNIVAC III Data Processing System
http://ed-thelen.org/comp-hist/BRL61-u4.html#UNIVAC-III - The UNIVAC III Computer
https://wiki.cc.gatech.edu/folklore/index.php/The_UNIVAC_III_Computer - UNIVAC III Photos
http://jwstephens.com/univac3/page01.htm - A History of Unisys Computers (kniha)
http://www.lulu.com/product/hardcover/a-history-of-unisys-computers/4627477 - UNIVAC III Instructions Reference Card
http://www.bitsavers.org/pdf/univac/univac3/UT-2455_UNIVACIII_RefCd61.pdf - Index register (Wikipedia)
http://en.wikipedia.org/wiki/Index_register - FLOW-MATIC, COBOL's Roots, Birth of COBOL…
http://www.inf.fu-berlin.de/lehre/SS01/hc/pl/cobol.htm - FLOW-MATIC
http://en.wikipedia.org/wiki/FLOW-MATIC - FLOW-MATIC Manual
http://archive.computerhistory.org/resources/text/Remington_Rand/Univac.Flowmatic.1957.102646140.pdf - Grace Murray Hopper
http://cs-www.cs.yale.edu/homes/tap/Files/hopper-story.html - Grace Hopper
http://en.wikipedia.org/wiki/Grace_Hopper - Biographies of Women Mathematicians: Grace Murray Hopper
http://www.agnesscott.edu/lriddle/women/hopper.htm - A-0 System
http://en.wikipedia.org/wiki/A-0_programming_language - Rosetta Code – Category:COBOL
http://rosettacode.org/wiki/Category:COBOL - COmmon Business Oriented Language
http://foldoc.org/COBOL - COBOL Compilers
http://www-01.ibm.com/software/awdtools/cobol/ - Cobol: Not Dead Yet
http://www.computerworld.com/s/article/266156/Cobol_Not_Dead_Yet?intsrc=kc_rfavs - The future's bright … the future's Cobol
http://features.techworld.com/applications/3056/the-futures-bright–the-futures-cobol/ - COBOL Example Programs
http://www.csis.ul.ie/COBOL/examples/default.htm - Introduction to COBOL
http://www.csis.ul.ie/COBOL/Course/COBOLIntro.htm - COBOL programming – tutorials, lectures, exercises, examples
http://www.csis.ul.ie/COBOL/ - Wikipedia: COBOL
http://en.wikipedia.org/wiki/COBOL - Humor on Computers, Systems and Programming
http://www-crypto.htw-saarland.de/weber/misc/programming.html - OpenCOBOL
http://en.wikipedia.org/wiki/OpenCOBOL - OpenCOBOL.org
http://opencobol.org/ - OpenCOBOL FAQ
http://opencobol.add1tocobol.com/ - TinyCOBOL
http://tiny-cobol.sourceforge.net/ - TinyCOBOL FAQ
http://tiny-cobol.sourceforge.net/docs/faq/ - JTC1/SC22/WG4 – COBOL
http://ra.dkuug.dk/jtc1/sc22/wg4/ - COBOL on COGS
http://www.coboloncogs.org/INDEX.HTM - Cobol Coders: Going, Going, Gone?
http://www.computerworld.com/s/article/266228/Cobol_Coders_Going_Going_Gone_ - BUNCH
http://en.wikipedia.org/wiki/BUNCH - The Colossus That Works
http://www.time.com/time/magazine/article/0,9171,949693–5,00.html - Mainframe computer
http://en.wikipedia.org/wiki/Mainframe_computer - United States Census Bureau
http://en.wikipedia.org/wiki/United_States_Census_Bureau - Slideshow – More Core Memories
http://spectrum.ieee.org/computing/hardware/slideshow-more-core-memories - UNIVAC I Mercury Delay Line Memory
http://ed-thelen.org/comp-hist/vs-univac-mercury-memory.html - Digital Number System Part-III
http://www.asic-world.com/digital/numbering3.html - Excess-3 – Definition
http://www.wordiq.com/definition/Excess-3 - Excess-3
http://en.wikipedia.org/wiki/Excess-3 - Method of complements
http://en.wikipedia.org/wiki/Method_of_complements - Univac documentation
http://www.bitsavers.org/pdf/univac/univac1/ - UNISERVO
http://en.wikipedia.org/wiki/UNISERVO - John Mauchly
http://en.wikipedia.org/wiki/John_Mauchly - J. Presper Eckert
http://en.wikipedia.org/wiki/J._Presper_Eckert - BINAC
http://en.wikipedia.org/wiki/BINAC - Delay line memory
http://en.wikipedia.org/wiki/Delay_line_memory - Paměť se zpožďovací linkou
http://cs.wikipedia.org/wiki/Paměť_se_zpožďovací_linkou - Description of the BINAC
http://www.palosverdes.com/lasthurrah/binac-description.html - UNIVersal Automatic Computer
http://www.thocp.net/hardware/univac.htm - IBM 36-bit computers
http://www.36bit.org/ibm/ - Symbolics 36-bit computers
http://www.36bit.org/symbolics/ - IBM System 360/370 Compiler and Historical Documentation
http://www.edelweb.fr/Simula/ - Who Was Who in IBM's Programming Research? Early FORTRAN Days
http://www.trailing-edge.com/~bobbemer/PRORES.HTM - Control Data Corporation (CDC) 6600: 1966–1977
http://www.cisl.ucar.edu/computers/gallery/cdc/6600.jsp - Control Data Corporation (CDC) 7600: 1971–1983
http://www.cisl.ucar.edu/computers/gallery/cdc/7600.jsp - Cray History
http://www.cray.com/About/History.aspx?404;http://www.cray.com:80/about_cray/history.html - Cray Historical Timeline
http://www.cray.com/Assets/PDF/about/CrayTimeline.pdf - Company: Cray Research, Inc. (Computer History)
http://www.computerhistory.org/brochures/companies.php?alpha=a-c&company=com-42b9d5d68b216 - PDP-1 Web Pages
http://www.pdp-1.org/ - PDP-1 Restoration Process
http://pdp-1.computerhistory.org/pdp-1/ - Programmed Data Processor
http://en.wikipedia.org/wiki/Programmed_Data_Processor - Digital Equipment Corporation
http://en.wikipedia.org/wiki/Digital_Equipment_Corporation - PDP-1
http://en.wikipedia.org/wiki/PDP-1 - Ancient Computing Machinery
http://www.ee.ryerson.ca/~elf/ancient-comp/index.html - Spacewar – The first computer video game. Really!
http://www3.sympatico.ca/maury/games/space/spacewar.html - Programmed Data Processor-1 Handbook
http://www.dbit.com/~greeng3/pdp1/pdp1.html