Лоиҳаи NetBSD гипервизори нави NVMM-ро таҳия мекунад

Таҳиягарони лоиҳаи NetBSD эълон карда шуд дар бораи эҷоди гипервизори нав ва стеки виртуализатсияи алоқаманд, ки аллакай ба филиали таҷрибавии NetBSD-ҷорӣ дохил карда шудаанд ва дар версияи устувори NetBSD 9 пешниҳод карда мешаванд. NVMM дар айни замон бо дастгирии меъмории x86_64 маҳдуд аст ва ду пуштибонии барои имкон механизмҳои виртуализатсияи сахтафзор: x86-SVM бо дастгирии васеъшавии виртуализатсияи CPU AMD ва x86-VMX барои CPUs Intel. Дар шакли ҳозираи худ, дар як ҳост то 128 мошини маҷозӣ кор кардан мумкин аст, ки ҳар кадоми онҳоро то 256 ядрои протсессори виртуалӣ (VCPU) ва 128 ГБ хотираи оперативӣ ҷудо кардан мумкин аст.

NVMM драйвереро дар бар мегирад, ки дар сатҳи ядрои система кор мекунад ва дастрасиро ба механизмҳои виртуализатсияи сахтафзор ҳамоҳанг мекунад ва стеки Libnvmm, ки дар фазои корбар кор мекунад. Ҳамкории байни ҷузъҳои ядро ​​​​ва фазои корбар тавассути IOCTL амалӣ карда мешавад. Хусусияти NVMM, ки онро аз гипервизорҳо ба монанди KVM фарқ мекунад HAXM ва Bhyve, он аст, ки дар сатҳи ядро ​​танҳо маҷмӯи ҳадди ақали зарурии пайвандҳо дар атрофи механизмҳои виртуализатсияи сахтафзор иҷро карда мешавад ва ҳама рамзи эмулятсияи сахтафзор аз ядро ​​ба фазои корбар интиқол дода мешавад. Ин равиш ба шумо имкон медиҳад, ки миқдори коди бо имтиёзҳои баланд иҷрошударо кам кунед ва хатари осеб дидани тамоми системаро дар сурати ҳамла ба осебпазирӣ дар гипервизор кам кунед. Илова бар ин, санҷиши хатогиҳо ва ноустувории лоиҳа ба таври назаррас содда карда шудааст.

Бо вуҷуди ин, худи Libnvmm функсияҳои эмуляторро дар бар намегирад, аммо танҳо API-ро таъмин мекунад, ки ба шумо имкон медиҳад дастгирии NVMM-ро ба эмуляторҳои мавҷуда, масалан, QEMU ҳамгиро кунед. API вазифаҳоеро дар бар мегирад, ба монанди эҷод ва ба кор андохтани мошини виртуалӣ, ҷудо кардани хотира ба системаи меҳмонон ва тақсимоти VCPU. Барои беҳтар кардани амният ва кам кардани векторҳои эҳтимолии ҳамла, libnvmm танҳо функсияҳоеро таъмин мекунад, ки ба таври возеҳ дархост карда мешаванд - ба таври нобаёнӣ, коркардкунандагони мураккаб ба таври худкор даъват карда намешаванд ва агар онҳо пешгирӣ карда шаванд, умуман истифода намешаванд. NVMM мекӯшад, ки чизҳоро содда нигоҳ дорад, бидуни душворӣ ва ба шумо имкон медиҳад, ки ҳарчи бештар ҷанбаҳои кори худро назорат кунед.

Лоиҳаи NetBSD гипервизори нави NVMM-ро таҳия мекунад

Қисми сатҳи ядрои NVMM бо ядрои NetBSD хеле зич муттаҳид карда шудааст ва имкон медиҳад, ки иҷрои беҳтар тавассути кам кардани шумораи гузаришҳои контекстӣ байни OS меҳмон ва муҳити мизбон. Дар паҳлӯи фазои корбар, libnvmm кӯшиш мекунад, ки амалиёти умумии дохил-барориро ҷамъ оварад ва аз зангҳои система бе зарурат худдорӣ кунад. Системаи тақсимоти хотира ба зерсистемаи pmap асос ёфтааст, ки ба шумо имкон медиҳад саҳифаҳои хотираи меҳмононро ба қисмати своп дар ҳолати нарасидани хотира дар система хориҷ кунед. NVMM аз қуфлҳо ва тарозуҳои глобалӣ озод аст ва ба шумо имкон медиҳад, ки ҳамзамон ядроҳои гуногуни CPU-ро барои идора кардани мошинҳои виртуалии меҳмонони гуногун истифода баред.

Як ҳалли асоси QEMU омода шудааст, ки NVMM-ро барои фаъол кардани механизмҳои виртуализатсияи сахтафзор истифода мебарад. Кор барои ба сохтори асосии QEMU дохил кардани патчҳои омодашуда идома дорад. Комбинатсияи QEMU+NVMM аллакай мавҷуд аст Ин имкон медиҳад, системаҳои меҳмонро бо FreeBSD, OpenBSD, Linux, Windows XP/7/8.1/10 ва дигар ОС дар системаҳои x86_64 бо протсессори AMD ва Intel бомуваффақият иҷро кунед (худи NVMM ба як меъмории мушаххас вобаста нест, масалан, агар пуштибони мувофиқ сохта шавад , он метавонад дар системаҳои ARM64 кор кунад). Дар байни соҳаҳои татбиқи минбаъдаи NVMM, ҷудокунии қуттиҳои барномаҳои инфиродӣ низ қайд карда мешавад.

Лоиҳаи NetBSD гипервизори нави NVMM-ро таҳия мекунад

Манбаъ: opennet.ru

Илова Эзоҳ