bochs 中文文档 下载 App

bochsrc 配置文件总览——Bochs 行为的全部控制入口

bochsrc 是什么

Bochs 的一切运行时行为都由一个纯文本配置文件 bochsrc(无扩展名)控制。当你启动 bochs 或 bochsdbg 时,它会按固定顺序搜索这个文件,找到后逐行解析关键字段。

bochsrc 不是"配置向导"那种傻瓜式界面——它需要你知道自己在配什么。这是 Bochs 的有意设计:OS 开发者和底层程序员需要对硬件模型有精确的控制,bochsrc 就是这种精确控制的载体。

Bochs 如何找到 bochsrc

搜索顺序(Linux / macOS):

  1. 命令行 -f <filename> 指定的路径
  2. 当前目录的 bochsrc
  3. 当前目录的 bochsrc.linux(平台特化版)
  4. $HOME/.bochsrc
  5. 安装目录下的 share/bochs/bochsrc

Windows 上类似,只是平台特化版变成 bochsrc.win。

官方安装包会附带一份带完整注释的 bochsrc.bxrc(Bochs Launcher 编辑器用的格式,本质和 bochsrc 完全相同,只是每行前可能有 Launcher 特化的前缀注释)。

bochsrc 语法规则

每行一个配置项,格式:

关键字: 值

硬性规则:

bochsrc 核心字段一览

按功能分组的关键字段,每个字段后面标注详情在本站哪个页面:

BIOS 相关

关键字必填说明
romimage:✅系统 BIOS 镜像路径和加载地址
vgaromimage:✅VGA BIOS 镜像路径
optromimage:可选可选 ROM(如网卡 Option ROM)

→ 详情见 ROM 与 VGA BIOS 镜像

CPU 与内存

关键字必填说明
cpu:✅CPU 型号、核心数、IPS(每秒指令数)
memory:✅客户机内存大小(MB),以及宿主机分配

→ 详情见 内存与 CPU 配置

磁盘与存储

关键字必填说明
ata0-master:常用第一 IDE 主盘(硬盘)
ata0-slave:可选第一 IDE 从盘
ata1-master:可选第二 IDE 主盘(常用作光盘)
floppyA:可选软盘 A 驱动器
boot:✅启动顺序:floppy / disk / cdrom / network / none

→ 详情见 磁盘设备配置、启动顺序配置

显示与输入

关键字必填说明
vga:✅VGA 显卡型号(cirrus / std / s3)和刷新频率
display_library:✅前端(wx / sdl / x11 / win32 / term)
keyboard:✅键盘布局(us / cn / ...)
mouse:✅是否启用鼠标

硬件扩展

关键字可选说明
pci:可选PCI 芯片组和设备插槽
ne2k: / e1000:可选网卡配置
sb16: / es1370:可选声卡配置
usb:可选USB 控制器和设备

日志与调试

关键字可选说明
log:可选日志文件路径
debug: / info: / warn: / error: / panic:可选各级别事件处理策略
debugger_log:可选调试器命令日志
magic_break:可选magic break 值(触发调试器)

→ 详情见 日志输出与级别、调试器开关与参数

插件(如果编译时启用)

关键字可选说明
load:可选加载 Bochs 插件

推荐编译时禁用插件(--disable-plugins),bochsrc 会干净很多。

示例:一份实用的 bochsrc

下面是 OS 开发者常用的配置——带 64MB 内存、一个 60MB flat 磁盘、Cirrus VGA、Intel 440FX PCI 芯片组:

# bochsrc for OS development
romimage: file=BIOS-bochs-latest, address=0xfffe0000
vgaromimage: file=VGABIOS-lgpl-latest-cirrus.bin

cpu: model=pentium4, count=1, ips=10000000
memory: guest=64, host=64

ata0-master: type=disk, path="hd60M.img", mode=flat, cylinders=121, heads=16, spt=63
boot: disk

vga: extension=cirrus, update_freq=5
pci: enabled=1, chipset=i440fx, slot1=cirrus

keyboard: keymap=us
mouse: enabled=0
display_library: sdl

log: bochsout.txt
panic: action=ask
debug: action=ignore
info: action=report
warn: action=report
error: action=report

保存为 bochsrc 放在和 hd60M.img 同目录,运行 bochsdbg -q 即可。

bochsrc 与 bochsrc.bxrc 的关系

bochsrc.bxrc 是 Bochs Launcher GUI 编辑器保存的配置文件。本质上它就是一份 bochsrc,只是 Launcher 在每行前面加了一些 GUI 注释标记(如 ## @LBOCHS_STARTUP)。两者可以互相转换——直接用文本编辑器改 bochsrc.bxrc 就能当 bochsrc 用,反过来也一样。

对于新手,先用 Launcher 编辑 bochsrc.bxrc 再保存为 bochsrc 是个不错的起步方式。熟练后直接手写 bochsrc 更快、更灵活。