FreeBSD 中文社区 2025 第二季度问卷调查
FreeBSD 中文社区(CFC)
VitePress 镜像站QQ 群 787969044视频教程Ⅰ视频教程Ⅱ
  • FreeBSD 从入门到追忆
  • 中文期刊
  • 状态报告
  • 发行说明
  • 手册
  • 网络文章集锦
  • 笔记本支持报告
  • Port 开发者手册
  • 架构手册
  • 开发者手册
  • 中文 man 手册
  • 文章
  • 书籍
  • FreeBSD 中文期刊
  • 编辑日志
  • 2025-123 下游项目
    • FreeBSD 发布工程:新主管上任
    • GhostBSD:从易用到挣扎与重生
    • BSD Now 与将来
    • 字符设备驱动教程(第三部分)
    • 学会走路——连接 GPIO 系统
    • FreeBSD 中对 SYN 段的处理
    • FreeBSD 2024 年秋季峰会
  • 2024-1112 虚拟化
    • 字符设备驱动程序教程(第二部分)
    • 面向 Linux 和 Windows 用户的 bhyve
    • Xen 与 FreeBSD
    • Wifibox:一种嵌入式虚拟化无线路由器
    • 嵌入式 FreeBSD:Fabric——起步阶段
    • DGP:一种新的数据包控制方法
    • 会议报告:我在都柏林的 EuroBSDCon 体验
  • 2024-0910 内核开发
    • 字符设备驱动程序教程
    • VPP 移植到了 FreeBSD:基础用法
    • 利用 Kyua 的 Jail 功能提升 FreeBSD 测试套件的并行效率
    • FreeBSD 上的 Valgrind
    • 嵌入式 FreeBSD:探索 bhyve
    • TCP/IP 历险记:FreeBSD TCP 协议栈中的 Pacing
    • 实用软件:实现无纸化(Paperless)
  • 2024-0708 存储与文件系统
    • FreeBSD 中的 NVMe-oF
    • FreeBSD iSCSI 入门
    • 使用 ZFS 原生加密保护数据
    • 嵌入式 FreeBSD:打造自己的镜像
    • TCP LRO 简介
    • 基于 Samba 的时间机器备份
  • 2024-0506 配置管理对决
    • 基本系统中的 mfsBSD
    • rdist
    • Hashicorp Vault
    • 在 GitHub 上向 FreeBSD 提交 PR
    • 悼念 Mike Karels
    • 2024 年 5-6 月来信
    • 嵌入式 FreeBSD 面包板
    • TCP/IP 历险记:TCP BBLog
    • 实用软件:开发定制 Ansible 模块
  • 2024-0304 开发工作流与集成
    • FreeBSD 内核开发工作流程
    • FreeBSD 与 KDE 持续集成(CI)
    • 更现代的内核调试工具
    • 从零开始的 ZFS 镜像及 makefs -t zfs
    • 提升 Git 使用体验
  • 2024-0102 网络(十周年)
    • FreeBSD 中的 RACK 栈和替代 TCP 栈
    • FreeBSD 14 中有关 TCP 的更新
    • if_ovpn 还是 OpenVPN
    • SR-IOV 已成为 FreeBSD 的重要功能
    • FreeBSD 接口 API(IfAPI)
    • BATMAN:更优的可移动热点网络方式
    • 配置自己的 VPN——基于 FreeBSD、Wireguard、IPv6 和广告拦截
    • 实用软件:使用 Zabbix 监控主机
  • 2023-1112 FreeBSD 14.0
    • LinuxBoot:从 Linux 启动 FreeBSD
    • FreeBSD 容器镜像
    • 现在用 Webhook 触发我
    • 新的 Ports 提交者:oel Bodenmann (jbo@freebsd.org)
  • 2023-0910 Port 与软件包
    • 回忆录:与 Warner Losh(@imp)的访谈
    • 在你自己的仓库中定制 Poudriere 源
    • Wazuh 和 MITRE Caldera 在 FreeBSD Jail 中的使用
    • PEP 517
    • CCCamp 2023 旅行报告
  • 2023-0708 容器与云
    • 在 Firecracker 上的 FreeBSD
    • 使用 pot 和 nomad 管理 Jail
    • 会议报告:C 与 BSD 正如拉丁语与我们——一位神学家的旅程
    • 抒怀之旅:与 Doug Rabson 的访谈
    • 基于 Jail 的广告拦截教程
    • 我们收到的来信
  • 2023-0506 FreeBSD 三十周年纪念特刊
    • CheriBSD 近十多年的历程
    • AArch64:成为 FreeBSD 新的一级架构
    • 岁月如梭:我个人的时间线
    • 安装 FreeBSD 1.0:回顾 30 年前
    • ZFS 是如何进入 FreeBSD 的呢?
    • 我不是来自约克郡的,我保证!
    • 回忆录:采访 David Greenman Lawrence
    • FreeBSD 和早期的 Unix 社区
    • 早期的 FreeBSD 移植
    • FreeBSD 30 周年:成功的秘诀
    • FreeBSD 在日本:回忆之旅与今日之实
  • 2023-0304 嵌入式
    • CheriBSD port 和软件包
    • 让我们来试试 ChatGPT
    • GPU 直通
  • 2023-0102 构建 FreEBSD Web 服务器
    • ZFS 的原子 I/O 与 PostgreSQL
    • 虚拟实验室——BSD 编程研讨会
    • ZFS 简介
    • 会议报告:落基山庆祝女性计算机科学家
    • 进行中的工作/征求反馈:数据包批处理
    • 基金会与 FreeBSD 桌面
  • 2022-1112 可观测性和衡量标准
    • 在 FreeBSD 的 DDB 内核调试器中编写自定义命令
    • DTrace:老式跟踪系统的新扩展
    • 基于证书的 Icinga 监控
    • 活动监控脚本(activitymonitor.sh)
    • 实用 IPv6(第四部分)
    • EuroBSDCon 会议报道
    • 实用 Port:Prometheus 的安装与配置
    • 书评:《用火解决问题:管理老化的计算机系统(并为现代系统保驾护航)》Kill It with Fire: Manage Aging Computer Systems (and Future Proof Modern Ones)
  • 2022-0910 安全性
    • CARP 简介
    • 重构内核加密服务框架
    • PAM 小窍门
    • SSH 小窍门
    • 实用 IPv6(第三部分)
    • 书评:Understanding Software Dynamics(深入理解软件性能——一种动态视角)—— Richard L. Sites 著
    • 访谈:保障 FreeBSD 安全性
    • MCH 2022 会议报告
  • 2022-0708 科研、系统与 FreeBSD
    • 在 FreeBSD 上构建 Loom 框架
    • 教授本科生 Unix 课程
    • FreeBSD 入门研讨会
    • 实用 IPv6(第二部分)
    • 在 2022 年及以后推广 FreeBSD
    • 进行中的工作/征求反馈:Socket 缓冲区
    • FreeBSD 开发者峰会报告
    • 支持 Electromagnetic Field 2022
  • 2022-0506 灾难恢复
    • 使用 FreeBSD 构建高弹性的私有云
    • LLDB 14 —— FreeBSD 新调试器
    • 实用 IPv6(第一部分)
    • 利用 netdump(4) 进行事后内核调试
    • 进行中的工作/征求反馈:FreeBSD 启动性能
    • 实用 Port:在 OpenZFS 上设置 NFSv4 文件服务器
  • 2022-0304 ARM64 是一级架构
    • FreeBSD/ARM64 上的数据科学
    • Pinebook Pro 上的 FreeBSD
    • 嵌入式控制器的 ACPI 支持
    • 进行中的工作/征求反馈:Lumina 桌面征集开发人员
    • 实用 Port:如何设置 Apple 时间机器
  • 2022-0102 软件与系统管理
    • 为 FreeBSD Ports 做贡献
    • 使用 Git 贡献到 FreeBSD Ports
    • CBSD:第一部分——生产环境
    • 将 OpenBSD 的 pf syncookie 代码移植到 FreeBSD 的 pf
    • 进行中的工作/征求反馈:mkjail
    • 《编程智慧:编程鬼才的经验和思考》(The Kollected Kode Vicious)书评
    • 会议报告:EuroBSDCon 2021 我的第一次 EuroBSDCon:一位新组织者的视角
  • 2021-1112 存储
    • 开放通道 SSD
    • 构建 FreeBSD 社区
    • 与完美操作系统同行 27 年
    • 进行中的工作/征求反馈:OccamBSD
    • 通过 iSCSI 导入 ZFS ZIL——不要在工作中这样做——就像我做的那样
  • 2021-0910 FreeBSD 开发
    • FreeBSD 代码审查与 git-arc
    • 如何为 FreeBSD 实现简单的 USB 驱动程序
    • 内核开发技巧
    • 程序员编程杂谈
  • 2021-0708 桌面/无线网
    • 通往 FreeBSD 桌面的直线路径
    • FreeBSD 13 中的人机接口设备 (HID) 支持
    • Panfrost 驱动程序
    • 用 Git 更新 FreeBSD
    • FreeBSD 的新面孔
    • 想给你的桌面加点佐料?
  • 2021-0506 安全
    • 七种提升新安装 FreeBSD 安全性的方法
    • copyinout 框架
    • 使用 TLS 改善 NFS 安全性
    • Capsicum 案例研究:Got
    • 对 Jail 进行安全扫描
  • 2021-0304 FreeBSD 13.0
    • 展望未来
    • FreeBSD 13.0 工具链
    • FreeBSD 13.0 中有新加载器吗?
    • TCP Cubic 准备起飞
    • OpenZFS 中的 Zstandard 压缩
    • 会议报告:FreeBSD 供应商峰会
    • Git 不够吗?
  • 2021-0102 案例研究
    • Tarsnap 的 FreeBSD 集群
    • BALLY WULFF
    • Netflix Open Connect
    • FreeBSD 的新面孔
    • 写作学者的 FreeBSD
    • 在世界之巅
  • 2020-1112 工作流/持续集成(CI)
    • FreeBSD Git 快速入门
    • 使用 syzkaller 进行内核 Fuzzing
    • Mastering Vim Quickly 书评
    • 线上会议实用技巧
    • 在控制台上进行网络监控
  • 2020-0910 贡献与入门
    • 采访:Warner Losh,第 2 部分
    • 代码审查
    • 撰写良好的提交消息
    • 如何在不是程序员的情况下做出贡献——成为 FreeBSD 译者
    • 如何成为文档提交者
    • 谷歌编程之夏
    • 为 FreeBSD 期刊撰写文章
    • 你为什么使用 FreeBSD
    • FreeBSD 的新面孔
  • 2020-0708 基准测试/调优
    • FreeBSD Friday
    • 采访:Warner Losh,第 1 部分
    • 构建和运行开源社区
    • 在 FreeBSD 上轻松搭建我的世界(Minecraft)服务器
    • FreeBSD 的新面孔
  • 2020-0506 网络性能
    • 内核中的 TLS 卸载
    • 访谈:Michael W Lucas
    • FreeBSD 桌面发行版
    • 使用 Poudriere 进行 Port 批量管理
    • FreeBSD 的新面孔
