在虚拟机中bochs可谓神器,不仅可以安装在x86架构的pc机系统上,还能安装在arm的安卓上,
甚至还可以安装在龙芯2f的电脑中,推测还可以安装在龙芯3a,3b的电脑中。
只是可惜它只模拟x86架构。。。。。。
真希望有那么一个类似于bochs的虚拟机,能够完整的模拟龙芯 2f,3a,3b 的cpu,和配套的
设备。这样,在开发龙芯系统的时候,将是非常方便的,你可以在x86电脑上或是龙芯电脑上,
打开龙芯模拟器,开发龙芯的软件,调试它。完成后,安装到真机中,直接就能运行了,真是方便。
在龙芯2f的电脑中,安装bochs虚拟机,曾尝试两种方式
一种是在逸珑8089a笔记本,通过sd扩展硬盘空间后,安装了debian8系统,在这个系统上,直接
通过 sudo apt-get install bochs 命令来在线安装,安装是成功的,虚拟机可以运行。
另外一种是在灵珑一体机9s2a台式机,刘工的debian6系统上,通过将源更改为debian官方的软件源,
解决依赖问题的基础上,源码编译安装,也安装成功,并成功运行。
下面,就源码编译安装,进行记录说明。
主页是:http://bochs.sourceforge.net/
下载页是:https://sourceforge.net/projects/bochs/files/bochs/
下载页面下有2.6.9文件夹,在这个文件夹下共有9个文件,
如果你是windows系统,请下载
bochs-2.6.9-win64.zip 文件或是
bochs-p4-smp-2.6.9-win32.zip 或是
Bochs-2.6.9.exe 或是
bochs-2.6.9-msvc-src.zip 源代码文件
如果你是Linux系统,请下载
bochs-2.6.9-1.i586.rpm 文件或是
bochs-2.6.9-1.x86_64.rpm 或是
bochs-2.6.9-1.src.rpm 或是
bochs-2.6.9.tar.gz 源代码文件,龙芯2f下载这个文件
另外还有一个README-bochs-2.6.9的文本文件,注意在windows系统下用记事本打开会有换行问题,
请用office打开。这个文件主要描述了2.6.9版本的变化方面概述。
sudo apt-get install build-essential
解释:build-essential 是编译要用到的工具集,比如 gcc,g++等。
sudo apt-get install xorg-dev
解释:xorg-dev是X窗口系统的库。
sudo apt-get install libgtk2.0-dev
解释:libgtk2.0-dev是gtk库。
通过上面的三个命令安装,基本上就解决了依赖问题了。
tar zxvf bochs-2.6.9.tar.gz 解压源码包
cd bochs-2.6.9 进入解压后的目录,源码在这个目录下
./configure --enable-debugger --enable-disasm 带参数配置
make 进行编译
sudo make install 编译成功后进行安装
如果按照上面方式出现问题, 需要重新配置和编译,请如下进行
make clean 将 ./configure 的配置文件和编译的文件清除,或者
make distclean 将所有文件包括编译好的安装包文件,编译文件,./configure
配置文件等等全部清除,这个distclean命令主要是针对
make dist 命令后的使用。在本次使用中,发现无法使用
make dist 命令,同样也无法使用 make distclean 命令。
通过 make clean 命令,可以回到原始的干净的源代码状态,避免再次编译时,发生意想不到的错误。
将原先编译的文件清除后,再重新执行 ./configure --enable-debugger --enable-disasm 命令,接着
再执行 make ,成功后再 make install 进行安装。
安装完成后,在终端中尝试输入 bochs ,如果出现下面绿色字体所示,则代表bochs安装真正成功了
root@ecc101pxd:/home/ecc-101pxd/下载/bochs-2.6.9# bochs
====================================================================
Bochs x86 Emulator 2.6.9
Built from SVN snapshot on April 9, 2017
Compiled on Sep 23 2018 at 11:53:19
====================================================================
00000000000i[ ] BXSHARE not set. using compile time default '/usr/local/share/bochs'
00000000000i[ ] reading configuration from .bochsrc
00000000000e[ ] .bochsrc:187: wrong value for parameter 'model'
00000000000p[ ] >>PANIC<< .bochsrc:187: cpu directive malformed.
00000000000e[SIM ] notify called, but no bxevent_callback function is registered
00000000000e[SIM ] notify called, but no bxevent_callback function is registered
===================================================================
Bochs is exiting with the following message:
[ ] .bochsrc:187: cpu directive malformed.
===================================================================
00000000000i[SIM ] quit_sim called with exit code 1
到https://sourceforge.net/projects/bochs/files/Disk images/ 页面下,有多个文件夹
如下截图所示:
根据你的需要,到对应的文件夹下,下载相应的文件,我这里下载的是freedos,如下图所示
下载完成后,进入下载好的文件夹目录下,我将文件拷贝到了 study目录下,然后在终端中进入study目录
cd study 进入到study目录(注意,这个是我自己的目录)
tar zxvf fdos-10meg.tar.gz 解压freedos文件包
cd fdos-10meg 进入解压得到的freedos目录
ls 查看文件列表
显示解压后得到了三个文件,分别是:bochsrc.txt , fdosmini.img , README 这三个文件
注意,bochs虚拟机软件,需要配置 bochsrc文件来确定模拟的设备,没有这个文件,无法启动。
配置有问题,也无法启动。所以,发现启动有问题,赶紧去看配置文件。
bochs -f bochsrc.txt 启动bochs,打开freedos系统
这里请注意,bochs命令在使用时必须带有参数,直接输入 bochs bochsrc.txt无法启动,必须带上 -f 参数
启动后,终端窗口就是调试窗口,新出现的窗口是虚拟机窗口,如下图,这是调试窗口:
刚开始启动时,由于我的bochs具有debug功能,所以启动时需要在调试窗口输入c 命令继续运行,才会
使得bochs虚拟机窗口继续向下运行。下面是bochs虚拟机窗口:
freedos成功启动了,输入debug 能够正常显示。 可以在龙芯2f电脑里,通过bochs使用intel x86汇编了。
我在逸珑8089a笔记本上,同样按照上面的 第 2 步先进行了开发工具和依赖库的安装后,成功安装了
bochs,可是在运行的时候,提示有 display:x 的问题,猜测应该是无法启动窗口。但是本人在灵珑
一体机上按照 上面的 1 - 4 步骤完全能够启动freedos虚拟窗口。估计还是有依赖没有解决。
尝试安装 gnome-devel ,最后成功解决,能够正常启动虚拟机窗口。
sudo apt-get install gnome-devel 如果此命令出现安装有问题,请尝试如下
sudo apt-get install gnome-devel --fix-missing 此命令运行应该可以完成安装
安装成功后,启动bochs就正常了。
我在灵珑9s2a一体机和逸珑8089a笔记本上,尝试源码安装最新版的qemu-3.0,没有成功。
不过尝试在线安装却成了,一体机是debian6系统,安装了qemu-0.12
逸珑8089a笔记本,debian8系统,lxde桌面,安装了qemu-2.1
安装命令统一都是:
sudo apt-get install qemu
在逸珑8089a电脑上,尝试使用了一下qemu,利用bochs网站下载的现成的freedos的img镜像文件
在龙芯电脑上成功启动了bochs和qemu虚拟机软件,而且是在 龙芯2f 的电脑上,可惜龙芯2f 的cpu性能比较低,模拟freedos
没问题,不过想装个win98,winxp什么的,就力不从心了。
现在龙芯3a3000的性能已经相当不错了,想来利用虚拟机装个winxp耍耍应该是可以的。
在龙芯 2f 的逸珑笔记本上,用qemu安装了win95,如图:
使用逸珑笔记本的时候,流畅度是不爽的,不过用这个虚拟机中的win95时,流畅度跟用主机的速度感觉相差不太大。
如果用3a3000的cpu,估计流畅度会比较爽的。虚拟机的性能也会好很多。