Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #95, НОЯБРЬ 2006 г.

Прощай, тормоза!

Крис Касперски

Хакер, номер #095, стр. 095-038-3


Одним из таких эмуляторов и является знаменитый BOCHS, создающий виртуальный компьютер с полным комплектом «оборудования» на борту и способный эмулировать двухпроцессорную (или даже четырехпроцессорную!) машину даже при наличии всего одного физического процессора. Кроме того, это единственный эмулятор, поддерживающий архитектуру x86-64, работающую поверх x86!

Полные исходные тексты можно бесплатно скачать с http://bochs.sourceforge.net, там же лежат и готовые бинарные сборки для Windows и LINUX. К сожалению, чтобы запустить на BOCHS'е Windows 2000, потребуется очень мощный процессор, самый мощный, который только можно купить. Но и в этом случае все будет очень сильно тормозить.

На основе BOCHS'а был создан другой замечательный эмулятор — QEMU, использующий режим динамической эмуляции, которая увеличивает производительность в десятки раз. Не вдаваясь в технические подробности, достаточно отметить, что QEMU как бы компилирует машинный код, и при повторном выполнении он исполняется на «живом» железе на полной скорости. В циклах это дает колоссальный выигрыш!

Правда, общая производительность все равно оставляет желать лучшего, да и стабильность (в силу технических сложностей реализации динамической эмуляции) прихрамывает. Некоторые программы (особенно игрушки) вообще не запускаются, некоторые периодически вылетают. Однако QEMU легко тянет LINUX/BSD без графической оболочки, и ряды его поклонников неуклонно растут. Свежую версию всегда можно бесплатно скачать с http://fabrice.bellard.free.fr/qemu.

Если нельзя, но очень хочется, то можно

Осознав, какие рыночные перспективы открывает создание качественного эмулятора, 8 февраля 1999 года компания VM Ware представила революционный продукт VM Ware Virtual Platform. Для достижения эффективной скорости эмуляции на x86 разработчики VM Ware использовали ряд хитрых трюков, требующих тесного взаимодействия с ядром основной оси и, что хуже всего, накладывающих довольно жесткие ограничения на гостей. Полной виртуализации добиться так и не удалось. Реально имитируется лишь относительно небольшая часть возможностей x86, а остальные приводят к аварийному завершению гостевой оси или работают не так, как предполагалась. Но зато производительность сокращается уже не в сотни, а всего лишь в десятки раз, обеспечивая комфортную работу с Windows 2000 уже на Pentium-III. Однако поиграть в игрушки или посмотреть видеофильм, увы, не получится.

Аналогичную схему виртуализации использует и Virtual PC, явно уступающий своему конкуренту в полноте эмуляции. В частности, отладчик SoftICE, великолепно работающий под VM Ware, на Virtual PC просто не идет. Тем не менее, под Virtual PC лучше работают игрушки, не требующие быстрого процессора и мощной видеокарты, но там возникают серьезные проблемы со звуковой поддержкой.

Назад на стр. 095-038-2  Содержание  Вперед на стр. 095-038-4