由 GitBook 提供支持
LogoLogo

FreeBSD 中文社区(CFC) 2025

在本页
  • 不包括电池
  • 首次法律诉讼
  • 磁带大量涌现
  • 首次公开使用
  • 移植 Unix
  • 社区评论
  • 会议和更多录音带
  • 启用 Unix
  • DARPA 资助
  • 尾声
在GitHub上编辑
导出为 PDF
  1. 2023-0506 FreeBSD 三十周年纪念特刊

FreeBSD 和早期的 Unix 社区

上一页回忆录:采访 David Greenman Lawrence下一页早期的 FreeBSD 移植

最后更新于22天前

  • 原文:

  • 作者:WARNER LOSH

  • 译者:basebyte【】为译者注

FeeBSD 是一个相互协作、相互帮助的社区,它使用户相互帮助,在一个共同的开放平台上开发出优秀的产品。我们可以追溯到 20 世纪 70 年代中期充满活力的 Unix 用户社区。然而,如果没有这些互惠互利的早期社区,我们就不会有 FreeBSD 的故事,甚至也不会有今天的 Unix 故事。

在这些早期的社区(以及其他类似的 1960 年代和 1970 年代的硬件和软件社区)中,孕育了如今蓬勃发展的开源社区。这些早期社区(如 IBM 的 SHARE 和 DEC 的 DECUS)之所以形成,是因为当时的计算机相当昂贵,而且用户常常面临各种相似的问题,这些问题可能与制造商的利益并不一致。社区成员不仅分享对厂商软件的修改,还分享解决厂商无意解决的问题的有趣程序。

