Ця стаття не містить . (жовтень 2018) |
IOMMU (англ. input/output memory management unit) — блок управління пам'яттю (MMU) для операцій введення/виводу. Так само як традиційний, процесорний блок управління пам'яттю, який переводить віртуальні адреси, видимі процесором, в фізичні, цей блок займається трансляцією віртуальних адрес, видимих апаратним пристроєм, у фізичні адреси. Деякі IOMMU також дозволяють задавати різні обмеження операцій введення-виведення для захисту від неправильно працюючих пристроїв або для ізоляції, наприклад, при використанні віртуалізації (див. VT-d).
За наявності IOMMU у апаратури є можливість проводити DMA-операції не тільки за фізичними адресами, а й за логічними (віртуальними). Така можливість спрощує пристрої, яким більше не потрібно піклуватися про підтримку DMA по розривному (з точки зору фізичних адрес) регіону пам'яті (підтримка такого DMA в драйвері тягне за собою накладні витрати).
Недоліками використання IOMMU в порівнянні з прямою фізичною адресацією пам'яті в DMA запитах є:
- Деяке погіршення продуктивності через необхідність транслювання адрес і витрат на управління, наприклад, прохід по ієрархії таблиці сторінок.
- Додаткове споживання пам'яті для зберігання таблиць відображення. Може бути зменшений при використанні основним таблиць трансляції адрес процесора.
IOMMU використовується для прямої роботи віртуалізованних операційних систем з обладнанням основної системи. Наявність IOMMU для таких комбінацій дозволяє підвищити безпеку, продуктивність і спростити реалізацію віртуальної машини.
IOMMU завжди використовувався на комп'ютерах Sun SPARC для шини SBus, також він використовувався на комп'ютерах DEC Alpha для шини PCI.
Різновидом IOMMU є AGP GART (Graphics Address Remapping Table, таблиця перетворень графічних адрес ).
Як правило, звичайні PC-сумісні комп'ютери не мали IOMMU (крім AGP GART). Замість цього всі найголовніше периферійне устаткування десь з кінця 90х років розроблялося з підтримкою chain DMA.
Проте, широке поширення гіпервізорів віртуальних машин призвело до включення підтримки IOMMU в "гостьові" ОС, такі, як Windows (API ядра Windows завжди підтримував цю функцію, хоча зазвичай дана підтримка не реалізовувалася).
Наявність такої підтримки в гостьовій ОС при віртуалізації самого пристрою IOMMU сильно полегшує завдання емуляції в гостьовій ОС складних пристроїв, що використовують DMA, і підвищує продуктивність і безпеку такої емуляції.
Див. також
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Cya stattya ne mistit posilan na dzherela Vi mozhete dopomogti polipshiti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Material bez dzherel mozhe buti piddano sumnivu ta vilucheno zhovten 2018 IOMMU angl input output memory management unit blok upravlinnya pam yattyu MMU dlya operacij vvedennya vivodu Tak samo yak tradicijnij procesornij blok upravlinnya pam yattyu yakij perevodit virtualni adresi vidimi procesorom v fizichni cej blok zajmayetsya translyaciyeyu virtualnih adres vidimih aparatnim pristroyem u fizichni adresi Deyaki IOMMU takozh dozvolyayut zadavati rizni obmezhennya operacij vvedennya vivedennya dlya zahistu vid nepravilno pracyuyuchih pristroyiv abo dlya izolyaciyi napriklad pri vikoristanni virtualizaciyi div VT d Porivnyannya IOMMU i memory management unit MMU Za nayavnosti IOMMU u aparaturi ye mozhlivist provoditi DMA operaciyi ne tilki za fizichnimi adresami a j za logichnimi virtualnimi Taka mozhlivist sproshuye pristroyi yakim bilshe ne potribno pikluvatisya pro pidtrimku DMA po rozrivnomu z tochki zoru fizichnih adres regionu pam yati pidtrimka takogo DMA v drajveri tyagne za soboyu nakladni vitrati Nedolikami vikoristannya IOMMU v porivnyanni z pryamoyu fizichnoyu adresaciyeyu pam yati v DMA zapitah ye Deyake pogirshennya produktivnosti cherez neobhidnist translyuvannya adres i vitrat na upravlinnya napriklad prohid po iyerarhiyi tablici storinok Dodatkove spozhivannya pam yati dlya zberigannya tablic vidobrazhennya Mozhe buti zmenshenij pri vikoristanni osnovnim tablic translyaciyi adres procesora IOMMU vikoristovuyetsya dlya pryamoyi roboti virtualizovannih operacijnih sistem z obladnannyam osnovnoyi sistemi Nayavnist IOMMU dlya takih kombinacij dozvolyaye pidvishiti bezpeku produktivnist i sprostiti realizaciyu virtualnoyi mashini IOMMU zavzhdi vikoristovuvavsya na komp yuterah Sun SPARC dlya shini SBus takozh vin vikoristovuvavsya na komp yuterah DEC Alpha dlya shini PCI Riznovidom IOMMU ye AGP GART Graphics Address Remapping Table tablicya peretvoren grafichnih adres Yak pravilo zvichajni PC sumisni komp yuteri ne mali IOMMU krim AGP GART Zamist cogo vsi najgolovnishe periferijne ustatkuvannya des z kincya 90h rokiv rozroblyalosya z pidtrimkoyu chain DMA Prote shiroke poshirennya gipervizoriv virtualnih mashin prizvelo do vklyuchennya pidtrimki IOMMU v gostovi OS taki yak Windows API yadra Windows zavzhdi pidtrimuvav cyu funkciyu hocha zazvichaj dana pidtrimka ne realizovuvalasya Nayavnist takoyi pidtrimki v gostovij OS pri virtualizaciyi samogo pristroyu IOMMU silno polegshuye zavdannya emulyaciyi v gostovij OS skladnih pristroyiv sho vikoristovuyut DMA i pidvishuye produktivnist i bezpeku takoyi emulyaciyi Div takozhCya stattya ye zagotovkoyu Vi mozhete dopomogti proyektu dorobivshi yiyi Ce povidomlennya varto zaminiti tochnishim