I/O Systems - I/O Hardware
12 belangrijke vragen over I/O Systems - I/O Hardware
Op welke twee manieren kunnen de processor en de controller met elkaar in contact komen ('handshaking')?
- Polling. De CPU controleert met een bepaalde frequentie de status van de I/O-controller. Zodra de I/O-controller vrij is, stuurt de CPU een commando naar de I/O-controller.
- Interrupts. De I/O-controller laat de processor via een interrupt weten dat hij klaar is om een commando te ontvangen.
Wat is de functie van een DMA controller?
De DMA controller is verantwoordelijk voor het uitvoeren van direct memory access (DMA) bij datatransport. Nadat de CPU een command block in het geheugen heeft gezet en de DMA controller hiervan op de hoogte heeft gesteld, zorgt de DMA controller voor de besturing van het datatransport tussen het geheugen en de device controller. Door middel van een interrupt signaleert de DMA controller dat het transport voltooid is.
Hoe communiceert het computersysteem met randapparaten?
De computer communiceert met een randapparaat via signalen. De communicatie verloopt via poorten, bussen en controllers. Een poort is een verbindingspunt tussen de computer en het randapparaat, een bus is een kanaal voor het transport van signalen, en een controller is het zogenaamde aanspreekpunt voor de computer. Een controller kan gekoppeld zijn aan een poort, aan een bus (bus controller), maar ook aan een randapparaat (device controller). De controller beschikt over registers waarin de data- en controlesignalen geplaatst kunnen worden.
- Hogere cijfers + sneller leren
- Niets twee keer studeren
- 100% zeker alles onthouden
Op welke twee manieren kan de communicatie tussen de processor en een controller zijn vormgegeven?
- Via I/O-instructies
- Via memory-mapped I/O: de controlregisters zijn afgebeeld op de adresruimte van de processor
Welke vier registers bevat een I/O-poort doorgaans?
- Data-in register (bevat input voor de processor)
- Data-out register (bevat output van de processor)
- Status register
- Control register
Wat is het verschil tussen een nonmaskable interrupt request line en een maskable interrupt request line?
Interrupts die via een maskeerbare interruptlijn binnenkomen kunnen door het besturingssysteem tijdelijk worden onderdrukt. Voor interrupts die via een niet-maskeerbare interruptlijn binnenkomen geldt dit niet.
Wat is het verschil tussen system calls, exceptions en interrupts?
Met een system call verzoekt een proces om een door het besturingsysteem te leveren service.
Een exception ontstaat als de processor een instructie niet kan uitvoeren.
System calls en exceptions kunnen geïmplementeerd worden middels interrupts. Daarnaast kan het interruptmechanisme gebruikt worden door de I/O-controller, om aan te geven dat een actie van het besturingssysteem gewenst is.
Wat wordt bedoeld met programmed I/O?
Programmed I/O is door de processor gestuurde dataoverdracht. Het is de tegenhanger van directory memory access (DMA) of interrupt driven I/O, waarbij data rechtstreeks tussen het randapparaat en het geheugen worden uitgewisseld.
Twee vormen van programmed I/O zijn memory-mapped I/O en I/O-mapped I/O.
Wat is het verschil tussen I/O-mapped I/O en memory-mapped I/O?
Bij I/O-mapped I/O worden de controller registers aangestuurd als een I/O-adres. Via een aparte lijn wordt aangegeven of het adres een I/O-adres of een geheugenadres is.
Bij memory-mapped I/O worden de controller registers aangestuurd als een geheugenadres. De geheugenadresruimte bevat de I/O-adressen van randapparaten.
I/O kan worden aangestuurd middels I/O-mapped I/O en middels memory-mapped I/O. Geef de voor- en nadelen van beide.
Memory-mapped I/O is eenvoudiger aan te sturen, maar is storingsgevoeliger, omdat de speciale geheugenadressen ook per abuis door andere processen aangestuurd kunnen worden. Geheugenprotectie biedt hiervoor bescherming.
Een randapparaat heeft een status-, een command0-, een data-in en een data-outregister. Welke bits in welke registers spelen een rol bij dataoverdracht via het pollingmechanisme?
In het statusregister: de busy-bit en de error-bit (in te stellen door de randapparaatcontroller)
In het commandoregister: de command-ready en de write-bit (in te stellen door de processor)
Noem drie voorzieningen van een geavanceerde interrupt controller
- Tijdelijk onderdrukken van niet-spoedeisende (maskable) interrupts
- Afhandelingsroutines voor interrupts snel aanroepen via een interrupt vector
- Interrupt priority levels: interrupts afhandelen in volgorde van prioriteit
De vragen op deze pagina komen uit de samenvatting van het volgende studiemateriaal:
- Een unieke studie- en oefentool
- Nooit meer iets twee keer studeren
- Haal de cijfers waar je op hoopt
- 100% zeker alles onthouden
![Trustpilot-logo](/images/design_2020/lp/clp-trustpilot-nl.png)