Bochs

박스(Bochs)는 대부분이 C++로 작성되고 GNU LGPL의 자유 소프트웨어로 배포된 포터블 IA-32와 X86-64 IBM PC 호환 에뮬레이터이자 디버거이다. 프로세서(보호 모드 포함), 메모리, 디스크, 디스플레이, 이더넷, 바이오스, PC의 일반적인 하드웨어 주변기기를 에뮬레이트하는 것을 지원한다.

수많은 게스트 운영 체제는 도스, 여러 버전의 마이크로소프트 윈도우, BSD, 리눅스, Xenix, 랩소디(맥 OS X의 전신)을 포함하여 에뮬레이터를 사용하여 실행할 수 있다. Bochs는 안드로이드, iOS, 리눅스, macOS, 플레이스테이션 2, 윈도우, 윈도우 모바일을 포함한 수많은 호스트 운영 체제에서 구동할 수 있다.

Bochs는 운영 체제 개발에 대부분 사용되며(에뮬레이트되는 운영 체제가 충돌이 발생하면 호스트 운영 체제의 충돌로 이어지지 않으므로 에뮬레이트되는 운영 체제는 디버깅이 가능하다), 그 외에도 이미 실행 중인 호스트 운영 체제 안에서 다른 게스트 운영 체제를 구동하기 위해 사용할 수도 있다. 또, 컴퓨터 속도가 너무 빠르다는 이유로, 아니면 호환되지 않는 컴퓨터라는 이유로 구동이 되지 않는 PC 게임과 같은 오래된 소프트웨어를 구동하기 위해 사용할 수 있다.

역사 
Bochs는 사용을 위해 US$25의 가격으로 상용 라이선스의 프로그램으로 시작되었다. 사용자가 Bochs를 다른 소프트웨어와 연동해야 하는 경우 특별한 라이선스를 협상할 필요가 있다. 이 부분은 Mandrakesoft(현재의 맨드리바)가 선임 개발자 케빈 로튼(Kevin Lawton)으로부터 Bochs를 사들인 2000년 3월 22일에 변경되었으며 GNU LGPL로 리눅스용으로 출시되었다.

이용 
Bochs는 하드 드라이브, CD 드라이브, 플로피 드라이브를 포함하여 PC 운영 체제에 필요한 하드웨어를 에뮬레이트한다. 어떠한 CPU 가상화 기능을 활용하지 않으므로 대부분의 가상화 보다 더 느린 편이다. 게스트 운영 체제를 하드웨어와 완전하게 분리시킴으로써 추가적인 보안을 제공한다. Bochs는 또한 광활한 디버깅 기능을 제공한다. 코드 테스트를 위해 시스템 재시작을 할 필요가 줄어드므로 운영 체제 개발에 널리 사용된다.

"Graphical Debugger Interface for the Bochs PC Emulator"로 기술되는 BFE는 Bochs PC 에뮬레이터 내의 디버거를 위한 그래픽 인터페이스로서, 명령 단위, 레지스터 레벨로 단계별로 소프트웨어를 디버그할 수 있게 해주며 이는 마치 볼랜드의 터보 디버거와 유사하다.

에뮬레이트하는 하드웨어

플레이스테이션 2 포트 
PS2 버전이 KarasQ에 의해 포팅되었다. (psx-scene 포럼)

각주

외부 링크 

 

에뮬레이션 소프트웨어
C++로 작성된 자유 소프트웨어
자유 에뮬레이션 소프트웨어
x86 에뮬레이터