6 Besturingssystemen. Applicatie Applicatie Applicatie. Operating System. Hardware 1 WAT IS EEN OPERATING SYSTEM?



Vergelijkbare documenten
HET BESTURINGSSYSTEEM

Besturingssystemen Opdracht 1

Het besturingssysteem of operating system, vaak afgekort tot OS is verantwoordelijk voor de communicatie van de software met de hardware.

Waarmaken van Leibniz s droom

Hoofdstuk 2. - is verantwoordelijk voor de communicatie van de software met de hardware.

6,7. Werkstuk door een scholier 2286 woorden 24 januari keer beoordeeld. Informatica. Algemeen

1.2 Belangrijke besturingssystemen

SBO Nilda Pinto BASISKENNIS BESTURINGSSYTEMEN (MBI 1) PERIODE MATERIAAL BOEK SOFTWARE VOOR ICT SUPPORT 2 EN 3 (HANS VAN RHEENEN)

Albert-Jan de Croes & Stefan Willemink V4C Docent: Mevrouw van Uden

Jen Kegels, Eveline De Wilde, Inge Platteaux, Tamara Van Marcke. Hardware. De computer in een oogopslag. 1 / 11 Cursusontwikkeling

Software hoofdstuk Wat is de functie van een besturingssysteem? 2. Welke hoofdtaken heeft het besturingssysteem?

Een desktopcomputer kan uit de volgende onderdelen zijn opgebouwd:

Windows Basis - Herman Van den Borre 1

Windows Training voor 50-plussers. PC50plus trainingen Eikbosserweg AK Hilversum tel:

Friesland College Leeuwarden

Verder zijn er een aantal producten die je hierop kan aansluiten, hier zijn een aantal producten:

7,3. Samenvatting door een scholier 1961 woorden 16 januari keer beoordeeld. Informatica Informatica actief

Planbord installatie instructies

Verslag: Computer. Naam: Tyrone Ste Luce. Klas: M4B

SETUP VAN DE BIOS EN BEVEILIGINGSFUNCTIES

Nieuwe UEFI Bios en GPT

Nieuw toegevoegd: Uitleg driver (her) installeren nadat Windows 8 en Windows 8.1 automatisch de driver heeft geüpdatet.

Hoofdstuk 2. Schijfformaten en bestandsformaten

Uw gebruiksaanwijzing. SILVERCREST MD-20

Handleiding VirtualBox

PC-Club Okra Regio Gent

Kenmerken Nomadesk Software

Windows Xp professional op de werkstations en Windows 2000 op de Server

Linux Mint 10 installeren op een pc of laptop.

SurfRight. Veelgestelde vragen. HitmanPro.Kickstart Veelgestelde vragen Page 1

6. Gebruikersaccounts

Schakel in Windows 10 automatische driver update uit : Uitleg driver (her) installeren nadat Windows 10 automatisch de driver heeft geüpdatet.

Boot Camp Installatie- en configuratiegids

Een desktopcomputer kan uit de volgende onderdelen zijn opgebouwd:

Tips voor Linux Mint 13 XFCE: De Windows XP vervanger.

In dit hoofdstuk worden verschillende besturingssystemen beschreven.

informatica. hardware. overzicht. moederbord CPU RAM GPU architectuur (vwo)

Eenvoudig een backup van je bestanden maken. G.v.Eijndhoven ( )

Beginnersles 2 Computerles Windows 7

Tim Mallezie Architectuur van besturingssystemen: Vraag A2.

Cloud2 Online Backup - CrashplanPRO

S T O R A G E S U P P O R T H A R D D I S K C A S I N G 2. 5 S T O R A G E S ATA T O U S B 2. 0 H A N D L E I D I N G S I

Belangrijkste ideeën/concepten uit OS, incl. proces

Windows Verkenner. 1. Enkele basiselementen. 1. Bestanden

1. Introductie 2. Omschrijving 2 Omschrijving van de onderdelen (voorzijde) Algemeen 3

WINDOWS 8. Windows Training voor 50-plussers

computerarchitectuur antwoorden

Handleiding Sportlink Club

Erik Poll Martijn Warnier.

DATACARD Firmware Update Instructie

Handleiding ENO digitaal bord

H A N D L E I D I N G D A Z A T O O L S - O N T V A N G E R

Computerarchitectuur en netwerken Toets 1 4 okt

Friesland College Leeuwarden

Een upgrade uitvoeren van Windows Vista naar Windows 7 (aangepaste installatie)

Gebruikershandleiding

Handleiding X-keys XK-24 installatie en gebruik

Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht

Midi PDF Bladmuziek lezer

Uw gebruiksaanwijzing. NAVMAN F-SERIES DESKTOP F20

Wat te doen na de aanschaf van:

The Nike+ SportWatch GPS Powered by TomTom

