Hoofdstuk 5. Besturingssystemen
5.1. Taken van een besturingssysteem
5.1.1 Geschiedenis
De eerste echte computer, de MARK1 uit 1943, had geen besturingsprogramma en geen toetsenbord of beeldscherm.
De bediening was handmatig, met schakelaars.
In de jaren vijftig werden ponskaarten gebruikt om programma's in te voeren.
Als je wilde dat de computer een programma ging uitvoeren moest je eerst de bak met de ponskaarten, waarop de instructies
van het programma waren ingevoerd, in het apparaat zetten.
Je drukte op een knop en dan werden de ponskaarten ingelezen, en dan startte het programma.
Er was geen monitor waarop je zag wat de uitkomsten waren, alle uitvoer werd met behulp van een printer op papier afgedrukt.
Een aantal jaren later werd het mogelijk programma's en gegevens op schijf te bewaren.
Je hoefde geen bak met ponskaarten meer te pakken, maar je kon de naam van het programma intypen. En dan werd het van de schijf
ingelezen en uitgevoerd.
Maar er was een ander programma nodig om er voor te zorgen dat je een programma op die manier kon starten, en dat programma
wordt een besturingsprogramma genoemd.
Er werden in de jaren 1950-1960 besturingsprogramma's ontwikkeld, die ook de invoer- en uitvoer
verzorgden.
Enkele jaren later werd het mogelijk dat een computer meerdere programma's tegelijk kon uitvoeren
(dat wordt multitasking genoemd), en toen moesten de besturingsprogramma's ook het geheugen beheren: waar worden de
verschillende programma's in het geheugen opgeslagen. En ook de volgorde waarin de programma's of programmadelen worden uitgevoerd
moest worden geregeld, dus de besturingsprogramma's werden steeds ingewikkelder.
Een besturingsprogramma regelt de reacties van het systeem als een persoon een bepaalde handeling met de computer verricht,
bijvoorbeeld als hij op een bepaalde toets drukt, of met de muis klikt.
Dat kan van alles zijn, afhankelijk waar je een computersysteem voor gebruikt.
Een groot computersysteem moet er voor zorgen dat tientallen mensen tegelijk gebruik kunnen maken van de computer; ze hebben elk
een eigen toetsenbord en beeldscherm, maar ze meken allemaal gebruik van dezelfde centrale computer (dat wordt een multi-user systeem
genoemd).
Alles moet worden geregeld door het besturingsprogramma, en omdat dat heel veel verschillende dingen zijn bestaat een
besturingsprogramma tegenwoordig uit een heleboel onderdelen.
Het wordt daarom wel een besturingssysteem genoemd, in het engels is dat
operating system (OS).
Ook wordt wel de term platform gebruikt.
Elk apparaat dat m.b.v. een programma werkt is voorzien van een besturingssysteem, ook bijvoorbeeld een digitale camera.
En ook mobiele telefoons werken met een besturingssysteem; tot voor kort was het mobiele besturingssysteem
Symbian van Nokia verreweg het meest gebruikte.
Maar Android van Google is druk bezig de leidende positie voor besturingssystemen voor smartphones over te nemen.
Android is open source en dus vrij aanpasbaar, het is gebaseerd op Linux.
Veel producenten maken Android-toestellen zoals Samsung, Motorola en Sony Ericsson.
Apple is goed voor circa 16% van de mobiele telefoons die op
iOS (iPhone OS) draaien en
RIM heeft ongeveer evenveel BlackBerry's verkocht, ze draaien op BlackBerry OS.
Microsoft heeft met zijn Windows Mobile voor smartphones een marktaandeel van ongeveer 4%
5.1.2 Soorten software
De eerste computers waren erg groot en duur, en er waren maar een paar. Ze werden alleen gebruikt door computerspecialisten, die veel
verstand van de hardware hadden. Deze mensen moesten de programma's, die ze wilden gebruiken, zelf maken.
In de beginjaren werd bij het programmeren rekening gehouden met de hardware. Later werden programma's geschreven die in principe op
elke computer konden worden uitgevoerd, ze moesten dan wel worden omgezet (vertaald) in de specifieke machinetaal van die computer.
Vanaf ongeveer 1970 kwamen er steeds meer computers en steeds meer mensen werkten er mee.
Toen werden er kant en klare software pakketten ontwikkeld die voor een groot aantal algemene toepassingen bruikbaar waren.
Zo heeft de software in een halve eeuw tijd zich ontwikkeld van vrij technisch, hardwaregeoriënteerd en gebruiksonvriendelijk,
naar gebruikersgeoriënteerd. Er werden ook programma's gemaakt die technische taken van de gebruiker overnamen.
En dat gaat nog steeds door.
Die programma's horen bij het besturingssysteem, het is systeemsoftware.
Het besturingssysteem treedt op als een soort tussenpersoon (ook wel interface genoemd),
tussen applicaties en de hardware.
Je kunt het besturingssysteem daarom voorstellen als een soort schil om de hardware.
Denk daarbij aan een ui, die is opgebouwd uit een aantal lagen (schillen) die je er af kunt pellen.
De gebruiker is de buitenste schil. Die bedient het toepassingsprogramma, dat is de tweede laag.
De toepassing communiceert met het besturingssysteem, dat is de derde schil.
En het besturingssysteem stuurt de hardware, dat is de vierde laag.
De software wordt dus opgesplitst in systeemsoftware en applicatiesoftware (of toepassingssoftware.)
- De systeemsoftware heeft als belangrijkste taak de hardware en de verschillende gelijktijdig
uitgevoerde programma's te beheren. Deze software is voor een groot gedeelte hardware georiënteerd.
Hierbij hoort alle software die het computersysteem beheert, en ook de software die ondersteuning verleent bij ontwikkeling van
programma's.
De systeemsoftware kan worden opgedeeld in de volgende categorieën:
- De systeembeheer programma's.
Hieronder vallen het besturingssysteem of operating system dat de hardware
en de programma's beheert, het database management systeem (DBMS), dat gegevens
beheert bij grote systemen en monitoren (beheersprogramma's) voor netwerken.
- Systeemondersteunende programma's of utilities.
Hieronder vallen programma's die zorgen voor beveiliging, het maken van back-ups en virusbestrijding.
- Systeemontwikkelingstools.
Dit is software die de gebruikers helpen bij het ontwikkelen van nieuwe programma's.
Hieronder vallen de programmeertalen (met compilers) , en CASE (Computer
Aided Software Engineering) tools.
- De applicatiesoftware bestaat uit programma's die algemene of specifieke toepassingen voor
de gebruiker verrichten.
Hij is minder hardware- en vooral gebruikersgeoriënteerd.
De "gewone" gebruiker komt hier het meest mee in aanraking.
De applicatiesoftware wordt opgedeeld in de volgende categorieën:
- De algemene applicatiesoftware ontstond vanaf 1970 met de opkomst van de PC voor de grote massa.
Hieronder vallen onder meer: tekstverwerkingsprogramma's,spreadsheetprogramma's,
databaseprogramma's , presentatieprogramma's,
grafische en tekenprogramma's, desktop publishing programma's (DTP), email programma's, browsers,
enz.
Algemene applicatiesoftware is zo gemaakt dat het grote publiek het voor de meest gebruikelijke dingen kan toepassen.
Heel vaak worden veel van deze toepassingen geïntegreerd in de zogenaamde Office programma's of Suites.
De meest bekende zijn Microsoft Office en Open Office.
- De specifieke applicatiesoftware wordt ontwikkeld voor specifieke toepassingen voor het bedrijfsleven enz.
Deze programma's worden vaak speciaal op maat ontwikkeld voor één gebruiker.
Het onderscheid tussen de twee soorten applicatiesoftware vervaagt steeds meer, maar het verschil is vooral dat specifieke
applicatiesoftware wordt ontwikkeld nadat nauwkeurig omschreven is wat de software moet kunnen.
5.1.3 Typen en taken besturingssystemen
Typen besturingssystemen
Single-user, single-tasking
Dit besturingssysteem is bedoeld om het computersysteem voor
één gebruiker die één taak uitvoert te beheren.
Zo'n besturingssysteem zit in veel eenvoudige computergestuurde apparaten. Bijvoorbeeld in een magnetron, en in een fietscomputertje.
In veel mobiele telefoons zit het besturingssysteem Symbian.
Verder is MSDOS een single-user, single-tasking besturingssysteem. MSDOS werd voordat Windows op de markt kwam, door bijna
iedere computer gebruikt.
Single-user, multi-tasking
Dit besturingssysteem kan voor één gebruiker tegelijkertijd
aan verschillende taken werken.
Dit type besturingssysteem wordt het meest gebruikt in computers voor persoonlijk gebruik.
Een gebruiker kan meer dan één programma tegelijk starten en daardoor
verschillende taken tegelijkertijd activeren en wisselen tussen de uitvoering van die taken.
Voorbeelden van single-user, multi-tasking systemen zijn
Windows van Microsoft en Mac OS van Apple
Multi-user
Een multi-user besturingssysteem zorgt er voor dat verschillende gebruikers
tegelijkertijd allemaal hun eigen programma's kunnen uitvoeren.
Het besturingssysteem zorgt ervoor dat alle gebruikers een evenredig deel van de
beschikbare tijd, geheugencapaciteit en apparatuurtoegang krijgen toegewezen.
Voorbeelden van multi-user systemen zijn Unix en Linux en VMS, waarmee wel honderd gebruikers
tegelijkertijd kunnen werken met dezelfde centrale computer.
Basistaken van een besturingssysteem
Elk besturingssysteem (dat hoeft niet beslist voor een "echte" computer te zijn, het kan bijvoorbeeld ook voor een fietscomputertje
of een digitale camera zijn) beschikt minimaal over de volgende basisfuncties:
-
De ingetoetste tekens of ingevoerde signalen van een invoerapparaat, zoals het toetsenbord, naar de processor sturen
- Tekens of signalen zichtbaar maken op een beeldscherm
Voor computers komen daar nog een aantal functies bij:
- Het besturen van randapparaten, zoals printer, monitor, enz.
- Gegevens opslaan in en lezen uit het interne geheugen.
- Bestanden opslaan in en lezen uit het externe geheugen en programma's, die in het externe geheugen staan, kunnen opstarten
- Bestanden in het externe geheugen kunnen ordenen in mappen, kopiëren en verwijderen.
Bij multi-user (en multi-tasking) systemen komen daar nog een aantal bij:
- De computer moet meerdere taken tegelijk uit kunnen voeren (dat wordt multi-tasking genoemd).
In een computer met één processor kan dat eigenlijk niet, een processor kan maar één ding tegelijk doen.
De oplossing die hiervoor bedacht is, heet timeslicing (zie verderop)
- Iedere gebruiker moet voldoende aan bod komen.
Als één gebruiker met een "zware" applicatie bezig is, en daardoor komen de andere gebruikers te weinig aan bod, dan is
er iets mis. Het besturingssysteem moet er voor zorgen dat gebruikers niet hoeven te wachten.
- Iedere gebruiker moet gedeelde randapparatuur, bijvoorbeeld een printer, kunnen gebruiken.
Daarvoor wordt "spooling" gebruikt, zie verderop.
- De gebruikers moeten geïdentificeerd kunnen worden.
Er moet kunnen worden ingelogd m.b.v. een gebruikersnaam en een wachtwoord, en aan de hand daarvan
moet worden bepaald wat de gebruiker wel en niet met de computer kan doen.
- Gegevens moeten beveiligd kunnen worden.
In grote systemen komen vaak belangrijke gegevens voor, waar veel gebruikers mee moeten kunnen werken.
Deze gegevens moeten niet zomaar gewist kunnen worden, en niet elke gebruiker mag bij alle gegevens.
Grafische interface
Als je in MSDOS iets wilde moest je een commando intikken.
Dat commando werd dan door MSDOS geïnterpreteerd, dat wil zeggen dat het werd ontleed en uitgevoerd
(interpreteren = ontleden + uitvoeren).
Daarom wordt MSDOS wel een Command Line Interpreter genoemd.
Dat geeft ontzettend veel mogelijkheden, maar
dan moet je wel al die commando's kennen.
De fabrikant Apple was de eerste computerfabrikant die met een besturingssysteem op de markt kwam met een
grafische interface. De Macintosh van Apple was de eerste computer waarbij er allemaal icoontjes op het
scherm getoond werden, en je hoefde alleen maar op zo'n icoontje te klikken om ervoor te zorgen dat er iets
gebeurde. Microsoft heeft dit afgekeken en Windows heeft ook een zogenaamde
GUI, dat is de afkorting
van Graphical User Interface.
Daarbij wordt ook het WYSIWYG-principe gebruikt.
WYSIWYG is de afkorting van What You See Is What You Get:
de weergave op het scherm ziet er net zo uit zoals ze op papier zou worden afgedrukt.
5.1.4 Bios, Opstarten
Opstarten
Het ROM-geheugen bevat de BIOS.
BIOS is de afkorting van
Basic Input Output System, en het bevat een
aantal programma's die de computer op de hardware instellen, en het zorgt ervoor dat het besturingssysteem opstart.
Meestal is dit 1 MB groot.
De BIOS is dus software die verantwoordelijk is voor de besturing van schijven, toetsenbord, monitor, muis, etc.
Het gedraagt zich als een brug tussen het besturingssysteem en de hardware.
De BIOS doet het volgende:
-
Als je de computer aanzet dan controleert de BIOS de computer op de aanwezigheid
en de werking van de systeemonderdelen, het gebruikt hiervoor het POST-programma
dat op de BIOS-chip aanwezig is.
POST is de afkorting van
Power On Self Test.
Het bevat een aantal instructies die worden uitgevoerd bij het opstarten van de computer
Er wordt dan gecontroleerd of alle componenten werkzaam zijn.
Als eerste worden de onderdelen van de processor getest. Daarna wordt
de videokaart getest. Als deze niet goed is
wordt een waarschuwingssignaal gegeven, meestal een korte en een lange piep.
Ook het RAM geheugen wordt getest (door op de ESC-toets te drukken kun je ervoor zorgen dat die controle wordt overgeslagen)
Als het toetsenbord bijvoorbeeld niet is aangesloten dan hoor je een aantal piepjes, en er verschijnt ook een foutmelding op het scherm.
De computer geeft één piepje als de POST met succes is afgesloten.
- De POST leest ook de gegevens uit de CMOS.
CMOS is de afkorting van Complementary Metal Oxide Semiconductor.
CMOS is een RAM-chip waarop de data bewaard blijven met behulp van een klein oplaadbaar
batterijtje.
Het is een zeer klein geheugen van ongeveer 100 of 200 bytes, en de gegevens in dat geheugen kunnen wel gewijzigd worden.
Die gegevens hebben betrekking op o.a. de
harde schijven, het toetsenbord, de CPU, de waarden voor de chipset, de datum en de tijd, enz.
- Het stelt de randapparaten in op hun startwaarden (=initialisatie).
- Het controleert op welke schijf het startprogramma voor het besturingssysteem
staat (dat staat in het zogenaamde MBR, dat is de afkorting van master boot-record).
Dit boot-record is de allereerste sector van de harde schijf. Er staat een reeks opdrachten in die nodig is om het
besturingssysteem te laden (booten). Door die opdrachten uit te voeren wordt het besturingssysteem
in het intern geheugen geladen, en vanaf dat moment stopt de werking van de BIOS.
Het opstarten wordt ook wel booten of bootstrappen genoemd. Een bootstrap is een lusje aan een laars.
Het starten van het besturingssysteem is namelijk een merkwaardige zaak, het besturingssysteem dient er o.a. voor om programma's
op te kunnen starten. Het is heel knap dat het zelf ook wordt opgestart. Dat is net zo knap als het is om, als je in een moeras zit, je
aan de lussen van je laarzen omhoog te trekken uit dat moeras. Vandaar de term bootstrappen.
Setup
Een aantal gegevens van de computer, die kunnen wijzigen, worden door de fabrikant in het CMOS geprogrammeerd.
Als je bijvoorbeeld een nieuwe harde schijf in de computer zet dan kun je die gegevens aanpassen.
De standaard (default) instellingen kunnen gewijzigd worden m.b.v. het SETUP programma.
Je kunt het Setup programma meestal oproepen door de [delete-toets] of de [F1-toets] in
te drukken tijdens het opstarten van de PC
(op de monitor is tijdens het opstarten te zien welke toets je moet gebruiken).
Je kunt bijvoorbeeld de volgende dingen aanpassen: -
datum en tijd
- de kenmerken van de harde schijven.
- je kunt een wachtwoord invoeren voor het setup-programma
- de bootvolgorde: bijvoorbeeld eerst de CDROM, dan de C-schijf, en dan de diskette. Je moet de cursor dan eerst
op Advanced Bios Features zetten, en op enter drukken. Dan krijg je een venster zoals in de onderstaande figuur.
5.1.5 Taakbeheer
Je kunt bij een multi-tasking systeem verschillende programma's tegelijk laten uitvoeren door een computer.
En we hebben in het vorige hoofdstuk gezien dat een processor maar één ding tegelijk kan doen. Dat lijkt met elkaar in tegenspraak te zijn.
Eigenlijk wordt je voor de gek gehouden, want ook als er verschillende programma's draaien wordt er
toch maar één proces tegelijk door de processor uitgevoerd.
De processor werkt afwisselend aan verschillende taken, maar door de hoge verwerkingssnelheid lijkt het alsof de taken tegelijk worden
uitgevoerd.
Time-slicing
Als er bijvoorbeeld vier programma's A, B, C en D draaien dan is de processor gedurende een korte tijd
bezig met proces A. Gedurende die tijd staan de processen B, C en D stil.
Na die korte tijd wordt proces A stilgelegd en gaat de processor bezig met proces B.
Daarna is proces C aan de beurt en daarna D.
En dan gaat de processor weer bezig met proces A, dat gaat verder vanaf het punt waar de uitvoering
was gestopt. En zo gaat dat steeds verder.
Dit principe wordt time-slicing genoemd. Daarbij krijgt in principe elk proces evenveel tijd, en die
tijd wordt de time-slice genoemd.
In onderstaande figuur zie je dat vier processen om en om worden
uitgevoerd, elk proces krijgt telkens 50 microseconden uitvoeringstijd.
De gebruiker krijgt het idee dat de processen tegelijkertijd werken.
Het besturingssysteem beslist welk programma op welk ogenblik toegang krijgt tot de processor
en voor hoelang. In feite is de processor afwisselend met het ene en het andere
programma bezig.
Maar soms is het niet zo dat de processor evenveel tijd besteedt aan alle programma's die draaien.
Aan elk proces wordt een prioriteit toegekend.
De prioriteit is een getal dat gebruikt wordt om een proces meer tijd te geven dan een ander, of om het
voorrang te geven op alle andere processen. Grote ingewikkelde programma's kunnen een hogere prioriteit krijgen dan
standaard programma's, en daardoor krijgen ze een langere processortijd toebedeeld dan normale programma's.
Voor de processen met dezelfde prioriteit gebeurt de procesomschakeling op basis van timeslicing, elk
proces krijgt dan evenveel uitvoeringstijd.
Voor processen met een verschillende prioriteit geldt er een voorrangsregel.
Het programmagedeelte van het besturingssysteem dat dit regelt wordt de
scheduler genoemd.
De scheduler bepaalt steeds welk proces als volgende door de processor zal worden uitgevoerd, en er wordt
daarbij rekening gehouden met de prioriteit van het proces.
Bij een multi-user systeem houdt de scheduler ook bij welke gebruikers en welke terminals actief zijn.
Met een terminal wordt een combinatie van een toetsenbord en een beeldscherm bedoeld. Bij een groot bedrijf zijn er
vaak een heleboel terminals op één en dezelfde computer aangesloten.
Kritieke sectie, deadlock
Het proces waar de processor op het moment aan werkt, heeft de status
'actief'. De andere processen hebben
op dat moment de status 'pauze'. Deze statussen wisselen de hele tijd.
Maar soms moet een bepaalde opdracht niet geritst worden.
Stel dat je twee verschillende stukken tekst wil uitprinten en je geeft dus twee
printopdrachten. Als hierbij time-slicing wordt toegepast dan wordt er om de beurt een stukje van de ene
tekst en van de andere tekst geprint, en dan worden beide teksten dus door elkaar heen afgedrukt.
Bij het uitprinten van een stuk tekst mag dus nooit time-slicing worden toegepast.
We noemen zo'n opdracht die niet geritst mag worden een
kritieke sectie van een programma.
Een soortgelijk probleem heb je als twee geritste programma's beide iets van een CDROM willen inlezen.
Als er steeds gewisseld moet worden van de plaats op de CDROM, waarvan ingelezen moet worden, dan duurt
dat inlezen bij beide processen erg lang. Het is veel efficiënter als eerst het ene gedeelte
helemaal wordt ingelezen, en dan het andere gedeelte helemaal.
Er zijn dus bepaalde voorzieningen (bijvoorbeeld printer, CDROM, diskette, enz)
die nooit tegelijk
mogen worden toegewezen aan meerdere processen.
Voordat een kritieke sectie van een programma actief mag worden, moet eerst door het besturingssysteem
worden gecontroleerd of de te gebruiken voorziening (bijvoorbeeld de printer) vrij is.
Zolang dat niet zo is krijgt het proces de status 'wachten'.
Een proces kan dus in drie verschillende statussen verkeren: actief, pauze en wachten.
Bij de status wachten kan zich soms het probleem voordoen dat twee processen op elkaar aan het wachten
zijn en dat de processor daardoor niks meer uitvoert. Dan loopt het systeem vast, en als dat komt
doordat twee processen
op elkaar wachten dan noem je dat een deadlock.
Een voorbeeld van een deadlock uit het dagelijks leven is als vier auto's tegelijk bij een kruispunt
aankomen. Dan moeten ze eigenlijk allemaal wachten, want voor alle vier automobilisten komt er een
auto van rechts.
Waarschijnlijk zal dan de brutaalste toch doorrijden, en dan is het probleem opgelost.
Maar waren het computerprogramma's geweest, dan waren ze op het kruispunt blijven staan tot sint-juttemis.
Interrupt Request
Soms is het gewenst dat een besturingssysteem onmiddellijk reageert op een bepaalde opdracht.
Bijvoorbeeld als er een CD in de CDROM-drive wordt gestopt is het handig als deze meteen wordt opgestart.
Of als een netwerkverbinding onverwacht wordt verbroken is het wenselijk dat het besturingssysteem direct een melding op
het scherm laat verschijnen.
Of als er met de muis ergens op geklikt wordt is het handig als daar direkt op gereageerd wordt.
Zo'n opdracht, die voorrang krijgt boven de opdracht die op dat moment uitgevoerd wordt, noemen
we een interrupt.
Daarvoor dient een IRQ, dat is de afkorting van interrupt-request.
IRQ (Interrupt Request) is een onderbrekingsverzoek aan de processor van de computer, die dan een actief programma onderbreekt
om bijvoorbeeld te kijken waarop met de muis is geklikt.
Bij de installatie van de pc krijgt elk randapparaat een uniek IRQ-nummer (Interrupt Request number).
Aan de hand van dit IRQ-nummer kan het randapparaat vragen aan de processor om een bepaalde opdracht uit te voeren.
De muis kan bijvoorbeeld IRQ-nummer 12 hebben.
Als je tijdens de werking van een programma op de muis klikt dan stuurt de muis-controller een IRQ-signaal via IRQ-lijn 12,
en dan weet de Interrupt-controller onmiddellijk dat het signaal van de muis komt.
Er zijn in de PC maar 16 IRQ-lijnen beschikbaar.
Als twee randapparaten hetzelfde IRQ-nummer hebben kunnen er problemen ontstaan, want als bijvoorbeeld de muis en het
modem dezelfde IRQ hebben dan weet de processor bij een interrupt niet wie er aan de bel getrokken heeft.
PCI-apparaten kunnen trouwens wel hetzelfde IRQ-nummer gebruiken.
Welke IRQ-lijnen op jouw PC door welke apparaten gebruikt worden kun je op de volgende manier achterhalen:
Klik op Start
→ Alle Programma's → Bureau-Accessoires
→ Systeemwerkset → Systeeminfo.
Klik dan in het linker venster op Hardwarebronnen, en dan op IRQ's. Dan zie je zoiets als hier onder:
5.1.6 Communicatie met randapparaten
Een belangrijke taak van het besturingssysteem is het verzorgen van de communicatie met de randapparatuur.
Er zijn verschillende soorten printers en er zijn beeldschermen in allerlei maten en soorten (LCD, TFT, CRT, Plasma).
Het besturingssysteem moet weten met welk type het te maken heeft, en moet beschikken over een programma
om met dat specifieke apparaat te kunnen communiceren. Zo'n programma noemt men een stuurprogramma of driver.
Zo moet een besturingssysteem beschikken over een printerdriver, een driver voor de monitor, voor de muis, voor de harde schijf, voor
de CDROM, enz.
Als je een nieuw randapparaat koopt zit er meestal een CDROM bij met de bijbehorende driver. Die moet je dan eerst
installeren.
Er zijn ook een heleboel drivers in Windows ingebouwd, en eventueel kun je via Internet drivers downloaden.
De randapparaten hebben ook een stukje elektronica nodig om met de computer te kunnen communiceren.
Dat noemen we de controller.
Dat is vaak in het apparaat ingebouwd, zoals bij een diskettestation of printer. De controller kan ook op een insteekkaart in de
computerkast zitten, bijv. de controller voor het beeldscherm.
Programma's zijn zoveel mogelijk apparaatonafhankelijk. Als je bijvoorbeeld in Word een document wilt uitprinten dan geeft Word
deze opdracht door aan het besturingssysteem, en die verzorgt de uiteindelijke afdruk.
Spooling en buffering
Als een printopdracht moet worden uitgevoerd dan worden de gegevens niet rechtstreeks naar de printer gestuurd
maar eerst worden ze tijdelijk ergens opgeslagen.
Een aantal jaren geleden werden de gegevens tijdelijk bewaard in een stukje van het werkgeheugen.
Dat werd dan het buffergeheugen
genoemd. Dat buffergeheugen was niet heel groot, zodat het gemakkelijk kon gebeuren dat je eerst een poosje moest wachten
voordat je een nieuwe printopdracht kon geven. Want als het buffergeheugen vol was kon er niet meer bij.
En als je de computer uitdeed terwijl de printer nog niet klaar was met de opdracht, en daarna deed je de
computer weer aan, dan begon de printer niet meteen weer te ratelen want de printopdracht in het buffergeheugen was dan verdwenen.
Tegenwoordig wordt meestal gebruik gemaakt van spooling
(SPOOL is de afkorting van Simultaneous Peripheral Operation On Line).
De gegevens worden dan tijdelijk bewaard op de harde schijf.
De harde schijf is meestal behoorlijk groot, zodat het niet snel zal gebeuren dat je een poosje moet wachten
voordat je een nieuwe printopdracht kunt geven. Want de harde schijf zal niet snel vol raken met printopdrachten.
En als je de computer uitdoet terwijl de printer nog niet klaar is met de opdracht, en daarna doe je de
computer weer aan, dan begint de printer meteen weer te ratelen want de printopdrachten staan dan nog steeds op de
harde schijf.
Als je dus een verkeerde printopdracht hebt gegeven helpt het niet om de printer uit te doen en daarna weer aan. De printer zal
dan gewoon weer verder gaan, hoewel er misschien wel een stukje zal worden overgeslagen want de printer zelf heeft ook een
buffergeheugen en de gegevens die daarin zitten zijn wel weg als je de printer uitdoet.
Als er bij een multi-user systeem veel gebruikers tegelijk een printopdracht naar de printer sturen, dan worden de printopdrachten
in een wachtrij gezet. De engelse term die daarvoor vaak gebruikt wordt is
queue.
Als je dan klikt op Start → Configuratiescherm
→ Printers, dan verschijnt er een venstertje met één of meer printers.
Als je dan op de juiste printer hebt geklikt verschijnt er een venstertje, waarin je kunt zien welke printopdrachten in de
wachtrij staan. En als je rechts klikt op zo'n printopdracht dan krijg je een snelmenu, en dan kun je die printopdracht
eventueel verwijderen.
Spooling kwam al voor bij de computers uit de jaren 50. Maar toen maakte men gebruik van input-spooling, om het inlezen
van programma's van ponskaarten te versnellen.
Buffering komt ook nog steeds voor, namelijk bij het toetsenbord.
Als je een aantal toetsen achter elkaar indrukt worden die gegevens
naar de toetsenbordbuffer gestuurd. Die buffer is maar klein, die kan de gegevens van maar 20 toetsaanslagen bevatten.
Meestal is dat geen probleem, want de computer kan de toetsaanslagen veel sneller verwerken dan jij kunt typen.
Behalve als de computer druk met iets anders bezig is, bijvoorbeeld met opstarten.
Dan worden de toetsaanslagen niet direkt verwerkt, maar wel opgeslagen in de buffer. En als die buffer vol is hoor je een piepje.
API
Er kan bij het programmeren ook gebruik worden gemaakt van het besturingssysteem.
Je maakt dan gebruik van de Windows-API, dat is de afkorting van
Application Programming Interface.
Die bestaat uit een aantal opdrachten, die je in je computerprogramma's mag gebruiken, en daarbij wordt dan gebruik gemaakt
van zogenaamde Windows-bibliotheekbestanden.
Hierdoor kan bijvoorbeeld in een tekenprogramma een afdruk-API van Windows worden aangeroepen, zodat verder niet gedetailleerd
hoeft te worden geprogrammeerd hoe de printer dat moet verwerken.
Een API vormt de toegang tot een zogenaamde bibliotheek. Een bibliotheek bestaat uit een aantal programma-onderdelen, die
gebruikt kunnen worden door andere programma's, en de extensie van een bibliotheek is DLL.
Kijk maar eens in de map WINDOWS/SYSTEM32. Daar heb je een heel stel bestanden met de extensie DLL, en dat zijn dus bibliotheken.
5.1.7 Geheugenbeheer
De processor kan nooit instructies direct vanuit het achtergrondgeheugen uitvoeren.
Als het besturingssysteem de opdracht geeft om een bepaald computerprogramma ten uitvoer
te brengen, moet het eerst van het achtergrondgeheugen naar het werkgeheugen gekopieerd worden.
Gegevens worden in principe alleen in het werkgeheugen bewaard gedurende de periode dat ermee gewerkt wordt.
De rest bevindt zich in het achtergrondgeheugen.
Om het werkgeheugen zo goed mogelijk te gebruiken, maken de meeste besturingssystemen gebruik van een
methode om het werkgeheugen schijnbaar te vergroten door middel van een virtueel geheugen, dat op de harde schijf
staat; dat gedeelte wordt ook wel de swap-file genoemd.
Als je Systeeminformatie opvraagt (dat kan door te klikken op Start
→ Alle Programma's → Bureau-Accessoires
→ Systeemwerkset → Systeeminfo )
dan zie je ook hoe groot het virtueel geheugen is, en wat de naam is van de swapfile (ook wel
wisselbestand genoemd).
Meestal wordt een programma, dat moet worden gestart, niet in zijn geheel naar het werkgeheugen gekopieerd.
Dat gebeurt in stukken.
Het is namelijk zo dat vaak slechts een gedeelte van een programma gebruikt wordt, en dat gedeelte wordt dan meestal heel
vaak herhaald. Bijvoorbeeld, als je tekst invoert bij een tekstverwerkingsprogramma, wordt
steeds hetzelfde deel van het programma gebruikt: accepteren toetsaanslag, betreffende letter in het werkgeheugen
plaatsen en de letter op het scherm afbeelden. De rest van het programma heb je, op dat moment, niet nodig en hoeft
dus ook niet in het werkgeheugen te staan.
Als het werkgeheugen vol is en er moet een nieuw gedeelte aan toegevoegd worden, dan moet een ander gedeelte uit het
werkgeheugen gehaald worden en weer in het achtergrondgeheugen (het virtueel geheugen) geplaatst worden.
Naast het programma zelf gaat het daarbij ook om alle tijdelijke
gegevens die bij de uitvoering van dat programmadeel horen, zoals tussenresultaten, instellingen en dergelijke.
Vaste partitionering
Het besturingssysteem bezet een vast deel van het werkgeheugen, en de rest van het werkgeheugen is beschikbaar voor de
verschillende processen van de verschillende programma's, die gestart zijn.
Om te voorkomen dat iemand al te veel geheugen voor zichzelf opeist krijgt elke gebruiker en elk programma een eigen stuk toegewezen.
Een manier om het beschikbare geheugen te verdelen wordt partitioneren genoemd.
Daarbij wordt het geheugen opgedeeld in delen van gelijke grootte, bijvoorbeeld van 8 MB.
Elk programma moet het dan doen met zo'n blok van 8 MB.
Dat levert wel een aantal problemen op.
-
Als een programma dat bijvoorbeeld maar 2 MB geheugen nodig heeft verbruikt toch een heel blok van 8 MB, daarbij blijven er dus
6 MB
ongebruikt. Het geheugen wordt zo niet efficiënt gebruikt.
- Als een programma meer dan 8 MB geheugen nodig heeft dan moet eerst een gedeelte van het programma worden geladen.
Als dan een module nodig is, die nog niet in het werkgeheugen staat, dan moet die eerst uit het virtuele geheugen worden gehaald, en
een ander gedeelte moet uit het werkgeheugen terug naar het virtuele geheugen. Dat noem je swappen.
- Wordt er een nieuw programma gestart, maar alle blokken zijn bezet door programma's, dan wordt een
programma dat
niet actief is "geswapt". Dat wordt dus naar het virtuele geheugen verplaatst, en het nieuwe programma komt in het vrijgekomen blok.
Vaste partitionering wordt vanwege deze problemen eigenlijk niet meer gebruikt.
Dynamische partitionering
Een andere manier is dynamische partitionering.
Daarbij wordt het geheugen verdeeld in een variabel aantal blokken, van
variabele grootte.
De grootte wordt zo genomen dat in eerste instantie de gestartte programma's er precies inpassen.
Maar ook in dit geval krijg je problemen als een programma wordt afgesloten en een nieuw programma wordt gestart. Als het
mogelijk is wordt dat nieuwe programma in het vrijgekomen blok geplaatst, maar dat past vast niet precies.
Na verloop van tijd heb je dan precies dezelfde problemen als met vaste partitionering.
Ook dynamische partitionering wordt vanwege deze problemen eigenlijk niet meer gebruikt.
Paginering
Nog een nadere manier wordt paginering genoemd.
Daarbij wordt het werkgeheugen opgedeeld in stukken van gelijke grootte, die
relatief klein zijn.
De stukken van een programma, pagina's genoemd, worden dan toegewezen aan een aantal blokken.
Elke gebruiker begint bijvoorbeeld met twee blokken. Als iemand er meer nodig heeft, dan kan dat.
En als iemand er niet zo veel nodig heeft, dan komt er meer geheugen voor de andere gebruikers beschikbaar.
De geheugenblokken worden ook wel frames genoemd; die hoeven niet beslist aansluitend te zijn.
Zie de figuur hieronder.
In het begin is het geheugen leeg, op het besturingssysteem na. Er zijn 15 geheugenblokken beschikbaar.
Daarna wordt A gestart, voor proces A zijn vier blokken of frames nodig.
Daarna wordt B gestart, voor proces B zijn drie frames nodig.
Dan wordt C gestart, voor proces C zijn vier frames nodig.
Vervolgens wordt B afgesloten, er komen drie frames vrij.
Tenslotte wordt D gestart, daarvoor zijn vijf frames nodig.
Er worden drie frames gebruikt die zijn vrijgekomen door het afsluiten van B, en nog twee aan het eind.
Paginering is efficiënter dan partitionering, en wordt daarom tegenwoordig het meeste gebruikt.
Segmentering
Een variatie op paginering is segmentering.
Daarbij zijn de geheugenblokken niet allemaal even groot. Het lijkt op dynamische partitionering, maar bij segmentering
kunnen meerdere blokken gebruikt worden, en die hoeven niet op elkaar aan te sluiten.
5.1.8 Bestandsbeheer
De gegevens die op een harde schijf staan (of op een usb-stick, of op een ander extern geheugen) zijn anders gestructureerd dan
die in het werkgeheugen.
In het werkgeheugen heeft elke byte een uniek adres en is daardoor direct te vinden en afzonderlijk uit te lezen.
Op de harde schijf worden gegevens in grotere delen bij elkaar gehouden, dat zijn de
bestanden. Op een speciale plaats
op de schijf houdt het besturingssysteem de inhoudsopgave van de bestanden bij. Het bestandssysteem verdeelt de harde schijf in
clusters, en in de inhoudsopgave wordt van alle bestanden bijgehoudenen in welk cluster ze beginnen.
Deze inhoudsopgave wordt bestandssysteem of FAT (dat is de afkorting van File Allocation Table) genoemd.
Als het besturingsprogramma een bestand moet openen leest het eerst in de FAT wat het
clusternummer is van de plaats waar
het bestand begint.
De leeskop van de harde schijf kan dan in één keer naar de juiste positie springen om
het lezen te beginnen.
FAT16
Het FAT (File Allocation Table) bestandssysteem is ontwikkeld in 1977, toen alleen nog maar diskettes ondersteund werden.
Daarna is het bestandssysteem steeds verder verbeterd.
In 1983 werd voor het eerst een bestandssysteem geleverd dat ook harde schijven aankon.
De naam van dit systeem was FAT16.
Het clusternummer, waarmee aangegeven wordt waar het bestand begint,
werd m.b.v. 16 bits vastgelegd, daar komt dan ook de 16 in FAT16 vandaan.
Hieruit volgt dat er maximaal 2^16-1 = 65535 clusters op de schijf aanwezig konden zijn, want 65535 is het grootste getal dat
je met 16 bits kunt maken.
Verder mag een cluster maximaal 32 KB groot zijn, dus de grootste schijf
die ondersteund werd was 65535 * 32 KB = 2 GB.
Een kleinere harde schijf kon ook een kleinere clustergrootte hebben. Als je bijvoorbeeld een harde schijf van 256 MB had, dan
was de clustergrootte minimaal 256000 : 65000 = (afgerond) 4 KB. Voor de clustergrootte wordt altijd een macht van 2 genomen, dus
2, 4, 8, 16 of 32
Grote clusters hebben tot gevolg dat er veel ruimte verloren gaat. Is een bestand bijvoorbeeld maar 1 byte groot en de
clustergrootte 16 KB, dan gaat er bijna 16 KB verloren (zie onderstaande figuur).
Dit wordt in computertaal slack genoemd.
Zijn de clusters kleiner dan gaat er minder ruimte verloren. Heb je een bestand van 3 KB en heb je een clustergrootte
van 32 KB dan gaat er 29 KB verloren, maar bij een clustergrootte van 4 KB heb je in dat geval maar 1 KB slack.
Fragmentatie
De figuur hieronder zie je (in het bovenste balkje) dar er eerst drie bestanden op de harde schijf zijn bewaard.
In het tweede balkje zie je dat er dan één bestand is verwijderd, zodat er een gat is ontstaan tussen het eerste en
het tweede bestand.
In het derde balkje zie je dat er weer een bestand is opgeslagen, maar dat bestand is groter dan het verwijderde.
Het nieuwe bestand zit voor ongeveer de helft in het gat waar eerst het blauwe bestand zat, en de andere helft is achter het
groene bestand geplaatst.
Dan is er fragmentatie ontstaan, het bestand is in stukken geknipt en de verschillende stukken
staan op verschillende plaatsen op de harde schijf. Om het spoor niet kwijt te raken zet het besturingssysteem aan het eind
van het eerste deel een speciale notitie die aangeeft waar het volgende deel begint.
Een gevolg van deze methode is dat als de schijf ouder wordt, de schijf bestanden bevat die uit steeds kleinere fragmenten bestaan.
De fragmentatie zorgt ervoor dat de leeskop van de harde schijf steeds weer moet zoeken waar het volgende gedeelte van het bestand,
en daardoor treedt er vertraging op.
Daarom is het verstandig de harde schijf regelmatig te defragmenteren.
Dat kan door te klikken op Start → Alle Programma's → Bureau-Accessoires → Systeemwerkset → Schijfdefragmentatie
FAT32 en NTFS
Vanaf Windows-95 kan er gewerkt worden met FAT32.
FAT32 heeft 32 bits beschikbaar om het clusternummer in op te slaan, daardoor is
het mogelijk veel grotere harde schijven te gebruiken dan bij FAT16.
De harde schijven kunnen nu tot 2 TB (= 2048 GB) groot zijn.
Tegenwoordig wordt vaak van een nog ander bestandssysteem gebruik gemaakt: NTFS, dat is de afkorting van
New Technology File System.
Het principe is hetzelfde als bij FAT, maar er zijn een paar verbeteringen vergeleken met FAT32.
-
NTFS beschikt over betere beveiligingsmogelijkheden dan FAT32.
Er kan voor elk bestand worden aangegeven welke gebruiker een bestand mag lezen, schrijven en/of uitvoeren.
- NTFS heeft de mogelijkheid voor bestandscompressie (FAT32 beschikt alleen over compressiemogelijkheden
op schijf- of partitieniveau). Door compressie nemen bestanden minder ruimte in beslag op je schijf.
- NTFS is minder foutgevoelig dan FAT32. Met NTFS is het daarom ook niet nodig dat scandisk wordt uitgevoerd als Windows niet goed
is afgesloten.
- Verder heeft NTFS de mogelijkheid tot bestandsencryptie (Encrypted File System of EFS).
Door deze versleuteling is het voor indringers moeilijker om bestanden te lezen of te kopiëren.
Een nadeel is dat NTFS-bestanden niet
toegankelijk voor oudere besturingssystemen. Als je bijvoorbeeld een MSDOS-opstartschijf hebt dan
kun je na het opstarten met die schijf de NTFS-bestanden niet lezen.
Maar er zijn wel programma's die dat toch wel weer mogelijk maken.
Meer bestandssystemen
Er zijn nog meer bestandssystemen. De vorige (FAT32 en NTFS) worden door Windows gebruikt.
Onder Linux worden EXT3 en REISER veel gebruikt.
Partitioneren
Partitioneren is het opdelen van een harde schijf in gedeelten, die je als schijfstation kunt gebruiken.
Een gedeelte van zo'n schijf heet een partitie.
Een harde schijf heeft minimaal één partitie bij gebruik. Als er maar één partitie is dan zegt men dat de schijf niet
gepartitioneerd is.
- Je hebt drie soorten partities:
- Primaire partitie.
Dit is het standaard type partitie, je kunt er maximaal vier van maken per schijf.
- Extended of uitgebreide partitie.
Je kunt één van de primaire partities weer onderdelen in kleinere partities, maximaal 12. Je noemt die kleinere
partities dan logische partities, en de grote noem je een extended of uitgebreide partitie.
- Logische partitie.
Als je een extended partitie hebt onderverdeeld in kleinere partities dan noemt je die kleinere partities de logische partities.
- Je kunt dus maximaal 15 partities op één schijf hebben: drie primaire en één extended waarin 12 logische
, dat is in totaal 3+12=15
-
Windows kan alleen geïnstalleerd worden op een primaire partitie.
Linux kan zowel op een logische als een primaire partitie worden geïnstalleerd.
Je kunt gemakkelijk nieuwe partities aanmaken m.b.v. het programma
Gparted.
Dat programma draait onder Linux. Daarom moet je een zogenaamd ISO-bestand van de site van Gparted downloaden, en op een CD branden.
Start daarna je computer op m.b.v. die CD, dan werk je met Linux zonder dat je er veel van merkt.
Met Gparted kun je partities bijmaken, maar ook partities verwijderen, partities verkleinen of vergroten.
Formatteren
Voordat een diskette of harde schijf voor de eerste keer gebruikt kan worden moet het besturingssysteem
er een standaardindeling op aanbrengen. Het aanbrengen van een dergelijke structuur heet het
formatteren van de schijf.
Elk type besturingssysteem gebruikt een eigen indeling.
Voordat je partities kunt gebruiken moet je ze ook formatteren, dit kan trouwens ook met Gparted.
Je kunt dan ook aangeven of het gormatteerd moet worden als fat16, fat32, ntfs, ext3 of reiser.
Je kunt ook m.b.v. Windows formatteren, maar dan kun je alleen formatteren als ntfs of fat32.
Bootmanager
De laatste stap wat de BIOS doet is het volgende:
In het MBR (Master Boot Record) wordt gelezen waar de bootsector van het besturingssysteem staat, en die
wordt dan ingelezen zodat het besturingssysteem wordt gestart.
Het MBR van een schijf bevat in de meeste gevallen de partitietabel. De computer gebruikt die partitietabel om het bootrecord
op de partitie, waarop het te laden besturingssysteem staat, in te lezen en uit te voeren.
Maar als er verschillende besturingssystemen op de computer staan is dat niet handig. Dan wordt er meestal gebruik gemaakt
van een zogenaamde Boot Manager.
Het Master Boot Record kan namelijk worden veranderd; het kan bijvoorbeeld zo gewijzigd worden dat niet
automatisch een bepaald besturingssysteem wordt
opgestart, maar dat er een keuze gegeven wordt.
Dat wordt dan een Boot Manager genoemd.
Een bekend voorbeeld daarvan is GRUB, dat is de afkorting van
Grand Unified Bootloader.
Bij deze bootloader kun je zelf aangeven uit welke besturingssystemen er gekozen kan worden, en van welke partitie die
besturingssystemen moeten worden opgestart.
Als je eens een ander besturingssysteem wilt uitproberen dan kan dat ook d.m.v. een
emulatie.
Een emulatie wil zeggen dat de omgeving en het gedrag van een besturingssysteem geïmiteerd wordt door
een programma
dat draait op een PC waarop al een ander besturingssysteem draait.
5.1.9 Beveiliging
Een besturingssysteem moet ook zorgen voor beveiliging van bestanden.
Als verschillende personen gebruik maken van hetzelfde schrijfgeheugen is het handig als het
besturingssysteem er voor
zorgt dat iedereen alleen zijn eigen bestanden kan lezen en/of wijzigen.
Dat is het geval als je Linux of Unix gebruikt.
Permissies
Als je onder Linux of Unix de inhoud van een map in beeld hebt, dan staat bij elk bestand de zogenaamde permissies genoemd.
De permissies bestaan uit een rijtje van 10 letters en/of streepjes.
-
De eerste letter is een d als het bestand een map is, en anders is het eerste teken een streepje
- De volgende drie letters zijn rwx, dat is de afkorting van read write execute.
Die letters gelden voor de eigenaar. Als er rwx staat mag hij het bestand lezen, wijzigen en uitvoeren. Als het bijvoorbeeld een
tekstbestand is dan kan het niet worden uitgevoerd (dat kan alleen met programma's enz) en dan staat er rw-
- De tweede groep van drie letters gelden voor de groep van gebruikers, waar de eigenaar bij hoort.
Als daar ook rwx staat mogen de personen van die groep het bestand ook lezen, wijzigen en uitvoeren.
Als er bijvoorbeeld r-- staat dan mogen ze het bestand wel lezen maar niet wijzigen en niet uitvoeren.
- De laatste groep van drie letters geldt voor alle andere mensen.
Als daar ook rwx staat mogen alle mensen het bestand lezen, wijzigen en uitvoeren.
Maar als het laatste groepje --- is dan mogen ze het bestand niet lezen, niet wijzigen en niet uitvoeren.
- In onderstaand venster zie je dat de permissies voor het eerste bestand ImageButton.class -rw-rw-r-- zijn.
Dat betekent dat het een gewoon bestand is (geen map), dat de eigenaar het mag lezen en wijzigen, de mensen uit de groep van de
eigenaar mogen het ook lezen en wijzigen, en de rest mag het alleen lezen.
Gebruikerstypen en rechten
In Windows XP en Vista bestaat de mogelijkheid om er voor te zorgen dat iedere gebruiker moet inloggen met
een gebruikersnaam en een wachtwoord. Je moet je dan eerst identificeren, je moet je aanmelden, zo wordt dat genoemd.
Je kunt gebruikersaccounts aanmaken; een account bestaat uit een gebruikersnaam en een wachtwoord.
Er zijn drie soorten accounts in Windows:-
Computerbeheerder (engels: administrator)
De beheerder van een computer heeft alle rechten over het systeem en kan andere gebruikersaccounts aanmaken.
De beheerder kan ook bepalen welke rechten de andere gebruikers krijgen.
Elke computer, die draait onder Windows XP of Vista, heeft minstens één beheerdersaccount.
Als er bij het opstarten niet om een gebruikersnaam en wachtwoord wordt gevraagd fungeert waarschijnlijk iedereen, die met de
computer werkt, als beheerder. Dan mag iedereen alles wat hij of zij wil met de computer doen.
Dit komt omdat XP bij aanschaf met dit type account is ingesteld, en als dat niet wordt aangepast blijft het zo.
- Gewone gebruiker.
De gewone gebruiker heeft niet alle rechten; hij of zij kan bijvoorbeeld geen andere gebruikersaccounts aanmaken en
hij of zij kan waarschijnlijk geen programma's en/of hardware installeren, en geen wijzigingen aanbrengen in het register.
- Gast-gebruiker.
De gast heeft de minste rechten en is bedoeld om een tijdelijke bezoeker toegang tot de computer te verlenen.
Er kan een nieuw account worden aangemaakt door te klikken op Start → Configuratiescherm → Gebruikersaccounts.
Je krijgt dan onderstaand venster in beeld.
Als je een nieuw account hebt aangemaakt is het niet direkt met een wachtwoord beveiligd. Als je dat wilt dan moet je
op het nieuwe account klikken, en kiezen voor Wachtwoord instellen.
Firewall
Een firewall is software die aanvallen van hackers en virussen buiten de deur houdt.
Een firewall werpt als het ware een ondoordringbare muur rond de computer op.
De firewall houdt op de achtergrond de veiligheid van de computer in de gaten en blokkeert aanvallen van buitenaf.
Een firewall kan ook een heel netwerk beveiligen. Zo'n firewall is er niet alleen als software, maar ook als een apparaat dat
tussen het netwerk en het internet zit.
Een firewall voor een PC heet ook wel personal firewall en is een computerprogramma.
Windows XP en Vista hebben een ingebouwde personal firewall.
Die kun je instellen door te klikken op Start → Configuratiescherm → Windows Firewall.
Je krijgt dan onderstaand venster in beeld.
Voor oudere besturingssystemen kun je een firewall downloaden, ZoneAlarm is een bekende.
De gebruiker kan zelf regels instellen en bepaalde communicatie tussen computer en het internet toestaan
en andere afwijzen.
Daarvoor houdt een firewall de poorten van een computer open of juist gesloten.
Een computer bevat een groot aantal poorten, alle met een nummer. Dat zijn onzichtbare onderdelen van het systeem;
iedere toepassing heeft zijn eigen poortnummer. Zo gaan bijvoorbeeld alle binnenkomende internetpagina's door poortnummer 80,
als je email verstuurt gaat het door poortnummer 25 en als het binnenkomt gaat het meestal via poortnummer 110.
De firewall kan bepaalde poorten sluiten en open stellen, voor inkomend of uitgaand verkeer, of beide.
Virussen, spyware, trojaans paard
Denk er om: een firewall is geen virusscanner. Een virusscanner moet je meestal zelf installeren.
Een virus is een programmaonderdeel, dat zich aan bepaalde programma's kan hechten en er na verloop van tijd voor zorgt dat
de computer niet goed meer werkt.
Je kunt ook een gratis virusscanner downloaden, AVG en Avast zijn bekende gratis virusscanners.
Dan heb je ook nog spyware.
Bij bepaalde soorten gratis software, die je kunt downloaden, kan het voorkomen dat er een ongewenst programma meegeïnstalleerd
wordt. Deze programma's verzamelen meestal informatie over je surfgedrag en/of tonen advertenties in je browserscherm. Of in
het ergste geval verzamelt het programma bankgegevens, wachtwoorden en creditcardnummers van de computergebruiker.
Dat soort ongewenste programma's wordt spyware genoemd. Je hebt speciale anti-spyware programma's. Soms zit
het in een virusscanner ingebakken.
Een Trojaans paard.
Een trojaans paard is een speciaal soort spyware. Het is een klein programma dat zich, vaak vermomd als een nuttig programma,
op je harde schijf nestelt. En dat programma maakt je pc vervolgens stiekem toegankelijk voor andere gebruikers.
Een kwaadwillende kan dan bijvoobeeld vanuit jouw computer spam versturen.
Je hebt ook alles-in-één pakketten, dus virusscanner, firewall, anti-spam en anti-spyware programma bij elkaar,
maar daar moet je meestal wel voor betalen.
5.1.10 Het register
In Windows kun je bij een heleboel dingen je eigen voorkeuren aangeven.
Je kunt bijvoorbeeld de resolutie van het beeldscherm aanpassen, en de snelheid van de muis.
Je kunt ook bij programma's bepaalde dingen instellen.
Je kunt in Kladblok bijvoorbeeld aangeven met welk lettertype de tekst getoond wordt.
En in Word kun je bijvoorbeeld aangeven in welke map de documenten standaard worden bewaard.
Windows houdt al die instellingen bij in een aantal bestanden, en die groep bestanden wordt het
Register genoemd (engelse term daarvoor: registry).
Die instellingen kun je bekijken en eventueel veranderen. Maar daar moet je heel voorzichtig me zijn, want als er iets verkeerds
gedaan wordt in het register dan werken sommige programma's misschien niet meer goed, en het kan zelfs gebeuren dat de computer
helemaal niet meer wil opstarten.
De Registry editor
De Registry editor is het programma waarmee je in het register van Windows kunt bladeren, en
bepaalde onderdelen kunt aanpassen.
Dat programma start je op door te klikken op
Start → Uitvoeren, en
dan in te tikken: regedit
Het register is opgebouwd uit onderdelen, die we sleutels noemen.
Die zijn gegroepeerd in vijf hoofdsleutels.
Elke subsleutel kan een bepaald gegeven en een
bepaalde waarde bevatten.
Hoofdsleutels
-
De hoofdsleutels HKEY_LOCAL_MACHINE en HKEY_USERS worden de primaire sleutels genoemd.
De andere hoofdsleutels zijn subsleutels van de twee primaire sleutels :
- HKEY_LOCAL_MACHINE bevat de configuratiegegevens van het computersysteem, zowel
hardware- als software-instellingen.
- HKEY_USERS bevat alle informatie van de gebruikers op het computersysteem.
- HKEY_CURRENT_USER is een deelsleutel van HKEY_USERS en bevat alle informatie van
de gebruiker die op dat moment is aangemeld. Het geheel van alle waarden en gegevens in
deze deelsleutel wordt het actieve gebruikersprofiel genoemd.
- HKEY_CLASSES_ROOT is een deelsleutel van HKEY_LOCAL_MACHINE, waarin gegevens
over de bestandsextensies staan (bijvoorbeeld welke toepassing automatisch moet worden
gestart wanneer een bestand met een bepaalde extensie wordt geopend).
- HKEY_CURRENT_CONFIG bevat de informatie over het hardwareprofiel dat op dat ogenblik
wordt gebruikt.
Veranderingen aanbrengen in het register
Werken in het Windows-register is niet zonder risico, maar het gevaar wordt ook wel overdreven.
Toch is het verstandig, als je bepaalde dingen wilt veranderen, eerst een
reservekopie van het register te maken.
Dat doe je door in het menu op Bestand → Exporteren te klikken.
Het register-venster is verdeeld in twee gedeelten. Het linker gedeelte noemt men het
sleutelvenster, het rechter gedeelte heet het
waardenvenster.
In het sleutelvenster zie je de hoofdsleutels, die allemaal beginnen met HKEY (handle key).
Via het register kun je instellingen wijzigen, die je normaal in Windows niet kunt wijzigen.
Enkele voorbeelden :
-
Stel dat je de naam van de Prullenbak wilt veranderen in Afval, dan lukt dat je niet vanaf het bureaublad of in de verkenner.
Maar het kan wel via het register.
Hiervoor moet je eerst de sleutel zoeken waarin de naam Prullenbak bewaard wordt.
Klik in het menu op Bewerken → Zoeken, en geef aan dat je wilt zoeken naar Prullenbak.
Als de sleutel gevonden is dubbelklik je op de naam van de sleutel (in dit geval Standaard).
In een nieuw venstertje kun je de waarde van de sleutel aanpassen, typ het woordje Afval en klik op OK.
De naam van de Prullenbak is dan gewijzigd, maar die wijziging is misschien pas zichtbaar nadat je de computer opnieuw hebt
opgestart.
-
Sommige programma's worden automatisch opgestart als Windows opstart.
Soms wil je dit niet, omdat het een programma is dat je niet echt nodig hebt, en het je systeem alleen maar vertraagt.
Als je wilt voorkomen dat het automatisch opstart, dan kan dit via het register.
Zoek naar de volgende sleutel :
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run]
Je ziet nu een lijstje met programma's die automatisch opstarten. Je kunt nu een ongewenst programma verwijderen door
het aan te klikken en dan op de deletetoets te drukken.
-
Je kunt ook een nieuwe waarde toevoegen om een programma automatisch te laten opstarten.
Daarvoor kies je in het menu
Bewerken → Nieuw → Tekenreekswaarde.
Dan kun je een naam en een waarde voor een nieuw programma ingeven. Als waarde
moet je het volledige pad naar het programma opgeven (bijvoorbeeld c:\windows\calc.exe)
-
Door te klikken op Start → Uitvoeren, en dan de naam van een programma in te voeren,
kun je handmatig
een programma starten. Als je op het pijltje klikt in het invoervenster dan
zie je in een pulldown-menu wat de laatste opdrachten zijn die zijn uitgevoerd.
Wil je om de een of andere reden niet dat andere computergebruikers dat kunnen zien, dan kun je die
opdrachten uit de opdrachtregel weghalen via het register.
Zoek daarvoor de volgende sleutel op:
[HKEY_CURRENT_USER/Software/Microsoft/Windows/ CurrentVersion/Explorer/RunMRU]
Klik met de rechtermuisknop op een waarde, die in het rechter venster is weergegeven.
En klik dan op Verwijderen.
Doe dat ook met de andere waarden. En dan worden die waarden niet meer getoond.
-
Je weet waarschijnlijk dat Internet Explorer alle adressen, die je hebt ingevoerd in de adresbalk, onthoudt.
Als je wilt dat de browser-geschiedenis wordt gewist dan kan dat door in het menu van Internet Explorer te klikken op
Extra → InternetOpties, en dan op Geschiedenis wissen.
Op die manier kun je alleen de hele geschiedenis wissen.
Als je maar één adres wilt verwijderen, dan kan dat alleen via het register.
Zoek daarvoor de volgende sleutel op:
[HKEY_CURRENT_USER/Software/Microsoft/Windows/InternetExplorer/TypedURLs]
Klik met de rechtermuisknop op een waarde, die in het rechter venster is weergegeven.
En klik dan op Verwijderen. En dan zal die URL niet meer getoond worden.
|