開源硬體 極客們的偉大理想

2021-09-05 08:02:41 字數 3842 閱讀 2314

自dennis allison 在1975 年發布它的tiny basic 以來,他倡導的開放、共享的思想得到了多數開發者的認同,這些年,軟體開源取得了令人矚目的成績。同時,他那句 「讓我們站在彼此的肩膀,而不是彼此的腳趾上。」也變成了開源軟體運動的名言。

如今,基於開放、共享理念的開源軟體運動正掀起一場硬體開源運動。開源硬體,指與自由和開放原始碼軟體相同方式設計的計算機和電子硬體。開源硬體開始考慮對軟體以外的領域開源。

這個詞主要是用來反映自由釋放詳細資訊的硬體設計,如電路圖、材料清單和電路板布局資料,通常使用開源軟體來驅動硬體。

共享邏輯設計連同可程式設計邏輯器件之重構,也是一種形式的開源硬體。

自20 世紀90 年代末,工程師們就已經想到了一些方法來將開源的概念應用於計算機和電子硬體。而主要的障礙當然是軟體很容易複製並且可以被免費複製,而硬體則由實實在在的物體構成的 — 用chris anderson 的話來說就是 「原子的而非位元的」。另外,硬體基本上都是受專利保護,而不是受版權保護的,而專利的獲得和捍衛是很昂貴的。

與軟體開源相比,硬體開源做起來要困難得多,那麼,「開源硬體」將來會進入大眾的視線嗎?

開源軟體流行的秘密

在談開源硬體之前,讓我們先來看一下開源軟體為什麼會流行。普通的使用者絕對不會在乎一款軟體是否開放源**,使用什麼許可協議。他們唯一關注的是能不能花最少的錢用上最好的軟體。那麼,開源軟體又是怎麼做到便宜和好用的呢?

1、免費

開源軟體最吸引人的地方毫無疑問是它的免費。相比於windows 幾百上千的**,可以自由傳播,自由使用的ubuntu 早已向前邁了一大步。對於嵌入式系統而言,開源的系統可以降低裝置製造成本,實惠消費者也是不爭的事實。

2、高質

優秀的開源專案往往能吸引大量的技術天才來協助開發。於是最終發行的軟體在質量上也不會低於收費軟體。就質量上pk,開源的virtualbox 也沒有比收費的vmware 遜色多少。

3、跨平台

作為乙個mac使用者,我常常為找不到那些優秀的windows 平台軟體的mac 版而苦惱。但是對於開源軟體則沒有這個問題。乙個優秀的開源軟體即使沒有「小眾作業系統」的版本,也會有愛好者自己編譯。最終,優秀的開源軟體常常是完美支援多平台的。例如大名鼎鼎的autocad 不原生支援mac,但是同樣是cad 軟體,開源的archimedes 卻同時支援windows 和mac。所以如果我常常要在兩種系統間來回切換,我顯然會選擇archimedes 來減少麻煩。

4、定製性強

乙個優秀的開源軟體周圍常常會有數不勝數的外掛程式。於是軟體也就會可以通過安裝外掛程式來迎合每個人的需求——如果不理解,去看看firefox 那恐怖的外掛程式庫吧。

5、問題修復及時

是軟體就會出問題,這是已經被無數次證實的真理。而開源軟體總是可以依靠群眾的智慧型,在第一時間修復問題。根據ed bott的部落格文章,ubuntu 和fedora 的更新發布頻率都遠高於windows。

目前,已經有很多成功的開放硬體專案。

1

、power.org

2004

年,ibm 建立了power.org 作為其power everywhere 創意的一部分, 將power architecture® 建成了乙個開放硬體專案,具有免費許可的標準、設計和規範。ibm 在2006 年宣布了向研究和學術機構免費開放powerpc® 405 core 的計畫,到目前為止,有40 多家大學參加了這個專案。

2、opensparc t1

sun microsystems

也緊跟著在2006 推出了opensparc t1,這是其成功的sparc 處理器的一次全開放實現。目前,有三個基於reduced instruction set computer (risc) 的sparc 架構的全開放實現,源**用verilog hdl 編寫,在gnu public license (gpl) 許可下發布。

3、beagleboard

beagleboard

4、arduino

arduino

是乙個面向終端使用者設計的微處理器,具有易學易懂的程式設計模型、乙個可供任何人使用的全開放設計,以及乙個由文件、擴充套件板、派生產品和社群組成的大型生態系統。根據o'reilly publishing 的make 雜誌及每年的maker faire — 喜歡向專案中新增靈活的電子特性(從閃光發光二極體到複雜的飛機導航系統)的硬體發燒友,它已經被diy 愛好者和玩家推崇的、發展得如火如荼的 「maker」 運動廣泛採用。

5、opencores.org

opencores.org

是乙個始於1999 年的開放硬體機構的先驅,它是開放處理器核的門戶,提供了在各種開放許可下提供的諸多處理器核的設計文件,包括乙個免費的risc 計算平台、幾個微控制器、兩個soc 以及一些演算法、通訊和其他的核,其中大多都是用verilog hdl 描述的。

