Predstavljen je prvi javni izvod projekta Multikernel Linux (mklinux-v7.0-mk2), koji razvija varijantu Linux kernela, dopunjenu mogućnošću izvršavanja više nezavisnih instanci kernela na jednom fizičkom računaru bez korišćenja hipervizora i virtualizacije. Svaka instanca kernela ima direktan pristup hardverskim resursima i može se koristiti za pokretanje izolovanih sistemskih okruženja. Prvi izvod se temelji na Linux kernelu 7.0 i sadrži podešavanje za izgradnju "CONFIG_MULTIKERNEL", pri čemu se isključivanjem ovog podešavanja kernel potpuno ponaša kao standardni kernel 7.0. Trenutno se podržava samo x86_64 CPU arhitektura.
Multikernel se predstavlja kao novi mehanizam izolacije koji zauzima prostor između virtualizacije putem hipervizora i container izolacije zasnovane na zajedničkom kernelu. Za razliku od virtualizacije, Multikernel ne zahteva korišćenje hipervizora, olakšava stvaranje okruženja za izolovano pokretanje pojedinačnih aplikacija i omogućava postizanje visokih performansi bez prekomernih troškova na virtualizaciju. Za razliku od kontejnera, Multikernel pruža visok nivo izolacije i omogućava korišćenje posebnog kernela u svakom izolovanom okruženju, čije crash-ove ili iskoristavanje ranjivosti ne pogađaju druga okruženja.

Host kernel omogućava raspodelu dostupnih CPU, memorije i PCI uređaja među paralelno radnim dodatnim instancama kernela. Svaka instanca se izvršava na posebnom dodeljenom CPU kernelu, radi sa uređajima koji su joj dodeljeni i ima pristup dodeljenom delu fizičke memorije. Paralelno izvršavanje više kernela ostvaruje se bez virtualizacije, koristeći SMP upravljač koji raspodeljuje dostupne CPU. Podržano je dinamičko dodeljivanje resursa pokretanim okruženjima i obezbeđenje predvidljivih performansi.
Zaradi odprave značilnih stroškov virtualizacije se zmogljivost z uporabo Multikernel ocenjuje kot blizu zmogljivosti delovanja na posamezni opremi. Pri uporabi Multikernel ni faze prenosa nadzora med virtualnimi stroji (VM exit), ne uporabljajo se strani pomnilnika druge stopnje, ločen model naprav in prevajanje IOMMU. V primerjavi s hipervizorjem KVM Pri uporabi Multikernel se ugotavlja povečanje zmogljivosti različnih sistemskih klicev in funkcij od 1,07 do 2,5-krat (fork + exit — 1,07x, write() — 1,39x, AF_UNIX — 1,55x, Pipe — 2,18x, preklapljanje konteksta — 2,50x), prožna kapaciteta in zakasnitev pri delu s pomnilnikom sta na istem nivoju.

Izvor: opennet.ru
