1TX Besturingssytemen - deel 1

Uit Diana's examenwiki

22 Januari 2020 - Tiebe Van Nieuwenhove

1) Waarom is een besturingssysteem dat interrupts gebruikt sneller. Verklaar en maak een tekening.

2) Concreet begint de processor instructies uit te voeren vanaf adres 0xFFFFFFF0. Wanneer de processor het geheugenadres 0xFFFFFFF0 opvraagt aan de geheugen controller, zal die echter geen bytes vanuit het werkgeheugen halen. Vanwaar haalt hij ze en wat is de naam die hier aan gegeven wordt?

3) Wat is een aaneengesloten bestand? Vergelijk dit met de niet-aaneengesloten bestanden.

4) Leg uit hoe het Best Fit en Worst Fit werken. Geef een voorbeeld waar we dezen zouden kunnen gebruiken.

5) Leg uit wat 2-level paging is en maak een tekening.

6) Maak een tijdlijn van met de volgorde waarin de verschillende processen uitgevoerd worden voor Round Robin & Shortest Remaining Time

7) Leg volgende begrippen uit:

  • Trap
  • Starvation
  • Interne fragmentatie

PE 2020 - Tiebe Van Nieuwenhove

Active directory

1.

  • Maak in de OU Employees de OU education aan. Maak in education 2 OU's die op hetzelfde niveau zitten: students & teachers.
  • Maak in teachers een user Teacher 1 aan en in students Student 1 aan.
  • Maak een groep Locker Access waar Student 1 in zit en een groep Coffee Room waar Teacher 1 in zit. Voeg de gebruikers van de groep Coffee Room toe aan de groep Locker Access (DIT MAG JE NIET HANDMATIG VOOR ELKE GEBRUIKER DOEN!)
  • Theorie: Wat is het verschil tussen een Organized Unit en een Security Group?

2.

  • Zorg ervooor dat de computers niet opnieuw automatisch opstarten wanneer er nog gebruikers ingelogd zijn na updates.
  • Maak een shortcut op de desktop van alle gebruikers in het domein naar de website: jynupper.com
  • Installeer op alle computers van de Teachers het programma emacs.
  • Enforce these Password policies
- Wachtwoorden moeten minimaal 8 charachters lang zijn, moeten elk jaar verandert worden en de laatste 5 wachtwoorden moeten onthoud worden.
- Wachtwoorden van teachers moeten minimaal 10 tekens lang zijn en moeten elk half jaar verandert worden.
- Studenten mogen hun wachtwoord maar om de 7 dagen veranderen
  • Stel dat de GPO om aan de de Control panel zo geconfigureerd is:
GPO status Kunnen ze aan de terminal?
Domein Disabled ja / nee
Employees Not Configured ja / nee
Teachers Enabled ja / nee
Students Not Configured ja / nee

FAT

We kregen een .bin bestand zoals tijdens de oefenzitting en er was gegeven dat een sector 512 bytes lang is en er is 1 sector per cluster. De FAT paritie start vanaf 0x11000, de data partitie start vanaf 0x25000.

1. Geef het unieke identificatienummer van de partitie.

2. Geef het Volume Serial Number.

3. Geef de short name, long name, last write date, last write time, attributen, eerste cluster van het volgende bestand:

   4150 0075 006E 0074 0042 000F 006D 5300
   3100 2E00 7800 6C00 7300 0000 7800 0000
   5055 4E54 4253 7E31 584C 5324 001E EC7C
   8A2A 332B 0000 A845 2B2B 4400 89EA 0000

4. Geef de opeenvolgende clusternummers van het bestand dat begint bij de logische cluster 0x07b6.

5. Geef de eerste 10 bytes van het bestand van de vorige oefening.

13 Juni 2019 Walschap

Leg volgende begrippen grondig uit:

  • trashing
  • daisy chaining
  • timesharing
  • master file table
  • PU-gebonden processen

dan open vragen:

waarom kan je met een RAM van 8GB een programma/bestand van 10GB downloaden (iets met virtual host)

5 eigenschappen EUFI

5 doelstellingen scheduling

paginatie tabel tekenen en uitleggen (werkgeheugen onderverdeeld in 4 frames en geheugengrootte is 16 bytes)

processor kan niet in de toekomst kijken, voor welk scheduling strategie is dit een probleem + wat is de oplossing

verschil tussen boomstructuur en acyclische structuur

welk interrupt request is gemaskeerd en welke kunnen niet gemaskeerd zijn (interne synchroon en externe asynchroon)

xxx Kirito-kun <3

FAT16 oplossingen

GPT

 find the disk GUID:
   F2 5A 52 C8 C3 C6 A4 94 46 0D 3C E6 87 7D 61 D7
 calculate the maximum partition size (use the first and last usable LBA's):
   first: 0022 (34)d
   last: 00 4F DE (20446)d
   max bytes: 10 450 944
 single partition entry:
   128 bytes

PARTITION ENTRY

 The size: 18 398 blocks or 9 419 776 bytes
 first block: block #2048
 offset: 0x100000


PARTITION LAYOUT

 How many copies of the FAT are there?
   2
 How large is one FAT?
   72 sectors, 36 864 bytes
 How many file/directory entries can be stored in the root directory?
   512 items
 How large is the root directory? (32 bytes/entry)
   512 * 32 = 16 384 bytes, of 32 sectoren
 Compute the offsets of the following sections
   Boot Sector = 0x1000000
   FAT 1 = 0x101000
   FAT 2 = 0x10A000
   Root dir = 0x113000
   Data section = 0x117000

DIRECTORY ENTRY

 INTERPRET 

filename = PROGRAMS Attributes = Directory last write time = 3:25:44 last write date = 26/10/2005 first logical cluster = 0140

 LIST (name, attributes, size and first cluster)

BS LABO - volume- 0000 (first cluster)
hello.txt - archived - 13 bytes - 0002h
docs - Directory - 0 bytes - 0003h
system - directory - 0 bytes - 0004h
building.jpg - none - 79829 bytes - 25h
nala.jpg - Read-only - 69508 bytes - C1
bill.jpg - archived - 13024 bytes - 15E

FAT how many clusters will the file bill.jpg occupy?
#clusters = 26 clusters
first physical cluster of bill.jpg?
logical = 15E => offset = (15E - 2)*200 + 0x117000 = 0x142800


RECONTSTRUCT POEM 1) 151 2) 01D6 3) 0195 4) 018a 5) 15d 6) 1ae 7) 023a 8) 1fe (9) FFFF)

