Это старая версия документа!
Эмуляция
В широком смысле эмуляция - это имитация функций аппаратного обеспечения программными средствами. Зачастую под эмуляцией подразумевается выполнение машинного кода на системе, для которой этот код не предназначен (хотя имеет место эмуляция самых разных видов оборудования, не только CPU - классическим примером являются эмуляторы терминала, которые на практике полностью вытеснили аппаратные терминалы). В ретрогейминге эмуляция существует для того, чтобы запускать старые приставочные игры на персональных компьютерах и других современных устройствах. По состоянию на 2026 год полноценно эмулируются на ПК практически все игровые системы 1-6 поколений; консоли 7 поколения эмулируются условно (эмуляторы развиваются); эмуляторы консолей 8 поколения находятся в разработке; консоли 9 поколения не эмулируются.
Эмуляцию следует отличать от виртуализации. Виртуализация - это способ сосуществования на одном оборудовании нескольких одновременно работающих операционных систем. При виртуализации гостевая ОС работает на той же аппаратной архитектуре, тогда как эмуляция воссоздает иную архитектуру.
Эмулятор состоит из модулей, которые воспроизводят поведение оригинального устройства. В первую очередь это процессор: машинный код целевого процессора переводятся на лету в понятные для хост-системы инструкции (путем интерпретации или динамической рекомпиляции). Особенностью эмулятора является точное воспроизведение аппаратного окружения (оперативной памяти, видеопроцессора, контроллеров, портов ввода/вывода, носителей данных, подключаемых периферийных устройств и т.д.) программными средствами хост-системы.
