Przegląd technologii wirtualizacji

Z Thomas-Krenn-Wiki
Przejdź do nawigacji Przejdź do wyszukiwania

Technologie

Emulacja sprzętu

Podczas emulacji sprzętu emulowane są wszystkie komponenty (CPU, chipset, karty I/O, ...) komputera. Emulacja CPU tłumaczy informacje sprzętowe z emulowanego CPU dla natywnego procesora (np. emulacja PowerPC, ARM, SPARC, MIPS, ... na x86). Prowadzi to większego obciążenia, co wiąże się ze spadkiem wydajności. Systemy gościa mogą być eksploatowane bez konieczności dostosowania.

Przykłady emulacji sprzętu:

Wirtualizacja sprzętu

Podobnie jak w emulacji sprzętu są emulowane liczne komponenty (chipset, karty I/O, ...). Procesor nie jest jednak emulowany, niektóre rozkazy są przechwytywane i dostosowywane. W ten sposób w systemie gościa może być wykorzystywana jedynie architektura procesora, która jest zastosowana w systemie hosta. Przez co wydajność jest znacznie wyższa niż podczas emulacji sprzętu.

Systemy gościa mogą być eksploatowane bez konieczności dostosowania.

Przykłady wirtualizacji sprzętu:

Parawirtualizacja

W parawirtualizacji nie jest emulowany hardware systemu. Host oferuje natomiast specjalne API dla dostępu do sprzętu. W systemie gościa może być wykorzystywana architektura CPU, który jest fizycznie obecny w systemie hosta. System gościa (jądro) musi zostać dostosowany, ABI (Application Binary Interface) pozostaje niezmieniony.

Przykłady:

Wirtualizacja systemu operacyjnego

Tutaj również nie jest przeprowadzana emulacja. Host i system gościa wykorzystują jedno jądro. Przez co w systemie gościa może być wykorzystywany tylko ten sam system operacyjny co w systemie hosta (np. Linux w Linuksie, różne dystrybucje są również możliwe). Ta technologia nie generuje dużego dodatkowego obciążenia, gdyż nie jest przeprowadzana emulacja i wywołania systemowe przebiegają przez jedno a nie dwa jądra. Systemy gościa mogą zostać uruchomione w ciągu kilku sekund.

Przykłady:

Linki

Powiązane artykuły

Klaster HA z DRBD
Porty dla oprogramowania Virtuozzo i Plesk