比约恩·埃克沃尔访谈
欢迎来到Linux Journal的Linux内核名人录的未删节版本。如果您尚未看过我们2000年6月号,其中收录了40位内核先驱(如Lars Wirzenius、Pauline Middlelink,当然还有Linus Torvalds等黑客)的简介,请务必从您最近的报摊或最近的Linux Journal网站获取一份。如果您已经阅读过这些简介,那么我们发送给Linux内核的每位主要贡献者的原始访谈的未删节版本可能会揭示一些惊喜和更多细节。
在接下来的几周内,我们将在Linux Journal网站上发布原始访谈。所以,请坐下来,欣赏一下一些帮助Linux成为可能的人们的心声!
--David Penn
Linux Journal: 您最初是如何了解Linux的?那时您在生活中做什么?
Bjorn Ekwall: 从前,很久很久以前,在黑暗时代(即 20 世纪 70 年代末),我开始在大学担任联合系统管理员时使用 UNIX。我非常喜欢这个概念,以至于我决定我绝对想要自己在家便宜地拥有这样一个系统。
当时可用的 Apple 和 PC 只是玩具,而名为 MS-DOS 的 CP/M 副本根本不是我想要的;“丑陋的黑客”是我当时的反应,现在也是如此(即使它被称为 MS-Windows)。
当时我也是一家从 SwTPC(基于 6800、6809 和 68000)进口计算机套件的公司的合伙人。老实说,这可能也让我对这些“新奇的暴发户”产生了偏见...
我追求的是质量,而不是轻松赚钱。我天真地认为,如果你专注于质量,钱会找到你,即使时间滞后可能有时会很长。到目前为止,这个计划进展得还算顺利...
我在 20 世纪 80 年代中期获得了博士学位离开了大学,转而全职担任“UNIX 专家”。可用的专有 Unix 缺乏我从一开始就学会热爱的自由(和源代码)。所以,在我的业余时间(哈!),我继续收集和构建我需要的零件,以实现我的目标:我自己的 UNIX 机器,拥有完整的源代码。
一项艰巨的任务和极少的可用时间导致进展缓慢...
我知道 Minix,但对我来说,它太小了,无法放弃我自己的工作。我也不太喜欢这个许可证。在 1992 年末,我像往常一样花了一些时间浏览 Usenet 新闻组 comp.sources.unix 中的帖子。在一条评论/跟进中,我第一次看到有人提到“Linux”,我开始搜索更多信息。在 ftp-mail 的大力帮助下,我最终下载了早期 Slackware 发行版的软盘映像。我想它使用的是 0.99.3 内核。
它拥有所有源代码!它甚至拥有 X11!它完美地装进了我的新 386SX/25 笔记本电脑,配备 5MB 内存!它非常接近 UNIX,以至于我完全屈服了!
LJ: 您个人对 Linux 的哪个部分感兴趣并致力于此?您目前还参与 Linux 开发吗?
Bjorn: 我已经拥有了自己的商业 UNIX 系统(Motorola 68k VME 上的 System/V.3),所以我绝对想将我的新 Linux 机器与它联网。问题:笔记本电脑中没有网络卡的空间,而且 PCMCIA 几乎还没有发明出来。唯一可能可用的网络是通过连接到并行端口的“加密狗”适配器。
所以,我买了一个 D-Link DE-600。当然,它没有 Linux 驱动程序,所以我自己构建了一个。
当我试图理解 DE-600 的内部工作原理时,我得到了 Russel Nelson 发布的 Crynwr 数据包驱动程序(DOS 汇编程序)的良好帮助。让我告诉你,当您只有一台配备 5MB 内存的 386SX/25 时,思考、编辑、内核编译、重启、测试/崩溃、重启这个循环需要大量的耐心(和时间!)。我想我至少经历了那个循环一百次。大多数人会称之为疯狂。我只是认为自己很固执。
当驱动程序处于我认为其他人也可以使用的状态时,而不仅仅是我自己,我将其发布在 tsx11 上。此后不久,当时的常驻“网络主管”Fred van Kempen 将其包含在官方内核中。可能是 0.99.5 左右的内核。然后电子邮件真的开始涌入。大多数评论员都很高兴,有些人遇到了问题。我修复了这些问题。有些人购买了 Xircom 并行端口适配器,并要求我也为它编写驱动程序。没有关于它是如何工作的信息。甚至 Russ Nelson 也未能让 Xircom 改变主意。所以我没有。然后,有些人开始给我发邮件,告诉我一个新的 D-Link 适配器:DE-620。它更有钱,而且比旧的 DE-600“性感”得多。
我想:好吧,这似乎是一个很大的改进,而且价格也在可接受的范围内……而且 D-Link 以前发布过适配器信息。但我真的想再进行几百次 思考、编辑、内核编译、重启、测试/崩溃、重启 的循环吗?不,我不想。
然后闪电击中了我的房子,烧毁了我的大部分网络设备。好吧,我收到消息了!
所以,我买了一个 D-Link DE-620。当然,它没有 Linux 驱动程序 &$151;。所以我决定再次构建一个。我间接地从 D-Link 获得了一些关于 DE-620 的信息,形式是 DOS 数据包驱动程序的开头。用汇编程序编写。因为我真的非常懒,所以我试图找到一种缩短开发周期的方法。Linux 内核现在初步支持内核可加载模块。我认为它最初是为了支持 ftape 而放在那里的,我决定为我的新驱动程序尝试这种方法。我很高兴我这样做了。
我在 Linux 内核邮件列表中征求了 alpha/beta 测试人员,并获得了一组非常好的受害者。尤其是 Joshua Kopper 帮助我追逐 D-Link,以获得他们对我为 Linux 发布驱动程序的官方批准。当我们找到合适的人时,就没有任何问题了。啊,那些真是美好的时光!团队均匀地分布在全球各地,总有人醒着进行测试并发送令人愉快的评论。
对内核可加载模块的支持给了我很大的帮助,但我感觉它可以改进和扩展。我添加了一些我认为它缺乏的功能,并开始修改其他网络驱动程序,看看我在内核可加载模块方面的成功是否可以重复。结果是可以的。
我将我的内核补丁和修改后的工具的快照发送给 Linus 征求意见。他回答说将整个软件包与官方内核源代码一起上传到 ftp。嗯;我承认我有点受宠若惊。实际上是非常受宠若惊。
突然,我被提升为官方内核开发人员!
LJ: 对您来说,Linux 最重要的是什么?Linux 最好的地方是什么?
Bjorn: 就我而言,最重要的是 Linux 在接受新想法方面的开放性以及获得快速且高质量反馈的容易程度。“给我看代码!”这一基本规则是关键,因为它约束了那些只有意见而没有解决方案的人。
LJ: GNU 项目有多重要?GNU Hurd 如何影响您的想法?Linux 应该被称为 GNU/Linux 吗?
Bjorn: GNU 项目对我来说一直非常重要,特别是自从它专注于免费提供“真正的 UNIX”工具的实现以来。我关注 Hurd 项目已经很长时间了,但由于我是一个相当务实的人,理论实验对我来说不够有趣。在我看来,Hurd 项目也缺乏 Linux 社区所拥有的开放精神。
我个人的目标是能够访问一个强大的环境,我可以随意修改和添加内容。由于 UNIX(以及 Linux)非常接近我的理想,因此免费提供的 GNU 工具和免费提供的 Linux 内核是一个很好的匹配。有价值的补充是 BSD 工具和 X Window 系统以及随着时间推移独立开发的所有其他好东西。对我来说,Linux 是内核(并且,隐含地,libc 的某些部分)。GNU 是一组免费工具,可在任何合理的 UNIX 内核上运行。
所以 Linux 就是 Linux,GNU 就是 GNU。无需在内核名称中添加 GNU 前缀,因为内核是在 GNU 项目之外开发的。如果 GNU 项目想要使用 Linux 内核,那没关系。RMS(Richard Stallman)确实宣布 GNU 项目的目标是创建一个完整的 UNIX 兼容系统,包括内核。但这并不意味着 GNU 项目垄断了这个想法,并且所有免费内核默认都属于 GNU 项目。
我已经对 RMS 说过,并且曾经得到过明智的回答。
LJ: 在一些计算机名人认为通过互联网组织成功的软件开发即使不是不可能也很困难的时候,通过互联网与他人合作是什么感觉?您是否意识到这种方法有多么革命性?
Bjorn: 我从来没有真正关心过其他人,无论是“名人”还是其他人,对什么是可能的有什么看法。这些人以前已经被证明错了无数次,而且他们还会一次又一次地被证明是错误的。如果您有一个想法,或者您听到其他人有一个想法让您感兴趣,那就去追求它。您唯一可能失去的只是您自己的时间,但即便如此,您也对以前不知道的事情获得了一些了解。
互联网使寻找那些或多或少与您想法相同的人变得容易得多。与这些人一起解决问题和敲定设计所获得的“快感”是巨大的。结果有时也很令人印象深刻。我不确定这是否真的有“革命性”的东西。志同道合的人之间的临时合作一直是开发新事物的强大方法。互联网的“进化”之处在于您可以轻松快速地找到那些其他人,当然,互动比以往任何时候都更快更容易。TCP/IP 绝对比印刷机更快,而且永远会更快。
LJ: 您现在的生活在做什么?您典型的一天是怎样的?您如何抽出时间工作和使用 Linux,以及如何平衡自由软件与谋生需求(或致富愿望)?您有什么爱好?
Bjorn: 我的 Linux 工作甚至在我的商业工作中也产生了很多衍生效应。它也给了我很多有价值的联系。目前(以及可预见的未来)我正在做的很多事情都是基于 Linux 的。自 1996 年以来,我一直在全球各地工作,我将继续这样做。目前,我的主要任务之一是深入参与一家英国的互联网公司。
我尝试将我的其他爱好、旅行和音乐与我的工作结合起来。我通常会全身心地投入到我正在做的事情中,这意味着我的工作日往往很长,我的旅行也是如此 :-)。我确实“有自己的生活”,这绝对包括我的两个女儿,现在分别是 9 岁和 12 岁。我们有很多乐趣(当我不工作的时候)。
LJ: 您认为除了 Linus 之外,谁对 Linux 社区的影响最大,为什么?
Bjorn: 这完全取决于您对“Linux 社区”的定义。如果您谈论的是 Linux 内核,那么有几位关键开发人员具有非常重要的影响力。只需关注 Linux 内核邮件列表一段时间,很快就会看到当前的主要“影响者”集合。这群人与早期有所不同,这正是开放环境应该有的样子。我认为我可以点出几十个,尤其是 Alan Cox,他们对内核开发产生了非常重要的影响。
对于 Linux 社区的扩展定义,不仅仅是内核开发组,重要的贡献者曾经是(现在也是)Matt Welsh 这样的人,他领导了 Linux 文档项目,以及 Eric Raymond,他描述了 Linux 的元项目,即开源集市。我认为这些贡献之所以重要,是因为它们让我们都意识到,除非软件有用且易于理解,否则软件本身没有任何价值。因此,文档是一种开发人员必须思考如何将软件的“洞察力”转移给他人,尤其是用户的方法。
对开源“方法”的描述使开发人员更容易理解与其他开发人员公开交流的重要性和力量。
LJ: 您认为 Linux 为了进一步成功,最需要添加或改变什么?Linux 开发需要朝哪个方向发展?Linux 的未来在哪里最光明?当今 Linux 面临的最大威胁是什么?
Bjorn: Linux 开发需要朝开发人员引导的方向发展。这是一个禅宗式的回答,不是吗?
您甚至不应该尝试预测不受约束的开发人员可以取得什么成就;您几乎总是会错。相反,您几乎总是会感到惊讶和不知所措。Linux 唯一的“威胁”是,如果世界决定不公开交流,特别是如果它停止使用开放协议。即使那样,Linux 也会生存下来,但其扩张速度可能会放缓,至少在短时间内是这样。
LJ: 您对 Linux 目前的普及程度有何看法?您是否希望它一直局限于黑客社区?它能在边缘地带生存下来吗?
Bjorn: 我真的很喜欢基于 Linux 的系统几乎呈指数级的普及,因为好的产品值得成功,人们也值得拥有好的产品。没有这种“爆炸”,Linux 也会生存下来,但这样更有趣...
LJ: 如果没有 IPO 和资金支持,它能生存下来吗?Linux 的商业化产生了什么影响?您如何看待 Linux 的牟取暴利以及那些从他人志愿努力中赚取数百万美元的人?
Bjorn: 只要 Linux 保持开放,我就对人们从 Linux 相关活动中赚钱没有任何问题,而且它会保持开放。“普及爆炸”很可能不会在没有资金支持的情况下发生。“铁杆黑客”会独立于这次爆炸而参与其中,但最终用户不会。
LJ: Linux 如何在桌面领域与 Microsoft 竞争,如果我们不占领桌面,我们还能保住商业领域吗?我们能在不降低 Linux 的精神的情况下占领桌面吗?我们下一个增长和扩张领域将在哪里?
Bjorn: 老实说,我真的不在乎。如果这对其他人很重要,那么他们将确保 Linux 在他们认为重要的任何领域都成为一个强大而有价值的竞争对手。对我来说,这不够重要,无法花费任何大量时间。我只对访问一个满足我需求的环境感兴趣,而我的基于 Linux 的系统确实做到了这一点。如果我的环境中需要全新的东西,那么我会构建它。如果这对其他人有用,那是一个不错的副作用。
LJ: 您对为 Linux 编写的商业应用程序以及一般的专有软件和协议有何看法?您运行 Linux 更多是出于哲学原因还是实际原因?如果出现看起来更好的东西,人们会跳槽吗?反过来,即使 Linux 以某种方式退化、走错了路或停止进步,我们会继续使用 Linux 吗?
Bjorn: 如果人们想创建封闭的专有应用程序,他们应该这样做。如果人们想购买这些应用程序,那么卖家和买家(希望)都会很高兴。我对这没有意见,只要也可以创建开放的替代方案。我会有问题的是,如果有人试图通过创建封闭的专有协议或文件格式来将竞争对手拒之门外并将客户锁定在内,或者通过其他手段作弊,例如为或多或少明显的软件算法申请专利。
就我个人而言,我几乎总是更喜欢开放的替代方案,因为这样我可以学习新事物,尤其是因为我可以在我决定何时以及如何修复问题并扩展功能。我知道我想要什么以及对我的系统有什么期望,只要基于 Linux 的发行版满足我对高质量、开放、UNIX 兼容环境的需求,我就会继续使用。世界其他地方决定做什么对我来说真的没有那么重要。它不会对我的决定产生强烈的影响。
LJ: 您认为社区应该只支持开源/自由软件吗?如果开源方法论的持续成功出现滞后或停顿,社区将如何度过难关?自由软件理念是否足够强大,并且有足够多的拥护者来帮助我们度过难关?
Bjorn: 社区由有权力和责任做出自己选择的个人组成。如果有人想支持封闭软件,就让他们支持。那些有不同想法的人会创建开源软件。由于某种原因,我想到了潘多拉的盒子:一旦打开,就无法再次关闭。因此,除非你取缔互联网和思考过程,否则就无法阻止这种情况。它已经远远超过了临界质量。
LJ: 您对不同的许可证有何看法:GPL、LGPL、QPL 等?
Bjorn: 我承认我并不总是完全赞同 FSF 的“政治”议程,因为我接受某些软件是封闭的和专有的。我的原则是
我要求开放协议、API 和文件格式,因为我想决定什么与什么以及如何通信。
我想要开放工具,因为这样我就可以调整它们来做我想做的事情。
我喜欢开放应用程序,因为这样我就可以修复错误,而无需等待下一个版本。
这意味着我可以接受封闭应用程序,只要它们使用开放协议、API 和文件格式。我对“GPL 病毒”有点矛盾,这意味着我更喜欢库的 LGPL。应该可以将您的“业务优势”转化为应用程序,而无需向所有人透露一切。另一方面,我喜欢通过阅读源代码来学习新事物。
因此,如果有一个我感到非常需要修改的封闭应用程序,并且没有合适的开源等效应用程序,那么我很有可能会花时间重写它。我也很可能会免费提供源代码。我将使用的许可证可能是开源许可证的某种版本。底线是,发布者应该自己决定使用什么许可证。这与其他人无关。
LJ: 电脑之外还有世界吗?您是否曾担心有一天醒来,感觉自己浪费了在电脑前的生活?
Bjorn: 电脑之外绝对有一个世界,我尽量尽可能地享受它。我从来没有感到需要浪费大量时间来后悔我过去的所作所为。我享受了我所做的大部分事情,并从其余的事情中学到了一些有用的东西。
电子邮件:ljeditors@ssc.com