前事不忘,后事之师,唠唠开源的前世今生

这篇具有很好参考价值的文章主要介绍了前事不忘,后事之师,唠唠开源的前世今生。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

✏️ 编者按:

过去三十年,开源软件以开放、共享、协同的新型生产方式,成为全球信息技术发展的强大推动力。是什么造就了开源?一个小小的个人项目何以改变计算机工业乃至人类社会的?从历史的视角,我们可以得到哪些启发?

让我们跟随红帽工程师@醉卧沙场,回溯计算机系统发展的历史长河。

操作系统之初,人们追求分时复用的设计。在 Multics 项目因为不堪重负而消亡后,Unix 系统悄悄地从这个项目的残骸里出世。虽然 Multics 项目死掉了,但是人们对分时复用系统的追求没有停止,所以在 Multics “死后”,Unix 作为个人追求和爱好开始默默发展

Unix 的最初设计者 Ken Thompson 是 Multics 项目的研究员,他在 1969 年设计了Unix了系统的第一代雏形。开始的 Unix 是用汇编语言和 B 语言所写,后来 Dennis Ritchie 加入创作,开创了 C 语言,然后二人又用 C 语言重写了 Unix。不得不说,用 C 语言重写 Unix 系统对其影响很大。一个用高级语言编写的可读性可扩展性良好的支持分时复用的系统代码,很快在世界顶级黑客间得到广泛流传和认可。

前事不忘,后事之师,唠唠开源的前世今生

由于 Ken 所在的贝尔实验室是 AT&T(美国电话电报公司)的下属机构,Unix 的版权归 AT&T 所有

1974年,Thompson 和 Ritchie 在 CACM(美国计算机通讯)发表论文,第一次展示了 Unix 和其数百个应用程序后,全世界各大研究室和高校都为之兴奋,并都要求获得 Unix 系统来研究。这个时候 AT&T 其实是很心痒痒的,因为显然 Unix 是是一个巨大的机遇。但是在 1958 年 AT&T 就被禁止进入计算机相关商业领域(为解决反托拉斯案件达成的和解协议),所以 AT&T 不能靠 Unix 来获取利润,而且根据协议,AT&T 下属的贝尔实验室必须将当时的 Unix 分给提出要求获取到它的人。所以 Ken Thompson 开始将载有 Unix 源码的磁带或磁盘一一寄出。然后就引发的 Unix 开发浪潮,各种民间黑客以及公立组织的黑客们开始争先恐后的扩展 Unix 系统,其中最出名的当属加州大学伯克利分校。

前事不忘,后事之师,唠唠开源的前世今生

Unix V7 版本界面

Unix 系统得到前所未有的成功和发展,在 1979 年发布的 V7 版本可以称为第一个完整意义上的 Unix 系统。而当时对于 V6 版本的源代码注释,也成了 Unix 的最正式文档,流传至今。那个时候,作为一个从事计算机行业的人,没有一份 V6 注释版源码的拷贝,你简直都没法说自己是黑客。Unix 开始进入黄金发展的时期。

1978 年,第一家 Unix 的公司 SCO 成立,Unix 的产业开始初见端倪。微软当时也加入到 Unix 中,把 AT&T 版本移植到了微型计算机上,取名 Xenix 来卖(不过后来他们就另谋他路了)。

上面我们提到了加州大学伯克利分校,这是 Unix 发展史上的一个重要高校,他们对 Unix 的贡献非常巨大。为什么?因为 Ken Thompson 曾在此教学,并将 Unix 的研究深深地植入了这里,以至于他离开后,这里的老师和学生仍然持续的努力研究。1977 年,第一版的 Berkeley Software Distribution (BSD)问世,伯克利分校迅速成为一个核心开发点,很多创意被反馈回贝尔实验室。

1980 年,DARPA(美国国防部高级研究计划局)想要实现全新的 TCP/IP 协议栈,BSD 版 Unix 成为首选,因为这版代码最公开最容易得到,DARPA 选择和伯克利合作开发。

前事不忘,后事之师,唠唠开源的前世今生

2015 年,时任自由软件基金会主席的 Richard Stallman 在意大利谈及自由软件运动

