QEMU
QEMU - это свободный эмулятор платформы x86 для Linux и Windows. Образ виртуальной машины QEMU с предустановленной ReactOS, можно загрузить здесь.
Если вы ищете более производительный эмулятор, то попробуйте VirtualBox. Возможно использовать и продукты VMware, но мы не рекомендуем, т.к. они не являются свободным ПО.
Содержание
Установка и подготовка QEMU
Скачайте последнюю версию QEMU: например для Windows
Установите его в папку:
C:\qemu
Установка ReactOS в QEMU
Переходим в папку с QEMU:
cd C:\qemu
- Создайте образ виртуального жесткого диска, на который будет установлена ReactOS, введя с клавиатуры:
qemu-img create ReactOS.img 1000M
1000M обозначает 1000 мегабайт - этого должно быть достаточно. Это значение должно быть больше, если вы планируете устанавливать приложения, которые будете тестировать в ReactOS.
- В *nix наберите:
sudo umount /dev/shm sudo mount -t tmpfs -o size=144m none /dev/shm
- Для обычной загрузки и установки набираем:
qemu-system-i386 -m 256 -boot d -cdrom ReactOS.iso -hda ReactOS.img
- Для снятия логов Наберите:
qemu-system-i386 -L . -m 256 -cdrom ReactOS.iso -hda ReactOS.img -boot d -localtime -serial file:ReactOS.log
-m 256 обозначает 256Мб ОЗУ
-boot d указывает QEMU начать загрузку с CD-ROM. Без -boot d будет произведена загрузка с жёсткого диска (Reactos.img).
ReactOS.iso это образ установочного CD, который можно скачать по адресу http://www.reactos.org/download
-serial file:ReactOS.log указывает QEMU сохранять данные, передаваемые через последовательный порт из виртуальной машины (ReactOS) в файл ReactOS.log.
При переустановке ReactOS, произведите только шаги 2 (если это необходимо) и 3.
Если вы хотите скопировать какие-либо файлы в ReactOS, то создайте образ компакт-диска и смонтируйте его в QEMU.
Вы можете запустить QEMU следующим образом:
qemu-system-i386 -L . -m 256 -cdrom Applications.iso -hda ReactOS.img -localtime -serial file:ReactOS.log
- Примечание:
Готовый ReactOS.img, на который будет установлена система, можно использовать в эмуляторе QEMU для Android, под названием Limbo PC Emulator Все настройки и запуск ReactOS на Limbo PC Emulator: ReactOS на Samsung Galaxy J5 Limbo PC Emulator
Настройка звука
Используя эмуляцию AC97 (QEMU 0.10.1 или новее)
- Установите эмуляцию AC97 (-soundhw ac97)
- Установите драйвера, используя Менеджер приложений (Необходимо будет дважды перезагрузиться)
Известные проблемы
- При смене аудиопотока с высокой частотой дискретизации аудиопотоком с низкой частотой дискретизации происходит сбой звука
Используя эмуляцию ES1370MP
- Установите эмуляцию ES1370 (-soundhw es1370)
- Скачайте и установите драйвера отсюда
- Создайте файл с именем import.reg со следующим содержимым
REGEDIT4 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96C-E325-11CE-BFC1-08002BE10318}\0000\Settings] "WaveVol_Left"=dword:00040000 "WaveVol_Right"=dword:00040000 "WaveLineSM"=dword:00000000 "WaveWaveInSM_Left"=dword:01010101 "WaveWaveInSM_Right"=dword:00000000 "CDVol_Left"=dword:fffffff6 "CDVol_Right"=dword:fffffff6 "CDLineSM"=dword:00000000 "CDWaveInSM_Left"=dword:00000000 "CDWaveInSM_Right"=dword:00000000 "LineInVol_Left"=dword:fffffff6 "LineInVol_Right"=dword:fffffff6 "LineLineSM"=dword:01000001 "LineWaveInSM_Left"=dword:00000000 "LineWaveInSM_Right"=dword:00000000 "MicBoost"=dword:00000001 "MicVol"=dword:fffffff6 "MicLineMute"=dword:00000001 "MicWaveInSM_Left"=dword:00000000 "MicWaveInSM_Right"=dword:00000000 "AuxVol_Left"=dword:fffffff6 "AuxVol_Right"=dword:fffffff6 "AuxLineSM"=dword:00000000 "AuxWaveInSM_Left"=dword:00000000 "AuxWaveInSM_Right"=dword:00000000 "PhoneVol"=dword:fffffff6 "PhoneMute"=dword:00000000 "PhoneWaveInSM_Left"=dword:00000000 "PhoneWaveInSM_Right"=dword:00000000 "LineOutVol_Left"=dword:fff9f203 "LineOutVol_Right"=dword:fff9f203 "LineOutMute"=dword:00000000
- Импортируйте эти настройки открыв этот файл через редактор реестра.
- Перезагрузитесь
Если в QEMU 0.10.x звук отсутствует, то вам необходимо установить QEMU_AUDIO_DRV=fmod (доступные варианты: dsound; fmod; sdl; none ; wav (сохранение в файл) - для получения дополнительных сведений, обратитесь к документации QEMU.
Известные проблемы
После запуска первого аудиопотока необходимо выйти из QEMU и войти вновь (похоже, что это ошибка QEMU).
Настройка сети
Сеть будет работать сама при использовании в QEMU ключей '-net nic' и '-net user'.
Использование ReactOS LiveCD на QEMU
- Перейдите в ранее созданную директорию при помощи команды 'cd'.
- Введите следующую команду:
qemu -L <Путь к папке QEMU>\bios -cdrom <имя файла>.iso -m 64
Получение отладочных сообщений
По умолчанию, отладочные сообщения ReactOS отправляются в последовательный порт (COM1).
Для получения этих данных, вам потребуется QEMU версии 0.6.1 или более поздней, позволяющие задать параметр -serial.
Допустимыми аргументами для -serial являются: имена файлов, именованные каналы, COM-порты и другое.
Примеры:
-serial file:"C:\roslog.txt" -serial pipe:"\\pipe1\" -serial COM4
Перенаправление в файл
Если вы используете виртуальную машину QEMU и хотите, чтобы данные, передоваемые через последовательный порт, перенаправлялись в файл, добавьте следующий параметр в командную строку QEMU:
-serial file:FILENAME
Замените FILENAME именем файла, в который будут выводиться отладочные сообщения.
Перенаправление в консоль
Описанный выше метод перенаправляет вывод в файл. Если вы хотите переадресовать его в консоль, то существует два различных метода. Они зависят от операционной системы, в которой вы запускаете QEMU.
- В Windows, добавьте следующий параметр в командную строку QEMU:
-serial file:CON
- В Unix-системе, добавьте следующий параметр в командную строку QEMU:
-serial stdio
Соединение с последовательным портом при использовании com0com
Установите драйвер com0com как описано в руководстве по Com0com.
Добавьте следующий параметр в командную строку QEMU
-serial COM4
Пишите "COM4" только заглавными буквами, иначе QEMU не сможет использовать последовательный порт!
Откройте клиент терминала и подключитесь ко второму виртуальному порту. Если этого порта в списке нет, то попробуйте COM4.
Еще одним вариантом является использование Среды тестирования ReactOS вместо настройки вручную.
KQEMU
Если вам кажется, что QEMU работает слишком медленно, попробуйте воспользоваться модулем KQEMU.
Учтите, однако, что KQEMU работает только с QEMU до версии 0.11 и более не развивается.