参考书籍:《操作系统 真象还原》
参考文章:官方的说明文档
阅读前提:bochs的安装和配置。这个是我之前的安装配置博客,参考网上其他博客而成。没法正常运行,只能阅读官方文档。
下面是配置的打开方式。(哪天有空,一定要学下makefile)


1、配置文件的位置

1.1 初始化的配置文件位置

首先,在linux中配置文件一般放在 /etc 目录下面。
所以,很容易在 /etc 下找到bochs-init 这个文件夹。

/etc/bochs-init

文件夹中,有两个文件 bochsrc init.sh。bochsrc便是初始化的配置文件。

1.2 初始化的配置文件复制到工作目录下面

我们用自己的配置文件,修改初始化文件便好了。

sudo cp -a /etc/bochs-init/bochsrc  /usr/share/bochs/
sudo cp bochsrc InitBochsrc  #创建一个备份
sudo mv bochsrc bochsrc.disk

那怎么修改配置文件呢,看官方文档…
官方文档的链接在 /usr/share/doc/bochs/README 中,也可以找到。

2 、官方文档

我们简单翻译以下,后面的内容自己看了。
Bochs使用bochsrc的配置文件。通过配置文件bochs知道如何找寻镜像。当你启动bochs的时候,它会查找配置文件,找到之后分析它…

3、报错&&修改

官方文档中,中有的东西看不懂,我没有管,哈哈。
不断的运行命令 bochs -f bochs.disk
我下面举个例子。
有的错误看不懂,暂时注释掉就好。以后用的时候,回来开启就好。
上图显示:
配置文件的28行,keyboard_serial_delay ,猜测是设置键盘串口输入延时,不是特别重要,注释掉就好。
>>PANIC<<,这个报错挺重要的。现实usb1的文件没有。咱们暂时没有用大usb外设,注释掉就好。
还有很多错误,慢慢改就好。
简单的直接配置,看不懂的先注释,以后用的时候再修改。下面是我的配置文件内容。

3、配置文件内容

config_interface: textconfig
display_library: sdl
romimage: file=/usr/share/bochs/BIOS-bochs-latest
megs: 32
vgaromimage: file=/usr/share/vgabios/vgabios.bin
floppya: 1_44=/dev/fd0, status=inserted
ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14
ata1: enabled=0, ioaddr1=0x170, ioaddr2=0x370, irq=15
ata2: enabled=0, ioaddr1=0x1e8, ioaddr2=0x3e0, irq=11
ata3: enabled=0, ioaddr1=0x168, ioaddr2=0x360, irq=9
ata0-master: type=disk, path="/usr/share/bochs/hd60M.img", mode=flat, cylinders=121, heads=16, spt=63
ata0-slave: type=cdrom, path="/dev/cdrom", status=insertedboot: disk#ips: 1000000
#floppy_bootsig_check: disabled=0
log: bochs.out
panic: action=ask
error: action=report
info: action=report
debug: action=ignore
debugger_log: -
com1: enabled=1, dev=/dev/ttyS0
parport1: enabled=1, file="/dev/lp0"
sb16: midimode=1, midi=/dev/midi00, wavemode=1, wave=/dev/dsp, loglevel=2, log=/dev/stdout, dmatimer=600000
#vga_update_interval: 300000
#keyboard_serial_delay: 250
#keyboard_paste_delay: 100000
#floppy_command_delay: 500
mouse: enabled=1
private_colormap: enabled=0
#ne2k: ioaddr=0x240, irq=9, mac=b0:c4:20:00:00:00, ethmod=linux, ethdev=eth0
#keyboard_mapping: enabled=0, map=/usr/share/bochs/keymaps/x11-pc-de.map
#keyboard_type: mf
#user_shortcut: keys=ctrlaltdel
#magic_break: enabled=1
#cmosimage: cmos.img
#load32bitOSImage: os=nullkernel, path=../kernel.img, iolog=../vga_io.log
#load32bitOSImage: os=linux, path=../linux.img, iolog=../vga_io.log, initrd=../initrd.img
#i440fxsupport: enabled=1
#usb1: enabled=1, ioaddr=0xFF80, irq=10
#text_snapshot_check: enable

最后,用该配置文件,运行下书上第二章的程序。

 bochs -f bochs.disk

计算机发展,网上很多文章都旧了,它当时是对的,现在却不能起作用。
所有,可以的话,运行一个东西,尽量知道为什么。瞅瞅官方文档。虽然全英文看着有点脑袋疼,但,sometimes,很有效。

