통합검색
· 마을서비스란?  · 포럼마을  · 일반마을  · 테마마을  · 마을랭킹  · 활동왕
· 덱스퍼트란?  · TECBOX   · PRSBOX   · 이용안내  
· DEXT제품군  · 솔루션베이  · S/W & ESD 컴포넌트
· 프로그램베이
· LiveSeminar  · LiveConference
[Windows Driver Model] 포럼 마을 입니다.
  마을등급 Windows Driver Model   이 마을은 포럼마을 입니다이 마을은 자유가입제 마을 입니다 마을소개 페이지로 이동 전입신청
마을촌장촌장 조성배 주민 747 since 2006-12-29
우리마을 공지사항
질문&답변
강좌&팁
자유게시판
자료실
앨범
개인게시판
마을 게시판
등록된 마을 게시판이
없습니다.
랑데브 게시판
칼럼 게시판
개발자 고충상담
Dev Talk
자유토론방
벼룩시장
재나미 우스개
구인/프로젝트 정보
사람인 채용 게시판
  고객지원 게시판
마이 데브피아
 나의 e-Money 내역
 활동왕 My Page
 스크랩한 게시글보기
 쪽지관리
 주소록관리

 칼럼 게시판 ※ 베스트 컬럼왕 이벤트가 진행 중 이오니 추천 부탁드려요!
 하이퍼바이저(Hypervisor) Research 2012-06-20 오후 5:13:51
 ChrisKr7  ChrisKr7님께 메시지 보내기ChrisKr7님을 내 주소록에 추가합니다.ChrisKr7님의 개인게시판 가기 번호: 267 추천:3  / 읽음:89,152

Hypervisor

 

 

 

1. 정의

 

 Virtual Machine Manager(VMM)이라고도 불리며 하드웨어 가상화(Hardware Virtualization) 기술 중 하나로 여러 개의 OS들이 

     한 개의 호스트 머신(Host Computer)위에서 돌게 해 준다.

 Hypervisor의 예

   

 

 

 

2. 하드웨어 가상화의 장점(advantages of platform virtualization)

 

A. machine consolidation

  → U.S. EPA 연구에 의하면 서버 용량의 약 5%만 실제로 사용된다고 한다.  단일 서버에서 여러 플랫폼을 가상화하면 서버 활용도를 

      높일 수 있고 활용도가 높아지므로 서버 수가 줄어든다.

 

B. reduce datacenter costs by reducing your physical infrastructure and improving your server to admin ratio

  → 서버 수가 줄어들면 유지비용 및 전력, 관리비용 절감을 가져온다.  서버당 관리자가 줄어들기 때문에 안정성 또한 향상을 

       가져올 수 있다..

 

☆ 이렇든 저렇든 해도 가장 큰 장접은 비용 절감이다.  조사에 의하면 하드웨어 가상화로 50~70% overall IT costs를 줄인      사례들이 많다.

 

 

 

3. 하드웨어 가상화 기법의 종류(types of hardware virtualization technologies)

 

A. Guest Operating System Virtualization

  a. steps

    → 하드웨어 장비(host hardware - 보통 서버)에서 Windows, Linux, Unix 또는 MacOS X와 같이 수정되지 않은 OS(a standard 

         unmodified operating system, 원본 OS 이미지)를 구동한다.

     → 이 구동된 OS위에서 MS Word나 Excel을 실행시키는 것처럼 가상화 어플(virtualization application)을 실행시킨다.

     → 가상화 어플위에서 각각의 Guest OS들이 구동된다.

  b. responsibilities of the virtualization application

    → 실행된 가상화 어플은 각각의 VM들의 시작, 종료, 관리(starting, stopping, managing)를 한다.

    → 실행된 가상화 어플은 각각의 VM들을 대신하여 물리적 하드웨어 자원(physical hardware resources)들에 대한 접근을 제어한다.

     → 실행된 가상화 어플은 "binary rewriting" 프로세스에 관여한다.

         - binary rewriting : scanning the instruction stream of the executing guest system and replacing any privileged instruction 

                                    with safe emulation.

         - binary rewriting 프로세스는 guest operating system이 마치 가상화 어플 위에서가 아닌 system hardware에서 직접 

           구동되는 것처럼 느끼게 해준다.

  c. an illustration of guest OS based virtualization

  d. known guest OS virtualixation technologies

    → VMWare Server, Virtual Box

 