poem: i feel like i haven't been read right
for 10 years of drops from heights
waiting for scandisk
to repair me
your os says let's go
but my boot sector says no
if you want to read me, there's a proper way
I'm a floppy in a disk drive, you gotta format me the right way


LONG FILENAMES 1) DOCS subdirectory = ox117000 + ((0003 - 2 )*200) = 0x117200 2) short = QUESTI~1 3) long = "questions exam operating systems (2017)"


RECOVERING DELETED FILES SYSTEM subdirectory = 0x117000 + ((0004 - 2) * 200) = 0x117400
directx.log
first cluster = 0020 (offset data 0x11AC00)

Augustus 2017 Strypsteen

2u tijd, volledig schriftelijk, niks meenemen.

1. Geef 11 stappen van bootproces (windows)

2. Leg uit soft (symbolic) en hard links. Leg uit: dangling pointers.

3. Geef limitaties BIOS.

4. Welke info op PCB? Welke processen in ready queue? Hoe wordt er naar verwezen?

5. Hoe gebeurt hardware interrupt? Geef alle stappen in schema. Leg uit: trap.

6. Waarom gaat een procestoestand van geblokkeerd/suspend => geblokkeerd? Wat zorgt ervoor dat een proces van geblokkeerd => gereed gaat? Waarom toestand van running naar ready?

7. Inodes van 10 blokken, een single, een double en een triple indirect pointer. Blokken van 8kB en adressen van 4B. Geef de grootte bij geen, 1 en alle indirecte pointers.

8. 100 blokken bestandssysteem, hoeveel lees/schrijf I/O operaties voor directe, gelinkte en geïndexeerde allocatie.

9. AD vraag

10. FAT vraag

Juni 2016 Strypsteen

1. Wat is een trap?

2. Welke zijn de 3 minimum services van een microkernel?

3. Wat is het grootste nadeel van een microkernel?

4. Geef alle kenmerken van een procescontrollerblok.

5. Wat is een interrupthandler?

6. Wat is het verschil tussen acilic tree en tree bij directorys?

Juni 2015 Strypsteen

1. Overzicht van 2 partities (1 primaire en 1 extended). Benoem/beschrijf een aantal onderdelen (o.a. PBR, boot sector, EMBR) en geef de grootte van het lege deel na de MBR.

2. Teken een schema van een interrupt. Waarin verschilt een interrupt van een gewone subroutine?

3. Benoem alle onderdelen van fig. 2.11 in het handboek.

4. Geef 4 mogelijke voordelen van Symmetrical Multi Processing.

5. Hoeveel lees- en schrijfbewerkingen zijn er nodig om een blok in het midden toe te voegen bij 100 aaneengesloten, gelinkte en indexblokken + verantwoord.

6. Inodes van 12 blokken, een single, een double en een triple indirect pointer. Blokken van 8kB en adressen van 8B. Geef de grootte bij geen, 1 en alle indirecte pointers.

  • Geen: 12 directe verwijzingen naar elk 8kB geeft 96kB.
  • single indirect + direct: 8kB/8B adressen/blok = 1000 adressen/blok => 1000*8kB (S indirect) + 96 kB (direct) = 8.096.000B = 8MB
  • S,D,T indirect en direct: [1000^3 (T indirect) + 1000^2 (D indirect) + 1000 (S indirect) + 12 (direct)] * 8kB = 1.001.001.012 * 8000B = 8.008.008.096.000B = 8TB

7. Van welke status naar welke status gaat een proces als het preëmptief behandeld wordt en waarom?

8. Uit welke 3 onderdelen bestaat een procesbesturingsblok + geef van elk onderdeel een voorbeeld.

Juni 2014 Strypsteen

1. Tekening van de harde schijf, er staan overal nummertjes en jij moet dan zeggen wat dit is of hoe groot iets is.

2. Geef de verschillende soorten interrupts

  • Programma
  • Timer
  • I/o
  • Hardwarefout

3. Geef de hardware features van een resident monitor

  • geheugenbeveiliging
  • timer
  • geprivilegieerde instructies
  • interrupts

4. Wat is deadlock + geef een vb

2 processen hebben dezelfde 2 bronnen nodig hebben om verder uitgevoerd te kunnen worden.
Ze hebben elk al 1 bron maar wachten op elkaar tot als het ene proces de bron vrijgeefd.

5. Er is een foto gegeven van hoe er blokvorming ontstaat.

  • Duid aan waar de blokvorming optreedt
  • Benoem de delen die hier mee in contact komen

6. Waarom gaat een procestoestand van geblokkeerd/suspend => geblokkeerd

  • Dit is zeldzaam maar gebeurt meestal wanneer een hoge-prioriteit proces op iets wacht dat bijna klaar is..
Dan kan BS deze al naar RAM brengen zodat die sneller uitgevoerd zal kunnen worden nadat event waarvoor die wacht plaats vindt.
  • Wat zorgt ervoor dat een proces van geblokkeerd => gereed gaat
Als de gebeurtenis optreedt waar het proces op wacht

7. Invul oefening over bitmap, waar ge 0 (vrije plek) en 1 (plek is bezet) moet invullen

8. Bestandstoewjzing oefening:

