1. INLEIDING : BASISBEGRIPPEN
1.1. Inleiding Computers en chemie zijn met elkaar verbonden geweest vanaf het moment dat bruikbare machines die berekeningen konden uitvoeren voorhanden waren. Vandaag de dag is het dan ook haast onmogelijk een onderzoekslaboratorium te vinden waar geen computer van welke soort dan ook aanwezig is. Sterker zelfs : sommige deelgebieden van de chemie werden mogelijk gemaakt door de aanwezigheid van digitale computers. Het gebruik van de computer in de scheikunde is echter niet beperkt tot het zuivere computationele. Computers worden gebruikt in toepassingen gaande van de controle van bepaalde laboratoriumapparatuur tot het consulteren van databanken, die lokaal aanwezig kunnen zijn of ver verwijderd. In dit gedeelte zullen we trachten een overzicht te geven van de voornaamste aspecten van het gebruik van de computer in de scheikunde. Er is inderdaad een lange en succesvolle associatie tussen scheikunde enerzijds en "computing" anderzijds. Dit is trouwens tot op grote hoogte steeds een symbiotische relatie geweest. De aanwezigheid van computers heeft niet alleen geleid tot nieuwe gebieden in het scheikundig onderzoek, maar de noden en grieven van scheikundigen zijn ook vaak een belangrijke bijdrage geweest in het ontwikkelen van grotere en snellere computers. De eerste grote gebruikers van computationele kracht in de scheikundige gemeenschap waren de kristallografen. In de jaren 1950 vertraagden de ontwikkelingen in de kristallografie zelfs door het ontbreken van snelle en betrouwbare manieren om berekeningen uit te voeren nodig om een structuur te bepalen. De ontwikkeling van computers zorgde er voor dat deze berekeningen konden uitgevoerd worden en dat dit onderdeel van de scheikunde opnieuw leven werd ingeblazen. De kristallografen bleven echter niet lang de enige scheikundigen meer waren die geïnteresseerd waren in computers. Vele meer traditionele deelgebieden uit de anorganische en de fysische chemie, bv. de spectroscopie, kregen een nieuwe impuls en andere gebieden, zoals de
Computervaardigheden
25
1. Inleiding : basisbegrippen
computationele chemie en de moleculaire modellering danken voor een zeer groot gedeelte hun bestaan aan de computer. Computers hebben niet alleen een grote impact omwille van hun berekeningskracht, maar spelen bv. ook een rol in het vergaren van data tijdens moderne computergestuurde experimenten, die er zonder de aanwezigheid van de computer heel anders hadden uitgezien. Over de laatste tien tot twintig jaar bekeken kunnen we inderdaad besluiten dat de computer een gigantische impact gehad heeft op het doen en laten van de scheikundige. Ze vormen niet alleen een belangrijk en onmisbaar onderdeel van de experimentele procedure, maar ze zijn tevens van vitaal belang geworden in alle aspecten van de scheikunde.
Ze worden o.a. gebruikt in het
onderzoeken van de achtergrond van een onderzoeksproject gebruik makend van het internet (o.a. door het consulteren van wetenschappelijke tijdschriften op het internet), het produceren en publiceren van de onderzoeksresultaten, e-mail versturen naar collega's en medewerkers, en het bijwonen van zogenaamde "virtuele" conferenties. We zullen hier niet verder ingaan op het gebruik van de computer in de zogenaamde "chemische instrumentatie".
Om een aantal concepten die we in dit deel zullen
invoeren beter te begrijpen is het belangrijk om een zekere basiskennis te hebben van de historiek van computers. De originele betekenenis van het woord "computer", een betekenis die nog steeds geldig is, is "one who computes". Wanneer we bv. de Oxford English Dictionary nakijken dan zien we inderdaad dat deze definitie voor alle andere definities vermeld staat : Computer : 1. One who computes; a calculation, reckoner ; spec. a person employed to make calculations in an observartory, in surveying, etc. 2. A calculating-machine; esp. an automatic electronic device for performing mathematical or logical operations
(Bron : Oxford English Dictionary, Nieuwe Editie)
Voor praktisch gebruik kunnen we inderdaad de volgende definitie aannemen : "Een computer is een apparaat dat data aanneemt in een welbepaalde vorm, deze data vewerkt en ze omzet in informatie die meer bruikbaar is dan de originele data."
Computervaardigheden
26
1. Inleiding : basisbegrippen
De computerkracht neemt vandaag de dag steeds spectaculair toe.
Volgens de
zogenaamde "Wet van Moore" verdubbelt het aantal transistoren per oppervlakteeenheid op geïntergreerde schakelingen elk jaar. Vandaag de dag zien we een verdubbeling van de computerkracht gemiddeld om de 18 maanden.
1.2. Enkele basisbegrippen In dit gedeelte zullen we een aantal basisbegrippen en -concepten van computers, waar je waarschijnlijk reeds vaak mee in contact gekomen bent, even op een rijtje zetten. We geven hier een kort overzicht van computertechnologie, waarbij we zullen stilstaan bij wat computers juist zijn, hoe ze opgebouwd zijn en wat ze kunnen doen. Dit gedeelte is zeker geen gedetailleerde beschrijving, vele van de concepten zullen later in de cursus opnieuw terugkomen en verder uitgediept worden. Dit hoofdstuk dient enkel als een inleiding tot een aantal computerconcepten, zodat je ze beter kan begrijpen wanneer we ze verder in de cursus ontmoeten. Wanneer je aan het woord computer denkt, dan denk je meestal aan een machine die op je bureau staat en waarmee je documenten kan maken, e-mail kan versturen of op het World Wide Web gaan. Dit type computer wordt een Personal Computer (PC) genoemd, omdat hij meestal slechts door één persoon tegelijkertijd wordt gebruikt. Een andere benaming is bureaucomputer ("Desktop Computer") omdat dergelijke machines klein genoeg zijn zodat je ze op een tafel of bureau kunt plaatsen. Er zijn echter nog een heleboel andere computersystemen die gebruikt worden om verschillende zaken te verwezenlijken. Zo zijn er bv. de klasse van de supercomputers, die groot genoeg zijn om een ganse kamer te vullen en die miljarden berekeningen per seconde kunnen uitvoeren. Deze worden o.a. gebruikt door onderzoekers die complexe taken, zoals het modelleren van weerpatronen of het uittesten van nieuwe ontwikkelde ontwerpen, dienen uit te voeren. Ook wordt bv. de vouwing van eiwitten met dergelijke systemen bestudeerd.
Computervaardigheden
27
1. Inleiding : basisbegrippen
In het algemeen zullen we een computer definiëren als een apparaat dat informatie ontvangt, opslaat en verwerkt. Een eerste belangrijk punt is het onderscheid tussen "hardware" en "software". De term "hardware" verwijst naar de fysische componenten van de computer, zoals bv. het scherm, toetsenbord of de harde schijf. "Software" daarentegen heeft betrekking op de programma's die kunnen uitgevoerd worden op de computer.
1.2.1. Hardware Gezien de grote diversiteit aan computers vandaag de dag is het moeilijk om een beschrijving te geven van een typisch computersysteem. Niettemin hebben bijna alle moderne computersystemen dezelfde onderliggende structuur. Deze structuur is gekend als de "von Neumann" architectuur". Hierbij werken drie essentiële componenten samen tot vorming van een computer. Invoer en uitvoer (Input en output) apparaten laten de gebruiker toe om te communiceren met de computer door commando's in te voeren en het resultaat te bekijken. Het geheugen slaat de te verwerken gegevens op, tesamen met de programma's, die bestaan uit instructies die uitgevoerd dienen te worden teneinde een welbepaald resultaat te verkrijgen. Als derde is er de centrale verwerkingseenheid ("Central Processing Unit" of CPU) die de verschillende programmastappen uitvoert en hierbij de data verwerkt. Deze drie componenten zijn onderling verbonden door communicatielijnen, de zogenaamde "bussen". Computers die de von Neumann architectuur gebruiken noemt men ook weleens "stored program" computers, wat betekent dat ze verschillende taken kunnen uitvoeren door verschillende programma's uit het geheugen te halen. Zo zal, teneinde taken zoals het creëren van een tekstdocument of het uitvoeren van een berekening te volbrengen, de CPU de geassocieerde programmainstructies uit het geheugen halen en ze in de juiste volgorde uitvoeren. Wanneer de computer een nieuwe taak dient uit te voeren, wordt een nieuw programma in het geheugen geladen en krijgt de CPU de opdracht dit programma uit te voeren.
Deze architectuur laat tevens toe dat verschillende
programma's tegelijkertijd in het geheugen aanwezig zijn, zodat de computer verschillende taken tegelijkertijd kan uitvoeren, zoals bv. het heen-en teruggaan tussen
Computervaardigheden
28
1. Inleiding : basisbegrippen
een tekstverwerker en een webbrowser. De drie componenten van de von Neumann architectuur worden schematisch weergegeven in Figuur 1.1. ; we zullen in de volgende onderdelen even stilstaan bij de werking van elk onderdeel en schetsen hoe het interageert met de andere onderdelen. 1.2.1. 1. De centrale verwerkingseenheid ("Central Processing Unit" of CPU) De centrale verwerkingseenheid (CPU) is het hart van de computer en is verantwoordelijk voor de controle van de interne werking van de machine. We zullen op de werking van de CPU van naderbij bekijken in Hoofdstuk 4, maar voorlopig vermelden we dat de CPU is opgebouwd uit elektronische componenten die samen verbonden zijn en zo de stroom van elektrische signalen kunnen controleren. De CPU haalt data en instructies uit het geheugen
Geheugen
Bus
De CPU ontvangt data en instructies van het toetsenbord, muis, ...
Centrale verwerkingseenheid (CPU)
De CPU voert berekeningen uit, slaat resultaten en instructies uit het geheugen op
Bus
Input/Output apparaten (I/O)
De CPU voert berekeningen uit, stuurt resultaten naar het scherm, luidsprekers, printer, ...
Figuur 1.1. De von Neumann architectuur. De CPU is veruit het meest complexe onderdeel van de computer ; de Intel Pentium 4 processor bv. is samengesteld uit ongeveer 24 miljoen individuele componenten. Deze zijn aangebracht op een kleine silicium chip, die in plastic is ingepakt, met metalen pinnetjes die de chip met andere hardware componenten verbinden. Voorbeelden van de meest gebruikte CPU's zijn de Intel Pentium 4, de AMD Athlon™ en de Motorola PowerPC™ G4. Bij de sturing van de werking van de computer heeft de CPU twee belangrijke taken : (1) Het ophalen van programmainstructies uit het centrale geheugen (2) Het uitvoeren van deze instructies
Computervaardigheden
29
1. Inleiding : basisbegrippen
Vermits het resultaat van de uitvoering van een computerprogramma complex en ingewikkeld kan zijn, zou men geneigd kunnen zijn te denken dat de individuele instructies die door de CPU dienen uitgevoerd te worden ook complex zijn. Dit is echter niet het geval ; het is namelijk zo dat zelfs geavanceerde programma's worden opgesplitst in sequenties van zeer eenvoudige instructies, zoals bv. het optellen van twee getallen en het copiëren van twee getallen van de ene locatie naar de andere. Het kan natuurlijk duizenden of miljoenen van deze eenvoudige instructies vergen om het complexe gedrag van een tekstverwerker of een Web browser te gaan specifiëren. CPU's kunnen echter zeer snel de sequenties van instructies gaan uitvoeren, zodanig dat het voor een processor mogelijk is immens grote programma's te gaan behandelen. De CPU snelheid wordt meestal uitgedrukt in het aantal klokslagen van de centrale klok van de computer per tijdseenheid, en staat meestal in megahertz (Mhz) of gigahertz (GHz), waarbij 1 Mhz en 1 Ghz respectievelijk slaat op 1 miljoen en miljard cycli per seconde. We zullen in Hoofdstuk 4 terugkomen op een aantal verschillende manieren om de snelheid van de computer snelheid te bepalen.
1.2.1.2. Het geheugen Het geheugen is dat onderdeel van de computer dat de programma's en de gegevens (data) opslaat. Moderne computers zijn digitale apparaten, d.w.z. dat ze informatie opslaan en verwerken met eenheden van data die overeenkomen met één van twee mogelijke waarden (dit noemt men binary digits of bits). Vermits bits één van twee mogelijkheden voorstellen, verwijst men hier soms naar als discrete waarden, dit in tegenstelling met continue waarden, die op een schaal met een oneindig aantal mogelijkheden worden voorgesteld. Bits zijn de bouwstenen van het digitale geheugen ; de twee mogelijke waarden van een bit worden gewoonlijk geschreven als 0 of 1, maar men zou ze even goed kunnen voorstellen als aan en uit, open of dicht, enz. Het spreekt natuurlijk vanzelf dat één enkele bit niet bruikbaar is om veel informatie op te slaan, aangezien men op deze manier slechts het onderscheid zou kunnen maken tussen twee verschillende waarden. Wanneer echter twee bits met elkaar gecombineerd worden, dan zijn er vier verschillende patronen die kunnen gebruikt worden om
Computervaardigheden
30
1. Inleiding : basisbegrippen
waarden voor te stellen : 00, 01, 10 en11. Naar analogie kunnen 3 bits 8 verschillende waarden voorstellen : 000, 001, 010, 011, 100, 101 en 111. Elke bijkomende bit voor opslag zal zo het aantal mogelijke waarden die kunnen opgeslagen worden verdubbelen, zoals je kan zien in Figuur 1.2. Algemeen kan men stellen dat N bits 2N verschillende waarden kunnen voorstellen. Ondanks het feit dat de bit de bouwsteen is van het digitale geheugen, wordt de capaciteit van het geheugen meestal uitgedrukt in bytes. Een byte is een verzameling van 8 bits en kan dus 28 = 256 mogelijke waarden weergeven. Zo komt een kilobyte (KB) met ongeveer 1000 bytes opslag overeen, een megabyte (MB) met ongeveer 1 miljoen bytes en een gigabyte (Gb) met ongeveer 1 miljard bytes. Een terabyte (TB) stemt ruwweg overeen met 1000 miljard bytes (Figuur 1.3). 1 bit
→ 2 waarden
01
2 bits → 4 waarden
00 01 10 11
3 bits → 8 waarden
000 001 010 011 100 101 110 111
4 bits → 16 waarden
0000 0001 0010 0011 0100 0101 0111 1000 1001 1011 1100 1101 1111
5 bits → 32 waarden
00000 00001 00010 00011 00100 00101 00110 00111 01000 01001 01010 ...
6 bits → 64 waarden
000000 000001 000010 000011 000100 000101 000110 000111 001000 ...
7 bits → 128 waarden
0000000 0000001 0000010 0000011 0000100 0000101 0000110 ...
8 bits → 256 waarden
00000000 00000001 00000010 00000011 00000100 00000101 00000110 ...
9 bits → 512 waarden
000000000 000000001 000000010 000000011 000000100 000000101 ...
10 bits → 1024 waarden
0000000000 0000000001 0000000010 0000000011 0000000100 0000000101 ...
Figuur 1.2. Bitpatronen. byte
8 bits
kilobyte (KB)
210 bytes = 1.024 bytes (= 8.192 bits)
megabyte (MB) 220 bytes = 1.048.576 bytes (= 8.388.608 bits) gigabyte (GB)
230 bytes = 1.073.741.824 bytes (= 8.589.934.592 bits)
terabyte (GB)
240 bytes = 1.099.511.627.776 bytes (= 8.796.093.022.208 bits) Figuur 1.3. Veel gebruikte eenheden voor data opslag.
Computervaardigheden
31
1. Inleiding : basisbegrippen
Elk karakter op een toetsenbord kan dus worden voorgesteld door een byte, aangezien een verzameling van 8 bits 256 verschillende mogelijkheden opleveren. Het is daarom interessant om geheugencapaciteit ook eens te bekijken vanuit het standpunt van een tekst. Een kilobyte kan gebruikt worden om meer dan duizend tekstkarakters weer te geven (dit komt gemiddeld overeen met een aantal paragrafen tekst, typisch één getypte pagina), een megabyte kan meer dan een miljoen tekstkarakters weergeven (bv. twee of drie boeken), een gigabyte meer dan een miljard karakters (bv. een kleine bibliotheek) en een terabyte meer dan 1000 miljard (triljard) tekstkarakters (bv. een zeer grote bibliotheek). Op het eerste gezicht lijken dit immens grote capaciteiten wanneer men met tekst te maken heeft. Er zijn echter andere types van gegevens die veel meer geheugen vereisen. Zo zal bv. een foto met hoge resolutie verschillende megabyte opslagcapaciteit vereisen. Ondanks het feit dat in de von Neumann architectuur het computergeheugen als één enkele component wordt afgebeeld, gebruiken moderne computers een combinatie van geheugentypes, elk met z'n eigen karakteristieke performatie en kostprijs.
Het
geheugen dat de snelste transfer van bits van en naar de CPU toelaat is dat type van geheugen waarbij elektrische schakelingen gebruikt worden, waarbij 1 of 0 wordt voorgesteld als de aan- of afwezigheid van spanning over een "draadje". Voorbeelden van dit type van geheugen zijn het cache geheugen en het RAM (afkorting van Random Access Memory) geheugen. Het cache geheugen is typisch in de CPU chip zelf ingebouwd en gebruikt hoge snelheidsconnecties zodanig dat de data erin opgeslagen extreem snel kan aangesproken worden. Het RAM geheugen daarentegen is op afzonderlijke chips ondergebracht en communiceert met de CPU tegen een lagere snelheid. De data aanwezig in het RAM geheugen kan dus minder snel aangesproken worden dan de data in het cache geheugen, maar het RAM geheugen is veel goedkoper. Men zal daarom kostprijs tegenover performatie afwegen en een klein gedeelte (meestal uitgedrukt in kilobyte) cache geheugen voorzien voor de opslag van essentiële gegevens, terwijl men voor de overige gegevens RAM geheugen zal voorzien (meestal uitgedrukt in megabyte). Er is naast het RAM geheugen ook nog een beperkt gedeelte ROM (afkorting voor Read-only Memory) aanwezig. Read-Only-Memory (ROM) is geheugen waarvan de inhoud permanent is, i.e. het kan enkel gelezen worden en er kan (gewoonlijk) niet naar weggeschreven worden. Bovendien verdwijnt de inhoud van dit Computervaardigheden
32
1. Inleiding : basisbegrippen
geheugen niet wanneer de stroom komt weg te vallen. Typisch wordt het ROM geheugen gebruikt om permanente programma's in te stockeren zoals deze die bv. nodig zijn wanneer de computer wordt aangezet. Het cache- en RAM geheugen vormen samen het centrale geheugen (ook wel het primaire geheugen genoemd) van de computer, waarin alle data ondergebracht is of zal worden die de CPU actief gebruikt. De data die erin opgeslagen zit kan snel door de CPU aangesproken worden. In vergelijking met andere opslagmanieren is dit geheugen echter duur. Tevens is het centrale geheugen vluchtig, wat wil zeggen dat een constante stroom van elektriciteit nodig is om de informatie die erin opgeslagen is te behouden. Dit wil zeggen dat als je je computer uitzet, dat alle gegevens die in het cache- en het RAM geheugen opgeslagen waren verloren zijn. Computers vereisen dus ook nog secundair geheugen, wat goedkoper is en voor permanente opslag van gegevens kan zorgen. Secundair geheugen is voorhanden in verschillende vormen. Een harde schijf ("hard disk") is een metalen plaatje dat bits opslaat als gemagnetiseerde en nietgemagnetiseerde gebieden. Deze schijf draait onder een sensor die deze gebieden detecteert en interpreteert als bits. Ondanks het feit dat dit type van geheugen een stuk trager is dan het cache en RAM geheugen, is het een veel goedkoper en blijft de data behouden zelfs als de stroom naar het apparaat uitgeschakeld wordt. Een harde schijf kan zeer grote hoeveelheden informatie permanent opslaan (meestal uitgedrukt in gigabyte) ; deze gegevens kunnen, indien nodig, naar het centrale geheugen overgebracht worden. Floppy disks, CD's en DVD's zijn voorbeelden van goedkoop en draagbaar secundair geheugen. Je kan een floppy disk bekijken als een kleine, draagbare versie van een harde schijf, wat toelaat om 1.44 MB aan data op een 3.5 inch plastic schijfje op te slaan. Een CD (Compact Disc) is een metalen schijfje ongeveer 700 MB aan data kan geschreven worden als patronen in zijn reflecterend oppervlak. Wanneer je een CDROM (Compact Disc - Read Only Memory) gebruikt, worden deze patronen op het oppervlak van de schijf gebrand door een laser en kunnen daarom niet meer overschreven worden. Gebruik makend van de CD-RW (Compact Disk - ReWritable) kunnen deze patronen echter herhaaldelijk overschreven worden, omdat in dit geval de patronen gevormd worden in de fotogevoelige oppervlaktelaag van de schijf. Vandaag de dag is er naast de compact disc ook de zogenaamde DVD (nu gekend als Digital Versatile Disc, vroeger de afkorting voor Digital Video Disc). De CD-ROM en DVD Computervaardigheden
33
1. Inleiding : basisbegrippen
technologie zijn gerelateerd aan elkaar, maar de DVD laat toe tot 17 gigabyte aan gegevens op te slaan. Op een DVD wordt de informatie opgeslagen volgens een welbepaald compressie formaat. Er zijn vier versies van de DVD : single-sided, singlelayer (4.7 GB), double-layer (8.5 GB), double-sided, single-layer (9.4 GB) en doublesided, double-layer (17 GB).
1.2.1.3. Input en Output apparaten (I/O) Het spreekt vanzelf dat een computer niet erg bruikbaar zou zijn wanneer er geen communicatie kan plaatsgrijpen met gebruikers of met andere computers. Input apparaten laten toe dat een computer gegevens en instructies ontvangt van een externe bron, zoals bv. van een persoon die commando's met een toetsenbord ingeeft. Voorbeelden van inputapparaten zijn toetsenborden, muizen, zogenaamde "track pads", microfoons en scanners. Output apparaten laten toe dat de computer resultaten afbeeldt of uitzendt. Voorbeelden hiervan zijn monitors, printers en luidsprekers. Apparaten die toelaten dat de computer communiceert met andere computers kunnen zowel in de categorie input als output apparaten ondergebracht worden. Voorbeelden hiervan zijn modems, ethernet adaptors of draadloos netwerk adaptors. Een modem (afkorting voor modulator-demodulator) laat communicatie toe over telefoonlijnen. Vermits computers digitale apparaten zijn (d.w.z. dat ze de data opslaan als bits) en de meeste telefoonlijnen analoog werken (d.w.z. dat ze de geluidsdruk als een elektrische spanning van overeenkomstige grootte overdragen) is het één van de taken van de modem om digitale data naar analoge signalen om te zetten voor transmissie en, aan de andere kant van de lijn, om analoge naar digitale data om te zetten. Bij een modem wordt ook meestal vermeld met welke snelheid de modem data kan transfereren ; zo duidt de term 56K een snelheid van 56K bits per seconde aan. Dit is de hoogste snelheid die over een telefoonlijn kan gehaald worden, maar er zijn nieuwe technologieën die dit kunnen overtreffen. Ethernet is een populaire technologie om computers in een kleinschalig netwerk te verbinden. Verbindingen van dit type laten zeer snelle communicatie toe (zoveel als bv. 10Mbits, 100Mbits of zelfs 1000Mbits, afhankelijk van de bekabeling), maar ze zijn beperkt qua omvang en aantal computers.
Computervaardigheden
34
1. Inleiding : basisbegrippen
1.2.2. Software Daar waar de term "hardware" betrekking had op de fysische componenten van de computers, verwijst de term "software", waar we in Hoofdstuk 3 dieper zullen op ingaan, naar de programma's die draaien op de hardware. Een eerste categorie van programma's kan men omschrijven als toepassingssoftware, elk ontworpen om verschillende taken uit te voeren binnen een bepaald toepassingsgebied zoals tekstverwerkers, grafisch ontwerp en toegang tot het web. Daarnaast is er ook de zogenaamde systeem-software, die de resources en het gedrag van de computer zelf beheren. De grootste en meest integrale systeemsoftware van dat type is het zogenaamde besturingssysteem ("operating system"), een verzameling van programma's die het samenwerken van de CPU, het geheugen en de I/O apparaten stuurt bij de uitvoering van programma's.
De meest fundamentele taken van het
besturingssysteem zijn het plannen van de CPU werking en het sturen hoe de data en de instructies uit het geheugen worden geladen en aangesproken worden door de CPU. De meeste computers vandaag de dag zijn zogenaamde "multitasking" machines, wat betekent dat verschillende programma's tegelijkertijd in het centrale geheugen kunnen aanwezig zijn en een gedeelte van de capaciteit van de CPU gebruiken. Het is door de controle van de CPU heen en terug te schakelen tussen de actieve programma's tegen een zeer hoge snelheid dat het lijkt alsof ze simultaan worden uitgevoerd. Het besturingssystem beheert ook het geheugen van de computer, zoals de opslag in "files" en "directories" (of mappen en folders). Een "file" is een document dat informatie opslaat, zoals tekst, een beeld, geluid of een programma.
Het
besturingssysteem houdt bij waar de verschillende files ondergebracht zijn zodat ze kunnen aangeroepen worden wanneer nodig. Een "directory" is een verzameling van files die tesamen gehouden worden en die aangeduid worden met een gemeenschappelijke naam. Een andere taak van het besturingssysteem is de CPU en het geheugen van de computer te verbinden met ander hardware componenten, zodat andere software toepassingen het geheugen kunnen aanspreken en kunnen interageren met de input/output apparaten. Om de interactie met de computer voor de gebruiker gemakkelijker en aangenamer te maken, maken de meeste besturingssystemen van een grafische userinterface (GUI).
Computervaardigheden
35
1. Inleiding : basisbegrippen
Voorbeelden van dergelijke besturingssystemen zijn Microsoft Windows, Mac OS en Linux.
1.2.3. Internet en het web We zullen in Hoofdstuk 6 dieper ingaan op het internet en het web, maar we geven hier reeds een kort overzicht. Het is een veel voorkomend misverstand om te denken dat het internet en het World Wide Web hetzelfde is. Het internet is een groot internationaal netwerk van computers. Het kan gecatalogeerd worden als hardware, vermits het bestaat uit computers rondom de wereld en de communicatielijnen waardoor ze verbonden zijn. Deze fysische connecties kunnen variëren van speciaal voorziene kabels van hoge-snelheid (zoals bv. kabelmodem connecties) tot trage, goedkope telefoonlijnen. Het resultaat is echter dat twee gebruikers op eender welke plaats op de wereld met elkaar informatie kunnen uitwisselen en dat computers kunnen communiceren. Het World Wide Web kan in de categorie software geplaatst worden en bestaat uit webpagina's, beelden, geluidsfile's, enz., en de software die deze files bewaart en opvraagt. Het basisidee voor het web werd voorgesteld in 1989 door T. Berners-Lee van het Europees Laboratorium voor Deeltjesfysica (CERN), om onderzoekers die zich op grote afstand van elkaar bevonden gemakkelijker informatie te laten uitwisselen. Hiervoor ontwierp hij een systeem waardoor documenten over het internet met elkaar konden gelinkt worden. Door het gebruik van goed gedefinieerde regels (ook wel protocols genoemd), die definiëerden hoe pagina's opgemaakt zijn, konden documenten gedeeld worden over netwerken op verschillende types van computers, zodat onderzoekers hun onderzoek konden verspreiden. De ontwikkeling van gemakkelijk te gebruiken grafische "browsers" in het midden van de jaren 1990 maakte het web toegankelijk voor een breder publiek, wat resulteerde in het hedendaagse World Wide Web. Een webpagina is niets meer dan een tekstdocument die bijkomende opmaakinformatie bevat in een taal die HTML (HyperText Markup Language) genoemd wordt. We zullen de syntax van deze taal wat van naderbij bekijken in Hoofdstuk 6. Om een webpagina te bekijken met de correcte HTML opmaak heb je een speciaal programma nodig, de webbrowser. Het is de taak van de webbrowser een webpagina aan te roepen, de
Computervaardigheden
36
1. Inleiding : basisbegrippen
HTML opmaakinformatie te interpreteren en de pagina met de correcte opmaak weer te geven. De twee meest populaire webbrowsers op de markt vandaag de dag zijn Microsoft Internet Explorer en Netscape Navigator.
Op deze manier kunnen pagina's
gedistribueerd worden over het ganse internet. Een "web server" is een zogenaamde "internet-enabled" computer die software draait die toegang geeft tot bepaalde webdocumenten. Wanneer je een bepaalde webpagina opvraagt, hetzij door de naam ervan in te typen in het adresvenster van je browser of door een link aan te klikken, dan stuurt je browser een aanvraag over het internet naar de desbetreffende server. De server localiseert de specifieke pagina en zendt deze terug naar je computer. Webpagina's vereisen een eenduidige en specifieke naam zodat gebruikers en browsers ze kunnen vinden. Met het oog hierop krijgt elke pagina een URL of Uniform Resource Locator toegewezen. Zo heeft de webstek van de bibliotheek van de Vrije Universiteit Brussel het volgende adress of URL :
specificeert de naam van de Web server waar de pagina is opgeslagen
specificeert de naam van de pagina. Web pagina's eindigen gewoonlijk met .html of .htm, alhoewel andere extensies toegelaten zijn.
http://www.vub.ac.be/BIBLIO/index.html duidt aan dat de pagina moet aangesproken worden via de standaardmethode om webpagina's op te halen, het HyperText Transfer Protocol (HTTP)
specificeert de directory waar de pagina op de Web server is opgeslagen
Een URL begint met het prefix van het protocol http://, wat aanduidt dat het HyperText Transfer Protocol moet gebruikt worden in de communicatie tussen de browser en de server. Het resterende gedeelte van de URL specificeert de locatie van de gewenste pagina. Onmiddelijk volgend na http:// zie je de naam van de server ; dit is de web server waarop de pagina is opgeslagen. Vermits servers de pagina's vaak onderbrengen in verschillende directories, wordt de desbetreffende directory vervolgens aangegeven, uiteindelijk gevolgd door de naam van het bestand. Computervaardigheden
37
1. Inleiding : basisbegrippen
Het is vaak zo dat een gebruiker niet altijd het volledige webadres van de pagina dient in te voeren. In de meeste web browsers zal verondersteld worden dat wanneer je het prefix van het protocol weglaat, het gaat om http://. Ook zal, wanneer de naam van het bestand wordt weggelaten aan het einde van de URL, verondersteld worden dat het gaat om het bestand index.html. Het is daarom dat vele ontwerpers van webpagina's vaak de naam index.html aan het bestand geven, zodanig dat gebruikers enkel het webadres moeten onthouden.
Computervaardigheden
38