100% tevredenheidsgarantie Direct beschikbaar na betaling Zowel online als in PDF Je zit nergens aan vast
logo-home
Samenvatting Operating System Concepts - Abraham Silberschatz, Peter B. Galvin, Greg Gagne €6,99
In winkelwagen

Samenvatting

Samenvatting Operating System Concepts - Abraham Silberschatz, Peter B. Galvin, Greg Gagne

5 beoordelingen
 435 keer bekeken  19 keer verkocht

Nederlandse samenvatting van het boek Operating System Concepts - Abraham Silberschatz, Peter B. Galvin, Greg Gagne, 2014, gebruikt bij het vak Operating systems voor de bachelor Informatica (Computer Science) aan de Universiteit Leiden.

Laatste update van het document: 6 jaar geleden

Voorbeeld 8 van de 161  pagina's

  • Nee
  • H1 - h6 en h8 - h12
  • 2 maart 2018
  • 4 maart 2018
  • 161
  • 2016/2017
  • Samenvatting
book image

Titel boek:

Auteur(s):

  • Uitgave:
  • ISBN:
  • Druk:
Alle documenten voor dit vak (1)

5  beoordelingen

review-writer-avatar

Door: rómanhuiberts1 • 2 jaar geleden

review-writer-avatar

Door: rutger6 • 2 jaar geleden

review-writer-avatar

Door: j51 • 3 jaar geleden

review-writer-avatar

Door: sigovdlinde • 5 jaar geleden

review-writer-avatar

Door: lennartzc2 • 5 jaar geleden

avatar-seller
Stuvian95
Samenvatting
Operating System Concepts - A. Silberschatz, P.B. Galvin, G.
Gagne

, Inhoudsopgave

1 Introductie 4
1.1 Wat besturingssystemen doen . . . . . . . . . . . . . . . . . . . . 4
1.2 Computer-system organisatie . . . . . . . . . . . . . . . . . . . . 6
1.3 Computer-system architectuur . . . . . . . . . . . . . . . . . . . . 9
1.4 Besturingssysteem structuur . . . . . . . . . . . . . . . . . . . . . 11
1.5 Besturingssysteem operaties . . . . . . . . . . . . . . . . . . . . . 12
1.6 Proces beheer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.7 Geheugen beheer . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.8 Opslag beheer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.9 Bescherming en beveiliging . . . . . . . . . . . . . . . . . . . . . . 16
1.10 Kernel datastructuren . . . . . . . . . . . . . . . . . . . . . . . . 16
1.11 Computing omgevingen . . . . . . . . . . . . . . . . . . . . . . . . 17

2 Systeem structuren 21
2.1 Besturingssysteem diensten . . . . . . . . . . . . . . . . . . . . . 21
2.2 Gebruikers en besturingssysteem interface . . . . . . . . . . . . . 22
2.3 Systeem aanroepen . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4 Typen systeem aanroepen . . . . . . . . . . . . . . . . . . . . . . 24
2.5 Systeem programma’s . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.6 Besturingssysteem ontwerp en implementatie . . . . . . . . . . . . 28
2.7 Besturingssysteem structuur . . . . . . . . . . . . . . . . . . . . . 29
2.8 Besturingssysteem debugging . . . . . . . . . . . . . . . . . . . . 30
2.10 Systeem boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3 Het proces concept 32
3.1 Proces concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.2 Plannen van processen . . . . . . . . . . . . . . . . . . . . . . . . 33
3.3 Operaties op processen . . . . . . . . . . . . . . . . . . . . . . . . 36
3.4 Communicatie tussen processen . . . . . . . . . . . . . . . . . . . 37
3.6 Communicatie in client-server systemen . . . . . . . . . . . . . . . 41




1