Er zijn 100 blokken, hoeveel lees en schrijf bewerkingen worden er uitgevoerd voor de volgende methodes:
  • Aaneengesloten toewijzing
  • Kettingtoewijzing
  • Indextoewijzing

9. Geef de drie soorten uitvoeringen van het besturingssyteem en teken het(+ wat uitleg)

  • Procesloze kernel
  • Uitvoering binnen gebruikersprocessen
  • Op processen gebaseerd besturingssysteem

duur 90 min

Opdracht linux: Opdracht 1: In de directory /home/ldapusers staan home directories voor alle gebruikers. Toon al deze directories.(enkel de namen) Opdracht 2: Laat deze lijst gebruikers weggeschreven worden naar een bestand users.txt in je eigen home directory. Opdracht 3: Gebruik Gzip om deze lijst te comprimeren naar users.gz Opdracht 4: Vraag de bestandsgroottes op van user.txt en users.gz

Active directory: 1 maak nieuwe gebruikersgroep aan met naam BS1 2 Voer er stud1 en lect 1 toe als leden 3 maak nieuwe subdirectory in bestand op c schijf 4 verwijder de leesrechten (users) van dat bestand 5 zorg ervoor dat leden uit groep BS1 leesrechten krijgen 6 Zorg dat ook alle lectoren volledige controle krijgen over bs1

Augustus 2013 Strypsteen

deel 1: opstarten

1) geef de 11 stappen bij het opstarten van een windows xp partitie.

deel 2: batchsystemen

2) wat zijn de 4 hardware features die essentieel zijn voor bij een monitor?

3) leg uit aan de hand van vorige vraag de kernel en user mode.

4) wat zijn de voordelen en nadelen van vaste grootte en variabele grootte geheugen?

deel 3: processen

5) een proces wordt preëmptief behandeld. wat is het en wanneer gebeurt het?
6) wat gebeurt er als een proces van toestand geblokkeerd opgeschort naar geblokkeerd word verplaatst?
7) wat gebeurt er als een proces wordt verplaatst van gereed naar gereed opgeschort?

deel 4: Linux

deel 5 : fat

8) Hoe groot is de file?
9) Wat zijn de fat-entry nummers?
10) Wat zijn de dataclusters die erbij horen?

deel 6: Active Directory

11) Er zijn verschillende group policies van GP01 - GP05. Wat als de "disable command prompt" in de group policy?

OU GP status
gt GP01 disabled
GP02 not configured
TI GP03 enabled
GP04 disabled
KHL GP05 not configured


wat is de status van:

  • gt: enabled / disabled
  • TI: enabled / disabled
  • KHL: enabled / disabled

12) Leg uit: permissies zijn cumulatief. Hoe werkt dit met 'Deny'?

Juni 2013

Voorbeeldexamenvragen

Geef de diensten die het besturingssysteem aanbiedt :

- Programma-ontwikkeling
- Programma-uitvoering
- Toegang tot I/O-apparaten
- Beheerde toegang tot bestanden
- Toegang tot het systeem
- Opsporen en afhandelen van errors
- Administratie

Welke zijn de oorzaken tot ontwikkeling van een besturingssysteem:

- Hardwarevernieuwing
- Nieuwe diensten
- Verbeteringen

Geef de hoofdtaken van het beheer van opslag :

- Procesisolatie
- Automatische toewijzing en beheer
- Ondersteuning modulair programmeren
- Bescherming en toegangsbeheer
- Langetermijnopslag

Geef de 4 categorieën van beveiliging die door het besturingssysteem gebruikt worden :

- Beschikbaarheid
- Gegevensintegriteit
- Authenticiteit
- Vertrouwelijkheid

Welke zijn de 3 doelen m.b.t. scheduling van processen:

- Rechtvaardigheid
- Efficiëntie
- Gedifferentieerd reactievermogen

Complexe besturingssystemen hebben standaard altijd meer problemen als simpele, geef deze problemen bij complexe besturingssystemen:

- Altijd te laat uitgebracht
- Altijd gevoelig voor virussen etc.
- Altijd geplaagd door bugs
- Prestaties vaak niet zoals verwacht


Maak de lijst van niveaus binnen een besturingssysteem:

1. Elektronische schakelingen
2. Instructieset
3. Procedures
4. Interrupts
5. Primitieve processen
6. Lokale secundaire opslag
7. Virtueel geheugen
8. Communicatie
9. Bestandsysteem
10. Apparaten
11. Directory’s
12. Gebruikersprocessen
13. Shell

Geef de elementen van een PCB (procesbesturingsblok):

- Identificatienummer
- Toestand
- Prioriteit
- Programmateller
- Geheugenwijzers
- Contextgegevens
- I/O-toestandsinformatie
- Beheersinformatie

Geef de 4 redenen voor het starten van een proces:

- Nieuwe batchtaak
- Interactieve aanmelding (logon)
- Gecreëerd door besturingssysteem omwille van een dienst
- Verwekt door bestaand proces

Geef alle redenen voor het beëindigen van een proces:

- Normale voltooiing
- Tijdslimiet overschreden
- Onvoldoende beschikbaar geheugen
- Overtreding geheugengrens
- Beschermingsfout
- Rekenkundige fout
- Tijd verstreken
- I/O-fout
- Ongeldige instructie
- Geprivilegieerde instructie
- Onjuist gebruik van gegevens
- Ingreep van gebruiker/besturingssysteem
- Beëindiging ouderproces
- Verzoek van ouderproces

Wat zijn de kenmerken van een opgeschort proces:

- Niet onmiddellijk beschikbaar voor uitvoering
- Kan wachten op gebeurtenis
- Werd in opgeschorte toestand geplaatst om uitvoering te verhinderen
- Kan opgeschorte toestand niet verlaten zonder expliciete opdracht door ander proces

Welke zijn de redenen voor het opschorten van een proces:

