一个被称为UDI(标准驱动接口)的项目目标是在操作系统内核和设备驱动程序之间定义一个单一的的接口。自由软件运动应该对这种理念持什么态度呢?
让我们想象一些操作系统和硬件开发者,都在相同的基础上进行合作,UDI(如果技术上可实现的话)将是一个很好的想法。它将允许我们只需为所有的硬件设备开发一个驱动程序,然后大家都可以共享它。它会促成更高一级的合作。
当我们把这个想法应用到实际社会中时,这里既有寻求合作的自由软件开发者,也有寻求统治的私有软件开发者,后果将非常不同。没有办法使UDI的对自由软件运动有利。它唯一可能的效果就是分化和削弱我们。
如果Linux支持UDI,而且如果我们开始开发用UDI和Linux通讯的新的驱动程序,后果将会是什么?
这只会对Windows使用者有利;而不会对我们这些自由操作系统的使用者有利。当然它也不会直接伤害我们,但是那些遵照GPL的自由驱动程序的开发者们,看到它们被这样使用,将受到打击,而这将是很糟的。这种把驱动程序联系到私有内核的做法也是对GNU GPL的一种侵犯。
这并不会直接影响自由软件支持的硬件的范围。但是,间接的,它将减少这个范围,通过诱惑使成千上万的还没有学会为了自由本身的目的而坚持它的GNU/Linux用户。到了公众开始接受这诱惑的时候,我们就将开始使用非自由的驱动程序,而不是去写自由的。
UDI不会自己去妨碍自由驱动程序的发展。因此如果我们中的足够的人拒绝这种诱惑,尽管UDI存在我们仍然能发展自由驱动程序,就象没有UDI时一样。
但是为什么要去鼓励公众比他们必需的更脆弱呢?为什么要给未来的自由软件制造更多的困难呢?既然UDI对我们没什么好处,更好的做法就是抵制UDI。
有了这些后果,毫不奇怪Intel,UDI的一个支持者,已经开始“到Linux社区寻求支持UDI”了。为什么一个富有而只顾自己的公司要涉足一个合作者的社区呢?显然,是为了要一些帮助。他们要求这些不会有任何损失,而我们也许会失去戒备而说“yes”。
与UDI合作并不是不成任何问题。我们不应该把UDI,Intel或任何东西贴上“恶魔”这样的标签。但是在我们打算开始进行任何交易之前,我们得仔细判断,以保证它对自由软件社群有利,而不只是对私有的系统开发者有利。在这个专门话题中,这意味着要求合作带领我们向着最终目标——实现自由的内核和驱动程序——更进一步:用自由软件来支持 所有 重要的硬件。
一个把这变成一个好交易的办法是更改UDI计划本身。Eric Raymond已经建议,UDI承诺可以要求驱动程序是自由软件。这是个理想境界,但稍有不同也可以接受。只要求驱动程序的源代码公开,而不是商业秘密,就可以完成这个任务——因为即使驱动程序不是自由的,至少它仍然可以告诉我们写一个自由的驱动程序时需要知道的东西。
Intel也会在UDI之外作些事,以帮助自由软件圈子解决这个问题。例如,或许会存在某种硬件开发者所寻求的认证,而这种认证需要Intel在其中扮演角色。如果这样,Intel应该可以同意,当硬件规格保密时,使认证变得更加困难。这也许不是一个完全的解决办法,不过它可以帮很大的忙。
任何同Intel进行的有关UDI的交易的难点是我们将在开始部份地为Intel干活,但很长一段时间里Intel不会作出回报。事实上,我们将把信用扩展到Intel。但Intel将继续偿还这笔借贷吗?也许会,如果我们把它形成书面记录,而且没有漏洞;否则我们不能指望它。公司是众人周知的不可信赖;我们与之打交道的人们或许是正直的,但是他们为上层所支配,或者随时可能被别的人替换掉。即使拥有大部份股票的总裁都有可能因买断而被替换。当与一个公司进行交易的时候,总是得到一个写好的装订成册的委托。
看起来Intel不象是会提供一个给我们带来所需要东西的交易。事实上,UDI看起来象是为了更容易保守专门秘密而设计的。
还是那句话,敞开门户不会带来害处,只要我们留心我们让进来的人。
返回GNU主页。
关于FSF和GNU的询问或问题:gnu@gnu.org。与FSF的其它联系方法。
关于这些Web页的评论或意见请发给:webmasters@www.gnu.org,其它问题请发给:gnu@gnu.org。
Copyright 1998 Richard Stallman
在保留这个申明的前提下,你可以通过任何媒体不加更改的复制与散发本文全文。
更新:17 Dec 1998 tower
翻译:Jan 1999 athos[AKA]
校对:29 Jan 1999 waterbird[AKA]