DOSBox 这个 x86 模拟器主要用来做什么?

更新时间

DOSBox 是一个 x86 模拟器,核心用途是在现代系统上模拟 DOS 环境,让老程序和老游戏得以运行。它适合两类人:想重温 DOS 时代游戏、又不想折腾实体老机器的玩家,以及需要运行依赖 DOS 环境的旧软件或开发工具的用户。官网当前标注的最新版本为 0.74-3。

它解决的是什么问题

现代 Windows、Linux 和 macOS 已经不再提供真正的 DOS 运行环境,直接双击老程序往往打不开,或者出现速度异常、声音缺失、鼠标失灵等问题。DOSBox 通过模拟 x86 CPU 和 DOS 系统调用,把老程序“放回”一个它认识的环境里运行,而不是靠系统兼容层勉强支撑。

典型使用场景

  • 运行 1990 年代前后的 DOS 游戏;
  • 运行依赖 DOS 的旧版商业软件或教学软件;
  • 在较新的系统上复现老程序的运行环境,用于测试或怀旧。

官网提供哪些可用信息

dosbox.com 本身是项目主页,不是游戏商店。对普通用户最有价值的部分是:

内容 作用
Downloads 获取当前版本 0.74-3 及各平台安装包
Compatibility 查询具体游戏能否运行、需要哪些设置
DOSBox Manual / Tutorial 学习配置文件写法与基本操作
Forum 遇到具体问题时查找讨论
News 版本更新与安全公告

其中 Compatibility 列表是决定“某个游戏值不值得试”的关键入口:先查兼容性,再决定是否下载配置,比盲目尝试省时间。

版本与安全方面要知道的事

0.74-3 是一次安全更新,主要修复了批处理文件超长行导致的解析缓冲区溢出(CVE-2019-7165),并加入了基本权限系统,防止 DOSBox 内运行的程序在挂载 / 或 /proc 时访问 /proc 内容(CVE-2019-12594),另有多处越界访问和缓冲区溢出修复。官方说明该版本的游戏兼容性与 0.74、0.74-2 一致。

由此可以得出一个实用结论:运行来源不明的老程序或不可信文件时,建议使用 config -securemode,这是官网明确给出的建议,而不是可选项。

官网还针对 Linux 用户发布过两个补丁:一个是 X.org 升级到 1.20 后窗口模式下鼠标无法锁定的问题(74-2-events.diff),另一个是键盘看似“松开无效”的问题(74-3-events.diff)。如果你在 Linux 上遇到这两类现象,可以先对照补丁说明判断是否属于已知问题。

怎么开始用

  1. 从官网 Downloads 页面下载对应平台的 0.74-3 安装包;
  2. 安装后先查阅 Manual 或 Tutorial,了解配置文件(conf)的基本结构;
  3. 到 Compatibility 页面确认目标游戏的状态和推荐设置;
  4. 按教程挂载程序所在目录并启动;
  5. 验证方式:程序能正常启动、画面与声音正常、输入响应正常,即说明环境基本可用。

常见卡点集中在三处:目录挂载路径写错导致找不到程序、游戏需要特定 CPU 周期数或声音设置、Linux 下的输入设备问题(对应上面两个补丁)。遇到时优先查 Compatibility 和 Forum,而不是反复重装。

它不适合什么

DOSBox 面向 DOS 程序,不是通用虚拟机,也不负责提供游戏本体——官网新闻里提到的 GOG 促销、免费游戏等属于外部商店信息,与模拟器功能无关。若你要运行的是 Windows 95/98 时代的程序,需要的是另一类方案,而不是 DOSBox 的常规用法。