25 歲的 FreeDOS:起源故事
作業系統的歷史是開發人員共同造物的開源軟體模型的很好例子。
6 月 29 日是 FreeDOS 25 週年的日子。不管對於哪個開源軟體專案來說,這都是一個重要的里程碑,我為過去這 ¼ 個世紀來我們在這方面所做的工作感到自豪。我也為我們如何構建 FreeDOS 感到自豪,因為它是開源軟體模型如何工作的一個很好的例子。
在它的那個時代,MS-DOS 是一個功能強大的作業系統。自從我的父母用新的 IBM 機器取代了老化的 Apple II 計算機以來,我已經使用 DOS 多年了。MS-DOS 提供了一個靈活的命令列,我非常喜歡它,它可以方便地操作我的檔案。多年來,我學會了如何在 C 中編寫自己的實用程式,以進一步擴充套件其命令列功能。
大約在 1994 年,微軟宣佈其下一代的 Windows 將取消 MS-DOS。但我喜歡 DOS,即使我已經開始遷移到 Linux,我仍然會啟動到 MS-DOS 來執行一些 Linux 尚未擁有的應用程式。
我想,如果我們想留下 DOS,我們需要自己編寫一個。FreeDOS 就是這樣誕生的。
1994 年 6 月 29 日,我向 Usenet 上的 comp.os.msdos.apps 新聞組發表了關於我的想法的一個小小公告:
PD-DOS 專案公告:
幾個月前,我釋出了有關啟動公共域(PD)版本 DOS 的文章。當時對此的普遍支援很強烈,很多人都贊同:“開始編寫吧!”所以,我…
宣佈開發 PD-DOS 的首次嘗試。我寫了一個“清單”來描述這樣的一個專案的目標和工作大綱,以及一個“任務列表”,它準確地顯示了需要編碼開發的內容。我會在這裡釋出,然後討論。
雖然我宣佈該專案為 PD-DOS(“公共領域”的意思,縮寫是為了模仿 IBM 的“PC-DOS”),但我們很快將名稱改為 Free-DOS,再後來又改為 FreeDOS。
我馬上開始開發它。首先,我分享了我編寫的用於擴充套件 DOS 命令列功能的實用程式。它們中的許多程式都重現了 MS-DOS 功能,包括 CLS
、DATE
、DEL
、FIND
、HELP
和 MORE
。有些是我從 Unix 借來的新功能,比如 TEE
和 TRCH
(Unix 的 tr
的簡單實現)。我貢獻了十幾個 FreeDOS 工具。
透過分享我的實用程式,我給了其他開發人員一個起點。透過在 GNU 通用公共許可證(GNU GPL)下共享我的原始碼,我隱含地允許其他人新增新功能並修復錯誤。
看到 FreeDOS 開始成型的其他開發人員聯絡了我並希望提供幫助。Tim Norman 是第一個人,Tim 自願編寫命令列 shell(COMMAND.COM
,後來命名為 FreeCOM
)。其他人貢獻了複製或擴充套件了 DOS 命令列的實用程式。
我們儘快釋出了第一個 alpha 版本。在宣佈了 FreeDOS 後不到三個月,我們就有了一個集合了我們所編寫的功能的 Alpha 1 發行版。當我們釋出 Alpha 5 時,FreeDOS 已經擁有了 60 多個實用程式。FreeDOS 包含了 MS-DOS 中從未想過的功能,包括透過 PPP 撥號驅動程式實現的網際網路連線,以及使用主 VGA 監視器和輔助單色監視器的雙顯示器支援。
新的開發人員加入了該專案,我們很歡迎他們。到 1998 年 10 月,感謝 Pat Villani,FreeDOS 有了一個可以工作的核心。FreeDOS 還提供了許多新功能,不僅帶來了與 MS-DOS 的同等性,而且超越了 MS-DOS,包括 ANSI 支援和類似 Unix lpr 的列印後臺處理程式。
你可能熟悉其他的里程碑版本。我們繼續向 1.0 版本邁進,終於在 2006 年 9 月釋出了 FreeDOS 1.0,在 2012 年 1 月釋出了 FreeDOS 1.1,在 2016 年 12 月釋出了 FreeDOS 1.2。而 MS-DOS 很久以前就停止了開發,因此我們在 1.0 釋出之後不需要經常更新了。
如今,FreeDOS 已經是一個非常現代的 DOS。我們已經超越了“經典 DOS”,現在 FreeDOS 擁有許多開發工具,如編譯器、彙編器和偵錯程式。除了普通的 DOS Edit 編輯器之外,我們還有許多編輯器,包括 Fed、Pico、TDE 以及 Emacs 和 Vi 的一個版本。FreeDOS 支援網路,甚至還提供簡單的圖形 Web 瀏覽器(Dillo)。我們有大量的新工具,包括許多可以讓 Linux 使用者感到熟悉的實用工具。
正因為開發人員的共同創造,FreeDOS 才走到如今。本著開源軟體的精神,我們透過修復錯誤和新增新功能為彼此的工作做出了貢獻。我們將使用者視為共同開發者;我們總能找到方法來吸引貢獻者,無論是編寫程式碼還是編寫文件。我們基於優點達成共識。如果這聽起來很熟悉,那是因為這些是開源軟體的核心價值:透明度、協作、儘早釋出、經常釋出、精英管理和社群。這就是開源方式!
我鼓勵你下載 FreeDOS 1.2 並嘗試一下。
更多資源
- FreeDOS 官方網站
- FreeDOS wiki
- 下載 FreeDOS 1.2
- FreeDOS 的免費電子書
- FreeDOS 的簡單介紹
- FreeDOS 起源與革命
- 4 個 FreeDOS 的有趣事實
- 如何使用 FreeDOS 升級你的系統 BIOS
- 慶祝 FreeDOS 24 歲生日:有用的命令速查表
- 如何在 Linux 中執行 DOS 程式
- 讓 DOS 活到現在並透過開源來起步
- 在樹莓派上執行 DOS
via: https://opensource.com/article/19/6/freedos-anniversary
作者:Jim Hall 選題:lujun9972 譯者:wxy 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出
相關文章
- 《GTA》的起源故事
- 《黑山:起源》的開發故事
- 反派為何成為反派? 反派角色起源故事的設計方法
- 我還小,才20歲,等到我25歲一定…
- 《女神異聞錄》是怎麼活到25歲的?
- 25 歲,畢業寫前端的這三年前端
- 25歲的《仙劍奇俠傳1》,宿命悲喜
- 25歲的程式設計師,如何做才能在35歲時不焦慮程式設計師
- 第三方支付(一):概述、起源 | PayPal、支付寶誕生的故事
- 宇宙最強的IDE - Visual Studio 25歲生日快樂IDE
- 25 歲,畢業寫程式碼的這三年
- 洛天依9歲了,但Vsinger的故事還在繼續
- 25週歲的《輻射》,為什麼依舊引人入勝?
- 如何在 VirtualBox 上安裝並使用 FreeDOS?
- 2.2.1 Python的起源Python
- 閉包的起源
- 北侖愛情故事陳女士照片 北侖愛情故事50歲女主角抖音資料
- REST API 已經 25 歲了:它是如何形成的,將來可能會怎樣?RESTAPI
- 【程式人生】25歲,一位女程式設計師的幸運幾年程式設計師
- Cookie 起源Cookie
- SCRUM起源Scrum
- 25歲之後還能學Python嘛? 應該怎麼學?Python
- 《王者榮耀》五週歲主題歌“與夢同行”背後的設計故事
- 60多歲老人回到25年前?僅靠這種療法!
- 01 – Python 起源Python
- 01 - Python 起源Python
- DAO的起源與發展前景
- 信用卡的歷史起源
- 【Hello CSS】序章-起源CSS
- 黑客圖示起源黑客
- [譯] HTTP/3: 起源HTTP
- Service Mesh模式起源模式
- 32歲入門的70後老程式設計師的傳奇故事,他只有初中文化程式設計師
- 大專學歷,快 30 歲,裁員 2 個月,拿到 25k+ 的 Offer,優秀!!.md
- 恭喜你!在25歲前看到了這篇最最靠譜的深度學習入門指南深度學習
- 寶箱怪的起源與設計
- 工作996,生病ICU!996的起源分析996
- 58同城招聘研究院:25歲及以下程式設計師佔比達62.84%程式設計師