Samsung Drive Manager - veelgestelde vragen

INSTALLATIE HANDLEIDING

Voor op afstand os installatie moeten de volgende onderdelen geïnstalleerd zijn op de Windows 2000 server.

Ashampoo Rescue Disc

(2) Handleiding Computer Configuratie voor USB ADSL modem

Installatiehandleiding

+XLVZHUN:LQGRZV$SDFKHLQVWDOODWLH

Er zijn verschillende OS bv: Microsoft Windows Apple Macintosh Linux-versies/distributies zoals Ubuntu en Knoppix

cbox UW BESTANDEN GAAN MOBIEL! VOOR LAPTOPS EN DESKTOPS MET WINDOWS PRO GEBRUIKERSHANDLEIDING

Handleiding Zermelo. roosterwijzigingen gaat importeren. Allereerst wordt u gevraagd of u de wijzigingen wilt importeren. U kiest hier voor Ja.

Pervasive Server V9 Installatiegids

Geheugenbeheer. ICT Infrastructuren 2 december 2013

Vergeten wachtwoord in Windows 10

Computer Setup. Artikelnummer van document: Mei 2005

Handleiding. Opslag Online. voor Windows. Versie februari 2014

Notebook of Desktop PC met USB2.0 of USB1.1 poorten Microsoft Windows 98SE, 2000 of XP Mac OS9.x of hoger

4+2+3 tips om een Mac sneller te maken. The Ten Commandments for an Fast Mac

ROM, het Read Only Memory, dat bestaat uit: - BIOS - CMOS RAM, het Random Acces Memory, ook wel het werkgeheugen genoemd.

13 tips tegen een trage PC. Een trage PC, wat zijn de mogelijkheden om dit te voorkomen of te verhelpen: 1.Taakbeheer.

Terminal Services. Document: Terminal Services T.b.v. relatie: Isaeus Auteur: Martin Waltmans Versie: 2.3 Datum: KB nummer:

De computer als processor

Back-up Online van KPN Handleiding Mac OS X 10.6 en hoger. Mac OS X Client built

Installatie handleiding Reinder.NET.Optac

Installatiehandleiding Windows 98

Werken met de (Windows7) Verkenner. Maarn, 26 oktober 2010 Harry Moerkerken

Meerdere gebruikersaccounts aanmaken

Installatie- en gebruikshandleiding Risicoverevening. 11 april 2007 ZorgTTP

Xiris handleiding Onderhoudsmodule & database onderhoud

uziconnect Installatiehandleiding

Nieuw toegevoegd: Uitleg driver (her) installeren nadat Windows Vista en Windows 7 automatisch de driver heeft geüpdatet.

-Een stukje geschiedenis van de PC (personal computer)

Doe het zelf installatiehandleiding

Invoeren/importeren van digitale foto s in je computer

uziconnect Installatiehandleiding

Handleiding Telewerken met Windows. Inleiding. Systeemvereisten. Inhoudsopgave

Hoe partitioneer ik een hardeschijf?

Transcriptie:

Hoofdstuk 6 Besturingssystemen 6.1 6 Besturingssystemen 1 WAT IS EEN OPERATING SYSTEM? Een computer zonder besturingssysteem is slechts een systeemkast gevuld met onderdelen verbonden door kabels. Je kunt daar niets mee beginnen. De keuze voor een juist OS (Operating System) is dan ook erg belangrijk, vaak nog belangrijker dan een keuze maken uit het grote aanbod van toepassingsprogramma s. Als je niet tevreden bent over je zojuist aangeschafte tekstverwerker, kun je zonder problemen overstappen op een andere. Dat is met een besturingsysteem veel lastiger. 1.1 DEFINITIE Volgens Encarta 21 is het besturingsysteem de software die verantwoordelijk is voor het toewijzen en gebruik van hardware zoals CPU, geheugen, harde schijf en randapparatuur. Het is het fundament voor applicaties. Applicatie Applicatie Applicatie Operating System Hardware Het eerste deel van de definitie betekent in de dagelijkse praktijk dat het OS onder meer input verwerkt van toetsenbord en muis en output verstuurt naar monitor en printer. Het houdt bij welke bestanden en mappen op de harde schijf staan en zorgt voor het juist functioneren van de randapparatuur. Dit is een belangrijke taak, omdat programma s vragen om verwerkingskracht van de CPU, input van toetsenbord en muis vraagt om bandbreedte en bestanden moeten worden opgeslagen op de harde schijf of diskette. Het besturingsysteem moet al dit verkeer als een soort luchtverkeersleider in goede banen leiden en ervoor zorgen dat de capaciteit van het computersysteem optimaal wordt gebruikt. Het tweede deel van de definitie betekent dat het OS moet zorgen voor een stabiel platform waarop de applicaties gebruik kunnen maken van de onderliggende hardware, zonder dat een programmeur elk aspect van die hardware in een applicatie hoeft te verwerken. Zonder besturingssysteem zou een programmeur steeds moeten definiëren hoe een applicatie tekst of afbeeldingen op het scherm zet, data naar de printer stuurt of hoe bestanden geopend of opgeslagen worden. Voor een programmeur is het uiterst belangrijk om gebruik te kunnen maken van een consistente API (Application Program Interface). In dat geval is hij ervan verzekerd dat een applicatie ook werkt als de hardware wordt aangepast of uitgebreid en zelfs op een ander type computer. Een besturingssysteem is echter niet alleen een uitkomst voor programmeurs, maar ook voor jou om zonder