不包括电池

20 世纪 70 年代初,美国电话电报公司(AT&T)研究部门贝尔实验室(Bell Labs)的硬件项目:臭鼬(skunk works project)被取消,作为对该项目被取消的回应,Unix 应运而生。在 1973 年举行的 ACM 操作系统原理研讨会(SOSP)上,Ken Thompson 和 Dennis Ritchie 首次发表了关于 Unix 的公开演讲。1974 年 7 月出版的《ACM 通讯》发表了第一篇论文。由于复杂的法律原因,AT&T 必须仅以复制的成本来免费提供任何为非商业用途而创建的酷炫的、非电话的技术。在这篇论文发表后,有关 Unix 的请求开始纷至沓来。

losh_early_unix-1

第一批 Unix 磁带副本于 1974 年初推出。由于 AT&T 被禁止提供技术支持,因此用户只能靠自己。AT&T 只保证那些磁带可以读取,但几乎没有其他方面的保证。AT&T 还被禁止销售任何非电话服务产品,因此这些磁带并不属于受支持的产品。从技术上讲,用户必须自己摸索如何使用和安装这个系统,但 Ken Thompson 参与了许多早期的安装工作。系统安装完毕后,用户就可以自己想办法解决遇到的任何问题。这与 IBM 或 DEC 等为用户提供广泛支持的大型计算机制造商形成了鲜明对比。如果你想运行 Unix,你就必须真的想要它。

