Новость из категории: Программы для ПК

Обзор свободного эмулятора Bochs: другие настройки и возможности

Содержание:
1. История и развитие;
2. Установка и базовая настройка;
3. Другие настройки и возможности (Вы читаете данный раздел);
4. Запуск эмуляции и итоги.
Обзор свободного эмулятора Bochs: другие настройки и возможности

Синхронизация по времени - это очень важная часть Bochs. В других решениях, например VirtualBox, её настройку берет на себя сам эмулятор/виртуализатор, а в Bochs придется повозиться, подлаживая именно под ваш компьютер.

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

Итак, cpu:
cpu: count=количество ядер, ips=количество эмулируемых инструкций в секунду

Например:
cpu: count=1, ips=10000000

На деле эмулятор пытается выдавать запрашиваемое количество, а получается или нет -дело стороннее. Можно вообще попробовать обойтись без параметра cpu. Текущее значение IPS эмулятор показывает в строке состояния, слева. Вариант без синхронизации с системой-хозяином выглядит примерно так:
clock: sync=none, time0=local

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

Обзор свободного эмулятора Bochs: другие настройки и возможности
Windows XP в Bochs

Пример из жизни: в эмулятор установлена Windows XP; задача - сменить разрешение экрана. Напомню, что при этом появляется диалоговое окно с 15-секундным таймером и кнопками «Да» и «Нет», позволяющими применить новое разрешение или отменить (по умолчанию выбрана кнопка отмены). Так вот, без временной синхронизации эти 15 секунд в эмуляторе пробегают намного быстрее - так быстро, что не успеваешь нажать на кнопку «Да». Более того, глючит даже двойной щелчок мыши, поскольку он тоже «завязан» на время.

А при синхронизации падает скорость работы. Вариант синхронизации с системой-хозяином (той, в которой запущен эмулятор):
clock: sync=realtime, time0=local

При таком раскладе и примере выше, 15 секунд в окошке действительно длятся 15 секунд, но вся работа системы сильно тормозит - это видно даже по медленному, рваному перемещению указателя мыши. Подводя итог этой темы: параметры cpu и clock надо подбирать вручную, исходя из возможностей вашего компьютера и ваших потребностей. Пожалуй, это самый сложный и раздражающий аспект настройки Bochs.

В документации на сайте Bochs приведены устаревшие сведения по настройке эмуляции оперативной памяти. Вместо параметра megs теперь следует использовать:
memory: host=мегабайты, guest=мегабайты

Например:
memory: host=128, guest=128

Что тут значат host и guest? Host - это количество памяти (в мегабайтах), резервируемой у системы-хозяина под эмуляцию памяти внутри Bochs; guest - сколько памяти эмулируется, т.е. доступно для гостевой системы.

Для полноценной работы эмулируемой видеокарты в режиме VBE надо указать путь к файлу образа прошивки видеокарты, распространяющийся под LGPL. Например:
vgaromimage: file="/usr/local/share/bochs/VGABIOS-lgpl-latest"

Этот BIOS, прошивка, равно как и прошивка для карт Cirrus Logic, лежат в каталоге /bios исходника Bochs и устанавливаются автоматически при make install. Там же есть классический VGA BIOS от Elpin Systems.

Рейтинг статьи

Оценка
3/5
голосов: 9
Ваша оценка статье по пятибальной шкале:
 
 
   

Поделиться

Похожие новости

Комментарии

^ Наверх