6.2 ENIGMA Informatieboek problemen een grote verscheidenheid van applicaties te kunnen gebruiken en bijvoorbeeld gemakkelijk bestanden te kunnen kopiëren of wissen. opdracht 1-6 1.2 SOORTEN OS Als het OS geschikt is voor multitasking, zorgt het er voor dat verschillende programma s tegelijk kunnen worden gebruikt zonder elkaar te storen. Je kunt in dat geval een groot bestand downloaden en ondertussen bijvoorbeeld gaan tekstverwerken. Besturingssystemen voor mainframes en minicomputers, zijn in staat honderden gebruikers gelijktijdig te laten werken: multi-user. In dat geval is het uiterst belangrijk dat onbevoegde gebruikers geen toegang krijgen en moet het OS ook de toegangsrechten en de beveiliging regelen. Dat geldt ook voor netwerkbesturingssystemen die voor servers in bedrijven en scholen gebruikt worden zoals Windows 23 Server, Novell Netware en Mac OS X Server. Met een van deze netwerkbesturingssystemen kan een server bijvoorbeeld gebruikt worden om gemeenschappelijk bestanden en printers te delen. Je kunt servers ook inzetten als mailserver, webserver of als proxyserver om één internetverbinding beschikbaar te stellen voor meerdere gebruikers van het netwerk. Besturingssystemen die multiprocessing ondersteunen, zoals UNIX, Mac OS X of Windows XP, stellen de gebruiker in staat meerdere CPU s te gebruiken voor hetzelfde programma. Bij een ingewikkelde bewerking van bijvoorbeeld een videofragment of een 3D afbeelding wordt de taak verdeeld over twee of meer CPU s. Dit wordt ook parallel processing genoemd. In de praktijk blijkt het erg moeilijk een programma zo te ontwerpen dat de CPU s verschillende delen van het programma kunnen uitvoeren zonder elkaar te hinderen. Het gelijktijdig actief zijn van verschillende onderdelen van het programma wordt multithreading genoemd. Je kunt bijvoorbeeld met Windows Verkenner een groot bestand uit een map naar een andere kopiëren. Zolang die kopieeractie aan de gang is, kun je in een andere map een bestandsnaam wijzigen of een paar bestanden wissen. opdracht 7-11 2 BASISFUNCTIES VAN EEN OS De meest gebruikte besturingssystemen voor desktop en notebook computers zijn de verschillende versies van Windows en Mac OS. Deze verschillen iets van elkaar op het gebied van gebruikers interface, maar bieden dezelfde basisfuncties: Processorbesturing Geheugenbeheer Besturing van randapparatuur Applicatie-interface Gebruikersinterface 2.1 PROCESSORBESTURING Zolang er één applicatie wordt gebruikt, hoeft het OS alleen maar de applicatie te laten beginnen en eindigen. Dat proces wordt slechts onderbroken door Interrupt Requests (IRQ s), bijvoorbeeld om input van de gebruiker te verwerken of een dringend hardwareprobleem af te handelen. Je kunt een IRQ beschouwen als een signaal dat apparaat verstuurt om de aandacht te trekken van de CPU. In feite is een interrupt (letterlijk onderbreking) een verzoek om aandacht van een hardwarecomponent aan een andere. Copyright 27-211 ENIGMA-online

