Bochs è un emulatore open source scritto in C ++ che è in grado di funzionare su più piattaforme e diverse architetture. Bochs ha la capacità di emulare una CPU con architettura Intel x86, dispositivi I / O comuni e un BIOS.
Attualmente, Bochs può essere compilato per emulare un 386, 486 Pentium / Pentium II / Pentium III / Pentium 4 o una CPU con architettura x86-64, incluse istruzioni aggiuntive come MMX, SSEx e 3DNow!. Cosa c'è di più, è in grado di eseguire un'ampia varietà di sistemi operativi all'interno della sua emulazione, tra cui Linux, DOS, Windows 95/98, Windows NT / 2000 / XP, Vista e Seven.
A proposito di Bochs
bochs è ampiamente utilizzato nel debug dei sistemi operativi, poiché quando il sistema operativo guest si arresta in modo anomalo per qualche motivo, anche il sistema operativo host non si arresta in modo anomalo, mantiene un registro degli errori e un file dump.
In aggiunta a questo, Bochs emula tutto l'hardware utilizzato dal sistema operativo guestEmulando hard disk, cdrom, floppy disk, è possibile inserire, anche con l'emulatore in esecuzione, queste unità, questo ha un effetto negativo sulle prestazioni, essendo più lento dell'emulatore QEMU.
A differenza di altri emulatori più popolari, la sua interfaccia utente grafica è meno intuitiva, ma offre opzioni di personalizzazione modificando il file bochsrc.txt.
Cosa c'è di nuovo in Bochs 2.6.10?
La nuova edizione di Bochs 2.6.10 arriva dopo due anni e mezzo di sviluppo, versione in cui viene fornito con una manciata di nuove funzionalità e inoltre alcuni di essi sono correzioni di bug cumulative.
Una di queste caratteristiche è l'implementazione VMX (Virtual Machine Extensions) a cui aggiunto il supporto per la protezione delle sottopagine di memoria basata su EPT (Tabelle di pagine estese).
Durante l'implementazione dell'istruzione CPUID, Vengono aggiunti i modelli di CPU Skylake-X, Cannonlake e Icelake-U, nonché segni della presenza di protezione contro attacchi a canali di terze parti e record MSR associati a tale protezione implementati nei chip Icelake-U.
anche Viene evidenziato il supporto aggiunto per il chipset PCI / AGP i440BX così come l'aggiunta dell'emulazione di base degli acceleratori 3D Voodoo Banshee e Voodoo3, l'emulazione dei set di istruzioni estesi AVX-512 VBMI2 / VNNI / BITALG, VAES, VPCLMULQDQ / GFNI.
Per quanto riguarda le correzioni di bug, sono state presentate le soluzioni per l'emulazione delle estensioni PCID, ADCX / ADOX, MOVBE, AVX / AVX-512 e VMX.
Aggiunto supporto di base per DDC (Display Data Channel) per schede grafiche compatibili con VGA.
E anche un codice che emula HPET è stato portato (timer di eventi ad alta precisione) da QEMU.
Scaricare e installare bochs su Ubuntu e derivati?
Questa nuova versione è ora disponibile per il download quindi le compilazioni dei binari sono preparate per Linux e Windows. Nel caso particolare di Linux, è disponibile solo per la compilazione o in un pacchetto rpm per l'installazione su distribuzioni con supporto per questi pacchetti.
Per il caso speciale della nostra distribuzione cos'è Ubuntu o qualche suo derivato, Abbiamo due opzioni, una di queste è installare una versione precedente (dal momento che il nuovo non è stato ancora aggiornato nei repository) dai canali ufficiali di Ubuntu o eseguire la compilazione.
Per il primo, basta aprire un terminale (puoi farlo con la scorciatoia Ctrl + Alt + T) e digitarlo:
sudo apt-get install -y bochs <strong>Mientras que para el caso de la compilación</strong>, deben descargar el paquete tar.gz desde <a href="https://sourceforge.net/projects/bochs/files/bochs/2.6.10/">el siguiente enlace.</a> Hecha la descarga deben descomprimir el paquete: [sourcecode type="bash"]tar zxvf bochs-2.6.10.tar.gz
Posizionati all'interno della cartella risultante:
cd bochs-2.6.10
E digita il seguente comando per compilare:
./configure --enable-ne2000 --enable-cdrom
E voilà, possono iniziare a usare Bochs. Infine, come accennato nel post, Bochs è gestito da un unico file .bochsrc.
Quindi, per coloro che non hanno utilizzato lo strumento, posso consigliare il seguente articolo in cui spiegano molto bene come configurarlo. Il collegamento è questo.