Historisch perspectief Flashcards
Accumulator architecture
Architectuur die meerdere registers kan hebben, maar die alle aritmetische resultaten bijhoudt in 1 register: de accumulator. De source (eerste) operand en de destination van de operatie is steeds de accumulator. Accumulator architectuur is een soort register architectuur, maar dan met slechts 1 general-purpose register. Het grote voordeel van ‘meer dan 1 general-purpose register is dat de compiler minder temporaire variabelen moet ‘spillen’ op de stack en er meer in parallel gewerkt kan worden (vb. a = (b-c) + (d-f)).
General purpose register architecture
Alle registers mogen voor eender welke doeleinden gebruikt worden. We kunnen deze architectuur in 2 verdere delen opsplitsen: register-memory architecturen (vb. x86) waarbij 1 operand in memory mag zitten (bevat accumulator architectuur) en de load-store / register-register architectuur waarbij de operanden steeds registers zijn (vb. RISC-V).
Stack architecture
Het idee van registers wordt volledig achtergelaten. Operanden worden op de stack gepushed en gepopped, zoals in oudere HP rekenmachines. Operaties nemen operanden van de stack en pushen het resultaat er weer op. Door geen registerallocatie, zijn compilers eenvoudiger en zijn de instructies compact te encoderen, hetgeen high-level programmatie geschikt maakt omwille van de lagere benodigde memory.
Reduced Instruction Set Computer Architecture (RISC)
Filosofie om een beperkt aantal kleine instructies (load-store instructies) met vaste lengte te gebruiken in een ISA in plaats van vele ingewikkelde instructies horende bij een CISC (Complex Instruction Set Computer). RISC heeft dus korte instructies, maar veel instructies per programma. CISC heeft lange, complexe instructies, maar weinig instructies per programma. RISC-V is uiteraard een RISC architectuur.
ENIAC
Electronic Numerical Integrator and Calculator. Gemaakt door onderzoekers van UPenn. Dit was de eerste operationele elektronische general- purpose computer, officieel publiek gemaakt in 1946. De machine is gefundeerd door het Amerikaans leger en werd gebruikt voor ‘artillery-firing tables’. De machine bevatte 20 10-digit registers op basis van ‘vacuum tube’ technologie. De
machine kon 1900 optellingen per seconde doen. Het programmeren ervan gebeurde manueel via het insteken van kabels, switches. Data invoeren gebeurt met ‘punched cards’. In essentie was ENIAC de eerste general-purpose machine, gelimiteerd door moeilijke programmatie en een kleine opslagcapaciteit.
EDVAC
Electronic Discrete Variable Automatic Computer. Het project is in 1952 gerealiseerd en is de opvolger van de ENIAC. Deze computer is een stored-program computer (instructies in elektronisch toegankelijke geheugen). Het idee kwam van von Neumann (cfr. Von Neumann Architectuur) Er werd binair gerekend in tegenstelling tot ENIAC’s decimale werkwijze.
EDSAC
Electronic Delay Storage Automatic Calculator. De eerste operationele stored-program computer, gebouwd in 1949, Cambridge. Gebruikt ‘mercury delay lines’ voor geheugen (volatiel). Had 1 memory voor instructies en data.
UNIVAC-I
Universal Automatic Computer 1. De eerste succesvolle commerciële computer in de VS (48 in totaal, prijs 1 miljoen dollar). Snele uitvoering van eenvoudige aritmetische instructies. Verkiezingen van 1952 correct gepredicted.
Cray-1
De eerste commerciële vector supercomputer, voorgesteld in 1976. Zowel de snelste, de duurste en de beste cost/performance computer voor wetenschappelijke programma’s. Zoals de naam doet vermoeden, gebouwd door Cray en de vorm was in de vorm van de letter C.
De eerste supercomputers
Een supercomputer is een computer met een buitengewoon groot rekenvermogen. Door de wet van Moore is ‘groot rekenvermogen’ relatief ten opzichte van de tijd. Zo heeft een zakrekenmachine vandaag meer rekenkracht dan de eerste supercomputer. De CDC (Control Data Corporation) 6600, ontworpen in 1964 wordt gezien als de eerste supercomputer. Deze was net zoals Cray-1 ontworpen door Cray. De performantie was ongeveer 3 miljoen flops.
IBM 360
Familie van verschillende implementaties van een zelfde architectuur. Groot en langdurig succes in de jaren ’60. IBM 360 introduceerde een aantal nieuwe concepten zoals reservation stations, gegeneraliseerde forwarding en
dynamische detectie van data hazards (dit laatste was niet zo succesvol, mar had invloed op latere architecturen).
IBM Blue Gene
Is gestart als een onderzoeksproject binen IBM (1999) voor het ‘protein sequencing and folding problem’. De onderzoekers merkten op dat power een groot probleem begon te worden in large-scale multiprocessors en dat de performance/watt van processoren uit de embedded wereld veel beter waren dan die in de high-end uniprocessor space. Dus indien parallellisme de ‘go-to’ was, waarom dan niet gebruik maken van het meest efficiënte ‘building block’ en dit dupliceren. Hierdoor kan Blue Gene snelheden bereiken van in de petaflops met lage power consumption.
IEEE 754
Belangrijkste standaard voor het voorstellen van floating point getallen (32 en 64 bits, 32 bits→1 sign, 8 exp, 23 mantisse). Standaard is 20 jaar onveranderd gebleven, hetgeen zeer uitzonderlijk is in de computerwereld. In 2008 is de standaard uitgebreid door toevoeging van 16-bit half precision en 128-bit quadruple precision formaten.
MS-DOS
Microsoft heeft QDOS (Quick and Dirty OS) overgekocht voor 15 000 dollar. Aan deze OS hebben ze een kleine verandering gedaan en vervolgens hebben ze het hernoemt naar MS-DOS (Microsoft Disk OS), 1980. MS-DOS was een simpele OS zonder moderne features (no protection, no processes, no virtual memory) omdat ze geloofden dat dit voor een PC niet nodig was. MS-DOS was het OS voor de IBM PC en werd een enorme succes (more than 500 000 copies sold). Langzaamaan is MS-DOS overvleugeld door nieuwere OS (met GUI).
MULTICS – UNIX
MULTiplexed Information and Computing Service. OS uit 1969 die onder andere strong protection en dynamic libraries bevatte. Dit was echter overmoedig waardoor de OS lelijk en vooral inefficient werd. Uit MULTICS is UNICS en vervolgens UNIX ontstaan (1973). UNIX wordt beschouwd als de meest elegante OS ooit gebouwd. Ze heeft onder andere een uniform file systeem, uniform process model en shell user interface. UNIX is eerst in assembly geschreven en later is C ontwikkeld om UNIX hierin te schrijven (high-level).