BSD 起步:从 1BSD 磁带到带虚拟内存的 3BSD

2026年10月30日,F/OSS Comics 连载第 13 期《BSD Unix, Part 3》用连环画讲 BSD 怎么从「一捆软件磁带」长成面向研究机构的发行版。下文按漫画叙事整理时间线,细节主要转述 Marshall Kirk McKusick、Salon 等公开史料,属于历史科普,不是学术定论。[1]

1977:第一套 BSD,还不是独立操作系统

Ken Thompson 1976 年回贝尔实验室后,伯克利这边 Bill Joy 和 Chuck Haley 开始自己摸 Unix 内核。Joy 很快把学校的 Pascal 系统和从 em 发展来的行编辑器 ex 捆在一起,在 1977 年初做出 Berkeley Software Distribution,也就是后来常说的 1BSD。当时它并不是能单独装机的操作系统,而是装在已有 Unix 上的软件集合;随后大约一年发出去约三十盘磁带。[1]

要拿到 BSD,当时仍须持有 AT&T Unix 源码许可;伯克利只收磁带和邮寄成本。漫画里也提到,伯克利本来就有分享研究软件的传统,反托拉斯背景下 AT&T 不便把 Unix 当商品卖,源码许可反而帮系统在高校和研究机构里传开。[1][2]

2BSD:vi、C shell,还是 Joy 自己刻盘寄出

第一版发出后,Joy 按用户反馈改 Pascal 系统,再叠上 vi(ex 的可视化模式)、C shell 等工具,做成 2BSD。随后一年大约寄出近七十五盘磁带。漫画特意画了 Joy 的日常:不只修 bug,连复制磁带、打包邮寄也自己干。[1][5]

1978–1979:VAX、虚拟内存,再到 3BSD

1978 年,Richard Fateman 课题组拿到一台 VAX。贝尔实验室已有面向 VAX 的 Unix 叫 32/V,但没用上硬件虚拟内存,进程地址空间仍卡在物理内存里;Fateman 要跑的符号计算系统 Macsyma 需要更大空间。研究生 Ozalp Babaoglu 在 Domenico Ferrari 指导下给 32/V 加虚拟内存,Joy 帮忙集成和调试;1978 年底假期机器闲一点,两人继续盯崩溃,到 1979 年 1 月大体稳住。[1][4]

Joy 再把 2BSD 里的 ex、vi、C shell 等迁到 VAX;Peter Kessler 与 McKusick 负责移植 Pascal。这些工具连同 32/V 实用程序,以及 Babaoglu 与 Joy 调通的虚拟内存内核,打成 3BSD,从 1979 年 12 月开始外发。[1]

DARPA 为什么开始盯上它

自 1969 年起,ARPANET 连着一堆 DARPA 资助的研究站点,机器和操作系统五花八门,软件移植成本很高。漫画收尾写:Unix 的可移植性本来就受关注,而伯克利把 3BSD 顺利发到各研究机构,也让 DARPA 注意到这条发行线。[1][3]

想对照原文对话气泡和配图,可直接看 F/OSS Comics 第 13 期;系列还有 Part 1(源码到伯克利)与 Part 2(vi 诞生)。更偏史料的长文可从 McKusick《Twenty Years of Berkeley Unix》入手,具体年代与数字仍建议对照一手档案。

说明:本文据 fosscomics 连环画科普转述,年代与发行量等数字来自漫画所引公开史料,不宜当作学术定论;细节以原文及所列参考文献为准。

来源

[1] 13. BSD Unix, Part 3 - The Beginning of BSD Unix,F/OSS Comics,2026年10月30日。查询日:2026-11-02。

[2] BSD Unix: Power to the people, from the code,Andrew Leonard,Salon,2000年。漫画文内参考文献。

[3] Marshall Kirk McKusick,Twenty Years of Berkeley Unix,收录于 Open Sources: Voices from the Open Source Revolution,1999年。漫画主引史料。

[4] The Unix Heritage Society:2BSD 发行归档,TUHS。漫画文内参考文献。

#BSD #Unix #BillJoy #伯克利 #开源历史 #fosscomics

查看全文

排序方式 :

成为第一条评论!

Nobody's responded to this post yet. Add your thoughts and get the conversation going.