B. Shared Kernel Virtualization

  a. outline   

    → Shared Kernel Virtualization은 Linux, Unix의 architectual design의 이점들을 취했다.  이 가상화 기법을 이해하기 위해서는                   Linux, Unix 두 개의 main components를 먼저 이해하는 것이 도움이 된다.

          ① Kernel : Linux, Unix의 core는 kernel이다.  Kernel은 OS와 physical hardware간의 모든 상호통신 및 관계를 핸들한다.

          ② Root File System : OS가 잘 기능할 수 있도록 libraries, files, utils들을 포함하고 있다.

     → Shared Kernel Virtualization에서는 각각의 guest OS들은 자기 자신의 root file system을 가지며 host OS의 kernel을 공유한다.

  b. an illustration of shared kernel virtualization

  

    → 이런 방식의 가상화는 커널이 시스템 리부팅 없이 동적으로 현재 root file system을 변경할 수 있다는 것(chroot)에 기반한다.

     → 이런 방식의 가장 큰 단점은 Guest OS가 shared kernel의 버전과 compatible 해야 한다는 것이다.

          단적인 예로 Linux kernel에서 MS Windows Guest OS를 구동할 수 없다.

  c. known shared kernel virtualization technologies

    → Linux Vserver, Solaris Zones and Containers, FreeVPS, OpenVZ

 

C. Kernel Level Virtualization

  a. outline

    → kernel level virtualization에서는 host OS가 여러 개의 VM들을 제어, 관리하기 위해 설계된 확장 기능들을 가지고 있는 수정 

          kernel(specially modified kernel)위에서 구동한다.

     → shared kernel virtualization과 달리 각각의 Guest OS들은 자기 자신의 kernel을 구동한다.  하지만 Guest OS들이 같은

          하드웨어로 compile되어야 한다는 제한이 있다는 것은 shared kernel virtualization과 비슷하다.

  b. an illustration of kernel level virtualization

  c. known kernel level virtualization technologies

    → User Mode Linux(UML), Kernel-based Virtual Machine(KVM)

 

 

 

4. 하이퍼바이저 구분(hypervisor classification)

 

A. Type 1(native, bare metal)

  → 하드웨어 가상화 기법 중 C Type (Kernel Level Virtualization)

  → VM Server for SPARC, the Citrix XenServer, KVM, VMWare ESX/ESXi, MS Hyper-v

 

B. Type 2(hosted)

  → 하드웨어 가상화 기법 중 A, B Type (Guest OS virtualization - MS Windows, Shared Kernel Virtualization - LInux, Unix)

  → BHyVe, VMWare Workstation, Virtual Box

 

C. Illustration

 

 

 

5. 하이퍼바이저 가상화(hypervisor virtualization - hypervisor type 1)

 

A. Rings에 대한 이해 (understanding rings)

  → x86 family CPU는 rings라 알려진 코드가 실행될 수 있는 보호레벨(protection level)들의 범위를 제공한다. Ring 0이 가장 높은 레벨          (the highest level privilege)이며 보통 OS system kernel이 ring 0에서 구동된다.

  → Ring 0에서 코드가 실행된다 함은 system space, kernel mode, supervisor mode에서 실행된다고 말할 수 있다.

  → OS위에서 구동되는 어플들은 일반적으로 ring 3에서 코드가 실행된다.

  → Hypervisor는 ring 0에 위치하므로 Guest OS의 kernel들은 더 낮은 ring에서 구동되어야 한다.  하지만 불행하게도 대부분의 OS             system kernel들은 ring 0에서만 가능한 일들(CPU 특수 명령 실행, 직접적으로 메모리를 작동)을 수행하기 위해서 ring 0에서 

      구동되도록 쓰여졌다.  이러한 문제를 해결하기 위한 해결방안이 최근에 고안되었고 아래 B, C에 서술하였다.

 

B. Para-virtualization

 

 

  → Paravirtualization에서는 Guest OS kernel system이 hypervisor 위에서 돌아가도록 수정된다.

       (modified guest operating system)

  → Guest OS kernel system은 ring 0에서만 돌아가도록 설계된 동작들을 가지고 있는데 이 동작들을 hypervisor 위에서 돌아가도록 

      수정한다.

  → Guest OS kernel system을 수정해야 하는 제한 사항때문에 이 기법은 Linux와 같이 오픈소스 OS에 주로 쓰인다.

 

C. Full virtualization

 

  → Full virtualization은 수정하지 않은 Guest OS(Unmodified)들을 지원한다.

  → Full virtualization에서는 Guest OS들이 수정되지 않았기 때문에 ring 0에서만 작동하는 동작들을 가지고 있으나 hypervisor에서는           CPU emulsation을 통하여 이런 동작들을 제어하고 보호한다.

  → 이런 emulation 프로세스가 para-virtualization에 비해 시간과 자원을 소모하므로 상대적으로 느리다.

 

