LINUX.ORG.RU

Bochs 2.5

 


0

1

Вышла новая версия этого небыстрого, но качественного кросс-платформенного эмулятора x86 PC. Bochs включает в себя эмуляцию процессоров x86, x86-64, устройств ввода-вывода и возможность использовать различные BIOS. Поддерживает инструкции MMX, SSEx, AVX и 3DNow!.

Изменения:

  • Эмулируемый CPU полностью настраивается одной опцией в .bochsrc
  • Ускорение эмуляции от 10% (ST) до 50% (SMP)
  • Реализована поддержка новых инструкций x86 ISA (см. Intel Architecture Manual (rev 040, AVX rev 011)), а именно: XSAVEOPT, AVX/AVX2/FMA/F16C, BMI1/BMI2, SMEP, INVPCID, TSC-Deadline, VMX: VMX Preemption Timer, Pause Loop Exiting и VM Functions
  • Реализована поддержка инструкций AMD SSE4A/XOP/FMA4/TBM
  • Сеть: появился новый сетевой модуль 'slirp'
  • Диск: исправлено переполнение буфера, вызывавшее падение Bochs в LBA48 mode
  • Видео: К биосам cirrus and pcivga добавлена поддержка PCI ROM
  • Звук: портирована эмуляция звуковой карты ES1370 из Qemu.

Changelog: sourceforge.net

>>> Подробности



Проверено: svu ()
Последнее исправление: MuZHiK-2 (всего исправлений: 6)

Интересно, OS/2 на нем пробовал кто-нибудь запускать?

forth32
()

интерестно винда 7мая в нём запускается? несколько месяцев пытался её отлаживать и нихрена не вышло - она даж не устанавливается полностью. пробовал последний на тот момент cvs (или svn - не помню).

ioan
()
Ответ на: комментарий от router

«Баганые» vmware работают в продакшне 24x7x365

И что? В них работают нормальные ОС, не использующие переключение TSS, что не мешает им иметь баги, которые никто не собирается фиксить.

gentoo_root ★★★★★
()
Ответ на: комментарий от Quasar

VmWare не эмулятор. Там всё целиком от используемого процессора зависит.

Тот код, использующий переключение TSS, исполненный на моём процессоре, работает нормально, а в вмвари вызывает triple fault, ЕМНИП.

gentoo_root ★★★★★
()
Ответ на: комментарий от Nanodesu

Традиционный вопрос: чем оно лучше qemu+kvm?

У bochs есть дебаггер, интерфейсом напоминающий gdb, чтобы пошагово выполнять инструкции процессора.

gentoo_root ★★★★★
()
Ответ на: комментарий от anonymous

Да, да, нафлуди тут побольше, быстрее еще одну звездочку получишь.

Бедный анонимус, ведь у него никогда в жизни не было ни одной звездочки

goingUp ★★★★★
()

А где можно что-нибудь внятное почитать про различные эмуляции и эмуляторы?

shish
()

ПАЦАНЫ!!! Они открыли исходники, кто-нить новость на ЛОРе запилите!!!

http://www.humblebundle.com

anonymous
()
Ответ на: комментарий от gentoo_root

Только вот Bochs очень медленный, в отличии от всех остальных.

Deleted
()
Ответ на: комментарий от Nanodesu

Лучше kvm тем, что не требует аппаратной виртуализации.

Лучше qemu тем, что точнее эмуляция.

Однако если у тебя x86 и kvm тебя удовлетворяет, то на bochs даже не смотри - он очень медленный.

Deleted
()
Ответ на: комментарий от Deleted

Слабо верится. Разве что это был hiren с симметричной и очень тормозной ухой. //Помнится даже JPC, который на j2me, на мобилке грузил дос полминуты.

JustGuest
() автор топика
Ответ на: комментарий от router

у меня еще есть celeron d 2.53 ghz (который Presscot), и я его не намерен выбрасывать, и kvm на нем не работает, т.к. VT не поддерживается, а вот bochs работает (хотя нафиг такую «работу», я пользуюсь на том компьютере средним вариантом - VirtualBox без аппаратного ускорения, хотя если бы гость был линуксом, я бы применял Xen).

