91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

關(guān)于開源和商用軟件嵌入式系統(tǒng)的軟件許可證介紹和用途分析

貿(mào)澤電子 ? 來源:djl ? 作者:Mike Parks, P.E, Lyne ? 2019-08-27 11:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

嵌入式系統(tǒng)開發(fā)中人們總會提及一個問題:“開源軟件與商用軟件,哪個更符合我們的應用呢?”

關(guān)于開源代碼和商用代碼的討論總是能激起極客們的熱情。這個討論就等同于在硬件方面人們討論哪種電容音頻電路的理想選擇。大多數(shù)人都不希望使用的東西需要軟件許可,所以開源和商用的區(qū)別在很多技術(shù)領(lǐng)域引起了哲學性的討論。

當把一個嵌入式系統(tǒng)領(lǐng)入市場時,開源與商用哪種模式更好呢?有時候你別無選擇。

1源代碼101

企業(yè)出于掌握自己命運及未來潛在成本的考慮,會在源代碼上下很多功夫。那么,什么是源代碼呢?源代碼是指揮處理器進行工作的人類可讀指令。只有源代碼,計算機什么都做不了。它必須編譯為計算機可識別的二進制代碼。如果你有源代碼,你就可以對它進行修改和再編譯,并創(chuàng)造一個符合你的獨特需求的應用程序。你也可以通過查看源代碼來保證程序沒有漏洞或后門程序。操作系統(tǒng)也可以開源從而透明化,在更深層次上控制處理器以提供中斷處理、周邊管理等等。

2操作系統(tǒng)和編譯器

使用開源軟件,你可以不受他方限制的應用你的產(chǎn)品(無論是開源操作系統(tǒng),程序或者軟件開發(fā)工具)。如果有必要,你可以自己進行開發(fā)?;趯@纳逃孟到y(tǒng),如果沒有經(jīng)過你個人改進,那只會在被淘汰后才有可能開放使用。例如,一個操作系統(tǒng)(OS)需要在其他的公司購買和維護才能在你的中斷設(shè)備上使用,但是那個公司如果被你的競爭對手收購呢?他們會放棄對于新技術(shù)的更新和漏洞修復。更嚴重地,如果沒有合同保護,你可能會被要求立即停止使用軟件。

另一方面,如果你使用開源的編譯器和操作系統(tǒng),你需要知道你正在做什么;在嵌入式系統(tǒng)中開源的很少有成套工具。你還需要對開源維護社區(qū)能對你的產(chǎn)品進入市場的急切需求所能做的事情有一個合理的預估,因為開源軟件使用新技術(shù)的進程相對比較緩慢。你可以自己解決自己的需求,同時也為開源社區(qū)做出貢獻,即使這樣,接受為正式庫的進程也不一定如你期望。當然,你也可以不把你的改進貢獻給社區(qū),這完全合法,不過無論你認為它有多好,除了你自己,沒有人會幫助你維護它。

這里提一下開源硬件(OSHW)。開源硬件是“類開源”,它會提供原理圖的源文件。但這種開放性無法延伸到片上系統(tǒng)(SoC),處理器或電路板上的支持新片。開源硬件也可以使用商用開發(fā)工具,這取決于處理器。然而,“開源”的概念已經(jīng)擴展?jié)B入到各個設(shè)計領(lǐng)域,并不局限于電子產(chǎn)品。“開放”通常指公開分享信息,以便其他人對設(shè)計(無論是實體產(chǎn)品,軟件,教育或想法)進行重現(xiàn)。事實上,一場開源的運動正在進行之中,很多人認為它受與1991年底出現(xiàn)的Linux系統(tǒng)的啟發(fā)。

3優(yōu)點、缺點及誤解

凡事都有兩面性,開源與商用軟件受到了同樣的誤解。開源的最復雜問題是大量的許可證,即使最精明的技術(shù)員也可能被搞暈。為了達到本文的目的,我們使用開源代碼促進會對開源的定義——開源軟件是可以被任何人隨意使用、修改和分享的軟件。開源軟件由很多人開發(fā),并在擁有遵守開源定義(原網(wǎng)頁鏈接)的許可證的條件下發(fā)布。

