Емуляція (англ.
Емуляція дозволяє виконувати комп'ютерну програму на платформі (комп'ютерній архітектурі та/або операційній системі), відмінній від тієї, для якої вона була написана в оригіналі. Емуляцією також називають сам процес цього виконання. На відміну від симуляції, яка лише відтворює поведінку програми, при емуляції ставиться мета точного моделювання стану імітованої системи, для виконання оригінального машинного коду.
При використанні мов високого рівня, іноді в цілях збереження швидкодії виконуваної програми, замість емуляції роблять портування програм в нове середовище. У цьому випадку проводиться переписування заново ділянки коду, які залежать від апаратного забезпечення.
Одне з популярних застосувань емуляції — виконання на персональному комп'ютері ігор, написаних для гральних автоматів або ігрових приставок.
Теоретично, згідно з тезою Черча-Тюрінга, будь-яке операційне середовище може бути емульоване в будь-якому іншому середовищі. На практиці, однак, зустрічається ряд труднощів; зокрема, точна поведінка емульованої системи часто не документована і має бути досліджена і визначена за допомогою зворотної розробки.
Достатньо повна емуляція деякої апаратної платформи вимагає граничної точності, до рівня окремих тактових циклів, недокументованих особливостей і навіть помилок реалізації. Це особливо важливо для таких моделей класичних домашніх машин, як Commodore 64, програмне забезпечення яких значною мірою залежить від програмістських рішень. Вибір конкретного рішення відбувається з метою оптимізації (за розміром або швидкістю виконання програми), застосовуваної, наприклад програмістами ігор. Такі програми досить часто бувають засновані на недокументовані можливості процесора або операційної системи.
На противагу цьому, на деяких інших платформах досить мало використовувався прямий доступ до апаратного забезпечення. У цьому випадку виявляється достатнім забезпечити певний рівень сумісності, що забезпечує трансляцію системних викликів системи, яка емулюється, у виклики системи, що працює.
Зазвичай, емулятор складається з декількох модулів, що відповідають за різні підсистеми емульованого комп'ютера. Частіше за все, емулятор складається з:
Системна шина, як правило, не емулюєтеся, з причин спрощення або підвищення продуктивності, та віртуальна периферія звертається безпосередньо до модуля ЦП та модуля пам'яті.
Це незавершена стаття про інформаційні технології. Ви можете допомогти проєкту, виправивши або дописавши її. |
Цю статтю треба вікіфікувати для відповідності стандартам якості Вікіпедії. (Грудень 2008) |
This article uses material from the Wikipedia Українська article Емуляція, which is released under the Creative Commons Attribution-ShareAlike 3.0 license ("CC BY-SA 3.0"); additional terms may apply (view authors). Вміст доступний на умовах CC BY-SA 4.0, якщо не вказано інше. Images, videos and audio are available under their respective licenses.
®Wikipedia is a registered trademark of the Wiki Foundation, Inc. Wiki Українська (DUHOCTRUNGQUOC.VN) is an independent company and has no affiliation with Wiki Foundation.