Interested Article - Bochs

Bochs (произносится «бокс») — свободное ПО для эмуляции аппаратного обеспечения IBM PC . Включает в себя эмуляцию процессоров архитектуры x86 , устройств ввода-вывода и возможность использовать различные BIOS и видеоадаптеры. Может эмулировать 386 , 486 , Pentium , Pentium Pro , AMD64 и другие x86-совместимые процессоры. Поддерживает расширения MMX , SSE , SSE2 , 3DNow! , SSE3 , SSE4 , x86-64 , VMX , расширение системы команд AES .

Написана на языке программирования C++ и работает на GNU/Linux , Windows 9x , Windows NT , *BSD , Android , iOS , PSP и др.

История

Изначально Bochs разрабатывался как коммерческое (платное) ПО с опубликованным исходным кодом (с дополнительными условиями для использования в составе других продуктов). 22 марта 2000 года компания Mandrakesoft (ныне Mandriva ) купила Bochs у разработчика (Kevin Lawton) и опубликовала его под открытой лицензией GNU Lesser General Public License .

Некоторые разработки bochs используются в более поздних проектах, например, Xen использует BIOS, написанную для bochs.

Особенности

Отличается тщательной эмуляцией процессора, может быть запущен на любой аппаратной платформе, в том числе на SPARC , PowerPC , MIPS . Bochs интерпретирует каждую команду виртуального процессора.

При работе на Pentium 2 с частотой 400 МГц bochs достигает производительности порядка 1,5 млн операций в секунду , то есть на выполнение одной команды виртуального процессора уходит в среднем около 260 тактов физического процессора.

Часто применяется для отладки операционных систем и их компонентов. Имеет встроенные возможности по отладке.

Существовал вариант, использующий для ускорения операций с памятью. В связи с прекращением разработок, plex86 больше не обновлялся.

Эмулируемое оборудование

Класс Устройство
Видеоадаптер Cirrus Logic CL-GD5430 ISA
Cirrus Logic PCI
3dfx Voodoo Graphics PCI
3dfx Voodoo2 PCI
3dfx Banshee AGP
3dfx Voodoo3 AGP
Звуковая карта (ISA, без ), ES1370 (PCI)
сетевая карта Ethernet NE2000 ISA (если в PCI-слоте не прописать ne2k), иначе Realtek RTL8029 PCI , E1000 (PCI)
Чипсет/южный мост PCI. Мост Host-to-PCI (PMC/DBX), мост PCI-to-ISA, PCI контроллер IDE (PIIX3). Эмулируется 5 PCI слотов.
USB Корневой хаб; мышь, tablet, keypad, usb mass storage. USB xHCI эмулирует контроллер NEC/Renesas uPD720202
Процессоры Поддерживается многоядерность, до 8 ядер.
3D-ускоритель 3dfx Voodoo1 (с версии 2.6.5)
Enhanced BIOS El Torito , v3.0, базовый APM , PCIBIOS, маршрутизация прерываний PCI . ACPI , SMM , SMP .

Интересные факты

С использованием bochs был произведен запуск Windows 98 на сотовом телефоне с ОС Windows Mobile и на смартфоне с ОС Android .

Существует вариант Bochs для Android версий 3.0 и выше; на котором существует техническая возможность запуска сложных ОС, например, Windows XP или Windows 7 , с крайне низкой скоростью эмуляции . Версия 2.5.1 была портирована в 2012, а 2.6.8 — в 2016 году. С августа 2016 платформа Android официально поддерживается проектом.

Примечания

  1. . Дата обращения: 14 декабря 2005. 28 февраля 2011 года.
  2. 30 мая 2014 года.
  3. Gael Duval. (23 марта 2000). Дата обращения: 21 сентября 2011. Архивировано из 5 августа 2012 года.
  4. . Дата обращения: 2 октября 2017. 14 февраля 2019 года.
  5. . Дата обращения: 2 октября 2017. 30 мая 2014 года.
  6. . Дата обращения: 2 октября 2017. 30 мая 2014 года.
  7. . Дата обращения: 20 июля 2012. 21 апреля 2011 года.
  8. . Дата обращения: 20 июля 2012. 6 августа 2012 года.
  9. . Bochs User Manual . Дата обращения: 21 сентября 2011. Архивировано из 5 августа 2012 года.
  10. . Дата обращения: 20 июля 2012. 17 июля 2012 года.
  11. от 20 августа 2012 на Wayback Machine «XDA developer mnomaanw has successfully installed Windows 95, Windows 98, Windows XP and Linux on HTC EVO 3D in a fairly easy process»
  12. . Дата обращения: 3 января 2016. 18 января 2016 года.

Литература

  • Darek Mihocka, Stanislav Shwartsman.

Ссылки

  • // LWN
Источник —

Same as Bochs