본문 바로가기
Embedded System/Virtualization

가상화(Virtualization)

by rewyear 2024. 1. 30.

하나의 H/W system 다수의 Virtual Machine(OS) 동작할 있게 하는 기술로서 가상화 방식에 따라 크게 가지 방식으로 분류 .

 

하이퍼바이저 가상화(Type I)

  • 호스트 OS가 필요 없이 직접 H/W에 Hypervisor 설치하여 Guest OS를 관리하고 구동 시키는 방식(Bare metal 가상화).
  • Guest OS Hypervisor와의 통신을 위해 수정된 코드를 구현해야
  • 반가상화 / 전가상화로 더욱 세분화.

호스트 가상화(Type II)

  • Host OS 위에 가상화 소프트웨어를 통해 Guest OS 구동되는 방식(e.g Windows OS 설치해서 사용하는 Virtaul Box)
  • VM의 H/W resource 관련 I/O 요청이 반드시 호스트 OS를 통해야 하기 때문에 오버헤드가 발생

 

 

Full Virtualization

  • 하드웨어를 완전히 가상화하는 방식
  • Hypervisor를 구동하게 되면 DOM0라고 하는 관리용 가상 머신이 실행되며 모든 VMs의 하드웨어 접근은 DOM0를 통해 이루어짐. (VMs이 요청한 명령들은 항상 DOM0를 거쳐 Hypervisor로 가기 때문에 Overhead가 발생)
  • 전 가상화를 구성할 경우 하드웨어 적으로 HVM(Hardware Virtual Machine)을 지원해야 함(e.g. Intel VT, AMD-V)

 

Para Virtualization

  • Hypervisor Call을 통해 Hypervisor에게 H/W resource에 대한 명령을 직접 요청(like System call between user and kernel)
  • VMs는 자기 자신이 가상화 되어있다는 사실을 인지해야 하며, 각 VM에 맞는 HVC를 위해 커널을 수정해야 함.
300x250

'Embedded System > Virtualization' 카테고리의 다른 글

Xen Hypervisor  (0) 2024.02.23