jun-wiki

View My GitHub Profile

Posts (Latest 10 updated) :
Read all
Contents:
  1. 가상화
    1. 개념
    2. 하이퍼바이저
      1. 종류
    3. 가상화 방식
    4. 장점/단점

가상화

개념

  • 물리 하드웨어 위에 가상 하드웨어를 만들어 여러 게스트 OS1 실행

  • CPU의 가상화 지원(Intel VT-x/AMD-V)과 MMU2/페이지 테이블3을 활용해 격리와 성능 확보


하이퍼바이저

한 컴퓨터에서 여러 가상 머신 돌리게 해주는 가상화 전담 소프트웨어/레이어4

종류

  • Type-1(베어메탈): 하드웨어 위에 직접 동작 (ESXi, Hyper-V, Xen, KVM). 서버/프로덕션 주력

  • Type-2(호스트형): 기존 OS 위의 앱처럼 동작 (VirtualBox, VMware Workstation, Parallels). 개발/학습에 편리


가상화 방식

  • 완전 가상화: 게스트 OS 수정 없이 구동

  • 준가상화(Para-virtualization): 게스트에 특수 드라이버(virtio 등)로 I/O 성능 향상

  • OS 수준 가상화(컨테이너): 커널은 공유, 프로세스·파일시스템만 격리 (Docker/Podman)
    부팅 빠름, 오버헤드5 매우 낮음, 대신 커널은 동일 계열이어야 함


장점/단점

  • 장점: 격리, 스냅샷/롤백, 자원 통합(Consolidation), 이식성 좋은 테스트 환경

  • 단점: I/O 성능 오버헤드5 가능, GPU/USB/특수장치는 패스스루 설정 필요, 운영 복잡도





  1. 가상 머신에 설치된 OS 

  2. 하드웨어 메모리 관리 장치, 가상주소를 물리주소로 바꾸고 접근 권한 검사. OS의 페이지 테이블 참조 

  3. 가상 페이지를 물리 프레임에 연결하는 자료 구조 

  4. 무엇(소프트웨어), 어디(레이어)인지를 표현 

  5. 명령어 처리시 들어가는 간접적, 추가적인 컴퓨터 자원  2