應用最多的開源許可證包括Creative Commons(知識共享組織)許可、Apache許可,BSD(加州大學伯克利分校軟件)許可,GNU通用公共許可,麻省理工許可和Mozilla公共許可。想要得到完整清單,可以點擊這里(原網(wǎng)頁鏈接)。開源許可多種多樣,但是一個典型的許可證可以保證你在一個開源項目中建立和擴展,那些在你工作基礎(chǔ)上繼續(xù)開發(fā)的人必須在同一個許可下寫入他們的代碼。這樣可以避免別人在你的辛苦工作上獲利,至少很難做到。

根本上來講,開源軟件是對云端集體智慧的獲取和分享。很多大的不兼容開源項目由一小幫志愿者進行開發(fā)、調(diào)試及整理源代碼。而有些項目會聚集數(shù)量龐大的社區(qū),使得開發(fā)者可以向終端使用者索取適當?shù)馁Y金。開源項目中用戶與開發(fā)人員相互協(xié)作的屬性使其可以吸引新用戶和程序員。對于獨立開發(fā)者來說,參與開源項目是一項很重要的能力體現(xiàn)。有些人參與其中是為了從他人那里學到知識,不管通過何種學習模式你都需要有謙卑的態(tài)度和心里承受能力,畢竟開源是開放的(別人都可以看到你的不足)。你的代碼可能會被別人挑出來,批評或表揚(有時來自同一個人)。社區(qū)中所有被貢獻的代碼里只有最好的會被加入到維護版本中,以讓大家對程序員的技術(shù)進行查看及評論。

相反地,如果使用商用軟件,經(jīng)營者通過對他們的代碼實施版權(quán)限制以給保留更多的合法權(quán)益。商用軟件就是典型的“閉源”,即使你購買了應用程序,也無法訪問源代碼。通常在“用戶許可協(xié)議”(EULA)或其他法律性文件中列出了完整的限制條例。這些協(xié)議規(guī)定了用戶使用程序時可以及不能做的事情。這是為了限制對程序進行修改、分享、再分布以及反向工程操作的行為。總而言之,商用軟件是一種知識產(chǎn)權(quán)。比如說,你發(fā)明了一種獨特的算法,該算法成為了你的產(chǎn)品中的“秘方”,對它進行商用許可限制則是一種明智的行為。反過來講,如果你的軟件是眾多解決辦法之一,那么對你的代碼進行開源會使你的想法被更多人承認,至少是贊譽。

有一點必須要澄清的是開源并不意味著免費,商用也不意味著必須花錢才能使用。另外,認為開源是業(yè)余人員的項目,專業(yè)開發(fā)人員只做商用軟件的想法也是錯誤的。然而,然而,當你選擇了一個商用軟件平臺,必須先搞清楚它許可證中的費用收取架構(gòu),以免當你使用軟件時被它的使用費用嚇到。另外還要交付“版稅”,以供開發(fā)人員對他們的程序代碼進行優(yōu)化及調(diào)試。從開發(fā)人員的角度來看,這意味著商用軟件開發(fā)商可以給他們提供準時而長久的資金支持(有些情況下,維護和支持費用的協(xié)議是以年費來記得)。

因為商用和工業(yè)嵌入式系統(tǒng)需要使用幾年到幾十年,所以來自開發(fā)商長久的支持至關(guān)重要。從這方面來說,開源軟件不如商用軟件那么可靠。如果一個關(guān)鍵開發(fā)人員決定退出一個項目而沒有人能夠頂替他的工作,則這個應用會很快失去競爭力,就像現(xiàn)在沒有那個基礎(chǔ)技術(shù)能像USB 3.1一樣更新。但是至少你已經(jīng)獲得了源代碼,如果你有足夠的專業(yè)知識、時間或金錢雇人替你做,你就可以對代碼進行改進。對于商業(yè)軟件的代碼,在沒有原創(chuàng)人員同意的情況下獲取源代碼或進行改進的行為是違法的。

還有更復雜的情況,有的軟件中同時包含開源和商用代碼。例如,蘋果的操作系統(tǒng)OS X就是在開源的UNIX操作系統(tǒng)上建立。然而,窗口化的系統(tǒng)使得OS X人機交互界面是非開源的。Google的安卓操作系統(tǒng)源代碼被別人模仿改造,并安裝在他們經(jīng)過授權(quán)的手機中,這種行為是合法的,但他們的代碼不受Google支持和維護。(這種改造通常造成手機中軟件臃腫——一些不必要的軟件會消耗電量和內(nèi)存,也無法刪除。)

圖1:德州儀器最新的開啟面板(開源硬件),使用MSP32處理器,面向筆記本、便攜設(shè)備、智能電網(wǎng)、醫(yī)藥自動化與控制市場

