Skip to main content

Virtual Machine

가상 머신이란, 물리 하드웨어 시스템 위에 자체 CPU, Memory, Storage, Network Interface 할당 받은, 하나의 가상의 컴퓨터 시스템처럼 동작하는 환경이다.

이러한 하드웨어 수준의 가상화는 물리 하드웨어의 Hypervisor 소프트웨어로 인해 가능하다.

컨테이너와 많이 비교되는데, 가상 머신은 리소스를 더 많이 사용하는 대신, 완전히 격리된 환경 덕분에 호스트 머신의 OS 커널을 공유하는 컨테이너 대비 보안에 장점을 가진다.

참고로 Amazon EC2 인스턴스 같은 경우도 가상 머신으로 구성 돼 있다. 가령, t2.micro 인스턴스의 리소스를 보면 1 vCPU, 1 GB mem으로 구성 돼 있는데 vCPU(가상 CPU)를 보면 알 수 있듯이 가상 머신 위에 동작하고 있는 것이다.


Emulator vs Virtual Machine

Emulator와는 유사하지만 다른점이 있다.

일단 목적에 있어 다르다. Emulator는 물리 하드웨어의 동작을 온전히 모방하는 데 있고, Virtual Machine은 하드웨어 수준에서 격리된 환경을 제공하는 데 있다.

또한, Emulator는 가상화 기술을 사용하게 되면, 가상화에 필요한 기능만을 제공하기 때문에-가상 머신 전용 드라이버를 따로 설치해야 하는 등-하드웨어의 동작을 온전히 모방하지 못할 수 있다. 따라서 Emulator는 가상화를 사용하지 않는다고 보는게 맞다.

Related Links