에뮬레이터
에뮬레이터(Emulator)는 한 시스템에서 다른 시스템을 복제한다. 그리하여 두 번째 시스템이 첫 번째 시스템을 따라 행동하는 것이다. 외부의 행동에 대해 똑같이 따라하려고 하는 이 관점은 시뮬레이션과는 정 반대이다. 왜냐하면, 시뮬레이션은 자주 내부 상태와 관련하여, 흉내내는 시스템의 추상적인 모델과 관계가 있기 때문이다.
컴퓨터 과학 속의 에뮬레이터
에뮬레이터는 다른 프로그램이나 장치를 모방하는 "컴퓨터 프로그램 또는 전자기기의 능력"을 뜻한다. 예를 들어, 많은 프린터들은 HP 레이저젯 프린터를 따라하려고 한다. 왜냐하면 꽤나 많은 소프트웨어가 HP 프린터에 맞춰 만들어져 있기 때문이다. HP 프린터를 따라함으로써, 프린터는 진짜 HP 프린터에 맞춰진 소프트웨어에서 돌아갈 수 있다. 에뮬레이션은 소프트웨어적으로 만든 장치가 정말로 다른 장치라고 믿도록 "속이는 것이다".
어느 하드웨어 에뮬레이터는 하드웨어 장치의 형태를 따온 에뮬레이터다. 프린터의 롬 속의 프린터 에뮬레이터와 FPGA 기반의 하드웨어 에뮬레이터가 그 예다.
도스박스는 도스 명령 줄 인터페이스를 가상으로 구현한다.
구조
- 메모리 하부 시스템
- CPU 시뮬레이터
- 입출력
에뮬레이터의 종류
- 가상 핸드폰(핸드폰 에뮬레이터)은 컴퓨터상에서 소프트웨어적으로 진짜 핸드폰인것처럼 기능하고 작동한다.
- 가상 프린터(프린터 에뮬레이터)는 컴퓨터상에서 소프트웨어적으로 프린터로서 인식된다.
- 가상 스캐너(스캐너 에뮬레이터)는 컴퓨터상에서 소프트웨어적으로 설치되어 이미지 스캐너 프로그램과 호환되거나 테스트등에 이용된다.[1]
오해
에뮬레이터라고 해서 모든 에뮬레이터가 반드시 롬(ROM) 파일이 필요한 것이 아니다. (콘솔 에뮬레이터와 혼동하지 마십시오.) 한국의 일부 게임 에뮬레이터 관련 사이트에 잘못 나와 있는 위의 정의는 고쳐질 필요가 있다. 옛날 컴퓨터와 도스를 가상으로 구현하는 프로그램, 소리 출력을 가상으로 구현하는 프로그램뿐 아니라, PearPC나 Virtual PC, Virtual Box와 같이 컴퓨터 자체(CPU 제외)를 가상으로 구현해내는 프로그램도 에뮬레이터의 일종이며, 고전게임을 즐길 수 없는 컴퓨터에서 가상으로 구현해 내는 ZSNES, MAME, MESS과 같은 프로그램도 (콘솔)에뮬레이터이다.
디지털 아카이빙에서의 에뮬레이션
에뮬레이션은 기록학에서 디지털 아카이빙의 보존 수단 중 하나이다. 기본적인 작동 원리는 앞서 말한것과 동일하며, 디지털원본에 적용된 기술적인 조건들에 변경이 있어도 인코딩되어 있는 콘텐츠를 재생할 수 있는 환경을 프로그램으로 만들어내어 디지털정보의 접근성을 보장하는 기술이다.[2]
같이 보기
각주
외부 링크
- 에뮬레이터 소식, 다운로드
- (영어) 에뮬레이터 - Curlie