Bochs

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 14 ianuarie 2016; verificările necesită 18 modificări .
Bochs

Emulator x86 open source
Tip de emulare
Dezvoltator Proiectul Bochs
Scris in C++
Sistem de operare GNU , GNU/Linux , *BSD , OS asemănător Unix , Microsoft Windows , iOS , Android
Prima editie 1994 [1]
ultima versiune 2.7 [2] (1 august 2021 ) ( 2021-08-01 )
Formate de fișiere care pot fi citite Imaginea discului Bochs rară [d] , imaginea discului Bochs (generic) [d] , imaginea discului în creștere Bochs [d] și configurația Bochs [d]
Formate de fișiere generate Imaginea discului Bochs rară [d] , imaginea discului Bochs (generic) [d] , imaginea discului în creștere Bochs [d] și configurația Bochs [d]
Licență GNU LGPL
Site-ul web bochs.sourceforge.net
 Fișiere media la Wikimedia Commons

Bochs (pronunțat „cutie”) este un program software gratuit pentru emularea hardware -ului IBM PC . Include emularea procesoarelor cu arhitectură x86 , dispozitive I/O și capacitatea de a utiliza diferite BIOS și adaptoare video. Poate emula 386 , 486 , Pentium , Pentium Pro , AMD64 și alte procesoare compatibile x86. Suportă MMX , SSE , SSE2 , 3DNow! , SSE3 , SSE4 , x86-64 , VMX , extensie de set de instrucțiuni AES . [3]

Scris în C++ și rulează pe GNU/Linux , Windows 9x , Windows NT , *BSD , Android , iOS , PSP și multe altele.

Istorie

Inițial, Bochs a fost dezvoltat ca software comercial (plătit) cu cod sursă publicat [4] (cu condiții suplimentare de utilizare ca parte a altor produse). Pe 22 martie 2000, Mandrakesoft (acum Mandriva ) a cumpărat Bochs de la dezvoltator (Kevin Lawton) și l-a publicat sub Licența Publică Generală Inferioară GNU . [5]

Unele modele Bochs sunt folosite în proiecte ulterioare, de exemplu Xen folosește un BIOS scris pentru Bochs. [6]

Caracteristici

Dispune de emulare aprofundată a procesorului, poate fi rulat pe orice platformă hardware, inclusiv SPARC , PowerPC , MIPS . [7] Bochs interpretează fiecare instrucțiune de procesor virtual. [opt]

Când rulează pe un Pentium 2 cu o frecvență de 400 MHz, bochs atinge o performanță de aproximativ 1,5 milioane de operații pe secundă [9] , adică este nevoie în medie de aproximativ 260 de cicluri de procesor fizic pentru a executa o instrucțiune de procesor virtual.

Adesea folosit pentru a depana sistemele de operare și componentele acestora. Are capabilități de depanare încorporate. [zece]

A existat o variantă care folosea plex86 pentru a accelera operațiunile de memorie. Din cauza încetării dezvoltării, plex86 nu a mai fost actualizat.

Hardware emulat

Clasă Dispozitiv
Adaptor video Cirrus Logic CL-GD5430 ISA
Cirrus Logic CL-GD5446 PCI
Placa de sunet Sound Blaster 16 (ISA, non- Plug & Play ), ES1370 (PCI)
placa de retea ethernet NE2000 [11] ISA (dacă ne2k nu este scris în slotul PCI), în caz contrar Realtek RTL8029 PCI , E1000 (PCI)
Chipset/Southbridge Intel 440FX PCI. Punte gazdă la PCI (PMC/DBX), punte PCI la ISA, controler PCI IDE (PIIX3). Sunt emulate 5 sloturi PCI.
USB Hub rădăcină; mouse, tabletă, tastatură, stocare în masă USB. USB xHCI emulează controlerul NEC/Renesas uPD720202
Procesoare Suportă multi-core, până la 8 nuclee.
Accelerator 3D 3dfx Voodoo1 (din 2.6.5)
BIOS îmbunătățit El Torito , EDD v3.0, Basic APM , PCIBIOS, PCI Interrupt Routing . ACPI , SMM , SMP .

Fapte interesante

Folosind bochs, Windows 98 a fost lansat pe un telefon mobil cu sistemul de operare Windows Mobile [12] și pe un smartphone cu sistemul de operare Android [13]

Există o variantă Bochs pentru versiunile Android 3.0 și mai sus; pe care este posibil din punct de vedere tehnic să ruleze sisteme de operare complexe, de exemplu, Windows XP sau Windows 7 , cu viteză de emulare extrem de mică [14] . Versiunea 2.5.1 a fost portată în 2012 și 2.6.8 în 2016. Din august 2016, platforma Android este susținută oficial de proiect.

Note

  1. http://bochs.sourceforge.net/doc/docbook/user/introduction.html
  2. Bochs 2.7 lansat
  3. bochs: Proiectul de emulare IA-32 Open Source (Home Page) . Consultat la 14 decembrie 2005. Arhivat din original la 28 februarie 2011.
  4. bochs Arhivat 30 mai 2014.
  5. Gael Duval. MandrakeSoft cumpără Bochs pentru Linux și îl angajează pe Open Source (link indisponibil) (23 martie 2000). Preluat la 21 septembrie 2011. Arhivat din original la 5 august 2012. 
  6. Beautiful Architecture: Leading Thinkers Reveal Hidden Beauty in... - Diomidis Spinellis, Georgios Gousios - Google Books . Preluat la 2 octombrie 2017. Arhivat din original la 14 februarie 2019.
  7. Virtualization and Forensics: A Digital Forensic Investigator's Guide to... - Diane Barrett, Greg Kipper - Google Books . Preluat la 2 octombrie 2017. Arhivat din original la 30 mai 2014.
  8. Similitudinea și clasificarea software-ului - Silvio Cesare, Yang Xiang - Google Books . Preluat la 2 octombrie 2017. Arhivat din original la 30 mai 2014.
  9. LWN - Dezvoltare . Preluat la 20 iulie 2012. Arhivat din original la 21 aprilie 2011.
  10. Bochs - OSDev Wiki . Preluat la 20 iulie 2012. Arhivat din original la 6 august 2012.
  11. Caracteristici (downlink) . Manual de utilizare Bochs . Preluat la 21 septembrie 2011. Arhivat din original la 5 august 2012. 
  12. Emularea x86 ajunge la H/PC - BOCHS 2.1.1 - HPC Factor . Preluat la 20 iulie 2012. Arhivat din original la 17 iulie 2012.
  13. http://geeknizer.com/install-run-windows-95-98-xp-on-android-htc-evo-3d/ Arhivat 20 august 2012 la Wayback Machine „Dezvoltatorul XDA mnomaanw a instalat cu succes Windows 95, Windows 98, Windows XP și Linux pe HTC EVO 3D într-un proces destul de ușor”
  14. Windows XP și Windows 7 în execuție pe o tabletă Android . Data accesului: 3 ianuarie 2016. Arhivat din original la 18 ianuarie 2016.

Literatură

Link -uri