我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Linux中如何运行DOS程序

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Linux中如何运行DOS程序

这篇文章主要为大家展示了“Linux中如何运行DOS程序”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux中如何运行DOS程序”这篇文章吧。

传统的 DOS 操作系统支持的许多非常优秀的应用程序: 文字处理,电子表格,游戏和其它的程序。但是一个应用程序太老了,并不意味着它没用了。

如今有很多理由去运行一个旧的 DOS 应用程序。或许是从一个遗留的业务应用程序中提取一个报告,或者是想玩一个经典的 DOS 游戏,或者只是因为你对“传统计算机”很好奇。你不需要去双引导你的系统去运行 DOS 程序。取而代之的是,你可以在 Linux 中在一个 PC 仿真程序和 FreeDOS 的帮助下去正确地运行它们。

FreeDOS 是一个完整的、免费的、DOS 兼容的操作系统,你可以用它来玩经典的游戏、运行旧式业务软件,或者开发嵌入式系统。任何工作在 MS-DOS 中的程序也可以运行在 FreeDOS 中。

在那些“过去的时光”里,你安装的 DOS 是作为一台计算机上的独占操作系统。 而现今,它可以很容易地安装到 Linux 上运行的一台虚拟机中。 QEMU (快速仿真程序Quick EMUlator的缩写) 是一个开源的虚拟机软件,它可以在 Linux 中以一个“访客guest”操作系统来运行 DOS。许多流行的 Linux 系统都默认包含了 QEMU 。

通过以下四步,很容易地在 Linux 下通过使用 QEMU 和 FreeDOS 去运行一个老的 DOS 程序。

Linux中如何运行DOS程序

第 1 步:设置一个虚拟磁盘

你需要一个地方来在 QEMU 中安装 FreeDOS,为此你需要一个虚拟的 C: 驱动器。在 DOS 中,字母A: 和 B: 是分配给第一和第二个软盘驱动器的,而 C: 是第一个硬盘驱动器。其它介质,包括其它硬盘驱动器和 CD-ROM 驱动器,依次分配 D:、E: 等等。

在 QEMU 中,虚拟磁盘是一个镜像文件。要初始化一个用做虚拟 C: 驱动器的文件,使用 qemu-img 命令。要创建一个大约 200 MB 的镜像文件,可以这样输入:

qemu-img create dos.img 200M

与现代计算机相比, 200MB 看起来非常小,但是早在 1990 年代, 200MB 是非常大的。它足够安装和运行 DOS。

第 2 步: QEMU 选项

与 PC 仿真系统 VMware 或 VirtualBox 不同,你需要通过 QEMU 命令去增加每个虚拟机的组件来 “构建” 你的虚拟系统 。虽然,这可能看起来很费力,但它实际并不困难。这些是我们在 QEMU 中用于去引导 FreeDOS 的参数:

qemu-system-i386QEMU 可以仿真几种不同的系统,但是要引导到 DOS,我们需要有一个 Intel 兼容的 CPU。 为此,使用 i386 命令启动 QEMU。
-m 16我喜欢定义一个使用 16MB 内存的虚拟机。它看起来很小,但是 DOS 工作不需要很多的内存。在 DOS 时代,计算机使用 16MB 或者 8MB 内存是非常普遍的。
-k en-us从技术上说,这个 -k 选项是不需要的,因为 QEMU 会设置虚拟键盘去匹配你的真实键盘(在我的例子中, 它是标准的 US 布局的英语键盘)。但是我还是喜欢去指定它。
-rtc base=localtime每个传统的 PC 设备有一个实时时钟 (RTC) 以便于系统可以保持跟踪时间。我发现它是设置虚拟 RTC 匹配你的本地时间的最简单的方法。
-soundhw sb16,adlib,pcspk如果你需要声音,尤其是为了玩游戏时,我更喜欢定义 QEMU 支持 SoundBlaster 16 声音硬件和 AdLib 音乐。SoundBlaster 16 和 AdLib 是在 DOS 时代非常常见的声音硬件。一些老的程序也许使用 PC 喇叭发声; QEMU 也可以仿真这个。
-device cirrus-vga要使用图像,我喜欢去仿真一个简单的 VGA 视频卡。Cirrus VGA 卡是那时比较常见的图形卡, QEMU 可以仿真它。
-display gtk对于虚拟显示,我设置 QEMU 去使用 GTK toolkit,它可以将虚拟系统放到它自己的窗口内,并且提供一个简单的菜单去控制虚拟机。
-boot order=你可以告诉 QEMU 从多个引导源来引导虚拟机。从软盘驱动器引导(在 DOS 机器中一般情况下是A: )指定order=a。 从第一个硬盘驱动器引导(一般称为 C:) 使用 order=c。 或者去从一个 CD-ROM 驱动器(在 DOS 中经常分配为 D: ) 使用 order=d。 你可以使用组合字母去指定一个特定的引导顺序, 比如 order=dc 去第一个使用 CD-ROM 驱动器,如果 CD-ROM 驱动器中没有引导介质,然后使用硬盘驱动器。

