阅读更多

6顶
0踩

互联网

原创新闻 Linux 25周年:与创始人Linus Torvalds对话

2016-04-18 10:59 by 副主编 mengyidan1988 评论(3) 有6388人浏览
原文:Linux at 25: Q&A With Linus Torvalds
作者: Stephen Cass
译者: 孙薇
责编: 钱曙光

早在1991年还在芬兰赫尔辛基大学就读时,Linus Torvalds便创建出了最初的Linux操作系统内核。之后这个小小的内核很快发展成了一个功能全面的操作系统,可以运行在智能手机与服务器上,还有各种各样的小工具上。本文是一篇电子邮件访谈记录,文中Torvalds回顾了过去25年来Linux的影响,并展望了未来25年可能出现的变化。



Stephen Cass(记者,以下简称S):如今在程序开发上,你已经比25年前拥有了更多的经验,有什么想要告诫当年的自己呢?

Linus Torvalds(以下简称L): 实际上我是这样认为的:关于Linux的成功我并不敢居功,有很多事情我当时并不了解,如果一开始我就知道的话,也绝不敢动手编写自己的操作系统:需要一些天真无畏的勇气,才敢以为自己能做得到。我深信这是动手开始一个项目,并最终获得成功所需要的特质。虽然对项目可能的发展范围缺乏概念,但更因此才不会有先入为主的想法,而对项目的发展强加干涉。

我相信,正是因为我不清楚未来能有怎样的发展,也许才会对他人的建议和影响抱着更开放的态度。如果我本来就对想要完成的目标有着奇思妙想,说不定就不会有这么开放的态度了。在我看来,这种坦诚的态度让别人更愿意、也更容易参与到这个项目中来。人们不会为了别人的愿景而买单,却会为了他们自己的愿景而努力。在我看来,正是这种想法激励着很多人在Linux上作出贡献。

S:在Linux的发展中,是否有某个早期的技术决策是你现在希望改变的?

L: 糟糕的技术决策什么的,都是你随时可以抹消的东西。没错,尽管当时很令人沮丧,也显然完全是浪费时间和精力,但往往到了最后,这些教训都不算真正地浪费时间:采用错误的决策总有些原因,而认识到错误则会让你学到经验。我并不是说错误其实是好事,正确的决策永远比错误的要好——但我不会特别担心选择的问题,我宁愿先做下决策,哪怕以后发现这个决策是错的,也比浪费太多时间来讨论可能的选择要好。

在2001年左右,众所周知我们曾在Linux的虚拟内存子系统支持方面遇到了非常糟糕的状况。当时状况糟透了,大家对于该选择哪个方向产生了剧烈的争议,同时在某些内存的配置上也存在很大的问题。本该到“稳定”阶段了,系统中却有大量的内容消失,导致大家都很沮丧。

现在再来回顾,问题最终还是解决了,虽然那段时间就像地狱一样,所有人都痛苦不堪。如果不用在开发中期执行这类的重大修改肯定会更好一些,但这件事也并未造就灾难性的后果。

S: 随着Linux迅速发展,从单打独斗到成为群体中的一员,对你个人而言有什么变化?

L: 对我来讲实际上有两个明显的改变:其中一个是在很早的时候(1992年)发生的——我开始使用其他开发者所提供的补丁,而不再总是自己重写了。第二个变化发生在后来,当“自行编写所有要使用的补丁”已经成为了巨大的障碍,我必须学着信任所有那些帮忙维护的人员。

第一点要容易得多:由于在编写Linux内核时,大约前半年我完全都是独立开发的,一开始大家给我发送补丁的时候,我还不习惯直接使用。因此我会一一看过,确定作者的意图,然后自己再写一次。有时候跟他们写的差不多,有时候则完全不同。

但很快我无法再继续这样做了。用了没多久,在我开始对某些人产生信任之后,会直接在Linux上应用他们的补丁,而不再基于他们的理念而重新编写了,虽然最终往往还是会作些改动。这些年来,我已经非常擅长阅读与编辑补丁了,连在睡梦里都能做好。而这些年来,这种模式也一直运作良好。

但正是由于“应用别人的补丁”这种模式多年来一直运作良好,已经让我非常习惯,想要改变就更加困难。大约在2000年左右,内核的开发获得了巨大的成长(那时Linux开始显现出商业方面的潜质)。人们开始抱怨我的工作流程对整个开发造成了障碍,并抱怨Linux缺乏可扩展性,但我们缺乏优秀的源码管理工具来解决这些问题。

