Yüksək etibarlı sistemlərin qurulması üçün açıq mikrokernel olan Muen 1.0-ın buraxılışı

Səkkiz illik inkişafdan sonra, mənbə kodunda səhvlərin olmaması rəsmi etibarlılığın yoxlanılmasının riyazi üsulları ilə təsdiqlənən Ayırma nüvəsini inkişaf etdirən Muen 1.0 layihəsi buraxıldı. Kernel x86_64 arxitekturası üçün əlçatandır və yüksək etibarlılıq səviyyəsini və heç bir nasazlıq zəmanətini tələb edən kritik vəzifə sistemlərində istifadə edilə bilər. Layihənin mənbə kodu Ada dilində və onun yoxlanıla bilən dialekt SPARK 2014-də yazılmışdır. Kod GPLv3 lisenziyası altında paylanır.

Ayırma ləpəsi bir-birindən təcrid olunmuş komponentlərin yerinə yetirilməsi üçün mühiti təmin edən, qarşılıqlı əlaqəsi verilmiş qaydalarla ciddi şəkildə tənzimlənən mikronüvədir. İzolyasiya Intel VT-x virtualizasiya genişləndirmələrinin istifadəsinə əsaslanır və gizli rabitə kanallarının təşkilini bloklamaq üçün təhlükəsizlik mexanizmlərini ehtiva edir. Bölmə nüvəsi digər mikrokernellərə nisbətən daha minimalist və statikdir, bu da uğursuzluğa səbəb ola biləcək halların sayını azaldır.

Kernel hipervizora bənzər VMX kök rejimində işləyir və bütün digər komponentlər qonaq sistemlərinə bənzər VMX qeyri-root rejimində işləyir. Avadanlığa giriş Intel VT-d DMA genişləndirmələri və fasilələrin remappingindən istifadə etməklə həyata keçirilir ki, bu da PCI cihazlarının Muen altında işləyən komponentlərə təhlükəsiz bağlanmasını həyata keçirməyə imkan verir.

Yüksək etibarlı sistemlərin qurulması üçün açıq mikrokernel olan Muen 1.0-ın buraxılışı

Muenin imkanlarına çoxnüvəli sistemlər, iç-içə yaddaş səhifələri (EPT, Genişləndirilmiş Səhifə Cədvəlləri), MSI (Message Signaled Interrupts) və yaddaş səhifəsi atribut cədvəlləri (PAT, Page Attribute Table) üçün dəstək daxildir. Muen həmçinin Intel VMX qabaqlayıcı taymer, performansa təsir etməyən yığcam iş vaxtı, qəzaların yoxlanılması sistemi, qaydalara əsaslanan statik resurs təyinetmə mexanizmi, hadisələrin idarə edilməsi sistemi və paylaşılan yaddaş kanallarına əsaslanan sabit dövrə planlayıcısı təqdim edir. işləyən komponentlər daxilində rabitə.

O, 64-bit maşın kodu, 32- və ya 64-bit virtual maşınlar, Ada və SPARK 64 dillərində 2014-bit proqramlar, Linux virtual maşınları və Muen-in üstündəki MirageOS-a əsaslanan müstəqil “unikernellər” ilə işləyən komponentləri dəstəkləyir.

Muen 1.0-ın buraxılışında təklif olunan əsas yeniliklər:

  • Sənədlər layihənin bütün aspektlərini sənədləşdirən nüvə (cihaz və arxitektura), sistem (sistem siyasətləri, Tau0 və alətlər dəsti) və komponentlər üçün spesifikasiyalarla dərc edilmişdir.
  • Tau0 (Muen System Composer) alət dəsti əlavə edilib ki, bura sistem şəkillərinin tərtib edilməsi və Muen üzərində işləyən standart xidmətlərin işlənib hazırlanması üçün hazır təsdiqlənmiş komponentlər dəsti daxildir. Təqdim olunan komponentlərə AHCI (SATA) sürücüsü, Cihaz Meneceri (DM), yükləyici, sistem meneceri, virtual terminal və s. daxildir.
  • Muenblock Linux sürücüsü (Muen paylaşılan yaddaşının üstündə işləyən blok cihazının tətbiqi) blockdev 2.0 API-dən istifadə etmək üçün çevrilmişdir.
  • Doğma komponentlərin həyat dövrünü idarə etmək üçün alətlər tətbiq edilmişdir.
  • Sistem şəkilləri bütövlüyü qorumaq üçün SBS (Signed Block Stream) və CSL (Command Stream Loader) istifadə etmək üçün çevrilmişdir.
  • SPARK 2014 dilində yazılmış və ATA interfeysini və ya fərdi disk bölmələrini dəstəkləyən sürücüləri komponentlərə qoşmağa imkan verən təsdiqlənmiş AHCI-DRV drayveri tətbiq edilmişdir.
  • MirageOS və Solo5 layihələrindən təkmilləşdirilmiş unikernel dəstəyi.
  • Ada dili alət dəsti GNAT Community 2021 buraxılışı üçün yeniləndi.
  • Davamlı inteqrasiya sistemi Bochs emulyatorundan QEMU/KVM daxili mühitlərə köçürüldü.
  • Linux komponent şəkilləri Linux 5.4.66 nüvəsindən istifadə edir.

Mənbə: opennet.ru

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