Deleted
()

Кстати, вот пример с которым нормально работает bochs, но имеют проблемы другие эмуляторы: http://www.multiboot.ru/win32.htm - far работающий в dos под doswin :)

JustGuest
() автор топика
Ответ на: комментарий от Nanodesu

Борщ для разработки. Он очень медленный, но всё эмулирует натурально.

tensai_cirno ★★★★★
()
Ответ на: комментарий от Napilnik

У меня с этим возникли сложности и так как хотелось эмуляции и более старых процев, я заюзал http://www.tommowalker.co.uk/pcem.html
Эмуляция хуже, но можно перключать процессоры: 8088-386-486. Правда, линукс версии нет, хоть и опенсорц.

JustGuest
() автор топика
Ответ на: комментарий от Artificial_Thought

В грядущей версии qemu будет и интерпретирующая эмуляция.

alt-x ★★★★★
()
Ответ на: комментарий от router

Да, работают постоянно годами.

Харе эту маркетинговую чушь гнать. Знаем как они работают, тут вот на днях у таких изнасилованных маркетингом обвалилась подобная архитектура, носятся пытаются восстановить ( бекапов же нету ибо работает 24х7х365 ).

vtVitus ★★★★★
()
Ответ на: комментарий от rave

Ну вы еще подеритесь, горячие финские парни :)

У vmware, qemu и bochs совершенно разное предназначение.

Если вам просто нужно гонять windows под linux или наоборот и вы в жизнь не полезете пво внутренности операционной системы - берите vmware или другой аппаратный виртуализер (virtualbox, xen).

Если вы хотите залезть во внутренности OS или еще круче, железа, vmware вам тут не поможет. Нужен будет дебаггер на уровне процессора совершенно не видимый операционной системой. Если нужно дебажить код в ring0, код операционной системы или код того же аппаратного виртуализатора - тут вообще у bochs нет никакой альтернативы при всем разнообразии разных эмуляторов.

Если вы хотите работать с новыми инструкциями (например avx или xop) на проце который их не понимает - опять же только bochs.

Если вы хотите заниматься анализом кода, делать динамический профайлинг и т.п. - тоже большой альтернативы bochs с его модулем инструментации практически нет. Есть intel pin но он работает только с ring3 кодом.

qemu (который недавно слился с xen) пытается поймать всех зайцев одновременно делая и аппаратную виртуализацию (слияние с xen), и поддерживая много гостевых и хостовых платформ и пытаясь вредрить фичи характерные для эмуляторов. В будущем может им это и удастся, особенно учитывая сколько бабла туда вкладывают. Пока же качество эмуляции как проца так и железа оставляет желать лучшего. По проведенным тестам (google kemufuzzer) среди всех существующих эмуляторов и виртуализаторов qemu самый баганутый (тогда как bochs из всех наиболее точно эмулирует железо). В режиме эмуляции, а не динамической трансляции, qemu в пару раз медленнее того же bochs, не имеет встроенного дебагера с приличным GUI и часто умудряется быть медленнее эмулятора bochs даже с включенной динамической трансляцией.

anonymous
()
Ответ на: комментарий от Sectoid

Благодаря bochs и небольшому хаку эта связка отлично печатала в win-принтер.

Ы! Спасибо. Есть подозрение что я теперь ящик какого-нибудь спиртного выйграю :)

Ибо DosBOX и всякие виртуальные машины не умеют.

pihter ★★★★★
()
Ответ на: комментарий от vtVitus

Харе эту маркетинговую чушь гнать. Знаем как они работают, тут вот на днях у таких изнасилованных маркетингом обвалилась подобная архитектура, носятся пытаются восстановить ( бекапов же нету ибо работает 24х7х365 ).

У этих изнасилованных маркетингом руки из жопы ;) Про тебя тоже есть определённые сомения

router ★★★★★
()
Ответ на: комментарий от anonymous

хз какие там скриншоты, у меня инсталлятор семёрки зависает в процессе (пробовал кучу разных), bochs пересобирал с разными опциями - до одного месте, а уже инсталлированную запустить анрил - падает в бсод во время загрузки. найти на форумах людей кому бы это удалось тоже не получилось.

