"에뮬레이터"의 두 판 사이의 차이
잔글 (→중앙 처리 장치) |
|||
15번째 줄: | 15번째 줄: | ||
=== 바이러스 탐지 === | === 바이러스 탐지 === | ||
− | 에뮬레이터(emulator)는 사전적의미로 대리 실행기라는 의미를 가지고 있다.대리 실행기 라는 의미에서와 같이 에뮬레이터는 실제 [[컴퓨터]] [[시스템]] 상에서 실행 파일을 직접적으로 실행하는 것이 아니라 실제 컴퓨터 시스템에 가상의 환경이나 가상의 [[하드웨어]] 이미지를 생성하여 해당 가상 하드웨어를 통하여 간접적으로 실행하는 것을 의미한다. | + | 에뮬레이터(emulator)는 사전적의미로 대리 실행기라는 의미를 가지고 있다. 대리 실행기 라는 의미에서와 같이 에뮬레이터는 실제 [[컴퓨터]] [[시스템]] 상에서 실행 파일을 직접적으로 실행하는 것이 아니라 실제 컴퓨터 시스템에 가상의 환경이나 가상의 [[하드웨어]] 이미지를 생성하여 해당 가상 하드웨어를 통하여 간접적으로 실행하는 것을 의미한다. 의심파일을 사용자 컴퓨터에서 실제로 실행해 보기 전에 가상화 기반에서 먼저 실행함으로써 실제 시스템에는 영향을 끼치지는 않는다는 장접이 있지만, 시스템 자원에 대한 소모가 크다는 단점도 있다.<ref name="나침판"> 나침판, 〈[https://jianna6.tistory.com/entry/%EC%95%85%EC%84%B1%EC%BD%94%EB%93%9C 악성코드 탐지 방법들]〉, 《티스토리》, 2014-01-11 </ref> |
− | 이러한 의미로 인해 일부에서는 에큘레이터를 이용한 탐지 기법을 코드 [[에뮬레이션]](Code Emulation) 또는 CPU 에뮬레이션(CPU Emulation) 이라고도 이야기 한다. 이런 방법을 이용해서 바이러스를 탐지한다면 알려지지 않은 악성 코드를 탐지하기 위한 부분에서는 상당히 강력한 방법이라고 할 수 있다.<ref> 장영준, 〈[https://www.ahnlab.com/kr/site/securityinfo/secunews/secuNewsView.do?curPage=1&seq=9531 | + | 이러한 의미로 인해 일부에서는 에큘레이터를 이용한 탐지 기법을 코드 [[에뮬레이션]](Code Emulation) 또는 CPU 에뮬레이션(CPU Emulation) 이라고도 이야기 한다. 이런 방법을 이용해서 바이러스를 탐지한다면 알려지지 않은 악성 코드를 탐지하기 위한 부분에서는 상당히 강력한 방법이라고 할 수 있다.<ref> 장영준, 〈[https://www.ahnlab.com/kr/site/securityinfo/secunews/secuNewsView.do?curPage=1&seq=9531 (악성코드 탐지-3) 에뮬레이터와 샌드박스]〉, 《안랩》, 2007-03-13 </ref> |
− | |||
− | |||
=== DENSE === | === DENSE === | ||
− | DENSE(Deep Emulator Network Search)는 | + | DENSE(Deep Emulator Network Search)는 [[인공지능]](AI)기반 에뮬레이터로, [[스탠퍼드]] 대학의 컴퓨터 과학자인 [[멜로디 구안]](Melody Guan)과 [[옥스퍼드 대학]]의 물리학자인 [[무함마드 카심]](Muhamad Kasim)이 제시한 [[그래픽카드]](GPU) 기반 환경에서 시뮬레이션 시간을 수십억 배 줄일 수 있는 방법이다. 천문학 시뮬레이션을 슈퍼컴퓨터에서 한 것과 GPU기반 환경에서 DENSE 기술로 가속을 했을 때 결과는 99.9%이상 같았다고 한다. 이는 굳이 슈퍼컴퓨터를 쓰지 않아도 원하는 시뮬레이션 결과를 더 빨리 얻을 수 있다는 것이다.<ref>〈[https://www.udna.kr/post/%EB%AC%BC%EB%A6%AC%ED%95%99-%EA%B4%80%EB%A0%A8-%EC%BB%B4%ED%93%A8%ED%84%B0-%EA%B8%B0%EB%B0%98-%EC%8B%9C%EB%AE%AC%EB%A0%88%EC%9D%B4%EC%85%98%EC%9D%84-%EC%8A%88%ED%8D%BC%EC%BB%B4%ED%93%A8%ED%84%B0-%EB%8F%84%EC%9B%80-%EC%97%86%EC%9D%B4-%EA%B0%80%EC%86%8D%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95 물리학 관련 컴퓨터 기반 시뮬레이션을 슈퍼컴퓨터 도움 없이 가속하는 방법]〉, 《유디엔에이》</ref> |
=== 콘솔 === | === 콘솔 === | ||
32번째 줄: | 30번째 줄: | ||
;X86 | ;X86 | ||
* '''[[박스]]'''(Bochs) : 컴퓨터, 모바일에서 x86 환경의 에뮬레이션을 가능하게 하는 무료, 오픈소스 프로그램이다.<ref>〈[https://namu.wiki/w/Bochs bochs]〉, 《나무위키》</ref> | * '''[[박스]]'''(Bochs) : 컴퓨터, 모바일에서 x86 환경의 에뮬레이션을 가능하게 하는 무료, 오픈소스 프로그램이다.<ref>〈[https://namu.wiki/w/Bochs bochs]〉, 《나무위키》</ref> | ||
− | * 도스박스 : DOS(특히 MS-DOS)를 최신 운영체제에서 맛볼 수 있도록 돌려주는 에뮬레이터다. 지원대상은 대표적인 운영체제 3종 Windows, macOS, 리눅스 전부다.<ref>〈[https://namu.wiki/w/DOSBox?from=%EB%8F%84%EC%8A%A4%EB%B0%95%EC%8A%A4 DOSBox]〉, 《나무위키》</ref> | + | * '''[[도스박스]]''' : DOS(특히 MS-DOS)를 최신 운영체제에서 맛볼 수 있도록 돌려주는 에뮬레이터다. 지원대상은 대표적인 운영체제 3종 Windows, macOS, 리눅스 전부다.<ref>〈[https://namu.wiki/w/DOSBox?from=%EB%8F%84%EC%8A%A4%EB%B0%95%EC%8A%A4 DOSBox]〉, 《나무위키》</ref> |
− | * FX!32 : Intel x86 명령어 세트 용으로 구축된 Win32 프로그램이 Windows NT를 실행하는 DEC Alpha 기반 시스템에서 실행할 수 있도록 하는 소프트웨어 에뮬레이터 프로그램이다.<ref>〈[https://en.wikipedia.org/wiki/FX!32 FX!32]〉, 《WIKIPEDIA》</ref> | + | * '''[[FX!32]]''' : Intel x86 명령어 세트 용으로 구축된 Win32 프로그램이 Windows NT를 실행하는 DEC Alpha 기반 시스템에서 실행할 수 있도록 하는 소프트웨어 에뮬레이터 프로그램이다.<ref>〈[https://en.wikipedia.org/wiki/FX!32 FX!32]〉, 《WIKIPEDIA》</ref> |
− | * PCem : 2007년부터 영국의 개발자 Sarah Walker가 중심이 되어 개발하고 있는 오픈 소스 IBM PC 호환기종 에뮬레이터. Microsoft Windows와 리눅스용으로 릴리즈되고 있다.<ref>〈[https://namu.wiki/w/PCem PCem]〉, 《나무위키》</ref> | + | * '''[[PCem]]''' : 2007년부터 영국의 개발자 Sarah Walker가 중심이 되어 개발하고 있는 오픈 소스 IBM PC 호환기종 에뮬레이터. Microsoft Windows와 리눅스용으로 릴리즈되고 있다.<ref>〈[https://namu.wiki/w/PCem PCem]〉, 《나무위키》</ref> |
− | * QEMU : ARM, x86, MIPS 등을 포함한 7개의 아키텍처를 에뮬레이트하는 오픈 소스 에뮬레이터이다.<ref name="목록"></ref> | + | * '''[[QEMU]]''' : ARM, x86, MIPS 등을 포함한 7개의 아키텍처를 에뮬레이트하는 오픈 소스 에뮬레이터이다.<ref name="목록"></ref> |
;모토로라 680x0 | ;모토로라 680x0 | ||
− | * 맥 68K 에뮬레이터: 파워PC 클래식 맥 OS용 에뮬레이터이다.<ref name="목록"></ref> | + | * '''[[맥 68K 에뮬레이터]]''' : 파워PC 클래식 맥 OS용 에뮬레이터이다.<ref name="목록"></ref> |
;파워PC | ;파워PC | ||
− | * 피어PC : 독립적인 아키텍처인 파워피씨 에뮬레이터로, 파워피씨 아키텍처에서 가동되는 OS X, 다윈, 리눅스를 파워피씨가 아닌 CPU에서 가동시킬수 있다.<ref> 〈[https://ko.wikipedia.org/wiki/%ED%94%BC%EC%96%B4PC 피어PC]〉, 《위키백과》</ref> | + | * '''[[피어PC]]''' : 독립적인 아키텍처인 파워피씨 에뮬레이터로, 파워피씨 아키텍처에서 가동되는 OS X, 다윈, 리눅스를 파워피씨가 아닌 CPU에서 가동시킬수 있다.<ref> 〈[https://ko.wikipedia.org/wiki/%ED%94%BC%EC%96%B4PC 피어PC]〉, 《위키백과》</ref> |
− | * 로제타: 맥 OS X에 빌드되는 파워PC 프로세서용 애플의 에뮬레이터이다.<ref name="목록"></ref> | + | * '''[[로제타]]''' : 맥 OS X에 빌드되는 파워PC 프로세서용 애플의 에뮬레이터이다.<ref name="목록"></ref> |
− | * WarpUP: MorphOS에 내장된, 파워PC 확장 카드를 위한 아미가 시스템. [[아미가OS]]용으로 이용 가능하다.<ref name="목록"></ref> | + | * '''[[WarpUP]]''' : MorphOS에 내장된, 파워PC 확장 카드를 위한 아미가 시스템. [[아미가OS]]용으로 이용 가능하다.<ref name="목록"></ref> |
=== 풀 시스템 시뮬레이터=== | === 풀 시스템 시뮬레이터=== | ||
56번째 줄: | 54번째 줄: | ||
=== 멀티 시스템 === | === 멀티 시스템 === | ||
* blueMSX: Z80 기반 컴퓨터와 [[콘솔]]을 에뮬레이트한다<ref name="목록"></ref> | * blueMSX: Z80 기반 컴퓨터와 [[콘솔]]을 에뮬레이트한다<ref name="목록"></ref> | ||
− | * MAME: 다중 아케이드 머신을 에뮬레이트한다<ref name="목록"></ref> | + | * 마메(MAME): Multiple Arcade Machine Emulator의 약자로 다중 아케이드 머신을 에뮬레이트한다<ref name="목록"></ref> |
* DAPHNE: 다양한 레이저디스크 비디오 게임을 에뮬레이트하는 아케이드 에뮬레이터 [[애플리케이션]]으로서, [[게임]]들을 보존하고 가능한 오리지널에 가까운 플레이 체험을 제공하기 위해 고안되었다.<ref name="목록"></ref> | * DAPHNE: 다양한 레이저디스크 비디오 게임을 에뮬레이트하는 아케이드 에뮬레이터 [[애플리케이션]]으로서, [[게임]]들을 보존하고 가능한 오리지널에 가까운 플레이 체험을 제공하기 위해 고안되었다.<ref name="목록"></ref> | ||
170번째 줄: | 168번째 줄: | ||
멀티 시스템 에뮬레이터는 여러 기종의 시스템을 에뮬레이트할 수 있다.<ref name="위키에뮬레이터"></ref> | 멀티 시스템 에뮬레이터는 여러 기종의 시스템을 에뮬레이트할 수 있다.<ref name="위키에뮬레이터"></ref> | ||
* higan | * higan | ||
− | * MAME, MESS | + | * 마메(MAME), MESS |
* Mednafen | * Mednafen | ||
* OpenEmu | * OpenEmu | ||
184번째 줄: | 182번째 줄: | ||
* 〈[https://namu.wiki/w/%EC%97%90%EB%AE%AC%EB%A0%88%EC%9D%B4%ED%84%B0 에뮬레이터]〉, 《나무위키》 | * 〈[https://namu.wiki/w/%EC%97%90%EB%AE%AC%EB%A0%88%EC%9D%B4%ED%84%B0 에뮬레이터]〉, 《나무위키》 | ||
* 나침판, 〈[https://jianna6.tistory.com/entry/%EC%95%85%EC%84%B1%EC%BD%94%EB%93%9C 악성코드 탐지 방법들]〉, 《티스토리》, 2014-01-11 | * 나침판, 〈[https://jianna6.tistory.com/entry/%EC%95%85%EC%84%B1%EC%BD%94%EB%93%9C 악성코드 탐지 방법들]〉, 《티스토리》, 2014-01-11 | ||
− | * 장영준, 〈[https://www.ahnlab.com/kr/site/securityinfo/secunews/secuNewsView.do?curPage=1&seq=9531 | + | * 장영준, 〈[https://www.ahnlab.com/kr/site/securityinfo/secunews/secuNewsView.do?curPage=1&seq=9531 (악성코드 탐지-3) 에뮬레이터와 샌드박스]〉, 《안랩》, 2007-03-13 |
* [https://wikidocs.net/25478 전자기록의 장기보존]〉, 《위키독스》 | * [https://wikidocs.net/25478 전자기록의 장기보존]〉, 《위키독스》 | ||
* 〈[https://www.udna.kr/post/%EB%AC%BC%EB%A6%AC%ED%95%99-%EA%B4%80%EB%A0%A8-%EC%BB%B4%ED%93%A8%ED%84%B0-%EA%B8%B0%EB%B0%98-%EC%8B%9C%EB%AE%AC%EB%A0%88%EC%9D%B4%EC%85%98%EC%9D%84-%EC%8A%88%ED%8D%BC%EC%BB%B4%ED%93%A8%ED%84%B0-%EB%8F%84%EC%9B%80-%EC%97%86%EC%9D%B4-%EA%B0%80%EC%86%8D%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95 물리학 관련 컴퓨터 기반 시뮬레이션을 슈퍼컴퓨터 도움 없이 가속하는 방법]〉, 《유디엔에이》 | * 〈[https://www.udna.kr/post/%EB%AC%BC%EB%A6%AC%ED%95%99-%EA%B4%80%EB%A0%A8-%EC%BB%B4%ED%93%A8%ED%84%B0-%EA%B8%B0%EB%B0%98-%EC%8B%9C%EB%AE%AC%EB%A0%88%EC%9D%B4%EC%85%98%EC%9D%84-%EC%8A%88%ED%8D%BC%EC%BB%B4%ED%93%A8%ED%84%B0-%EB%8F%84%EC%9B%80-%EC%97%86%EC%9D%B4-%EA%B0%80%EC%86%8D%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95 물리학 관련 컴퓨터 기반 시뮬레이션을 슈퍼컴퓨터 도움 없이 가속하는 방법]〉, 《유디엔에이》 |
2021년 8월 5일 (목) 11:50 판
에뮬레이터(emulator)는 다른 장치의 특성을 복사하거나 똑같이 실행하도록 설계된 장치이다.[1]
목차
개요
에뮬레이터는 한 시스템에서 다른 시스템을 복제한다. 두 번째 시스템이 첫 번째 시스템을 따라 행동하는 것이다. 외부의 행동에 대해 똑같이 따라하려고 하는 이 관점은 시뮬레이션과는 정 반대이다. 왜냐하면, 시뮬레이션은 자주 내부 상태와 관련하여, 흉내내는 시스템의 추상적인 모델과 관계가 있기 때문이다.[2] 즉, 지원되지 않는 하드웨어에서 소프트웨어를 실행하기 위한 목적으로 널리 쓰인다.
에뮬레이션 레벨
주로 CPU나 메모리 이외의 하드웨어의 에뮬레이션을 어느 관점에서 구현하느냐에 따라 로우 레벨 에뮬레이션(Low Level Emulation)이나, 하이 레벨 에뮬레이션(High Level Emulation)으로 나뉘게 된다.[3]
하이 레벨 에뮬레이션은 하드웨어를 API레벨에서 구현하는 방식을 말하고 로우레벨 에뮬레이션은 하드웨어를 일일히 구현하는 방식을 말한다. 하이 레벨 에뮬레이션은 로우 레벨 에뮬레이션보다 훨씬 빠른 속도로 구동된다는 장점이 있지만 하드웨어 부분의 에뮬레이팅을 하지 않아 호환성은 로우 레벨 에뮬레이션보다 떨어진다. 최근에는 하드웨어가 복잡해지면서 분석이 어려워지고, 운영체제(OS)의 크기가 커지면서 운영체제에서 제공하는 API를 통해 하드웨어에 접근하는 경향이 많은 비교적 현대의 콘솔 에뮬레이터의 경우 하이 레벨 에뮬레이션의 비중이 높아지고 있다.[3]
활용
전자기록 장기보존
디지털 정보를 생산한 시점에서 사용된 하드웨어, 매체, 운영체제, 소프트웨어의 운용을 그대로 흉내 내어 그 내용을 읽어내는 프로그램을 통하여 재현하는 보존 전략이다. 에뮬레이션을 통한 장기보존 전략의 특징으로는 새로운 기술이 출현할 때마다 이전의 프로그램 소스코드를 입수 가능하고, 프로그램 기능 명세 문서만으로 이전 프로그램을 구현해낼 수 있다. 또한 최신버전과 이전 버전 프로그램의 호환을 돕는 연계 소프트웨어가 존재한다. 비트 스트림을 그대로 두는 전략이므로 영구기록물관리기관의 경우 장기보존 대상 전자기록의 양은 해마다 증가하는데 컴퓨팅 변화에 따라 주기적으로 포맷 변환을 하는 노력을 없앨 수 있는 장점이 있다. 다만 시간이 흐를수록 에뮬레이터가 복잡해지고 제작이 난해해진다. 새로운 포맷이 지속적으로 추가되고, 이 모든 포맷을 에뮬레이션해야 해야 한다. 그리고 지속적으로 변화하는 컴퓨팅 환경에서 에뮬레이션을 통해 과거의 모습 그대로 재현한다는 보장을 할 수 없다는 한계가 있다.[4]
바이러스 탐지
에뮬레이터(emulator)는 사전적의미로 대리 실행기라는 의미를 가지고 있다. 대리 실행기 라는 의미에서와 같이 에뮬레이터는 실제 컴퓨터 시스템 상에서 실행 파일을 직접적으로 실행하는 것이 아니라 실제 컴퓨터 시스템에 가상의 환경이나 가상의 하드웨어 이미지를 생성하여 해당 가상 하드웨어를 통하여 간접적으로 실행하는 것을 의미한다. 의심파일을 사용자 컴퓨터에서 실제로 실행해 보기 전에 가상화 기반에서 먼저 실행함으로써 실제 시스템에는 영향을 끼치지는 않는다는 장접이 있지만, 시스템 자원에 대한 소모가 크다는 단점도 있다.[5] 이러한 의미로 인해 일부에서는 에큘레이터를 이용한 탐지 기법을 코드 에뮬레이션(Code Emulation) 또는 CPU 에뮬레이션(CPU Emulation) 이라고도 이야기 한다. 이런 방법을 이용해서 바이러스를 탐지한다면 알려지지 않은 악성 코드를 탐지하기 위한 부분에서는 상당히 강력한 방법이라고 할 수 있다.[6]
DENSE
DENSE(Deep Emulator Network Search)는 인공지능(AI)기반 에뮬레이터로, 스탠퍼드 대학의 컴퓨터 과학자인 멜로디 구안(Melody Guan)과 옥스퍼드 대학의 물리학자인 무함마드 카심(Muhamad Kasim)이 제시한 그래픽카드(GPU) 기반 환경에서 시뮬레이션 시간을 수십억 배 줄일 수 있는 방법이다. 천문학 시뮬레이션을 슈퍼컴퓨터에서 한 것과 GPU기반 환경에서 DENSE 기술로 가속을 했을 때 결과는 99.9%이상 같았다고 한다. 이는 굳이 슈퍼컴퓨터를 쓰지 않아도 원하는 시뮬레이션 결과를 더 빨리 얻을 수 있다는 것이다.[7]
콘솔
에뮬레이터의 분류 가운데 특정한 게임기의 환경을 컴퓨터나 다른 기종으로써 가상화된 형태로서 구현해 주는 에뮬레이터를 다른 에뮬레이터와 콘솔에뮬레이터(Console Emulator)로 분류해서 부른다. 일반적인 사용자가 에뮬레이터라고 하면 대게는 이것을 가리킨다. 흔히 에뮬로 줄여 부르기도 한다. 본래 하드웨어 또는 소프트웨어의 작동을 모방하는 것이면 무엇이든 에뮬레이터로 부를 수 있지만 일상생활에서 에뮬레이터라는 단어는 거의 게임 구동을 위하는 콘솔 및 구형 컴퓨터 에뮬레이터를 지칭하는 이유는 실질적으로 에뮬레이터가 필요한 경우가 게임뿐인 일이 대부분이기 때문이다.[3]
에뮬레이터 목록
중앙 처리 장치
- MIPS
- SPIM: 오픈 버추얼 플랫폼(Open Virtual Platform)의 OVPsim 500 mips MIPS32 에뮬레이터. 리눅스를 포함, 수많은 OS를 실행하는 MIPS32 프로세서용 최대 500 MIPS(초당 백만개의 명령을 수행할 수 있는 능력을 말한다. IPS : 초당 명령수)로 동작하는 MIPS 프로세서를 포함, 가상 플랫폼을 사용하여 컴퓨터에서 소프트웨어를 개발할 수 있게 허용한다.[8]
- X86
- 박스(Bochs) : 컴퓨터, 모바일에서 x86 환경의 에뮬레이션을 가능하게 하는 무료, 오픈소스 프로그램이다.[9]
- 도스박스 : DOS(특히 MS-DOS)를 최신 운영체제에서 맛볼 수 있도록 돌려주는 에뮬레이터다. 지원대상은 대표적인 운영체제 3종 Windows, macOS, 리눅스 전부다.[10]
- FX!32 : Intel x86 명령어 세트 용으로 구축된 Win32 프로그램이 Windows NT를 실행하는 DEC Alpha 기반 시스템에서 실행할 수 있도록 하는 소프트웨어 에뮬레이터 프로그램이다.[11]
- PCem : 2007년부터 영국의 개발자 Sarah Walker가 중심이 되어 개발하고 있는 오픈 소스 IBM PC 호환기종 에뮬레이터. Microsoft Windows와 리눅스용으로 릴리즈되고 있다.[12]
- QEMU : ARM, x86, MIPS 등을 포함한 7개의 아키텍처를 에뮬레이트하는 오픈 소스 에뮬레이터이다.[8]
- 모토로라 680x0
- 맥 68K 에뮬레이터 : 파워PC 클래식 맥 OS용 에뮬레이터이다.[8]
- 파워PC
- 피어PC : 독립적인 아키텍처인 파워피씨 에뮬레이터로, 파워피씨 아키텍처에서 가동되는 OS X, 다윈, 리눅스를 파워피씨가 아닌 CPU에서 가동시킬수 있다.[13]
- 로제타 : 맥 OS X에 빌드되는 파워PC 프로세서용 애플의 에뮬레이터이다.[8]
- WarpUP : MorphOS에 내장된, 파워PC 확장 카드를 위한 아미가 시스템. 아미가OS용으로 이용 가능하다.[8]
풀 시스템 시뮬레이터
- AlphaVM : 윈도우나 리눅스에서 실행되는 알파 프로세서 시스템 에뮬레이터이다.[8]
- Simics : Simics는 고성능 속도로 대상 하드웨어의 변경되지 않은 프로덕션 바이너리를 실행하는 데 사용되는 전체 시스템 시뮬레이터이다.[14]
- CPU Sim : 사용자가 단순한 아키텍처과 명령어 집합을 설계, 제작하고 시뮬레이션을 통해 해당 집합의 명령으로 된 프로그램들을 실행할 수 있게 하는 자바 애플리케이션이다.[8]
- GXemul: 풀 시스템 컴퓨터 아키텍처 에뮬레이션용 프레임워크이다.[8]
휴대전화 및 PDA
- 팜 OS 에뮬레이터 : Palm OS 애플리케이션을 작성, 테스트 및 디버깅하는 데 사용된다.[15]
- 어도비 디바이스 센트럴(Adobe Device Central) : 2007년 3월 CS3의 일부로 어도비 시스템즈가 만들고 출시한 소프트웨어 프로그램이다. CS 5.5를 끝으로 이 제품의 출시는 끝났으며, 2012년 4월 23일부로 개발이 중단되었다.[16]
- 블루스택 : 최초로 개발된 앱 플레이어이다.[17]
멀티 시스템
- blueMSX: Z80 기반 컴퓨터와 콘솔을 에뮬레이트한다[8]
- 마메(MAME): Multiple Arcade Machine Emulator의 약자로 다중 아케이드 머신을 에뮬레이트한다[8]
- DAPHNE: 다양한 레이저디스크 비디오 게임을 에뮬레이트하는 아케이드 에뮬레이터 애플리케이션으로서, 게임들을 보존하고 가능한 오리지널에 가까운 플레이 체험을 제공하기 위해 고안되었다.[8]
네트워크 시뮬레이터
- Ns (시뮬레이터) : 오픈 소스 소프트웨어이기 때문에 확장성이 매우 높으며, 온라인 문서도 풍부하다. 라우팅 및 멀티캐스트 프로토콜 관련 시뮬레이션에 매우 활발히 이용되고 있다. 뿐만 아니라, 애드혹 네트워크 연구에서도 이용되고 있다. Ns는 현존하는 여러 유명한 프로토콜을 지원한다. 무선/유선 양쪽 다 지원한다. ns를 조금 기능을 제한받는 네트워크 에뮬레이터로서도 사용할 수 있다.[18]
- NetSim
운영체제
- 유닉스
POSIX 시스템 외에 시그윈은 패키지 매니저를 포함하고 있어서 9000개 이상의 소프트웨어 패키지의 저장소에 연결할 수 있다.
- 마이크로소프트 윈도우[8]
프린터
- 고스트스크립트: 프린터 에뮬레이터[8]
단말
- 문자지향 터미널 에뮬레이터
- 리눅스 : 리눅스 콘솔
- X 윈도우 터미널 : gnome-terminal, guake, konsole, Rxvt
- 명령 줄 인터페이스 : GNU Screen, Minicom, Tmux
- 마이크로소프트 윈도우 : 앱솔루트 텔넷, AlphaCom, ConEmu, hyperACCESS, 인디고, puTTy 등이 있다.
- macOS : 터미널, iTerm2, Xterm, MacWise, SecureSRT, SyncTERM, 터미네이터 등이 있다.
- 클래식 맥OS : 맥터미널, 레드 라이더, ZTerm
- 아미가 : NComm
- MS-DOS : 크로스토크, ProComm, Qmodem, Telix, 터미네이트
- 코모도어 8비트 머신 : CBterm/C64
- 블록지향 단말 에뮬레이터
- 동축/Twinax 연결 : RUMBA 3270 및 5250
- tn3270/tn5250 : TN3270 Plus, ZOC
비디오 게임 콘솔
시대를 풍미한 미국의 게임 개발사이다.[19]
- 아타리 2600
- PC 아타리 에뮬레이터
- 스텔라
Microsoft는 미국에 위치한 세계 최대의 소프트웨어 기업이다.[20]
- 엑스박스
- cxbx : 오픈소스이다.
- Cxbx-Reloaded : cxbx의 포크로 64비트 처리를 지원하고 dxbx의 기능 가운데 일부를 추가하고 있다. 전반적으로 프레임은 안정적이지만 렌더링이 불완전해 몇몇 게임은 모델 렌더링이 스킵 되는 등의 버그가 있다. 현재 에뮬레이터들 중 가장 좋은 진척률을 보이며, 하단에 서술된 XQEMU보다도 Release 버전의 접근성이 굉장히 좋아서 많이 사용되고 있다.
- dxbx : 2011년 4월에 갑자기 업데이트 중단을 선언했다.[21]
- XQEMU : 오픈소스이고 QEMU 기반이다. 현재 개발 단계에 있어서 렌더링 상태는 좋지만 최적화 면에선 한참 더딘 면을 보인다. 첫 발표 이후로 개발도 느리고 접근성도 좋지 않아 잊혀져 가고 있다.
- xemu : 오픈소스이고 XQEMU의 포크 버전으로, Cxbx-Reloaded와 함께 2021년 기준 가장 좋은 성능과 호환성을 가지고 있다
엑스박스는 아직 완벽하게 작동하는 에뮬레이터가 없는 상태이다. xemu가 전체게임의 58%가 구동가능하다.
- 엑스박스 360
- Xenia : 개발속도나 안정화 정도가 다른 에뮬레이터에 비해 떨어진다.[21]
일본의 엔터테인먼트 기업 중에서 가장 대중적으로 인지도가 높은 기업이다.[22]
- 가정용 콘솔
- 패밀리 컴퓨터 : FCEUX, NESticle, Nestopia
- 슈퍼 패미컴 : Snes9x, ZSNES
- 닌텐도 64 : 1964, Mupen64Plus, 프로젝트64(Project64), 프로젝트 언리얼리티(Project Unreality), UltraHLE, MN64(MegaN64)
- 닌텐도 게임큐브/Wii : 돌핀(Dolphin)
- Wii U : Cemu
- 핸드헬드(들거나 어깨에 메는 것을 의미하는 용어이다.)
- 게임보이 어드밴스 : BoycottAdvance, 비주얼보이어드밴스
- 닌텐도 DS : DeSmuME, NO$GBA (게임보이 어드밴스도 지원)
- 닌텐도 3DS : Citra
일본 도쿄에 위치한 다국적 비디오 게임 개발사 및 배급사이다.[23]
- 드림 캐스트
- Demul : 윈도우용으로 2018년이후 업데이트가 없다.[21]
- Chankast : 본격적인 드림캐스트 에뮬레이션의 시대를 열었지만, nullDC의 입지에 밀리면서 사실상 개발이 중단되었다.[21]
- nullDC: 오픈 소스이다. 사실상 개발 중단이라는 이야기가 있고, 에뮬레이션의 완성도 자체도 처음 나온 때와 크게 달라진 게 없다. 2020년 시점 개발 중단이라 봐도 무방한 상황이며 버전에 따라서 실행이 안되지만 오픈소스라는 점과 괜찮은 디버깅기능을 갖추고 있다는 점에서 쓰는 사람이 없지는 않다.[21]
- Makaron : 타 에뮬레이터에서는 제대로 돌아가지 않는 WinCE 기반의 게임이 잘 구동된다는 이야기가 있다. 하지만 다른 에뮬레이터들과는 달리 설치식이고, 앞선 버전을 제대로 언인스톨하지 않고 덮어씌우면 게임을 구동할 수 없게 되는 등 사용하기 까다롭고, Demul과 Flycast가 WinCE를 완벽 지원하게 되면서 잊혀졌다..[21]
- Reicast → Flycast : (윈도우, 안드로이드, OS X, 우분투) 안드로이드 버전 치고는 매우 잘 돌아가는 편으로, 듀얼 코어 정도의 기기로도 60 프레임을 뽑는 놀라움을 보인다. 롤리팝 이후 버전은 공식적으로는 지원하지 않는다. CHD파일을 지원한다.[21]
- redream : GPL3으로 라이선스된 오픈 소스 프로젝트로 시작했으나 2018년 1월자로 클로즈드 소스로 전환했다. 가격은 5달러이며, 고해상도 렌더링을 지원하지 않는 버전을 무료로 다운로드할 수도 있다. 오픈 소스 시절의 소스 코드와 바이너리는 GitHub에서 다운로드할 수 있으며, Libretro 코어로 포함되어 있기 때문에 RetroArch를 통해 이용할 수도 있다. 2019년 6월에 안드로이드 버전도 구글 플레이에 올라왔다.[21]
소니는 1946년 설립된 일본을 대표하는 다국적 기업이다.[24]
- 플레이스테이션
- PSEmu Pro : 초창기에 등장한 플레이스테이션 에뮬레이터로, 이후에 ePSXe나 SSSPSX, FPse 같은 에뮬레이터의 기반이 되었다.[21]
- bleem! : 콘솔용 에뮬레이터로 상당히 유명했지만[21] 소니에서 건 저작권 침해 소송에서 계속 승소했음에도 소송 비용에 견디지 못하여 결국 에뮬레이터 제작을 그만 두었다.[25]
- ePSXe : 내장 그래픽 플러그인의 문제로 해상도가 원본에 맞춰지지 않는 문제가 있다. 와이드 화면에서 특정 게임은 와이드로 강제로 늘려서 사용된다. 이것은 PCSXR도 마찬가지. 소프트웨어모드 에서는 4:3 비율로 조정할 수 있다. 윈도우의 배율 및 레이아웃 설정에 영향을 받다 보니 이부분이 100% 이상 설정되어 있으면 전체화면 때 화면 배율이 안 맞는 문제가 생기지만 100%로 설정하면 해결된다.[21]
- ePSXe for Android : 개발이 거의 중단된 PC 버전과 달리 이쪽은 열심히 업데이트하고, 메일 피드백도 잘 받아준다.[21]
- SSSPSX : 현재 플레이스테이션 에뮬레이터에 기반이 된 에뮬레이터 PSEmu Pro가 기본 틀을 만들었다면 플러그인 구성과 화면구성은 SSSPSX에서 완성되었다고 해도 과언은 아니다.[21]
- VGS : 커넥틱스사의 PC용 플레이스테이션 에뮬레이터다.[26]
- PCSX : PCSX2의 초창기 개발진들의 전작으로 개발진들이 PCSX2로 이동하면서 PCSX는 업데이트가 종료되었다. 하지만 소스가 공개된 덕분에 다른 개발자에게 의해서 개발이 계속 진행되고 있다.[21]
- PCSX-Reloaded : PCSX는 오픈 소스인 덕분에 다른 팀에서 개발을 재개해서 PCSX-Reloaded라는 이름으로 내놓았다.[21]
- PCSXR-PGXP : Parallel eXtended Graphics Pipeline 기능을 추가한 포크이다. 본래 PS1은 보조 연산칩의 부동소수 연산 미지원과 z-buffer의 미지원으로 인해 폴리곤이 떨리거나 텍스처가 일그러지는 부작용이 있었는데, PGXP는 해당 기능들을 핵으로 구현해 낸다. 문제는 PGXP 기능이 구현되어 있는 그래픽 플러그인은 클로즈드 소스고, 개발자는 이미 오래전에 인터넷에서 사라졌다. 때문에 PGXP 기능으로 인하여 그래픽 버그가 보고되고 있음에도 개발자는 여기에 손을 쓰지 못한다.[21]
- PCSX-ReARMed : 이름 그대로 ARMv7 프로세서에 최적화된 브랜치. ARMv7용 JIT 리컴파일러가 높은 속도를 제공하면서도, 정확성이 비교적 우수해 New 3DS, PS Vita, Raspberry Pi와 같은 저사양 기기에서 널리 사용된다. 이러한 장점 덕분인지 소니의 플레이스테이션 클래식에도 채택되었다.[21]
- PCSX-Redux: PCSX-Reloaded에서 포크된 에뮬레이터이다. 정체된 PCSX-PGXP이후로 새롭게 포크되어 개발중인 버전이다. 기존 플러그인 구조에서 벗어나 다른 에뮬레이터들처럼 기본 내장으로 개발한다다. 인터페이스도 전체 화면 메뉴 방식으로 바뀌었으며, 옵션도 간소화되어서 간편해졌다. 리눅스 버전도 같이 개발하고 있다. 2020년 코로나 여파로 개발이 잠시 중지되었다가 2021년부터 활발하게 개발을 진행하여 현재는 x64버전도 공개될정도로 좋아졌다.[21]
- PCSX-Reloaded : PCSX는 오픈 소스인 덕분에 다른 팀에서 개발을 재개해서 PCSX-Reloaded라는 이름으로 내놓았다.[21]
- Avocado: 새롭게 등장한 에뮬레이터이다. 안드로이드 중심으로 개발하다 보니 인터패이스가 윈도우 방식이 아닌 터치형태로 되어 있다.[21]
- PSXjin
- PSX emulator: 개발이 중단됐지만 실행률이 의외로 높으며, 인터페이스와 플러그인 구조가 나중에 개발이 시작된 PCSX에 많은 영향을 주었다.[21]
- mednafen : mednafen의 오리지널 코어. 정확성이 특히 우수한 에뮬레이터들 가운데 하나.[21]
- Beetle PSX, Beetle PSX HW : mednafen의 오리지널 코어들을 libretro로 이식하며 Beetle로 이름을 바꾸었다. Beetle PSX는 원본에 충실한 편이지만, Beetle PSX HW는 하드웨어 가속, 안티 에일리어싱, PGXP 등등 정확성을 깎아먹는 부가 기능들을 많이 채워넣었다. 2020년 현재 부가 기능이 가장 빵빵한 PS1 에뮬레이터지만, 요구 사양이 매우 높아 저성능 모바일 기기에서 구동하기는 어렵다.[21]
- Xebra : 일본에서 만들어진 에뮬레이터. 실기 중심의 정확성이 목표로 제작되었다고 한다. 바이오스를 지원하지 않는 에뮬레이터이다. 그래서 바이오스를 활용하는 메모리 카드 관리가 안 되기에 메모리 카드 전용 프로그램도 같이 내장되어 있다. 완성도가 나쁘지 않지만 실기 중심이다 보니 고해상도 설정을 할 수가 없다.[21]
- DuckStation : 최신 플레이스테이션 에뮬레이터로서 활발한 업데이트를 하고 있으며, 기존 ePSXe 계열의 플러그인 시스템을 버리고 내장 에뮬레이터에 여러 플렛폼(윈도우, 리눅스, 안드로이드, libretro 등) 다양한 플랫폼을 지원하는 전용 UI가 있으며, 다이렉트12과 불칸, OpenGL을 지원하고 있다. PGXP를 기본으로 내장했고 불필요한 그래픽 필터등을 줄여서 최대한 깔끔한 그래픽으로 보정하는 기능을 넣었으며 빠른 업데이트로 기능이 추가되고 버그도 수정되고 있기에 나중에 상당히 강력한 에뮬레이터로 발전할 가능성이 높은 에뮬레이터이다.[21]
- FPSё: 윈도우 모바일용 에뮬레이터 이다.
- FPSe for Android : 안드로이드용 에뮬레이터이고 유료지만 계속 업데이트되므로 호환성이 좋다.
- 플레이스테이션 2
- PCSX2 : PCSX2는 오픈 소스 PlayStation 2 에뮬레이터이고 GPL 라이센스로 배포된다. PCSX2는 전체 PS2 라이브러리 중 95% 이상 플레이 가능하며, 게임플레이를 위해서는 PS2 BIOS 파일이 필요하다.[21]
- Play! : 윈도즈, 리눅스, 맥, ios, 안드로이드에서 플레이스테이션 2롬을 구동할 수 있게 해주는 에뮬레이터.[21]
- DamonPS2 : PS2 게임들 중 90% 이상을 플레이 가능하다. 실제로 구동 가능하며, 최신 고성능 기기에서는 플레이 가능한 속도까지 얻을 수 있는 에뮬레이터이다.[21]
- DobieStation : 2020년 12월 28일에 첫 버전이 올라온 신생 에뮬레이터이다. 아직 개발중이기에 실행되는 게임이 매우 적은 편이다. 하지만 DuckStation의 개발능력에 보여준 비교적 빠른 개발 속도와 빠른 업데이트를 고려하면 역시나 기대할 수 있는 에뮬레이터이다.[21]
- PS2 Classic Emulator REBUG : PS3의 기본 하위호환이 중단된 뒤에 하위 호환 때문에 개발된 PS2 에뮬레이터. 게임에 따라 정말 구동률이 천차만별이며, 기존 클래식 앱으로 나온 게임조차 안 되는 일이 많다.[21]
- 플레이스테이션 3
- RPCS3 : 현재 cemu와 맞먹는 구동률을 자랑한다. PCSX-PCSX2와 이름이 비슷하지만, 개발자도 다르고 아무런 연계성이 없는 에뮬레이터다.[21]
- Nucleus
- 플레이스테이션 4
- 멀티시스템 에뮬레이터
멀티 시스템 에뮬레이터는 여러 기종의 시스템을 에뮬레이트할 수 있다.[2]
- higan
- 마메(MAME), MESS
- Mednafen
- OpenEmu
- RetroArch
- UAE
- matstu player
각주
- ↑ 〈에뮬레이터〉, 《네이버 지식백과》
- ↑ 2.0 2.1 〈에뮬레이터〉, 《위키백과》
- ↑ 3.0 3.1 3.2 〈에뮬레이터〉, 《나무위키》
- ↑ 〈전자기록의 장기보존〉, 《위키독스》
- ↑ 나침판, 〈악성코드 탐지 방법들〉, 《티스토리》, 2014-01-11
- ↑ 장영준, 〈(악성코드 탐지-3) 에뮬레이터와 샌드박스〉, 《안랩》, 2007-03-13
- ↑ 〈물리학 관련 컴퓨터 기반 시뮬레이션을 슈퍼컴퓨터 도움 없이 가속하는 방법〉, 《유디엔에이》
- ↑ 8.00 8.01 8.02 8.03 8.04 8.05 8.06 8.07 8.08 8.09 8.10 8.11 8.12 8.13 〈에뮬레이터 목록〉, 《위키백과》
- ↑ 〈bochs〉, 《나무위키》
- ↑ 〈DOSBox〉, 《나무위키》
- ↑ 〈FX!32〉, 《WIKIPEDIA》
- ↑ 〈PCem〉, 《나무위키》
- ↑ 〈피어PC〉, 《위키백과》
- ↑ 〈Simics〉, 《WIKIPEDIA》
- ↑ 〈Palm OS Emulator〉, 《WIKIPEDIA》
- ↑ 〈어도비 디바이스 센트럴〉, 《위키백과》
- ↑ 〈블루스택〉, 《나무위키》
- ↑ 〈ns (시뮬레이터)〉, 《위키백과》
- ↑ 〈아타리〉, 《나무위키》
- ↑ 〈마이크로소프트〉, 《나무위키》
- ↑ 21.00 21.01 21.02 21.03 21.04 21.05 21.06 21.07 21.08 21.09 21.10 21.11 21.12 21.13 21.14 21.15 21.16 21.17 21.18 21.19 21.20 21.21 21.22 21.23 21.24 21.25 21.26 21.27 21.28 21.29 21.30 21.31 21.32 〈에뮬레이터/가정용 게임기〉, 《나무위키》
- ↑ 〈닌텐도〉, 《나무위키》
- ↑ 〈세가〉, 《위키백과》
- ↑ 〈소니〉, 《나무위키》
- ↑ 〈bleem!〉, 《나무위키》
- ↑ 〈VGS〉, 《나무위키》
참고자료
- 〈에뮬레이터〉, 《네이버 지식백과》
- 〈에뮬레이터〉, 《위키백과》
- 〈에뮬레이터〉, 《나무위키》
- 나침판, 〈악성코드 탐지 방법들〉, 《티스토리》, 2014-01-11
- 장영준, 〈(악성코드 탐지-3) 에뮬레이터와 샌드박스〉, 《안랩》, 2007-03-13
- 전자기록의 장기보존〉, 《위키독스》
- 〈물리학 관련 컴퓨터 기반 시뮬레이션을 슈퍼컴퓨터 도움 없이 가속하는 방법〉, 《유디엔에이》
- 〈에뮬레이터 목록〉, 《위키백과》
- 〈블루스택〉, 《나무위키》
- 〈아타리〉, 《나무위키》
- 〈마이크로소프트〉, 《나무위키》
- 〈닌텐도〉, 《나무위키》
- 〈소니〉, 《나무위키》
- 〈VGS〉, 《나무위키》
- 〈Simics〉, 《WIKIPEDIA》
- 〈Palm OS Emulator〉, 《WIKIPEDIA》
- 〈세가〉, 《위키백과》
- 〈bochs〉, 《나무위키》
- 〈DOSBox〉, 《나무위키》
- 〈FX!32〉, 《WIKIPEDIA》
- 〈PCem〉, 《나무위키》
- 〈피어PC〉, 《위키백과》
- 〈어도비 디바이스 센트럴〉, 《위키백과》
- 〈ns (시뮬레이터)〉, 《위키백과》
- 〈에뮬레이터/가정용 게임기〉, 《나무위키》
- 〈bleem!〉, 《나무위키》
같이 보기