第一批磁带发行后不久,第一个 Unix 用户组会议在纽约市开始召开。人们聚集在一起,讨论 Unix、如何使用它、遇到的错误等。美国电话电报公司(AT&T)的员工也以非官方的身份参加了其中一些会议。最初的几次会议结束后,有关会议的消息不胫而走,参加会议的人越来越多,很快就开始出版一份名为《Unix News》的新闻通讯杂志,为不能参加会议的人记录有趣的新闻和八卦。第一期通讯杂志共发给了 37 人,但其中列出了约 50 位 Unix 用户的姓名和地址,就像一个目录,这样用户就可以相互联系、交流信息,并互相帮助学习如何使用这个新的操作系统。

虽然很难得到 Unix 早期受欢迎程度的确切数据,但我们可以做出一些合理的猜测。在 1974 年上半年,大概有 10 盘磁带上市。到 1975 年初,安装数量超过 50 台。到 1975 年年中,差不多有 100 台。到了 1975 年年底,安装数量接近 200 台。与此同时,Unix 在 AT&T 内部也有了大幅增长。

这些用户团体并不局限于美国。英国和澳大利亚也有自己的用户组,并出版了他们自己的通讯杂志。在加拿大和欧洲,这些用户组作为 DECUS(Digital Equipment Corporation Users Society)的特别兴趣小组运行。即使是早期的《Unix News》通讯地址列表中,也包括了来自 10 个不同国家的用户。从早期开始,Unix 很快成为了一个国际化的事物。我们之所以知道这些细节,是因为有时这些通讯会转载其他使用 Unix 的用户组的页面。

首次法律诉讼

AT&T 的法律部门善于保护 Unix 的名称和权利,但却不善于处理社区关系。首先,他们反对在没有严格法律声明的情况下谈论 Unix。Unix 许可证要求对源代码、方法和概念保密,因此法律部门强迫《Unix News》通讯杂志使用法律免责声明。

