當(dāng)前位置:首頁(yè) > 物聯(lián)網(wǎng) > 物聯(lián)網(wǎng)技術(shù)文庫(kù)
[導(dǎo)讀] 在當(dāng)今由物聯(lián)網(wǎng)(IOT)驅(qū)動(dòng)的互聯(lián)嵌入式設(shè)備市場(chǎng)中,開發(fā)中的大部分設(shè)備都是以某種形式的Linux為基礎(chǔ)的。具有現(xiàn)成Linux發(fā)行版的低成本電路板的普及應(yīng)用是這方面的關(guān)鍵驅(qū)動(dòng)因素。而獲取硬件,構(gòu)建

在當(dāng)今由物聯(lián)網(wǎng)(IOT)驅(qū)動(dòng)的互聯(lián)嵌入式設(shè)備市場(chǎng)中,開發(fā)中的大部分設(shè)備都是以某種形式的Linux為基礎(chǔ)的。具有現(xiàn)成Linux發(fā)行版的低成本電路板的普及應(yīng)用是這方面的關(guān)鍵驅(qū)動(dòng)因素。而獲取硬件,構(gòu)建自定義代碼,將設(shè)備連接到其他硬件外圍設(shè)備和互聯(lián)網(wǎng)中,以及使用商業(yè)云提供商進(jìn)行設(shè)備管理從未如此簡(jiǎn)單。開發(fā)人員或開發(fā)團(tuán)隊(duì)可以快速構(gòu)建新應(yīng)用程序的原型,并將設(shè)備提供給潛在用戶。這是一件好事,將產(chǎn)生許多有趣的新應(yīng)用,但也產(chǎn)生了許多不良的應(yīng)用。

在規(guī)劃超出原型設(shè)計(jì)階段的系統(tǒng)設(shè)計(jì)時(shí),事情變得更加復(fù)雜。本文主要對(duì)開發(fā)和維護(hù)基本操作系統(tǒng)(OS)映像的機(jī)制進(jìn)行闡述。有許多工具可以幫助解決這個(gè)問(wèn)題,但在此不會(huì)討論各種工具。這里感興趣的是維持和增強(qiáng)這種形象的基本模式,以及它將如何使人們的生活變得更好或更糟。

生成這些映像有兩種主要模型:

Centralized Golden Master

分布式構(gòu)建系統(tǒng)

這些類別反映了源代碼管理(SCM)系統(tǒng)的驅(qū)動(dòng)模型,在討論操作系統(tǒng)映像時(shí),許多關(guān)于集中式和分布式的論點(diǎn)都是適用的。

Centralized Golden Master

業(yè)余愛好者和制造商項(xiàng)目主要使用Centralized Golden Master方法來(lái)創(chuàng)建和維護(hù)應(yīng)用程序映像。這一事實(shí)使該模型具有速度和熟悉度的優(yōu)勢(shì),允許開發(fā)人員快速設(shè)置這樣的系統(tǒng)并使其運(yùn)行。這一速度來(lái)自于許多設(shè)備制造商為其現(xiàn)成的硬件提供固定映像的事實(shí)。例如,來(lái)自BeagleBone和Raspberry Pi等系列的主板提供即用型操作系統(tǒng)映像和閃存。依靠這些映像意味著只需點(diǎn)擊幾下鼠標(biāo)即可啟動(dòng)并運(yùn)行系統(tǒng)。這些映像通常基于許多設(shè)備開發(fā)人員已經(jīng)使用的桌面發(fā)行版,例如Debian。多年使用Linux可以直接轉(zhuǎn)移到嵌入式設(shè)計(jì),包括包裝實(shí)用程序基本保持相同的事實(shí),而且對(duì)于設(shè)計(jì)人員來(lái)說(shuō),獲得他們需要的額外軟件包很簡(jiǎn)單。

這種方法有一些缺點(diǎn)。首先,Centralized Golden Master的映像通常是一個(gè)瓶頸,導(dǎo)致原型設(shè)計(jì)階段后開發(fā)人員的工作效率下降,因?yàn)槊總€(gè)人都必須等待輪到他們?cè)L問(wèn)***映像并進(jìn)行更改。在供應(yīng)鏈管理(SCM)領(lǐng)域,這種做法相當(dāng)于具有單獨(dú)文件定的集中式系統(tǒng)。只有具有鎖定的開發(fā)人員才能處理任何給定的文件。

這種方法的第二個(gè)缺點(diǎn)是映像再現(xiàn)性。通常通過(guò)人工登錄目標(biāo)系統(tǒng),使用本機(jī)包管理器安裝包、配置應(yīng)用程序和點(diǎn)文件,然后就地修改系統(tǒng)配置文件來(lái)管理。完成此過(guò)程后,將使用dd命令的實(shí)用程序或等效工具對(duì)磁盤進(jìn)行映像,然后進(jìn)行分發(fā)。

同樣,這種方法會(huì)造成潛在問(wèn)題。例如,基于網(wǎng)絡(luò)的軟件包源可能不再存在,并且供應(yīng)商映像提供的基礎(chǔ)軟件可能會(huì)更改。腳本可以幫助緩解這些問(wèn)題。但是,當(dāng)對(duì)配置文件格式或供應(yīng)商的基本軟件包進(jìn)行更改時(shí),這些腳本往往很脆弱并且會(huì)中斷。

這種開發(fā)模式產(chǎn)生的***一個(gè)問(wèn)題是依賴第三方。如果硬件供應(yīng)商的映像更改不適合企業(yè)的設(shè)計(jì),則可能需要投入大量時(shí)間進(jìn)行調(diào)整。

分布式構(gòu)建系統(tǒng)

