1 介绍Bochs

1.1 什么是Bochs

Bochs是一个能模拟完整Intel X86计算机的程序,包括模拟Intel X86 CPU,I/O设备和BIOS等。

Bochs用C ++编程语言编写,可以在许多不同的架构的计算机上运行(包括X86,MIPS,SUN等架构),无论Bochs软件其所运行的主机是什么,Bochs都可以模拟X86的环境。这既是他的优势又他的是弱点,许多其他X86模拟软件(例如VirtualBox,VMware)是不行的。因为Bochs为每个X86指令都使用了软件来进行模拟(VirtualBox,VMware则是使用虚拟化技术,只能基于X86平台,利用X86平台自身是X86指令的原因,减少了软件模拟这一步),所以它可以在MIPS架构的计算机上运行模拟x86的环境,与此同时这种为每个指令都进行软件模拟也带来了性能的开销,所以Bochs相比较其他的模拟软件,其性能较低。

Bochs一开始本来是一款商业项目,但是后来被人买下捐给GNU了,目前官网在http://bochs.sourceforge.net下,代码托管在https://github.com/bochs-emu/Bochs上。

1.2 谁在用Bochs

用户上,从官网下载的次数超过15万次,这还不包括从镜像网址或者是从github这类网址下载的量。Bochs有许多用途,但是目前用的多的国内都是在搞开发BIOS,开发操作系统这类比较底层的工作在用。其实他还有很多功能,例如运行旧的DOS游戏,当做一个虚拟机,对某些软件进行逆向等。

1.3 其他可以模拟x86的模拟器或虚拟机

QEMU,VirtualBox,VMWare等,对于写操作系统前期(调试汇编程序的时候用Bochs,后期调试C语言的时候用QEMU+GDB)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容