Hoofdstuk 6 Besturingssystemen 6.3 In het geval van een processor, reageert deze door een interrupt service routine (ISR) uit te voeren. Deze ISR wordt best zo kort mogelijk gehouden, zodat de processor ook aan het hoofdprogramma toekomt en klaar is om nieuwe interrupts af te handelen. Veel digitale systemen (zoals een personal computer) zijn interrupt-gebaseerd: Wanneer bijvoorbeeld een toets wordt ingedrukt op een toetsenbord, dan genereert dit een interrupt die er uiteindelijk voor gaat zorgen dat een bepaalde letter op het scherm wordt getoond of een bepaalde opdracht wordt uitgevoerd. Een netwerkinterface genereert bij het binnenkomen van nieuwe data interrupts aan de processor om aan te duiden dat nieuwe data beschikbaar zijn. Vooral bij multitasking is de rol die het OS speelt cruciaal. Elke applicatie die wordt gestart, moet genoeg processortijd en capaciteit krijgen om probleemloos te kunnen werken. Om die werklast eerlijk over de verschillende applicaties te verdelen, wordt een applicatie vaak verdeeld in Interrupt service routine Een interrupt service routine (ISR), ook wel interrupt handler genoemd, is een event-handler die wordt uitgevoerd doordat er een interrupt is gestuurd naar de CPU. De verwerking gaat als volgt: Een apparaat stuurt een signaal via de bus naar de CPU. Wanneer de CPU de interrupt kan verwerken stuurt hij een bevestiging terug. Vervolgens verstuurt het apparaat een code om zich te identificeren: de interruptvector. De CPU slaat de interruptvector op in het interrupt register. Voordat de ISR uitgevoerd kan worden slaat de CPU de programcounter op. De CPU zoekt een nieuwe programcounter door de interruptvector te gebruiken als een index voor een tabel die zich in het geheugen bevindt: de interrupt table. De programcounter die gevonden wordt wijst naar het begin van de ISR voor het apparaat dat de interrupt veroorzaakt. De ISR slaat als eerste de registers van de CPU op in de interruptstack (een speciaal deel van het werkgeheugen). Dit proces wordt context switching genoemd. Vervolgens wordt de programmacode van de betreffende ISR uitgevoerd tot de opdracht RE- TURN FROM INTERRUPT. Daarmee wordt de ISR afgesloten en de CPU krijgt weer de toestand zoals die was voor het het uitvoeren van de ISR. processen of threads. Als je aan het tekstverwerken bent, is wat je op het scherm ziet slechts een deel van de processen die worden gestart zodra je dubbelklikt op het icoon van Word. In deze tekstverwerker wordt standaard elk woord dat je intypt, gecontroleerd aan de hand van de spelling- en grammaticacontrole, een proces dat zich grotendeels op de achtergrond afspeelt. Het besturingsysteem kent een prioriteit toe aan de actieve processen. IRQ s van bepaalde apparaten worden soms genegeerd om een proces ongestoord te kunnen afwerken. Sommige IRQ s, bijvoorbeeld van de harde schijf, zijn zo belangrijk dat die altijd voorrang krijgen. Een proces kan weer onderverdeeld worden in een aantal samenwerkende threads, bijvoorbeeld een thread om foutmeldingen af te handelen en een thread om een waarschuwing voor de gebruiker op het scherm te zetten. Bij multitasking lijkt het voor de gebruiker of alle applicaties die gestart zijn gelijktijdig hun werk doen, maar de CPU kan maar één taak tegelijk afhandelen. Daarom moet het OS steeds wisselen tussen de actieve processen, vaak in onderdelen van een seconde. Het besturingssysteem wijst een proces een bepaalde processortijd toe. Zodra die tijd verstreken is, wordt de inhoud van de registers naar het werkgeheugen gekopieerd. Het lopende adres van het proces wordt in een door het OS beheerde queue (wachtrij) gezet. Daarna vult het OS de registers met de data van het volgende proces en worden van dat proces een aantal processor cycli d.w.z. instructies verwerkt. Als ook die tijd om is, wordt opnieuw de inhoud van de registers naar het werkgeheugen geschreven enz. Alle informatie die nodig is om een proces te kunnen doorstarten wordt opgeslagen in een procescontroleblok. Daarin staat een identificatienummer om het proces te onderscheiden van andere, de prioriteit van een proces, verwijzingen naar plaatsen in de programmacode, een lijst met openstaande bestanden en de status van alle benodigde randapparatuur. Het zijn in feite deze blokken die in de genoemde queue worden gezet. Wanneer een proces een randapparaat moet gebruiken, bijvoorbeeld de printer, controleert het OS eerst of een ander proces die al gebruikt. Als dat zo is, wordt het verzoek in een bij dat apparaat behorende queue geplaatst totdat het apparaat vrij is. Het OS vult de wachttijd door een ander proces door te starten dat op de CPU wacht.

6.4 ENIGMA Informatieboek We bekijken het volgende voorbeeld. Stel dat er twee applicaties draaien: A en B. De CPU voert de instructies van programma A uit. Op een bepaald moment wordt er data weggeschreven naar de harde schijf. In plaats van de CPU te laten wachten totdat alle data is weggeschreven, is het effectiever om de processor nu de instructies van programma B te laten uitvoeren. Om te kunnen switchen moet het volgende gebeuren: Het adres van de instructie die volgt na het datatransport staat in de programcounter. Dit adres moet bewaard worden. Vervolgens moet het adres waar programma B mee verder gaat in de programcounter geplaatst worden. Ook moet de inhoud van alle andere registers ook bewaard worden, omdat hij hoort bij programma A. De inhoud van alle andere registers van programma B moet worden teruggezet. We moeten de complete processor context van programma A opslaan en de processor context van B terugzetten. Het wisselen tussen twee processen, waarbij de status van het proces wordt bewaard, wordt context switching genoemd. programma A operating system programma B save registers A selecteer programma B restore registers B save registers B selecteer programma A restore registers A Opdracht 12, 22 Copyright 27-211 ENIGMA-online