1983 年,TCP/IP 随着 BSD 4.2 版本一起发布,这历史性一刻让 BSD 版 Unix 红极一时。同年 DEC 公司取消 PDP-10 后续的开发计划,MIT 人工智能实验室以 PDP-10 为中心的黑客文化消亡,这刺激到 Richard Stallman,他开始思考创建 GNU,一个他心目中完全自由的 Unix 克隆版本。还是同年(1983年发生了很多很多事),美国司法部拆分了贝尔实验室,这个举动将 AT&T 从禁止 Unix 商品化的协议中解脱,AT&T 早就心痒难耐,立马开始 Unix System V(系统5)的商业化。就是这一举措,让 Unix 逐渐没落。

Unix 商业化后,原有的自由交流氛围消失。AT&T 用保密协议从软件中获利,严格管制源代码散发,对开发商的产品管制也很严格。这导致 Unix 失去绝大部分的贡献者,因为获取分发 Unix 源码属于非法交易了。祸不单行,在贡献源头枯竭后,各个厂商开始寻求产品的差异性,将 Unix 打造成各自的标准以争取市场。这一做法极大地破坏了 Unix 的跨平台兼容性,对 Unix 造成毁灭性打击。商业化的 Unix 开始和 BSD Unix 分歧不断,从技术层面的分歧,到文化层面的分歧不断加深,几乎到水火不容的地步。相关人员开始纷纷站队,技术人员一般站 BSD 这边,以利益为目标的人站 AT&T 的 System V 这边。

又是 1983 年,一件不大不小的事悄然发生。Larry Wall 先生(我曾有幸见过他和他的太太,并拿到他亲笔签名的 Perl 语言书籍)发明了一个应用程序,叫 patch。这个事件可算大可算小,因为它增进了程序员源码交流的效率,改善了交流方式,让开发人员可以通过传送补丁进行协作,让基于共享代码库的开发可以分开开发,并行进行,最后合并到一起。它引领了新的开发协作方式,为 Unix 的新生做了铺垫。

前事不忘,后事之师,唠唠开源的前世今生

1985 年,Intel 的 386 芯片问世。这在当时还不是很起眼,因为当时大家的注意力还都在 Sun 公司的工作站上。当时可以很轻松地运行 Unix 的微处理器,在后来让 Sun 知道了什么叫无力回天。同年,Richard Stallman 发表 GNU 宣言,发起了自由软件基金会。只是当时没有人把他和他的组织放在眼里。

1986 年,IBM 开始在大型机市场失利,以 Intel 386 为基础,配合 Unix 跑起来的 PC 机开始占领市场。其实这个时候如果有人用 Stallman 的 GNU 项目配合 386 制作出 Unix 工作站,那将是最便宜的解决方案,而且便宜得不是一点。

Unix 的战争愈演愈烈,经历几轮战争后,Unix 社群的人们的梦想开始破灭。Unix 的商业化没有取得成功,成为鸡肋的存在。微软在 Unix 自相残杀的时候迅速占领了无人重视的小型机市场,赚得盆满钵满,并巩固了其统治地位。“自由”的梦想似乎就要在此终结。

但是曙光在这一刻悄然埋下。1988 年,伯克利分校的黑客 Keith Bostic 受到 Stallman 的影响(听说 Stallman 先生“游说”了当时的 BSD 老大很久,劝他移除并重写 BSD 中 Unix 商业代码相关的部分),开始尝试把 BSD 中 AT&T 的专有代码清除出去,之后 William Jolitz 在 1990 年把 BSD 移植到了 386 机器上。这一消息立刻引起不小的轰动,但是在 1991 年底到 1992 年初的时候,Jolitz 突然退出了这个项目,并毁掉了自己的成果。原因传说是项目的赞助商选择专有授权模式,而不同意他希望将源代码无条件无限制发布的愿望,于是,这个程序员就怒了。

前事不忘,后事之师,唠唠开源的前世今生

2014 年 Linus Torvalds 在德国出席 LinuxCon

1991 年 8 月,默默无闻的大学生 Linus Torvalds 宣布了 Linux 项目,并加入 GPL 协议。因为 BSD 移植到 386 的项目在 1992 年才下线,所以 Torvalds 并不知道这个项目。他曾亲自表示,如果自己早知道,就一定会加入 BSD 移植 386 的那个项目。不过即便 Torvalds 宣布了 Linux 项目,但是这个开源的内核太弱小,GNU 也没有壮大起来。人们的热点还是停留在 Unix 如何复兴上面。

