导读 | “如果当时我真的知道从头建立一个操作系统的难度,肯定是不会有勇气去做的。”1991年8月25日,随着林纳斯·托瓦兹(Linus Torvalds)这句“天真”的描述,Linux系统正式与世人见面了。25岁的Linux,它的开源却源自“自私”。然而自私的他,却被追崇了25年,还被“强硬”的绑架到了别的设备上,甚又可恶的将其送入了太空! |
目前Linux官方的吉祥物 Tux
说是“天真”,并非贬低,只是从现在来看,当年的林纳斯·托瓦兹真的太过于天真的低估了这个自己课余做出的东西。
因为Linux在随后的发展中逐步壮大,所涉范围小到掌中设备,大到探索宇宙,远非超他当年所想象的广泛。
如果爱范儿说Linux是为了“自私”目的诞生的产物,想必很多人都会先嗤之以鼻。但其实Linux诞生之初,确实只是为了满足个人需求。
那一年的林纳斯·托瓦兹只有22岁,在芬兰赫尔辛基大学学习电脑。在学习中,他为了方便访问大学内的Unix服务器,针对自己手中设备随手写了一个程序,但直到程序写的差不多的时候,林纳斯才发现他写了一个操作系统内核。在后来IEEE Spectrum的一次专访中林纳斯坦言当年的自己真的是初生牛犊不怕虎:
如果当时我真的知道从头建立一个操作系统的难度,肯定是不会有勇气去做的。
Linux之父林纳斯·托瓦兹
这种年少无知也让我从一开始就没有按照前人的老路编程编写内核。但是,爱范儿想说的“自私目的”并不是指林纳斯为自己需要开发这事,而是指Linux的开源。
所周知的Linux是一个开源系统(虽然并非所有Linux发行版都开源),而Linux的成功很大程度上是依靠开源社区为其提供的源源不断的代码支持,使其从当年一个人的“小项目”日益壮大起来。而之所以Linux能够获得这些资源,其实全依靠Linux采用的授权协议——GPL。
GPL全称GNU通用公共许可协议(GNU General Public License),自由软件许可协议条款之一,该协议最大的特点(也是最大的非议)就是,任何使用GPL程序的演绎作品也要在GPL之下。简单来说就是,任何使用了GPL程序代码的程序都需要以GPL授权来开放代码,一份代码就有可能引发无数的程序成为GPL,并且继续扩散。
因为这一特性GPL获得了“传染病”的评价,并且有不少公司对这一协议表示反感。比如微软前任CEO鲍尔默,他曾在2001年公开评价使用GPL的Linux为“癌症”,其根本原因就是GPL协议。之所以鲍尔默这样评价,是因为在GPL协议下发布的Linux内核,任何使用涉及GPL协议代码的再开发项目,都需要将代码重新以GPL返回给开源社区。
而除了微软之外,很多企业和公司,尤其是硬件厂商也都对Linux这种GPL十分头疼,因为涉及到开源驱动,出于商业保密等原因,在提供支持的时候十分小心,甚至消极应对。比如Nvidia就一直不对Linux提供最新技术的驱动支持,并直接表示过不会像Linux提供和其他OS等级的支持,因为这会使得公司一直保密的技术信息暴露在所有人面前。而对于这一现象,Linux之父林纳斯在一次芬兰的采访中直接以“国际手势”🖕🏻回应,并表示Nvidia是他这辈子工作生涯中处理过的“最糟糕的故障”。
对于Linux开源所带来的非议,林纳斯可能是早有预料的。在一次和BBC的采访中林纳斯谈及,他所认为的开源真正的特色是让人人能“自私”。开源不是虚伪的“让我们围着篝火唱歌,使这个世界变得更美好”。如果每人都能为他们“自私”的原因而作出贡献,开源才能成功。
林纳斯以自己来举例,他热爱编程并希望学习如何控制硬件,而这就是他的“自私”目的。这里的“自私”并非是指利益回报,并且很多人都有这种想法,担心自己的努力白白被他人利用。所以林纳斯使用GPLv2许可证解决了这一问题,这种类似“一报还一报”的模式,在享受别人成果的同时,也承诺回报成果。
林纳斯认为GPL是一种公平的许可证。连接未来的路上前行,Linux能够发展到今天的程度绝对是当年林纳斯没有想到的。在手机中,在路由器里,在服务器云端,在股票交易大厅,甚至连太空的卫星都有Linux的身影。Linux在以不同的形式应用在不同行业,不同领域。
而在未来,Linux除了应用到更多的领域,还将更强大、专业。根据Linux基金会公布的数据,越来越多的企业开发者在贡献代码。根据最新的数据,志愿者贡献的代码比例低至7.7%,余下的代码都是由企业开发者贡献的,其中Intel以12.9%占据榜单第一。
然而当有人问林纳斯Linux未来会如何时,林纳斯似乎并不想考虑太过遥远的事情。林纳斯表示思考未来这事让那群空想家去考虑好了,他只想脚踏实地的当一个程序员,尝试做到“可以做到的最好的效果”。
原文来自:
本文地址://lrxjmw.cn/linux-25-selfish.html编辑:苏西云,审核员:王辉
本文原创地址://lrxjmw.cn/linux-25-selfish.html编辑:public,审核员:暂无