 嵌(qian)入式軟件需要設計軟件框架嗎
							時間:2020-05-28      來源:未知
							嵌(qian)入式軟件需要設計軟件框架嗎
							時間:2020-05-28      來源:未知 
							提起嵌入式大家都并不陌生,可能對于嵌入式軟件方面會有些問題,這回小編是來給大家介紹嵌入式軟件需不需要設計框架,有想要了解的學員可以一起來看看哦。
一:嵌入式軟件需要設計軟件框架嗎?
	
1)在接手第(di)一個項目的(de)(de)時(shi)(shi)候,我認為:簡單的(de)(de)單片機程序不需(xu)要(yao)設計(ji)軟甲框(kuang)架(jia),畢竟軟件框(kuang)架(jia)的(de)(de)設計(ji)需(xu)要(yao)時(shi)(shi)間和實踐去驗(yan)證其正確性(xing)和穩(wen)定性(xing),更何況在生產規模不大和需(xu)要(yao)變(bian)更少的(de)(de)情況下設計(ji)軟件框(kuang)架(jia)或許會延長了開發(fa)時(shi)(shi)間,造成(cheng)開發(fa)成(cheng)本的(de)(de)上升。
2)但從2015年年底的(de)(de)(de)時(shi)候,因為一個項目亟需修改功能,而在此之前我(wo)并沒有認真(zhen)設(she)計(ji)軟(ruan)件(jian)(jian)整體架(jia)構,一直(zhi)都是沿用一個大(da)循環(huan)的(de)(de)(de)模式去實現基本功能。最后(hou),修改的(de)(de)(de)時(shi)間相當長久,這(zhe)里有經驗不足的(de)(de)(de)問題。隨著(zhu)接下來的(de)(de)(de)項目往(wang)復雜、多功能化的(de)(de)(de)變化,我(wo)認為我(wo)有需要設(she)定一個較穩定的(de)(de)(de)嵌入(ru)式軟(ruan)件(jian)(jian)框架(jia)。
3)綜上所述(shu),得知即使(shi)嵌入(ru)式軟(ruan)件代碼量少、功能簡(jian)單都(dou)(dou)不能缺少軟(ruan)件架構(gou)的(de)建立。我們(men)都(dou)(dou)知道(dao),嵌入(ru)式是軟(ruan)件硬件高度結合(he)的(de)產物,它(ta)的(de)維護成(cheng)本(ben)甚至(zhi)高于一般的(de)軟(ruan)件設計。
二(er):嵌入式(shi)軟件需(xu)要怎么樣的軟件框架?
嵌入式軟(ruan)件(jian)的特(te)定是:
a)嵌入式軟(ruan)(ruan)件(jian)(jian)高(gao)度依賴于硬件(jian)(jian)。硬件(jian)(jian)會(hui)在不同方面(mian)上對軟(ruan)(ruan)件(jian)(jian)設(she)計設(she)定“天生”的限制,而(er)軟(ruan)(ruan)件(jian)(jian)對這種類(lei)型的限制是不能(neng)抗拒的。
b)硬件的(de)(de)變更(geng)會(hui)對(dui)嵌入(ru)式軟件造成巨大的(de)(de)影響。只有(you)(you)資深(shen)軟件工程師會(hui)對(dui)不同的(de)(de)硬件接口等有(you)(you)深(shen)入(ru)的(de)(de)理解,但事實(shi)上(shang)并非所有(you)(you)人都具(ju)備這樣(yang)的(de)(de)開發能力(li),尤其是想博主一樣(yang)的(de)(de)學生(sheng)。
c)嵌入式軟件(jian)整個過程都是在硬(ying)件(jian)上進(jin)行的(de)(de)。除了特殊功(gong)能(neng)(neng)和非(fei)功(gong)能(neng)(neng)(即需求之外,包括邏輯等)問題(ti)(ti)是單(dan)純的(de)(de)軟件(jian)設計問題(ti)(ti),其余都必(bi)須要配(pei)合(he)到硬(ying)件(jian)工程師去(qu)調試(shi)測試(shi)。
d)嵌入(ru)式軟(ruan)件(jian)設計出來(lai)的(de)產品往往是(shi)需要(yao)高度(du)穩(wen)定性。因為,產品是(shi)用戶能夠觸摸到的(de),這個(ge)用戶體驗是(shi)用戶最直接的(de),我們無可避免去考慮各種各樣的(de)特殊要(yao)求去適應高度(du)的(de)穩(wen)定性。
e)同(tong)樣是(shi)受限于硬件(jian)(jian)(jian)問題(ti),嵌入(ru)式(shi)軟(ruan)件(jian)(jian)(jian)設(she)(she)計大部(bu)分是(shi)面向MCU、SOC等,這樣就造(zao)成(cheng)了不(bu)同(tong)的(de)硬件(jian)(jian)(jian)平臺(tai)(tai)對軟(ruan)件(jian)(jian)(jian)設(she)(she)計造(zao)成(cheng)影響,最明顯的(de)就是(shi)內存問題(ti),堆(dui)棧到(dao)底夠用否?軟(ruan)件(jian)(jian)(jian)設(she)(she)計方(fang)案有可能因為硬件(jian)(jian)(jian)平臺(tai)(tai)的(de)不(bu)同(tong)而發生(sheng)了不(bu)同(tong)的(de)改(gai)變,比(bi)如我(wo)之(zhi)前(qian)做一個項目包含了大數據(ju)量的(de)傳(chuan)輸(shu)工(gong)作(zuo),那我(wo)就需要將cpu和內存都留給數據(ju)以完成(cheng)傳(chuan)輸(shu)工(gong)作(zuo),這時間內,我(wo)若在(zai)再去進行同(tong)樣消耗資源的(de)操作(zuo)就會使得軟(ruan)件(jian)(jian)(jian)崩潰。
f)嵌入(ru)式產品同時(shi)還需(xu)要實現較多(duo)復雜的(de)功能。如今的(de)互聯網時(shi)代提出了更加高端的(de)設備(bei)要求,機器人(ren)的(de)機器學習、機器視覺等都需(xu)要GPU的(de)進一(yi)步升級。而這時(shi)候也需(xu)要軟件的(de)多(duo)次升級。
以上介紹的就是嵌入式軟件需不需要設計框架了,對于嵌入式的框架設計還是有特定的要求的,如果對嵌入式還有什么疑問都可以來咨詢哦。

