UNIX操作系统的二十年发展历史( 三 )


由于3BSD版本实现了他的承诺,3BSD声誉也随着大大提高,因此BobFabry和DARPA签定了一份在1980四月生效的长约18个月的合同 。在这份合同的赞助下,BobFabry组建了名为“计算机系统研究小组的组织,或者简写为CSRG 。他很快雇佣了LauraTong处理项目的管理 。Fabry把他的注意力转向寻找一位能够管理软件开发的项目经理 。Fabry以为已经通过Ph.D.资格考试的Joy,宁愿完成他的学位也不肯当软件开发的职位,然而Joy又有了其他的计划 。三月上旬的一个晚上,Joy达电话往Fabry家里打电话,表示对掌管Unix进一步发展感兴趣 。尽管这个提议使Fabry很吃惊,但Fabry梢加考虑就答应了 。
项目进展的的很顺利 。Tong建立一套发行系统,能够使从Joy早先发行版处理大量的定单 。Fabry开始同AT&T的BobGuffy以及加洲大学的律师合作,制定使用者需要同意使用Unix的条款 。Joy将JimKulp作业控制机制,还有自动重启动功能,1K-块文件系统,并且支持新型VAX-11/750 。到了1980年十月,优化后的系统4BSD发布,包括Pascal编译器、Franz的Lisp系统,和增强的邮件处理系统 。在它9个月的生命周期中,大约卖出150份系统拷贝 。许可的管理是通过以公共机构为单位的,而不是以每台机器来收费的;因此这个版本运行在500台以上的机器上 。
随着发行版本大量增加,BerkeleyUnix的可见性增加 。几个评论评论家开始评论BSD 。斯坦福研究院的工作人员撰写了一篇主要关于VMS和BerkeleyUnix运行测试结果的论文,这些测试结果表明VAX运行Unix的几个严重问题 。Joy看到这篇论文,立刻把未来的计划搁置了几个月,着手调整内核 。几周以后,他基于Kashtan的测试结果回复一篇文章,表明Unix可以很好地运行在VMS机器上 。
4BSD不断发行的同时,仍然处于细微的调整阶段 。增加RobertElz的自动配置代码之后的系统,于1981年6月发布,这个版本称为4.1BSD 。在它两年多的生存周期内,大约发行了400份 。原计划称为5BSD版本,然而,AT&T反对此事,宣称顾客可能会把它和商业Unix——SystemV混淆 。所以,为了解决这个争端,Berkeley答应在未来版本命名计划中,主版本号停留在4BSD,只增加次版本号 。
4.2BSD
随着4.1BSD版本的发行,很多关于性能的疑虑被解决 。DARPA非常满意合同的结果 。以致于又同Berkeley签定一份两年期的合同,而且这次的基金很多,大约是原来的5倍 。这部分资金一半用来资助Unix项目,余下的分给计算机科学系的几个其他研究员 。合同要求,主要工作放在系统研究上,以便DARPA的研究人员可以很好地进行他们的工作 。
由于DARPA团队的要求,确定了新的工作,并且开始据此对系统进改进 。特别地,新系统希望包含能够适应新的硬盘技术的快速文件系统、支持GB级的进程地址空间、提供灵活的交互处理通讯机制,以支持在分布式系统下的研究工作,并且集成网络支持,这样能够使运行新系统的机器都很容易地连到ARPAnet 。
为了帮助确定新系统的方案,DuaneAdams作为DARPA在Berkeley合同的监督人,组织了“筹划指导委员会协助指导设计工作,确保研究DARPA的要求得到满足 。这个委员会在1981年4月到1983年6月,共开了两次大会 。委员会包括BobFabry、BillJoy,和Berkeley的SamLeffler、AlanNemeth和Bolt的RobGurwitz、Beranek和Newman,贝尔实验室的DennisRitchIE,斯坦福(Stanford)大学的KeithLantz、卡内基梅隆(Carnegie-Mellon)大学的RickRashid,麻省理工(MIT)的BertHalstead、InformationSciencesInstitute的DanLynch、DuaneAdams和DARPA的BobBaker,以及加洲大学洛杉矶分校的JerryPopek 。1984年初,这些会议被由更多人参加的主题讨论会取代 。
1981年7月,在新系统中建议包含特性的原始文档交给“筹划指导委员会和其他不在Berkeley的人那里,引起了很长时间的讨论 。这年夏天,我成为CSRG的成员,并且参与实现新的文件系统 。整个夏天,Joy一直集中设计进程间通讯机制的原型 。1981年秋,SamLeffler也作为全职人员加入CSRG,同BillJoy一起工作 。

推荐阅读