4當二進制遇到金屬:嵌入式系統(tǒng)中的開源和商用軟件

嵌入式電子設(shè)備的世界一直被商用軟件統(tǒng)治,包括像集成開發(fā)環(huán)境(IDE),即時操作系統(tǒng)(RTOS)以及固件庫等。像Arduino的一些平臺想要改變現(xiàn)狀,但是很多“專業(yè)”平臺仍然在專有許可協(xié)議之下處于封閉狀態(tài)。不僅是開源社區(qū)想要推進這種改變,美國國防部以及國家航天局也想促進建立開源架構(gòu)使得協(xié)作、數(shù)據(jù)共享以及避免“廠商鎖定”——項目的推進被限制在一個供應商中而造成低壽命高成本。

一些已成立的嵌入式平臺開發(fā)公司正在響應開發(fā)者們對更多開源解決方案的需求。隨著開源慢慢地滲入到嵌入式系統(tǒng),其它的公司也開始反思許可費用以期望吸引更多的開發(fā)人員。從集成開發(fā)環(huán)境的角度來看,開源的Arduino集成開發(fā)環(huán)境與其它平臺相比非常的簡樸,商用平臺像德州儀器的代碼調(diào)試器,包含很多重要的專業(yè)特性,比如功耗監(jiān)測。德州儀器也支持一個叫做Energia的開源產(chǎn)品作為其它微處理器的替代品。意法半導體的開放式開發(fā)環(huán)境(STM32OE)中有他們的開源硬件Nucleo 開發(fā)板。德州儀器和意法半導體這樣專注于提供集成電路芯片的芯片制造商,也清楚的認識到硅片并不是嵌入式系統(tǒng)的全部。而軟件已經(jīng)觸及到電子設(shè)備的方方面面;即使是集成電路的設(shè)計者也必須使用向Synopsis、Mentor Graphics以及Cadence等工具軟件開設(shè)計集成電路版圖。

圖1:開源硬件Nucleo開發(fā)板大約10美元,包括免費的mbed.org工具軟件,也可以支持KEIL工具。STM32與大多數(shù)Arduino兼容。

5開源:不再單指軟件

硬件也在進行開源化改革。可想而知,關(guān)于硬件開源的討論會更復雜。軟件的軟代碼一但寫出來很快就可以得到版權(quán)保護。另外,源代碼中不存在有形資產(chǎn)呢。在硬件的世界中便是另一幅景象。CAD設(shè)計文件和3D打印機的STL文件最終可以轉(zhuǎn)化為實物產(chǎn)品。那么版權(quán)是僅對設(shè)計文件有效,還是對最終生產(chǎn)的有形產(chǎn)品都有效呢?雖然傳統(tǒng)觀點認為版權(quán)對實物不產(chǎn)生作用,這種未知領(lǐng)域還沒有經(jīng)過測試。現(xiàn)在已經(jīng)有了開源硬件專用的許可,使用最廣泛的是CERN開源硬件許可和TAPR開源硬件許可。

6概要