最终我们采用了BitKeeper作为源代码维护工具。这个名字更让人记忆深刻的是几年后关于授权中止的喧闹纷争,不过它的确很适合这项任务,而且教会了我(以及内核社区的至少一部分人)该如何控制管理源码,以及当我并非唯一的同步点时,如何在更具分布特性的开发模型中执行协作。

当然,我学到的分布式源码控制管理方法造就了2005年出现的Git。虽然Git显然已成为源代码控制方面的成功典范,但当年正是BitKeeper让大家了解到了分布式源码控制的优势。在2000年左右,关于内核的痛苦经历最终给我们好好地上了一课,不过当时确实很痛苦。

S: 还有什么其他项目就像分布式源码控制一样,让你有冲动想要掌握么?

L: 没有,我确实不希望再有这样的项目了。我所有的大项目都来自于这样的经历:“可恶,没人帮我做这个”。如果有人能帮我解决问题,我会更高兴无需再花力气自己解决了。我宁愿坐在沙滩上的遮阳伞下,啜饮着时兴的饮料,而不是自己去解决问题。

好吧,我在撒谎,几天后我感到非常无聊。我真高兴自己还有Linux,因为它确实很有趣,很能激发思考,不过与此同时,创建一个新项目确实是非常令人沮丧的做法。

S: 在你看来,Linux为什么从未在主流台式机上占领重要的席位?

L: 我们还在努力,我认为Chromebook笔记本实际上做得相当不错,即便它只是一个相当有限的桌面环境,并非完全传统式的Linux工作站模式。

至于为什么台式机如此难啃,原因很多,但最大的原因很简单,就是用户的惯性问题。在计算机世界,台式机非常独特,它是非常私人的东西——如果你使用电脑的话,每天都会与其进行相当亲密地交互;同时台式机在很多方面都具有其他计算环境所不具有的复杂性。

看看你的智能手机,这也是一个相当具有亲密度的计算设备,与人们密切相关(而在这一点上,多亏了安卓,让Linux有出色的表现)。台式机在各方面都更为复杂,遗留的负担也更重,所以这个市场很难进入。人们在使用手机时习惯了特定应用和流程,很多人也会尝试更换操作系统,不过安装不同操作系统的人还是比使用预装系统的人要少得多,而这一点在台式机上更加凸显。

同时,我认为这个市场很重要,尽管在某种程度上来说,整个“通用桌面”的市场似乎都正在衰落。更专业的东西就越简单,因此平台承担了很多任务:包括智能手机、平板电脑以及Chrome笔记本都代表着羽翼尚未丰满的通用环境。

S: Linux的什么用途最让你感到惊讶?

L: 最近没有太多,因为我觉得Linux已经成为设计新硬件或服务模型的默认环境了。如果你有些奇怪的专用设备,或者正在创建某些新的互联网基础设施什么的,要想不用Linux的话几乎让人无法理解。

不过那些“奇怪的”使用领域经常会让我感到惊讶,让我觉得Linux似乎还是那个工作站和服务器操作系统。在一些早期的Linux商务会议上,当人们炫耀鼓风机或电冰箱运行Linux时,我都会佩服地五体投体。在第一台TiVo出现时,它能运行Linux还有“可以重播电视的直播节目”都让人非常有兴趣。

S: 目前Linux所面临的最大挑战是什么?

L: 实际上内核运行地很好,人们还在担心太复杂会影响理解或者bug修复,这种担忧可以理解,但与此同时,我们也网罗到了很多聪明人。系统变得越来越大,越来越复杂,又有很多人依赖着它,使得我们必须得设置很多流程。接受巨大而具有侵略性的改变是很有挑战性的,因此我不会认为这是惬意的事情,不过在我看来,内核开发的很不错,很多其他的开源项目都很想要我们这样的资源。

即便如此,我们总能遇到这样的挑战:内核中总有过多的硬件。我们支持很多不同的硬件,几乎可以确定要比其他操作系统支持的都要多,但每天都有新的硬件出现。特别是硬件平台开发时间通常较短的嵌入式领域(在中国只用1、2个月就能转过头来创建一个全新的手机平台),想要尝试在这样的环境中工作非常艰难。好消息是,有很多硬件厂商都在帮忙,过去并非如此。

S: 现在你对什么技术发展趋势有兴趣?有哪些会让你感到失望?

L: 我一直对新的核心硬件很感兴趣,特别是CPU之类的。这也是我一开始做自己操作系统的原因,现在我还是对新的平台很有兴趣。当然,大多数时候只需要在现有的硬件上做些微调,而且我深信这就是技术发展应当朝向的方向。不过在这些事情上,我还是倾向于继续跟进追踪。