Hoofdstuk 6 Besturingssystemen 6.5 2.2 GEHEUGENBEHEER Het OS moet een paar belangrijke taken vervullen bij het beheer van het geheugen. Elk actief proces moet voldoende geheugen toegewezen krijgen om te kunnen functioneren en een proces mag de overige actieve processen die in een ander geheugengebied staan niet hinderen. Bovendien moet de beschikbare geheugenruimte zo efficiënt mogelijk verdeeld worden over de verschillende processen. Daarbij doet het volgende probleem zich voor. Ieder programma doet een eigen beroep op het geheugen en heeft eigen verwijzingen naar geheugenadressen. Andere programma s mogen daar geen veranderingen in aanbrengen. Een opdracht als LOAD 1, r9 verwijst naar een bepaalde geheugenplaats in het werkgeheugen. Maar het is de vraag of het programma die geheugenplaats wel toegewezen krijgt door het operating system. De oplossing voor dit probleem is dat geheugenadressen in programma s door het besturingssysteem niet als absolute adressen maar relatieve adressen worden beschouwd. Dit vereist een aanpassing aan de hardware zodat die het verschil kent tussen absolute adressen en relatieve adressen. Ieder programma krijgt een basisadres toegewezen, het absolute startadres van het programma. Het basisadres wordt bewaard in het basisregister. Programma A krijgt bijvoorbeeld als basisadres 2 toegewezen en programma B 12. Vanaf dat punt worden het programma in het geheugen geladen. In de hardware is een functie ABS ingebouwd die een relatief adres ar omzet in een absoluut adres aa: ABS(ar) = ar + basisadres aa = ABS(ar) Behalve een absoluut startadres krijgt een programma ook een absoluut eindadres toegewezen. Dit adres wordt opgeslagen in het limietregister. Hiermee wordt de maximum geheugenruimte die een programma krijgt toegewezen bepaald. Wanneer een programma probeert data of een subroutine te adresseren die buiten de grenzen van zijn geheugen valt zal de instructie niet worden uitgevoerd en er zal een foutmelding gegenereerd worden. In het volgende voorbeeld wordt een waarde uit register r9, de waarde 12, weggeschreven naar geheugenplaats 1. 2 21 22 23 1 2 3 12 < = > = 5 limietregister 1 LOAD 1, r9 + 2 basisregister foutmelding 5

6.6 ENIGMA Informatieboek Dit gaat als volgt: In de instructie LOAD 1, r9 is het adres 1 een relatief geheugenadres. Voordat de instructie kan worden uitgevoerd moet bij het relatieve adres het adres uit het basisregister worden opgeteld om er een absoluut adres van te maken: 1 + 2 = 21. Vervolgens checkt het system of het verkregen absolute adres binnen de grenzen van het toegekende geheugen valt. Is dat het geval dan wordt de instructie uitgevoerd en anders wordt er een foutmelding gegenereerd. Onder Windows krijgt elk proces zijn eigen beschermde geheugenruimte toegewezen, maar als daarvan niet genoeg beschikbaar is, wordt een deel van de harde schijf gebruikt als virtueel geheugen (de swap file ). Daarin wordt programmacode of data uit het werkgeheugen opgeslagen die al een tijdje niet gebruikt is. Zodra een proces programmacode of data uit de swap file nodig heeft, wordt daarvoor werkgeheugen vrijgemaakt en wordt de inhoud van een ander proces naar de swap file gekopieerd. Het nadeel van een swap file is dat de harde schijf veel langzamer is dan het werkgeheugen, zodat het proces langer moet wachten voor het verder kan gaan. Onder Mac OS wordt aan een applicatie een maximale geheugenruimte toegewezen en die kun je binnen bepaalde grenzen verminderen om meer ruimte vrij te maken voor een andere applicatie die je tegelijkertijd zou willen gebruiken. Opdracht 13 2.3 BESTURING VAN DE RANDAPPARATUUR Bijna alle hardware die niet op het moederbord te vinden is, wordt door het OS bestuurd met behulp van drivers. Je kunt een driver beschouwen als een soort brug tussen de elektrische signalen van de randapparaten en de programmacode van de applicaties en het OS. Om een voorbeeld te geven: een driver voor de harde schijf zet de data die door het OS als een bestand wordt gedefinieerd om in een serie bits en schrijft die op een lege plaats op de harde schijf. Fabrikanten van randapparatuur brengen regelmatig nieuwe drivers of updates van bestaande drivers op de markt om problemen met de aansturing op te lossen of te voorkomen. Het grote voordeel van het gebruik van drivers is dat je in veel gevallen gemakkelijk een extra randapparaat kunt aansluiten zonder dat het OS handmatig moet worden aangepast. Vooral bij een Plug-and-Play apparaat, is het meestal een kwestie van het apparaat aansluiten, de driver installeren en soms Windows opnieuw starten. Bij het Mac OS wordt er in de systeemmap een extensie (uitbreiding) geplaatst om een nieuw apparaat aan te sturen. Fabrikanten van randapparaten leveren drivers voor verschillende besturingssystemen, maar als er voor het OS dat jij gebruikt nog geen driver beschikbaar is, heb je een probleem. Het apparaat werkt dan helemaal niet, niet goed of wordt in een aantal gevallen zelfs niet herkend. Om de input van bijvoorbeeld het toetsenbord of een seriële poort te verwerken, wordt vaak een buffer of een queue gebruikt. Dat is vooral belangrijk bij multitasking als er een aantal processen actief is en de CPU druk bezig is die te verwerken. De input van het apparaat wordt aanvankelijk in zo n buffer geplaatst. Vervolgens plaatst het OS de gebufferde input op een geschikt moment in het werkgeheugen van het proces dat erop staat te wachten en start het proces door. Op die manier kan bijvoorbeeld het downloaden van een bestand vanaf het Internet verwerkt worden terwijl de CPU druk bezig is een vloeiende overgang tussen twee videofragmenten te berekenen. 2.4 APPLICATIE-INTERFACE Drivers zorgen ervoor dat applicaties gebruik kunnen maken van alle randapparatuur, zonder daarbij rekening te hoeven houden met allerlei specifiek technische details. Bovendien is het voor de programmeur van een applicatie niet nodig om te weten hoe bijvoorbeeld de harde schijf in een systeem wordt aangestuurd. Hij kan daarvoor gebruik Copyright 27-211 ENIGMA-online

