Transcript Hypervisor

가상화 기술을 이용한
메모리 보호
그리고 ring -1
박지환
[email protected]
가상화 기술이란?
1999년 VMWare가 최초로 릴리즈 됨
이후 현재 10.0 버젼까지 출시되어있음
XEN 2003년
KVM 2007년
Hyper-V 2008 년
왜? 사용량이 증가할까?
• 가장 큰 이유는 클라우드 시스템
• 컴퓨터 자원의 낭비
왜? 사용량이 증가할까?
• 소프트 웨어를 이용한 가상화
1. Web Server 의 가상호스트 설정
2. Windows 서버의 다중 접속
3. Paravirtualization
왜? 사용량이 증가할까?
왜? 사용량이 증가할까?
왜? 사용량이 증가할까?
• 2005년 Intel Pentinum4 에서 처음으로 선보인 기술
• 저 전력 ATOM CPU에서도 지원
• 하드웨어 장치를 가상화
무엇을 할 수 있나?
어떻게 동작할까?
• 불독화
• 소프트웨어 구현
HYPERVISOR 이해
Root Operation
Non-root
Operation
HYPERVISOR 이해
독립적인 VMCS ( Virtual Machine Control Struct )
HYPERVISOR 이해
• VM EXIT
Non-root
Operation
1. Invalid Opcode
2. I/O Operation
3. CPUID, GETSEC, VM OPERATION … etc
Root
Operation
4. Other Priviliged Operation
HYPERVISOR를 이용한 메모리 보호
• EPT ( Extended Page Table )
• 가상 메모리를 맵핑을 좀더 편리하고 빠르게 처리함
• 이전 세대에서는 Shadow Page Table 이라는 기술을 사용
HYPERVISOR를 이용한 메모리 보호
HYPERVISOR를 이용한 메모리 보호
Guest
Virtual
Memory
Guest OS
Paging
Guest
Physical
Memory
EPT
Paging
VM EXIT!!
Real
Physical
Memory
BLUE PILL
Q&A
함께 프로젝트를 진행한
김지성, 조민기, 최부근
정신적 지주인
노용환 멘토님
감사합니다.