学过电脑或是软件工程的同学,一定会把Dennis Allison 在1975 年发布Tiny BASIC 时候说的话放在心上,他倡导的开放、共用的思想得到了多数开发者的认同,这些年,软件开源取得了令人瞩目的成绩。同时,他那句“让我们站在彼此的肩膀,而不是彼此的脚趾上。”也变成了开源软件运动的名言。
附图: 易懂易学的Arduino 开发板
如今,随着智慧手机的爆发性增长,Android、Firefox OS、乐OS、Palm各种不同的开源软件都有着自己不错的表现和成绩,每种开源软件都有着自己的粉丝,可是大家有没有想过一个电脑或者说一个合格的系统,是由软件和硬件共同组成的,也就说,我们有着开源的软件,那么在硬件上有没有开源的专案和想法呢,今天来看看开源硬件的思想、优点和成功的方案,那么大家赶快做上这班开源硬件的列车吧!
“开源硬件”的浪潮
从Richard Stallman开始的自由软件运动,其本意是为了要让开放源码持续保持在开放、可取得的状态,好让拿到程式的人都可以研究、修改程式。这样研究、修改的精神也被应用到许多不同的领域与层面,同样在IT领域中的硬件,也受到了影响,于是就产生了开放硬件这样一个概念。
“开放硬件”的概念之所以诞生,一方面如上段所述,直接受到自由软件开放、研究精神的启发,另外一方面则是希望间接地让自由软件发展者可以完整地研究开放源码的运作,贯彻研究精神,因为现代硬件设备的运作机制复杂,例如CPU、图形加速卡、无线讯号接收装置、可程式化逻辑设备等,都有软件来控制这些硬件的运作,只有与软、硬件密切配合,这些设备才可以发挥***功效,若只开放相关的开放源码,却未开放硬件设计与规格,表示所开放的资讯并不完整,有能力的开发者并无法完整地研究这个设备的运作。
在这样的历史背景与因素之下,开放硬件的概念逐渐成形,而也因为这样的历史缘由,开放硬件的英文除了"Open Hardware"之外,还有人使用"Open Source Hardware"(OSHW)一词,表示沿袭了自由软件精神,要将硬件设计的源头内容给开放、提供出来,好让他人得以自由地使用、修改、制造与散布整个硬件。而开放硬件这一个概念发展到今日,也已经孕育出了不少的专案。
开源硬件成功的专案
1、Power.org
2004 年,IBM 创建了Power.org 作为其Power Everywhere 创意的一部分,将Power ArchitectureR 建成了一个开放硬件专案,具有免费许可的标准、设计和规范。
2、OpenSPARC T1
Sun Microsystems 也紧跟着在2006 推出了OpenSPARC T1,这是其成功的SPARC 处理器的一次全开放实现。目前,有三个基于Reduced Instruction Set Computer (RISC) 的SPARC 架构的全开放实现,源代码用Verilog HDL 编写,在GNU Public License (GPL) 许可下发布。
3、BeagleBoard
BeagleBoard 是一个基于Texas Instruments 的Open Multimedia Application Platform 3 (OMAP3) system on chip (SoC) 的单板电脑,它包括一个基于ARM 的微处理器和一个数位信号处理器。BeagleBoard 使用了与很多智慧手机和上网本相同的处理引擎。
4、Arduino
Arduino 是一个面向终端用户设计的微处理器,具有易学易懂的编程模型、一个可供任何人使用的全开放设计,以及一个由文档、扩展板、派生产品和社区组成的大型生态系统。
5、OpenCores.org
OpenCores.org 是一个始于1999 年的开放硬件机构的先驱,它是开放处理器核心的入口网站,提供了在各种开放许可下提供的诸多处理器核心的设计文档,包括一个免费的RISC 计算平台、几个微控制器、两个SoC 以及一些演算法、通信和其他的核,其中大多都是用Verilog HDL 描述的。
总结
相比开源软件,开源硬件仍然是小众,仍然在缓慢增长,不过数量已经从***增加至60+。和开源软件一样,开源硬件提供源码、图表、硬件和材料清单,并允许商业使用。
虽然开源软件的理念究竟能否推广到其他领域还是个未知数,但是已经有很多人在致力于这样做了,上次是开源汽车,这次则有人呼吁搞开源硬件,其动机是因为现有的PC系统大多过于臃肿,充满了无用的功能,作者希望大家能设计出一套够用又轻便的系统,然后以外包的方式交给厂家去生产,好处就是一切的细节都可以自己订制,当然也就可以加以优化了。老实说,虽然这个设想的难度不小,但是当我看到新一代的显卡都开始需要独立电源甚至水冷设备时,我认为有人站出来号召一套低功耗的环保PC还是很有意义的。
对于开源硬件还有很长的路要走,但至少,我们已经看见到了光,难道不是吗?