Hoofdstuk 6 Besturingssystemen 6.7 maken van een API (Application Program Interface). Laten we ervan uitgaan dat er zo n API een methode bevat met de naam MaakBestand om bestanden op te slaan. De programmeur hoeft dan alleen maar in de programmacode iets op te nemen als: MaakBestand [ naam-van-het-bestand ] Het OS, bijvoorbeeld Windows XP of Windows Vista controleert eerst of je in de bestandsnaam geen tekens zet die niet gebruikt mogen worden, zoals:? / \ : * > < ;. en dat je niet probeert een read-only bestand te overschrijven. Er wordt ook nog gecontroleerd of je in de map waar je het bestand wilt opslaan wel schrijfrechten hebt. Vervolgens wordt de harde schijf benaderd, in veel gevallen via de driver voor het betreffende merk en wordt een vrije plaats gezocht. Windows schrijft dan in de FAT (File Allocation Table) de begin en eindpositie van het bestand, de bestandsnaam, de datum en tijd. Er wordt ook opgeslagen aan welke applicatie het bestand gekoppeld is en welke gebruikers recht hebben om het bestand op te vragen of te wijzigen. Dankzij deze API hoeft de programmeur geen rekening te houden met allerlei merken en types harde schijven, diskettes, memorycards, CD- en DVD-recorders. Het OS neemt met behulp van de drivers voor deze apparaten die taak van hem over. Opdracht 14 2.5 GEBRUIKERSINTERFACE Als je al zo lang een PC gebruikt, dat je nog weet wat een DOS prompt is, weet je ook dat het OS tegenwoordig een heel stuk gebruiksvriendelijker is. MS-DOS had tot en met versie 6 een command-line interface. Dit betekende dat je op een zwart scherm allerlei commando s moest intypen om bestanden te kopiëren en te verwijderen, mappen aan te maken en applicaties te starten. Toepassingsprogramma s in die tijd maakten veelvuldig gebruik van de functietoetsen op het toetsenbord, maar bijna elk programma had zijn eigen set functietoetsen en er was voor de gebruiker vaak weinig logica in te ontdekken. Tegenwoordig kun je als OS voor een desktop computer een keuze maken uit de verschillende versies van Windows, Mac OS en Linux. Al deze besturingssystemen werken met een GUI (Graphical User Interface) en je kunt zeer verhitte discussies uitlokken door op een of ander feestje een kritische opmerking over een van deze drie te maken. Windows heeft verreweg het grootste marktaandeel, maar het Mac OS heeft van de drie de oudste rechten op de grafische gebruikers interface. Gebruikersinterface Mac OS X