从更大的层面来讲,虽然我个人并未介入这个领域,但能够看到人工智能(AI)最终如何实现会很有趣。AI曾经属于那种“还得二十年之后才能实现”的技术,到了现在它还是“需要二十年才能实现”的技术。对于过去人们经常使用的“基于规则的模型”,我没有太深刻的印象。

现在,终于神经网络也开始发展了,我觉得这一点很有趣。虽然这并非是我所致力的领域,也不算是我希望投身的领域,但确实很有吸引力。与那些疯狂的LISP和Prolog语言不同,我们都知道递归神经网络是作用于本质的。对于真正的AI开始出现这件事,我完全不会感到沮丧,有些人会,但我完全不会。

S: 根据你的看法,在50周年时Linux能否依旧保持活跃呢?你所梦想的操作系统是什么样子的?

L: 我不怎么擅长预测,我本人只是一个缺乏想象力、很乏味的工程师罢了,总是尝试着眼于现实基础。关于预测这件事,还是让别人来做好了,无论5年、10年还是25年——我认为,只要我们继续追踪所有小的的日常细节,并尽力而为做到最好就可以了。

如果这个世界发生了巨大的改变,25年之后从根本上全然不同的话,也许会更有意思。不过,如今操作系统的很多根本的问题,与60年前人们刚有真正的操作系统时所存在的问题完全相同。据我猜测,未来计算机所发生的变化说不定还比不上在过去50年中的变化呢,硬件和软件开发人员只是学到了哪些能够运行,哪些不能。

当然,神经网络等等技术会改变世界,但它们有一部分特质就是无需“编程”,他们是自学习的,也是逻辑模糊的。我几乎能够肯定:因为这个原因,它们无法取代传统的计算模型,人们想要更智能的机器,但也需要能完全按照指令工作的机器。因此我们目前的“旧式”风格计算方式不会消失,而只会得到增强。
  • 大小: 88.6 KB
