Chinaunix首页 | 论坛 | 博客
  • 博客访问: 52907
  • 博文数量: 5
  • 博客积分: 850
  • 博客等级: 准尉
  • 技术积分: 150
  • 用 户 组: 普通用户
  • 注册时间: 2007-11-05 22:47
文章分类
文章存档

2008年(5)

我的朋友

分类: LINUX

2008-12-22 13:02:23

ubuntu中安装bochs碰到的各种问题以及解决方法:
安装:sudo apt-get install bochs
安装完后,运行可能碰到如下问题:
Event type: PANIC
Device: [     ]
Message: dlopen failed for module 'x': file not found

这是由于在安装的时候,少安装了个bochs-x
这个包可以在找到
也可以在terminal下面输入
sudo apt-get install bochs-x
这样才算安装完毕了。
  问题二、启动问题
点进入系统后控制台出现下面的提示:

Please choose one: [6] 6
00000000000i[ ] installing win32 module as the Bochs GUI
00000000000i[ ] using log file bochsout.txt
========================================================================
Event type: PANIC
Device: [MEM0 ]
Message: ROM: System BIOS must end at 0xfffff

A PANIC has occurred. Do you want to:
cont - continue execution
alwayscont - continue execution, and don't ask again.
This affects only PANIC events from device [MEM0 ]
die - stop execution now
abort - dump core
Choose one of the actions above: [die]
问题原因:
在2.3.5以前的bochs使用的BIOS-bochs-latest是64k的,那个时候需要加上
romimage: file=BIOS-bochs-latest,address=0xf0000
在2.3.5中的BIOS-bochs-latest更新了,变成了128k的,这个时候配置需要改为
romimage: file=$BXSHARE/BIOS-bochs-latest

解决方法:
去掉配置文件中的address那个
问题三、bochs的启动配置文件bochsrc
一般网上的资料都会提示你安装好后会有如下工具:
/usr/bin/bochs     Bochs启动程序
/usr/bin/bximage     Bochs带的制作磁盘镜像文件的工具
/usr/bin/bxcommit     把redolog放进flat磁盘镜像文件中去的交互工具
/usr/share/doc/bochs/bochsrc-sample.txt     Bochs配置文件的例子
/usr/share/bochs/BIOS-bochs-*     ROM BIOS镜像文件
/usr/share/bochs/VGABIOS-*     与VGA BIOS镜像文件相关的文件
/usr/bin/bochs-dlx     启动Bochs中DLX linux的程序
/usr/share/bochs/dlxlinux/     DLX Linux的目录,包含它的磁盘镜像文件和配置文件
/usr/share/bochs/keymaps/*.map     X11和SDL的keymap列表
其实在终端安装的却没有第四、第七和第八项,就连第二第三项也要另外安装:
       sudo apt-get install bximage
       sudo apt-get install bxcommit
所以,网上那些bochsrx在Ubuntu是运行不了的,就因为这点,我搞近一个下午,开始我老以为是配置文件不对呢。
普通的bochsrc:
romimage: file=$BXSHARE/BIOS-bochs-latest, address=0xf0000
vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest
但是在Ubuntu下压根就没有VGABIOS-lgpl-latest
例如:
lzel@lzel-desktop:/usr/share/bochs$ ls
BIOS-bochs-latest  BIOS-bochs-legacy  BIOS-qemu-latest   keymaps
lzel@lzel-desktop:/usr/share/bochs$
后来我才发现,从终端下安装bochs时它把VGA专门作为了一个程序安装在了/usr/share/vgabios/中了。
lzel@lzel-desktop:/usr/share/bochs$ ls /usr/share/vgabios/
vgabios.bin  vgabios.cirrus.bin  vgabios.cirrus.debug.bin  vgabios.debug.bin
lzel@lzel-desktop:/usr/share/bochs$
这样配置文件就要改为:
   romimage: file=$BXSHARE/BIOS-bochs-latest
   megs:4
   floppya: image=./boot.img,status=inserted
   vgaromimage: file=/usr/share/vgabios/vgabios.bin
  boot:a                                                                                                                                                  
  log:out.bochs
阅读(2052) | 评论(1) | 转发(0) |
0

上一篇:linux中访问磁盘映像文件中的信息

下一篇:没有了

给主人留下些什么吧!~~

chinaunix网友2009-03-28 18:52:24

呵呵 不错 ,转一下可以吗