接下来,他们不喜欢 Unix News 这个名字,因为它侵犯了他们的 Unix 商标,所以他们强迫使通讯杂志改名为“login:The Unix Newsletter”。将名称改为副标题似乎是一场没有必要的斗争。

几年内,英国、澳大利亚和欧洲也出现了其他 Unix 通讯杂志。每份通讯杂志都包含这一法律免责声明。保密协议在 Unix 的早期讨论中产生了很大影响,限制了在早期阶段发布 Unix 的许多酷炫特性,尽管大部分方法和概念已在《CACM》杂志的文章中发表。正如你所想象的,这让人们感到不快。

磁带大量涌现

Unix 用户从一开始就交换软件。当时的首选传输方式是磁带或移动硬盘(这两种传输方式的容量都在 10MB 左右)。在《CACM》出版后的一年内,一个充满活力的软件交换网络萌芽了。多伦多和哈佛最先组织了两次软件交换。多伦多的发行版包含一些额外的驱动程序和一些错误修复。哈佛的发行版则包括系统优化、交互响应速度改进以及一些大学计算环境所需的安全加固。这两个发行版都曾在 1975 年年中的第一期《Unix 新闻》中讨论过,当时只有大约 100 个外部 Unix 系统(和几百个用户)。

此外,在 CACM 文章发表后不到一年,Unix 已被适配在多处理器系统(MUNIX)上运行。MUNIX 的论文讨论了创建一个依赖于全局变量并通过加锁以保证线程安全的内核,这种方式现在大家都非常熟悉。这个软件的磁带也可以从位于蒙特利湾的海军研究站获得。一个处理器负责所有的数据采集,另一个处理器负责向用户显示数据和状态。来自伊利诺伊大学的 Net Unix 成功将 PDP-11 连接到 ARPAnet——这是互联网的前身。Net Unix 也是在 CACM 文章发表后一年内产生的,第一期《Unix News》对其进行了讨论,并在第二年使 PDP-11 成为 ARPAnet 上最受欢迎的计算机。由于它的源代码很容易获得,许多网络协议研究人员都以 Net Unix 为基础开展工作。它后来影响了 BBN 提供给伯克利的 TCP/IP 协议栈,成为上世纪 80 年代和 90 年代早期几乎所有 TCP/IP 网络协议栈的基础。

首次公开使用

波士顿儿童博物馆似乎是第一个在展品中使用 Unix 的博物馆。在 CACM 文章发表仅几个月后,该博物馆就已经对这一复杂系统进行了儿童防护处理,以便孩子们也能与之互动。博物馆的展览让孩子们通过有趣的图形游戏来探索编程。

这种情况的发生可能是因为该博物馆与哈佛大学有密切的联系,并且运行着哈佛修改版的 Unix 系统。由于与哈佛大学的合作,该博物馆在未来几年内还分享了更多的 Unix 创新版本。

移植 Unix

大约在同一时间,有三个团队将 Unix 移植到了完全不同的机器上。伍伦贡大学的 Richard Miller 和 Ross Nealson 将 Unix 移植到了 Intersil 7/32(32 位机器)上。Tom Lyon 和 Eric Schmidt,普林斯顿大学的学生,他们将 Unix 移植到 IBM 的 VM/360。AT&T 也将自己的 Unix 移植到了 Intersil 8/32。

伍伦贡大学的移植工作无疑是其中最有趣的。当时,Miller 教授被聘请到大学的时候,承诺会购买一台 PDP-11 让他运行 Unix。然而,当他到达学校时,却发现学校已经购买了一台 Intersil 7/32,根本没有钱购买 PDP-11。于是,他小心翼翼地修改了 C 编译器,使其能生成 Intersil 机器码。但他没有办法运行这个 C 编译器,因为它需要 Unix 系统。于是,他开车 90 分钟去悉尼,使用那里的 PDP-11 计算机,运行了几次 Unix 系统来启动编译器。然后,他将 Unix 的其余部分移植到 Intersil 7/32,先作为用户库,然后作为用户进程中的 Unix 内核,最终作为原生的移植版本。所有这一切都只用了不到 6 个月的时间,而系统在 9 个月后就已经足够强大,可以投入使用了。对于一个从未接触过 Unix 的人来说,Miller 教授在获得磁带和开始这个任务方面表现出了令人难以置信的勇气和努力。

