Firma Siemens
Hiperwizor jest zaimplementowany jako moduł dla jądra Linuksa i zapewnia wirtualizację na poziomie jądra. Komponenty dla systemów gościnnych są już zawarte w głównym jądrze Linuksa. Do zarządzania izolacją wykorzystywane są mechanizmy wirtualizacji sprzętu, jakie zapewniają nowoczesne procesory. Charakterystycznymi cechami Jailhouse jest lekka implementacja i skupienie się na wiązaniu maszyn wirtualnych ze stałym procesorem, obszarem pamięci RAM i urządzeniami sprzętowymi. Takie podejście pozwala, aby jeden fizyczny serwer wieloprocesorowy obsługiwał działanie kilku niezależnych środowisk wirtualnych, z których każde jest przypisane do własnego rdzenia procesora.
Dzięki ścisłemu połączeniu z procesorem obciążenie hypervisora jest zminimalizowane, a jego implementacja znacznie uproszczona, ponieważ nie ma potrzeby uruchamiania złożonego harmonogramu alokacji zasobów - przydzielenie oddzielnego rdzenia procesora gwarantuje, że na tym procesorze nie będą wykonywane żadne inne zadania . Zaletą tego podejścia jest możliwość zapewnienia gwarantowanego dostępu do zasobów i przewidywalnej wydajności, co sprawia, że Jailhouse jest odpowiednim rozwiązaniem do tworzenia zadań realizowanych w czasie rzeczywistym. Minusem jest ograniczona skalowalność, ograniczona liczbą rdzeni procesora.
W terminologii więziennej środowiska wirtualne nazywane są „kamerami” (komórka w kontekście więzienia). Wewnątrz kamery system wygląda jak serwer jednoprocesorowy, co pokazuje wydajność
W nowej wersji
- Dodano obsługę Marvell MACCHIATObin, Xilinx Ultra96,
Microsys miriac SBC-LS1046A i Texas Instruments AM654 IDK; - Dodano statystyki dla każdego rdzenia procesora;
- Włączono resetowanie urządzeń PCI po wyłączeniu kamery;
- Struktura drzewa urządzeń została dostosowana do najnowszych wersji jądra Linuksa;
- Dodano ochronę przed atakami Spectre v64 dla platform ARM i ARM2. Ustawienia qemu-arm64 uwzględniają zmiany z najnowszych wydań QEMU. Rozwiązano problemy z przepisywaniem oprogramowania układowego PSCI na płytach Orange Pi Zero;
- W przypadku platformy x86 podczas uruchamiania środowisk demonstracyjnych (więźniowie) włączone jest korzystanie z instrukcji SSE i AVX oraz dodano raportowanie wyjątków.
W planach na przyszłość jest długo oczekiwana obsługa IOMMUv3, zwiększająca efektywność wykorzystania pamięci podręcznej procesora (
Źródło: opennet.ru