這種為應(yīng)用程序創(chuàng)建和維護(hù)映像的方法依賴于與目標(biāo)硬件分離的目標(biāo)映像的生成。這里的開發(fā)人員工作流程類似于使用供應(yīng)鏈管理(SCM)系統(tǒng)的標(biāo)準(zhǔn)軟件開發(fā);映像可以通過(guò)工具完全構(gòu)建,每個(gè)開發(fā)人員都可以獨(dú)立工作。通過(guò)編輯元數(shù)據(jù)文件(腳本、配方、配置文件等)對(duì)系統(tǒng)進(jìn)行更改,然后重新運(yùn)行工具以生成更新的映像。然后使用供應(yīng)鏈管理(SCM)系統(tǒng)管理這些元數(shù)據(jù)文件。各個(gè)開發(fā)人員可以將***的更改合并到他們的工作副本中,以生成他們的開發(fā)映像。在這種情況下,開發(fā)人員可以避免相關(guān)的瓶頸。

然后,構(gòu)建系統(tǒng)使用標(biāo)準(zhǔn)供應(yīng)鏈管理(SCM)技術(shù)生成發(fā)布映像,以從所有開發(fā)人員處獲取更改。

以這種方式工作可以增加開發(fā)團(tuán)隊(duì)的規(guī)模,而不會(huì)降低開發(fā)人員的工作效率。所有工程師都可以獨(dú)立工作。此外,這種設(shè)置可確保企業(yè)的構(gòu)建可以重現(xiàn)。使用標(biāo)準(zhǔn)供應(yīng)鏈管理(SCM)工作流可以確保在未來(lái)的時(shí)間重新生成特定的構(gòu)建,從而允許長(zhǎng)期維護(hù),即使上游提供程序不再可用。與使用分布式供應(yīng)鏈管理(SCM)工具類似,還需要有其他策略來(lái)實(shí)現(xiàn)可重現(xiàn)的候選映像。各個(gè)開發(fā)人員擁有自己的源代碼副本,并且可以構(gòu)建自己的測(cè)試映像,但是為了正確的發(fā)布工作,開發(fā)團(tuán)隊(duì)需要建立合并和分支標(biāo)準(zhǔn),并確保所有針對(duì)發(fā)布的更改最終合并到明確定義中。許多上游項(xiàng)目已經(jīng)為這種發(fā)布策略定義了明確的流程(例如,使用* -stable和* -next分支)。

這種方法的主要缺點(diǎn)是缺乏熟悉度。例如,向映像添加包通常需要?jiǎng)?chuàng)建某種配方,然后更新定義,以便包二進(jìn)制文件包含在映像中。這與登錄到正在運(yùn)行的系統(tǒng)時(shí)運(yùn)行apt非常不同。這些系統(tǒng)的學(xué)習(xí)曲線可能令人生畏,但結(jié)果更具可預(yù)測(cè)性和可擴(kuò)展性,在考慮大規(guī)模生產(chǎn)的產(chǎn)品設(shè)計(jì)時(shí)可能是更好的選擇。

OpenEmbedded和Buildroot等專用構(gòu)建系統(tǒng)使用此模型,如debootstrap和multistrap等發(fā)行版打包工具。而Isar、debos和ELBE等新工具也使用這個(gè)基本模型。這樣的選擇還有很多,為企業(yè)的設(shè)計(jì)學(xué)習(xí)一個(gè)或多個(gè)這些包是值得投資的。這些系統(tǒng)的長(zhǎng)期可維護(hù)性和可重復(fù)性將允許企業(yè)生成可重現(xiàn)的構(gòu)建、跟蹤所有源代碼,并消除企業(yè)對(duì)第三方提供商的依賴性,從而降低設(shè)計(jì)風(fēng)險(xiǎn)。

結(jié)論

需要明確的是,分布式模型確實(shí)遇到了與Golden Maste模型相同的一些問(wèn)題,尤其是對(duì)第三方的依賴。這是使用由他人設(shè)計(jì)的系統(tǒng)的結(jié)果,除非企業(yè)選擇自己完全采用的方法,而這種方法在開發(fā)和維護(hù)方面會(huì)帶來(lái)巨大的成本。

對(duì)于原型設(shè)計(jì)和概念驗(yàn)證級(jí)別設(shè)計(jì),以及由少數(shù)開發(fā)人員組成的團(tuán)隊(duì),Golden Master模型可能是正確的選擇,因?yàn)樵诖穗A段的開發(fā)中存在時(shí)間和預(yù)算限制。對(duì)于小批量、高接觸設(shè)計(jì),這可能是一個(gè)可接受的權(quán)衡生產(chǎn)使用。

對(duì)于一般生產(chǎn)用途,團(tuán)隊(duì)規(guī)??蓴U(kuò)展性、映像再現(xiàn)性、開發(fā)人員生產(chǎn)力方面的好處大大超過(guò)了實(shí)現(xiàn)分布式模型的系統(tǒng)的學(xué)習(xí)曲線和開銷。板卡和芯片供應(yīng)商的支持也在這些系統(tǒng)中廣泛使用,降低了使用它們進(jìn)行開發(fā)的前期成本。對(duì)于企業(yè)推出的新產(chǎn)品,建議在認(rèn)真考慮用于生成基本操作系統(tǒng)映像的模型的情況下啟動(dòng)設(shè)計(jì)。如果企業(yè)選擇使用Golden Master模型進(jìn)行原型設(shè)計(jì)以轉(zhuǎn)移到分布式模型,需要確保在企業(yè)的計(jì)劃中為此工作提供足夠的時(shí)間;根據(jù)企業(yè)選擇的具體工具以及要求的范圍,以及企業(yè)的代碼所依賴的軟件包的開箱即用的可用性,其估算值會(huì)有很大差異。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