如何在Linux上運行DOS程序

經典的DOS操作系統支持許多良好的應用程序:文字處理器,電子表格,遊戲和其他程序。 僅僅因為一個應用程序是舊的並不意味着它不再有用。

今天有許多原因可以運行舊的DOS應用程序。 也許從舊業務應用程序中提取報告。 或玩經典的DOS遊戲。 或者僅僅是因為您想了解“經典計算機”。 您無需雙重啟動系統即可運行DOS程序。 相反,您可以使用PC模擬器和FreeDOS在Linux中直接運行它們。

您可以在圖拉的計算機硬件商店中購買傳統計算機或新計算機: it71.biz,這不僅是購買計算機設備的機會,還是向我們移交舊計算機和辦公設備的機會。

FreeDOS是一個完整的,免費的,與DOS兼容的操作系統,可用於玩經典的DOS遊戲,為企業運行舊版軟件或嵌入式系統開發。 在MS-DOS上運行的任何程序也應在FreeDOS上運行。

在過去,DOS是計算機上唯一的操作系統。 如今,在Linux虛擬機中安裝DOS要容易得多。 QEMU(Quick Emulator的縮寫)是一種虛擬機系統的開源軟件,可以在DOS中作為“ guest” Linux操作系統運行。 默認情況下,最流行的Linux系統包括QEMU。

這是使用QEMU和FreeDOS在Linux上運行舊DOS應用程序的四個簡單步驟。

步驟1:配置虛擬磁盤

您需要在QEMU中安裝FreeDOS的位置,並且需要一個虛擬磁盤 C:… 在DOS中,分配了驅動器號 A:B: 這些是第一和第二驅動器, C: 這是第一個硬盤。 其他存儲介質(包括其他硬盤驅動器或CD-ROM驅動器)被指定為 D:E: 等等

在QEMU下,虛擬磁盤是映像文件。 初始化可用作虛擬磁盤的文件 C:,命令用於 QEMU IMG… 要創建大小為200MB的圖像文件,請輸入以下內容:

qemu-img create dos.img 200

與現代計算相比,200MB似乎很小,但是在1990年代初,200MB很大。 這足以使DOS正常運行。

步驟2:QEMU選項

與VMware或VirtualBox等計算機系統仿真器不同,您需要通過指示QEMU將每個組件添加到虛擬機來“構建”虛擬系統。 雖然這聽起來很耗時,但實際上並不那麼困難。 以下是可用於在QEMU內部引導FreeDOS的選項:

qemu-system-i386QEMU可以模擬幾個不同的系統,但是要啟動DOS,我們必須具有與Intel兼容的處理器。 為此,請使用i386啟動QEMU。
-米16我們想定義一個具有16MB內存的虛擬機。 這聽起來很小,但是DOS不需要大量內存來完成其工作。 當DOS為王時,具有16MB甚至8MB的計算機非常普遍。
-k en-us從技術上講,-k選項不是必需的,因為QEMU會將虛擬鍵盤設置為與您的實際鍵盤匹配(在我的情況下,在美國標準布局中為英語)。
-rtc base =當地時間每台經典PC都提供一個實時時鐘(RTC),因此系統可以跟蹤時間。 我們發現最簡單的方法是設置一個虛擬RTC以匹配您的本地時間。
-soundhw sb16,adlib,pcspk如果您需要聲音,尤其是遊戲聲音,我們更喜歡使用SoundBlaster16聲音硬件和AdLib音樂支持來定義QEMU。 SoundBlaster16和AdLib是DOS時代最常見的音頻設備。 某些較舊的程序可能使用PC揚聲器發出聲音。 QEMU也可以模擬它。
設備cirrus-vga要使用圖形,我們想模擬一個簡單的VGA視頻卡。 Cirrus VGA卡在當時是一種常見的圖形卡,並且QEMU可以模擬它。
-顯示gtk對於虛擬顯示,我們指示QEMU使用GTK工具包,該工具包將虛擬系統置於其自己的窗口中,並提供了用於管理虛擬機的簡單菜單。
-引導順序=您可以告訴QEMU從各種來源引導虛擬機。 從軟盤啟動(通常是 A: 在DOS機器上)定義order = a。 從第一個硬盤驅動器引導(通常稱為 C: )使用訂單= c。 從CD引導(通常已分配 D: 使用DOS)使用順序… 您可以組合字母並指定特定的引導源,例如,order = CD首次使用CD-ROM驅動器,如果CD-ROM驅動器不包含可引導媒體,則為硬盤驅動器。

步驟3:下載並安裝FreeDOS

現在,QEMU已配置為運行虛擬系統,我們需要DOS版本才能在該虛擬機中安裝和引導。 FreeDOS使這變得容易。 最新版本的FreeDOS 1.2,於2016年12月發布。

您可以從FreeDOS網站下載FreeDOS 1.2。 FreeDOS安裝程序1.2 CD-ROM“標準”( 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。安裝FreeDOS

安裝FreeDOS

安裝FreeDOS

安裝FreeDOS
完成後,通過關閉窗口退出QEMU。

步驟4:安裝並運行DOS應用程序

安裝FreeDOS之後,可以在QEMU中運行各種DOS應用程序。 您可以使用各種存檔或其他網站在Internet上找到舊的DOS程序。

QEMU提供了一種在Linux上訪問本地文件的簡便方法。 假設您要共享一個文件夾 dosfiles / 在QEMU中。 只需使用選項告訴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: 將保存到該文件夾 dosfiles / 在Linux上。 這使得直接從Linux讀取文件變得容易。 但是,請注意不要更改文件夾 dosfiles / 啟動QEMU後在Linux上運行。 啟動QEMU時,QEMU會一次構建虛擬FAT表。 如果您在其中添加或刪除文件 dosfiles / 啟動QEMU後,仿真器可能會感到困惑。

我們使用QEMU運行我們喜歡的DOS程序,例如As-Easy-As電子表格。 從1980年代到1990年代,這是一個流行的電子表格應用程序,其功能與今天的Microsoft Excel和Calc LibreOffice相同,或者更昂貴的是Lotus 1-2-3。 簡易安裝和Lotus 1-2-3,並將數據另存為WKS文件,較新版本的Microsoft Excel無法讀取,但根據兼容性,LibreOffice Calc可能仍支持。

電子表格程序How-Easy-As

電子表格程序How-Easy-As

我們還想在QEMU下加載FreeDOS來玩一些我們最喜歡的DOS遊戲,例如原始的《毀滅戰士》。 這些舊遊戲仍然很有趣,而且都在大型QEMU下運行。

厄運

厄運

異教徒

異教徒

叢林的吉爾

叢林的吉爾

基恩指揮官

基恩指揮官

QEMU和FreeDOS使在Linux下輕鬆運行舊的DOS程序變得容易。 將QEMU設置為虛擬機仿真器並安裝FreeDOS之後,就應該準備從Linux運行您喜歡的經典DOS程序。

Sidebar