Inhoud leereenheid 1 De betekenis van moderne computersystemen Introductie Leerkern 1 21 22 De ontwikkeling van de computer 22 De dageraad van het computertijdperk 22 1.2 Vijf generaties commerciële computers 26 1.3 De ontwikkeling in cijfers en gebruikservaring Soorten computersystemen en hun toepassing 37 Het netwerk als computer 43 1.1 2 3 Samenvatting Zelftoets 43 45 Terugkoppeling 1 2 20 46 Uitwerking van de opgaven 46 Uitwerking van de zelftoets 46 34 Leereenheid 1 De betekenis van moderne computersystemen INTRODUCTIE De meeste mensen staan er misschien niet meer bij stil, maar we leven tegenwoordig in een verregaand geautomatiseerde samenleving. Niet alleen in het bedrijfsleven, maar ook in het leven van alledag heeft de computer een centrale plaats veroverd. De huidige generatie weet echter niet meer uit eigen ervaring hoe het vroeger zonder computers ging en hoe de introductie van de personal computer vanaf 1985, de integratie van computers in onze samenleving mogelijk heeft gemaakt. In de beleving van personen die niet behoorden tot de voorhoede die alle nieuwe ontwikkelingen snel oppakt, is de status van de computer ook aanzienlijk veranderd. Was de computer eerst vooral een bedreiging voor de werkgelegenheid, een rivaal voor het intelligente mensenras en een gevaarlijk instrument in de handen van de machthebbers, is er nu een genuanceerder beeld ontstaan. De meeste mensen kunnen nu goed de negatieve aspecten bij de brede invoering van de computer onderscheiden van de positieve aspecten, hoewel het aantal verschillende soorten systemen en toepassingen gigantisch gegroeid is. Zonder dat men precies weet wat er zich onder de ‘motorkap’ afspeelt, is er in zekere mate reeds vertrouwen ontstaan in de computer. Ondanks het feit dat het werken met computers vanzelfsprekend is, is het voor een juist begrip goed in deze leereenheid even stil te staan bij de, soms stormachtige ontwikkeling van de computer. In deze ontwikkeling zijn computers gaandeweg toegespitst op specifieke toepassingen die elk hun eigen eisen stellen aan snelheid, ondersteuning, elektrisch vermogen, toepasbaarheid en prijs. We zullen dan ook een classificatie geven van deze toepassingen en de daarbij horende verschillende types computers. Enkele van deze computers zullen later in deze cursus weer worden besproken. Misschien dat u dan ook, door extrapolatie naar de toekomst, begrijpt dat we in de nabije toekomst nog heel wat nieuwe ontwikkelingen kunnen verwachten. LEERDOELEN Na het bestuderen van deze leereenheid wordt verwacht dat u – in eigen woorden de ontwikkeling van de computer kunt schetsen – enkele mijlpalen uit de geschiedenis van de commerciële computers kunt noemen – enkele karakteristieken van moderne computers, zoals de snelheid, prijs, orde van grootte van data-opslag, betrouwbaarheid en gebruiksvriendelijkheid kunt aangeven – de verschillende soorten processoren en computers kunt noemen – de koppeling tussen type computer of microprocessor en type toepassing in eigen woorden kunt verklaren OUN 21 De werking van computersystemen Studeeraanwijzingen De inhoud van deze leereenheid bestaat voornamelijk uit leestekst. U hoeft niet alles van buiten te leren wat behandeld wordt, als u maar in grote lijnen de inhoud kunt schetsen en het geheel in een groter verband kunt plaatsen. Natuurlijk geven de begrippen en namen u een houvast bij wat belangrijk is. De studielast van deze leereenheid is dan 3 uur. LEERKERN 1 ‘Computer’ is Engels voor rekenmachine. Het begrip computer wordt tegenwoordig als vanzelfsprekend geassocieerd met elektronica, chips en software. Toch is dat niet altijd zo geweest. Het idee om een apparaat voorgeprogrammeerde berekeningen uit te laten voeren is dan ook al veel ouder dan de stormachtige ontwikkeling van de elektronica, die zich afspeelde in pakweg de afgelopen zestig jaar. Voordat we de explosieve ontwikkeling van de elektronische digitale computer bespreken, beschouwen we daarom in vogelvlucht wat daaraan vooraf is gegaan. 1.1 Charles Babbage: Analytical Engin Zie leereenheid 2. Ada Lovelace De ontwikkeling van de computer DE DAGERAAD VAN HET COMPUTERTIJDPERK Rond 1840 bedacht de Engelse uitvinder en wiskundige Charles Babbage een programmeerbare machine, de Analytical Engine, voor het uitvoeren van willekeurige berekeningen (zie figuur 1.1). Net als de huidige computers had deze machine al een invoer-, een reken- en een uitvoereenheid, een geheugen en zelfs een controle-eenheid. In dit opzicht was Babbage zijn tijd ver vooruit. Hij besteedde de rest van zijn leven aan de verwezenlijking van de Analytical Engine. Helaas heeft hij een werkende machine nooit aanschouwd, want bij de toenmalige stand van de techniek, mechanisch met honderden tandwielen en hefbomen, kon het apparaat vanwege de optredende wrijvingen nooit werken. Wel waren er al programma’s voor geschreven door Babbages begaafde zakelijke partner Ada Lovelace (zie figuur 1.1 rechts). Zij wordt dan ook beschouwd als de eerste programmeur uit de geschiedenis. Om die reden is de programmeertaal Ada naar haar genoemd. FIGUUR 1.1 22 Charles Babbage (a), zijn geesteskind de Analytical Engine (b) en Ada Lovelace (c), die programma’s schreef voor het apparaat OUN Leereenheid 1 De betekenis van moderne computersystemen Herman Hollerith Tabuleermachine John Atanasoff met de ABC-computer Alan Turing Thomas H. Flowers met de COLOSSUS In 1890 ontwierp én bouwde de wiskundige Herman Hollerith voor de Amerikaanse regering een tabuleermachine om een volkstelling uit te voeren. Deze keer betrof het een elektromechanisch apparaat, dat werkte met ponskaarten. De ponskaart bevat kolommen waarbij per kolom gaatjes kunnen worden geponst. Een kolom kan de vraag voorstellen en de positie van een gaatje in zo’n kolom stelt dan een mogelijk antwoord op de vraag voor. Bijvoorbeeld de leeftijd in twee kolommen; een kolom voor de tientallen een kolom voor de eenheden. Ook een kolom voor het geslacht met twee mogelijkheden. Door het automatisch uitlezen van deze ponskaarten kon de tabuleermachine binnen enkele dagen een antwoord geven op bijvoorbeeld het aantal Amerikanen dat op het moment van de volkstelling tussen de 40 en 50 jaar oud was. De verwachting was dat de handmatige uitwerking van de volkstelling circa dertien jaar in beslag zou nemen. De tabuleermachine versnelde dit proces dus enorm. In 1896 richtte Hollerith de Tabulating Machine Company op, die in 1924 door fusies opging in de bekende computergigant IBM (International Business Machines Corporation). Deze firma voltooide in 1944, na een voor die tijd formidabele financiële investering van een miljoen dollar, de Mark I, een universele, maar nog steeds elektromechanische computer, met een lengte van zo’n 16 meter en een inhoud van 23 m3. De fundamentele bouwsteen van de Mark I was het relais, een elektrische schakelaar. Het geklik van de relais maakte de machine behoorlijk lawaaiig. De Mark I had 60 rijen van 24 schakelaars, elk voor het invoeren van getallen. De instructies werden vanaf een papieren ponsband gelezen. De machine kon 72 getallen met maximaal 23 decimale cijfers onthouden. Per seconde kon de Mark I drie optellingen of aftrekkingen uitvoeren. Een vermenigvuldiging nam zes seconden in beslag, terwijl de berekening van een logaritme of goniometrische functie meer dan een minuut vergde. De Mark I was in gebruik bij de Amerikaans marine. Eind jaren dertig en begin jaren veertig werd ook elders op verschillende locaties gelijktijdig driftig aan de ontwikkeling van de computer gewerkt, niet in de laatste plaats gestimuleerd door de Tweede Wereldoorlog. Het eerste werkende prototype van een ‘special purpose’ elektronische computer wordt officieel toegeschreven aan John Atanasoff, een hoogleraar in de natuurkunde aan de Iowa State University in de Verenigde Staten. Hij noemde zijn model dat in 1939 gereed kwam en met elektronenbuizen werkte, de ABC (Atanasoff-Berry Computer). De ABC-computer was ontworpen om stelsels lineaire algebraïsche vergelijkingen op te lossen. In Engeland werkte een team, geïnspireerd door onder meer de befaamde Alan Turing, met succes aan een elektronische computer, de COLOSSUS, om de geheime codes van de Duitsers te kraken. De COLOSSUS was eind 1943 operationeel, maar de constructie en werking was tot 1973 militair topgeheim. Hierdoor bleven de mensen die fundamentele bijdragen aan de COLOSSUS hebben geleverd anoniem, onder meer Thomas H. Flowers, de ontwerper van de COLOSSUS. De bijdragen zelf kwamen ook niet in de publiciteit waardoor andere computerontwikkelingen hierop niet verder konden bouwen. Met de openbaarmaking van dit project wordt nu algemeen erkend dat de COLOSSUS de eerste werkende algemeen programmeerbare elektronische digitale computer ter wereld is en niet de ENIAC, zoals tot voor kort werd aangenomen (zie later in deze paragraaf). OUN 23 De werking van computersystemen Konrad Zuse met de Z1 Eckert en Mauchly met de ENIAC In het Duitse kamp werd belangrijk pionierswerk verricht door Konrad Zuse, die toen al veel van de concepten formuleerde die nu nog de basis vormen voor de moderne computers. Omstreeks 1936 ontwierp en realiseerde hij een computer, de Z1, die gebaseerd was op elektrische relais, en later ook op elektronenbuizen. Zijn werk werd destijds door de Duitse machthebbers onvoldoende ondersteund en zijn machines zijn in het oorlogsgeweld verloren gegaan.. In 1943 vroeg en kreeg John Mauchly in Amerika geld om een elektronische computer te realiseren. Samen met zijn studentassistent J. Presser Eckert realiseerde hij aan de Universiteit van Pennsylvania de ENIAC (Electronic Numerical Integrator And Calculator) op basis van de inzichten van professor Antanasoff. Doordat de ENIAC na de Tweede Wereldoorlog gereed kwam, in 1946, kon over dit onderwerp volop worden gepubliceerd, waardoor de ENIAC de belangrijkste impuls voor de verwezenlijking van de hedendaagse commerciële computers is geworden en tot voor kort als ‘eerste elektronische computer’ werd gezien. FIGUUR 1.2 De ENIAC: één van de eerste multifunctionele elektronische computers Dit prototype vulde gemakkelijk een zaal van tien bij vijftien meter. Er waren 18 000 elektronenbuizen in verwerkt, hij woog 30 ton en verbruikte 150 kW aan elektriciteit en maakte gebruik van een professionele luchtkoeling met grote ventilatoren om te vermijden dat het tot een grote ‘meltdown’ in de elektronica kwam. Toch kon het geheugen niet meer dan twintig getallen van tien cijfers bevatten en was deze computer naar tegenwoordige maatstaven buitengewoon traag. Het ontwerp en de constructie van de ENIAC waren een belangrijke stap vooruit, omdat deze computer net als de COLOSSUS kon worden geprogrammeerd – zij het door middel van schakelaars en kabeltjes – en invoer en uitvoer op ponskaarten kon verwerken respectievelijk genereren. 24 OUN Leereenheid 1 De betekenis van moderne computersystemen EDVAC en EDSAC met Von Neumann Stored-programconcept In leereenheid 2 komen we hierop terug. Howard Aiken Harvard architectuur Ringkerngeheugen Jay Forrester Gegevens en programma werden dus bij beide computers verschillend behandeld. In de opvolgers van de ENIAC, namelijk de EDVAC (Electronic Discrete Variable Automatic Computer) en de EDSAC (Electronic Delay Storage Automatic Calculator), waaraan ook de computerpionier John von Neumann meewerkte, werd het programma daarentegen op dezelfde manier ingevoerd en opgeslagen als de gegevens, namelijk in het geheugen. Dit principe, dat ook in de moderne computers nog wordt toegepast, heet het stored-programconcept. Hoewel dit nu een logisch en efficiënt principe lijkt, was het in die tijd niet vanzelfsprekend. Ook rekende de EDSAC met binaire getallen en niet meer met decimale getallen zoals de ENIAC. Eind jaren veertig werkte Howard Aiken van Harvard University nog aan opvolgers van de Mark I, de Mark III en IV, die afzonderlijke geheugens hadden voor programmainstructies en gegevens. Deze ontwikkeling staat bekend als de Harvard-architectuur. Naast de processor is een snel, betrouwbaar, groot en goedkoop geheugen in een computer (nog steeds) van groot belang. Eigenlijk worstelden alle genoemde computers met het probleem om een geschikt geheugen voor tussenresultaten te construeren. Een belangrijke stap hierin die we hier niet onvermeld kunnen laten, was het gebruik van ringkerngeheugens: magnetiseerbare ringetjes om de kruispunten van een rooster van horizontale en verticale draden, zie figuur 1.3. Door het sturen van stromen door de draden konden de ringetjes al of niet gemagnetiseerd worden, hetgeen door detectie van stromen weer afgelezen kon worden. Zo stelde de toestand van elk ringetje (wel of geen magnetisatie) een stukje informatie voor. Deze geheugens werden eind jaren veertig aan het Massachusetts Institute of Technology door Jay Forrester ontwikkeld en vormden ruim 25 jaar de belangrijkste manier om computergeheugens te realiseren. Het grote voordeel van deze techniek was dat de gegevens in het geheugen niet verloren gingen als de stroom uitgeschakeld werd. FIGUUR 1.3 Magnetisch kerngeheugen OUN 25 De werking van computersystemen Ook Nederland kende in de jaren na de Tweede Wereldoorlog pioniers in de computerbouw. Er waren drie centra in Nederland die grote rekenmachines ontwikkelden: het Mathematisch Centrum in Amsterdam (A. van Wijngaarden, E.W. Dijkstra en G.A. Blaauw), het PTT Centraal Laboratorium in Den Haag (L. Kosten, W.L van der Poel) en het Natuurkundig Laboratorium van Philips in Eindhoven. Rekenautomaten heetten ze in de jaren vijftig, met wonderlijke namen als Testudo, Ptera en, bij Philips, de Peter en de Pascal (Philips Akelig Snelle CALculator). Het waren kolossen van grijs gemoffeld staal, gevuld met klikkende relais, gloeiende radiobuizen en vooral veel draden. De eerste machine die in serie werd gebouwd, was de Zebra (Zeer Eenvoudig Binair Rekenapparaat, 1957), een jaar later gevolgd door de X1. De komst van de chip, met de IBM 360 in 1965, luidde het einde in van het pionierstijdperk in Nederland. ZEBRA en X1 Leestekst Slimme vrouwen die zelf vaak niet de gelegenheid hadden gehad om een wiskundestudie te volgen, speelden in de ondersteuning een cruciale rol bij het programmeren van de rekenmonsters (zij werden de rekenaarsters genoemd), zoals dat ook bij de ontwikkeling van de verschillende generaties van Enigma-machines in de Tweede Wereldoorlog het geval was. 1.2 UNIVAC I VIJF GENERATIES COMMERCIËLE COMPUTERS Op 14 juni 1951 begon met de verkoop van het eerste exemplaar van de UNIVAC I (Universal Automatic Computer, zie figuur 1.4), voor ongeveer $ 1.000.000, officieel het tijdperk van de commerciële computers. De machine werd gemaakt door de Eckert-Mauchly Computer Corporation en was feitelijk gebaseerd op de ENIAC. Er zijn in totaal 48 exemplaren van verkocht. Hiermee begon een explosieve ontwikkeling van de computer. We kunnen deze ontwikkeling ruwweg onderverdelen in vijf fasen, vijf generaties computers, onderscheiden naar de technologie waarop ze gebaseerd waren. De grens tussen verschillende generaties is overigens niet altijd exact aan te geven. Eerste generatie: elektronenbuizen (1951-1958) Met de verkoop van de eerste UNIVAC is de commerciële opmars van de computer begonnen. IBM, dat al langer in de ponskaarten- en kantoorautomatisering actief was, begon pas in 1950 met het bouwen van zijn eerste computer. De eerste IBM-computer, de IBM 701, kwam in 1952 op de markt. Van deze computer werden uiteindelijk negentien exemplaren verkocht. Beide computers, zoals ook andere van deze generatie, waren gebaseerd op elektronenbuizen. 26 OUN Leereenheid 1 De betekenis van moderne computersystemen FIGUUR 1.4 Lee De Forest: uitvinder van de elektronenbuis in 1907 De UNIVAC I: de eerste commerciële computer Elektronenbuizen worden ook wel oneerbiedig radiobuizen genoemd. Elektronenbuizen (zie figuur 1.5a) zijn uitgevonden door Lee De Forest in 1907 en waren tot de uitvinding van de transistor na de Tweede Wereldoorlog de bouwstenen in de elektronica. Door de mogelijke toepassing als snelle schakelaar werden zij ook in digitale computers gebruikt. Leestekst Elektronenbuizen werken door het feit dat bepaalde materialen, bijvoorbeeld metalen en oxiden, elektronen uitzenden bij verhitting in een vacuüm. Onder invloed van een elektrische spanning bewegen deze elektronen zich in een elektronenbuis tussen twee elektroden: van de kathode (aangesloten op de minpool van een spanningsbron, en verhit door een gloeidraad) naar de anode (een metalen plaat, aangesloten op de pluspool van die spanningsbron). Behalve deze twee elektroden is er in een elektronenbuis nog een derde elektrode te vinden, die zich tussen de anode en de kathode bevindt: het raster. Door het spanningsverschil tussen de kathode en het raster te variëren is de sterkte van de elektronenstroom tussen de kathode en anode te beïnvloeden (zie figuur 1.5 rechts). In de digitale compe zijn relatief groot en kwetsbaar. Computers die op deze componenten waren gebaseerd, waren dan ook groot en niet erg betrouwbaar. Velen dachutertechniek zijn alleen twee extremen van belang: ‘veel’ of ‘weinig’ stroom. De elektronenbuis wordt dan gebruikt als schakelaar; de spanning op het rooster bepaalt dan de ‘stand’ van de schakelaar. Elektronenbuizen verbruiken veel energie en produceren daarom veel warmte. Zten in die tijd dan ook dat computers slechts voor zeer specialistische doelen bruikbaar zouden zijn. OUN 27 De werking van computersystemen a FIGUUR 1.5 b Diverse typen elektronenbuizen (a) en het principeschema van een elektronenbuis (b) OPGAVE 1.1 In een interview met Eckert kwam naar voren dat bij de ENIAC eens in de twee dagen één elektronenbuis sneuvelde van de 18 000 die de ENIAC bezat. Wanneer er één sneuvelde, was de defecte buis binnen vijftien minuten gelokaliseerd en doordat de mechanische opbouw doordacht was, binnen enkele seconden vervangen. Wat betekenen deze feiten voor de commerciële inzetbaarheid van computers met elektronenbuizen? Tweede generatie: transistors (1959-1964) In elektronenbuizen is een grote hitte en een vacuüm nodig om de selectieve geleiding van elektronen mogelijk te maken. Een speciale categorie vaste stoffen kan echter ook geschikt worden gemaakt om selectief geleidend te worden: zogenaamde halfgeleiders. Voorbeelden van halfgeleiders zijn silicium, overvloedig aanwezig in de vorm van gewoon zand, en germanium. Door deze halfgeleiders te voorzien van geringe onzuiverheden, het zogenaamde doteren, kan het geleidend vermogen van deze stoffen kunstmatig worden geregeld, waardoor het mogelijk wordt om dit als basis voor een schakelaar te gebruiken. Halfgeleiders Leestekst Zie ook leereenheid 4. Sommige onzuiverheden hebben een overschot aan elektronen en verhogen daardoor het geleidend vermogen (n-type). Andere onzuiverheden hebben juist een tekort aan elektronen (‘gaten’), hetgeen eveneens het geleidend vermogen vergroot (p-type). Door een n-type-materiaal met p-type-materiaal te verbinden ontstaat een gebied waarin de elektronen vanuit het n-type-materiaal doordringen in het p-type-materiaal en gaten vanuit het p-type-materiaal doordringen in het n-type-materiaal. Deze elektronen en gaten zullen elkaar opheffen (recombineren), waardoor er vrijwel geen elektrische geleiding meer is. De grootte van dit gebied (de n-p-overgang) kan beïnvloed worden door er een elektrische spanning over aan te brengen en daarmee de geleidbaarheid te beïnvloeden. Op deze wijze is het mogelijk om het geleidend vermogen van de n-p-overgang te regelen. William Shockley John Bardeen en Walter Brattain Puntcontacttransistor 28 Bij Bell Laboratories werd in 1945 een groep opgericht met als doel een ‘solid-state’-versterker te produceren op basis van halfgeleidende materialen. De groep stond onder leiding van William Shockley. Op basis van de eigenschappen van germanium wisten John Bardeen en Walter Brattain, leden van de Shockleygroep, eind 1947 een puntcontacttransistor te maken. Deze puntcontacttransistor (zie figuur 1.6a) bestond uit een klein plaatje metaal waarop een germaniumkristal was bevestigd. Op dit kristal werden twee dunne metalen draadjes gemonteerd, die dichtbij elkaar lagen. Met het aanbrengen van een spanningsverschil tussen elk van de draden en het metalen plaatje veranderde het geleidende vermogen van het kristal, waardoor een schakelaar ontstond. OUN Leereenheid 1 De betekenis van moderne computersystemen De naam ‘transistor’ werd bedacht als samentrekking van ‘transfer’ en ‘resistor’, vanwege de eigenschap dat deze component selectief als elektrische geleider of als isolator kan optreden. Aanvankelijk werd deze prestatie nauwelijks opgemerkt. Toch staat deze uitvinding aan de basis van de moderne elektronica. Het duurde echter tot 1950 voordat Shockley een echte bipolaire transistor wist te produceren, waarmee feitelijk de eerste grote stap in het tijdperk van de micro-elektronica werd gezet. Bipolaire transistor Leestekst. In leereenheid 4 gaan we hier dieper op in. De bipolaire transistor bestaat uit twee n-p-overgangen binnen één kristal. De term ‘bipolair’ komt voort uit het feit dat bij een dergelijke transistor het geleidend vermogen op zowel elektronen als op gaten is gebaseerd. Afhankelijk van de soort wordt er gesproken over een n-p-n-transistor of van een p-n-p-transistor. Het middelste stukje halfgeleider is erg dun. Op elk van de stukjes wordt een metallisch contact bevestigd. Als over één van de n-p-overgangen een gering spanningsverschil wordt aangebracht, zodat het geleidend vermogen van de n-p-overgang toeneemt, zal er een stroom gaan lopen door het middelste gebied. Omdat dit gebied erg dun is, zal deze stroom ook het geleidend vermogen van de tweede n-p-overgang beïnvloeden, zodat ook dit geleidend wordt. Met deze eigenschap is een schakelaar met geringe afmetingen ontstaan. Gordon Teal Bipolaire siliciumtransistor Het duurde nog tot 1954 voordat Gordon Teal, eerder werkzaam bij Bell Laboratories, bij Texas Instruments op basis van silicium een transistor wist te maken. Silicium kent een aantal voordelen ten opzichte van germanium, waaronder de mogelijkheid om onder hogere temperaturen te functioneren, waardoor het uitermate geschikt is voor militaire toepassingen. a FIGUUR 1.6 b De eerste transistor van Bardeen en Brattain (a) en enkele meer recente transistors (b) Door de grote investeringen van de Amerikaanse defensie ging de halfgeleidertechniek met sprongen vooruit. Door de miniaturisering konden transistors worden ondergebracht in een behuizing van metaal of kunststof, die niet groter was dan enkele millimeters (zie figuur 1.6b). De transistor, in al zijn verschillende uitvoeringen, kon dus relais en elektronenbuizen vervangen als schakelaar. Vergeleken met elektronenbuizen hebben transistors een langere levensduur, een kleinere omvang, minder energieverbruik en daardoor veel minder warmteontwikkeling OUN 29 De werking van computersystemen en een grotere betrouwbaarheid. Door het bouwen van betrouwbare computers op basis van transistors, nam de toepasbaarheid van computers op administratief en bedrijfseconomisch gebied toe. Een voorbeeld van een dergelijke computer is de IBM 1401. Voor het interne geheugen van deze generatie computers werd nog gebruikgemaakt van ringkerngeheugens. Robert Noyce Jack Kilby IC of geïntegreerd circuit Planair proces Derde generatie: geïntegreerde circuits (1965-1970) Door de stimulans vanuit de ruimtevaartindustrie eind jaren vijftig en begin jaren zestig ontstaat de behoefte om het volume, het gewicht en het energieverbruik van elektronische schakelingen te verminderen. Onafhankelijk van elkaar vatten Robert Noyce van Fairchild Semiconductors en Jack Kibly van Texas Instruments het plan op om transistors en weerstanden op één schijfje halfgeleidermateriaal (een chip) onder te brengen en te verbinden. Hierdoor ontstaat een schakeling met een zeer kleine afmeting en een gering gewicht. Het resultaat wordt een geïntegreerd circuit (IC, integrated circuit) genoemd. In 1959 slaagt Kibly er als eerste in om dit te realiseren op plakjes germanium. Texas Instruments komt spoedig als eerste met een IC van $ 450 per stuk in de openbaarheid. Het is echter Noyce die later dat jaar met een proces komt om op een betrouwbare wijze IC’s te produceren, het planaire proces. Het voorhanden zijn van een betrouwbaar proces is essentieel voor de massaproductie van IC’s. De verschillende elektronische functies waarvoor eerder talloze onderdelen nodig waren, worden nu ondergebracht in een minuscuul schijfje, zoals dat in figuur 1.7. Hierdoor zijn de productiekosten bij grote aantallen relatief laag. De hoogste kosten zitten bij IC’s in onderzoek en ontwikkeling. FIGUUR 1.7 IBM System/360 30 Een geïntegreerde schakeling: de behuizing is bepalend voor het volume dat een IC inneemt Computers die op basis van deze componenten werden gemaakt, waren grote, voor die tijd krachtige en centrale computers. Een voorbeeld hiervan is de beroemde IBM System/360-familie, welke eind 1964 op de markt werd gebracht. De IBM System/360-familie bestond uit een aantal computers die in prijs en prestatie varieerden: de modellen 20, 30, 40, 50, 60, 65 en 75. Zo kostte een model 40 (figuur 1.8 links) $ 225.000 terwijl een model 60 (figuur 1.8 rechts) $ 1.000.000 kostte. De interne geheugens van deze computers bestonden nog steeds uit ringkerngeheugens. OUN Leereenheid 1 De betekenis van moderne computersystemen Interne geheugens op basis van IC’s werden pas vanaf ongeveer 1970 gebruikt, toen het aantal componenten dat per IC kon worden gerealiseerd, daarvoor groot genoeg was. In deze periode was het gebruikelijk om gegevens en programma’s in te voeren op ponsband en ponskaarten. De resultaten werden uitgevoerd door automatische typemachines en regeldrukkers. a b De IBM System/360 model 40 (a) en model 60 (b) FIGUUR 1.8 Small Scale Integration Large Scale Integration Very Large Scale Integration: VLSI Wet van Moore Vierde generatie: microprocessoren (1980-heden) Met het opkomen van het IC is een proces gestart dat als één van de basisvoorwaarden van de informatierevolutie wordt beschouwd: de miniaturisering in de elektronica. Na de eerste IC’s werd het mogelijk om steeds meer transistors op een IC te plaatsen, terwijl de grootte van een enkele transistor en de breedte van de verbindingen afnamen. Met het toenemen van het aantal transistors per IC nam ook de prijs per transistor af. In de eerste IC’s waren slechts enkele tientallen transistors te onderscheiden. Er wordt dan wel gesproken van Small Scale Integration (SSI). Naarmate de miniaturisering voortschreed, werd er gesproken van Large Scale Integration (LSI), waarbij er enkele honderden tot duizenden transistors op een IC geplaatst werden. Tegenwoordig worden er miljoenen transistors op een IC geplaatst, wat wordt aangeduid met Very Large Scale Integration (VLSI). Gordon E. Moore, toen hoofd Research van Fairchild Semiconductors en in 1968 medeoprichter van Intel Corporation, beschreef in een artikel in het blad Electronic in april 1965 dat de toename van het aantal transistors per chip sinds 1959 elk jaar was verdubbeld en hij verwachtte dat deze ontwikkeling zo zou doorgaan. De voorspelde verdubbeling van het aantal transistors per jaar wordt ook wel de Wet van Moore genoemd. Inmiddels is er een langere tijdlijn beschikbaar, zie tabel 1.1. Jaarlijkse verdubbeling van het aantal transistors per processorchip (Intel, M is miljoen). TABEL 1.1 jaar 1971 1979 1989 2000 2007 aantal 2300 29000 1,2 M 42 M 820 M type 4004 8088 80486 P4 Xeon P 4 core OUN 31 De werking van computersystemen Op basis van deze getallen blijkt nu het aantal transistoren iedere twee jaar te verdubbelen, wat neerkomt op een stijging van 40% per jaar. De laatste jaren is het echter wel duidelijk geworden dat deze exponentiële groei langzaam maar zeker zal stoppen. Fundamentele grenzen zullen worden bereikt, waardoor een verschuiving naar een andere technologie te verwachten is, maar er is nog veel discussie in de wetenschappelijke wereld wanneer deze ombuiging plaats zal vinden; vooralsnog is deze ombuiging nog niet zichtbaar. Ofschoon niet expliciet vermeld, is er een verband tussen het aantal transistors en het aantal functies, waaronder rekenfuncties, op een chip. Naarmate het aantal transistoren groter is, kunnen tot dan op aparte chips ondergebrachte functies worden toegevoegd op de chip waarop de processor zich bevindt. Een voorbeeld hiervan is het toevoegen van een apart geheugen (cache). We komen hier later op terug. Of omgekeerd, een processor (een core) wordt toegevoegd aan andere functies, zoals bijvoorbeeld bij modems waarbij de analoge schakelingen voor signaalbehandeling, een aantal functies en een processor worden toegevoegd om het geheel te besturen en het communicatieprotocol te implementeren. Feitelijk is de mogelijkheid om meer transistoren per eenheid van oppervlakte op een chip te plaatsen de motor achter de steeds maar weer verdergaande integratie van functies op een chip. Matoshi Shima Ted Hoff Frederico Faggin Intel 4004 microprocessor Intel 8088 microprocessor De Japanse firma Busicom, een fabrikant van boekhoudmachines, gaf rond 1969 de firma Intel, toentertijd voornamelijk een fabrikant van halfgeleidergeheugenchips, de opdracht om op hun specificaties een chip te maken die in de boekhoudmachine het rekenwerk zou uitvoeren. Tot dan werd het rekenwerk door een kostbare verzameling van aparte LSI-chips uitgevoerd. Kostbaar vanwege het samenbouwen van al deze aparte chips. Een medewerker van Busicom Masatoshi Shima ging samen met Ted Hoff en Frederico Faggin van Intel aan de slag om een algemeen toepasbare goedkope ‘rekenchip’ te ontwerpen. Het resultaat was in 1971 de Intel 4004, zie figuur 1.9 en tabel 1.1, ‘s werelds eerste 4-bits microprocessor. Busicom verkocht toen de rechten op het gebruik van deze processor aan Intel, al was de toepassing in boekhoudmachines uitgezonderd. Vanwege het onverwachte succes van de Intel 4004 werd deze bijna onmiddellijk (1972) opgevolgd door een 8 bits variant, de Intel 8008, en via de Intel 8080 en Intel 8086 ontstond in 1979 de Intel 8088, de processor van de IBM (compatible) personal computers Door de komst van de microprocessor is het mogelijk om goedkopere computers te maken, speciaal gericht op de thuis- of hobbymarkt, zogenaamde homecomputers of personal computers. In Los Angeles werd in 1975 al de eerste computershop geopend. De computer is een consumentenartikel geworden. In 1976 komt Apple met de eerste homecomputer, de Apple I met een processorchip van de firma Motorola. IBM komt pas in 1981 met zijn eerste personal computer (pc). Omdat echter de gebruikte principes en standaarden vrijgegeven worden, verschijnen er dan (1980) op grote schaal pc-klonen. Al snel na de introductie domineert de IBM-compatible pc de markt. 32 OUN Leereenheid 1 De betekenis van moderne computersystemen FIGUUR 1.9 De Intel 4004, de eerste microprocessor Een hernieuwde impuls voor het gebruik van de pc komt van het beschikbaar komen van internet-toegang vanuit de woningen (circa 1995) door inbellen via gewone telefoonverbindingen, gevolgd door breedbandtoegang (2 Mbps of meer), draadloze communicatie (WiFi, IEEE 802.11g, 2003) en laptops. Hierdoor evolueerde de pc van rekenmachine naar een mobiel multimediaal informatiesysteem. Mark Weiser Pervasive computing Analoge computers De vijfde generatie: onzichtbare computers Wanneer we de hele ontwikkeling overzien, kunnen we maar één conclusie trekken: computers krimpen! Op een chip komen processors, geheugen, voorzieningen om in- en uitvoer te koppelen, kortom, een complete computer op een chip. Gekoppeld door netwerken zal deze ‘computing dust’ ons onzichtbaar omringen met diensten om deuren te openen, lichten te dimmen, routes aan te geven en duizenden andere dingen voor ons te doen en te regelen. Deze visie, ontwikkeld door Mark Weiser werd oorspronkelijk aangeduid met ubiquitous computing, maar de term pervasive computing of ambient intelligence wordt nu vaker gebruikt. Onzichtbaar moet hier geïnterpreteerd worden als: de gebruiker heeft veel minder het besef dat er een computer in een apparaat zit die rekenfuncties uitvoert. De perceptie van de hardware die reageert op een actie van de gebruiker of op het aflopen van een proces (bijvoorbeeld: de wasbeurt in de wasmachine wordt afgesloten) staat voorop. Dat daarvoor een processor rekenwerk verricht in het apparaat wordt minder ervaren dan bij een pc het geval is. Andere principes voor rekenmachines Tot nu toe hebben we alleen digitale computers bekeken. Er zijn ook computers die werken met de momentane waarde van signalen als uitkomst van een berekening. Dit zijn de zogenaamde analoge computers, die soms nog in dynamische systemen als rekenapparaat worden gebruikt. Feitelijk simuleren deze computers de uitkomst van zogenaamde differentiaalvergelijkingen. Deze vergelijkingen zijn gebaseerd op het vergelijken van veranderingen van variabelen in plaats van het vergelijken van de waarde van variabelen, zoals bij gewone algebraïsche vergelijkingen het geval is. De oplossing van een differentiaalvergelijking is een functie. OUN 33 De werking van computersystemen Quantumcomputer Een analoge computer werkt meestal met elektrische signalen en is een systeem waarin versterkers, integratoren en differentiatoren de overeenkomende wiskundige functies uitvoeren. De programmering van een analoge computer bestaat uit het met elkaar doorverbinden van één of meer van deze componenten tot een schakeling ontstaat waarvan het gedrag wordt beschreven door de op te lossen differentiaalvergelijking. Daarnaast moeten op bepaalde punten in de deze schakeling de startvoorwaarden worden ingesteld: randvoorwaarden in het wiskundig jargon. Het signaal dat na de start van de computer in de schakeling ontstaat en getoond wordt op een beeldscherm is de gezochte oplossing van de differentiaalvergelijking. Analoge computers worden overigens steeds meer geschiedenis en worden vervangen door digitale computers die de oplossing numeriek benaderen. De hierbij gebruikte methoden worden ontleend aan de numerieke wiskunde. In de toekomst maakt mogelijkerwijs de quantumcomputer een kans, al is een praktisch bruikbare vorm nog steeds ver weg. Deze computer is gebaseerd op principes uit de quantummechanica en werkt met qubits (quantumbits). De qubits hebben de waarde 0 of 1, maar het bijzondere is dat de combinatie van deze bits met een bepaalde waarschijnlijkheid gelijktijdig optreedt. Bijvoorbeeld een rijtje van drie qubits kan zich tegelijk in elk van de acht mogelijke combinaties bevinden, elk met een bepaalde waarschijnlijkheid. Bij een digitale computer bevindt de combinatie zich op een bepaald moment maar in één van de mogelijk acht combinaties, wel met een waarschijnlijkheid van 1. Het zich tegelijkertijd in meerdere toestanden bevinden, wordt superpositie genoemd. Een ander fenomeen is het optreden van entanglement (Nederlands: verknoping). Dit is het principe dat een observatie op één object onmiddellijk effect heeft op een hieraan gepaard object, ook al is dit object duizenden kilometers verwijderd van het geobserveerde object. Beide effecten zorgen ervoor dat met name algoritmes voor het splitsen van een geheim getal in zijn priemgetallen, veel sneller verlopen dan op conventionele digitale computers. Hiermee wordt het beschermingsmechanisme van alle digitale gegevens ondergraven en wordt dit mechanisme ‘kraakbaar’. In deze cursus laten we echter de analoge en quantumcomputer buiten beschouwing. 1.3 DE ONTWIKKELING IN CIJFERS EN GEBRUIKSERVARING Gedurende de evolutie van de moderne digitale computer zijn er honderden verschillende typen ontworpen en gebouwd. De meeste zijn alweer vergeten, maar enkele hebben moderne ontwerpen sterk beïnvloed. De scheidslijn tussen bestaand en vernieuwend wordt vooral bepaald door de voortschrijdende technologie op het gebied van de elektronica en de schaal waarop wordt geproduceerd. In deze paragraaf presenteren we een aantal metrieken die deze ontwikkeling zo goed mogelijk weergeven. Computers werden in de loop van de tijd – steeds sneller – steeds kleiner – steeds goedkoper en – ze konden meer gegevens in het interne geheugen opslaan. 34 OUN Leereenheid 1 De betekenis van moderne computersystemen Tabel 1.2 geeft een indruk van de ontwikkelingen die de computer in de loop van de tijd heeft doorgemaakt op het gebied van prestatie, geheugencapaciteit en prijs-prestatieverhouding. Metriek: prijsprestatie verhouding De ontwikkeling van prestatie, geheugencapaciteit, prijs, gecorrigeerde prijs en relatieve prijs-prestatieverhouding van computers (peiling 2007) TABEL 1.2 jaar naam prestatie (optellingen per seconde) geheugencapaciteit (KB) oorspronkelijke prijs (US Dollars) gecorrigeerde prijs 2007 (US Dollars) prijsprestatieverhouding 1951 1964 UNIVAC I IBM S/360 model 50 PDP-8 Cray-1 IBM pc HP 9000/ model 750 Intel Pentium Pro pc (200 MHz) Intel Pentium 4 PC (3.0 GHz) AMD Barcelona PC (2,5 GHz) 2 000 500 000 48 64 1 000 000 1 000 000 7 670 724 6 018 798 1 319 330 000 166 000 000 240 000 50 000 000 4 32 768 256 16 384 16 000 4 000 000 3 000 7 400 94 685 13 509 798 6 859 11 807 13 367 47 127 134 208 16 241 889 400 000 000 16 384 4 400 6 211 247 021 234 6 000 000 000 262 144 1 600 2 009 11 451 750 000 20 000 000 000 2 097 152 800 800 95 884 051 042 1965 1976 1981 1991 1996 2003 2007 Benchmark In leereenheid 15 gaan we hier dieper op in. In tabel 1.2 wordt met name duidelijk hoe de prijs-prestatieverhouding van computersystemen in de loop der jaren is verbeterd. Voor de prestatie wordt het aantal optellingen per seconde gemeten. Deze vergelijkingsmaatstaf is echter niet erg representatief voor de prestatie van een computersysteem, omdat de taak van een dergelijk systeem niet alleen uit optellen bestaat. Een meer representatieve, objectieve vergelijking is mogelijk door elk computersysteem een vastgestelde mix van programma’s te laten uitvoeren en te vergelijken hoeveel tijd het onderzochte systeem hiervoor nodig heeft. Deze gestandaardiseerde vergelijking noemen we een benchmark. In tabel 1.3 staat een aantal benchmarks. TABEL 1.3 Prestatie van centrale processing units (CPU) over de periode 2006- 2009, gemeten met een benchmark (SPEC CINT2006) Metriek: Benchmarking Jaar/kwartaal type score 2006/4 2007/4 2008/4 2009/2 Apple Xserve (3000 MHz Intel Dual-Core Xeon) Dell Precision T7400 (Intel Xeon X5482, 3.20 GHz) Intel Asus P6T Deluxe (Intel Core i7-940) ASUS TS700-E6 server system (Intel Xeon W5580) 16,6 24,2 27,8 33,2 Leestekst In tabel 1.3 wordt de programmaverzameling uit CINT2006 gebruikt voor processors (CPU). SPEC vergelijkt computers ook op andere toepassingen zoals webservers en mailservers, Java client/server systemen, vermogensopname, enzovoorts. Op elke toepassing wordt een collectie van toepasselijke software losgelaten om zo de prestatie objectief te vergelijken. In tabel 1.3 zijn steeds de hoogste scores in het aangegeven kwartaal genomen. SPEC CINT2006 is de opvolger van SPEC CINT2000, maar ze zijn helaas niet met elkaar te vergelijken. Vandaar de korte tijdlijn in tabel 1.3. OUN 35 De werking van computersystemen OPGAVE 1.2 U werkt bij een bedrijf dat computers ontwikkelt en op de markt brengt. Uw chef vraagt uw mening over het voornemen om een computer te ontwikkelen die driemaal zo snel zal zijn als gelijksoortige machines op dit moment. Ook vertelt hij u dat de ontwikkeling waarschijnlijk zo’n drie jaar zal duren. Wat zou u daarvan zeggen? Metriek: spoorbreedte Een andere metriek is die van de spoorbreedte waarmee de fijnste structuren van een processor of geheugen in een halfgeleiderchip worden geëtst. Deze spoorbreedte wordt uitgedrukt in micrometer (1 μm = 10-6 m) of nanometer (1 nm = 10-9 m). In tabel 1.4 staat deze ontwikkeling. Miniaturisering aan de hand van spoorbreedte TABEL 1.4 jaar 1971 1978 1989 1999 2003 afmeting 10 μm 3 μm 1 μm 0,18 μm 90 nm 2007 2009 2011 45 nm 32 nm 22 nm In tabel 1.4 hebben we in verband met de ruimte een aantal tussenliggende stappen achterwege gelaten, maar de reductie in afmeting met een factor 200 in de beschouwde periode is duidelijk. In leereenheid 12 bekijken we geheugens in detail. Een soortgelijke ontwikkeling als bij processoren zien we bij halfgeleider geheugens. De structuren die hiervoor in de chip worden gebruikt zijn iets eenvoudiger dan bij een processor, maar de manier waarop deze geheugens worden gemaakt is dezelfde. Figuur 1.10 toont deze ontwikkeling. Deze figuur geeft een verviervoudiging per drie jaar te zien en wordt aangeduid met de DRAM-groeiregel (DRAM = Dynamic Random Access Memory). 10 10 aantal transistors 16M 7 10 6 1M 10 4M 256K 5 10 4K 4 10 3 256M 64M 8 10 10 1024M 512M 9 10 16K 64K 1K 1965 1970 FIGUUR 1.10 1975 1980 1985 1990 1995 2000 2005 2010 jaar van introductie De toename van de capaciteit van een geheugenchip Elke drie jaar verviervoudigt de capaciteit. Per jaar betekent dit een toename van ca. 60 %. 36 OUN Leereenheid 1 De betekenis van moderne computersystemen Voor harde schijven zien we een soortgelijke ontwikkeling. TABEL 1.5 Ontwikkeling harde schijven jaar 1981 1985 1989 1995 2000 2004 2009 capaciteit 5 MB 40 MB 40 MB 1,2 GB 80 GB 250 GB 1 TB kosten/MB 340 $ 45 $ 36 $ 68,6 c 0,69 c 0,115 c 0,013 c Tussen 1985 en 1989 zien we geen groei in capaciteit, wel een kostenreductie. De achterblijvende groei tussen 1985 en 1989 werd veroorzaakt doordat de toenmalige besturingssystemen (MSDOS) voor de pc geen grotere harde schijf konden aansturen dan 40 MB. Metriek: gebruiksgemak De exponentiële groei van de capaciteit van processors, geheugen en harde schijven heeft niet alleen bewerkstelligd dat grotere problemen sneller opgelost konden worden, maar heeft ook veel gebruiksvriendelijker programma’s mogelijk gemaakt. De eerste computers werden bediend door hooggeschoolde specialisten, georganiseerd in de computercentra van grote bedrijven. De betere prestatie van de pc maakte het mogelijk dat de interactie tussen computer en gebruiker via grafische symbolen plaatsvindt. Hierdoor, en vanwege het gebruikte analogon van het bureaublad, is deze interactie veel eenvoudiger en makkelijker te begrijpen voor een groot publiek. Een scholier van nu gebruikt een laptop met evenveel gemak als de specialisten van vroeger en de beschikbare rekenkracht is te vergelijken met die van een supercomputer van tien jaar geleden. Van Gorden Moore is de uitspraak dat wanneer de vliegtuigindustrie een soortgelijke ontwikkeling als hierboven had doorgemaakt, een verkeersvliegtuig nu rond de $ 500 zou kosten, rondom de aarde zou vliegen in krap twintig minuten en daarbij circa twintig liter brandstof zou verbruiken. Het vliegtuig zou echter ook tot het formaat van een schoenendoos zijn gekrompen! 2 Soorten computersystemen en hun toepassing De computer heeft ons gemak opgeleverd en allerlei nieuwe mogelijkheden geschapen – bijvoorbeeld in de communicatie en in de informatievoorziening – en heeft de dienstverlening sterk uitgebreid. Toepassingen van digitale systemen zijn doorgedrongen tot in alle hoeken en gaten van onze samenleving. Ze kunnen ruwweg in drie categorieën onderverdeeld worden: direct zichtbare, de via netwerken toegankelijke computers en ‘ingebouwde’ toepassingen. Direct zichtbare computersystemen zijn bijvoorbeeld de pc’s, laptops, spelcomputers en elektronische agenda’s thuis of op uw werk. Van de tweede categorie, de via netwerken toegankelijke computersystemen maakt u gebruik als u telefoneert, de dienstregeling van het openbaar vervoer raadpleegt, iets bestelt bij een bedrijf, girale betalingen verricht, een verzekering afsluit, een bibliotheekcatalogus raadpleegt, of naar de OUN 37 De werking van computersystemen weersverwachting kijkt. Ten slotte zult u zich minder bewust zijn van de ‘ingebouwde’ computersystemen. Gespecialiseerde computersystemen, zoals de microcontroller, vinden een plek in vrijwel alle elektronica die in apparaten is ingebouwd. Een middenklasse-auto telt bijvoorbeeld al meer dan dertig van deze microcontrollers die allerlei functies in die auto verzorgen. U vindt ze ook in radio- en televisietoestellen, thermometers, mobiele telefoons, ze besturen een modern vliegtuig, enzovoorts. Een aparte klasse van deze ingebouwde computersystemen zijn de ‘wegwerpcomputers’ die u op labels (RFID) of felicitatiekaarten aantreft. Kenmerkend voor deze systemen is dat ze doorgaans één taak verrichten met een minimum aan ondersteuning van hard- of software. In de loop der jaren zijn computers in vele soorten en maten ontstaan. Elke categorie computers heeft zijn eigen toepassingsgebied. De grenzen tussen deze categorieën zijn niet altijd scherp te trekken, zoals bij super-, mainframe-, mini- en microcomputers. Hier is het onderscheid vooral gebaseerd op capaciteit, complexiteit, mogelijkheden, fysieke omvang en prijs. TABEL 1.5 Seymour Gray Cray-1, de eerste supercomputer Het landschap van computersystemen (2008) type prijs ($) voorbeeld van een toepassing supercomper computercluster mainframe server personal computer spelcomputer microcontroller wegwerp computers 135M 50 - 500k 5M 5k 500 200 - 400 5 - 15 0,5 simulatie atoomkernreacties zoekmachine, simulaties transactieverwerking in bank websever desktop of notebook computer spelletjes (huishoudelijke) apparaten RFID, felicitatiekaarten Supercomputers Vandaag de dag zijn supercomputers ‘maatwerkproducten’ van de gevestigde computerproducenten, zoals IBM en Hewlett Packard, meestal ook voor speciale klanten. Deze machines gebruiken een groot aantal processors gelijktijdig, hebben werk- en schijfgeheugens met enorme omvang en zijn via zeer snelle netwerken met de gebruikers gekoppeld. Ze worden ingezet voor rekenintensieve taken, zoals simulatie van klimaatmodellen en weersvoorspelling, aerodynamica, doorrekenen van moleculaire structuren voor nieuwe materialen en medicijnen, de simulatie van botsende melkwegstelsels en atoomkernreacties, enzovoorts. Gezien deze onderwerpen vinden we supercomputers vooral binnen grote universiteiten en onderzoeksinstellingen. Een pioneer op dit gebied was Cray Research, Inc., opgericht door Seymour Cray. Dit bedrijf produceerde in 1976 de eerste commerciële supercomputer, de Cray-1 (figuur 1.11). In 1996 is Cray na faillissement overgegaan naar SGI computers, dat nog steeds bestaat maar geen dominante rol meer speelt in de markt van de supercomputers. Veel van de ingenieurs die voor Silicon Grafics (SGI) werkten, zijn in de jaren ’90 overgestapt naar Nvidia en ATI. Deze bedrijven maken de grafische chips die de beeldverwerking in de videokaarten verzorgen in pc’s. Later in de cursus zullen we zien dat deze grafische chips vanwege hun enorme rekencapaciteit worden ingezet in betaalbare desktop supercomputers. 38 OUN Leereenheid 1 De betekenis van moderne computersystemen FIGUUR 1.11 De Cray-1, de eerste commerciële supercomputer (1976) Supercomputers worden echter steeds meer door computerclusters vervangen. Computerclusters Werkstations bespreken we hieronder. Serverfarm Computerclusters Bij een computercluster worden algemeen verkrijgbare pc’s en werkstations via zeer snelle netwerken tot één systeem met elkaar verbonden. Het geheel wordt door speciale software bestuurd, waardoor deze afzonderlijk machines gezamenlijk aan één probleem kunnen werken. Een rekentaak wordt dan, net zoals bij supercomputers gebeurt, gesplitst in onafhankelijke deeltaken die door elk van de aangesloten pc’s of werkstations kan worden uitgevoerd. Het hieruit resulterende parallellisme heeft een cluster gemeen met een supercomputer. De resultaten van die deeltaken worden weer geassembleerd tot het eindresultaat. Deze systemen laten zich makkelijk opschalen, van een handvol pc’s tot in de honderden pc’s, afhankelijk van de behoefte. Een veelvuldige toepassing van een cluster is die van een zoekmachine. Een dergelijk cluster ontvangt per seconde honderden verzoeken om zoekresultaten. De binnenkomende verzoeken worden dan gedistribueerd naar de afzonderlijke servers die een specifiek verzoek afhandelen. Een dergelijk cluster wordt ook wel een serverfarm genoemd. Mainframes Mainframecomputers zijn de eerste computers die commercieel werden toegepast. Ze hebben een plaats gekregen in de computercentra van grote bedrijven. Nog steeds zijn deze computercentra bij grote bedrijven te vinden. De reden dat deze kostbare machines er nog zijn, is het feit dat het uiterst kostbaar is om de dertig jaar oude software (COBOL) en gegevens te converteren voor gebruik op bijvoorbeeld een goedkoper cluster. Ook kunnen mainframes zeer grote gegevensbanken hanteren. OUN 39 De werking van computersystemen Deze laatste eigenschap blies deze machines een nieuw leven in, namelijk als krachtige internetserver. Deze servers zijn nodig in bijvoorbeeld internetwinkels om de grote aantallen transacties te hanteren en de bijbehorende enorme gegevensbanken tijdig bij te werken. Servers Personal computers en werkstations CAD en CAM Notebook- en desktopmodel 40 Servers Krachtige pc’s of werkstations worden vaak als netwerkserver ingezet voor zowel local area netwerken, binnen één bedrijf, als op het internet zelf. In de regel bestaat het opvoeren uit het toevoegen van gigabytes aan werkgeheugen, terabytes aan hardeschijfruimte en snelle netwerkverbindingen. Servers worden net zoals pc’s en werkstations bestuurd door Windows, LINUX of een dialect van UNIX. Servers vervullen specifieke taken ten behoeve van netwerkgebruikers, bijvoorbeeld het op verzoek uitleveren van webpagina’s. Personal computers en werkstations Personal computers en werkstations zijn computers voor persoonlijk gebruik. Het onderscheid tussen pc en werkstation is voornamelijk historisch. De pc werd voornamelijk in de kantooromgeving gebruikt voor tekstverwerking, spreadsheets, grafische vormgeving, terwijl het werkstation werd ingezet om ontwerpsoftware te gebruiken. Voorbeelden van deze laatste toepassing zijn pakketten voor Computer Aided Design (CAD), waarmee producten kunnen worden ontworpen en later eventueel geproduceerd, door op basis van het ontwerp de machines in de fabriek direct, zonder menselijke tussenkomst, aan te sturen. In het laatste geval wordt er gesproken van Computer Aided Manufacturing (CAM). Tegenwoordig is dit onderscheid tussen pc en werkstation nagenoeg verdwenen en vinden we alleen nog verschil in het besturingssysteem: de pc gebruikt Windows of OS en het werkstation UNIX, LINUX of Solaris. Al verdwijnt ook dit verschil steeds meer naar de achtergrond. Pc’s en werkstations worden uitgevoerd als desktopmodel of als notebook. Het verschil is de behuizing en de accenten op ontwerpbeslissingen. Een desktopmodel heeft een apart toetsenbord, muis en beeldscherm en het ontwerp is gericht op het gebruik op één plek. Een notebook of laptop is gericht op mobiel gebruik waarbij toetsenbord, beeldscherm en muis in één behuizing zijn geïntegreerd en het energiegebruik is geoptimaliseerd. Beide worden geleverd met gigabytes aan werkgeheugen, honderden gigabytes aan harde schijfruimte, cd-rom/dvd-drive, multimediatoepassingen als geluidskaart, speakers en hoge-resolutiescherm en natuurlijk met voorzieningen voor (draadloze) internettoegang. OUN Leereenheid 1 De betekenis van moderne computersystemen a FIGUUR 1.12 Multimediatoepassingen Subnotebook Spelcomputer b De personal computer a Desktop model b Notebookmodel In tegenstelling tot werkstations zijn pc’s en notebooks ook gericht op het weergeven van multimediatoepassingen (audio, video); niet in de laatste plaats gestimuleerd door de (permanente) internetverbindingen. Een bijzondere vorm van een notebook is een subnotebook of netbook die met name op de verbetering van mobiliteit is gericht. Ze worden gekenmerkt door vooral de reductie van veel energie gebruikende onderdelen zoals beeldscherm en processor. De reductie van het beeldscherm leidt tot kleinere afmetingen en langer batterijgebruik. Gebruik van een speciaal vervaardigde energiezuinige processor leidt tot minder koeling en heeft daardoor ook een positief effect op de gebruiksduur van de batterij, en vanwege de reductie in koeling ook op de afmetingen en dus het gewicht. Doordat de prestatie van de energiezuinige processor achterblijft bij de normale processor is het netbook vooral bedoeld voor internettoepassingen. Spelcomputers Spelcomputers zijn computers met uitgebreide grafische en geluidsmogelijkheden door het gebruik van gespecialiseerde processoren. In de regel kunnen ze alleen spelletjes laden en hebben ze ook ten opzichte van pc’s minder mogelijkheden tot uitbreiding. De processoren die in een spelcomputer gebruikt worden zijn geavanceerd. Er worden krachtige clustercomputers gebouwd, samengesteld uit processoren van spelcomputers vanwege de beperkte kosten in relatie met de hoge verwerkingscapaciteit. FIGUUR 1.13 Een spelcomputer OUN 41 De werking van computersystemen Het verschil tussen een pc en een spelcomputer is niet zozeer de gebruikte processor, die in beide toepassingen qua capaciteit ongeveer gelijk is, maar dat een spelcomputer een gesloten systeem is. Dat wil zeggen dat de spelcomputer niet kan worden uitgebreid met extra insteekkaarten. Ook, en dat is het belangrijkste verschil, zijn spelcomputers ontworpen en geoptimaliseerd voor één specifieke taak: het afspelen van kwalitatief hoogwaardige, interactieve 3D-spelletjes met bijbehorend stereo geluid van hoge kwaliteit. Al het andere is minder belangrijk. Door de opgelegde beperkingen, zoals de afwezigheid van harde schijven, hoge-definitiemonitoren en lagere kloksnelheden, zijn deze computers goedkoper dan pc’s. Embedded systemen Personal digital assistants Real time 42 Embedded systemen Behalve de direct zichtbare en indirect toegankelijke computers zijn er ook computers op plaatsen waar velen zich niet eens bewust zijn van de aanwezigheid ervan. Het betreft hier de ingebouwde ofwel embedded systemen. Het zijn computers die in consumentenproducten en vooral mobiele telefoons zijn ingebouwd, zonder dat die daar als zodanig zichtbaar zijn. De gebruiker van zo’n product heeft een aantal knoppen en eventueel nog een display ter beschikking, waarmee hij het apparaat bedient. Voordat er sprake was van embedded systemen, werden met deze knoppen langs elektrische of mechanische weg de functies van het apparaat gestart. Nu worden die functies gerealiseerd door een computerprogramma, dat uitgevoerd wordt door het embedded systeem. Het actieve hart van een embedded systeem is de microcontroller. Het programma in de microcontroller leest de stand van de knoppen af, bestuurt de diverse onderdelen van het apparaat en geeft eventueel de status door op een display. Voorbeelden van apparaten waarin ‘embedded’ processoren worden gebruikt, zijn videorecorders, wasmachines met hun verschillende wasprogramma’s, magnetrons met speciale kookprogramma’s en personal digital assistants (PDA). Bij moderne toepassingen zijn deze controllers gekoppeld in netwerken om een systeem te besturen. Bijvoorbeeld in moderne vliegtuigen - fly by wire - waar gemakkelijk meer dan tweehonderd van deze controllers voor de goede gang van zaken zorgen. Het verschil tussen controllers en de processor in de pc is drieërlei. In de eerste plaats zijn controllers extreem goedkoop en wordt er dus gewerkt met kleine financiële marges. Een prijsverschil van enkele centen kan het commercieel succes van een controller bepalen. Ook speelt de hoogte van de prijs een belangrijke rol. Deze prijs kan bij grote volumes zo laag worden dat je een computer in een wekkerradio kunt gebruiken die zelf in de winkel niet meer dan € 9,95 mag kosten! In de tweede plaats werken vrijwel alle controllers in real time. Dat wil zeggen dat alle bewerkingen die de controller uitvoert aan een tijdslimiet zijn gebonden. In de regel is deze tijdslimiet gebonden aan het verloop van de tijd; de plek van inslag van een kogel moet zijn berekend voordat de kogel inslaat! In de derde plaats zijn controllers onderworpen aan beperkingen ten aanzien van afmeting, gewicht en energieverbruik, en zijn er andere elektrische en mechanische begrenzingen. OUN Leereenheid 1 De betekenis van moderne computersystemen Ondanks de hiervoor aangegeven verschillen lijken de microcontroller en de processor in een pc op elkaar wat betreft, werking en programmering. Een microcontroller heeft echter een lagere kloksnelheid, verwerkt uitsluitend gehele getallen, heeft geen instructies voor de verwerking van multimedia, heeft kortere registers (8 of 16 bits) en geen caches. Daarom hebben we in leereenheid 19 gekozen voor een goedkope microcontroller om mee te experimenteren en een aantal fundamentele eigenschappen zichtbaar te maken. Wegwerpcomputers Wanneer men het criterium hanteert dat een computer over een centrale verwerkingseenheid moet beschikken, dan zijn smart cards voorbeelden van wergwerpcomputers. Smartcards die bijvoorbeeld voor financiële transacties gebruikt worden, beschikken over één of meer ingebouwde microcontrollers en kunnen grote hoeveelheden gegevens opslaan en verwerken en kunnen complexe berekeningen uitvoeren die bijvoorbeeld nodig zijn voor het versleutelen van boodschappen en het verwerken van digitale handtekeningen. Wegwerpcomputer 3 Het netwerk als computer Door de ontwikkeling van het Internet is de vraag ontstaan of allerlei programma’s en gegevens lokaal, dat wil zeggen op de pc zelf, moeten worden opgeslagen en ook de berekeningen door de pc zelf moeten worden gedaan. Een mogelijkheid is dat de berekeningen of opslag van gegevens door gespecialiseerde service providers worden gedaan, waarbij de pc alleen de resultaten toont en van waaruit het programma wordt bediend. Een voorbeeld is een tekstverwerker die vanuit het netwerk wordt aangeroepen om uw tekst te bewerken, waarna u deze tekst lokaal of weer bij een andere service provider kunt opslaan. Voor een andere bewerking, zoals verwerking met een spreadsheet, gaat u weer naar een andere provider die u deze programmatuur laat gebruiken. Deze ontwikkeling staat bekend als cloud computing Deze ontwikkeling, zou de pc zoals we die nu kennen, eenvoudiger en goedkoper maken. De pc zou alleen als in- en uitvoermedium functioneren. De afhankelijkheid van derden ten aanzien van de beschikbaarheid en de uitvoering van programmatuur stuit bij de meeste pc-gebruikers nog op grote weerstand en ook spelen privacykwesties een rol. Een andere ontwikkeling is een groot aantal computers via een netwerk verbinden om een bepaalde (reken)taak te verrichten en zo een grote supercomputer te realiseren. Een dergelijke ontwikkeling wordt grid computing genoemd. Cloud computing Grid computing SAMENVATTING Paragraaf 1 In deze leereenheid zijn we ingegaan op het ontstaan, de ontwikkeling en de betekenis van de hedendaagse computer. De computer als apparaat om voorgeprogrammeerde berekeningen uit te voeren, dateert van ongeveer 1840, toen Charles Babbage de Analytical Engine uitvond. Het duurde tot de jaren ’30-40 van de twintigste eeuw vóór de eerste elektronische computer werd uitgevonden. Namen als John Atanasoff, Alan Turing en Konrad Zuse worden genoemd als het gaat om de concepten OUN 43 De werking van computersystemen van de moderne computer. De tijd van de moderne computer begint echter pas echt met de ENIAC, ontwikkeld door John Mauchly en J. Presper Eckert en de COLOSSUS. In de opvolger van deze machine, de EDSAC, waaraan ook John von Neumann werkte, wordt voor het eerst het stored-programconcept toegepast. Het commerciële pad van de computer begint op 14 juni 1951, als de eerste computer wordt verkocht, de UNIVAC I. De computers van de eerste generatie (1951-1958) waren gebaseerd op elektronenbuizen. Hierdoor waren de eerste computers groot en niet erg betrouwbaar. Met de uitvinding van de transistor door John Bardeen en Walter Brattain onder leiding van William Shockley kwam hier echter verandering in. De computers van de tweede generatie (1959-1964) werden hierdoor kleiner, goedkoper en betrouwbaarder. Nadat er meerdere transistors op één chip konden worden gerealiseerd, werden computers nog kleiner en goedkoper. De derde-generatiecomputers (1965-1970) waren op IC’s gebaseerd. Met het verschijnen van de eerste microprocessor, de Intel 4004 in 1971, wordt het mogelijk om een complete computer op één chip te realiseren. De vierde-generatiecomputers zijn hierop gebaseerd (1971-heden). De vijfde-generatiecomputers worden gekenmerkt door een verdergaande miniaturisering en specialisatie, zodanig dat de gebruiker veel minder zicht en invloed heeft op de aanwezigheid van een controller in een apparaat en de functies die deze uitvoert. Met het voortschrijden van de halfgeleidertechnologie wordt het mogelijk om steeds meer transistors op een chip te plaatsen. Dit besef wordt vaak uitgedrukt in de Wet van Moore: elk jaar treedt er een verdubbeling op van het aantal transistors per chip. De computers worden hierdoor steeds sneller, goedkoper en kleiner en ze kunnen steeds meer gegevens in het interne geheugen opslaan. Paragraaf 2 44 In deze paragraaf zijn we ingegaan op de verschillende soorten computers en hun toepassingsgebied. Computers zijn er tegenwoordig in vele soorten, elk met hun eigen toepassingsgebied: – supercomputers: getallenkrakers voor wetenschappelijke toepassingen, die al hun rekencapaciteit inzetten voor het uitvoeren van één centrale taak – computerclusters waarin computers (servers) zijn gekoppeld in een netwerk om een bepaalde taak uit te voeren. Zoekmachines zijn een voorbeeld hiervan – servers als op zich staande computers die specifieke taken ten behoeve van netwerkgebruikers uitvoeren – mainframes: krachtige computers voor grote instellingen en thans voor internetwinkels worden ingezet – pc’s en werkstations: computers bedoeld voor gebruik door een enkele persoon – embedded systemen die allerlei technische systemen besturen – wegwerpcomputers, zeer goedkope computers die worden gebruikt in SMARTcards. OUN Leereenheid 1 De betekenis van moderne computersystemen Paragraaf 3 In de laatste paragraaf zijn we ingegaan op het koppelen van computers via een netwerk. Door hier in applicaties gebruik van te maken worden vele diensten mogelijk die voorheen ondenkbaar waren. Voor de gebruiker is dit vaak geheel onzichtbaar, waardoor het netwerk voor hem de computer wordt. ZELFTOETS 1 Beschrijf in eigen woorden de ontwikkeling van de computer, vanaf de eerste concepten van programmeerbare machines tot aan de hedendaagse computer. Bespreek alleen de hoofdlijnen. 2 Welke soorten computers kent u en wat zijn de typische toepassingsgebieden van deze soorten? OUN 45 De werking van computersystemen TERUGKOPPELING 1 1.1 Uitwerking van de opgaven Eens per twee dagen een storing die vijftien minuten duurde, was toen aanvaardbaar, maar vandaag de dag volstrekt onacceptabel. Voor de commerciële inzet moet de werking van computers veel betrouwbaarder worden. Dat doel is ook bereikt door de toepassing van geïntegreerde circuits, de LSI- en VLSI-chips, die zelfs gelet op hun complexiteit de betrouwbaarheid van elektronenbuizen ver overtreffen. Een processor met zijn miljoenen transistoren en veel hogere klokfrequenties (gelijk aan het aantal keren schakelen per seconde) functioneert jarenlang probleemloos. Hier ligt waarschijnlijk de oorsprong van de opmerking ‘De computer heeft een fout gemaakt’, die klanten nog wel eens te horen krijgen als er iets misgegaan is met een geautomatiseerd systeem. In de tijd van de buizencomputers had dat kunnen kloppen, tegenwoordig gaat het echter altijd om een menselijke fout in de programmatuur of de invoer. 1.2 Uit de getallen van tabel 1.3 valt de gemiddelde groei van de prestatie van computers af te leiden. Hiervoor wordt het absolute en relatieve verschil in score tussen de opeenvolgende jaren bepaald. TABEL 1.6 Prestatiegroei van werkstations in de periode 2006-2009, absoluut en relatief Jaar/kwartaal score 2006/4 2007/4 2008/4 2009/2 16,6 24,2 27,8 33,2 groei t.o.v vorig jaar (absoluut) groei t.o.v vorig jaar (relatief in %) 7,6 3,6 5,4 45 13 20 Zoals tabel 1.6 laat zien wisselt de relatieve groei tussen de opeenvolgende jaren nogal. Wel laat de groei tussen 2008/4 en 2009/2 weer een sprong zien. Laten we eens aannemen dat de gemiddelde jaarlijkse groei in score 40% per jaar zou zijn. Over een periode van drie jaar zou dan de score 1,43 = 2,75 keer de huidige score moeten zijn. Ofwel zo rond de 90. Gelet op het grillige verloop en de hoge aangenomen groei, is het voorstel dan tamelijk ambitieus. 2 1 46 Uitwerking van de zelftoets Minimaal dient u aandacht te besteden aan – Charles Babbage en de Analytical Engine omstreeks 1840 – de eerste elektronische computers in de jaren 1930 en 1940 – J. Presper Eckert en John Mauchly met de ENIAC in 1946 – John von Neumann en het stored-programconcept – eerste generatie 1951-1958 op basis van elektronenbuizen – tweede generatie 1959-1964 op basis van transistors – derde generatie 1965-1970 op basis van IC’s – vierde generatie 1971-heden op basis van microprocessoren. OUN Leereenheid 1 De betekenis van moderne computersystemen 2 Soorten computers zijn: – supercomputers: getallenkrakers voor wetenschappelijke toepassingen – computerclusters: computers die onderling in een netwerk zijn verbonden en als geheel één taak uitvoeren, zoals bijvoorbeeld zoekmachines op internet – mainframes: krachtige computers voor grote instellingen en internetwinkels – server: computer in een netwerk die voor netwerkgebruikers een specifieke taak uitvoert, bijvoorbeeld een mailserver – pc of werkstation: computer voor individueel gebruik voor kantoortoepassingen (pc) of CAD/CAM-toepassingen (werkstation) – spelcomputer: computer voor individueel gebruik en geoptimaliseerd voor het spelen van spelletjes – embedded systemen als ingebouwde besturing van huishoudelijke apparaten en technische systemen – wegwerpcomputers toegepast in SMARTcards. Verder lezen: Copeland, B. Jack e.a., COLOSSUS - The secrets of Bletchly Park’s Codebreaking Computers. Oxford University Press, 2006, ISBN 978-0-19-248055-4. Looijen, M., Grepen uit de geschiedenis van de automatisering. Kluwer, 1992, ISBN 90-267-1716-4. Bogaard, A. van den, H. Lintsen, F. Veraart en O. de Wit, De eeuw van de computer, de geschiedenis van de informatietechnologie in Nederland. Kluwer, 2008, ISBN 9789013060072. OUN 47