D. para-virtualization vs full virtualization performance comparison

  → http://shortrecipes.blogspot.kr/2009/03/xen-performance-of-full-virtualization.html

 

E. Hypervisor based virtualization solutions : Xen, Vmware ESX Server, MS Hyper-V technology

 

 

 

참고 사이트

http://www.virtuatopia.com/index.php/An_Overview_of_Virtualization_Techniques

http://www.ibm.com/developerworks/linux/library/l-hypervisor/

 

 

LaZyDev's Blog

 

[코멘트] 좋음
2012-06-20 21:24
 dalgoo  dalgoo님께 메시지 보내기dalgoo님을 내 주소록에 추가합니다.dalgoo님의 개인게시판 가기 
추천하기는 둘째치고 댓글 등록 자체가 어렵다는...ㅡ.ㅡ
저장 취소
[코멘트] 좋음
2012-06-21 08:55
 ChrisKr7  ChrisKr7님께 메시지 보내기ChrisKr7님을 내 주소록에 추가합니다.ChrisKr7님의 개인게시판 가기 
ㅋㅋ 그렇군요.. 아무생각없이 올렸더니 가로 넓이가 장난 아니네요~ ㅎㅎ
저장 취소
[코멘트] 좋음
2012-06-21 15:17
 rainbeauty  rainbeauty님께 메시지 보내기rainbeauty님을 내 주소록에 추가합니다.rainbeauty님의 개인게시판 가기 
가로가 굉장히 기네요 ㅋㅋㅋ 좋은내용 감사합니당~
저장 취소
[코멘트] 좋음
2012-06-26 23:56
 alli07  alli07님께 메시지 보내기alli07님을 내 주소록에 추가합니다.alli07님의 개인게시판 가기 
모니터 꽉차네!!

존내용 잘봐쌈~
저장 취소
[코멘트] 좋음
2012-07-24 09:21
 heiskjs  heiskjs님께 메시지 보내기heiskjs님을 내 주소록에 추가합니다.heiskjs님의 개인게시판 가기 
ㅋㅋㅋㅋ
저장 취소
[코멘트] 좋음
2012-08-20 12:58
 redsatan  redsatan님께 메시지 보내기redsatan님을 내 주소록에 추가합니다.redsatan님의 개인게시판 가기 
아니 이게 왜 컬럼 ㅋㅋ

암튼 컬럼왕 성공했네 ㅋㅋ ㅊㅋㅊㅋ
저장 취소
[코멘트] 좋음
2012-08-23 18:11
 ChrisKr7  ChrisKr7님께 메시지 보내기ChrisKr7님을 내 주소록에 추가합니다.ChrisKr7님의 개인게시판 가기 
생일// 그르게 -_=;;

그냥 올린것뿐인데.. 근데 추천3개인데 컬럼왕이야 웃겨 -_+;;
저장 취소
[코멘트] 좋음
2012-08-24 10:50
 redsatan  redsatan님께 메시지 보내기redsatan님을 내 주소록에 추가합니다.redsatan님의 개인게시판 가기 
저격 성공인거지 뭘 ㅋㅋ 근데 다시 웹 문서로 새로 수정해봐바

글 본문도 문장 다 짤려서 -_-

위엣분들 제대로 읽기나 한건지 의심스럽-_-;;
저장 취소
[코멘트] 좋음
2012-08-27 10:19
 ChrisKr7  ChrisKr7님께 메시지 보내기ChrisKr7님을 내 주소록에 추가합니다.ChrisKr7님의 개인게시판 가기 
귀찮음 -_=;;
저장 취소
[코멘트] 좋음
2012-09-25 13:56
 BornToLearn  BornToLearn님께 메시지 보내기BornToLearn님을 내 주소록에 추가합니다.BornToLearn님의 개인게시판 가기 
다 짤렸네요...-_-
저장 취소
코멘트쓰기
  좋음   놀람   궁금   화남   슬픔   최고   침묵   시무룩   부끄럼   난감
* 코멘트는 500자 이내(띄어쓰기 포함)로 적어주세요.
목록 보기   지금 보고 계시는 글을 회원님의 my Mblog >> 스크랩에 넣어두고 다음에 바로 보실 수 있습니다.  
회사소개  |   개인정보취급방침  |  제휴문의  |   광고문의  |   E-Mail 무단수집거부  |   고객지원  |   이용안내  |   세금계산서
사업자등록번호 안내: 220-81-90008 / 통신판매업신고번호 제 2017-서울구로-0055호 / 대표: 홍영준, 서민호
08390, 서울시 구로구 디지털로32길 30, 1211호 / TEL. 02_6719_6200 / FAX. 02-6499-1910
Copyright ⓒ (주) 데브피아. All rights reserved.