,4 Multithreaded programmeren 43
4.1 Overzicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.2 Multicore programming . . . . . . . . . . . . . . . . . . . . . . . . 44
4.3 Multithreading modellen . . . . . . . . . . . . . . . . . . . . . . . 45
4.4 Thread libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.5 Impliciet threading . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.6 Threading problemen . . . . . . . . . . . . . . . . . . . . . . . . . 48

5 Proces planning 51
5.1 Basis concepten . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.2 Planning criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.3 Plannings algoritmen . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.4 Thread planning . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.5 Multi-processor planning . . . . . . . . . . . . . . . . . . . . . . . 57
5.6 Real-Time CPU planning . . . . . . . . . . . . . . . . . . . . . . . 59
5.8 Algoritme evaluatie . . . . . . . . . . . . . . . . . . . . . . . . . . 62

6 Synchronisatie 65
6.1 Achtergrond . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
6.2 Het kritische-sectie probleem . . . . . . . . . . . . . . . . . . . . . 65
6.3 Peterson’s oplossing . . . . . . . . . . . . . . . . . . . . . . . . . . 67
6.4 Synchronisatie hardware . . . . . . . . . . . . . . . . . . . . . . . 68
6.5 Mutex locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
6.6 Semaphores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
6.7 Klassieke problemen van synchronisatie . . . . . . . . . . . . . . . 75
6.10 Alternatieve aanpakken . . . . . . . . . . . . . . . . . . . . . . . . 78

8 Geheugenbeheer strategieën 81
8.1 Achtergrond . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
8.2 Swapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
8.3 Aaneengrenzende geheugen allocatie . . . . . . . . . . . . . . . . . 86
8.4 Segmentatie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
8.5 Paging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
8.6 De structuur van de page table . . . . . . . . . . . . . . . . . . . 94

9 Virtueel geheugen beheer 98
9.1 Achtergrond . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
9.2 Demand paging . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
9.3 Copy-on-Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
9.4 Pages vervangen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
9.5 Allocatie van frames . . . . . . . . . . . . . . . . . . . . . . . . . 107
9.6 Thrashing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
9.7 Geheugen ge-mapped bestanden . . . . . . . . . . . . . . . . . . . 112


2

, 9.9 Overige overwegingen . . . . . . . . . . . . . . . . . . . . . . . . . 113

10 Bestandensysteem 117
10.1 Het concept bestand . . . . . . . . . . . . . . . . . . . . . . . . . 117
10.2 Toegangsmethoden . . . . . . . . . . . . . . . . . . . . . . . . . . 121
10.3 Map en schijfstructuren . . . . . . . . . . . . . . . . . . . . . . . 123
10.4 Mounting in het bestandensysteem . . . . . . . . . . . . . . . . . 127
10.5 Delen van bestanden . . . . . . . . . . . . . . . . . . . . . . . . . 128
10.6 Bescherming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

11 Implementeren van bestandsystemen 132
11.1 Structuur van een bestanden systeem . . . . . . . . . . . . . . . . 132
11.2 Implementatie van een bestanden systeem . . . . . . . . . . . . . 134
11.3 Mappenstructuur implementatie . . . . . . . . . . . . . . . . . . . 137
11.4 Allocatie methoden . . . . . . . . . . . . . . . . . . . . . . . . . . 138
11.5 Beheren van vrije ruimten . . . . . . . . . . . . . . . . . . . . . . 141
11.6 Efficiëntie en prestatie . . . . . . . . . . . . . . . . . . . . . . . . 143
11.7 Herstel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

12 Massa opslag structuur 146
12.1 Overzicht van de massa opslag structuur . . . . . . . . . . . . . . 146
12.2 Schijf structuur . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
12.3 Schijf attachment . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
12.4 Schijf planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
12.5 Schijf beheer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
12.6 Swap-space beheer . . . . . . . . . . . . . . . . . . . . . . . . . . 155
12.7 RAID structuur . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157




3

, Hoofdstuk 1

Introductie