- Swapping
- Andere reden van besturingssysteem
- Verzoek interactieve gebruiker
- Timing
- Verzoek ouderproces

Geef de structuur van de creatie van een proces:

1. Procesidentificatie toewijzen aan nieuw proces
2. Ruimte toewijzen aan het proces
3. PCB initialiseren
4. Juiste koppelingen instellen
5. Eventueel andere gegevensstructuren maken / uitbreiden

Geef de volledige tabel van elementen van de standaard bestandsdirectory:

  • Basisinformatie

- Bestandsnaam
- Bestandstype
- Bestandsorganisatie

  • Adresinformatie

- Volume
- Beginadres
- Gebruikte grootte
- Toegewezen grootte

  • Toegangscontrole-informatie

- Eigenaar
- Toegangs-informatie
- Toelaatbare acties

  • Gebruiksinformatie

- Datum gecreëerd
- Identiteit maker
- Datum laatste leestoegang
- Identiteit laatste lezer
- Datum laatste wijziging
- Identiteit laatste wijziging
- Datum laatste reservekopie
- Huidig gebruik

Geef de structuur van het wisselen van processen:

1. Opslaan context huidig proces
2. Bijwerken PCB (toestand veranderen
3. PCB naar juiste wachtrij verplaatsen
4. Selecteren van nieuw proces
5. Bijwerken PCB geselecteerde proces (toestand op actief zetten)
6. Bijwerken gegevensstructuren voor geheugenbeheer
7. Terugbrengen context van dit proces dat voorheen was opgeslagen

Geef de kenmerken van NTFS:

- Herstelbaarheid
- Beveiliging
- Grote schijven en bestanden
- Meervoudige gegevensstromen
- Algemene indexeringsvoorziening

Piphi

  • 1) (Opstarten):
    • FAT - 16 C// en D// schijf gegeven.
    • Zeggen wat wat is.
    • 1ste 2 bytes van iets kunnen geven.
  • 2) (Leg uit):
      • Multiprogramming, time-sharing, real-time transactie systeem
  • 3):
    • Geef beheersstructuren proces:
    • Geef van iedere categorie een voorbeeld:
  • 4) (Processen):
    • Schema tekenen met 2 opgeschorte toestanden
    • Leg de pijlen uit die met de opgeschorte toestanden te maken hebben
  • 5) (Bestanden):
    • Geef structuur
    • Veld (field): ....
    • Record: ....
    • Bestand (file): ....
    • Database: ...

Strypsteen

1),2),3),4) Hetzelfde als PiPhi

Ook nog bij 2) : De problemen dat destijds ontstonden door deze ontwikkelingen. (Onjuiste syncronisatie, mutual exclusions, niet-vastomschreven programmawerking en deadlocks; uitleg geven moest niet)

  • 5) (bestanden)
    • UNIX-inode met 15 blokken ( 12 indirect )
    • Adres grootte van 8B block grootte van 8KB
  Antwoord (gemeenschappelijk deel): aantal adressen dat in een block op de schijf kunnen: block grootte / adres grootte = 8KB / 8B = 1024
      • Hoe groot mag een bestand zijn als het alleen de niveaus van indirecte toegang mag gebruiken?
  8KB / block * ( 12 * 1024 blokken ) = 98304 KB = 96 MB
      • Hoe groot mag een bestand zijn als men alle niveaus mag gebruiken?
  8KB / block * ( ( 3 + 12 * 1024 ) blokken ) = 98328 KB = 96.02 MB
  Dit hangt er wel van af wat ze precies bedoelen, als "alle niveaus" direct + enkelvoudig indirect is, is het antwoord het bovenstaande... vraag wat er wordt bedoeld aan de lector

bron waarop ik me baseer om deze berekeningen te doen : http://stackoverflow.com/questions/4383493/what-is-the-maximum-file-size-in-each-of-these-cases

6) Vraag in verband met de verschillende lagen

AUGUSTUS 2012

Strypsteen

  • 1) Leg het bootproces van een computer uit met als actieve partitie Windows XP. (11 stappen)
  • 2) Teken het procestoestandschema met 2 opschortingen, en benoem alle pijlen.
  • 3) Leg uit:
    • Deadlock
    • Failed Mutual Exclusion
    • Symmetrische multiprocessing
    • Resident monitor
  • 4) Welke 2 manieren zijn er om interrupts te behandelen? + Schets. En geef voor-en nadelen.
  • 5) UNIX-inode met 13 blokken: 10 indirecte. Adres grootte van 1024 bytes (1kb), block grootte van 4b.
    • Hoe groot mag een bestand zijn als het alleen de niveaus van indirecte toegang mag gebruiken?
    • Hoe groot mag een bestand zijn als men alle niveaus mag gebruiken?

Toon berekening.

  • 6) Vraag over LINUX.
  • 7) Vraag over FAT 12.

JUNI 2012

Strypsteen

  • 1) Geef de verschillende klassen (4) interrupts. Teken de instructiecyclus met interrupts.
  • 2) Verklaar volgende begrippen + Schets
    • Interne fragmentatie
    • Externe fragmentatie
    • Aaneengesloten bestandstoewijzing
    • Kettingtoewijzing
    • Indextoewijzing
  • 3) Batchmultiprogramming versus Timesharing: Wat is hun hoofddoel?
  • 4) Leg het bootprocess van een PC uit, van POST tot en met het PBR-startcommando.
    Leg de afkortingen die je gebruikt ook uit
  • 5)a) Teken het procestoestandschema met 2 opschortingen.
   b) Waarom is toestand opgeschort toegevoegd?
 c) Geef onderlinge verbanden tussen de toestanden met opschortingen.


JUNI Pellegrims

  • Idem examen Strypsteen

2011