就这样又过了两年,1993 年到 1994 年,互联网大爆发!随着互联网的兴起,GNU、Linux、开源 BSD 项目才真正被整个 Unix 世界的人们所了解。但不幸的是,对 BSD 的支持者来说,AT&T 对 BSDI(赞助 Jolitz 移植 BSD 的创业公司)的诉讼消耗了大量时间(相当长的时间,而且对 BSD 的毁灭是灾难性的,甚至伯克利的计算机科学研究组都在 1992~1994 年间被关闭了),这使得 BSD 的主要开发者转向了 Linux,大部分原来贡献 Unix 的黑客也开始转向 Linux。这对 Linux 的开发无疑是重要的生命注入,要知道转向 Linux 的这些开发者,那才是远超越当时的 Torvalds 的技术水平的人们。可以毫不夸张地说,他们转向哪里,哪里就有操作系统,束缚他们的只是商业协议而已。

前事不忘,后事之师,唠唠开源的前世今生

一直以来,主要反对 GNU 的不是以微软为首的商业软件体系,而是 BSD 等其它开源协议拥护者。他们并不认同甚至反感 GPL 协议。BSD 认为自己的协议比 GPL 更自由,GPL 反而是具有传染性的毒瘤。而 Stallman 又是个极致的“自由”崇拜者,他反对所有的私有软件,认为其系统上只能有“自由”软件,不能有不遵守 GPL 协议的“蛀虫”。这一点在思想上很大程度上不受传统 Unix 文化影响下的人们的支持,他们反而喜欢类似 BSD 的方式。Torvalds 在这一点上很聪明,他巧妙穿梭在 GPL 协议和反 GPL 协议之间。他利用 GNU 的软件集搭建 Linux 内核,用 GPL 协议保护自己的成果,但是拒绝认同 Stallman 的思想体系。他曾多次明确表示,自己认为自由软件非常好,但是他也用专有软件,他希望自己的内核上既可以跑自由软件,也可以跑专有软件,选择权交给用户。这样的观念平衡了两方的人,大家都愿意在 Linux 上开发贡献。

其实 Richard Stallman 只是固执了些,他作为一个大师级别的程序员,已经接近了“思想者”的地步,他们这样的人有自己独到的思想体系是非常正常的。就像中国古代百家争鸣时代的一大批哲学家思想家一样,一个人的能力高到一定地步,就开始创立思想体系。但是,作为计算机行业,实用主义还是最受欢迎的。

后来,Linux 抱到 Apache 服务器的大腿,开始一发不可收拾地发展起来。迅速成长为替代 Unix 的存在,受到各大厂商、开发者、使用者的多方支持。

其实仔细想想,Unix 文化从未离我们而去。它只是饶了一圈,在商业化的道路上消亡殆尽后,伴随着互联网的兴起,以另一种开源的形式重新出现,汇聚在它身边的还是以前那些抱着相同理想的黑客们(或他们的继任者们)。同时,Unix 的没落也告诉了我们,距离开源越近,越能得到好的发展。任何试图将 Unix 私有化的企业都逐渐消亡了。回归开源道路的 Unix 文化,才是如今发下去的动力。这是几十年下来,这些老黑客和他们的继任者们,在历尽挫折与失败后共同总结的经验,为此他们还形成了各种思想体系(开源协议)。尽管协议有不同,思想也有不同,但是相同点都是“开源”。

💡 另一个教训其实就是:别太自视清高。Unix 和很多厂商一直专注于大型机市场,认为廉价粗制的 Intel 芯片都是上不了台面的。最后一次次被打脸,甚至还让微软凭借并不出众的技术就抢到了个人桌面计算机的主导权。

本文转载自@醉卧沙场的知乎回答,已获得原作者授权 https://www.zhihu.com/question/33573424/answer/777462141


前事不忘,后事之师,唠唠开源的前世今生

Zilliz 以重新定义数据科学为愿景,致力于打造一家全球领先的开源技术创新公司,并通过开源和云原生解决方案为企业解锁非结构化数据的隐藏价值。

Zilliz 构建了 Milvus 向量数据库,以加快下一代数据平台的发展。Milvus 数据库是 LF AI & Data 基金会的毕业项目,能够管理大量非结构化数据集,在新药发现、推荐系统、聊天机器人等方面具有广泛的应用。

解锁更多应用场景

前事不忘,后事之师,唠唠开源的前世今生文章来源地址https://www.toymoban.com/news/detail-454568.html