1.1 Wat besturingssystemen doen
Een operating system is een programma dat optreedt als de bemiddelaar tus-
sen de gebruikers van een computer en de hardware erop. De doelen van een
besturingsysteem zijn:

• Het uitvoeren van gebruikersprogramma’s en het vergemakkelijken van het
oplossen van gebruikersproblemen.

• Het computersysteem makkelijker maken in gebruik.

• De computer hardware op efficiënte wijze gebruiken.

Een computersysteem kan opgedeeld worden in vier componenten:

1. Hardware: verschaft de basis computer resources zoals de CPU, het geheu-
gen en I/O apparaten.

2. Besturingssysteem: controleert en coördineert het gebruik van de hardware
tussen verschillende applicaties en gebruikers.

3. Applicaties: definiëren de manier waarop de resources in het systeem ge-
bruikt worden voor het oplossen van problemen van de gebruikers. Voor-
beelden hiervan zijn woordprocessoren, compilers, webbrowsers, database
systemen en videospellen.

4. Gebruikers: dit kunnen personen, machines of andere computers zijn.




4

,Gebruikersweergave
De manier waarop een gebruiker een computer ziet hangt af van de gebruikte
interface.

• Gebruikers willen gemak, ease of use en good performance. Ze zijn niet
geı̈nteresseerd in resource utilization.

• Meerdere gebruikers zitten achter terminals die verbonden zijn met een
mainframe of minicomputer. Deze gebruikers delen de resources en wil-
len wellicht informatie uitwisselen. Dit type computer moet alle gebruikers
tevreden houden. In dit geval is resource utilization wel degelijk belangrijk.

• Gebruikers zitten achter workstations die verbonden zijn met andere net-
werken van workstations en servers. Deze gebruikers specifieke resources
tot hun beschikking, maar delen ook een aantal resources zoals netwerken
en servers. Het besturingssysteem moet in dit geval een goede balans tussen
individuele bruikbaarheid en resource gebruik vinden.

• Handheld computers zijn weer resource poor en worden juist geoptimali-
seerd op vlakken als bruikbaarheid en batterij levensduur.

• Sommige systemen hebben helemaal geen of een zeer beperkte interface,
zoals embedded computers in apparaten en auto’s.


Systeemweergave
De computer kan een besturingssysteem op twee manieren zien:



5

, Resource allocator: het besturingssysteem beheert alle resources en be-
sluit over de allocatie ervan op zo’n wijze dat het systeem efficiënt is en de
resources eerlijk verdeeld zijn.

Control program: het besturingssysteem beheert de uitvoer van pro-
gramma’s om fouten en onjuist gebruik van de computer te voorkomen.


Besturingssystemen definiëren
Een besturingssysteem kan dus op allerlei manieren gedefinieerd worden. Een
goede omschrijving is ”alles wat de verkoper meestuurt, wanneer je een bestu-
ringssysteem bestelt”. De kernel is het ene programma op de computer dat altijd
wordt uitgevoerd. Alle het andere is ofwel een system program (meegestuurd
met het besturingssysteem), ofwel een applicatie.


1.2 Computer-system organisatie
Computer systeem operatie
Bij het opstarten of rebooten van een computer wordt het bootstrap program
geladen. Deze staat meestal opgeslagen in ROM of EPROM en staat bekend als
firmware. Het zorgt voor de initialisatie van alle aspecten van het systeem, het
laden van de besturingssysteem kernel en het starten van de uitvoering.

Een modern, algemeen computersysteem bestaat uit één of meer CPU’s en een
aantal apparaat controllers die verbonden zijn met een gemeenschappelijke bus
die toegang tot het gedeelde geheugen verschaft. De CPU en apparaat controllers
kunnen parallel uitgevoerd worden, ze strijden dan om CPU cycles.