Geens

  • Verklaar volgende begrippen en geef onderliggend verband
    • MBR
    • Partitietabel
    • EMBR
    • PBR
  • Vraag 2: Interrupts
    • Geef de instructiecyclus met interrupt
    • Geef de stappen van een interruptverwerking (9 stappen)
    • Hoe werkt multiprogrammering met interrupts?
  • Vraag 3: Geheugen
    • Dilemma van geheugen snelheid/capaciteit/kosten
    • Principe van lokaliteit
    • Leg uit: LRU
  • Vraag 4: Geef het procestoestandschema van 2 opschortingen
  • Vraag 5: bestandbeheer
    • 3 zinnen, zeggen of ze waar of fout waren en waarom
    • De 3 soorten geheugenblokken en hun voor en nadelen
  • Vraag 6: FAT12
    • Je krijgt een descriptortabel en een klein stukje van de FAT tabel.
    • Geef de filesize
    • Geef de eerste cluster
    • Geef de nummers van de clusters van de dataclusters
    • Met 512 bytes clusters, hoeveel overschot heb je in de datatabel
    • Geef de Engelse term voor fragmentatie.

Strypsteen

  • Idem examen Geens voor vraag 1, 2, 4 en 6
  • leg uit:
    • Failed Mutual Exclusion
    • Deadlock
    • Hoe het splitsen van een proces in drie onderdelen het management van processen vereenvoudigd heeft.
  • inode met 13 blokken, adres grootte van 4b, block grootte van 400b:
    • Hoe groot mag een bestand zijn als het geen indirecte toegang mag gebruiken (13 * 400b = 5,2 kb)
    • Hoe groot mag een bestand zijn als het één niveau van indirecte toegang mag gebruiken (400b/4b) = 100 + 12 blocks, 112 blocks * 400b = 44.8kb
    • Hoe groot mag een bestand zijn als het drie niveaus van indirecte toegang mag gebruiken (12 * 100 * 100 * 100 * 400b)= 480mb

edit: dees is fout volgens mij ze... dit is wat het zou moeten zijn:

    • Hoe groot mag een bestand zijn als het geen indirecte toegang mag gebruiken: 10*400b = 4kb
(Moet het niet 12*400 zijn? Er zijn 12 blokken voor directe toegang.)
    • Hoe groot mag een bestand zijn als het één niveau van indirecte toegang mag gebruiken: 4kb + 256*400b = 106,4kb
(Waar komt 256 vandaan? Uitleg had mooi geweest --> bekijk pagina 627 van uw boek. Het grijze kadertje)
    • Hoe groot mag een bestand zijn als het drie niveaus van indirecte toegang mag gebruiken: 4kb + 106,4kb + 256*256*400b + 256*256*256*400b = 6,7 GB

Juni - 2010

Strypsteen

  • Leg het bootproces van een computer uit met als actieve partitie Windows XP. (11 stappen)
  • Interruptverwerking bestaat uit 9 stappen.
    • Bij welke 4 stappen word de stack gebruikt ?
    • Geef ook bij elke stap welke hardware of software deze stap uitvoert
  • Leg multiprogramming uit (schema gegeven, gewoon in te vullen)
  • Processen
    • Waarom zij er opgeschorte processes ?
    • Welke 2 soorten opgeschorte proccessen zijn er ?
    • Leg de 2 processen uit.
    • Hoe komt een proces in deze statussen?
  • Oefening op Fat 12

Geens

  • Bespreek unix procestoestand diagram: entiteiten en relaties
  • Bespreek en los op: unix inode(-12?)
  • leg bootproces uit en leg connectie met linux of windows
  • inzichtvraag: fat-labo: een vriend gaat op vakantie maar wist perongeluk wat foto's van zijn camera met flashkaartje. Welke tips heb je voor hem? hoe kan je de foto's recupereren met enkel een hex-editor. Leg stap voor stap uit.


Herhalingsvragen boek Stallings (2010/2011)

Hoofdstuk 1


1.1 Benoem en beschrijf beknopt de vier belangrijkste elementen van een computer.


  • - De processor beheert de werking van de computer en voert de functies voor gegevensverwerking uit
  • - Het hoofdgeheugen bevat gegevens en programma’s? Dit geheugen is meestal vluchtig. Hoofdgeheugen wordt ook wel reëel of primair geheugen genoemd.
  • - I/O-modules verplaatsen gegevens tussen de computer en zijn externe omgeving. De externe omgeving bestaat uit uiteenlopende apparaten zoals secundair geheugen, diskettes, communicatieapparatuur en werkstations.
  • - De systeembus verzorgt de communicatie tussen de processors, het hoofdgeheugen en de I/O-modules.


1.2 Definieer de twee belangrijkste categorieën processorregisters.

  • - Registers die zichtbaar zijn voor de gebruiker: bieden de programmeur om in machine- of assembleertaal verwijzingen naar het hoofdgeheugen te minimaliseren door registergebruik te optimaliseren.
  • - Stuur en statusregisters: worden gebruikt door de processor voor het besturen van de werking van de processor en door geprivilegieerde routines van het besturingssysteem.


1.3 Wat zijn, in algemene termen, de vier te onderscheiden acties die een machine-instructie kan specificeren?


  • - Processorgeheugen: gegevens kunnen worden overgebracht van de processor naar het geheugen of van het geheugen naar de processor
  • - Processor-I/O: gegevens kunnen worden uitgewisseld met een randapparaat door ze over te sturen tussen de processor en een I/O-module.
  • - Gegevensverwerking: de processor kan een rekenkunde of logische bewerking uitvoeren op gegevens
  • - Besturing: een instructie kan de volgorde van uitvoering wijzigen. Bv in instructie 149 staat dat er naar 182 moet gesprongen worden.


1.4 Wat is een interrupt?


Een interrupt is feitelijk een onderbreking. Hiermee kan de processor andere instructies uitvoeren terwijl een tragere bewerking aan de gang is. Als deze bewerking gedaan is, stuurt het betreffende apparaat een interrupt, waardoor de processor weet dat hij verder kan gaan met bv de I/O.