6
0
评论 共 3 条 请登录后发表评论
3 楼 wangviviying 2016-08-03 13:54
.。。
2 楼 mack 2016-07-26 16:40
谢谢大师分享,大师很实在,重于执行。。
1 楼 pengfaliu 2016-07-16 11:43
很有想法~加油,linux。

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • linux0.01 源代码(Linux的创始人Linus Torvalds写的)

    Linux最原始版本的源代码,有兴趣做开源、有兴趣研究操作系统的一定要看看。

  • 探寻Linux背后的“美丽心灵”——Linux创始人Linus Torvalds访谈录

    【CSDN编者按】Linux之父Linus Torvalds,一生只为寻找欢笑,以“I do code for fun”为人生信条,从未停止过前进的步伐,其...在TED「梦想」主题下,Linus应邀与TED策划人Chris Anderson进行了对话,分享了Linux背...

  • Linux创始人Linus Torvalds访谈,Git的十年之旅

    在这十周年之际,Linux创始人Linus Torvalds为我们分享了Git幕后的故事,并且告诉我们这个工程队软件开发的影响。你会发现他在这个故事背后的评论。我们跟随Q&A追寻Git的轨迹。 为什么要创建Git? ...

  • Linux的缔造者Linus Torvalds.pdf

    Linux的缔造者Linus Torvalds.pdf

  • Linus torvalds本人念[Linux]的发音

    Linus torvalds本人念[Linux]的发音,包括英语和瑞典语。

  • 链表好味道:Linus Torvalds的链表论据证明味道很好

    链表好味道:Linus Torvalds的链表论据证明味道很好

  • Linux程序员语录,Linux和Git之父 Linus Torvalds 的那些经典语录

    Linux和Git之父Linus Torvalds曾说过这样一段话:“Bad programmers worry about the code. Good programmers worry about data structures and their relationships.” (低水平程序员总在考虑代码,高水平程序员总...

  • linus 用的linux版本,Linus Torvalds的重大消息

    Linux创始人LinusTorvalds在内核邮件列表上宣布正式释出LinuxKernel4.9,这个版本被称为时尚改进最大的版本,同时4.10合并窗口已经开启。但值得注意的是,为期两周的合并窗口预计将在圣诞节这天关闭,因为假期的原因...

  • 【IT资讯】Linus Torvalds:我们都老了,但Linux维护真的很难找

    在本周召开的Linux开源峰会与嵌入式大会上, VMware的首席开放源代码官Dirk Hohndel和Linux的创建者Linus Torvalds再次就Linux开发展开了远程对话讨论。 讨论很快就涉及到了一个令人不安的问题:那就是在目前这一代...

  • Linus Torvalds:最庆幸的是 30 年后,Linux 不是一个“死”项目

    Linus 谈 Linux 现状

  • Linux之父Linus Torvalds自传中文版

    今年45岁的芬兰人Linus Torvalds是Linux操作系统的创始人。他于1991年创建的Linux操作系统,不断获得互联网上众多自愿者“程序员”的支持,经过十几年的发展,如今已经成为云时代数据中心的首选操作系统!

  • Linux 之父:林纳斯·托瓦兹(Linus Torvalds)

    林纳斯目前受聘于开放源代码开发实验室(OSDL,Open Source Development Labs),全身心的开发Linux内核。 主要成就 ...”美国《时代》周刊对“Linux之父”林纳斯·托瓦兹(Linus Torvalds)给出了极...

  • Linux 之父 LinusTorvalds 喊话:Rust 即将出现在 Linux 内核中

    LinusTorvalds和DirkHohndel在开源峰会上的常规演讲/对话中,Linus评论了内核中的Rust编程语言代码。他们希望很快能将Rust编写的代码合并到内核中,甚至Rust可能出现在下一个版本中,即Linux5.20。...

  • linux创始人linus写的一份早期介绍linux内核文章(珍贵)

    linux创始人linus写的一份早期介绍linux内核文章,不大好找了。

  • Linux 30年专访:Linus Torvalds谈Linux内核开发与Git

    作者 | Jeremy Andrews译者 | 火火酱,责编 | Carol出品 | CSDN(ID:CSDNnews)三十年前,当Linus Torvalds(林纳斯·托瓦兹,下文统称L...

  • linus torvalds 的自传

    linus torvalds 的自传体的一本书, 每一个linux的爱好者都应该好好看看

  • Linus Torvalds:我们都老了,但Linux维护者真的很难找

    Linux 之父Linus Torvalds非常担忧没人继续维护内核「真的很难找到维护者!」在本周召开的Linux开源峰会与嵌入式大会上, VMware的首席开放源代码官Dirk Ho...

  • Google已经推出了Google VR SDK,

    VR(Virtual Reality)即虚拟现实,是一种可以创建和体验虚拟世界的计算机技术。它利用计算机生成一种模拟环境,是一种多源信息融合的、交互式的三维动态视景和实体行为的系统仿真,使用户沉浸到该环境中。VR技术通过模拟人的视觉、听觉、触觉等感觉器官功能,使人能够沉浸在计算机生成的虚拟境界中,并能够通过语言、手势等自然的方式与之进行实时交互,创建了一种适人化的多维信息空间。 VR技术具有以下主要特点: 沉浸感:用户感到作为主角存在于模拟环境中的真实程度。理想的模拟环境应该使用户难以分辨真假,使用户全身心地投入到计算机创建的三维虚拟环境中,该环境中的一切看上去是真的,听上去是真的,动起来是真的,甚至闻起来、尝起来等一切感觉都是真的,如同在现实世界中的感觉一样。 交互性:用户对模拟环境内物体的可操作程度和从环境得到反馈的自然程度(包括实时性)。例如,用户可以用手去直接抓取模拟环境中虚拟的物体,这时手有握着东西的感觉,并可以感觉物体的重量,视野中被抓的物体也能立刻随着手的移动而移动。 构想性:也称想象性,指用户沉浸在多维信息空间中,依靠自己的感知和认知能力获取知识,发挥主观能动性,寻求解答,形成新的概念。此概念不仅是指观念上或语言上的创意,而且可以是指对某些客观存在事物的创造性设想和安排。 VR技术可以应用于各个领域,如游戏、娱乐、教育、医疗、军事、房地产、工业仿真等。随着VR技术的不断发展,它正在改变人们的生活和工作方式,为人们带来全新的体验。

  • 基于51单片机的自动循迹、蓝牙遥控,超声波避障的智能小车+全部资料+详细文档(高分项目).zip

    【资源说明】 基于51单片机的自动循迹、蓝牙遥控,超声波避障的智能小车+全部资料+详细文档(高分项目).zip基于51单片机的自动循迹、蓝牙遥控,超声波避障的智能小车+全部资料+详细文档(高分项目).zip基于51单片机的自动循迹、蓝牙遥控,超声波避障的智能小车+全部资料+详细文档(高分项目).zip 【备注】 1、该项目是个人高分项目源码,已获导师指导认可通过,答辩评审分达到95分 2、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 3、本项目适合计算机相关专业(人工智能、通信工程、自动化、电子信息、物联网等)的在校学生、老师或者企业员工下载使用,也可作为毕业设计、课程设计、作业、项目初期立项演示等,当然也适合小白学习进阶。 4、如果基础还行,可以在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!

Global site tag (gtag.js) - Google Analytics