버추얼박스(영어: VirtualBox)는 본래 이노테크(InnoTek)가 개발한 뒤, 현재는 오라클이 개발 중인 상용, 사유 소프트웨어(제한된 GPL 버전)로, 리눅스, macOS, 솔라리스, 윈도우를 게스트 운영 체제로 가상화하는 x86 가상화 소프트웨어이다.[2][3] 개발된 지 몇 해가 지나, 제한된 오픈 소스 버전인 버추얼박스 OSE가 GPL 하에 2007년 1월에 공개되었다.

버추얼박스
VirtualBox
원저자Innotek GmbH
개발자오라클
발표일2007년 1월 17일(17년 전)(2007-01-17)
안정화 버전
7.0.14[1] 위키데이터에서 편집하기 / 2024년 1월 16일
저장소
프로그래밍 언어C, C++, x86 어셈블리 언어
운영 체제윈도우, macOS, 리눅스, 솔라리스
플랫폼IA-32(윈도우 및 리눅스 전용), x86-64
크기플랫폼에 따라 61~118MB
종류하이퍼바이저
라이선스기본 패키지 (USB 1.1에 대해서만 USB 지원): GPLv2(선택적으로 소스 배포판의 대부분의 파일에 대한 경우 CDDL)
확장 패키지 (USB 3.0 지원 포함): PUEL
상태지원 중
웹사이트www.virtualbox.org
300px윈도우7에서 버추얼박스로 쿠분투 라이브 CD를 실행한 모습

VMWare 워크스테이션마이크로소프트 버추얼 PC와 같은 다른 상용 가상화 소프트웨어와 견주어 볼 때, 버추얼박스는 기능이 부족한 편이지만 특별한 기능이 제공된다. 이를테면 원격 데스크톱 프로토콜 (RDP), iSCSI 지원, RDP를 거치는 원격 장치의 USB 지원과 같이 원격으로 가상 컴퓨터를 제어하는 기능이 있다.

버추얼박스는 인텔의 하드웨어 가상화 VT-x와 AMD의 AMD-V를 지원한다.

2007년 DesktopLinux.com의 조사에 따르면, 버추얼박스는 리눅스 데스크톱 위에 윈도 프로그램을 실행시키는 가장 인기있는 소프트웨어 패키지로 3위에 등재되었다.[4]

2008년 2월 12일, 썬 마이크로시스템즈는 버추얼박스를 개발한 회사인 이노텍(Innotek)을 인수하였다.[5]2009년 4월 20일 오라클썬 마이크로시스템즈를 인수하면서 현재 Oracle VM VirtualBox로 배포되고 있다.

에뮬레이션 환경 편집

버추얼박스는 다음의 하드웨어 부품을 가상으로 구현한다:

  • 하드 디스크는 VDI (가상 디스크 이미지:Virtual Disk Image) 파일로 불리는 특별한 컨테이너 포맷으로 에뮬레이트된다. 현재는 다른 가상화 프로그램에서 쓰이는 포맷과 호환되지 않는다. 그러나 버추얼박스는 VMware Virtual Machine Disk Format(VMDK)의 이미지 파일을 읽고 쓸 수 있으며, Microsoft Virtual PC의 디스크 이미지(VHD) 또한 동일하게 지원하고 있다. 즉, VMware의 디스크 이미지나 VHD 디스크 이미지를 이용하여 버추얼박스의 게스트 운영체제를 설치할 수 있다.

게다가, 버추얼박스는 iSCSI와 연결하여 가상 하드 디스크를 사용하는 기능이 있다.

  • 기본적으로 버추얼박스가 사용하는 그래픽 어댑터는 8 메가바이트 램을 갖춘 표준 VESA 카드이며, 그래픽 메모리 용량은 수정할 수 있다. 게스트 확장에는 더 나은 성능을 위한 특별한 비디오 드라이버가 있으며, 이를 게스트 운영 체제에 설치하여 사용할 수 있다.
  • 이더넷 네트워크 어댑터로, 버추얼박스는 AMD PCNet PCI II(Am79C970A), AMD PCNet FAST III(Am79C973, 기본값), Intel PRO/1000 MT Desktop(82540EM), Intel PRO/1000 T Server(82543GC) 카드를 가상화한다.
  • 사운드 카드로, 버추얼박스는 ICH AC97과 사운드 블라스터(Sound Blaster) 16 장치를 가상화한다.
  • 클로즈드 소스 부분으로, USB 컨트롤러가 가상으로 구현됨으로써, 호스트에 장착된 아무 USB 장치나 게스트 운영 체제에 보이게 할 수 있다. 버추얼박스가 RDP 서버로서 동작할 경우, 호스트에 연결되어 있는 것처럼 원격 RDP 클라이언트에 USB 장치를 사용할 수 있다.

버추얼박스는 게스트 코드를 되도록 네이티브로 수행한다. (호스트 프로세서에서 에뮬레이션 과정 없이) 인텔 아키텍처의 게스트 링 3에서 실행 중인 사용자 모드 코드의 경우 이 기능이 정상 동작한다. 그러나 일반적으로 수많은 권한 명령어가 포함된 게스트 링 0 코드는 "가로채기"가 필요하다. 인텔 아키텍처에서 보통 쓰이지 않는 링 1 모드에서, 게스트 운영 체제를 실제로 링 0 코드에서 실행하는 것으로 속임으로써 이러한 충돌을 해결할 수 있다.

버추얼박스는 또한 인텔 VT 및 AMD AMD-V 하드웨어 보조 가상화를 지원하기 때문에 더 나은 성능과 더 나은 보안을 제공한다.[6]

맥 오에스 텐베타 버전으로 공개되어 있으며 맥 오에스 텐 10.5 (레퍼드)를 베타 2에서 지원한다.[7]

클로즈드 소스 버전과 오픈 소스 버전의 차이 편집

버추얼박스 소프트웨어에는 두 가지 버전이 있다. 완전한 버추얼박스 패키지는 사유 소프트웨어 라이선스를 가지며, 개인과 교육, 제품 평가용으로는 아무런 대가 없이 소프트웨어를 이용할 수 있다.[8] 상업적인 용도의 경우 썬 마이크로시스템즈에서 프로그램을 따로 구매해야 했지만, 2010년 12월 발표된 version 4 이후로는 core 패키지는 GPLv2를 따르는 프리웨어로 배포된다.

버추얼박스 오픈 소스 에디션(OSE)라고 불리는 두 번째 버전이 바로 GPL 라이선스를 가지는 오픈 소스 버전으로, 몇 가지 기능이 빠져 있다:[9]

  • 내장된 원격 데스크톱 프로토콜 (RDP) 서버.
  • USB 지원 (위의 내용에 이미 언급되어 있음) 및 RDP 서버와 원격 USB 장치 지원과의 결합
  • 가상 하드 디스크의 iSCSI 지원 (위의 내용에 이미 언급되어 있음).

오픈 소스 에디션은 데비안에 불안정 버전으로 2007년 8월 30일에 받아들여지게 되었다.[10]

같이 보기 편집

참조 편집

외부 링크 편집