6.8 ENIGMA Informatieboek Unix en Linux hadden lange tijd voornamelijk een command-line interface en op tekst gebaseerde gebruikersinterfaces, maar dankzij X-Windows, Gnome en KDE kun je nu ook bij die besturingsystemen gebruik maken van een GUI. Een GUI zorgt voor een duidelijke en overzichtelijke structuur in de interactie tussen de gebruiker en het OS. Je moet je wel realiseren dat een GUI een soort schil is rond het besturingssysteem. De eigenlijke kern van het OS, het besturen van het computersysteem zoals eerder hier beschreven, wordt verricht door de kernel. Dit deel van het OS wordt als eerste in het werkgeheugen geladen en blijft daar zolang de computer niet wordt uitgeschakeld. Daarom is het belangrijk dat de kernel zo klein mogelijk is, maar groot genoeg om de essentiële taken van een besturingssysteem te kunnen uitvoeren. De belangrijkste vernieuwingen van een OS liggen dan ook vaak niet in het herschrijven van de kernel, maar in het aanpassen en verbeteren van de user interface en het toevoegen van allerlei utilities. Opdracht 15-21, 23-41 3 BIOS EN OPSTARTEN 3.1 BIOS Een besturingssysteem op een Intel computer werkt nauw samen met het BIOS en gebruikt drivers voor de randapparatuur. Het BIOS (Basic Input Output System) fungeert als een eerste brug tussen de hardware, de CPU en het OS. In het BIOS staan gegevens over de harde schijf, het diskettestation, seriële en parallelle poorten, de grootte van het werkgeheugen enz. Deze gegevens worden opgeslagen in EEPROM (Electrically Erasable Programmable Read-Only Memory) chips, die de gegevens ook vasthouden als de PC uitstaat. Het voordeel van het gebruik van EEPROM chips, ook wel Flashgeheugen genoemd, is dat het BIOS softwarematig kan worden bijgewerkt. Het BIOS wordt alleen gebruikt computers met Windows als OS en CPU s van Intel of AMD. Macintosh computers hebben geen BIOS zoals Wintel computers. Bij een Mac kunnen de instellingen, bijvoorbeeld datum, tijd en bootvolgorde worden aangepast met behulp van Regelpanelen in het OS. Die instellingen worden opgeslagen in het PRAM (Parameter RAM), een chip op het moederbord van een Mac die door een kleine batterij van spanning wordt voorzien. Het Mac OS werkt daarnaast ook met extensies (uitbreidingen) die in de systeemmap worden geplaatst. Je kunt de extensies vergelijken met de drivers voor Intel computers en net als bij deze moet voor elk nieuw apparaat een extensie beschikbaar zijn, anders is het niet te gebruiken. Voor computers die met Unix of Linux werken, fungeert de kernel van het OS als bemiddelaar tussen de hardware en de applicaties. De driver voor een of ander nieuw apparaat kan bij die besturingssystemen ook als aparte module in het werkgeheugen worden geladen. Copyright 27-211 ENIGMA-online

Hoofdstuk 6 Besturingssystemen 6.9 Naast het BIOS hebben Wintel computers drivers nodig voor de aangesloten randapparatuur. Die drivers worden in veel gevallen geladen door het OS bij het opstarten. Drivers zijn nodig om bijvoorbeeld een geluidskaart, een DVD-speler of printer aan te sturen. Zonder drivers zou het BIOS of het OS de gegevens moeten bevatten van alle randapparatuur die je ooit aan je computer zou willen koppelen. Het feit dat bij Wintel computers het BIOS en bij de Mac de PRAM wordt gebruikt, is niet een gevolg van de keuze voor een of andere CPU of OS, maar wordt door de architectuur van deze machines bepaald. Het is in beide gevallen een oplossing voor een algemeen probleem: hoe wordt het OS geladen en hoe kan dat zo efficiënt mogelijk? Je zou het hele besturingssysteem in ROM kunnen zetten, zoals bij PDA s en smartphones gebeurt of bit voor bit intypen, maar dat laatste kun je toch niet bepaald efficiënt noemen! In veel gevallen staat het OS op een permanent medium zoals een harde schijf, een CD- ROM of een diskette, maar bij het opstarten is het OS nog niet geladen en datzelfde OS is nodig om de inhoud van een disk te lezen. Die hele situatie doet denken aan de onfortuinlijke Baron Von Münchhausen die zich aan de lussen van zijn laarzen (bootstraps) uit het moeras trok. In het Engels bestaat nog steeds de uitdrukking: to pull yourself up by your bootstraps. En dat is precies wat er bij het opstarten van een computer gebeurt. Opdracht 42-45 3.2 OPSTARTEN Bij het opstarten van een Wintel PC wordt allereerst een elektrisch signaal gestuurd langs een vooraf ingeprogrammeerde weg naar de CPU. Dat signaal verwijdert de eventueel aanwezige resten van een vorige sessie uit de registers. Bovendien wordt met dit signaal de program counter op de hexadecimale waarde F ingesteld. Daarna moet de CPU het boot programma verwerken. Dat programma wordt bewaard in de ROM (Read- Only Memory) chip op het moederbord die het BIOS bevat. De instructies in het boot programma zorgen ervoor dat de CPU signalen over de bus verzendt om te controleren of alle componenten correct functioneren. Tijdens deze POST (Power-On Self Test), hoor je een paar piepjes, zie je op de monitor de eerste tekst verschijnen en knipperen op het toetsenbord een paar lichtjes als teken dat bijvoorbeeld de videokaart, het geheugen en het toetsenbord probleemloos lijken te werken. Daarna zorgen de instructies in de ROM ervoor dat de harde schijf wordt geactiveerd. Op het eerste spoor van de harde schijf staat een klein programma, de bootstrap loader, die ervoor zorgt dat het OS in het werkgeheugen wordt geladen. Het besturingssysteem laadt de benodigde drivers voor de randapparatuur en pas als alles geladen is, kun je met de computer werken en applicaties starten. Zodra een Macintosh computer wordt opgestart, wordt als eerste de BootROM firmware geactiveerd. Deze heeft twee taken: het initialiseren van de hardware en het kiezen van het OS dat geladen moet worden. Tijdens de POST wordt een deel van de hardware geïnitialiseerd en wordt gecontroleerd of er voldoende RAM geheugen beschikbaar is en of dit goed functioneert. Daarna wordt de rest van de hardware geïnitialiseerd en wordt het OS geladen vanaf disk. Opdracht 46-54

