折腾!在树莓派上运行DOS
不同的 CPU 架構(gòu)意味著在樹莓派上運(yùn)行 DOS 并非唾手可得,但其實(shí)也沒多麻煩。
FreeDOS 對(duì)大家來說也許并不陌生。它是一個(gè)完整、免費(fèi)并且對(duì) DOS 兼容良好的操作系統(tǒng),它可以運(yùn)行一些比較老舊的 DOS 游戲或者商用軟件,也可以開發(fā)嵌入式的應(yīng)用。只要在 MS-DOS 上能夠運(yùn)行的程序,在 FreeDOS 上都可以運(yùn)行。
作為 FreeDOS 的發(fā)起者和項(xiàng)目協(xié)調(diào)人員,很多用戶會(huì)把我作為內(nèi)行人士進(jìn)行發(fā)問。而我最常被問到的問題是:“FreeDOS 可以在樹莓派上運(yùn)行嗎?”
這個(gè)問題并不令人意外。畢竟?Linux?在樹莓派上能夠很好地運(yùn)行,而 FreeDOS 和 Linux 相比是一個(gè)更古老、占用資源更少的操作系統(tǒng),那 FreeDOS 為啥不能樹莓派上運(yùn)行呢?
簡(jiǎn)單來說。由于 CPU 架構(gòu)的原因,FreeDOS 并不能在樹莓派中獨(dú)立運(yùn)行。和其它 DOS 類的系統(tǒng)一樣,FreeDOS 需要英特爾 x86 架構(gòu) CPU 以及 BIOS 來提供基礎(chǔ)的運(yùn)行時(shí)服務(wù)。而樹莓派運(yùn)行在 ARM 架構(gòu)的 CPU 上,與英特爾 CPU 二進(jìn)制不兼容,也沒有 BIOS。因此樹莓派在硬件層面就不支持 FreeDOS。
不過通過 PC 模擬器還是能在樹莓派上運(yùn)行 FreeDOS 的,雖然這樣也許稍有不足,但也不失為一個(gè)能在樹莓派上運(yùn)行 FreeDOS 的方法。
DOSBox 怎么樣?有人可能會(huì)問:“為什么不用 DOSBox 呢?” DOSBox 是一個(gè)開源的跨平臺(tái) x86 模擬器,在 Linux 上也能使用,它能夠?yàn)閼?yīng)用軟件尤其是游戲軟件提供了一個(gè)類 DOS 的運(yùn)行環(huán)境,所以如果你只是想玩 DOS 游戲的話,DOSBox 是一個(gè)不錯(cuò)的選擇。但在大眾眼中,DOSBox 是專為 DOS 游戲而設(shè)的,而在運(yùn)行一些別的 DOS 應(yīng)用軟件方面,DOSBox 只是表現(xiàn)平平。
對(duì)多數(shù)人來說,這只是個(gè)人偏好的問題,我喜歡用 FreeDOS 來運(yùn)行 DOS 游戲和其它程序,完整的 DOS 系統(tǒng)和 DOSBox 相比能讓我體驗(yàn)到更好的靈活性和操控性。我只用 DOSBox 來玩游戲,在其它方面還是選擇完整的 FreeDOS。
在樹莓派上安裝 FreeDOSQEMU(Quick EMUlator)是一款能在 Linux 系統(tǒng)上運(yùn)行 DOS 系統(tǒng)的開源的虛擬機(jī)軟件。很多流行的 Linux 系統(tǒng)都自帶 QEMU。QEMU 在我的樹莓派上的 Raspbian 系統(tǒng)中也同樣能夠運(yùn)行,下文就有一些我在樹莓派 Raspbian GNU/Linux 9 (Stretch) 系統(tǒng)中使用 QEMU 的截圖。
去年我在寫了一篇關(guān)于如何在 Linux 系統(tǒng)中運(yùn)行 DOS 程序的文章的時(shí)候就用到了 QEMU,在樹莓派上使用 QEMU 來安裝運(yùn)行 FreeDOS 的步驟基本上和在別的基于 GNOME 的系統(tǒng)上沒有什么太大的區(qū)別。
在 QEMU 中你需要通過添加各種組件來搭建虛擬機(jī)。先指定一個(gè)用來安裝運(yùn)行 DOS 的虛擬磁盤鏡像,通過 qemu-img 命令來創(chuàng)建一個(gè)虛擬磁盤鏡像,對(duì)于 FreeDOS 來說不需要太大的空間,所以我只創(chuàng)建了一個(gè) 200MB 的虛擬磁盤:
qemu-img create freedos.img 200M和 VMware 或者 VirtualBox 這些 PC 模擬器不同,使用 QEMU 需要通過添加各種組件來搭建虛擬機(jī),盡管有點(diǎn)麻煩,但是并不困難。我使用了以下這些參數(shù)來在樹莓派上使用 QEMU 安裝 FreeDOS 系統(tǒng):
qemu-system-i386 -m 16 -k en-us -rtc base=localtime -soundhw sb16,adlib -device cirrus-vga -hda freedos.img -cdrom FD12CD.iso -boot order=d你可以在我其它的文章中找到這些命令的完整介紹。簡(jiǎn)單來說,上面這條命令指定了一個(gè)英特爾 i386 兼容虛擬機(jī),并且分配了 16MB 內(nèi)存、一個(gè)英文輸入鍵盤、一個(gè)基于系統(tǒng)時(shí)間的實(shí)時(shí)時(shí)鐘、一個(gè)聲卡、一個(gè)音樂卡以及一個(gè) VGA 卡。文件 freedos.img 指定為第一個(gè)硬盤(C:),FD12CD.iso 鏡像作為 CD-ROM (D:)驅(qū)動(dòng)。QEMU 設(shè)定為從 D: 的 CD-ROM 啟動(dòng)。
你只需要按照提示就可以輕松安裝好 FreeDOS 1.2 了。但是由于 microSD 卡在面對(duì)大量的 I/O 時(shí)速度比較慢,所以安裝操作系統(tǒng)需要花費(fèi)很長(zhǎng)時(shí)間。
在樹莓派上運(yùn)行 FreeDOS你的運(yùn)行情況取決于使用哪一種 microSD 卡。我用的是 SanDisk Ultra 64GB microSDXC UHS-I U1A1 ,其中 U1 這種型號(hào)專用于支持 1080p 的視頻錄制(例如 GoPro),它的最低串行寫速度能夠達(dá)到 10MB/s。相比之下,V60 型號(hào)專用于 4K 視頻錄制,最低連續(xù)寫入速度能達(dá)到 60MB/s。如果你的樹莓派使用的是 V60 的 microSD 卡甚至是 V30(也能達(dá)到 30MB/s),你就能明顯看到它的 I/O 性能會(huì)比我的好。
FreeDOS 安裝好之后,你可以直接從 C: 進(jìn)行啟動(dòng)。只需要按照下面的命令用 -boot order=c 來指定 QEMU 的啟動(dòng)順序即可:
?qemu-system-i386 -m 16 -k en-us -rtc base=localtime -soundhw sb16,adlib -device cirrus-vga -hda freedos.img -cdrom FD12CD.iso -boot order=c?只要樹莓派的 QEMU 上安裝了 FreeDOS,就不會(huì)出現(xiàn)明顯的性能問題。例如游戲通常在每一關(guān)開始的時(shí)候會(huì)加載地圖、怪物、聲音等一系列的數(shù)據(jù),盡管這些內(nèi)容需要加載一段時(shí)間,但在正常玩的時(shí)候并沒有出現(xiàn)性能不足的現(xiàn)象。
FreeDOS 1.2 自帶了很多游戲以及其它應(yīng)用軟件,可以使用 FDIMPLES 包管理程序來安裝它們。FreeDOS 1.2 里面我最喜歡的是一款叫 WING 的太空射擊游戲,讓人想起經(jīng)典的街機(jī)游戲 Galaga(WING 就是 Wing Is Not Galaga 的遞歸縮寫詞)。
As-Easy-As 是我最喜歡的一個(gè) DOS 應(yīng)用程序,作為 20 世紀(jì)八九十年代流行的電子表格程序,它和當(dāng)時(shí)的 Lotus 1-2-3 以及現(xiàn)在的 Microsoft Excel、LibreOffice Calc 一樣具有強(qiáng)大的威力。As-Easy-As 和 Lotus 1-2-3 都將數(shù)據(jù)保存為 WKS 文件,現(xiàn)在新版本的 Microsoft Excel 已經(jīng)無法讀取這種文件了,而 LibreOffice Calc 視兼容性而定有可能支持。鑒于 As-Easy-As 的初始版本是一個(gè)共享軟件,TRIUS 仍然為 As-Easy-As 5.7 免費(fèi)提供激活碼。
我也非常喜歡 GNU Emacs 編輯器,FreeDOS 也自帶了一個(gè)叫 Freemacs 的類 Emacs 的文本編輯器。它比 FreeDOS 默認(rèn)的 FreeDOS Edit 編輯器更強(qiáng)大,也能帶來 GNU Emacs 的體驗(yàn)。如果你也需要,可以在 FreeDOS 1.2 中通過FDIMPLES包管理程序來安裝。
是的,你或許真的可以在樹莓派上運(yùn)行 DOS即使樹莓派在硬件上不支持 DOS,但是在模擬器的幫助下,DOS 還是能夠在樹莓派上運(yùn)行。得益于 QEMU PC 模擬器,一些經(jīng)典的 DOS 游戲和 DOS 應(yīng)用程序能夠運(yùn)行在樹莓派上。在執(zhí)行磁盤 I/O ,尤其是大量密集操作(例如寫入大量數(shù)據(jù))的時(shí)候,性能可能會(huì)受到輕微的影響。當(dāng)你使用 QEMU 并且在虛擬機(jī)里安裝好 FreeDOS 之后,你就可以盡情享受經(jīng)典的 DOS 程序了。
via: https://opensource.com/article/18/3/can-you-run-dos-raspberry-pi
作者:Jim Hall 譯者:HankChow 校對(duì):wxy
本文由 LCTT 原創(chuàng)編譯,Linux中國 榮譽(yù)推出
原文來自:https://www.linuxprobe.com/raspberry-pi-freedos.html
總結(jié)
以上是生活随笔為你收集整理的折腾!在树莓派上运行DOS的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 图像处理之-位图
- 下一篇: android 8.1 开机壁纸下半部分