打字猴:1.70043747e+09
1700437470 UNIX传奇:历史与回忆 [:1700434713]
1700437471 UNIX传奇:历史与回忆 7.2 USL和SVR4
1700437472
1700437473 剥离之后,AT&T无力或至少无意销售Unix,这给了早已从科研部门分离出去的另一个部门商业机会。那个部门位于新泽西州萨米特附近的一栋大楼里,在地理上也远离科研部门。那栋楼周围是繁忙的高速公路,所以该部门被非正式地称为“Freeway Island”(高速公路岛)。该机构最初叫Unix支持组(Unix Support Group,USG),最后变成Unix系统实验室(Unix System Laboratories),或称USL。第一个USG由伯克·塔格(Berk Tague)在1973年创办,专注于运营支持系统。随着时间的推移,USG扩大了其业务范围,开始做对外销售和推广。
1700437474
1700437475 Unix确实有市场。甚至可以说,AT&T通过向大学生赠送Unix,无意中创造了这个市场。当大学生进入社会,受雇于有能力支付真金白银的公司时,他们就会需要它。从1984年开始,USL积极营销Unix,并努力将其改造为专业的商业产品,最终形成名为System V Release 4,或称SVR4的版本。AT&T投入大量资源,推动这个版本成为标准,并为源码和目标码兼容性提供了参考实现和细致的定义。我认为,这种对标准和互操作性的关注非常重要。
1700437476
1700437477 SVR4发展的来龙去脉,以及AT&T在10年间与合作者和竞争者的互动,既错综复杂又了无趣味。关于这些事我不想多说什么,因为在某种程度上,这一切都没有意义:业界焦点几乎完全转移到了Linux上。维基百科关于System V的总结文章,大概是准确的:
1700437478
1700437479 “业内分析人士普遍认为,专有Unix已经进入了缓慢但永久的衰退期。”
1700437480
1700437481 当然,这只关乎“专有”,像下一章介绍的BSD那样的开放源码版本还是很活跃。
1700437482
1700437483 AT&T产品系列涵盖操作系统和各种支持软件,包括C语言、C++、Fortran、Ada甚至Pascal的编译器,这些软件大部分基于史蒂夫 · 约翰逊的可移植C语言编译器。此外,公司还做了大量标准化工作,确保源代码和库中二进制格式的兼容性。
1700437484
1700437485 当时,我是本贾尼·斯特劳斯特鲁普的部门主管,这意味着会与USL频繁交流C++的发展问题。大多数情况下,交流气氛友好,但有时也会出现因科研和产品管理优先级矛盾导致的冲突。1988年与USL经理的一次激烈争论是这样的:
1700437486
1700437487 经理:“你们必须修复C++编译器的所有错误,但你不能以任何方式改变编译器行为。”
1700437488
1700437489 我:“这不可能。修复缺陷必然导致行为变化,天经地义。”
1700437490
1700437491 经理:“布莱恩,你没明白。必须修复错误,但编译器的行为不能改变。”
1700437492
1700437493 从学术角度来说,我是对的,但实际上我能理解那位经理的意思——对于那些使用新语言和工具进行软件开发的人来说,过多或过快的变化是个大麻烦。
1700437494
1700437495 USL在日本成立了子公司Unix Pacific,经理是拉里·克鲁姆(Larry Crume)。他在贝尔实验室供职多年,与科研部门很多人都熟识。这种关系促成了技术合作,我也因此得到两次公费访日的机会,其中一次是与日本大型电话公司NTT交流。交流过程感觉良好,但可以明显感受到论资排辈文化。执行董事和NTT同级官员打高尔夫,中心主任和他的同级打网球,像我这样的基层部门主管则被邀请去东京购物。我谢绝了。
1700437496
1700437497 虽然AT&T的Unix商业化努力并不总能成功,但Unix的标准化对整个社区来说非常宝贵。科研中心和USL之间偶尔会出现紧张关系,但在大多数情况下,USL有一大批有才华的同事,他们对Unix和相关软件系统做出了重大贡献。
1700437498
1700437499
1700437500
1700437501
1700437502 UNIX传奇:历史与回忆 [:1700434714]
1700437503 UNIX传奇:历史与回忆 7.3 UNIXTM
1700437504
1700437505 在Unix早期的某个时候,贝尔实验室的法定监护人认为,Unix这个名字是高价值商标,必须加以保护。这无疑是正确的商业决定。他们试图防止这个名字成为可被任何人使用的通用名词,就像阿司匹林(在美国)、自动扶梯、拉链和(最近的)应用商店等词那样[2]。
1700437506
1700437507 因此,公司要求贝尔实验室员工正确地使用这个名字。特别地,它不能作为独立名词使用,如“Unix is an operating system”(Unix是一种操作系统),必须标示商标,而且还只能以大写形容词形式存在于“the UNIXTM operating system”(UNIXTM操作系统)短语中,这就导致了“The UNIXTM operating system is an operating system”(UNIXTM操作系统是一个操作系统)这样的可笑句子。罗布·派克和我不得不为我们1984年出版的The Unix Programming Environment(《Unix编程环境》)一书力争命名权,否则,这本书就得叫The UNIXTM Operating System Programming Environment了。最终的折中方案是:封面上不出现商标或脚注标记,但在扉页上印了几乎看不见的星号和脚注。
1700437508
1700437509 这个臃肿的短语令人痛苦,尤其是对于认真写作的人来说更加如此,所以人们采用一些变通办法和偶尔试探来绕开这个麻烦。例如,在标准Troff宏包ms中,迈克尔·莱斯克添加了一个格式化命令,将所有“Unix”字样换成大写,并在它出现(当然也是大写)的第一页自动生成脚注,写明:
1700437510
1700437511 † UNIX is a trademark of Bell Laboratories.[3]
1700437512
1700437513
1700437514
1700437515
1700437516
1700437517 但如果使用该命令时输入某个未在文档列出的参数,它就会输出:
1700437518
1700437519 † UNIX is a footnote of Bell Laboratories.[4]
[ 上一页 ]  [ :1.70043747e+09 ]  [ 下一页 ]