Barflanke Den er skrevet i C ++ og er kompatibel med C ++ STL. Bareflanks modulære arkitektur lar deg enkelt utvide eksisterende hypervisor-funksjoner og lage dine egne hypervisor-versjoner, både kjører på maskinvare (som Xen) og i et eksisterende programvaremiljø (som VirtualBox). Du kan kjøre vertsmiljøets operativsystem i en separat virtuell maskin. Prosjektkoden er distribuert under LGPL 2.1-lisensen.
Om Bareflank
Bareflank støtter Linux, Windows og UEFI på 64-bits Intel- og AMD-prosessorer. Intel VT-x-teknologi brukes til maskinvaredeling av virtuelle maskinressurser. I fremtiden forventes kompatibilitet med macOS- og BSD-systemer, samt muligheten til å jobbe på ARM64-plattformen.
Videre prosjektet utvikler sin egen kontroller for å laste VMM (Virtual Machine Manager), en ELF-lader å laste VVM-moduler og en bfm-app å administrere hypervisoren fra brukerplassen.
Basert på Bareflank, Boxy utvikles virtualiseringssystem, som støtter lanseringen av gjestesystemer y muliggjør bruk av lette virtuelle maskiner med Linux og Unikernel å lansere spesialiserte tjenester eller applikasjoner.
I form av isolerte tjenester, kan kjøre vanlige webtjenester og applikasjoner som har spesielle krav til pålitelighet og sikkerhet, uten påvirkning fra vertsmiljøet (vertsmiljøet er isolert i en egen virtuell maskin). Bareflank er også i hjertet av MicroV hypervisor, designet for å kjøre minimalistiske virtuelle maskiner (virtuell maskin med én applikasjon), implementere KVM API, og egnet for å bygge oppdragskritiske systemer.
Et verktøysett for å skrive utvidelser er tilgjengelig for din bruk. ved å bruke elementer definert i C ++ 11/14-spesifikasjonene, et bibliotek for å avvikle unntaksstabelen (avvikle), samt sitt eget kjøretidsbibliotek for å støtte bruken av konstruktører/destruktorer og loggbehandler-unntak.
Som hovedinnovasjonene i den nye versjonen av Bareflank 3.0 følgende skiller seg ut:
- Overgang til mikrokjernekonseptet. Tidligere hadde hypervisoren en monolitisk arkitektur, hvor den for å utvide funksjonaliteten måtte bruke en spesiell API for å ta opp tilbakeringingsanrop, noe som gjorde utvidelsesutvikling vanskelig på grunn av binding til C++-språket og intern enhet.
- Den nye mikrokjernearkitekturen skiller hypervisoren i kjernekomponenter som kjører på ring null og utvidelser som kjører på tredje ring (brukerplass). Begge deler kjører i VMX-rotmodus og alt annet, inkludert vertsmiljøet, i ikke-root-VMX-modus.
- Brukerplassutvidelser implementerer Virtual Machine Manager-funksjonalitet (VMM) og samhandler med hypervisorkjernen gjennom bakoverkompatible systemanrop. Utvidelser kan opprettes i et hvilket som helst programmeringsspråk, inkludert ved å bruke Rust-språket, som det er gitt eksempler på utvidelser som er klare til bruk.
- Den har gått over til å bruke sitt eget BSL-bibliotek med Rust- og C++-støtte, og erstattet de eksterne libc++- og newlib-bibliotekene. Fjerning av eksterne avhengigheter tillot Bareflank å implementere innebygd byggestøtte på Windows for å forenkle utviklingen på denne plattformen.
- Bareflank kommer nå med støtte for AMD. I tillegg skjer Bareflank-utviklingen nå på et system med en AMD-prosessor, og først da flyttes den til en Intel-prosessor, noe som sikrer at utviklingen for AMD blir tatt på alvor.
- Lasteren har lagt til støtte for ARMv8-arkitekturen, hvis hypervisortilpasning vil bli fullført i en fremtidig utgivelse.
Samsvar med AUTOSAR og MISRA oppdragskritiske systemdesignkrav.
Endelig hvis du er interessert i å vite mer om det, kan du konsultere detaljene i følgende lenke.