에뮬레이터
에뮬레이터(emulator)는 다른 장치의 특성을 복사하거나 똑같이 실행하도록 설계된 장치이다.[1] '흉내 내다'(emulate)라는 뜻에서 붙여진 이름인데, 본래의 기능을 흉내 내어 유사한 기능을 할 수 있도록 했다는 뜻에서 사용하게 되었다. 컴퓨터 사용 시의 여러 제약을 극복하고 호환성을 실현하는 방법의 하나로 사용된다.[2]
목차
개요[편집]
에뮬레이터는 한 시스템에서 다른 시스템을 복제하여 다른 프로그램이나 장치를 모방하는 컴퓨터 프로그램 또는 전자기기이다. 두 번째 시스템이 첫 번째 시스템을 따라 행동하는 것이다. 외부의 행동에 대해 똑같이 따라하려고 하는 이 관점은 시뮬레이션과는 정반대이다. 왜냐하면 시뮬레이션은 자주 내부 상태와 관련하여 흉내 내는 시스템의 추상적인 모델과 관계가 있기 때문이다.[3] 즉, 지원되지 않는 하드웨어에서 소프트웨어를 실행하기 위한 목적으로 널리 쓰인다. 주로 중앙처리장치(CPU)나 메모리 이외의 하드웨어의 에뮬레이션을 어느 관점에서 구현하느냐에 따라 로우 레벨 에뮬레이션(Low Level Emulation)이나, 하이 레벨 에뮬레이션(High Level Emulation)으로 나뉘게 된다. 하이 레벨 에뮬레이션은 하드웨어를 API 레벨에서 구현하는 방식을 말하고 로우레벨 에뮬레이션은 하드웨어를 일일히 구현하는 방식을 말한다. 하이 레벨 에뮬레이션은 로우 레벨 에뮬레이션보다 훨씬 빠른 속도로 구동된다는 장점이 있지만 하드웨어 부분의 에뮬레이팅을 하지 않아 호환성은 로우 레벨 에뮬레이션보다 떨어진다. 최근에는 하드웨어가 복잡해지면서 분석이 어려워지고, 운영체제(OS)의 크기가 커지면서 운영체제에서 제공하는 API를 통해 하드웨어에 접근하는 경향이 많은 비교적 현대의 콘솔 에뮬레이터의 경우 하이 레벨 에뮬레이션의 비중이 높아지고 있다.[4]
활용[편집]
바이러스 탐지[편집]
에뮬레이터는 사전적 의미로 '대리 실행기'라는 의미를 가지고 있다. 대리 실행기라는 의미와 같이 에뮬레이터는 실제 컴퓨터 시스템 상에서 실행 파일을 직접적으로 실행하는 것이 아니라 실제 컴퓨터 시스템에 가상의 환경이나 가상의 하드웨어 이미지를 생성하여 해당 가상 하드웨어를 통하여 간접적으로 실행하는 것을 의미한다. 의심 파일을 사용자 컴퓨터에서 실제로 실행해 보기 전에 가상화 기반에서 먼저 실행함으로써 실제 시스템에는 영향을 끼치지는 않는다는 장점이 있지만, 시스템 자원에 대한 소모가 크다는 단점도 있다.[5] 이러한 의미로 인해 일부에서는 에뮬레이터를 이용한 탐지 기법을 코드 에뮬레이션(Code Emulation) 또는 CPU 에뮬레이션(CPU Emulation) 이라고도 이야기한다. 이런 방법을 이용해서 바이러스를 탐지한다면 알려지지 않은 악성 코드를 탐지하기 위한 부분에서는 상당히 강력한 방법이라고 할 수 있다.[6]
딥 에뮬레이터 네트워크 검색[편집]
딥 에뮬레이터 네트워크 검색(DENSE, Deep Emulator Network Search)은 인공지능(AI) 기반 에뮬레이터로, 스탠퍼드 대학교의 컴퓨터 과학자인 멜로디 구안(Melody Guan)과 옥스퍼드 대학교의 물리학자인 무함마드 카심(Muhamad Kasim)이 제시한 그래픽카드(GPU) 기반 환경에서 시뮬레이션 시간을 수십억 배 줄일 수 있는 방법이다. 천문학 시뮬레이션을 슈퍼컴퓨터에서 한 것과 GPU 기반 환경에서 딥 에뮬레이터 네트워크 검색 기술로 가속을 했을 때 결과는 99.9% 이상 같았다고 한다. 이는 굳이 슈퍼컴퓨터를 쓰지 않아도 원하는 시뮬레이션 결과를 더 빨리 얻을 수 있다는 것이다.[7]
콘솔[편집]
특정한 게임기의 환경을 컴퓨터나 다른 기종으로써 가상화된 형태로서 구현해 주는 에뮬레이터를 콘솔 에뮬레이터(Console Emulator)로 분류해서 부른다. 일반적인 사용자가 에뮬레이터라고 하면 대개는 이것을 가리킨다. 흔히 '에뮬'로 줄여 부르기도 한다. 본래 하드웨어 또는 소프트웨어의 작동을 모방하는 것이면 무엇이든 에뮬레이터로 부를 수 있지만, 일상 생활에서 에뮬레이터라는 단어를 거의 게임 구동을 위하는 콘솔 및 구형 컴퓨터 에뮬레이터를 지칭하는 이유는 실질적으로 에뮬레이터가 필요한 경우는 대부분 게임에서 사용하는 일이기 때문이다.[4]
종류[편집]
아케이드 기판[편집]
마메[편집]
마메(Multiple Arcade Machine Emulator)는 오락실 기판 에뮬레이터이다. 대표 타이틀은 갤러그(Galaga)이다. 아케이드 기판 게임을 모두 지원하겠다는 당찬 포부로 제작된 에뮬레이터로서, 소스 공개를 통해 다양한 변종 버전이 개발되고 있다. 얼마 전부터는 기존의 오락실 기판의 에뮬레이터에서 벗어나, CPS기판의 게임들과 네오지오(NEO-GEO) 게임 등을 지원하여 가장 많은 수의 롬 파일을 지원하고 있다.[8]
칼러스[편집]
칼러스(Callus)는 오락실 기판 에뮬레이터로, 일본 캡콤(Capcom)의 CPS(Camcom’s Play System) 기판을 지원하는 대표적인 에뮬레이터이다. 대표 타이틀은 스트리트 파이터(Street Fighter)이고, 빠른 실행과 최적화, 안정화에 중점을 두고 개발됐다. 캡콤 게임 중 2D에 최적화를 이뤘다. 현재는 개발이 중단됐다.[8]
네오레이지X[편집]
네오레이지X(Neo Real Arcade Game EmulatorX는 오락실 기판 에뮬레이터이다. 대표 타이틀은 더 킹 오브 파이터즈(The King of Fighters)이다. 일본 SNK에서 제작한 오락실용 기판인 네오지오에 최적화를 이뤘던 네오레이지(Neorage)의 후속 에뮬레이터로서, 저사양에서도 무리 없이 실행되며 안정적인 구동 역시 장점이다. 네오지오 롬파일의 특성상 덤프과정에서 대용량의 롬파일들이 추출, 롬파일의 크기에 따라 로딩 시간의 편차가 큰 편이다.[8]
윈 카왁스[편집]
윈 카왁스(WinKawaks)는 오락실 기판 에뮬레이터이다. 대표 타이틀은 던전 앤 드래곤스(Dungeons & Dragons)이다. 네오지오 기판과 캡콤의 CPS1, 2 기판을 동시에 지원하는 개성 넘치는 에뮬레이터로서, 그래픽과 사운드 등 다양한 세부 옵션의 설정이 가능한 완벽한 에뮬레이팅을 보여주고 있다. 특히 넷플레이와 게임의 플레이 영상을 저장할 수 있다는 점은 독창적인 요소로 손꼽힌다. 비교적 높은 사양의 PC와 중급 이상의 그래픽 카드가 필요하다.[8]
ZiNc[편집]
ZiNc는 오락실 기판 에뮬레이터이다. 대표 타이틀은 철권 2(TEKKEN 2)이다. 소니(Sony)의 ZN1,2기판과 남코의 시스템11 기판, 캡콤의 CPS1,2기판을 지원하는 대표적인 3D 에뮬레이터로서, 캡콤의 3D 게임을 전문적으로 지원했던 고사양 에뮬레이터 임팩트(Impact)의 개발 팀이 제작한 만큼 대용량의 램과 최신의 3D그래픽 카드 등 고사양을 필요로 한다. 최근에는 윈도우와 리눅스 기반의 PC를 모두 지원한다.[8]
Snes9X[편집]
Snes9X(Super Nintendo Entertainment System 9X)는 슈퍼패미콤 에뮬레이터이다. 대표 타이틀은 파이널 판타지 6(FINAL FANTASY 6)이다. 슈퍼패미콤 에뮬레이터의 대명사로 군림 중이다. 반투명 기능을 비롯해 강력한 강제 저장 및 로드 기능, 뛰어난 그래픽과 사운드를 통해 ZSNES를 누르고 독보적인 위치를 차지하는 데 성공했다. 초창기 슈퍼패미콤의 게임부터 2000년대 초반에 등장한 다양한 게임들을 지원하며 완숙기에 접어든 형태를 취하고 있다.[8]
네뷸라[편집]
네뷸라(Nebula)은 오락실 기판 에뮬레이터이다. 대표 타이틀은 삼국전기(Knights of Valou)이다. 네뷸라는 은하계의 안드로메다 성운을 의미하는 말로, 수많은 CPS2 에뮬레이터 중 빛을 발하고자 했던 제작자들의 목표를 이름으로 사용했다. 초창기에는 라이벌이었던 파이날 번(FinalBurn)에 비해 부족했지만 유저의 욕구를 적극 수용하며 발전을 거듭, 대표적인 에뮬레이터로 자리 잡았다.[8]
블루 MSX[편집]
블루 MSX(Blue MSX)는 PC 에뮬레이터이다. 대표 타이틀은 이스(YS)이다. PC98기종과 마찬가지로 MSX 역시 PC용 게임의 에뮬레이터라는 점에서 기존의 에뮬레이터와 차별화된다. 1983년 미국 MS와 일본 아스키가 PC의 호환성을 목표로 제작한 8비트 퍼스컴의 통일규격인 MSX (MicroSoft eXtended)의 게임을 모두 지원하며 MSX와 흡사한 사운드를 들려준다.[8]
ePSXe[편집]
ePSXe은 PS1 에뮬레이터이다. 대표 타이틀은 메탈기어 솔리드(METAL GEAR SOLID)이다. CD 혹은 CD 이미지를 이용해 소니의 PS1 게임을 거의 완벽에 가깝게 재현한 에뮬레이터로서, 가상 CD를 이용해 실행되는 만큼 가상 CD프로그램인 데몬이나 LCD 프로그램과 짝을 이뤄 사용된다. 복잡한 인터페이스가 단점이다.[8]
프로젝트64[편집]
프로젝트64(Project64)는 닌텐도(Nintendo)64 에뮬레이터이다. 대표 타이틀은 젤다의 전설(The Legend of Zelda)이다. 64비트 가정용 게임기인 닌텐도64 전용 에뮬레이터로서, CD롬 방식을 채택한 소니의 PS1이나 세가의 세턴과는 달리 롬 카트리지 방식을 사용하여 기존 에뮬레이터와 같은 방식인 만큼 초기부터 높은 완성도를 선보였다.[8]
PC용 안드로이드 에뮬레이터[편집]
PC용 안드로이드 에뮬레이터는 안드로이드 앱을 PC에서 동작할 수 있는 에뮬레이터이다. 게임을 좋아하는 사람들이 한꺼번에 여러 계정을 동시에 육성하기 위한 방법으로 사용하거나, 매크로 등 적합하지 않은 방법을 하기 위한 수단으로 사용하는 경우도 있다. 안드로이드 에뮬레이터의 종류는 상당히 많다. 대표적으로 녹스라는 블루스택(Blue Stack)이 있으며, 유사한 다른 것들도 많이 있다. 다만, 포켓몬 고(Pokemon Go) 같은 실제 GPS를 사용하는 하는 앱은 실행되지 않는다.[9]
녹스[편집]
녹스(NOX)는 윈도우 및 맥 버전 녹스 앱 플레이어로, 무료 안드로이드 에뮬레이터로써 사용자에게 편리한 apk 파일 사용과 컴퓨터에서 모바일 게임 및 모바일 앱을 사용할 수 있게 돕는다. 간단한 설치를 통해 PC 키보드와 마우스로 모바일 게임을 즐길 수 있다.[10]
블루스택[편집]
블루스택(BlueStacks)은 2011년에 개발된 최초의 앱 플레이어로, 유일하게 공식 앱 플레이어 기술 특허를 가지고 있는 정식 회사이다. 중국 회사인 타 앱 플레이어와 다르게 미국에 본사를 두고 있어 보안에 매우 신경 쓰고 있다. 또한 유럽 정보 보호 법령 GDPR에 따르고 있다. 기본적으로 일반 사용자들이 PC 환경에서 핸드폰 환경과 동일하게 애플리케이션 사용을 하도록 하는 게 목적이라 설치 및 사용이 매우 간편하다. 추가 설치할 것들도 전혀 필요 없고, 구글 플레이 등 기본적인 프로그램도 포함되어 있어 사용하기 쉽다. 다양한 키 매핑 지원을 통해 키보드와 마우스로 편리하게 게임을 즐길 수 있다는 것이 장점이기도 하다. 최근 MMORPG 및 고사양 게임에 맞춰 64bite도 지원을 하고 있어 최적화가 잘 되어 있는 상태이며, 더 빠른 속도와 뛰어난 성능을 가진 블루스택5 베타 버전이 출시되었으며 국내 서비스 중이다. 사용하기 쉽고 PC로 안드로이드 게임을 돌리려는 사람들 사이에선 가장 유명하다. 대부분의 게임이 원활하게 돌아가고 멀티 인스턴스 및 동기화 지원 등을 통해서 리세마라 계정 양산용으로도 유용하게 사용되고 있다. 스마트폰 플랫폼이지만 입력 체계에서 멀티 터치를 쓰지 않는 컨트롤 방식, MMORPG나 CRPG, 액션 RPG등을 하다 보면, 컨트롤에 있어서 터치보다는 마우스, 수동 터치보다는 매크로가 이득이라는 것을 알 수 있다. 블루스택 4버전부터는 엔진 설정을 통해 사용자가 원하는 대로 중앙처리장치 코어와 램을 설정할 수 있도록 지원하고 있다.[11]
미뮤[편집]
미뮤(MEMU)는 마이크로버트(Microvirt)에서 개발하고 ㈜민앤지(Minwise)에서 서비스하는 안드로이드 에뮬레이터이다. 맥이나 리눅스도 지원하는 타사 에뮬레이터들과 달리 마이크로소프트 윈도우 운영체제만 지원한다.자체 내장된 변형 하이퍼-브이(Hyper-V) 기반 에뮬레이션이다. 실행 중 MemuHyperv 인터페이스라는 이름의 프로세스가 백그라운드에서 실행되는데 이것이 미뮤에 내장된 하이퍼-브이 인터페이스이다. 다만, 이 프로세스는 미뮤 실행 시에 반드시 먼저 로딩되어야 하는데, 윈도우 10 정식 하이퍼-브이 서비스가 메모리에 상주한 상황에서 미뮤를 실행시키면 미뮤의 인터페이스와 기존에 메모리에 상주한 하이퍼-브이 서비스가 충돌하고, 당연히 운영체제와 직접 연동되어 작동하는 정식 하이퍼-브이 쪽에 프로세스 우선권이 있기 때문에 미뮤용 인터페이스의 로딩이 되지 않는다. 즉, 하이퍼-브이가 설치되어 있는 윈도우에서는 상기한 이유로 미뮤 앱플레이어가 실행되지 않으니 주의해야 한다. 기본적으로 하이퍼-브이의 실행이 전제되는 서버용 운영체제에서 미뮤 앱플레이어의 사용을 권장하지 않는 이유가 이것이다. 따라서 하이퍼-브이를 정식으로 설치해서 사용해야만 하는 시스템에서는 하이퍼-브이를 정식으로 지원하는 블루스택을 사용하는 것 외에 다른 대안이 없다. 하이퍼-브이 기반 에뮬레이션은 상기한 대로 마이크로소프트 윈도우 운영체제 외의 타 운영체제 지원이 불가능하다는 단점이 되기도 하지만, 윈도우 운영체제를 사용할 경우 타 에뮬레이터보다 더 안정적으로 실행된다는 장점이 되기도 한다. 배틀그라운드 모바일, 콜 오브 듀티 모바일 같은 일부 게임은 자체 키 맵핑이 미리 설정되어 있어 일일이 키를 정해주는 수고가 필요하지 않다. 나아가 스마트 키 맵핑이어서 구급 상자 등을 사용하기 쉽다. 개발자 옵션의 애니메이터 길이 배율을 '사용 안 함'으로 설정하면 폴더가 열리지 않는 문제가 있다.[12]
LD플레이어[편집]
LD플레이어(LDPlayer)는 2017년 출시된 버추얼박스(Virtual Box) 기반의 안드로이드 계열 에뮬레이터로 대한민국의 녹스 게임즈와 중국의 창지 네트워크가 공동 개발하여 서비스를 제공했다. 2019년 1월 부로 국내 공동 개발사인 녹스 게임즈가 폐업 수순을 밟게 되어, 현재는 중국의 창지 네트워크가 창지 인터내셔널로 사명을 변경하고 단독으로 서비스 하고 있는 것으로 보인다. 상대적으로 같은 버추얼박스 기반인 녹스와 비교해도 체감 성능이 날 정도로 에뮬레이터 자체가 가볍고 시스템 최적화가 잘 되어 있으며, 게임 패드를 통하는 게임 플레이가 지원된다. 3D 액션게임, MMORPG나 모바일 FPS 등을 플레이할 때, 콘솔 게임처럼 쾌적하게 즐길 수 있다. 설치 용량이나 리소스 사용량 대비, 성능이나 최적화가 우수한 편에 속한다. 일부 메모리 누수 등의 심각한 문제를 가진 앱이나 게임이 아니라면 설치 PC에 크게 부담을 주지 않는 편이라고 봐도 무방하다. 또한 블루스택, 녹스에 만연한 랜덤 계정 매칭 현상이 LD플레이어에는 거의 발생하지 않는다. 공식 홈페이지에서 각 버전 별 업데이트 로그와 다운로드가 가능하다. 매월 플레이어 자체 최적화 및 개선 패치와 더불어 최신 게임과 인기 게임, 실행 시 심대한 오류가 있는 게임은 따로 버그리포트와 피드백을 받아 주기적으로 패치를 내놓고 있다.[13]
지니모션[편집]
지니모션(Genymotion)은 지니모바일(Genymobile)에서 만든 x86 컴퓨터를 위한 기업용 안드로이드 에뮬레이터이다. 원조는 안드로 VM(Andro VM)인데, 좀 더 기업화되어서 개발된 것이다. 지니모션은 그냥 안드로이드 가상 디바이스(AVD)가 떨어져 나온 버전이라고 보면 된다. 다만 안드로이드 가상 디바이스에 비해 상당히 빠르게 에뮬레이터를 작동시켜 주기 때문에 안드로이드 스튜디오 같은 개발툴과 연결해 앱 테스트기로 이용되기도 한다. 한글 폰트도 있어서 한국어를 선택하고 구글 한글 키보드를 깔면 한글 입력도 문제 없이 할 수 있다. 반드시 홈페이지 가입 후 다운로드받아야 하며 버추얼 박스도 있어야 사용할 수 있다. 홈페이지에서 함께 패키징된 걸 받을 수 있다. 설치 후의 안드로이드 운영체제들은 진저브레드 2.3.7부터 누가 7.0.0까지 제공한다. 다운로드한 뒤 계정 로그인 단계에서 유료 라이센스 등록자인지 무료 개인 사용자인지 선택 가능하다.[14]
서비스 종료[편집]
중앙 처리 장치[편집]
MIPS[편집]
- SPIM: 오픈 버추얼 플랫폼(Open Virtual Platform)의 OVPsim 500 mips MIPS32 에뮬레이터이다. 리눅스를 포함해 수많은 운영체제를 실행하는 MIPS32 프로세서용 최대 500 MIPS로 동작하는 가상 플랫폼을 사용하여 컴퓨터에서 소프트웨어를 개발할 수 있게 허용한다.[15]
X86[편집]
- 박스(Bochs) : 컴퓨터와 모바일에서 x86 환경의 에뮬레이션을 가능하게 하는 무료 오픈소스 프로그램이다.[16]
- 도스박스(DOSBox) : 도스(DOS)를 최신 운영체제에서 실행할 수 있도록 시뮬레이션해 주는 에뮬레이터이다. 지원 대상은 대표적인 운영체제 3종 윈도우(Windows), 맥OS, 리눅스이다.[17]
- FX!32 : 인텔 x86 명령어 세트용으로 구축된 Win32 프로그램이 윈도우 NT를 실행하는 DEC 알파 기반 시스템에서 실행할 수 있도록 하는 소프트웨어 에뮬레이터 프로그램이다.[18]
- PCem : 2007년부터 영국의 개발자 사라 워커(Sarah Walker)가 중심이 되어 개발하고 있는 오픈 소스 IBM PC 호환 기종 에뮬레이터이다. 윈도우와 리눅스용으로 배포되고 있다.[19]
- QEMU : ARM, x86, MIPS 등을 포함한 7개의 아키텍처를 에뮬레이트하는 오픈 소스 에뮬레이터이다.[15]
모토로라 680x0[편집]
- 맥 68K 에뮬레이터 : 파워PC 클래식 맥OS용 에 내장된 소프트웨어 에뮬레이터이다. 원래 680x0 기반 매킨토시 모델용으로 작성된 응용 프로그램과 시스템 코드를 실행할 수 있다. 코네틱스(connectix)의 램 더블러를 비롯한 몇 가지 예외를 제외하고, 에뮬레이터는 파워PC용으로 컴파일할 때 동일한 프로그램에 비해 낮은 성능 외에는 눈에 띄는 영향 없이 모든 소프트웨어를 실행한다.[20]
파워PC[편집]
- 피어PC(PearPC) : 독립적인 아키텍처인 파워PC 에뮬레이터로, 파워PC 아키텍처에서 가동되는 OS X, 다윈, 리눅스를 파워PC가 아닌 중앙처리장치에서 가동시킬 수 있다.[21]
- 로제타(Rosetta) : 애플의 맥OS X에 빌드되는 파워PC 프로세서용 에뮬레이터이다.[15]
- WarpUP : 모르프OS에 내장된 파워PC 확장 카드를 위한 아미가 시스템이다. 아미가OS용으로 이용 가능하다.[15]
풀 시스템 시뮬레이터[편집]
- 알파VM(AlphaVM) : 윈도우나 리눅스에서 실행되는 알파 프로세서 시스템 에뮬레이터이다.[15]
- 시믹스(Simics) : Simics는 고성능 속도로 대상 하드웨어의 변경되지 않은 프로덕션 바이너리를 실행하는 데 사용되는 전체 시스템 시뮬레이터이다.[22]
- CPU Sim : 사용자가 단순한 아키텍처과 명령어 집합을 설계, 제작하고 시뮬레이션을 통해 해당 집합의 명령으로 된 프로그램들을 실행할 수 있게 하는 자바 애플리케이션이다.[15]
- GXemul : 풀 시스템 컴퓨터 아키텍처 에뮬레이션용 프레임워크이다.[15]
휴대전화 및 PDA[편집]
- 팜 OS 에뮬레이터(Palm OS Emulator) : 팜 OS 애플리케이션을 작성, 테스트 및 디버깅하는 데 사용된다.[23]
- 어도비 디바이스 센트럴(Adobe Device Central) : 2007년 3월 CS3의 일부로 어도비 시스템즈가 만들고 출시한 소프트웨어 프로그램이다. CS 5.5를 끝으로 이 제품의 출시는 끝났으며, 2012년 4월 23일부로 개발이 중단되었다.[24]
멀티 시스템[편집]
- 블루 MSX(blue MSX) : Z80 기반 컴퓨터와 콘솔을 에뮬레이트한다[15]
- 다프네(DAPHNE) : 다양한 레이저디스크 비디오 게임을 에뮬레이트하는 아케이드 에뮬레이터 애플리케이션으로서, 게임들을 보존하고 가능한 오리지널에 가까운 플레이 체험을 제공하기 위해 고안되었다.[15]
네트워크 시뮬레이터[편집]
- Ns : 'Network Simulator'의 약자이다. 오픈소스 소프트웨어이기 때문에 확장성이 매우 높으며, 온라인 문서도 풍부하다. 라우팅 및 멀티캐스트 프로토콜 관련 시뮬레이션에 매우 활발히 이용되고 있다. 뿐만 아니라, 애드혹 네트워크 연구에서도 이용되고 있다. Ns는 현존하는 여러 유명한 프로토콜을 지원한다. 무선/유선 양쪽 다 지원한다. Ns는 기능을 제한받는 네트워크 에뮬레이터로써도 사용할 수 있다.[25]
- 넷심(NetSim)
운영체제[편집]
유닉스[편집]
- 시그윈(Cygwin) : 마이크로소프트 윈도우의 경우 포직스 환경과 시스템 라이브러리를 제공한다. 변경되지 않은 리눅스/유닉스 바이너리의 구동을 허용하지는 않는다. 그러나 gcc 컴파일러 컬렉션을 사용하여 이러한 운영 체제를 위하 작성된 소프트웨어를 소스 코드로부터 컴파일할 수 있게 허용한다. 포직스 시스템 외에 시그윈은 패키지 매니저를 포함하고 있어서 9000개 이상의 소프트웨어 패키지의 저장소에 연결할 수 있다.[15]
마이크로소프트[편집]
- 와인(Wine) : 대부분의 포직스 호환 운영체제용으로 이용 가능하다. Win32 API와 관련 기능의 클린룸 구현체를 제공한다. 시그윈과 달리 와인은 변경되지 않은 윈도우 소프트웨어의 설치 및 사용을 허용한다.[15]
프린터[편집]
- 고스트스크립트(Ghostscript) : 어도비(Adobe Systems)의 포스트스크립트(PostScript) 및 PDF(Portable Document Format) 페이지 기술 언어에 대한 인터프리터를 기반으로 한 소프트웨어이다. 주요 목적은 포스트스크립트와 PDF 파일에서 변환 및 완전한 호환을 가능하게 하는 페이지 기술 언어, 파일의 래스터화 또는 렌더링, 문서 페이지의 표시 또는 인쇄이다.[26]
단말[편집]
문자지향 터미널 에뮬레이터 리눅스 X 윈도우
터미널명령줄
인터페이스마이크로소프트
윈도우맥OS 리눅스 콘솔 그놈-터미널,
guake,
konsole,
RxvtGNU Screen,
미니컴,
Tmux
앱솔루트 텔넷,
알파컴,
ConEmu,
하이퍼액세스,
인디고,
푸티
터미널, 아이텀2,
엑스텀, 맥와이즈,
SecureSRT, SyncTERM,
터미네이터클래식 맥OS 아미가 엠에스도스 코모도어
8비트 머신동축/Twinax 연결 tn3270/tn5250 맥터미널,
레드 라이더,
제트텀엔컴
크로스토크,
프로콤,
큐모뎀,
텔릭스,
터미네이트
CBterm/C64 RUMBA 3270,
5250TN3270 Plus,
ZOC
비디오 게임 콘솔[편집]
기업별 비디오 게임 콘솔 아타리 마이크로소프트 닌텐도 세가 소니 NEC SNK 아타리 2600 엑스박스 패밀리 컴퓨터 드림 캐스트 플레이스테이션 PC 엔진 네오지오 아타리 5200 엑스박스 360 슈퍼 패미컴 SG-1000 플레이스테이션 2 PC-FX 네오지오 CD 아타리 7800 - 닌텐도 64 세가 마스터 시스템 플레이스테이션 3 - - 아타리 재규어 - 닌텐도 위 메가 드라이브 플레이스테이션 4 - - - - 닌텐도 위 U 피코 - - - - - 닌텐도 스위치 세가 새턴 - - -
마이크로소프트[편집]
- 엑스박스
- cxbx : 오픈소스이다.
- Cxbx-Reloaded : cxbx의 포크로 64비트 처리를 지원하고 dxbx의 기능 가운데 일부를 추가하고 있다. 전반적으로 프레임은 안정적이지만 렌더링이 불완전해 몇몇 게임은 모델 렌더링이 스킵 되는 등의 버그가 있다. 현재 에뮬레이터들 중 가장 좋은 진척률을 보이며, XQEMU보다도 릴리즈 버전의 접근성이 굉장히 좋아서 많이 사용되고 있다.
- dxbx : 2011년 4월에 갑자기 업데이트 중단을 선언했다.
- XQEMU : 오픈소스 QEMU 기반 에뮬레이터이다. 현재 개발 단계에 있어서 렌더링 상태는 좋지만 최적화 면에선 한참 더딘 면을 보인다. 첫 발표 이후로 개발도 느리고 접근성도 좋지 않아 잊혀져 가고 있다.
- xemu : 오픈소스 XQEMU의 포크 버전으로, Cxbx-Reloaded와 함께 2021년 기준 가장 좋은 성능과 호환성을 가지고 있다. 엑스박스는 아직 완벽하게 작동하는 에뮬레이터가 없는 상태이다. xemu가 전체게임의 58%가 구동 가능하다.
- 엑스박스 360
- Xenia : 개발 속도나 안정화 정도가 다른 에뮬레이터에 비해 떨어진다.[27]
닌텐도[편집]
- 가정용 콘솔
- 패밀리 컴퓨터 : FCEUX, NESticle, Nestopia
- 슈퍼 패미컴 : Snes9x, ZSNES
- 닌텐도 64 : 1964, Mupen64Plus, 프로젝트64(Project64), 프로젝트 언리얼리티(Project Unreality), UltraHLE, MN64(MegaN64)
- 닌텐도 게임큐브/위 : 돌핀(Dolphin)
- 위 U(Wii U) : 세뮤(Cemu)
- 핸드헬드
- 게임보이 어드밴스 : BoycottAdvance, 비주얼보이어드밴스
- 닌텐도 DS : DeSmuME, NO$GBA (게임보이 어드밴스도 지원)
- 닌텐도 3DS : Citra
세가[편집]
- 드림 캐스트
- Demul : 윈도우용으로 2018년이후 업데이트가 없다.[27]
- Chankast : 본격적인 드림캐스트 에뮬레이션의 시대를 열었지만, nullDC의 입지에 밀리면서 사실상 개발이 중단되었다.[27]
- nullDC : 오픈소스 에뮬레이터이다. 사실상 개발 중단이라는 이야기가 있고, 에뮬레이션의 완성도 자체도 처음 나온 때와 크게 달라진 게 없다. 2020년 시점 개발 중단이라 봐도 무방한 상황이며 버전에 따라서 실행이 안되지만 오픈소스라는 점과 괜찮은 디버깅기능을 갖추고 있다는 점에서 쓰는 사람이 없지는 않다.[27]
- Makaron : 타 에뮬레이터에서는 제대로 돌아가지 않는 WinCE 기반의 게임이 잘 구동된다는 이야기가 있다. 하지만 다른 에뮬레이터들과는 달리 설치식이고, 앞선 버전을 제대로 언인스톨하지 않고 덮어씌우면 게임을 구동할 수 없게 되는 등 사용하기 까다롭고, Demul과 Flycast가 WinCE를 완벽 지원하게 되면서 잊혀졌다.[27]
- Reicast / Flycast : 윈도우, 안드로이드, OS X, 우분투에서 쓰인다. 안드로이드 버전 치고는 매우 잘 돌아가는 편으로, 듀얼 코어 정도의 기기로도 60 프레임을 뽑는 놀라움을 보인다. 롤리팝 이후 버전은 공식적으로는 지원하지 않는다. CHD파일을 지원한다.[27]
- redream : GPL3으로 라이선스된 오픈 소스 프로젝트로 시작했으나 2018년 1월자로 클로즈드 소스로 전환했다. 가격은 5달러이며, 고해상도 렌더링을 지원하지 않는 버전을 무료로 다운로드할 수도 있다. 오픈 소스 시절의 소스 코드와 바이너리는 깃허브에서 다운로드할 수 있으며, Libretro 코어로 포함되어 있기 때문에 RetroArch를 통해 이용할 수도 있다. 2019년 6월에 안드로이드 버전도 구글 플레이에 올라왔다.[27]
소니[편집]
- 플레이스테이션
- PSEmu Pro : 초창기에 등장한 플레이스테이션 에뮬레이터로, 이후에 ePSXe나 SSSPSX, FPse 같은 에뮬레이터의 기반이 되었다.[27]
- bleem! : 콘솔용 에뮬레이터로 상당히 유명했지만[27] 소니에서 건 저작권 침해 소송에서 계속 승소했음에도 소송 비용에 견디지 못하여 결국 에뮬레이터 제작을 그만 두었다.[28]
- ePSXe : 내장 그래픽 플러그인의 문제로 해상도가 원본에 맞춰지지 않는 문제가 있다. 와이드 화면에서 특정 게임은 와이드로 강제로 늘려서 사용된다. 이것은 PCSXR도 마찬가지다. 소프트웨어 모드에서는 4:3 비율로 조정할 수 있다. 윈도우의 배율 및 레이아웃 설정에 영향을 받다 보니 이 부분이 100% 이상 설정되어 있으면 전체 화면 때 화면 배율이 안 맞는 문제가 생기지만 100%로 설정하면 해결된다.[27]
- ePSXe for 안드로이드 : 개발이 거의 중단된 PC 버전과 달리 열심히 업데이트하고, 메일 피드백도 잘 받아 준다.[27]
- SSSPSX : 현재 플레이스테이션 에뮬레이터에 기반이 된 에뮬레이터 PSEmu Pro가 기본 틀을 만들었다면 플러그인 구성과 화면 구성은 SSSPSX에서 완성되었다고 해도 과언이 아니다.[27]
- VGS : 커넥틱스사의 PC용 플레이스테이션 에뮬레이터다.[29]
- PCSX : PCSX2의 초창기 개발진들의 전작으로 개발진들이 PCSX2로 이동하면서 PCSX는 업데이트가 종료되었다. 하지만 소스가 공개된 덕분에 다른 개발자에게 의해서 개발이 계속 진행되고 있다.[27]
- PCSX-Reloaded : PCSX는 오픈소스인 덕분에 다른 팀에서 개발을 재개해서 PCSX-Reloaded라는 이름으로 출시했다.[27]
- PCSXR-PGXP : Parallel eXtended Graphics Pipeline 기능을 추가한 포크이다. 본래 PS1은 보조 연산칩의 부동소수 연산 미지원과 z-buffer의 미지원으로 인해 폴리곤이 떨리거나 텍스처가 일그러지는 부작용이 있었는데, PGXP는 해당 기능들을 핵으로 구현해 낸다. 문제는 PGXP 기능이 구현되어 있는 그래픽 플러그인은 클로즈드 소스고, 개발자는 이미 오래전에 인터넷에서 사라졌다. 때문에 PGXP 기능으로 인하여 그래픽 버그가 보고되고 있음에도 개발자는 여기에 손을 쓰지 못한다.[27]
- PCSX-ReARMed : 이름 그대로 ARMv7 프로세서에 최적화된 브랜치이다. ARMv7용 JIT 리컴파일러가 높은 속도를 제공하면서도, 정확성이 비교적 우수해 New 3DS, PS Vita, Raspberry Pi와 같은 저사양 기기에서 널리 사용된다. 이러한 장점 덕분인지 소니의 플레이스테이션 클래식에도 채택되었다.[27]
- PCSX-Redux : PCSX-Reloaded에서 포크된 에뮬레이터이다. 정체된 PCSX-PGXP이후로 새롭게 포크되어 개발 중인 버전이다. 기존 플러그인 구조에서 벗어나 다른 에뮬레이터들처럼 기본 내장으로 개발한다. 인터페이스도 전체 화면 메뉴 방식으로 바뀌었으며, 옵션도 간소화되어서 간편해졌다. 리눅스 버전도 같이 개발하고 있다. 2020년 코로나 여파로 개발이 잠시 중지되었다가 2021년부터 활발하게 개발을 진행하여 현재는 x64버전도 공개될 정도로 좋아졌다.[27]
- 아보카도(Avocado) : 새롭게 등장한 에뮬레이터이다. 안드로이드 중심으로 개발하다 보니 인터패이스가 윈도우 방식이 아닌 터치 형태로 되어 있다.[27]
- PSXjin
- PSX : 개발이 중단됐지만 실행률이 의외로 높으며, 인터페이스와 플러그인 구조가 나중에 개발이 시작된 PCSX에 많은 영향을 주었다.[27]
- 메드나펜(mednafen) : mednafen의 오리지널 코어로 정확성이 특히 우수한 에뮬레이터들 가운데 하나이다.[27]
- Beetle PSX, Beetle PSX HW : 메드나펜의 오리지널 코어들을 libretro로 이식하며 Beetle로 이름을 바꾸었다. Beetle PSX는 원본에 충실한 편이지만, Beetle PSX HW는 하드웨어 가속, 안티 에일리어싱, PGXP 등 정확성을 깎는 부가 기능들을 많이 추가했다. 2020년 기준 부가 기능이 가장 많은 PS1 에뮬레이터지만, 요구 사양이 매우 높아 저성능 모바일 기기에서 구동하기는 어렵다.[27]
- Xebra : 일본에서 만들어진 에뮬레이터이다. 실기 중심의 정확성이 목표로 제작되었다. 바이오스를 지원하지 않는 에뮬레이터이다. 그래서 바이오스를 활용하는 메모리 카드 관리가 안 되기에 메모리 카드 전용 프로그램도 같이 내장되어 있다. 완성도가 나쁘지 않지만 실기 중심이다 보니 고해상도 설정을 할 수 없다.[27]
- 덕스테이션(DuckStation) : 최신 플레이스테이션 에뮬레이터로서 활발한 업데이트를 하고 있으며, 기존 ePSXe 계열의 플러그인 시스템을 버리고 내장 에뮬레이터에 여러 플렛폼(윈도우, 리눅스, 안드로이드, libretro 등) 다양한 플랫폼을 지원하는 전용 UI가 있으며, 다이렉트12과 불칸, OpenGL을 지원하고 있다. PGXP를 기본으로 내장했고 불필요한 그래픽 필터등을 줄여서 최대한 깔끔한 그래픽으로 보정하는 기능을 넣었으며 빠른 업데이트로 기능이 추가되고 버그도 수정되고 있기에 나중에 상당히 강력한 에뮬레이터로 발전할 가능성이 높은 에뮬레이터이다.[27]
- FPSё: 윈도우 모바일용 에뮬레이터이다.
- FPSe for 안드로이드 : 안드로이드용 에뮬레이터이고 유료지만 계속 업데이트되므로 호환성이 좋다.
- 플레이스테이션 2
- PCSX2 : GPL 라이센스로 배포되는 오픈소스 에뮬레이터이다. PCSX2는 전체 PS2 라이브러리 중 95% 이상 플레이 가능하며, 게임 플레이를 위해서는 PS2 BIOS 파일이 필요하다.[27]
- 플레이!(Play!) : 윈도우, 리눅스, 맥, 아이오에스(ios), 안드로이드에서 플레이스테이션 2를 구동할 수 있게 해 주는 에뮬레이터이다.[27]
- DamonPS2 : PS2 게임들 중 90% 이상을 플레이할 수 있다. 실제로 구동 가능하며, 최신 고성능 기기에서는 플레이 가능한 속도까지 얻을 수 있는 에뮬레이터이다.[27]
- DobieStation : 2020년 12월 28일에 첫 버전이 올라온 신생 에뮬레이터이다. 아직 개발 중이기에 실행되는 게임이 매우 적은 편이다. 하지만 덕스테이션의 개발능력에 보여준 비교적 빠른 개발 속도와 빠른 업데이트를 고려하면 역시나 기대할 수 있는 에뮬레이터이다.[27]
- PS2 클래식 에뮬레이터 리버그(PS2 Classic Emulator REBUG) : PS3의 기본 하위 호환이 중단된 뒤에 하위 호환 때문에 개발된 PS2 에뮬레이터이다. 게임에 따라 구동률이 천차만별이며, 기존 클래식 앱으로 나온 게임조차 안 되는 일이 많다.[27]
- 플레이스테이션 3
- RPCS3 : 세뮤와 맞먹는 구동률을 자랑하는 에뮬레이터이다.[27]
- Nucleus
- 플레이스테이션 4
- 오비탈(Orbital) : 오픈 소스이고 저레벨 에뮬레이터이다. 상업 게임 구동이 불가능하다.[27]
- 스파인(Spine) : 클로즈드 소스이고 고레벨 에뮬레이터이다. 일부 상업 게임이 구동 가능하다.[27]
- GPCS4 : 신생 에뮬레이터이다. '세계 최초로 상용게임을 구동할 수 있는 PS4 에뮬레이터'라는 캐치프라이즈를 내걸었다..[27]
- PS4Delta
- RPCS4
- 멀티시스템 에뮬레이터
멀티 시스템 에뮬레이터는 여러 기종의 시스템을 에뮬레이트할 수 있다.[3]
- 히간(higan)
- 마메(MAME)
- 메스(MESS)
- 메드나펜(Mednafen)
- 오픈에뮤(OpenEmu)
- 레트로아크(RetroArch)
- UAE
- 마츠 플레이어(matstu player)
각주[편집]
- ↑ 〈에뮬레이터〉, 《네이버 지식백과》
- ↑ 〈에뮬레이터〉, 《네이버 지식백과》
- ↑ 3.0 3.1 〈에뮬레이터〉, 《위키백과》
- ↑ 4.0 4.1 〈에뮬레이터〉, 《나무위키》
- ↑ 나침판, 〈악성코드 탐지 방법들〉, 《티스토리》, 2014-01-11
- ↑ 장영준, 〈(악성코드 탐지-3) 에뮬레이터와 샌드박스〉, 《안랩》, 2007-03-13
- ↑ 〈물리학 관련 컴퓨터 기반 시뮬레이션을 슈퍼컴퓨터 도움 없이 가속하는 방법〉, 《유디엔에이》
- ↑ 8.0 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 8.9 archanjels0, 〈에뮬레이터 종류 및 특징〉, 《네이버 블로그》, 2008-05-21
- ↑ 9.0 9.1 코카티비, 〈PC용 안드로이드 에뮬레이터의 용도와 종류〉, 《티스토리》
- ↑ 녹스 앱플레이어, 〈NOX〉, 《녹스 앱 플레이어》
- ↑ 〈블루스택〉, 《나무위키》
- ↑ 〈미뮤 앱플레이어〉, 《나무위키》
- ↑ 〈LDPlayer〉, 《나무위키》
- ↑ 〈지니모션〉, 《나무위키》
- ↑ 15.00 15.01 15.02 15.03 15.04 15.05 15.06 15.07 15.08 15.09 15.10 〈에뮬레이터 목록〉, 《위키백과》
- ↑ 〈bochs〉, 《나무위키》
- ↑ 〈DOSBox〉, 《나무위키》
- ↑ 〈FX!32〉, 《Wikipedia》
- ↑ 〈PCem〉, 《나무위키》
- ↑ 〈Mac 68k emulator〉, 《Wikipedia》
- ↑ 〈피어PC〉, 《위키백과》
- ↑ 〈Simics〉, 《Wikipedia》
- ↑ 〈Palm OS Emulator〉, 《Wikipedia》
- ↑ 〈어도비 디바이스 센트럴〉, 《위키백과》
- ↑ 〈ns (시뮬레이터)〉, 《위키백과》
- ↑ 〈고스트스크립트〉, 《위키백과》
- ↑ 27.00 27.01 27.02 27.03 27.04 27.05 27.06 27.07 27.08 27.09 27.10 27.11 27.12 27.13 27.14 27.15 27.16 27.17 27.18 27.19 27.20 27.21 27.22 27.23 27.24 27.25 27.26 27.27 27.28 27.29 27.30 27.31 〈에뮬레이터/가정용 게임기〉, 《나무위키》
- ↑ 〈bleem!〉, 《나무위키》
- ↑ 〈VGS〉, 《나무위키》
참고자료[편집]
- 〈에뮬레이터〉, 《네이버 지식백과》
- 〈에뮬레이터〉, 《네이버 지식백과》
- 〈에뮬레이터〉, 《위키백과》
- 〈Mac 68k emulator〉, 《Wikipedia》
- 〈미뮤 앱플레이어〉, 《나무위키》
- 〈고스트스크립트〉, 《위키백과》
- 〈지니모션〉, 《나무위키》
- 〈LDPlayer〉, 《나무위키》
- 〈에뮬레이터〉, 《나무위키》
- 나침판, 〈악성코드 탐지 방법들〉, 《티스토리》, 2014-01-11
- archanjels0, 〈에뮬레이터 종류 및 특징〉, 《네이버 블로그》, 2008-05-21
- 장영준, 〈(악성코드 탐지-3) 에뮬레이터와 샌드박스〉, 《안랩》, 2007-03-13
- 〈물리학 관련 컴퓨터 기반 시뮬레이션을 슈퍼컴퓨터 도움 없이 가속하는 방법〉, 《유디엔에이》
- 코카티비, 〈PC용 안드로이드 에뮬레이터의 용도와 종류〉, 《티스토리》
- 녹스 앱플레이어, 〈NOX〉, 《녹스 앱 플레이어》
- 〈에뮬레이터 목록〉, 《위키백과》
- 〈블루스택〉, 《나무위키》
- 〈마이크로소프트〉, 《나무위키》
- 〈VGS〉, 《나무위키》
- 〈Simics〉, 《Wikipedia》
- 〈Palm OS Emulator〉, 《Wikipedia》
- 〈bochs〉, 《나무위키》
- 〈DOSBox〉, 《나무위키》
- 〈FX!32〉, 《Wikipedia》
- 〈PCem〉, 《나무위키》
- 〈피어PC〉, 《위키백과》
- 〈어도비 디바이스 센트럴〉, 《위키백과》
- 〈ns (시뮬레이터)〉, 《위키백과》
- 〈에뮬레이터/가정용 게임기〉, 《나무위키》
- 〈bleem!〉, 《나무위키》
같이 보기[편집]