6.1 ENIGMA Informatieboek 4 GEBRUIKERS EN TOEGANGSRECHTEN 4.1 GEBRUIKERS Zolang je als enige een PC gebruikt, is er niets aan de hand. Het kan een probleem worden als meerdere mensen dezelfde computer moeten delen. De standaardinstelling is dat alle gebruikers dezelfde voorkeuren en bureaubladinstellingen delen. Dat is in de praktijk vaak niet handig, omdat je soms met veel moeite een perfecte persoonlijke gebruikersomgeving hebt ingesteld die door de volgende gebruiker weer ongedaan wordt gemaakt. Al onder Windows 98 was het daarom mogelijk om gebruikersprofielen te maken. Bij het opnieuw starten van Windows wordt dan een naam en wachtwoord gevraagd om je bij Windows als gebruiker aan te melden. Al je persoonlijke instellingen, wel of geen spellingcontrole in Word, het lijstje met Favorieten, de achtergrond van het bureaublad enz. worden nu bijgehouden en als je je de volgende keer weer aanmeldt indien nodig teruggezet. Een nadeel was dat deze profielen makkelijk te omzeilen waren. Windows XP heeft een veel betere beveiliging, die komt uit de Windows NT-familie. Er wordt gebruik gemaakt van gebruikersaccounts en je kunt alleen gebruik maken van het systeem als je correct inlogt. In Windows Vista is de beveiliging van het systeem van gebruikersaccounts verbeterd. 4.2 TOEGANGSRECHTEN Je kunt hiermee echter niet voorkomen dat een volgende gebruiker belangrijke bestanden wijzigt of wist. Daarvoor heb je bijvoorbeeld Windows XP of Linux nodig. Bij het installeren van die besturingssystemen wordt een administrator of root aangemaakt, een gebruiker met alle rechten. Die kan dan andere gebruikers toegang verlenen tot het systeem en belangrijke mappen of bestanden beveiligen. De beveiliging kan bestaan uit het verlenen van filescan rechten waarbij andere gebruikers bestanden wel kunnen openen, maar niet wijzigen. Het is zelfs mogelijk om mappen of bestanden ontoegankelijk te maken, zodat ze niet geopend kunnen worden. Copyright 27-211 ENIGMA-online

Hoofdstuk 6 Besturingssystemen 6.11 4.3 TOEGANGSRECHTEN IN EEN NETWERK In een netwerk kan de beheerder, de administrator, ook gebruikers aanmaken en toegangsrechten verlenen op de mappen en bestanden op de netwerkserver. Dat is vooral belangrijk als meerdere personen gebruik maken van hetzelfde bestand. In het databasebestand van een schooladministratie moeten sommige gebruikers alleen maar leesrechten krijgen en anderen het volledige beheer. Als er meerdere personen gelijktijdig gebruik moeten maken van een record, moet het beheer zeer goed geregeld worden. In een dergelijke multi-user situatie moet er geregeld zijn dat twee of meer gebruikers wel gelijktijdig een record kunnen inzien, maar niet gelijktijdig kunnen wijzigen. Als ze dat toch proberen, verschijnt er een foutmelding zoals Dit record wordt momenteel elders gemuteerd. Aanbrengen van wijzigingen is nu niet mogelijk. Opdracht 55-6