開源硬體流行的基礎:可程式設計邏輯器件(pld)

不像硬體,軟體的的開發,傳播和部署幾乎可以做到零成本。 但是如果使用「一次性」的電路,開源硬體別說投入大規模使用,連開發都成問題——開發者必須忍受極其緩慢的模擬器。但是,可程式設計邏輯器件的存在給開源硬體帶來了希望。

簡單的說來,可程式設計邏輯器件就是乙個儲存器加上乙個邏輯門陣列。儲存器上的資料可以控制邏輯門之間線路的通斷。有的可程式設計邏輯器件甚至可以反覆刷寫,多次改變內部的電路排列。

如此,開源硬體也變得如軟體一般可以「零成本開發,零成本部署」了。

開源軟體的優點可以移植到硬體上嗎

畢竟軟體和硬體是不同的。開源軟體的優勢在硬體上仍然存在嗎?

1、**

一眼看來,似乎開源硬體會有**上的優勢,因為產品**不包含可觀的研發成本。但是硬體早已不是可以「動手製作」了。然而,訂做小批量的產品是非常昂貴的。讓愛好自由的極客統一起來訂上大批量的開源硬體又是幾乎不可能的事。因此唯一可行的把開源硬體設計「落實」的方法就是把電路置於可程式設計邏輯器件當中。

2、品質

開源軟體往往是由乙個龐大的開發者社群「催熟」的。但是開源硬體的開發者還不夠多。但這不是個問題,畢竟開發者是可以培養的。最終,優秀的開源硬體設計是完全有可能出現的。

3、跨平台

很遺憾,硬體是無法「跨平台」的。舉個大家熟悉的例子:即使是同為x86 架構,intel, amd 和via 的處理器還是差異巨大的。因為整個平台的不同,所謂的移植實施起來難度也大到幾乎不可能實現。有人可能會提到全美達的efficeon ,但是這樣的架構在可程式設計邏輯器件當中即使能實現也不會有滿意的效能,而且還有各平台針腳定義不同的問題。

4、定製性

開源硬體可以通過制訂內部匯流排標準去實現擴充套件性。但是接下來的問題是可程式設計邏輯器件的容量往往會極大的限制硬體的擴充套件性。

5、更新

可程式設計邏輯器件的使用讓零成本更新硬體成為現實。於是更新的問題並不會過多阻礙開源硬體的發展。

可程式設計邏輯器件使硬體效能和功能失去競爭力

前面提到,可程式設計邏輯器件讓開源硬體的傳播成為可能。但立於可程式設計邏輯器件之上的硬體還可以依靠效能和功能去打動使用者嗎?

可程式設計邏輯器件的原理是由儲存器內的資料決定邏輯門之間線路的通斷。所以可程式設計邏輯器件的結構決定了它不能承載太複雜的設計,而且功耗高,速度慢。所以,可程式設計邏輯器件的使用不僅限制開發者的思維空間,而且拖慢速度。對於移動裝置而言,可程式設計邏輯器件還會降低續航能力。

硬體開源流行?極客們的偉大理想

但我們知道,按照現有的科技和組織方式,開源硬體只會在極客當中傳播。如果想要「開源硬體」 在大眾中得以普及,除非開源硬體設計足夠成熟,產品能夠滿足大眾的個性化需求,而且diy足夠簡單,這樣開源硬體才有可能大眾化。

讓開源硬體達到跟開源軟體一樣的程度,現階段還只是極客們的乙個偉大夢想。但我深深得為這種極客精神所折服。

開源區域的大佬們

簡介 doug cutting是nutch,lucene,hadoop開源專案的作者,搜尋引擎方面的專家。lucene是乙個提供全文文字搜尋的函式庫,它不是乙個應用軟體。它提供很多api函式讓你可以運用到各種實際應用程式中。nutch是乙個建立在lucene核心之上的web搜尋的實現,它是乙個真正的...

開源硬體的應用例項

最近我們給大家介紹了很多關於開源硬體的知識,不知道對您是否有用呢,今天我們將繼續給大家介紹相關資訊,以滿足廣大oshw 開源硬體 愛好者的需求。我們知道相對於以linux為代表的開源軟體陣營,開源硬體也是開源思想的繼承者。這些硬體的開發者將硬體的全部資料都對外公開,包括電路圖 韌體 軟體 元件列表 ...

開源硬體的應用例項

最近我們給大家介紹了很多關於開源硬體的知識,不知道對您是否有用呢,今天我們將繼續給大家介紹相關資訊,以滿足廣大oshw 開源硬體 愛好者的需求。我們知道相對於以linux為代表的開源軟體陣營,開源硬體也是開源思想的繼承者。這些硬體的開發者將硬體的全部資料都對外公開,包括電路圖 韌體 軟體 元件列表 ...