社区评论

同在伍伦贡大学的 John Lions 写了一本关于 Unix 内核的书,用于教授他的操作系统课程。起初,AT&T 允许他发行这本书,但后来收回了许可,因为这本书写的太好了。AT&T 的法务部门再次给 AT&T 在 Unix 社区中提交了差劲的 PR【提交了负面的内容】。

然而,对于 Lions 教授来说,事情最终进展得不错。由于他因这本书而声名鹊起,他成功获得了贝尔实验室的游学资格。当然,John 回信给澳大利亚 Unix 用户组,讲述了这个故事,并被刊登在他们的通讯中。他向这个用户组分享他旅程中的消息,就像写信给一个老朋友一样:

(有关即将出版的第 7 版的大量信息以及有关 AT&T 的其他信息省略)。

Lions 教授的一个研究生 David Hunt 也获得了在罗格斯大学的休学资格。AUUGN 的编辑 Ian Johnstone 刊登了 Hunt 关于保护 Lions 评论副本的报告。

会议和更多录音带

非正式的 USENIX 会议的规模和复杂程度不断提高。到 1977 年,美国东西海岸都出现了以正式演讲为特色的聚会。1977 年 9 月,超过 100 人参加了在 Menlo Park 举行的会议。USENIX 从大约 30 个早期的 Unix 用户那里收集了一些创新的软件,制成了现存最古老的磁带,被称为“第三次软件分发”。这个创新的磁带包括了原创的软件,使得今后的磁带制作更加容易。

用户社区为 Unix 创造的内容帮助了 Unix 的发展。用户组的通讯传播了信息,并促进了人们之间的联系。事实上,用户组之间经常发表彼此通讯中的文章,从而增加和加强了用户组社区之间的联系。对代码的慷慨共享和友好的氛围为今天蓬勃发展的开源社区,如 FreeBSD,奠定了基础。

启用 Unix

在 PDP-11 上,Unix 并不是唯一的操作系统。DEC 还针对不同的细分行业发行了其他几种操作系统。针对实时控制,他们提供了 RT-11 系统。针对商业和数字应用,他们提供了 RSX/11M 系统。DEC 还拥有当时最好的 FORTRAN 编译器(比 Unix 的编译器好得多)。许多大学都有运行着 RT-11 系统用于数据收集的 PDP-11 机器,还有其他运行 RSX/11M 系统进行数据分析的 PDP-11 机器。因此,最初对于运行 Unix 存在一些抵抗,因为 Unix 无法运行为这些环境编写的程序。许多人只好在白天运行 DEC 的操作系统,因为那时教授们通常都在,而晚上则运行 Unix,因为那时候那些喜欢使用 Unix 的怪人都在。

当时,DEC 以源代码的形式向大学分发了许多程序。因此,在 CACM 文章发表后的几年内,他们使用仿真库将 FORTRAN 和其他程序移植到了 Unix 系统,这些仿真库将原本是 RT-11 或 RSX/11M 系统调用翻译成 Unix 系统调用。如果你拥有所有正确的许可证,并能提供正确的文件,你可以从进行移植的大学获得这些程序的副本。

然而,这种方式过于繁琐,一些聪明的人注意到 PDP-11 有许多方法可以进行系统调用。幸运的是,RT-11 和 RSX/11M 使用一种方法,而 Unix 使用了不同的方法。于是,这些聪明人在 Unix 内核中添加了陷阱处理程序,将其转化为程序的信号。他们利用这一点创建了 RT-11 和 RSX/11M 的仿真程序,这样用户就不需要源代码就能在 Unix 上运行 DEC 软件。此外,在这些仿真程序的帮助下,那些在 RT-11 上运行程序的大学教授可以在 Unix 上不经修改地运行这些程序。英属哥伦比亚大学的 Bill Webb 于 1976 年编写了最早的仿真器。

