25 岁的 FreeDOS:起源故事

操做系统的历史是开发人员共同造物的开源软件模型的很好例子。html

FreeDOS fish logo and command prompt on computer

6 月 29 日是 FreeDOS 25 周年的日子。无论对于哪一个开源软件项目来讲,这都是一个重要的里程碑,我为过去这 1/4 个世纪来咱们在这方面所作的工做感到自豪。我也为咱们如何构建 FreeDOS 感到自豪,由于它是开源软件模型如何工做的一个很好的例子。linux

在它的那个时代,MS-DOS 是一个功能强大的操做系统。自从个人父母用新的 IBM 机器取代了老化的 Apple II 计算机以来,我已经使用 DOS 多年了。MS-DOS 提供了一个灵活的命令行,我很是喜欢它,它能够方便地操做个人文件。多年来,我学会了如何在 C 中编写本身的实用程序,以进一步扩展其命令行功能。ios

大约在 1994 年,微软宣布其下一代的 Windows 将取消 MS-DOS。但我喜欢 DOS,即便我已经开始迁移到 Linux,我仍然会启动到 MS-DOS 来运行一些 Linux 还没有拥有的应用程序。git

我想,若是咱们想留下 DOS,咱们须要本身编写一个。FreeDOS 就是这样诞生的。github

1994 年 6 月 29 日,我向 Usenet 上的 comp.os.msdos.apps 新闻组发表了关于个人想法的一个小小公告:shell

PD-DOS 项目公告:浏览器

几个月前,我发布了有关启动公共域(PD)版本 DOS 的文章。当时对此的广泛支持很强烈,不少人都赞同:“开始编写吧!”因此,我…网络

宣布开发 PD-DOS 的首次尝试。我写了一个“清单”来描述这样的一个项目的目标和工做大纲,以及一个“任务列表”,它准确地显示了须要编码开发的内容。我会在这里发布,而后讨论。app

虽然我宣布该项目为 PD-DOS(“公共领域”的意思,缩写是为了模仿 IBM 的“PC-DOS”),但咱们很快将名称改成 Free-DOS,再后来又改成 FreeDOS。编辑器

我立刻开始开发它。首先,我分享了我编写的用于扩展 DOS 命令行功能的实用程序。它们中的许多程序都重现了 MS-DOS 功能,包括 CLSDATEDELFINDHELPMORE。有些是我从 Unix 借来的新功能,好比 TEETRCH(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 并尝试一下。

更多资源


via: opensource.com/article/19/…

做者:Jim Hall 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关文章
相关标签/搜索