Thank you for your comments! There are also downloadable flashcards free on this box if you are interested for this :)
Seller
Follow
EHB
Reviews received
Available practice questions
Herhalingsvragen OS
Flashcards30 Flashcards
Free7 sales
Flashcards30 Flashcards
Free7 sales
Some examples from this set of practice questions
1.
Het is belangrijk dat een besturingssysteem efficiënt gebruik maakt van de hardware. Zijn er situaties waarin het misschien interessant kan zijn om dit principe te laten varen en computerbronnen te “verspillen”?
Answer: Ja, wanneer een pc ontworpen is voor één gebruiker die alle bronnen voor zich kan opeisen is het BS vooral met een accent op gebruiksvriendelijkheid ontwikkelt. Het gebruik van bronnen wordt volledig genegeerd. De prestaties van het systeem zijn wel belangrijk, maar de eisen die 1 gebruiker stelt vormen geen probleem voor het gebruik van de bronnen.
2.
Is het nodig dat een besturingssysteem applicaties zoals webbrowsers, mailclients e.d. bevat? Zoek zowel een argument voor als een argument tegen.
Answer: Nee, bijv. microkernels gaan zoveel mogelijk van de kernel naar “user” space verhuizen en de communicatie tussen user modules gebeurt m.b.v. message passing.
Hierdoor kan men makkelijker de microkernel uitbreiden, het BS makkelijker herschrijven voor nieuwe architecturen en dit is betrouwbaarder (minder uitvoering in kernelmode) en veiliger.
3.
Welke rol spelen kernelmode en usermode bij de beveiliging?
Answer: Om zo het BS af te schermen van fouten die door de gebruiker zijn veroorzaakt (en gebruikers van elkaar afschermen). Tijdens opstarten systeem wordt hardware in monitor mode geïnitialiseerd en worden gebruikersprocessen in user-mode gestart.
Bij elke trap of interrupt schakelt hardware over van user naar monitor mode. Machine-instructies die schade kunnen aanrichten moeten enkel in monitor mode door hardware kunnen uitgevoerd worden = geprivilegieerde instructies. Wanneer het systeem dit in user mode probeert uit te voeren wordt een trap gegenereerd en behandelt de hardware deze als niet toegestaan in plaats van ze uit te voeren.
4.
Bespreek de voor- en nadelen van een microkernel.
Answer: 1) Men kan makkelijker de microkernel uitbreiden, meestal wijzigingen op kleine schaal, het BS makkelijker herschrijven voor nieuwe architecturen, alle nieuwe services worden aan de gebruikersruimte toegevoegd zodat er geen wijzigingen in de kernel vereist zijn.
2) De microkernel is betrouwbaarder (minder uitvoering in kernelmode) en veiliger omdat meeste services worden uitgevoerd als gebruikersprocessen i.p.v. kernelprocessen. Als een service niet beschikbaar is, heeft dit geen invloed op de rest van het BS.
3) Prestaties nemen af naarmate de overhead van de systeemfuncties toeneemt, er moet constant geswitcht worden, dit kan opgelost worden door lagen uit de gebruikersruimte in de kernel onder te brengen en die beter op elkaar af te stemmen.
5.
Wat is het verschil tussen harde en zachte realtime systemen?
Answer: Harde:
- Alles gebeurt binnen bepaalde tijdsbeperking
- Secundaire opslag beperkt of afwezig (veroorzaakt teveel variabele vertragingen)
- Opslag in ROM
- Niet in timesharing systemen of gewone BS
Zachte:
- Realtime processen krijgen voorrang op andere
- Tijdsbeperking niet gegarandeerd
- Gemakkelijker te implementeren in gewone BS
6.
Waarom kan je een gemiddeld besturingssystemen niet zomaar als hard realtime systeem inschakelen?
Answer: Omdat de meest geavanceerde voorzieningen die andere BS kenmerken ontbreken, aangezien deze de gebruiker vaak van de hardware scheiden en tot onzekerheid leiden over de tijd die nodig is om een bewerking uit te voeren.
7.
Wat wordt verstaan onder “graceful degradation” bij multiprocessorsystemen?
Answer: Fouttolerante systemen, de mogelijkheid om tijdens een storing diensten te kunnen blijven aanbieden naargelang het aantal apparaten dat nog storingvrij werkt. Bijv als bij asymmetrische multiprocessing de master uitvalt, hopen dat de slave dit opvangt, bij symmetrische multiprocessing vangen de andere processors dit sowieso op.
8.
Sommige oude computers beschermden het besturingssysteem door het in een stuk geheugen te plaatsen dat niet kon gewijzigd worden, niet door de gebruikersapplicaties maar ook niet door het besturingssysteem zelf. Bedenk enkele moeilijkheden die hierdoor ontstaan?
Answer: Het geheugen kan nooit vrijgemaakt worden en zal misschien vollopen met instructies die wachten om uitgevoerd te worden maar door problemen niet kunnen uitvoeren.
9.
Hoe kan een timer gebruikt worden om de huidige tijd/datum te bepalen?
Answer: Een timer-interrupt signaleert dat een bepaalde periode is verstreken, zodat het BS de huidige tijd kan bepalen op basis van een specifieke beginwaarde. Bijv. wanneer elke seconde een interrupt optreedt en er al 120 interrupts zijn afgehandeld sinds het systeem heeft meegedeeld dat het 13u was, is het op dit moment 13:02. Maar de tijd die nodig is om interrupts te verwerken leidt er vaak toe dat de softwareklok achterloopt.
10.
Bespreek wat er gebeurt als een applicatie in- of uitvoer probeert te doen?
Answer: De CPU laadt de gegevens in de juiste registers van de apparaatcontroller, die analyseert vervolgens de inhoud van deze registers om te bepalen welke actie moet worden ondernomen. Als de controller bijvoorbeeld een aanvraag vindt om gegevens te lezen, begint deze gegevens over te dragen van het apparaat naar de lokale buffer. Zodra de gegevensoverdracht is voltooid, deelt de apparaatcontroller dit aan de CPU mee door een interrupt te geven. Nadat de I/O wordt gestart wordt er aan synchrone of asynchrone I/O gedaan.
Content preview
(I) Inleiding
1. WAT IS EEN BS
A. EEN COMPUTERSYSTEEM BESTAAT UIT :
Toepassingsprogramma’s: De manier waarop de voorzieningen worden gebruikt om de noden van de
gebruikers te voldoen (compilers, database, spelletjes, andere applicaties…)
Gebruikers: Mensen, machines, andere computers
BS = programma dat de hardware in een computer beheert, de basis vormt voor toepassingsprogramma’s
en een bemiddelende rol tussen de gebruiker en de hardware speelt
Resource Allocator
beheert bronnen en wijst ze toe aan degenen die ze nodig hebben
Control Program
controleert de uitvoering van applicaties en de werking van I/O apparaten
Eigenlijk BS = Kernel
het ene programma dat steeds uitvoert (al de rest zijn systeemprogramma’s of applicaties)
Afhankelijke van de context is een bs in min of meerdere mate gebruikvriendelijk (pc) of efficiënt (server)
2. MAINFRAME SYSTEMEN
A. BATCH-SYSTEMEN
gebruikers konden niet rechtstreeks communiceren met het computersysteem, maar moesten een taak
voorbereiden en deze aan de computeroperator geven.
Taak = programma + de gegevens + controlegegevens over de aard van de taak (controlekaarten)
meestal op ponskaarten
Na enkele minuten/uren/dagen verscheen de uitvoer = resultaat + dump van de uiteindelijke geheugen- en
registerinhoud
Belangrijkste taak bs: automatisch van de ene taak naar de andere taak overschakelen. Bs was permanent
aanwezig in het geheugen.
Kenmerkend: CPU vaak inactief omdat gegevensverwerking veel sneller was dan mechanische invoer en
uitvoer
B. MULTIPROGRAMMED BATCHSYSTEMEN
optimaliseren van CPU gebruik door taken in te delen, zodat er altijd wel één of andere taak kan uitgevoerd
worden door de CPU.
alle taken worden bijgehouden in een Pool.
indien CPU een bepaalde taak aan het uitvoeren is en er moet gewacht worden op de voltooiing van een
andere taak (bv I/O), dan begint de CPU met de uitvoering van een andere taak. Na voltooiing kan de CPU
verder doen met de eerste taak. Zolang er taken moeten worden uitgevoerd is de CPU nooit inactief.
pagina 1 van 56
,JOB scheduling:
OS moet beslissingen nemen: als er verschillende taken tegelijk in het geheugen kunnen worden geladen,
maar er onvoldoende ruimte is voor alle taken moet het OS kiezen welke taken worden geladen.
er wordt één of andere vorm van geheugenbeheer vereist aangezien er verschillende programma’s
tegelijkertijd in het geheugen worden geladen.
de keuze die het bs moet maken tussen de verschillende taken die tegelijkertijd kunnen worden uitgeroerd
wordt CPU-scheduling genoemd.
de mogelijkheid dat taken elkaar kunnen beïnvloeden moet worden beperkt tijdens alle fasen van het
proces.
C. TIMESHARINGSYSTEMEN /MULTYTASKING SYSTEMEN
stellen gebruikers ook in staat met het computersysteem te communiceren
CPU voert verschillende taken uit door voortdurend van taak te wisselen. Dit gebeurt zo snel dat de
gebruikers met de programma’s kunnen blijven communiceren terwijl ze worden uitgevoerd
een computer kan tegelijkertijd met meerder gebruikers worden gedeeld omdat elke actie of opdracht in
een timeshared systeem gewoonlijk erg kort is (voor iedere gebruiker nauwelijks CPU tijd vereist)
past CPU-sheduling en multiprogramming toe. Voor iedere gebruiker is er minstens 1 afzonderlijk
programma in het geheugen geladen. De programma’s die in het geheugen zijn geladen en worden
uitgevoerd worden processen genoemd;
om een aanvaardbare responstijd te kunnen waarborgen moet het systeem taken soms tijdelijk uit het
hoofdgeheugen verwijderen in op de schijf opslaan. Hiervoor wordt meestal gebruik gemaakt van virtueel
geheugen.
timesharing systemen moeten ook een bestandsysteem beschikbaar maken. Om dat dit bestandsysteem
zich op een verzameling schijven bevindt, moet een vorm van schijfbeheer worden ondersteund.
om te waarborgen dat de taken systematisch worden uitgevoerd is ook een mechanisme vereist om taken
te synchroniseren en communicatie mogelijk te maken
3. DESKTOP SYSTEMEN
Terwijl multitasking bs in de eerste plaats het gebruik van de CPU en de randapparaten moeten optimaliseren,
moeten bs, voor pc’s de gebruiker ook zoveel mogelijk comfort en een zo kort mogelijke responstijd bieden.
efficiënt gebruik van de CPU is bij systemen met 1 gebruiker veel minder belangrijk dan bij mainframes
4. MULTI-PROCESSOR SYSTEMEN ( PARALLELLE OF GEKOPPELDE SYSTEMEN)
bevatten meerdere processors die nauw met elkaar in contact staan en die de computerbus, de interne klok
en soms ook het geheugen en de randapparaten met elkaar delen.
Dit biedt 3 grote voordelen:
A. HOGERE DOORVOER
het grotere aantal processors maakt het mogelijk in minder tijd meer taken uit te voeren
5verzerkingssnelheid neemt NIET evenredig toe met het aantal processoren aangezien systemen moeten
worden ingebouwd die waarborgen dat alle onderdelen correct blijven werken; bovendien kunnen er conflicten
ontstaan met gedeelde bronnen.
B. EFFICIENTER HARDWAREGEBRUIK
multiprocessorsystemen zijn goedkoper dan het equivalente aantal singleprocessorsystemen omdat
randapparaten, apparaten voor massaopslag en energiebronnen worden gedeeld.
Nieuwe ontwikkeling = Blade servers servers waarin meerdere processor- I/O en netwerkboards kunnen
worden geïnstalleerd in één behuizing. Verschil met multiprocessorsystemen: elke blade processor start
zelfstandig op en heeft zijn eigen bs.
C. GOEDE BETROUWBAARHEID (DOOR GRACEFULL DEGRADATION / FOUTTOLERANTE SYSTEMEN)
Als functies op de juiste manier over verschillende processors zijn verdeeld en er valt één processor uit, loopt
het systeem niet vast maar wordt het alleen langzamer
dit vereist één of ander mechanisme dat het mogelijk maakt fouten op te sporen, te analyseren en zo
mogelijk te verhelpen.
pagina 2 van 56
, Asymmetrische multiprocessing: aan elke processor wordt een bepaalde taak toegewezen; het
systeem wordt beheerd door een hoofdprocessor, de andere processoren voeren ofwel de instructies
van de hoofprocessor uit, ofwel vooraf gedefinieerde taken
master/slave verhouding
(komen veel voor in extreem grote systemen)
Symmetrische multiprocessing (SMP):
– Alle processoren evenwaardig en delen centraal geheugen
– Vele processen kunnen tegelijk worden uitgevoerd zonder prestaties te verminderen
– De meeste moderne
Nadelen:
- belangrijk I/O in goede banen te leiden zodat de juiste gegevens de juiste processor bereiken
- het is mogelijk dat de ene CPU inactief is terwijl een andere overbelast is; dit kan worden
opgelost door de processoren bepaalde datastructuren te laten delen zodat processen en
bronnen dynamisch worden verdeeld onder de verschillende processors en de werklast
gelijkmatig kan worden gespreid
5. REALTIME SYSTEMEN
Harde realtime systemen:
– Alles gebeurt binnen bepaalde tijdsbeperking
– Secundaire opslag beperkt of afwezig (veroorzaakt teveel variabele vertragingen)
– Opslag in ROM
– Niet in timesharing systemen of gewone BS
Zachte realtime systemen
– Realtime processen krijgen voorrang op andere
– Tijdsbeperking niet gegarandeerd
– Gemakkelijker te implementeren in gewone BS
6. MIGRATIE VAN VOORZIENINGEN
VB: MULTIPLEXED INFORMATION AND COMPUTING SERVICES (MULTICS BS)
- 1965-1970 als computer-utility ontwikkeld aan MIT - Uitgevoerd op grote complexe
mainfraimcomputers
- 1970 ideeën van MULTICS overgenomen in het ontwerp van UNIX – ontworpen voor een minicomputer
- 1980 voorzieningen in UNIX gebruikt als basis voor varianten op UNIX voor microcomputers
- Zelfde voorzieningen vinden ze terug in nieuwe bs zoals Windows XP en Mac OS X
- Ondertussen zijn enkele van deze voorzieningen ook terug te vinden op Linux voor PDA’s
pagina 3 van 56
, (II) Structuur van Computersystemen
1. DE WERKING VAN EEN COMPUTERSYSTEEM
Een modern computersysteem bestaat uit een CPU en verschillende apparaatcontrollers en adapters. Al
deze hardwareonderdelen zijn verbonden met een gemeenschappelijke bus die toegang verschaft tot het
gedeelde geheugen. Om conflicten tussen CPU en de verschillende controllers (die gelijktijdig processen
kunnen uitvoeren en met elkaar wedijveren voor geheugencycli) te voorkomen wordt de toegang tot het
geheugen gesynchroniseerd met behulp van een geheugencontroller.
Een computer heeft een basisprogramma nodig om op te starten, het Bootstrap-programma. Dit is meestal
erg klein en vaak is het in ROM opgeslagen. initialiseert alle onderdelen van het systeem (CPU-register,
apparaatcontrollers, geheugeninhoud, …)
zoekt de kernel van het OS en laadt dit in het geheugen
OS voert eerste proces uit (bijvoorbeeld init)
wacht tot er een event plaatsvindt (meestal aangekondigd door een interrupt van de hardware via
systeembus of de software via system call)
Moderne bs zijn interuptgestuurd: als er geen processen zijn om uit te voeren, geen I/O-apparaten die om
services verzoeken en geen gebruikers die op een antwoord wachten, wacht een bs totdat er iets gebeurt.
Events worden gesignaleerd door een interrupt of trap (= uitzondering = software-gegenereerde interrupt
veroorzaakt door een fout, of door de gebruiker)
Voor elk type interrupt zijn er afzonderlijke codesegmenten beschikbaar in het OS die bepalen hoe het OS
reageert. Er is ook telkens een interruptserviceroutine beschikbaar om de interrupt af te handelen.
Methodes om overdracht aan juiste serviceroutine te regelen:
aanroepen van algemene routine die de interruptinformatie analyseert en vervolgens de juiste handler
aanroept
tabel met verwijzingadressen (pointers in interruptvector) via dewelke de juiste routine voor de
interrupt wordt aangeroepen (voordeel: geen tussenliggende routine vereist = dus sneller)
2. I/O STRUCTUUR
Op een apparaatcontroller kunnen vaak verschillende apparaten worden aangesloten.
Vb: Op een Small Computer Systems Interface-controller (SCSI) kunnen 7 of meer apparaten worden
aangesloten.
Apparaatcontroller is verantwoordelijk voor de overdracht van gegevens tussen randapparaten en lokale buffer
A. I/O-INTERRUPTS
I/O bewerking starten:
1. CPU laadt gegevens in de juiste registers van de apparaatcontroller
2. aparaatcontroller analyseert de inhoud van deze registers om te bepalen welke acties moeten
ondernomen worden
3. zodra acties zijn voltooid deelt de apparaatcontroller die mee aan de CPU d.m.v. een interrupt
pagina 4 van 56
,2 mogelijkheden:
SYNCHRONE I/O:
I/O wordt gestart en zodra voltooid, wordt besturing weer aan het gebruikersproces overgedragen.
2 manieren om te wachten op voltooiing I/O
1. via WAIT-instructie die ervoor zorgt dat de CPU inactief blijft tot de volgende interrupt.
2. via een wachtlus die voortdurend opnieuw wordt uitgevoerd totdat er een interrupt optreedt die
de besturing aan een ander deel van het OS overdraagt
ten hoogste 1 I/O aanvraag tegelijk, geen I/O tegelijk met uitvoer!
ASYNCHRONE I/O:
Na de start van I/O wordt de controle zonder te wachten op het einde van de I/O teruggegeven
aan de applicatie. Om talrijke I/O-aanvragen tegelijkertijd te kunnen bijhouden gebruikt BS een
device-status table, waarin voor elk I/O apparaat een afzonderlijke ingang is gereserveerd. Elke
tabelingang bevat informatie over het type apparaat; het adres en de status (buiten werking, inactief,
actief); het BS houdt ook een wachtrij bij voor elke I/O apparaat zodat andere processen aanvragen
kunnen verzenden naar hetzelfde apparaat.
B. DIRECT MEMORY ACCES (DMA) OVERDRACHT
Als de CPU 2 microseconden nodig heeft om op elke interrupt te reageren en als er bijvoorbeeld elke
microseconden interrupts worden gegenereerd, blijft er niet veel tijd over om processen uit te voeren.
- Gebruikt voor hogesnelheid I/O devices die informatie doorgeven aan een snelheid even groot als
geheugensnelheid
- Apparaatcontroller verplaatst blokken data van buffer rechtstreeks naar hoofdgeheugen, zonder
tussenkomst van de CPU
- Slechts 1 interrupt gegenereerd per blok, in plaats van normaal per byte data
3. HIËRARCHIE VAN OPSLAG
Opslagsystemen kunnen hiërarchisch worden ingedeeld volgens snelheid en prijs.
Bovenaan hiërarchie: duur maar snel toegankelijk
Lager in hiërarchie: lager kostprijs per bit, maar toenemende toegangstijd.
Tegenwoordig zijn magneetbanden en halfgeleidergeheugen zo snel en goedkoop geworden dat andere
systemen niet meer worden gebruikt.
Registers – cache – RAM-geheugen – elektronische schijf – Magneetschijf – Optische schijf – Magneetbanden
Eerste 3 opslagsystemen zijn vluchtig (= gegevens gaan verloren bij uitschakeling), een elektronische schijf
kan zowel vluchtig als niet-vluchtig zijn en alle andere zijn niet-vluchtig.
A. CACHING
Gegevens worden gewoonlijk op een specifieke opslaglocatie bewaard (bijvoorbeeld in het RAM). Als een
programma om deze gegevens vraagt worden ze tijdelijk naar een sneller opslagsysteem gekopieerd: de
cache.
Als de CPU gegevens nodig heeft controleert hij altijd of gegevens in de cache zitten. Indien ja, worden deze
gebruikt, indien nee worden we vanaf de langzamere bron gelezen maar wordt een kopie in de cache
opgeslagen voor eventueel later gebruik.
Beheer van de cache is heel belangrijk: als zowel grootte van de cache als algoritme voor de vervanging van
gegevens zorgvuldig zijn geselecteerd kan 80 tot 90% van alle gegevens rechtstreeks uit de cache worden
gehaald
Solid-state disks = elektronische RAM-schijven die gegevens snel toegankleijk maken via de bestandssysteem-
interface
pagina 5 van 56
,Caching introduceert een nieuw niveau in de opslag hiërarchie
– om consistent te blijven moet data simultaan bewaard worden op meerdere niveaus
– Cache moet coherent blijven, dus een aanpassing moet naar alle CPU's gepropageerd worden (bij
multiprocessor systemen)
4. AFSCHERMING VAN HARDWARE
Eerste OS = residente monitors programmeur kon vanaf zijn console het volledige systeem beheersen
sindsdien hebben OS geleidelijk aan allerlei taken overgenomen van de programmeur.
Sinds de introductie van multiprogramming en het uitvoeren van verschillende taken tegelijkertijd, kan een
bug in 1 programma de uitvoer van alle andere programma’s in de war sturen. Om dit op te lossen zonder
vorm van beveiliging zijn er maar 2 oplossingen:
1. De computer moet 1 proces tegelijkertijd uitvoeren
2. Alle uitvoer moet worden gecontroleerd
A. DUAL MODE
- Voor delen van systeembronnen moet het BS ervoor zorgen dat een foutieve applicatie of een “stoute”
gebruiker afgeschermd wordt van andere applicaties
- BS zorgt voor hardwareondersteuning voor minstens twee modi:
1. User mode – uitvoering door een gebruiker
2. Monitor mode (of kernel mode of systemmode) – uitvoering door BS
- Mode bit toegevoegd aan computer hardware om de huidige mode aan te duiden: monitor (0) of user (1)
- Als een interrupt of fout plaats vindt switcht de hardware naar monitor mode
Tijdens opstarten wordt de hardware in monitor mode geinisialiseerd OS wordt geladen en start
gebruikersprocessen in user mode telkens er een trap of interrupt optreedt schakelt de hardware van user
nar monitor mode voordat het beheer weer aan een gebruiksprogramma wordt overgedragen wordt er
overgeschakeld naar user mode.
Machine-instructies die schade kunnen aanrichten, worden gedefinieerd als geprivilegieerde instructies
worden uitsluitend in monitor mode uitgevoerd door de hardware.
Als een systeem een gepriviligeerde instructie in user mode probeert uit te voeren wordt dit niet toegestaan
en genereert de hardware een trap.
Indieen een gebruikerprogramma een geprivilegieerde instructie wil uitvoeren wordt dit aangevraagd bij het
OS d.m.v. een systeemaanroep (monitor call)
Een systeemaanroep wordt door de hardware als een software-interrupt behandelt.
B. I/O AFSCHERMING
Gebruikersprogramma kan de normale werking van het systeem verstoren door
- illegale I/O instructies te verwenden
- toegang te zoeken toe geheugenlocaties in het OS zelf
- door te weigeren de CPU vrij te geven
Oplossing:
- Door alle I/O –instructies als geprivilegieerde instructies te definiëren waardoor gebruikers altijd via een
systeemaanroep naar het OS moeten passeren.
- Om I/O volledig af te schermen moeten ze ervoor zorgen dat een gebruikersprogramma nooit de controle
kan krijgen over de computer in monitor.
Vb: computer die in user mode wordt uitgevoerd schakelt telkens over naar monitor mode als er een interrupt
of trap optreedt. Hierbij springt het systeem naar het adres dat op basis van de interruptvector is bepaald.
als een gebruikersprogramma een nieuw adres in de interruptvector opslaat terwijl het wordt uitgevoerd,
kan het vorige adres door een adres in het gebruikersprogramma overschreven worden hardware schakelt
naar monitor mode over en het beheer wordt via de gewijzigde interruptvector aan het gebruikersprogramma
overgedragen telkens er een overeenkomstige interrupt of trap optreedt!
pagina 6 van 56
, C. AFSCHERMING VAN HET GEHEUGEN
Tenminste het geheugen van de interrupt vector en de interrupt service routines moeten worden afgeschermd
afscherming van deze geheugenruimte moet door de hardware worden verzorgd
Om afscherming te verkrijgen, moeten er minstens twee registers worden gebruikt
om een “wettige adresreeks” te bepalen die mag gebruikt worden door een applicatie
– Basisregister (het kleinste wettige adres)
– Grensregister (de grootte van de reeks)
Geheugen buiten deze bepaalde reeks is beschermd
de CPU-hardware vergelijkt elk adres dat in user mode wordt gegenereerd met de inhoud van de registers.
Indien een programma toegang wil tot geheugenruimte buiten het bereik wordt er een trap gestuurd naar de
monitor die de toegangspoging als fatale fout behandelt.
Alleen het OS kan de basis- en limietregisters laden d.m.v. een geprivilegieerde instructie.
Gebruikersprogramma’s kunnen de inhoud van de registers niet wijzigen, maar het OS zelf wel (in monitor
mode)
D. AFSCHERMING VAN DE CPU
Naast afschermen van het geheugen en de I/O moeten we er ook voor zorgen dat het OS de controle over de
computer behoudt.
Vb; voorkomen dat een gebruikersprogramma vastloopt in een eindeloze lus waardoor het beheer niet meer
aan het OS wordt teruggegeven.
hiervoor kan een timer gebruikt worden die ervoor zorgt dat een programma na een bepaalde tijd wordt
onderbroken
meestal wordt gebruik gemaakt van een timer en een klok die met een vaste snelheid loopt om een
variabele timer te implementeren
- timer wordt door OS ingesteld en telkens als de klok tikt wordt de teller met een bepaalde waarde
verminderd
- zodra teller = 0: interrupt beheer wordt automatisch aan OS overgedragen (interrupt kan
beschouwd worden als fatale fout of programma kan meer uitvoeringstijd krijgen)
Timer wordt meestal gebruikt om Timesharing te implementeren:
timer ingesteld zodat zodra een bepaald tijdsinterval is verlopen het beheer van de CPU aan de volgende
gebruiker wordt doorgegeven context switch
pagina 7 van 56
, (III) De structuur van
besturingssystemen
1. SYSTEEM COMPONENTEN (LEZEN)
A. PROCESBEHEER
- Een proces is een applicatie in uitvoering
- Een proces heeft bronnen zoals CPU-tijd, geheugen, bestanden en I/O-apparaten nodig om zijn taak
te vervullen.
Deze bronnen worden
- toegewezen op het moment dat het proces wordt gestart
of
- toegewezen terwijl het proces wordt uitgevoerd
Een programma op zich in geen proces, maar een passieve entiteit, zoals de inhoud van een bestand op vaste
schijf. Een proces is een actieve entiteit
een single-threaded process heeft één programmateller die bepaald wat de volgende instructie is die het
proces moet uitvoeren. Een dergelijk proces wordt sequentieel uitgevoerd (ene instructie na de andere)
een multi-threaded proces heeft verschillende programmatellers. Elk van deze tellers bepaalt wat de volgende
instructie is die moet worden uitgevoerd voor een specifieke thread.
- Het BS moet volgende zaken kunnen ivm procesbeheer:
– creatie en verwijderen van processen
– opschorten en hernemen van processen
– synchronisatie van processen
– communicatie tussen processen
B. GEHEUGENBEHEER
Het RAM-geheugen is een grote array van woorden of bytes met een opslagcapaciteit van horderden tot
miljarden bytes het is een centrale opslagruimte met gegevens die snel toegankelijk zijn, zowel voor de CPU
als voor I/O apparaten.
Om zowel het CPU-gebruik als de responstijd van de computer te verbeteren, is het belangrijk dat er
meerdere programma’s tegelijk in het geheugen zijn geladen. Dit vereist een vorm van geheugenbeheer
er
bestaan verschillende algoritmen om het geheugen te beheren
Het OS is verantwoordelijk voor de volgende taken m.b.t. geheugenbeheer
- bijhouden welke delen van het geheugen momenteel in gebruik zijn en door wie
- specifieke processen in het geheugen laden zodra er geheugenruimte
- vrijgekomen geheugenruimte naar behoefte toewijzen en vrijgeven
C. BESTANDENBEHEER
Een bestand is een verzameling verwante gegevens die worden gedefinieerd door de auteur ervan
(kunnen programma’s/broncode of gegevens zijn)
Gegevensbestanden kunnen numeriek, alfabetisch, alfanumeriek en binair zijn.
Er kan ook een onderscheid gemaakt worden tussen niet-opgemaakte bestanden en bestanden met een
strikte opmaak
Het OS is verantwoordelijk voor de volgende taken m.b.t bestandenbeheer
- bestanden maken en verwijderen
- directory’s maken en verwijderen
- commando’s ondersteunen voor het manipuleren van bestanden en directory’s
- bestanden op secundaire opslagmedia mappen
- back-ups maken van bestanden op niet-vluchtige opslagmedia
pagina 8 van 56
The benefits of buying summaries with Stuvia:
Guaranteed quality through customer reviews
Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.
Quick and easy check-out
You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.
Focus on what matters
Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!
Frequently asked questions
What do I get when I buy this document?
You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.
Satisfaction guarantee: how does it work?
Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.
Who am I buying these notes from?
Stuvia is a marketplace, so you are not buying this document from us, but from seller EHB. Stuvia facilitates payment to the seller.
Will I be stuck with a subscription?
No, you only buy these notes for $4.26. You're not tied to anything after your purchase.