반가상화
Paravirtualization컴퓨팅에서 반가상화 또는 파라 가상화는 가상 머신에 소프트웨어 인터페이스를 제공하는 가상화 기법으로, 가상 머신은 기본 하드웨어-소프트웨어 인터페이스와 유사하지만 동일하지는 않다.
수정된 인터페이스의 목적은 가상화되지 않은 환경에 비해 가상 환경에서 실행하기 훨씬 어려운 작업을 수행하는 데 소요되는 게스트의 실행 시간 부분을 줄이는 것이다.반가상화는 게스트와 호스트가 이러한 작업을 요청하고 승인할 수 있도록 특별히 정의된 '후크'를 제공하며, 그렇지 않으면 가상 도메인(실행 성능이 더 나쁜 경우)에서 실행될 수 있다.성공적인 반가상화 플랫폼은 VMM(가상화 시스템 모니터)을 더 단순화(가상 도메인에서 호스트 도메인으로 중요한 작업의 실행을 재배치함으로써)하거나 가상 게스트 내에서 시스템 실행의 전반적인 성능 저하를 줄일 수 있다.
반가상화를 위해서는 게스트 운영 체제를 para-API용으로 명시적으로 포팅해야 함 – 반가상화를 인식하지 않는 기존 OS 배포는 반가상화 VMM 위에서 실행할 수 없음. 그러나 운영 체제를 수정할 수 없는 경우에도 중요한 p를 많이 사용할 수 있는 구성 요소를 사용할 수 있을 수 있음반가상화의 에러포뮬런스 장점예를 들어 Xen 윈도우즈 GPLPV 프로젝트는 Xen 하이퍼바이저에서 실행되는 마이크로소프트 윈도우즈 가상 게스트에 설치하기 위한 반가상화 인식 장치 드라이버 키트를 GPL의 조건에 따라 라이센스를 부여한다.[1]이러한 애플리케이션은 반가상화 시스템 인터페이스 환경을 통해 액세스할 수 있는 경향이 있다.이를 통해 여러 암호화 알고리즘 모델에 걸친 런 모드 호환성을 보장하여 반가상화 프레임워크 내에서 원활한 통합이 가능하다.[2]
역사
반가상화는 낡은 생각의 신조어다.IBM의 VM 운영 체제는 1972년[3](이전까지 CP-67)부터 이러한 기능을 제공해왔다.VM 세계에서는 하드웨어 유지보수 소프트웨어에서만 일반적으로 사용되는 명령 코드를 사용하기 때문에 정의되지 않은 "DIAGNOSE 코드"로 지정된다.
Parallels Workstation 운영 체제는 동등한 것을 "하이퍼콜"이라고 부른다.아래의 하이퍼바이저에 대한 시스템 호출은 모두 동일하다.이러한 통화는 "게스트" 운영 체제에서 지원이 필요하며, 이러한 통화를 하려면 하이퍼바이저별 코드가 있어야 한다.
"반가상화"라는 용어는 Denali Virtual Machine Manager와 관련하여 연구 문헌에서 처음 사용되었다.[4]이 용어는 Xen, L4, TRANGO, VMware, Wind River 및 XtratuM 하이퍼바이저를 설명하는 데에도 사용된다.이러한 모든 프로젝트는 실제 x86 명령 집합의 가상화하기 어려운 부분을 구현하지 않는 가상 시스템을 구현함으로써 x86 하드웨어의 고성능 가상 시스템을 지원하거나 이를 위해 반가상화 기법을 사용할 수 있다.[5]
하이퍼바이저는 기본 컴퓨터 시스템의 가상화를 제공한다.전체 가상화에서는 게스트 운영 체제가 하이퍼바이저에서 수정되지 않은 상태로 실행됨그러나 게스트 운영 체제가 하이퍼바이저와 통신함으로써 성능과 효율성이 향상된다.게스트 운영 체제가 하이퍼바이저에 대한 의도를 표시할 수 있도록 허용함으로써 각 게스트 운영 체제가 가상 시스템에서 실행될 때 더 나은 성능을 얻기 위해 협력할 수 있다.이러한 유형의 통신을 반가상화라고 한다.
2005년에 VMware는 게스트 운영 체제와 하이퍼바이저 간의 통신 메커니즘으로 반가상화 인터페이스인 VMI(가상 머신 인터페이스)를 제안했다.이 인터페이스는 운영 체제의 단일 이진 버전을 기본 하드웨어 또는 반가상화 모드의 하이퍼바이저에서 실행할 수 있는 투명한 반가상화를 가능하게 했다.AMD와 Intel CPU가 보다 효율적인 하드웨어 지원 가상화를 지원함에 따라 표준이 폐기되고 2.6.37년에는[6] Linux 커널에서 VMI 지원이 제거되었으며 2011년에는 VMware 제품에서 VMI 지원이 제거되었다.[7]
2008년, Red Hat은 Virt를 발표했다.KVM 및 Linux용 IO 반가상화, Virt마이크로소프트 윈도용 IO 드라이버도 이용할 수 있다.
2008년에 마이크로소프트는 Hyper-V 반가상화를 발표했다.
Linux 반가상화 지원
2006년 매사추세츠 주 보스턴에서 열린 USENIX 컨퍼런스에서 다수의 Linux 개발 벤더(IBM, VMware, Xen, Red Hat 포함)가 "파라비츠-ops"[8]라고 불리는 Xen 그룹이 처음 개발한 대안적인 형태의 반가상화에 협력했다.파라비트-ops 코드(흔히 pv-ops로 단축됨)는 2.6.23 버전 현재 메인라인 Linux 커널에 포함되었으며 하이퍼바이저와 게스트 커널 사이에 하이퍼바이저 독립 인터페이스를 제공한다.Ubuntu 7.04 및 RedHat 9부터 pv-ops 게스트 커널에 대한 배포 지원. 2.6.24 이상의 커널을 기반으로 하는 Xen 하이퍼바이저는 버전 6으로 시작하는 VMware Workstation 제품과 마찬가지로 pv-ops 게스트를 지원한다.[9]VirtualBox도 버전 5.0에서 지원한다.
참고 항목
참조
- ^ "Installing signed GPLPV drivers in Windows Xen instances". Univention Wiki. Retrieved 2013-04-10.
The GPLPV driver is a driver for Microsoft Windows, which enables Windows DomU systems virtualised in Xen to access the network and block drivers of the Xen Dom0. This provides a significant performance and reliability gain over the standard devices emulated by Xen/Qemu/Kvm.
- ^ Armstrong, D (2011). "Performance issues in clouds: An evaluation of virtual image propagation and I/O paravirtualization". The Computer Journal. 54 (6).
- ^ "VM History and Heritage". IBM. Retrieved 2007-10-10.
- ^ A. Whitaker; M. Shaw; S. D. Gribble (2002). "Denali: Lightweight Virtual Machines for Distributed and Networked Applications". University of Washington Technical Report. Archived from the original on 2008-01-14. Retrieved 2006-12-09.
- ^ Strobl, Marius (2013). Virtualization for Reliable Embedded Systems. Munich: GRIN Publishing GmbH. p. 54,63. ISBN 978-3-656-49071-5.
- ^ "kernel/git/torvalds/linux.git – Linux kernel source tree". Git.kernel.org. Retrieved 2017-03-03.
- ^ "Update: Support for guest OS paravirtualization using VMware VMI to be retired from new products in 2010–2011 – Guest OS Install Guide – VMware Blogs". Blogs.vmware.com. 2009-09-22. Retrieved 2017-03-03.
- ^ "XenParavirtOps – Xen". Wiki.xenproject.org. Retrieved 2017-03-03.
- ^ "VMware Introduces Support for Cross-Platform Paravirtualization – VMware". VMware. 16 May 2008. Archived from the original on 13 April 2011.
외부 링크
- Anandtech – 하드웨어 가상화: 반가상화에 대한 너트 및 볼트 기술 기사