Bochs是一個x86硬件平臺的開源模擬器。它可以模擬各種硬件的配置。Bochs模擬的是整個PC平臺,包括I/O設(shè)備、內(nèi)存和BIOS。更為有趣的是,甚至可以不使用PC硬件來運行Bochs。事實上,它可以在任何編譯運行Bochs的平臺上模擬x86硬件。通過改變配置,可以指定使用的CPU(386、486或者586),以及內(nèi)存大小等。一句話,Bochs是電腦里的“PC”。根據(jù)需要,Bochs還可以模擬多臺PC,此外,它甚至還有自己的電源按鈕。
簡介
Bochs是一種十分輕便的使用C++編寫的開源IA-32(x86)電腦模擬器,可以運行在最受歡迎的平臺上。它仿真英特爾x86 CPU、常見的I/O設(shè)備、和定制的BIOS。Bochs可以被編譯仿真386、486、Pentium/PentiumII/PentiumIII/Pentium4或x86-64位的CPU,包括可選的MMX,SSEx和3DNow指令。在Bochs仿真環(huán)境里能夠運行許多操作系統(tǒng),比如Linux、DOS、Windows 95/98/NT/2000/XP或者Windows Vista。Bochs是由凱文·勞頓編寫的,由sourceforge的Bochs項目組維護。Bochs的發(fā)布遵守GNU LGPL。詳見復(fù)制許可。peter-bochs-debugger是一個輔助Bochs的GUI調(diào)試器。它是用Java編寫的。它只能配合Bochs版本 >= 2.3.7。
歷史
Bochs最初是一個帶有商業(yè)許可的程序,售價為25美元,用于原樣使用。如果用戶需要將其鏈接到其他軟件,用戶必須協(xié)商特殊許可。這在2000年3月22日發(fā)生了變化,當時Mandriva(后來的Mandriva)從首席開發(fā)人員Kevin Lawton手中購買了Bochs,并在GNU Lesser General Public License下為Linux發(fā)布。對于Windows XP的支持在2.6.10版本結(jié)束。
使用
Bochs模擬PC操作系統(tǒng)所需的硬件,包括硬盤驅(qū)動器、CD驅(qū)動器和軟盤驅(qū)動器。它不使用任何主機CPU虛擬化功能,因此比大多數(shù)虛擬化(與模擬相對)軟件更慢。它通過完全隔離客戶操作系統(tǒng)與硬件提供額外的安全性。Bochs還具有廣泛的調(diào)試功能。它被廣泛用于操作系統(tǒng)開發(fā),因為它消除了對不斷系統(tǒng)重啟(以測試代碼)的需求。BFE被描述為“Bochs PC模擬器的圖形調(diào)試器界面”,是Bochs PC模擬器內(nèi)調(diào)試器的圖形界面,可以使軟件在指令和寄存器級別逐步調(diào)試,類似于Borland的Turbo Debugger。
說明
Bochs的說明文檔被寫進了docbook(資料收集庫)。Docbook是一種文本格式,這種格式文檔可以輕易地轉(zhuǎn)換成許多流行的瀏覽器格式,如HTML、PDF、和PostScript。每個Bochs的可執(zhí)行發(fā)布包都包含說明文檔的HTML文件。
源代碼
您可以下載最新發(fā)布版,或者使用CVS獲取最新的源代碼,或者抓取每夜都更新的CVS快照。正式發(fā)布的版本包含了最穩(wěn)定的代碼,但是如果你想嘗試最新的功能,請試試CVS版。
調(diào)試模式
編譯工具和依賴庫
sudo APT install build-essential
sudo apt-get install xorg-dev
sudo apt-get install libgtk2.0-dev
編譯安裝
$ tar vxaf bochs-2.5.1.tar.gz
$ cd bochs-2.5.1
$ ./configure –enable-debugger-enable-disasm
$ make
$ sudo make install
幫助
如果您希望有助于Bochs項目,最好是第一步加入Bochs開發(fā)者郵件列表,看看最近的消息文檔,看看發(fā)生了什么?
如果您是一名技術(shù)人員(明白硬件規(guī)格、能用C、C/C++)看看開放的漏洞報告和功能需求的列表,看看他們提到的問題是否有您感興趣的工作。如果您查出CVS源碼的漏洞,并且進行改進,制作了補丁,所有的開發(fā)人都會為您高興而應(yīng)用它。經(jīng)常提交補丁或者從事源碼主要改進工作的開發(fā)者將獲得寫訪問CVS權(quán)限。一定要通過Bochs開發(fā)者列表交流,避免沒有明確它而幾個人做相同的事。
如果您是一個Bochs使用者,不是硬件/C++專家,仍有許多您能幫助解決難題的地方。
例如:
寫一個關(guān)于如何安裝一個獨特的操作系統(tǒng)的介紹。
編寫/整理文檔
在各種操作系統(tǒng)上測試Bochs并報告它的運行情況。
參考資料 >