NetBSD Projek Ontwikkelaars
NVMM sluit 'n drywer in wat op die stelselkernvlak loop en koördineer toegang tot hardeware-virtualiseringsmeganismes, en 'n Libnvmm-stapel wat in gebruikersruimte loop. Interaksie tussen kernkomponente en gebruikersruimte word deur IOCTL uitgevoer. 'n Kenmerk van NVMM wat dit onderskei van hiperviseerders soos KVM is
Libnvmm self bevat egter nie emulatorfunksies nie, maar bied slegs 'n API wat jou toelaat om NVMM-ondersteuning in bestaande emulators te integreer, byvoorbeeld QEMU. Die API dek funksies soos die skep en begin van 'n virtuele masjien, die toekenning van geheue aan die gasstelsel en die toekenning van VCPU's. Om sekuriteit te verbeter en moontlike aanvalvektore te verminder, verskaf libnvmm slegs funksies wat uitdruklik versoek word—by verstek word komplekse hanteerders nie outomaties geroep nie en mag glad nie gebruik word as dit vermy kan word nie. NVMM probeer dinge eenvoudig hou, sonder om te ingewikkeld te raak, en om jou toe te laat om soveel aspekte van jou werk as moontlik te beheer.
Die kernvlak-deel van NVMM is redelik stewig geïntegreer met die NetBSD-kern, en maak voorsiening vir verbeterde werkverrigting deur die aantal konteksskakelaars tussen die gasbedryfstelsel en die gasheeromgewing te verminder. Aan die gebruikersruimtekant probeer libnvmm om algemene I/O-bewerkings saam te voeg en te verhoed dat stelseloproepe onnodig gemaak word. Die geheuetoewysingstelsel is gebaseer op die pmap-substelsel, wat jou toelaat om gasgeheuebladsye na die ruilpartisie uit te sit in geval van geheuetekort in die stelsel. NVMM is vry van globale slotte en skale goed, wat jou toelaat om gelyktydig verskillende SVE-kerns te gebruik om verskillende virtuele gasmasjiene te laat loop.
'n QEMU-gebaseerde oplossing is voorberei wat NVMM gebruik om hardeware-virtualiseringsmeganismes te aktiveer. Werk is aan die gang om die voorbereide kolle in die hoofstruktuur van QEMU in te sluit. Die QEMU+NVMM-kombinasie is reeds
Bron: opennet.ru