bochs的安装和配置02相关推荐

  1. ubuntu下bochs的安装和配置

    <ORANGE'S:一个操作系统的实现>一书中选择使用虚拟计算机Bochs进行仿真. Bochs是一个x86硬件平台的开源模拟器.它可以模拟各种硬件的配置.Bochs模拟的是整个PC平台, ...

  2. PyQt5入门讲解——01.安装与配置

    PyQt5系列文章目录 01.安装与配置 02.QLabel控件 文章目录 PyQt5系列文章目录 前言 一.PyQt5库安装 二.配置pycharm工具 1.QtDesigner 2.PyUIC 3 ...

  3. Windows Server 2012 R2 NAP服务器安装与配置02之 NAP的原理与基础安装 2014-02-25 20:45:53

     Windows Server 2012 R2 NAP服务器安装与配置02之 NAP的原理与基础安装 2014-02-25 20:45:53 标签: windows server 2012 r2  W ...

  4. Windows Server 2012 R2 NAP服务器安装与配置02之 NAP的原理与基础安装 2014-02-25 20:45:53 标签:windows server 2012 r2 Win

     Windows Server 2012 R2 NAP服务器安装与配置02之 NAP的原理与基础安装 2014-02-25 20:45:53 标签: windows server 2012 r2  W ...

  5. 【OS学习笔记】七 Bochs的下载、安装和配置

    参考:<X86汇编语言-从实模式到保护模式>-李忠.纯学习笔记,更详细内容请阅读正版书籍. 1 开源的BOCHS虚拟机软件 Bochs是开源软件.它用软件来模拟处理器取指令和执行指令的过程 ...

  6. Visual Studio 2019安装与配置

    在Visual Studio中安装C和C ++支持 如果尚未下载并安装Visual Studio和Microsoft C / C ++工具,请按以下步骤开始. Visual Studio 2019安装 ...

  7. 02.SVN入门笔记——VisualSVN-Server 安装与配置

    安装服务器端程序 服务器端程序版本 VisualSVN-Server 下载地址: https://www.visualsvn.com/server/download/ https://gitee.co ...

  8. win10+R4.1.2语言+Rstido(2022.02.0)详细安装和配置方法

    一.安装R语言 首先下载 R语言. https://cran.r-project.org/mirrors.html 进入网页后,找到清华 如下图: 点击进入下载页面,如下图 然后会进入页面如下图,选择 ...

  9. Zookeeper 安装和配置

    Zookeeper 安装和配置01 ZooKeeper的安装与部署02 转载于:https://www.cnblogs.com/hfultrastrong/p/8414587.html

最新文章

  1. 以前不知道的,现在知道了(微机原理)
  2. 不止视觉,CMU研究员让机器人学会了听音辨物
  3. 三天竟然爆发两起大漏洞事件!我们来教你如何跳过以太坊的坑
  4. C/C++代码的混合使用
  5. 微信小程序把wx.showToast的文字提示长度增加的方法
  6. python列表遍历 空列表_Python list列表执行reversed()后执行pop()返回迭代对象遍历为空问题...
  7. spring mvc响应数据方式
  8. cookie ? 利用cookie实现 显示上次访问时间?
  9. SQL Server 2012 - 数据表的操作
  10. WinForm------GridControl添加底部合计框
  11. java截取视频第一帧图片
  12. keytool java_如何找到并运行keytool
  13. java可以进行爬虫吗_java能写爬虫程序吗
  14. Matlab仿真偶极子天线激励
  15. win10 蓝牙忽然消失,设备管理器有未知USB设备描述符请求失败
  16. LaTeX--5--一个文档的基本结构/导言区/标题_作者_日期
  17. 基于OP放大器的有源模拟滤波器设计--基础知识
  18. 【笨木头Lua专栏】基础补充07:协同程序初探
  19. opencv 标定 3D项目 四
  20. 重新认识史蒂夫·乔布斯

热门文章

  1. git 上传错误This oplation equires one of the flowi vrsionsot the NET Framework:.NETFramework
  2. libopencv_videoio.so: undefined reference to `av_free@LIBAVUTIL_52'
  3. Talk | 微软亚洲研究院宋恺涛南大余博涛:面向文本/音乐序列任务的Transformer注意力机制设计
  4. Protobuf动态解析
  5. git项目工作流程、标准 source_tree的使用
  6. 寻址——网络设备中寻找网络接口所对应的网络设备的方法(不知道接口所对应的设备)
  7. 中国苏打石灰玻璃行业市场供需与战略研究报告
  8. W25Q128数据手册翻译(3)
  9. 体验有奖 | 3步玩转云原生数仓AnalyticDB MySQL电商行业数据分析场景
  10. JavaScript实现表单阻断提交--高效高可用超详细