정의
- computer system을 가상현실화한 것
- 소프트웨어로 컴퓨터 시스템, 하드웨어를 구현해 놓은 것
- 디지털의 형태로만 존재하는 컴퓨터
- 물리적으로 존재하는 컴퓨터를 host, 가상머신 컴퓨터를 guest라고 하는데, host의 하드웨어를 이용해 한 컴퓨터에 여러 개의 운영체제를 사용할 수 있도록 만듬
작동 방식
하이퍼바이저를 이용해 가상머신을 생성하고 사용, 관리함
하이퍼바이저
- 가상 머신 모니터
- 가상 머신을 생성하고 실행하는 프로세스
- 가상 머신을 호스트 컴퓨터에서 실행하고 모든 VM에 프로세서, 메모리 및 스토리지를 배포할 수 있도록 해주는 소프트웨어 계층
- 메모리 및 처리와 같은 호스트 컴퓨터의 리소스를 가상으로 공유하여 호스트 컴퓨터가 여러 게스트 가상 머신을 지원할 수 있도록 함
- 일반적으로 두 가지 유형
- 베어메탈 - 운영체제가 직접 프로그램을 제어하듯이 호스트의 하드웨어에서 직접 실행됨
- 호스팅 - 다른 컴퓨터 프로그램처럼 운영 체제에서 소프트웨어 계층으로 실행됨
- ex) vrtual box, VMware
종류
- 프로세스 가상머신
- 플랫폼 독립적인 환경에서 컴퓨터 프로그램을 실행
- 기반 하드웨어 또는 운영 체제의 정보를 감춤
- 프로그램이 모든 플랫폼에서 동일한 방식으로 실행됩니다.
- ex) JVM(JAVA Virtual Machine)
- 시스템 가상머신
- 호스트 컴퓨터의 물리적 리소스를 여러 가상 머신 간에 공유
장점
- 각각의 가상머신이 구분되어 있기 때문에 하나의 가상 머신이 바이러스 등으로 문제가 생기더라도 다른 가상 머신과 호스트에 영향을 끼치지 않음 (→ 테스트하는 데에 많이 사용됨)
- 오류가 생긴 가상 머신을 제거하거나 오류 생기기 이전으로 복구할 수 있음
- 하나의 컴퓨터에 여러 개의 다양한 운영체제를 사용할 수 있음 (ex - 맥에서 윈도우 쓰기)
- 하나의 컴퓨터를 여러 명의 사용자가 상호 간섭 없이 사용할 수 있음
단점
- 하나의 물리적 시스템에서 여러 가상 머신을 실행하면 성능이 불안정해질 수 있음
- 가상 머신은 물리적 컴퓨터보다 효율성이 떨어지며 실행 속도도 느림
'42' 카테고리의 다른 글
[born2beroot] 비밀번호 정책 설정 (0) | 2023.01.16 |
---|---|
[born2beroot] sudo 정책 설정 (0) | 2023.01.16 |
[born2beroot] APPArmor (0) | 2023.01.16 |
[born2beroot] 패키지 관리 apt, aptitude (0) | 2023.01.16 |
[born2beroot] 가상머신 운영체제 - Debian, Rocky (0) | 2023.01.16 |