到了这里,关于前事不忘,后事之师,唠唠开源的前世今生的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 评测凯迪仕K70「千里眼」智能锁:不忘安全初心,便捷体验更上一层

    能打败凯迪仕的,只有它自己。这是我们在体验过凯迪仕最新旗舰产品K70「千里眼」智能锁之后的感受。作为凯迪仕2023年最新旗舰机型,K70「千里眼」智能锁在配置上可以说是「机皇」般的存在。3K超高清智能锁猫眼、车规级24GHz雷达、大小双屏设计、三方可视对讲,以及各

    2024年02月12日
    浏览(39)
  • 开源软件介绍——开源基金会和开源许可证

     我是荔园微风,作为一名在IT界整整25年的老兵,今天我们来看一看世界范围内知名的开源基金会和开源许可证。 基金会是开源生态中的一个重要组成部分,用于资金的筹集与开源项目的前期资助与后期的发展。这里将介绍部分重要基金会,供大家深人学习与借鉴。 云原生

    2024年02月09日
    浏览(177)
  • 龙蜥社区「人人都可以参与开源」——体验开源成为“开源人“

    在追求技术的路上少不了分享与合作,面对难解的问题可以从别人的分享中获取撬动壁垒的杠杆,开源是每一位技术人员在提升自我中不可或缺的。近来,我有机会认识到了 龙蜥社区 并在这个开放式的平台里我通过一次开源任务的学习体验到了成为 \\\"开源人\\\" 快乐。 龙蜥社区

    2024年04月11日
    浏览(44)
  • 【开源与项目实战:开源实战】79 | 开源实战二(中):从Unix开源开发学习应对大型复杂项目开发

    我们知道,项目越复杂、代码量越多、参与开发人员越多、开发维护时间越长,我们就越是要重视代码质量。代码质量下降会导致项目研发困难重重,比如:开发效率低,招了很多人,天天加班,出活却不多;线上 bug 频发,查找 bug 困难,领导发飙,中层束手无策,工程师抱

    2024年02月11日
    浏览(57)
  • 1.3、开源软件、开源协议

    关注公众号 “融码一生”,领取全套 PDF / 电子书 Linux 是一款开源软件,可以随意浏览和修改它的源代码。Linux 本身就是开源精神的受益者,它几乎是全球最大的开源软件。 开源软件就是把软件程序与源代码文件一起打包提供给用户,用户既可以不受限制地使用该软件的全部

    2024年04月27日
    浏览(44)
  • 开源创新 协同融合|2023 开放原子全球开源峰会开源协作平台分论坛即将启幕

    由开放原子开源基金会主办,阿里云、CSDN 等单位共同承办的开源协作平台分论坛即将于 6 月 12 日上午在北京经开区北人亦创国际会展中心隆重召开。 作为 2023 开放原子全球开源峰会的重要组成部分,开源协作平台分论坛将聚焦于开源代码平台的创新功能、用户体验以及核心

    2024年02月07日
    浏览(62)
  • 【开源威胁情报挖掘1】引言 + 开源威胁情报挖掘框架 + 开源威胁情报采集与识别提取

    目前计划在 网络安全领域的开源威胁情报挖掘 展开进一步实验和论文写作,欢迎交流。 本文基于2022年1月《信息安全学报》崔琳等老师的论文 基于开源信息平台的威胁情报挖掘综述 进行梳理了解。 该论文为我们提供了一个全面的开源威胁情报挖掘框架,涵盖了该领域的关

    2024年02月03日
    浏览(45)
  • 我的开源项目与开源经历分享

    大家好,我是一位93年的前端开发者,最近开源了一款基于Fabric.js + Vue3 开发的Web图形编辑器,它是一个 可以自定义设计模板、设计素材,让开发者快捷的开发出一个图片编辑应用 ,类似稿定设计、创客贴设计这样的工具。 这篇笔记的两个目的: 介绍开源项目,如果有类似

    2024年02月03日
    浏览(58)
  • 2022电赛小车开源代码讲解开源

    2022电赛小车我认为有主要是几个主要的问题,我将分这几个部分来讲解 目录 一、循迹 二、蓝牙通信,双车数据传输 三、起始路口的识别 四、分叉路口的识别 五、源码  2022电赛,双车稳定行驶_哔哩哔哩_bilibili 循迹我们组用的是五路灰度,灰度跟红外对管的作用是差不多的

    2024年02月09日
    浏览(43)
  • 开源软件介绍——国内和国际主要开源社区

    我是荔园微风,作为一名在IT界整整25年的老兵,今天我们来看一看国内和国际上有哪些主要开源社区。 开源社区又称为开放源代码社区,一般由拥有共同兴趣爱好的人组成。根据相应的开源软件许可证协议公布软件源代码的网络平台,同时也为网络成员提供一个自由学习和

    2024年02月10日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包