Microsoft 以開放原始碼形式公開「迄今發現最早的 DOS 原始碼」 (★ 166 分)
Microsoft 再度開放早期 DOS(Disk Operating System,磁碟作業系統)原始碼,這次釋出的內容被稱為「迄今發現最早的 DOS 原始碼」,時間點甚至早於 MS-DOS 品牌出現。內容包含 86-DOS 1.00 核心、多個 PC-DOS 1.00 核心開發快照,以及 CHKDSK(磁碟檢查工具)等早期工具程式,對研究個人電腦作業系統起源具有重要歷史價值。
文章回顧了 MS-DOS 的來龍去脈:程式設計師 Tim Paterson 最初為 Seattle Computer Products 的 Intel 8086 電腦套件開發 86-DOS,早期也稱為 QDOS(quick and dirty operating system)。Microsoft 當時需要替仍在開發中的 IBM PC 5150 提供作業系統,因此先授權 86-DOS,並聘請 Paterson 持續開發,之後買下其權利。Microsoft 將此系統授權給 IBM,成為 PC-DOS,同時保留向其他廠商銷售的權利;隨著 1980 至 1990 年代 IBM PC 相容機大量普及,Microsoft 自行銷售的 MS-DOS 成為多數人實際接觸到的版本。
這批原始碼之所以特別,是因為倖存材料主要來自 Paterson 保留的紙本列印稿,而不是可直接讀取的數位檔案。由 Yufeng Gao、Rich Cini 等歷史研究者與保存者組成的 DOS Disassembly Group,花費大量心力掃描並人工轉錄這些老舊列印稿;由於紙張年代久遠、列印品質不佳,現代 OCR(Optical Character Recognition,光學文字辨識)工具也難以準確辨識。Microsoft 近年陸續開放多個早期軟體的原始碼,包括 MS-DOS 1.25、2.0、4.0,以及 Zork、Microsoft 3D Movie Maker 等,這次釋出則把時間線往更早的 DOS 起點推進。
Hacker News 討論多半把這次釋出視為電腦史保存事件,而非具備立即實用價值的工程資源。有人認為這類原始碼像歷史文件,可用來理解當年在硬體限制下的設計取捨;也有人感嘆早期程式必須面對機器本身與記憶體限制,促成更精簡、直接的工程思維,並對現代層層函式庫、虛擬化與高階抽象感到不滿。也有留言提到,學習低階概念有助於建立完整的電腦心智模型,這在今日從 JavaScript、Python,甚至 AI 輔助編程入門的世代中不一定容易形成。
討論中也出現一些修正與延伸觀點:有人指出「從未以數位形式儲存」的說法不精確,因為當年能列印原始碼,必然曾經存在於磁碟或磁帶等媒介;更準確地說,可能是數位副本已失傳,只剩紙本存世。另有讀者關心點陣字型與老舊程式原始碼的 OCR 辨識困難,認為現代機器學習模型常偏向自然語言,對程式碼格式不一定友善。也有人期待 Microsoft 未來能開放更早期 Windows,甚至 Windows 2000 原始碼;但也有批評者認為這類開放「來得太晚」。整體而言,社群普遍肯定其歷史保存意義,同時把它放在 Microsoft 早年以開發工具與 BASIC 程式語言起家的脈絡中看待。
👥 34 則討論、評論 💬
https://news.ycombinator.com/item?id=48253386