Release fan Muen 1.0, in iepen boarne mikrokernel foar it bouwen fan heul betroubere systemen

Nei acht jier fan ûntwikkeling waard it Muen 1.0-projekt frijlitten, it ûntwikkeljen fan de Separation-kernel, it ûntbrekken fan flaters yn 'e boarnekoade wêrfan waard befêstige mei wiskundige metoaden fan formele betrouberensferifikaasje. De kernel is beskikber foar de x86_64-arsjitektuer en kin brûkt wurde yn missy-krityske systemen dy't in ferhege nivo fan betrouberens fereaskje en garânsje fan gjin mislearrings. De boarnekoade fan it projekt is skreaun yn 'e Ada-taal en syn ferifieare dialekt SPARK 2014. De koade wurdt ferspraat ûnder de GPLv3-lisinsje.

De skiedingskearn is in mikrokernel dy't in omjouwing leveret foar de útfiering fan komponinten isolearre fan elkoar, wêrfan de ynteraksje strikt regele wurdt troch bepaalde regels. Isolaasje is basearre op it gebrûk fan Intel VT-x-virtualisaasje-útwreidings en omfettet feiligensmeganismen om de organisaasje fan geheime kommunikaasjekanalen te blokkearjen. De partitioning kernel is minimalistysker en statysker dan oare mikrokernels, wat it oantal situaasjes fermindert dy't mislearring kinne feroarsaakje.

De kernel rint yn VMX root modus, fergelykber mei in hypervisor, en alle oare komponinten rinne yn VMX net-root modus, fergelykber mei gast systemen. Tagong ta de apparatuer wurdt makke mei help fan Intel VT-d DMA útwreidings en interrupt remapping, dat makket it mooglik om te fieren feilige bining fan PCI apparaten oan komponinten dy't rinne ûnder Muen.

Release fan Muen 1.0, in iepen boarne mikrokernel foar it bouwen fan heul betroubere systemen

Muen syn mooglikheden omfetsje stipe foar multi-core systemen, nested ûnthâld siden (EPT, Extended Page Tables), MSI (Message Signaled Interrupts), en ûnthâld side attribút tabellen (PAT, Page Attribute Table). Muen leveret ek in fêste round-robin-planner basearre op de Intel VMX preemptive timer, in kompakte runtime dy't gjin prestaasjes beynfloedet, in crash-auditingsysteem, in regel-basearre statyske boarne-tawizingmeganisme, in evenemintehannelingsysteem, en dielde ûnthâldkanalen foar kommunikaasje binnen rinnende komponinten.

It stipet rinnende komponinten mei 64-bit masinekoade, 32- of 64-bit firtuele masines, 64-bit applikaasjes yn Ada en SPARK 2014 talen, Linux firtuele masines en selsstannige "unikernels" basearre op MirageOS boppe op Muen.

De wichtichste ynnovaasjes oanbean yn 'e frijlitting fan Muen 1.0:

  • Dokuminten binne publisearre mei spesifikaasjes foar de kernel (apparaat en arsjitektuer), systeem (systeembelied, Tau0 en toolkit) en komponinten, dy't alle aspekten fan it projekt dokumintearje.
  • De toolkit Tau0 (Muen System Composer) is tafoege, dy't in set fan klearmakke ferifiearre komponinten omfettet foar it komponearjen fan systeemôfbyldings en it ûntwikkeljen fan standerttsjinsten dy't boppe op Muen rinne. Oanlevere komponinten omfetsje AHCI (SATA)-bestjoerder, Device Manager (DM), bootlader, systeembehearder, firtuele terminal, ensfh.
  • De muenblock Linux-bestjoerder (in ymplemintaasje fan in blokapparaat dat boppe op it Muen dielde ûnthâld rint) is omboud om de blockdev 2.0 API te brûken.
  • Ymplementearre ark foar it behearen fan de libbenssyklus fan lânseigen komponinten.
  • Systeemôfbyldings binne omboud om SBS (Signed Block Stream) en CSL (Command Stream Loader) te brûken om yntegriteit te beskermjen.
  • In ferifiearre AHCI-DRV-bestjoerder is ymplementearre, skreaun yn 'e SPARK 2014-taal en wêrtroch jo driuwfearren kinne ferbine dy't de ATA-ynterface of yndividuele skiifpartysjes stypje mei de komponinten.
  • Ferbettere unikernel-stipe fan MirageOS- en Solo5-projekten.
  • De Ada-taalark is bywurke foar de GNAT Community 2021-release.
  • It trochgeande yntegraasjesysteem is oerbrocht fan 'e Bochs-emulator nei QEMU / KVM-nêste omjouwings.
  • Linux-komponintôfbyldings brûke de Linux 5.4.66-kernel.

Boarne: opennet.ru

Add a comment