1.5 Op welke manier worden de verschillende interrupts afgehandeld?


Indien bedoeld bij meervoudige interrupts:

  • o Uitschakelen van interrupts terwijl er een interrupt wordt verwerkt, na afhandeling doet de processor deze
  • o Nesten van interrupts: als er een interrupt bezig is, en er komt een nieuwe aan, met een hogere prioriteit, dan wordt deze genest, hierna wordt er verder gegaan met de eerste.


1.6 Welke kenmerken onderscheiden de verschillende elementen van een geheugenhiërarchie?


Als men van boven naar onder de hiërarchie doorloopt, gebeurd het volgende:

  1. a. De kosten per bit dalen
  2. b. De capaciteit neemt toe
  3. c. De toegangstijd neemt toe
  4. d. De frequentie van de processortoegang tot het geheugen neemt af


1.7 Wat is cachegeheugen?


Een klein, snel geheugen tussen de processor en het hoofdgeheugen. Het bevat een klein gedeelte van het hoofdgeheugen dat hierdoor veel sneller bereikbaar is. De cache werkt dus als een buffer tussen het hoofdgeheugen en de processor, waarmee een intern geheugen ontstaat met 2 niveaus, Dit geeft betere prestaties dan met 1 niveau. (Dankzij lokaliteit). 

1.8 Benoem en beschrijf beknopt drie technieken voor I/O-bewerkingen.

  • Geprogrammeerde I/O: Processor doet oproep voor I/O-bewerking, I/O-module geeft echter geen waarschuwing wanneer deze klaar is, de processor zal zelf periodiek moeten kijken of de module al klaar is. Instructieset bevat daarom volgende categorieën:
  1. o Besturen: extern apparaat activeren en vertellen wat het moet doen
  2. o Status controleren
  3. o Lezen en schrijven
  • Tijdverslinden proces dat de processor onnodig bezighoudt
  • - Interruptgestuurde I/O: Processor geeft opdracht voor I/O en gaat dan verder met iets anders, wanneer I/O-module klaar is, stuurt de module een interrupt, processor voert dan de gegevensoverdracht uit en hervat de vorige verwerking.
  • Dit is efficiënter doordat de processor niet meer nodeloos moet wachten, maar het verbruikt nog steeds veel processortijd.
  • - Directe geheugentoegang (DMA): De processor geeft een opdracht tot I/O, de DMA-module handelt de bewerking verder af zonder tussenkomst van de processor. Als dit klaar is stuurt de DMA-module een interrupt naar de processor. De processor is dus enkel betrokken bij het begin en het einde.


Hoofdstuk 2


2.1 Wat zijn de drie doelen van een ontwerp van een besturingssysteem?


  • - Gemak: het maakt een computer makkelijker te gebruiken.
  • - Efficiëntie: dankzij een besturingssysteem kunnen de systeembronnen efficiënt gebruikt worden
  • - Flexibiliteit: Een besturingssysteem moet zo zijn gemaakt dat het ontwikkelen, testen en introduceren van nieuwe systeemfuncties zo goed mogelijk is.


2.2 Wat is de kernel van een besturingssysteem?


De nucleus, dit bevat de meest gebruikte functies in het besturingssysteem. Bevindt zich in het hoofdgeheugen.


2.3 Wat is multiprogrammering?


Meerdere programma’s in het geheugen laden, en wanneer er een programma wacht op I/O, overschakelen naar een ander.


2.4 Wat is een proces?


  • - Een programma dat wordt uitgevoerd
  • - Een geactiveerd programma dat op een computer draait
  • - De entiteit die kan worden toegewezen aan en worden uitgevoerd door een processor
  • - Een eenheid van activiteit die wordt gekenmerkt door een enkelvoudig e, sequentiële verwerking (thread), een actuele toestand en een aantal bijbehorende systeembronnen


2.5 Hoe wordt de uitvoeringscontext van een proces door het besturingssysteem gebruikt?


Het wordt apart gehouden van het proces zelf. Hierin zitten bv registerinhouden.


2.6 Benoem en beschrijf beknopt vijf opslagmanagementverantwoordelijkheden van een standaardbesturingssysteem.


  • - Procesisolatie: Het besturingssysteem moet voorkomen dat onafhankelijke processen elkaars geheugen, gegevens of instructies, verstoren.
  • - Automatische toewijzing en beheer. Programma’s moeten waar nodig dynamisch worden verdeeld over de geheugenhiërarchie
  • - Ondersteuning voor modulair programmeren.
  • - Bescherming en toegangsbeheer. Door et delen van geheugen ontstaat de mogelijkheid dat een programma de geheugenruimte van een ander programma adresseert. Soms is dit gewenst, soms brengt het de stabiliteit in gevaar. Het besturingssysteem moet toestaan dat gedeelten van het geheugen op verschillende manieren toegankelijk zijn.
  • - Langetermijnopslag. Veel gebruikers en toepassingen vereisen middelen voor het opslaan van informatie gedurende langere perioden.


2.7 Bespreek het verschil tussen een reëel en virtueel adres?


Het virtuele adres wordt door het proces gebruikt om een woord aan te spreken, het bestaat uit een paginanummer en de offset. Het reëele adres is het eigenlijke adres binnen het geheugen.


2.8 Beschrijf de round-robin schedulingtechniek.


Alle processen in een wachtrij krijgen om beurten wat tijd van de scheduler.


2.9 Bespreek het verschil tussen een monolithische kernel en een microkernel.


Monolytische kernel is één kolossale kernel, deze verzorgt het overgrote deel van de functionaliteit van een besturingssysteem. Dit is meestal ook maar één groot proces met gedeelde adresruimte. Een microkernel is een kleine kernel die slechts enkele essentiële functies bevat, de andere diensten worden verzorgd door processen (of servers) die worden uitgevoerd in gebruikersmodus en worden behandeld zoals elk ander proces.


