Interfaces en busstandaarden
Welk mechanisme maakt het mogelijk dat de CPU de registers en het geheugen van een PCI Express-apparaat kan lezen en schrijven?
- ABij het opstarten onderzoekt het OS enzovoort de door het apparaat gevraagde grootte, wijst adressen toe aan BAR's (base address registers) en maakt ze zichtbaar als geheugenadressen
- BPer apparaat is bij productie een vast adres bepaald
- CDe CPU kan de registers van apparaten niet lezen en alle uitwisseling verloopt via DMA
Antwoord en toelichting tonen
Antwoord: A. Bij het opstarten onderzoekt het OS enzovoort de door het apparaat gevraagde grootte, wijst adressen toe aan BAR's (base address registers) en maakt ze zichtbaar als geheugenadressen
Een PCI Express-apparaat meldt de grootte van zijn registers en geheugen via BAR's. Bij het opstarten onderzoekt firmware of OS alle aangesloten apparaten (enumeratie) en wijst adressen toe zodat die niet overlappen. Daarna bedient de CPU het apparaat door de toegewezen adressen als gewoon geheugen te lezen en te schrijven. Ook wanneer een apparaat later wordt gestoken, worden adressen op dezelfde manier toegewezen.