Jailhouse, hiperwizor z partycjami statycznymi, który stawia na wydajność

Więzienie

Jailhouse to oparty na Linuksie hiperwizor partycjonowania (Został opracowany jako darmowy projekt oprogramowania GPLv2). Jest zdolne do uruchamiania pełnych aplikacji lub systemów operacyjnych (dostosowany) oprócz Linuksa. W tym celu cSkonfiguruj charakterystykę wirtualizacji procesorów i urządzeń platformy sprzęt, tak aby żadna z tych domen, zwanych „komórkami”, nie kolidowała ze sobą w niedopuszczalny sposób.

To znaczy że Jailhouse nie naśladuje zasobów, których nie masz. Po prostu dzieli sprzęt na izolowane przedziały zwane „komórkami” Są one w całości przeznaczone dla oprogramowania gości zwanego „więźniami”.

O więzieniu

Jailhouse jest zoptymalizowany pod kątem prostoty zamiast bogactwa funkcji. W przeciwieństwie do w pełni funkcjonalnych hiperwizorów opartych na systemie Linux, takich jak KVM czy Xen, Więzienie nie wspiera zasobów ponad zobowiązaniami jak procesor, pamięć RAM lub urządzenia. Nie programuje, a jedynie wirtualizuje te zasoby w oprogramowaniu, które są niezbędne dla platformy i nie mogą być partycjonowane na sprzęcie.

Po aktywacji Jailhouse działa ono w pełni, co oznacza, że ​​przejmuje pełną kontrolę nad sprzętem i nie wymaga zewnętrznego wsparcia.

Hiperwizor jest zaimplementowany jako moduł dla jądra Linux i zapewnia wirtualizację na poziomie jądra. Komponenty gościa są już zawarte w głównym jądrze Linuksa.

Do kontroli izolacji używane są mechanizmy wirtualizacji sprzętu dostarczane przez nowoczesne procesory. Cechą wyróżniającą Jailhouse jest jego lekka implementacja i jego orientacja na łączenie maszyn wirtualnych ze stałym procesorem, obszarem pamięci RAM i urządzeniami sprzętowymi. Takie podejście umożliwia działanie kilku niezależnych środowisk wirtualnych na fizycznym serwerze wieloprocesorowym, z których każdy ma przypisany własny rdzeń procesora.

Dzięki ścisłemu połączeniu z procesorem narzut pracy hiperwizora jest zminimalizowany, a jego implementacja jest znacznie uproszczona, ponieważ nie ma potrzeby wykonywania złożonego harmonogramu alokacji zasobów: przydzielenie oddzielnego rdzenia procesora zapewnia, że ​​nie będzie on wykonywał innych zadań na ten procesor.

Zaletą tego podejścia jest możliwość zapewnienia gwarantowanego dostępu do zasobów i przewidywalnej wydajności, dzięki czemu Jailhouse jest odpowiednim rozwiązaniem do tworzenia zadań w czasie rzeczywistym. Wadą jest ograniczona skalowalność, która opiera się na liczbie rdzeni procesora.

O nowej wersji Jailhouse 0.12

Obecnie Jailhouse jest w wersji 0.12 i wyróżnia Wsparcie dla Raspberry Pi 4 Model B i Texas Instruments J721E-EVM.

Oprócz urządzenia ivshmem służy do organizowania interakcji między komórkami, został przeprojektowany i może również realizować transport dla VIRTIO.

Zaimplementowano możliwość wyłączenia tworzenia stron o dużej pamięci (ogromnej strony) w celu zablokowania luki CVE-2018-12207 na procesorach Intel, umożliwiając nieuprzywilejowanemu atakującemu zainicjowanie odmowy usługi, co prowadzi do zawieszenia systemu w komunikacie „Błąd weryfikacji maszyny” stan.

W przypadku systemów z procesorami ARM64 obsługiwany jest SMMUv3 (Jednostka zarządzania pamięcią systemu) i jednostka PVU TI (jednostka wirtualizacji peryferyjnej). W przypadku środowisk piaskownicy, które działają na górze komputera, dodano obsługę PCI.

W systemach x86 możliwe jest włączenie trybu CR4. (Zapobieganie instrukcjom w trybie użytkownika) zapewniane przez procesory Intel, co pozwala na zablokowanie wykonywania niektórych instrukcji w przestrzeni użytkownika, takich jak SGDT, SLDT, SIDT, SMSW i STR, które mogą być wykorzystane w atakach mających na celu zwiększenie uprawnień w systemie .

Zdobądź Jailhouse

Jailhouse obsługuje działanie na systemach x86_64 z rozszerzeniami VMX + EPT lub SVM + NPT (AMD-V), a także na procesorach ARMv7 i ARMv8 / ARM64 z rozszerzeniami wirtualizacji.

Chociaż ponadto rozwijany jest generator obrazów oparty na pakietach Debiana dla kompatybilnych urządzeń.

Możesz znaleźć instrukcje kompilacji i instalacji, a także inne informacje W poniższym linku.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.