ioan
()
Ответ на: комментарий от ioan

ну у меня ставиться и работает. скорее всего ты что-то тупо глючишь с конфигом.

на оффициальном форуме спросить не пробовал ? или сюда кинфиг кинь <stlintel на gmail>, может помогу чем.

anonymous
()
Ответ на: комментарий от anonymous

Если вы хотите работать с новыми инструкциями (например avx или xop) на проце который их не понимает - опять же только bochs.

Для AVX и даже AVX2 еще есть Intel SDE:

http://software.intel.com/en-us/articles/intel-software-development-emulator/

(проверял на коде под AVX, работает). А вот для XOP я и правда не знаю альтернативы Bochs. Есть AMD SimNow, но он XOP пока не умеет:

http://developer.amd.com/tools/simnow/Pages/default.aspx

Поэтому я как раз на днях стал смотреть на новый Bochs с целью тестировать свой XOP-код. Но не так-то просто оказалось. Вот Intel SDE позволяет запускать с эмуляцией отдельные программы, а не целую систему. (С другой стороны, он не позволяет запускать целую систему, так что его применение более ограничено.) Аналогично, когда-то я пользовался em86 на Linux/Alpha, чтобы запускать x86-ые бинарники. Читал, что em86 сделан на основе Bochs. Поэтому сейчас надеялся, что Bochs позволит мне сделать что-то подобное. Но нет - всё же надо ставить систему, да еще и, вероятно, для игр с AVX и XOP в ней ядро должно поддерживать XSAVE. Ничего страшного, конечно, но для моей цели неудобно. Потом еще программу придется либо после каждой сборки копировать, либо собирать под Bochs'ом же (медленно), либо делать какой-то shared storage.

Так что для случая отладки чисто userspace кода под ту же ОС, что и на хост-системе - не очень удобная вещь. Казалось бы, можно добавить режим сборки/запуска, в котором функциональность была бы аналогична Intel SDE. Но его почему-то нету, или я что-то упустил?

solardiz
()
Ответ на: комментарий от anonymous

Если нужно дебажить код в ring0, код операционной системы или код того же аппаратного виртуализатора - тут вообще у bochs нет никакой альтернативы при всем разнообразии разных эмуляторов.

qemu

Если вы хотите работать с новыми инструкциями на проце который их не понимает - опять же только bochs.

qemu

alt-x ★★★★★
()
Ответ на: комментарий от anonymous

qemu (который недавно слился с xen)

А можно ссылку на сообщение о слиянии?

tailgunner ★★★★★
()
Ответ на: комментарий от alt-x

когда в qemu появится поддержка avx - свистни.

я уже не говорю, про корректность эмуляции, которая раза в 2 ниже чем у всех аналогов.

anonymous
()
Ответ на: комментарий от solardiz

SimNow! как раз XOP умеет, только пользоваться им уже совсем полный изврат.

Медленнее Bochs раза в 4, не смотря на динамическую трансляцию, вообще не способен загрузить ни одну новую операционку. Я с месяц искать хоть одну OS с поддержкой XSAVE чтобы на нем работало, под конец остановился на Ubuntu 10.04. Никакой более новый Ubuntu на нем уже не загружается. Так что для тестирования кода с XOP кроме Bochs сейчас ничего нет и не ожидается.

anonymous
()
Ответ на: комментарий от router

У этих изнасилованных маркетингом руки из жопы ;)

Обычно все, кто использует фразы «работает 24х7х365», изнасилованный маркетингом и с руками их жопы. Спецы знают чего это значит и чего стоит, чтоб вешать эту фразу на всякое говно.

Про тебя тоже есть определённые сомения

А про тебя сомнений нет - ты стандартный изнасилованных маркетингом долбоеб.

vtVitus ★★★★★
()
Ответ на: комментарий от anonymous

Спасибо, полезная информация. Насчет неподдержки XOP в SimNow я ошибся.

Вот добавили бы XOP в Intel SDE, не надо было бы целую OS гонять...

solardiz
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.