溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

從RT-Thread中能學(xué)到什么

發(fā)布時(shí)間:2021-12-17 15:14:28 來(lái)源:億速云 閱讀:154 作者:柒染 欄目:互聯(lián)網(wǎng)科技

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)從RT-Thread中能學(xué)到什么,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

RT-Thread作為一個(gè)有十余年歷史的國(guó)產(chǎn)RTOS,經(jīng)歷了長(zhǎng)時(shí)間的考驗(yàn)和用戶的青睞,目前發(fā)展趨勢(shì)蒸蒸日上,也即將發(fā)布RT-Thread 3.0,其中必然有值得我們思考和學(xué)習(xí)的地方,我們也可以從中汲取到不少寶貴的經(jīng)驗(yàn)。

軟件工程管理

從RT-Thread中能學(xué)到什么

RT-Thread的代碼風(fēng)格是十分優(yōu)秀的。在工作中,很多時(shí)候嵌入式軟件工程師尤其是單片機(jī)軟件工程師使用的芯片資源相對(duì)比較匱乏,RAM和ROM也略顯局促,節(jié)省資源也成了優(yōu)先級(jí)比較高的事情,而這也成了許多工程師代碼不規(guī)范的借口。魯棒性、模塊化、可拓展、高內(nèi)聚、低耦合,這種高大上的名詞總是不絕于耳,相信大家也在各種場(chǎng)景下聽過(guò)不少次??蓲伻ミ@些高大上的名詞,到底什么才是優(yōu)秀的代碼呢?

RT-Thread雖然沒(méi)有強(qiáng)調(diào)過(guò)這些高大上的名詞,但是他毫無(wú)疑問(wèn)用代碼對(duì)這些名詞進(jìn)行了解釋。RT-Thread的代碼風(fēng)格是類Linux/Unix的代碼風(fēng)格。這種風(fēng)格不僅僅體現(xiàn)在函數(shù)、變量的命名規(guī)范,而是深入到了RT-Thread的核心。例如,RT-Thread實(shí)現(xiàn)了一個(gè)設(shè)備驅(qū)動(dòng)框架,將設(shè)備類型分為了字符設(shè)備、塊設(shè)備、網(wǎng)絡(luò)接口設(shè)備、內(nèi)存設(shè)備、CAN設(shè)備、RTC設(shè)備、聲音設(shè)備、圖形設(shè)備、I2C總線設(shè)備等等等等。初始化時(shí)通過(guò)字符串(用戶可自定義的一個(gè)易于記憶的名稱)與設(shè)備驅(qū)動(dòng)綁定,并將驅(qū)動(dòng)注冊(cè)到內(nèi)核,使用時(shí)只需調(diào)用一個(gè)字符串,即可匹配到該設(shè)備,無(wú)需通過(guò)各種頭文件包含和二次封裝,即可實(shí)現(xiàn)隔離和解耦。

RT-Thread提供了Finsh和msh組件,這是非常有特色組件,可以在調(diào)試和開發(fā)中與系統(tǒng)內(nèi)核進(jìn)行便捷的交互,使用十分方便。如何在資源緊缺的嵌入式軟件開發(fā)中,寫出優(yōu)秀的代碼,RT-Thread十分值得我們思考和學(xué)習(xí)。

開源精神

RT-Thread是國(guó)內(nèi)第一梯隊(duì)的嵌入式開源項(xiàng)目,也正因?yàn)殚_源和社區(qū)化,RT-Thread得以茁壯發(fā)展,并在開發(fā)人員中贏得了極高的口碑,有不小數(shù)量的開發(fā)者參與到了RT-Thread的開發(fā)中。RT-Thread實(shí)時(shí)操作系統(tǒng)遵循GPLv2+許可證,實(shí)時(shí)操作系統(tǒng)內(nèi)核及所有開源組件可以免費(fèi)在商業(yè)產(chǎn)品中使用,不需要公布應(yīng)用源碼,沒(méi)有任何潛在商業(yè)風(fēng)險(xiǎn)。這種開源精神十分令人欽佩。

得益于RT-Thread的開源,我們可以將自己的代碼提交,經(jīng)過(guò)審核后合并至master分支,在使用過(guò)程中,當(dāng)某個(gè)模塊出現(xiàn)疑問(wèn)或問(wèn)題,可以直接與開發(fā)者甚至創(chuàng)始人直接進(jìn)行討論,這種體驗(yàn)是十分奇妙,也是其他RTOS所不具備的。

RT-Thread倡導(dǎo)大家參與RT-Thread開發(fā)的代碼編寫、bug修復(fù)、文檔完善等等各項(xiàng)進(jìn)程中。而實(shí)際上一旦自己提交的東西被采納和合并,也是一件十分有成就感的事情。

我們也可以學(xué)習(xí)RT-Thread的開源精神,將自己業(yè)余時(shí)間的代碼開源,或者積極參與到開源項(xiàng)目中,在方便大家使用的同時(shí),通過(guò)進(jìn)行更廣泛的討論,也相當(dāng)于有了更多的人幫助review,接受大家的批評(píng)和建議,實(shí)現(xiàn)自己更快的進(jìn)步。

上述就是小編為大家分享的從RT-Thread中能學(xué)到什么了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI