Emulation과 Simulation
Emulation
하나의 시스템이 다른 시스템의 하드웨어를 모방하는 기술이다. (사전적 의미로는 어떠한 사물 또는 사람을 동일하게, 혹은 더 낫게 하려는 것이다.)
이때 모방하는 하드웨어는 실제 device에서 사용되는 운영체제부터 사운드 카드까지 다양하게 에뮬레이션 할 수 있기 때문에 그 범위가 매우 넓다.
개발과 관련해서 에뮬레이터라 하면, 컴퓨터의 소프트웨어 에뮬레이터를 말한다. 일반적으로 폰 노이만 아키텍처의 경우 하나 이상의 CPU와 여러 개의 디바이스, 그리고 메모리에 연결된 데이터 버스로 구성되는데, 소프트웨어가 이들 모두를 에뮬레이션해야한다. 따라서 컴퓨터 아키텍처의 내부 구조를 고려해 에뮬레이션 해야한다.