Input–output memory management unit
Een input–output memory management unit (IOMMU), letterlijk vertaald "een invoer-uitvoergeheugenbeheereenheid" is een geheugenbeheersysteem (MMU) dat een I/O-bus met directe geheugentoegang verbindt met het geheugen van een computer. Waar een traditioneel geheugenbeheersysteem directe toegang tot de CPU-zichtbare geheugenadressen mogelijk maakt, wijst IOMMU apparaat-zichtbare virtuele adressen toe.[1]
Mogelijkheden
[bewerken | brontekst bewerken]Een van de doelen van een IOMMU is om de geheugentoegang van apparaten die zijn aangesloten op een computer te virtualiseren. Hierdoor kan een dergelijk aangesloten apparaat enkel bij het geheugen dat speciaal is toegewezen, en niet bij de rest van het systeemgeheugen. Daarmee wordt voorkomen dat kwaadwillende apparaten gevoelige data zoals wachtwoorden en sleutels uit het werkgeheugen van een computer kunnen stelen.[2]
Verder maakt IOMMU het mogelijk om grote gebieden aan (gefragmenteerd) geheugen beschikbaar te stellen zonder dat dit geheugen fysiek opvolgend moet zijn.
Daarnaast kan IOMMU het mogelijk maken om apparaten met kleinere geheugenadresruimte (bijvoorbeeld 32-bits apparatuur) te laten communiceren met geheugen van een systeem met een grotere geheugenadresruimte.
- ↑ (en) Huang, Adrian, An Introduction to IOMMU Infrastructure in the Linux Kernel. Lenovo Press (20 april 2021). Gearchiveerd op 29 december 2021. Geraadpleegd op 5 februari 2022.
- ↑ (en) AMD I/O Virtualization Technology (IOMMU) Specification, 48882. Advanced Micro Devices (2021-04). Geraadpleegd op 5 februari 2022.
- Dit artikel of een eerdere versie ervan is een (gedeeltelijke) vertaling van het artikel Input–output memory management unit op de Engelstalige Wikipedia, dat onder de licentie Creative Commons Naamsvermelding/Gelijk delen valt. Zie de bewerkingsgeschiedenis aldaar.