显示详细信息

第 3 步: 引导和安装 FreeDOS

现在 QEMU 已经设置好运行虚拟机,我们需要一个 DOS 系统来在那台虚拟机中安装和引导。 FreeDOS 做这个很容易。它的最新版本是 FreeDOS 1.2, 发行于 2016 年 12 月。

从 FreeDOS 网站上下载 FreeDOS 1.2 的发行版。 FreeDOS 1.2 CD-ROM “standard” 安装器 (FD12CD.iso) 可以很好地在 QEMU 上运行,因此,我推荐使用这个版本。

安装 FreeDOS 很简单。首先,告诉 QEMU 使用 CD-ROM 镜像并从其引导。 记住,第一个硬盘驱动器是 C: 驱动器,因此, CD-ROM 将以 D: 驱动器出现。

qemu-system-i386 -m 16 -k en-us -rtc base=localtime -soundhw sb16,adlib -device cirrus-vga -display gtk -hda dos.img -cdrom FD12CD.iso -boot order=d

正如下面的提示,你将在几分钟内安装完成 FreeDOS 。 Linux中如何运行DOS程序

Starting FreeDOS installation

Linux中如何运行DOS程序

Select your keyboard layout

Linux中如何运行DOS程序

Selecting which packages to install

Linux中如何运行DOS程序

Rebooting after installation

在你安装完成之后,关闭窗口退出 QEMU。

第 4 步:安装并运行你的 DOS 应用程序

一旦安装完 FreeDOS,你可以在 QEMU 中运行各种 DOS 应用程序。你可以在线上通过各种档案文件或其它网站找到老的 DOS 程序。

QEMU 提供了一个在 Linux 上访问本地文件的简单方法。比如说,想去用 QEMU 共享 dosfiles/ 文件夹。 通过使用 -drive 选项,简单地告诉 QEMU 去使用这个文件夹作为虚拟的 FAT 驱动器。 QEMU 将像一个硬盘驱动器一样访问这个文件夹。

-drive file=fat:rw:dosfiles/

现在,你可以使用合适的选项去启动 QEMU,加上一个外部的虚拟 FAT 驱动器:

qemu-system-i386 -m 16 -k en-us -rtc base=localtime -soundhw sb16,adlib -device cirrus-vga -display gtk -hda dos.img -drive file=fat:rw:dosfiles/ -boot order=c

一旦你引导进入 FreeDOS,你保存在 D: 驱动器中的任何文件将被保存到 Linux 上的 dosfiles/ 文件夹中。可以从 Linux 上很容易地直接去读取该文件;然而,必须注意的是,启动 QEMU 后,不能从 Linux 中去改变 dosfiles/ 这个文件夹。 当你启动 QEMU 时,QEMU 一次性构建一个虚拟的 FAT 表,如果你在启动 QEMU 之后,在 dosfiles/ 文件夹中增加或删除文件,仿真程序可能会很困惑。

我使用 QEMU 像这样运行一些我收藏的 DOS 程序, 比如 As-Easy-As 电子表格程序。这是一个在上世纪八九十年代非常流行的电子表格程序,它和现在的 Microsoft Excel 和 LibreOffice Calc 或和以前更昂贵的 Lotus 1-2-3 电子表格程序完成的工作是一样的。 As-Easy-As 和 Lotus 1-2-3 都保存数据为 WKS 文件,最新版本的 Microsoft Excel 不能读取它,但是,根据兼容性, LibreOffice Calc 可以支持它。 Linux中如何运行DOS程序

As-Easy-As 电子表格程序

我也喜欢在 QEMU中引导 FreeDOS 去玩一些收藏的 DOS 游戏,比如原版的 Doom。这些老的 DOS 游戏玩起来仍然非常有趣, 并且它们现在在 QEMU 上运行的非常好。

Linux中如何运行DOS程序

Doom

Linux中如何运行DOS程序

Heretic

Linux中如何运行DOS程序

Jill of the Jungle

Linux中如何运行DOS程序

Commander Keen

QEMU 和 FreeDOS 使得在 Linux 上运行老的 DOS 程序变得很容易。你一旦设置好了 QEMU 作为虚拟机仿真程序并安装了 FreeDOS,你将可以在 Linux 上运行你收藏的经典的 DOS 程序。

以上是“Linux中如何运行DOS程序”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Linux中如何运行DOS程序

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Linux中如何运行DOS程序

这篇文章主要为大家展示了“Linux中如何运行DOS程序”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux中如何运行DOS程序”这篇文章吧。传统的 DOS 操作系统支持的许多非常优秀的应用
2023-06-27