突然之间,Unix 可以全天候运行,因为它能够执行这些专有操作系统的所有功能,这为它从计算机实验室扩展到更广泛的科学应用铺平了道路。Unix 用户创造了一些有用的东西,不仅使社区规模不断扩大,还扩大了其影响范围。由于用户之间的通力合作和他们慷慨共享的代码,Unix 能够比这些专有操作系统做得更多。

DARPA 资助

我在一期 AUUGN 上看到了这个有趣的通知:

这两句话虽然被证明只是传言,但却宣布了 Unix 的两个最重要的发展。“Level 7 Unix”宣布了第七版 Unix,这是贝尔实验室最后一个版本的 Unix。第七版将启动 AT&T 的 Unix 商业化努力,并将 Unix 引入非学术用户。

这个“特殊协议”是指 AT&T 向伯克利提供了第七版 Unix 的早期版本,该版本被移植到 VAX 计算机上并称为“32V”。伯克利将对 32V 进行改进,使其成为伯克利软件发行版(BSD)。美国政府通过 DARPA 为伯克利提供资金,为 VAX 计算机上的 Unix 增加高级功能。DARPA 资助了伯克利为 Unix 增加网络协议堆栈。尽管 AT&T 也有一份 VAX 上的 Unix 版本,但几乎所有人都在使用伯克利的 Unix 版本。甚至贝尔实验室后来的 Unix 研究版本也是基于 BSD 开发的。

尾声

这个高度协作的社区继续开发创新和有益的系统和软件。伯克利发行版将强大的 Unix 带到许多大学和公司。它也被广泛移植。像 Sun 这样的移植公司经常向社区做出重大贡献。由于厌倦了 Unix 不断增加的法律负担,伯克利决定重新编写他们尚未增强的少数 Unix 系统部分,并发布了一个不受限制的发行版,名为 Net/2。

Net/2 很快被移植到 IBM PC 上。除了可以免费下载的版本外,许多公司也推出了自己的版本,还包含了相应的技术支持。BSD Unix 准备征服世界。然而,在自毁的最后一击中,AT&T 的法务部门对这些版本进行了起诉。由此引起的混乱和不确定性导致了 Linux 的崛起,几年后,AT&T 退出了 Unix 业务。这个故事太长,无法详述。

尽管如此,整个 BSD 社区,特别是 FreeBSD 社区,依然幸存下来。FreeBSD 和 Linux 之间形成了一种相互竞争的精神,从而导致了思想和技术的积极交流。在过去的 30 年中,同样的社区和共享精神一直延续至今,并继续蓬勃发展。FreeBSD 的互助社区继承了早期 Unix 用户组的传统,其规模比早期的用户组大了许多倍。FreeBSD 已在全球数以十万计的计算机上被广泛使用。

FreeBSD 吸引了企业用户,他们也会回馈 FreeBSD 以保持其存储和网络设备的竞争力。Isilon 和 NetApp 使用 FreeBSD 来构建他们的存储设备。Netflix 使用 FreeBSD 传输其所有视频内容。Juniper 的路由器使用它来传输网络数据包。这些企业用户也为项目做出了贡献,与其他众多用户一样,无论是老用户还是新用户。社区依然强大,并欢迎自 Unix News 成立以来的数代新用户。我们对 Unix 先驱们深表感激,是他们早期的坚持不懈和创新,才有了我们今天所享有的强大和支持性的开源社区。


WARNER LOSH 在 FreeBSD 项目成立之前,甚至在“开源”一词正式定义之前就一直在为开源做出贡献。他最近一直在深入研究 Unix 的早期历史,发现其中丰富而隐秘的遗产。他和妻子女儿一起生活在科罗拉多州的一间草屋中,这个草屋依靠太阳、小锅炉和偶尔使用的古董电脑取暖。

losh_early_unix-2
losh_early_unix-3
losh_early_unix-4
losh_early_unix-5
losh_early_unix-6
losh_early_unix-7
losh_early_unix-8
FreeBSD and the Early Unix Communities