4.18 附录:为什么闭源驱动反而让厂商赔钱
外设硬件(以太网卡、磁盘控制器、显卡等)厂商历来不愿开放硬件技术资料。如今形势正在转变,像 Adaptec 和 Cyclades 这样的厂商a已开始常规性地公开其板卡的规格说明书和驱动程序源代码,然而行业内的抵触心态依旧存在。本文将逐一破除催生这类抵触心态的几大经济学认知误区。
如果你是硬件厂商,可能会担心开源会泄露硬件运行的重要细节,被竞争对手复制,从而让对手获得不正当竞争优势。在产品周期为3-5年的时代,这种说法是有道理的。但如今,竞争对手的工程师复刻、吃透技术要耗费大量时间,会严重挤占产品研发周期,而这些时间本可用于自主创新、打造产品的差异化优势。
这并不是什么新见解。前克格勃负责人奥列格·卡卢金说得很好(http://cnn.com/SPECIALS/cold.war/experience/spies/interviews/kalugin/)b:
举个例子,当我们曾窃取 IBM 等企业的技术蓝图,以及西方其他领先电子领域的资料时,西方在这些领域突飞猛进,而我们远远落后。要真正落实情报成果往往需要数年时间。等五到七年过去,西方又往前走了,我们只能一次次再偷,结果越来越落后。
但早在大约一个世纪前,拉迪亚德·吉卜林(Rudyard Kipling)在他的诗作《玛丽·格洛斯特号》(The Mary Gloster,http://www.everypoet.com/archive/poetry/Rudyard_Kipling/kipling_the_mary_gloster.htm)c中说得更透彻。他写道:
他们问我怎么做到的, 我给了他们一段经文: “让你的光闪耀在 比对手稍前一点的地方!” 他们能抄的全抄了, 却抄不走我的头脑, 我让他们汗流浃背地偷, 却仍落后我一年半。
进入互联网高速发展的阶段后,这一现象的影响将更有杀伤力。如果你在行业处于领先地位,那你可以让竞争对手掉进抄袭的陷阱!
如今这些技术细节根本藏不住。硬件驱动不像操作系统或应用程序,代码体量小,很容易被反汇编、仿制。就算是十几岁的编程新手也能做到,这种情况早已屡见不鲜。
成千上万的 Linux 和 FreeBSD 程序员既有能力也有动力为新板卡编写驱动。对于许多接口相对简单且有成熟标准的设备类别(如磁盘控制器和网卡),这些热心的黑客即便没有官方文档、也不逆向现有驱动,他们开发驱动原型的速度,也常常和厂商自研团队不相上下。
即使对于显卡、声卡这类复杂的设备,你也没太多办法阻止一个手持反汇编器的聪明程序员。成本低,法律壁垒也不是天衣无缝的;而 Linux 是全球协作的开源项目,全球各地司法规则不一,不少地区明确允许逆向工程。
要证明以上说法属实,只需查看 Linux 内核支持的设备列表,就能看到,即便没有厂商官方支持,内核新增设备适配的速度依然惊人。
开放驱动还有一大好处,你可以专注于创新。想象一下,你再也不用让员工耗费时间精力,为每个新发布的内核重写、测试和发布新的二进制驱动。你肯定有比这更重要的事情去做。
还有一个很好的理由:没有用户愿意为漏洞修复等待长达半年之久。如果你有任何开源竞争对手,单凭这一点,对手就足以碾压你。
当然,还有前面提到过的长效适配价值(Future-proofing Effect)。客户想要开源,因为他们知道开源能大幅延长硬件使用寿命,即便超出厂商的常规维保成本周期也能正常使用。
不过,最重要的理由是:你的盈利模式是靠卖硬件。市场并不接受技术保密,事实恰恰相反。如果你的驱动难找、需要频繁更新、最糟的是驱动运行卡顿,这会严重拖累硬件口碑,造成销量下跌。开源可以解决这些问题,并提升你的收入。
结论是什么?保护闭源驱动的商业机密在短期看来有吸引力,但从长期看很可能是糟糕的策略(尤其是当你已经与那些开放的厂商竞争时)。但如果你非要保密,那把代码烧录到板载 ROM 里,然后对外开放 ROM 的接口。尽可能开源,以拓展市场,并向潜在客户证明:你相信自己在真正重要的地方,能够在核心技术与创新能力上领先对手。
如果你执意闭源,最后只会满盘皆输:技术秘密早晚泄露,也没人免费帮你开发,更没法让那些愚蠢的对手,把时间白白耗在抄袭复刻上。最关键的是,你会错失产品早期快速铺开的机会。互联网和大多数企业数据中心的运维团队,这个体量庞大、话语权十足的客户群体,会直接认定你的公司目光短浅、固步自封,你连这些道理都没想明白。然后,他们会转而选择理念更成熟的厂商采购板卡。