出于對嵌入式開發(fā)領(lǐng)域的尊重,使用開源或商用軟件通常取決于所選用的硬件。如果微控制器或現(xiàn)場可編程門陣列所在的項目說明書只來自一家供應商,而且供應商把他們的代碼封鎖起來,那么你就沒有機會獲得它們。你或許可以爭取獲得更多數(shù)據(jù),但也要付出額外的開銷。也就是說,隨著硬件越來越商品化,多個廠家可以提供類似的解決方案,需要更多的軟件許可的廠家可能會影響到整體的市場供給平衡并產(chǎn)生分化。因此可以推測,隨著產(chǎn)品的商業(yè)化,更多的供應商會在軟件方面提供更多的選擇。集成開發(fā)環(huán)境、(即時)操作系統(tǒng)和固件庫的許可架構(gòu)或許會影響到開發(fā)人員的選擇。無疑,在越來越多的社區(qū)、貢獻者的推動下,在法律的完善和秩序的確立下,開源許可的商業(yè)模式和商品正在漸漸成為主流。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    20260

    瀏覽量

    252585
  • 嵌入式系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    3750

    瀏覽量

    133676
  • 內(nèi)存
    +關(guān)注

    關(guān)注

    9

    文章

    3213

    瀏覽量

    76389
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    SPC5 studio選擇了30days嵌入式許可證選項無法正常工作

    親愛的大家, 我已經(jīng)安裝了SPC5 studio,但我遇到了編譯問題。 SPC5工作室需要許可證。 在安裝過程中,我選擇了30days嵌入式許可證選項,但它似乎無法正常工作。我是否需要通過
    發(fā)表于 12-05 16:17

    15.2的評估許可證許可證錯誤

    我剛剛安裝了Vivado Design Suite 15.2并下載了30天的評估許可證(當我獲得許可證時,我點擊了所有可用的軟件包)。許可證在狀態(tài)下顯示在
    發(fā)表于 12-14 11:25

    ISE 14.7許可證未通過購買的有效Vivado許可證啟用

    我下載ISE 14.7嵌入式許可證的網(wǎng)站,因為它已經(jīng)被要求知道這是購買Vivado的一部分許可證包含ISE許可證。問候!以上來自于谷歌翻譯以下為原文We just bought a V
    發(fā)表于 12-17 11:52

    未找到Vivado系統(tǒng)許可證許可證

    嗨,我們有Vivado的系統(tǒng)許可證,但在使用'xcku040'合成時會顯示以下失敗消息。它適用于Artix部分,但不適用于我們想要的'xcku040'部分。你能幫幫我嗎?[Common
    發(fā)表于 01-04 11:06

    軟件報告許可證服務器沒有報告任何許可證

    您好,我最近購買了16900A并安裝了一些選件,包括VSA軟件。分析儀安裝了3.70版本的軟件,當我查詢許可證信息時,我可以看到一些ARM9 / 11跟蹤
    發(fā)表于 02-18 12:03

    嵌入式系統(tǒng)開源軟件發(fā)展如何?

    Smart-book,尺寸更小、更輕便的上網(wǎng)本)。開源軟件也在慢慢地向嵌入式系統(tǒng)靠攏。在國內(nèi),嵌入式系統(tǒng)
    發(fā)表于 09-27 07:51

    ISE 10.1無效許可證或未找到許可證

    ISE 10.1無效許可證或未找到許可證!,我是否需要此軟件許可證?
    發(fā)表于 04-21 08:31

    嵌入式軟件設(shè)計筆記相關(guān)資料分享

    嵌入式軟件設(shè)計—筆記1.1 引言、計算機系統(tǒng)由硬件系統(tǒng)軟件系統(tǒng)所組成,
    發(fā)表于 11-08 08:54

    開源軟件應用及其許可規(guī)則

    1.無處不在的開源軟件 2.開源軟件許可證 3.開源軟件
    發(fā)表于 04-17 23:01 ?42次下載

    開源軟件許可證的分類及比較

    以LINUX為代表的開源軟件在國內(nèi)正成為民族軟件的一支重要力量。與其他商業(yè)軟件一樣,開源軟件實行
    發(fā)表于 04-17 23:25 ?23次下載

    MPLAB? XC編譯器許可證介紹

    本視頻介紹了MPLAB? XC C編譯器的所有許可證類型,包括工作站許可證、網(wǎng)絡許可證、站點許可證、訂閱
    的頭像 發(fā)表于 06-07 13:46 ?4777次閱讀
    MPLAB? XC編譯器<b class='flag-5'>許可證</b><b class='flag-5'>介紹</b>

    詳解開源軟件許可信息

    人們在使用常規(guī)軟件許可時產(chǎn)生的實踐和期望,也許會讓他們在面對開源軟件時感到沮喪?!罢埥o我看下許可證”這種簡單的要求,可能得不到令人滿意的答復
    的頭像 發(fā)表于 03-04 15:49 ?2335次閱讀

    嵌入式軟件是什么意思_嵌入式軟件的分類有哪些

    本文首先闡述了嵌入式軟件的概念,其次介紹嵌入式軟件的特征,最后介紹
    發(fā)表于 08-31 15:54 ?1.7w次閱讀

    Touch軟件許可證協(xié)議

    Touch軟件許可證協(xié)議
    發(fā)表于 05-13 21:27 ?8次下載
    Touch<b class='flag-5'>軟件</b><b class='flag-5'>許可證</b>協(xié)議

    電子許可證激活MegaRAID高級軟件選項

    電子發(fā)燒友網(wǎng)站提供《電子許可證激活MegaRAID高級軟件選項.pdf》資料免費下載
    發(fā)表于 08-23 11:52 ?2次下載
    電子<b class='flag-5'>許可證</b>激活MegaRAID高級<b class='flag-5'>軟件</b>選項