NetBSD layihəsi yeni NVMM hipervizoru hazırlayır

NetBSD Layihə Tərtibatçıları elan etdi artıq eksperimental NetBSD-cari filialına daxil edilmiş və NetBSD 9-un stabil buraxılışında təklif olunacaq yeni hipervizorun və əlaqəli virtuallaşdırma yığınının yaradılması haqqında. NVMM hazırda x86_64 arxitekturasını dəstəkləməklə məhdudlaşır və iki arxa uç təmin edir. hardware virtualizasiya mexanizmlərini işə salmaq: AMD dəstəyi ilə x86-SVM və Intel CPU-lar üçün x86-VMX CPU virtuallaşdırma genişləndirmələri. Hazırkı formada bir hostda 128-ə qədər virtual maşını işə salmaq mümkündür, onların hər birinə 256-ya qədər virtual prosessor nüvəsi (VCPU) və 128 GB RAM ayrıla bilər.

NVMM-ə sistem nüvəsi səviyyəsində işləyən və avadanlığın virtualizasiya mexanizmlərinə girişi koordinasiya edən sürücü və istifadəçi məkanında işləyən Libnvmm yığını daxildir. Kernel komponentləri ilə istifadəçi sahəsi arasında qarşılıqlı əlaqə IOCTL vasitəsilə həyata keçirilir. NVMM-ni KVM kimi hipervizorlardan fərqləndirən bir xüsusiyyətdir HAXM və Bhyve, nüvə səviyyəsində yalnız hardware virtualizasiya mexanizmləri ətrafında minimum tələb olunan bağlamalar dəsti yerinə yetirilir və bütün hardware emulyasiya kodu kerneldən istifadəçi sahəsinə köçürülür. Bu yanaşma yüksək imtiyazlarla yerinə yetirilən kodun həcmini azaltmağa və hipervizorda zəifliklərə hücumlar zamanı bütün sistemə zərər vurma riskini azaltmağa imkan verir. Bundan əlavə, layihənin sazlanması və qeyri-səlis testi nəzərəçarpacaq dərəcədə sadələşdirilmişdir.

Bununla belə, Libnvmm özü emulyator funksiyalarını ehtiva etmir, ancaq NVMM dəstəyini mövcud emulyatorlara, məsələn, QEMU-ya inteqrasiya etməyə imkan verən API təmin edir. API virtual maşının yaradılması və işə salınması, qonaq sisteminə yaddaşın ayrılması və VCPU-ların ayrılması kimi funksiyaları əhatə edir. Təhlükəsizliyi təkmilləşdirmək və mümkün hücum vektorlarını azaltmaq üçün libnvmm yalnız açıq şəkildə tələb olunan funksiyaları təmin edir—defolt olaraq, mürəkkəb işləyicilər avtomatik çağırılmır və onların qarşısını almaq olarsa, ümumiyyətlə istifadə olunmaya bilər. NVMM işləri çox mürəkkəbləşdirmədən sadə saxlamağa çalışır və işinizin mümkün qədər çox aspektinə nəzarət etməyə imkan verir.

NetBSD layihəsi yeni NVMM hipervizoru hazırlayır

NVMM-in nüvə səviyyəli hissəsi NetBSD nüvəsi ilə kifayət qədər sıx inteqrasiya olunub və qonaq ƏS ilə host mühiti arasında kontekst keçidlərinin sayını azaltmaqla performansı yaxşılaşdırmağa imkan verir. İstifadəçi məkanı tərəfində libnvmm ümumi giriş/çıxış əməliyyatlarını birləşdirməyə və lazımsız yerə sistem zəngləri etməkdən çəkinməyə çalışır. Yaddaşın ayrılması sistemi pmap altsisteminə əsaslanır ki, bu da sistemdə yaddaş çatışmazlığı zamanı qonaq yaddaş səhifələrini dəyişdirmə bölməsinə çıxarmağa imkan verir. NVMM qlobal kilidlərdən və yaxşı tərəzilərdən azaddır, bu da müxtəlif qonaq virtual maşınlarını idarə etmək üçün eyni vaxtda müxtəlif CPU nüvələrindən istifadə etməyə imkan verir.

Avadanlıqların virtualizasiya mexanizmlərini işə salmaq üçün NVMM-dən istifadə edən QEMU əsaslı həll hazırlanmışdır. Hazırlanmış yamaqların QEMU-nun əsas strukturuna daxil edilməsi istiqamətində işlər aparılır. QEMU+NVMM birləşməsi artıq mövcuddur imkan AMD və Intel prosessorları olan x7_8.1 sistemlərində FreeBSD, OpenBSD, Linux, Windows XP/10/86/64 və digər ƏS ilə qonaq sistemlərini uğurla idarə edin (NVMM özü müəyyən bir arxitekturaya bağlı deyil, məsələn, müvafiq backend yaradıldıqda , ARM64 sistemlərində işləyə biləcək). NVMM-in sonrakı tətbiqi sahələri arasında fərdi tətbiqlərin sandbox izolyasiyası da qeyd olunur.

NetBSD layihəsi yeni NVMM hipervizoru hazırlayır

Mənbə: opennet.ru

Добавить комментарий