ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • virtualization techniques
    Operating System 2015. 3. 6. 16:43
    hardware Solution


    Hardware-Assist Virtualization : 
    CPU의 지원을 받음으로써 가상화 방식의 가장 큰 과부화였던 Binary Translation이 없앴다.
    Non-Root mode와 root mode privilege level을 가진다.


    AMD 가상화 (AMD-V)
    64비트 x86 아키텍처에 대한 AMD의 가상화 확장

    인텔 가상화 기술 (인텔 VT)
     인텔 VT는 IA-32 (VT-x)를 위한 가상화 기술, IA-64 (VT-i)를 위한 가상화 기술, Directed I/O (VT-d)를 위한 가상화 기술, Connectivity (VT-c)를 위한 가상화 기술로 이루어져 있다

    Software Solution

    Binary Translation
    Hyper call

     virtualization techniques


    emulator : 운영체제와 하드웨어를 1:1로 matching하여 명령어를 수정해준다.
    emulation engine이 guest OS와 HW사이에 binary translation을 수행한다.
    예를 들어 guestOS가 Andriod이고, HW가 intel이면, MOV r0,r1 명령어를 MOV EAX, EDX 명령어로 변환한다.


    Full Virtualization : guest OS의 수정이 필요 없으며, 시스템 전체를 가상화한다. 
    guest OS와 HW사이에 ring0레벨의 Virtual Machine Monitor(=hypervisor) 를 가진다.
    VMM은 가상머신을 모니터링하는 소프트웨어 계층으로 하드웨어 자원관리, 가상 머신 스케쥴링 등 가상머신을 동작시키는데 필요한 모든 작업을 담당한다. Binary Translation을 수행한다.

    Para Virtualization : guest OS의 수정이 필요하다.
    modified guest OS와 HW사이에 ring0레벨의 Virtual Machine Monitor(=hypervisor) 를 가진다.





    KVM도 type1으로 보기그렇고, Xen도 애매한 반가상화라고 부르는게 참 구분이 애매모호해보인다.
    요즘엔 기술의 발전으로 type1이든 type2이든 성능에서는 크게 차이를 보이지 않는다.
    튜닝이나 코딩만 잘하면 된다...

    CPU 가상화

    특권 명령, 제어 명령, 동작 명령


    I/O 가상화


    MMU가상화 : physical memory에 접근하는 모든 특권 명령어는 trap되고, 새로이 허용된 영역에 mapping된 주소로 대체된다.

    GPU가상화 : 



    split Device Driver

    Direct Assignment

    IOMMU


    'Operating System' 카테고리의 다른 글

    SPT, NPT  (0) 2015.03.06
    concurrency  (0) 2015.02.15
    common, segment,system Register and EFLAGS  (0) 2014.01.20
    GDT, segment descriptor  (0) 2014.01.14
    Task 상태정의  (0) 2013.06.14
Designed by Tistory.