2.10 Wat is multithreading?


Een techniek waarbij een proces dat een toepassing uitvoert, wordt verdeeld in draden (threads) die tegelijkertijd kunnen uitgevoerd worden.
Een thread omvat een context (programmateller, registers,..) en een eigen gegevensruimte. Een thread wordt sequentieel uitgevoerd.
Een proces is een verzameling van een of meer threads.

Hoofdstuk 3


3.1 Wat is een instructiespoor?


De volgorde van instructies die voor een proces worden uitgevoerd


3.2 Welke algemene gebeurtenissen geven aanleiding tot het creëren van een proces?


  • - Nieuwe batchtaak
  • - Interactieve aanmelding (logon)
  • - Gecreëerd door het besturingssysteem om een dienst te verzorgen
  • - Verwekt door een bestaand proces


3.3 Geef een korte definitie van iedere toestand in het procesmodel van figuur 3-6.


  • - Actief (running): proces wordt uitgevoerd
  • - Gereed (ready): proces dat meteen uitgevoerd kan worden als het de gelegenheid krijgt
  • - Geblokkeerd (blocked) een proces dat niet uigevoerd kan worden totdat een bepaalde gebeurtenis optreedt
  • - Nieuw (new): een proces dat onlings is gecreeerd maar nog niet door het systeem is toegevoegd aan de verzameling met uitvoerbare processen
  • - Einde (exit): een proces dat door het besturingssysteem wordt ontslagen uit de groep uitvoerbare processen


3.4 Wat wordt bedoeld met het preëmptief onderbreken van een proces?


Een proces keert terug van kernelmodus naar gebruikersmodus maar de kernel onderbreekt het preemptief* om een proces met hogere prioriteit dat gereed staat in te roosteren. Ten opzichte van het toedelen (dispatching) vormen de processen in de twee toestanden preempted en ready to run in Memory echter één wachtrij.

preemptief: zonder dat het volledig is uitgevoerd of moet wachten op een gebeurtenis


3.5 Wat betekent het begrip swappen en wat is het doel ervan?


Het verplaatsen van een deel of het geheel van een proces van het hoofdgeheugen naar schijf.
Om plaats in het hoofdgeheugen vrij te maken door geblokkeerde processen naar de schijf te verplaatsen en deze dan de status opgeschort (suspended) mee te geven.


3.6 Waarom bevat figuur 3-9 twee geblokkeerde toestanden?


Er is een geblokkeerde toestand die nog in het hoofdgeheugen zit, de andere is al geswapped, en bevindt zich nu op de schijf.

3.7 Geef vier kenmerken van een opgeschort proces.


  • - Het proces is niet onmiddellijk beschikbaar voor uitvoering
  • - Het proces kan al of niet wachten op een gebeurtenis.
  • - Het proces werd in de toestand Opgeschort geplaatst door het proces zelf of door een ander om de uitvoering van het proces te verhinderen
  • - Het proces kan deze toestand niet verlaten tenzij een ander hiervoor expliciet een opdracht geeft


3.8 Voor welke soorten entiteiten houdt het besturingssysteem informatietabellen bij vanuit beheersoverwegingen?

    • - Geheugen
  • - I/O
  • - Bestand
  • - Proces


3.9 Geef drie algemene informatiecategorieën in een procesbesturingsblok.


  • Procesidentificatie
  • Processortoestandinformatie
  1. Registers
  2. stack
  • Procesbesturingsinformatie
  1. o Toestand
  2. o prioriteit


3.10 Waarom zijn twee verwerkingsmodi (gebruiker en kernel) nodig?


Het besturingssysteem en de belangrijkste tabellen van het besturingssysteem, zoals de procesbesturingsblokken moeten beschermd worden tegen verstoringen door gebruikersprogramma’s. In de kernelmodus heeft de software volledige controle over de processor en alle bijbehorende instructies, registers en geheugen. Dit is niet gewenst voor gebruikersprogramma’s.


3.11 Welke stappen voert het besturingssysteem uit bij het creëren van een nieuw proces?


  1. Het besturingssysteem wijst een unieke procesidentificatie toe aan het nieuwe proces.
  2. Het besturingssysteem wijst ruimte toe aan het proces
  3. Het procesbesturingsblok moet worden geïnitialiseerd
  4. De juiste koppelingen moeten worden ingesteld
  5. Soms moeten andere gegevensstructuren worden gemaakt of uitgebreid


3.12 Wat is het verschil tussen een interrupt en een val (trap)?


Interrupt wordt veroorzaakt door een of andere gebeurtenis die zich buiten het actieve proces bevindt en daarvan onafhankelijk is, bv voltooiing I/O
Val hangt samen met een fout of uitzonderingsconditie die wordt gegenereerd binnen het actieve proces zelf, bv ongeldige poging tot bestandstoegang


3.13 Geef drie voorbeelden van een interrupt.


  • - Klokinterrupt: Proces heeft maximaal toegestane uitvoeringstijd benut
  • - I/O-interrupt: Een I/O actie is opgetreden. Indien dit een gebeurtenis is waar ene proces op wacht, wordt dit proces van geblokkeerd naar gereed veranderd
  • - Geheugenfout: Processor krijgt een verwijzing naar een woordadres in het virtuele geheugen dat zich niet in het hoofdgeheugen bevindt. Processor geeft opdracht tot overzetten van secundair naar hoofdgeheugen en gaat dan verder met een ander proces. Als het overzetten klaar is, komt er een interrupt.


3.14 Wat is het verschil tussen een moduswisseling en een proceswisseling?


Moduswisseling is het wisselen van gebruikers naar kernel modus voor bv een interrupt, een proceswisseling is het veranderen van een status van een proces. Bv, van geblokkeerd naar gereed.


Hoofdstuk 12


12.1 Wat is het verschil tussen een veld en een record?