Daarnaast heeft elke apparaat controller een lokale buffer. Alle I/O wordt dan
verplaatst van het apparaat naar de lokale buffer van diens controller. De CPU
verplaatst data van en naar main memory en vanuit daar eventueel van en naar
lokale buffers. De device controller informeert de CPU dat ie klaar is met zijn
operatie door middel van een interrupt. Een interrupt draagt de controle over

6

, aan de interrupt service routine. Dit wordt meestal gedaan door middel van de
interrupt vector die de adressen van alle service routines bevat. De interrupt
architecture moet het adres van de onderbroken (interrupted) instructie bewa-
ren. Een trap of exception is een software-gegenereerde interrupt veroorzaakt
door een foutmelding of gebruikersverzoek. We zeggen dat een besturingssysteem
interrupt driven is. Er wordt al volgt gehandeld bij interrupts: Het besturings-
systeem bewaart de huidige toestand van de CPU door de registers en de program
counter op te slaan. Vervolgens wordt bepaald om welk type interrupt het gaat
polling of vectored interrupt system. Vervolgens wordt door verschillende
stukjes code bepaald welke actie gedaan moet worden voor elke type interrupt.


1. Nadat I/O gestart is keert de controle pas weer terug naar het gebruikers-
programma als I/O voltooid is:

• De wacht instructie laat de CPU niks doen tot de volgende interrupt.
• Er vindt een wacht-loop plaats in de strijd om geheugentoegang.
• Er kan maximaal één I/O verzoek per keer uitstaan, er wordt niet aan
het simultaan verwerken van I/O verzoeken gedaan.

2. Nadat I/O gestart is keert de controle direct terug naar het gebruikerspro-
gramma zonder te wachten op de voltooiing van I/O:

• System call: stuurt een verzoek naar het besturingssysteem om de
gebruiker te laten wachten op het voltooien van de I/O.
• Device-status table: bevat een entrie voor elk I/O apparaat en bevat
diens type, adres en toestand.
• Het besturingssysteem indexeert die tabel om zo de status van het
apparaat te bepalen en de tabel te bewerken zodat de interrupt erin
verwerkt is.




7

Voordelen van het kopen van samenvattingen bij Stuvia op een rij:

Verzekerd van kwaliteit door reviews

Verzekerd van kwaliteit door reviews

Stuvia-klanten hebben meer dan 700.000 samenvattingen beoordeeld. Zo weet je zeker dat je de beste documenten koopt!

Snel en makkelijk kopen

Snel en makkelijk kopen

Je betaalt supersnel en eenmalig met iDeal, creditcard of Stuvia-tegoed voor de samenvatting. Zonder lidmaatschap.

Focus op de essentie

Focus op de essentie

Samenvattingen worden geschreven voor en door anderen. Daarom zijn de samenvattingen altijd betrouwbaar en actueel. Zo kom je snel tot de kern!

Veelgestelde vragen

Wat krijg ik als ik dit document koop?

Je krijgt een PDF, die direct beschikbaar is na je aankoop. Het gekochte document is altijd, overal en oneindig toegankelijk via je profiel.

Tevredenheidsgarantie: hoe werkt dat?

Onze tevredenheidsgarantie zorgt ervoor dat je altijd een studiedocument vindt dat goed bij je past. Je vult een formulier in en onze klantenservice regelt de rest.

Van wie koop ik deze samenvatting?

Stuvia is een marktplaats, je koop dit document dus niet van ons, maar van verkoper Stuvian95. Stuvia faciliteert de betaling aan de verkoper.

Zit ik meteen vast aan een abonnement?

Nee, je koopt alleen deze samenvatting voor €6,99. Je zit daarna nergens aan vast.

Is Stuvia te vertrouwen?

4,6 sterren op Google & Trustpilot (+1000 reviews)

Afgelopen 30 dagen zijn er 53022 samenvattingen verkocht

Opgericht in 2010, al 14 jaar dé plek om samenvattingen te kopen

Start met verkopen
€6,99  19x  verkocht
  • (5)
In winkelwagen
Toegevoegd