문서 편집 권한이 없습니다. 다음 이유를 확인해주세요: 요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다: 사용자. 문서의 원본을 보거나 복사할 수 있습니다. [[분류: 가상화]] == 개요 == 하드웨어 기반 가상화 (Hardware-based virtualization)이란 하드웨어의 도움을 통해서 가상의 컴퓨팅 환경을 가상머신에 제공하는 방법을 의미한다. [[Intel-VT]] 혹은 AMD-V와 같은 기술이 대표적으로서, [[CPU]]내부적으로 가상의 vCPU를 만들 수 있는 기능을 제공함으로서, 기존의 [[Binary translation]]이나 [[Para virtualization]]과 같은 OS의 수정이 없는 [[Full virtualization]]을 성능의 저하가 거의 없이 돌릴 수 있도록 하였다. 물론 Para virtualization의 성능 향상을 무시할 수 없기 때문에 [[Virtio]]와 같은 기술이 반가상화의 장점을 가져오면서 I/O와 같은 경우 매우 큰 성능향상을 가져올 수 있다. 이는 I/O와 같은 경우에는 보안상 반드시 ([[SR-IOV]]와 같은 Passthrough 기술이 아닌이상) [[VMM]]의 접근 권한 체크가 필요하기 때문이다. 하드웨어 기반 가상화 방식에서도 [[Trap and emulate]]가 사용된다. 이는 모든 명령어를 하드웨어로 가상화 시키는 것은 매우 힘들기 때문이다. 따라서 자주 발생하고 성능에 큰 영향을 미치는 명령어를 중심으로 하드웨어가 대신 가상화를 도와준다. 이러한 자주 발생하고 성능에 큰 영향을 미치는 대표적인 명령이 바로 Page table수정이다. 기존에는 [[Shadow page table]]을 사용하여서 모든 메모리 접근 권한을 매 Page table entry마다 Emulate해주어야 했지만, Hardware-based virtualization에서는 [[Extended page table]]을 통해서 이러한 권한 체크를 하드웨어가 대신 수행할 수 있도록 하여서 Page table과 같은 [[MMU]] overhead를 줄였다. == 같이 보기 == #[[x86 가상화]] Hardware-based virtualization 문서로 돌아갑니다.