Een veld is een basiselement van gegevens, het bevat één waarde, bv achternaam, datum.
Een record is een verzameling gerelateerde velden die door bepaalde toepassingsprogramma’s als een eenheid kunnen worden behandeld. Het bevat dus velden.


12.2 Wat is het verschil tussen een bestand en een database?


Een bestand (file) is een verzameling vergelijkbare records. Gebruikers en toepassingen behandelen het bestand als één entiteit en verwijzen ernaar aan de hand van een naam. Heeft een unieke bestandsnaam.
Een database is een verzameling gerelateerde gegevens. Er bestaan expliciete relaties tussen gegevenselementen. Het bestaat uit een of meerdere bestanden.


12.3 Wat is een systeem voor bestandsbeheer?


Een verzameling systeemsoftware die diensten verzorgt voor gebruikers en toepassingen bij het gebruiken van bestanden.


12.4 Welke criteria zijn van belang bij het kiezen van een bestandsorganisatie(=logische structuur)?


  • - Korte toegangstijd
  • - Gemak van bijwerken
  • - Efficiënt gebruik van opslagruimte
  • - Onderhoudsgemak
  • - Betrouwbaarheid


12.5 Noem en beschrijf in het kort vijf vormen van bestandsorganisatie.


  • - Stapelbestand: eenvoudigste soort bestandsorganisatie, het is een stapel (pile). Gegevens worden verzameld in de volgorde waarin ze binnenkomen. Geen structuur, dus altijd volledig doorzoeken.
  • - Sequentieel bestand: Vaste indeling van records, alle records hebben dezelfde lengte een bestaan uit hetzelfde aantal velden met vaste lengte in specifieke volgorde. Bevat een sleutelveld.
  • - Index-sequentieel bestand: Omzeilt nadelen van sequentieel. Behoudt de hoofdkenmerk: records zijn ingedeeld op volgorde op basis van het sleutelveld. Hieraan zijn 2 kenmerken toegevoegd: een index naar het bestand voor het ondersteunen van willekeurige toegang en een overloopbestand (overflow file)
  • - Geïndexeerd bestand: Dit gebruikt meerdere indexen, één voor elk veldtype dat zou kunnen worden gebruikt bij het zoeken.
  • - Direct of hashed bestand: gebruikt mogelijkheid van schijven om directe toegang te geven tot elk blok met een bekend adres. Sleutelveld in elke record is vereist. Wordt vaak gebruikt als snelle toegang vereist is.


12.6 Waarom is de gemiddelde zoektijd voor het vinden van een record bij een index-sequentieel bestand minder dan bij een sequentieel bestand?


Het maakt gebruik van verwijzingen, waardoor men sneller op een bepaald veld kan uitkomen. Bv een sequentieel bestand van één miljoen records. Het zoeken naar een bepaalde sleutelwaarde vereist gemiddeld een half miljoen recordtoegangen. Als er nu echter een index met duizen ingangen wordt gemaakt. Dan kost het zoeken van de records gemiddeld 500 toegangen tot het indexbestand, en dan nog eens 500 tot het hoofdbestand. De gemiddelde zoeklengte wordt dus verminderd van een half miljoen tot duizend.

12.7 Wat zijn gebruikelijke bewerkingen die men kan uitvoeren bij een directory?


  • - Zoeken
  • - Creëren
  • - Verwijderen
  • - Weergeven
  • - Bijwerken


12.8 Wat is het verband tussen een padnaam en een werkdirectory?


De volledige padnaam elke keer uitspellen is vervelend, hiervoor gebruikt men de werkdirectory van waaruit men relatief verwijst naar een bestand.


12.9 Wat zijn gangbare toegangsrechten die kunnen worden toegekend of geweigerd aan een individuele gebruiker van een bepaald bestand?


  • - Geen
  • - Kennis
  • - Uitvoeren
  • - Lezen
  • - Toevoegen
  • - Bijwerken
  • - Beveiliging wijzigen
  • - Verwijderen


12.10 Noem en beschrijf in het kort drie manieren van blokvorming.


  • - Blokvorming met vaste lengte: Hierbij worden records met vaste lengte gebruikt en wordt een geheel aantal records opgeslagen in een blok. Er kan ongebruikte ruimte zijn aan het einde van elk blok; dit wordt aangeduid als interne fragmentatie
  • - Gekoppelde blokvorming met variabele lengte: hierbij worden records met variabele lengte gebruikt en deze worden samengepakt in blokken, alle ruimte wordt gebruikt. Sommige records kunnen daarbij twee blokken omspannen, waarbij het vervolg wordt aangegeven door een verwijzing naar het volgende blok
  • - Niet-gekoppelde blokvorming met variabele lengte: hierbij worden records met variabele lengte gebruikt, maar deze worden niet gekoppeld opgeslagen. De meeste blokken bevatten loze ruimte, omdat het onmogelijk is de rest van een blok te gebruiken als de volgende record groter is dan de resterende ruimte


12.11 Noem en beschrijf in het kort drie vormen van bestandstoewijzing


  • - Aaneengesloten toewijzing: Een aaneengesloten verzameling blokken wordt toegewezen aan een bestand op het moment dat het bestand wordt gecreëerd. Tabel voor bestandstoewijzing bevat maar één ingang voor elke bestand te bevatte, die het beginblok en de lengte aangeeft.
  • - Kettingtoewijzing: Toewijzing vindt plaats op basis van aparte blokken. Elk blok bevat een wijzer naar het volgend blok in de ketting. Tabel voor bestandstoewijzing bevat maar één ingang voor elke bestand te bevatte, die het beginblok en de lengte aangeeft.
  • - Indextoewijzing: Hierbij bevat de tabel voor bestandstoewijzing een afzonderlijke index van één niveau voor elk bestand; de index heeft één ingang voor elke portie die aan het bestand is toegewezen

Samenvattingen