linux如何运行c程序命令

在Linux中,运行C程序的命令为:1. 编写C程序:使用任意文本编辑器创建一个以`.c`为扩展名的C源文件,比如`program.c`。在文件中编写C程序代码。2. 打开终端:打开终端应用程序,可以通过在启动器中搜索`终端`来找到。3.
2023-08-25

linux如何编译运行c程序

在Linux系统中,编译和运行C程序有以下几个步骤:1. 编写C代码:使用任意文本编辑器编写C程序代码,并将其保存为`.c`文件,例如`hello.c`。2. 打开终端:在Linux系统中,可以通过打开终端或者使用远程登录工具(如SSH)进
2023-09-22

Linux中如何定位c++程序运行异常

这篇文章将为大家详细讲解有关Linux中如何定位c++程序运行异常,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。我遇到了一些棘手的问题,因为在mips64上编译程序,经常出现程序编译不出来,或者运行不正常
2023-06-15

python如何运行及运行程序

python如何运行的1.写完的py文件,首先被翻译成字节码文件(隐藏后缀pyc),然后在用PVM(虚拟机)把字节码自动编译,之后解释到硬件。 2.如果已经形成过pyc文件,那么你的py文件没有改动,机器重新解释的时候会跳过翻译字节码
2023-01-31

Linux后台运行程序如何实现

在Linux中,可以使用以下几种方式实现后台运行程序:1. 使用&符号:可以在命令的末尾添加&符号,例如:`./program &`,程序将会在后台运行,终端仍然可以继续输入命令。2. 使用nohup命令:`nohup ./program
2023-08-17

linux如何查看程序运行状态

在Linux中,可以使用以下命令来查看程序的运行状态:1. `ps`命令:用于显示系统中当前运行的进程。- `ps -ef`:显示所有运行的进程。- `ps -aux`:显示所有包含其他用户进程的运行进程。2. `top`命令:用于实时监视
2023-08-29

linux如何搭建及运行java程序

要在Linux上搭建和运行Java程序,你需要按照以下步骤进行操作:1. 确保已安装Java Development Kit(JDK):在终端中运行以下命令检查是否已安装JDK:java -version如果显示Java版本信息,则表示已安
2023-10-19

tomcat中如何运行Java程序

在Tomcat中运行Java程序,可以通过以下步骤:将Java程序打包成war文件,war文件是一种Web应用程序的打包格式,包含了项目的所有文件和依赖。将war文件放置在Tomcat的webapps目录下,Tomcat会自动解压war文件
2023-10-25

Linux系统如何运行C语言程序

这篇文章给大家介绍Linux系统如何运行C语言程序,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在Linux系统中如何运行C语言程序?打开安装好的Linux系统(ubuntu18.04)1.安装编辑器使用语句:sudo
2023-06-28

linux如何关闭正在运行的程序

在Linux中,可以使用几种不同的方法来关闭正在运行的程序。以下是一些常见的方法:1. 使用Ctrl+C键盘快捷键:如果程序正在终端中运行,可以使用Ctrl+C组合键来发送一个中断信号,强制关闭程序。2. 使用kill命令:可以使用kill
2023-08-25

java程序如何运行

这篇文章主要介绍“java程序如何运行”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“java程序如何运行”文章能帮助大家解决问题。本教程操作环境:windows7系统、java10版,DELL G3
2023-06-30

php程序如何运行

PHP程序的运行主要有以下几种方式:1. 通过命令行运行:在命令行中输入 "php 文件名.php" 即可运行 PHP 程序。这种方式适用于执行一次性的脚本任务。2. 通过服务器运行:将 PHP 文件放置在 web 服务器的网站目录下,通过
2023-08-29

go程序如何部署到linux上运行

这篇文章将为大家详细讲解有关go程序如何部署到linux上运行,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。go 语言版本:go1.9.2开发环境:win10部署环境:ubuntu 14.04.6一、wi
2023-06-15

如何在docker中运行mariadb程序

这篇文章主要介绍如何在docker中运行mariadb程序,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.安装docker2.获取mariadb镜像docker pull mariadb首先在https://hub
2023-06-07

ubuntu如何运行c程序

本文小编为大家详细介绍“ubuntu如何运行c程序”,内容详细,步骤清晰,细节处理妥当,希望这篇“ubuntu如何运行c程序”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。ubuntu运行c程序的方法1、首先在te
2023-07-04

eclipse如何运行java程序

在Eclipse中运行Java程序可以通过以下步骤进行:1. 打开Eclipse并创建一个Java项目。可以选择“File”菜单,然后选择“New”和“Java Project”。在弹出的对话框中输入项目名称并点击“Finish”按钮。2.
2023-09-27

编程热搜

目录