Maystyle :
Admin : New post
Guestbook
Local
media
Catergories
Recent Articles
Recent Comments
Recent Trackbacks
Calendar
Tag
Archive
Link
Search
 
  Hyper - V 아키텍처 
작성일시 : 2010. 4. 23. 10:21 | 분류 : Windows Server/Virtualization

출처 : Windows Internals 5th Edition

Root Partition

VM Service
- MMC를 통한 Child Patition 관리를 위한 WMI 인터페이스 제공
- Root Partition의 어플리케이션과 Hyper –v 및 Child Patition 과의 통신을 책임 짐
- Device Visible 여부 및 CPU Memory 할당

VM Work Porcess
- 스냅 샷이나 상태 전환, Hypervisor에서 전달하는 여러가지 알림 (디바이스의 노출과 같이 VM Service의 설정과 함께 움직이는 일들)과 같은 전형적인 모놀릭 Hypervisor에서 수행 했던 일들을 수행
- vmwp.exe 로 표현되며, 가상화 스택상에서 터미널 서버의 RDP와 비슷한 역활(View, 인터페이스)을 수행

Virtualization Service Providers
- Child Patition에 노출된 장치들의 고속 에뮬레이션을 담당 (VM 서비스와는 역활이 다름)

VM Infrastructure Driver
- Hyper – v 와 유저 모드 어플리케이션인 VM Service 간의 직접 통신이 불가능 하기 때문에 사용하는 커널 모드 디바이스 드라이버 (VID)
- MIMIO 및 ROM 과 같은 Lowmemory 장치 서비스 제공

Hypervisor API Library
- Hypervisor 와 Child Partition 간의 인터페이스 역확 (Hyper call)
- winhv.sys 디바이스 드라이버로 구현 되어 있음

Hyper – V
- 부팅 시 hvboot.sys 로딩 후 AMD의 경우 Hvax64.exe 인텔인 경우 Hvix64 로딩 (가상화 구현 방식이 약간 다르기 때문)

Child Partition

Hypervisor에 의해 관리되는 자신의 Guest Virtual Address Space (GVA)로 제약 됨

Virtualization Service Clients (VSCs)
- Child Partition에 디바이스의 에뮬레이션을 담당 (실제 디바이스는 에뮬레이션 디바이스와 Synthetic 디바이스로 나눠지며, 후자가 성능이 우수함)

Enligthements
- 윈도우 가상화 성능 향상의 키라고 할 수 있는 것으로 윈도의 커널 코드를 가상화에 맞게 변경한 것
- 일반적인 윈도 커널과는 다른 방식으로 동작하며 하드 웨어에 종속적이며, 결과적으로는 Hypercall 로 가공됨을 의미 (예 : Hypervisor는 오랫동안 지속되는 루프가 실행 될 때, 해당 루프를 모두 추적하는 것이 아니라 변경되는 사항만을 확인 더욱 구체적으로 이야기 하자면 Child Partition에서 APIC 가 실행 중일 때 H/W 적인 인터럽트가 발생 하면 당연히 해당 인터럽트가 처리되는게 정상이나 해당 Child Partition에 이런 인터럽트가 해당 되지 않으면 차단하는 역활도 하며, 메모리 관리의 경우 TLB를 Flushing 하는 경우 CPU에서 이 명령 셋이 모든 Child Partition에 적용 되게 되는데 이를 방지하는 역활도 진행)

|