Прочее компьютерное

Что такое эмулятор?

Объясните НУБУ, что такое эмулятор. Прошу объяснить предельно просто, я не программист, но и не тупой, мой уровень знаний в компе где-то 35%, ну это так, для сведения XD
Просто где-то читал, что эмулятор - штука, с которой можно воспроизводить приставочные игры на ПК, но я не понимаю: КАК, что будет, если я его скачаю - просто скачал, установил, скачал игру для приставки и все - играешь? Мне кажется, что это не может быть так просто, тогда бы не было проблем с этим.
Прошу помочь чо.
через эмулятор можно играть игры телефонные на компе
Илья Кутюргин
Илья Кутюргин
2 023
Лучший ответ
Это эмуляция диска на виртуальном приводе...
Сергей Гусев
Сергей Гусев
76 545
Попроще говоря - эмулятор создает копию какого нибудь устройства (приставки, телефона и даже компьютера) программными средствами. Т. е ты можешь создать в эмуляторе компьютер со своим процессором, памятью, жестким диском - установить на него свою операционную систему (я например 8-ку поставил) и работать в нем как в отдельном устройстве. Хорошие эмуляторы разработаны для создания виртуальных компьютеров (про телефоны не знаю не интересовался) . Для приставок есть эмуляторы, но для СТАРЫХ версий приставок, для новых типа PS3 - нет (там проблема с физикой - объяснять долго прогугли если захочешь) . Т. е одним словом вигры для PS3 и XBox на компе не поиграешь
это программа, которая представляет из себя устройство, которое надо сэмулировать
например приставку денди
и соответственно с помощью неё можно запустить программы, сделанные для эмулируемого устройства (скажем картридж от денди)
Долотов Сергей
Долотов Сергей
27 954
Эмуля́ция (англ. emulation) — воспроизведение программными или аппаратными средствами либо их комбинацией работы других программ или устройств.
Цели
Создание нового микропроцессора/микроконтроллера. В этом случае при помощи эмулятора (программы или устройства) выполняются команды этого процессора.
Необходимость выполнения также программного обеспечения, написанного для другого устройства или операционной системы.
Тестирование программ, написанных для различных систем.

Аппаратная и программно-аппаратная эмуляция
В случае программно-аппаратного комплекса эмулятором является специальное электронное устройство, выполненное в виде платы.

Программная эмуляция
Эмуляция позволяет выполнять компьютерную программу на платформе (компьютерной архитектуре и/или операционной системе) , отличной, или в некоторых случаях идентичной той, для которой она была написана в оригинале. Эмуляцией также называют сам процесс этого выполнения. В отличие от симуляции, которая лишь воспроизводит поведение программы, при эмуляции ставится цель точного моделирования состояния имитируемой системы, для выполнения оригинального машинного кода.

При использовании языков высокого уровня, иногда в целях сохранения быстродействия исполняемой программы, вместо эмуляции делают портирование программ в новую среду. В этом случае производится переписывание заново аппаратно-зависимых участков кода.

Одно из популярных применений эмуляции — выполнение на персональном компьютере игр, написанных для игровых автоматов или игровых приставок.

Теоретически, согласно тезису Чёрча — Тьюринга, любая операционная среда может быть эмулирована в любой другой среде. На практике, однако, встречается ряд трудностей; в частности, точное поведение эмулируемой системы часто не документированно (или скрывается под грифом коммерческой тайны) и должно быть исследовано и определено с помощью обратной разработки.

Достаточно полная эмуляция некоторой аппаратной платформы требует предельной точности, до уровня отдельных тактовых циклов, недокументированных особенностей и даже ошибок реализации. Это особенно важно для таких моделей классических домашних машин, как Commodore 64, ZX-Spectrum, программное обеспечение которых сильно зависит от программистских решений. Выбор конкретного решения происходит с целью оптимизации (по размеру или скорости выполнения программы) , применяемой, например программистами игр, а также энтузиастами демосцены. Такие программы достаточно часто бывают основаны на недокументированных возможностях процессора или операционной системы.

В противоположность этому, на некоторых других платформах довольно мало использовался прямой доступ к оборудованию. В этом случае оказывается достаточным обеспечить некоторый уровень совместимости, обеспечивающий трансляцию системных вызовов эмулируемой системы в вызовы работающей системы.

Обычно, эмулятор состоит из нескольких модулей, отвечающих за различные подсистемы эмулируемого компьютера. Чаще всего, эмулятор состоит из:
эмулятора или симулятора центрального процессора;
модуля подсистемы памяти, эмулирующего ОЗУ и ПЗУ;
модуля или модулей эмуляции различных устройств ввода/вывода.

Системная шина обычно не эмулируется, по причинам упрощения или повышения производительности, и виртуальная периферия обращается непосредственно к модулю ЦП и модулю памяти.
Приставки и игровые автоматы выпускаются различными производителями и, соответственно, в них может использоватся абсолютно различная аппаратная база, то есть свои вычислительные, звуковые и графические процессоры. Как Вы знаете, каждый микропроцессор управляется своим уникальным машинным языком и у разных процессоров он может быть абсолютно несовместимым. Так вот, эмуляторы - это программы, которые, зная об особенностях архитектуры некоего железа, умеют переводить машинные коды, графические и звуковые форматы этого железа в код, понятный Вашему PC-шнику.
Машинные инструкции эмулируемого железа могут не содержать аналогов в инструкциях Вашего Pentium-а, или, например, приставка может иметь некий графический ускоритель, который эмулировать на PC очень ресурсоемко, поэтому для эмуляции требуется компьютер на порядок, а то и на два мощнее такой приставки.
Кроме того, не стоит забывать, что эмуляторы пишут обычные программеры и, если некоторые из них подходят к этому делу с душой и старанием и "отшлифовывают" на ассемблере эмулятор от версии к версии, то другие, достав где-нибудь чужой исходный код, попробуют что-нибудь сделать сами да и бросают эту безумную затею.
К счастью, за несколько лет развития эмуляторов, уже многие ромы, бороздящие просторы инета, могут воплощаться в красочные и быстро работающие игры!
это блюстенкс