운영체제란 OS(operation system)라고 부르며, 대표적으로 Windows나 MacOS가 있다.
운영체제는 컴퓨터상에 설치되어 있는 수 많은 프로그램들이 직접 하드웨어를 제어하려고 할 때 복잡한 과정들을 준비해주는 역활을 한다.
운영체제가 없다면 컴퓨터를 구동시킬 수 없으며 거대하고 복잡한 소프트웨어의 집합이다.
만약 나의 컴퓨터가 windows인데, 리눅스환경에서 개발을 하고 싶을 때 어떻게 해야할까?
윈도우즈를 지우고 리눅스를 깔던가 컴퓨터를 새로 구매해야 하는걸까?
물론 그것은 말이 안된다. 이 때 우리가 이용할 수 있는 것이 가상머신(Virtual Machine) 기술이다.
가상으로 장비(가상 CPU, 메모리, 하드디스크, 네트워크 카드 등을 구현)를 만들고 그 위에 운영체제를 설치하면 가상머신안에서 다른 운영체제를 사용할 수 있게 된다.
(MacOS에서 실행한 윈도우 가상머신)
물론 단점으로는 운영체제를 설치해야하기 때문에 용량을 많이 잡아먹고 컴퓨터의 성능을 상당히 저하시킬 수 있다.