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

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

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

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

「社區(qū)開發(fā)者說」張詩淇:我的Rust構(gòu)建RT-Thread安全組件項目之旅,獻給所有開源社區(qū)的你

RT-Thread官方賬號 ? 2025-12-27 09:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

編者按:

每年,都有許多像張詩淇同學(xué)一樣的開發(fā)者,走進RT-Thread社區(qū),將一個想法變成代碼,一段經(jīng)歷化為成長。他們的故事,是社區(qū)最寶貴的財富。今天,我們分享這篇充滿真誠與技術(shù)思考的踐行記,它不僅關(guān)于如何為RT-Thread添加Rust支持,更關(guān)于一個年輕開發(fā)者如何找到熱愛的方向、克服挑戰(zhàn)并感受到開源協(xié)作的力量。希望她的經(jīng)歷,能激勵更多正在觀望的你,加入我們的開源大家庭。2026年RT-Thread開發(fā)者大會將于1月17日開啟,歡迎來與我們會面。(文末掃碼報名)


關(guān)于我

我是中南大學(xué)計算機科學(xué)與技術(shù)專業(yè)的研一學(xué)生張詩淇。這段開源經(jīng)歷,恰好發(fā)生在我從本科大四畢業(yè)邁向研究生生涯的那個暑假。

回首本科時光,雖然我在信息安全專業(yè)課上投入了大量精力,但內(nèi)心始終存有一種“懸浮感”。長期以來,我受困于書本理論與實際工程的脫節(jié),鮮有機會參與真正的工業(yè)級項目開發(fā),動手實踐能力成了我明顯的短板。 同時,在面臨升學(xué)與就業(yè)的抉擇時,我也曾一度陷入迷茫:我發(fā)現(xiàn)自己對本專業(yè)以及主流的深度學(xué)習(xí)興趣寥寥,反而是對操作系統(tǒng)等與底層交互的技術(shù)情有獨鐘——這與當(dāng)時身邊大多數(shù)同學(xué)的選擇并不完全一致。

第一次了解到開源活動,是早在大二看到身邊同學(xué)參加開源之夏,當(dāng)時的我十分羨慕他能夠?qū)W(xué)到的知識投入到實踐中,也摩拳擦掌想要嘗試一番,但是當(dāng)時礙于學(xué)業(yè)以及自身的拖延糾結(jié)最后擱置了。在這個承上啟下的假期,我決定不再猶豫,勇敢地嘗試,終于有機會參與開源之夏的實踐,并在此過程中,逐漸感受到開源的魅力。

3edc1720-e2c4-11f0-8ce9-92fbcf53809c.png

AI生成示意圖,請注意分辨


項目實踐

RT-Thread是國內(nèi)以開源中立、 社區(qū)化發(fā)展起來的一款高可靠實時操作系統(tǒng) 。在物聯(lián)網(wǎng)時代,嵌入式設(shè)備的功能日益復(fù)雜,對實時性、功耗和連接性的要求也越來越高,RT-Thread 實時性高、功耗低、占用資源小等特點,非常適用于各種資源受限的場合。而隨著Rust語言在系統(tǒng)級開發(fā)中的廣泛應(yīng)用,社區(qū)也與時俱進地為RT-Thread嵌入式實時操作系統(tǒng)擴展Rust語言支持能力,探索Rust在嵌入式場景中實現(xiàn)內(nèi)存安全與高性能并重的實踐路徑。經(jīng)過暑期的開發(fā),我成功搭建起完整的rust組件目錄。

1. Rust到RT-Thread內(nèi)核的系統(tǒng)調(diào)用安全綁定

undefined C 語言與 Rust 的交互基礎(chǔ)在于 FFI(Foreign Function Interface)。為了讓開發(fā)者能以“Rust 的方式”編寫嵌入式應(yīng)用,需要對 C 接口進行了 bindgen 映射,并進一步實現(xiàn)安全抽象。

我封裝了包括線程管理、內(nèi)存分配、內(nèi)核模塊加載等核心接口。通過 RAII(資源獲取即初始化)機制,將 RT-Thread 的資源生命周期映射到 Rust 的所有權(quán)模型中,從而消除了手動釋放內(nèi)存的風(fēng)險。

2. 動態(tài)模塊加載與符號重定位

為了更符合 Rust 風(fēng)格的使用,參考了 Rust 社區(qū)成熟的 libloading 庫的設(shè)計模式,實現(xiàn)了 RAII 資源管理和類型安全的符號查找。

undefined 編寫了 get_libfn! 過程宏。在嵌入式開發(fā)中,動態(tài)加載多個函數(shù)往往需要編寫大量重復(fù)的樣板代碼。通過這個宏,開發(fā)者只需聲明函數(shù)簽名,即可自動完成打開庫、查找符號、類型轉(zhuǎn)換等一系列復(fù)雜操作,讓動態(tài)調(diào)用的體驗如同調(diào)用本地函數(shù)一樣流暢。

// 一行代碼即可完成動態(tài)庫函數(shù)的安全加載get_libfn!( "libmath.so", // 庫路徑 "add", // 符號名 call_add, // 生成的調(diào)用函數(shù)名 i32, // 返回值類型 a: i32,b: i32 // 參數(shù)列表);

3. no_std 環(huán)境下的入口與段管理

undefined 在嵌入式裸機或內(nèi)核態(tài)開發(fā)中,我們通常處于 no_std(無標(biāo)準(zhǔn)庫)環(huán)境,這意味著無法直接使用標(biāo)準(zhǔn)的 main 函數(shù)。為了改善開發(fā)體驗,我利用 Rust 強大的過程宏(Procedural Macros) 實現(xiàn)了代碼重構(gòu)。

undefined 通過過程宏生成符合 C ABI 的包裝入口,以及必要的鏈接段條目,讓 RT-Thread 能在啟動期或命令掃描階段發(fā)現(xiàn)并調(diào)用對應(yīng)的 Rust 邏輯。

// 開發(fā)者只需添加屬性宏,無需關(guān)心底層注冊邏輯#[msh_cmd_export(name ="hello", desc ="say hello command")]fnmain(param: Param){ println!("Hello RT-Thread");}
// 宏展開后自動生成類似如下的 C ABI 結(jié)構(gòu)并落段:// #[link_section = "FSymTab"]// static __hello_cmd_seg:...


踩坑與填坑

項目初期,導(dǎo)師引導(dǎo)我了解項目的愿景、開發(fā)背景和代碼結(jié)構(gòu);當(dāng)我在開發(fā)過程中遇到困難時,導(dǎo)師為我提供了很多實質(zhì)性的建議和改進方向。印象最深的困難是我在ABI兼容性適配上屢屢碰壁——Rust的所有權(quán)機制與C語言的手動內(nèi)存管理存在天然差異,首次嘗試調(diào)用C內(nèi)核的內(nèi)存分配接口時,頻繁出現(xiàn)內(nèi)存泄漏與懸垂指針問題。連續(xù)一周的調(diào)試毫無進展,我甚至產(chǎn)生了退縮的念頭。關(guān)鍵時刻多虧了我的導(dǎo)師,他沒怪我進度慢,反而耐心地幫我分析了出錯的原因,還分享了社區(qū)此前跨語言開發(fā)的經(jīng)驗;社區(qū)的前輩也熱心地給我建議。在大家的幫助下,我重新梳理了接口封裝邏輯,更換了工具鏈,最終攻克了這一難題。RT-Thread是一個充滿開源精神的、熱情的社區(qū),這次經(jīng)歷讓我明白,開源社區(qū)的價值不僅在于代碼共享,更在于這種互助互鑒的技術(shù)氛圍。


一點碎碎念

站在項目完成的節(jié)點回望,我更加堅信,Rust與RT-Thread的結(jié)合有著巨大的發(fā)展?jié)摿?。這種“互補”既降低了系統(tǒng)開發(fā)的門檻,又保留了高性能。未來,隨著更多開發(fā)者參與進來,我們可以進一步擴展Rust組件的覆蓋范圍,甚至搭建起Rust專屬的軟件包生態(tài)。

對于下一屆開源之夏的參賽者而言,除了RT-Thread社區(qū),開源之夏總共加入了182個社區(qū),囊括了AI、Linux和LLM等數(shù)十種技術(shù)領(lǐng)域。你可以可自主選擇感興趣的項目進行申請,將自己學(xué)到的知識投入應(yīng)用實踐,更能在開源社區(qū)中結(jié)識一群志同道合的伙伴。開源之夏就像一座橋梁,連接了高校學(xué)子與真實的工業(yè)級項目,讓我們有機會將課堂知識轉(zhuǎn)化為有價值的技術(shù)成果。不要害怕嘗試,反正試試也沒什么損失;不要懼怕困難,克服困難的過程才是我們一生受益的經(jīng)歷。


讓改變發(fā)生,從加入我們開始

感謝詩淇同學(xué)的精彩分享!她的代碼貢獻已經(jīng)合并到 RT-Thread主線倉庫,持續(xù)為探索Rust在嵌入式領(lǐng)域的應(yīng)用提供基礎(chǔ)。

如果你也:

對RT-Thread、操作系統(tǒng)、嵌入式等技術(shù)充滿好奇;

尋找一個熱情、互助的技術(shù)交流家園;

渴望獲取更多的實踐經(jīng)驗...

RT-Thread社區(qū)歡迎你!掃碼報名2026年1月17日上海開發(fā)者大會,與我們面對面交流↓

3ef8a480-e2c4-11f0-8ce9-92fbcf53809c.png添加小師弟微信↓,拉你進RT-Thread技術(shù)交流群,找到組織!

3f032d60-e2c4-11f0-8ce9-92fbcf53809c.png

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

    關(guān)注

    3

    文章

    4203

    瀏覽量

    46109
  • RT-Thread
    +關(guān)注

    關(guān)注

    32

    文章

    1611

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    恩智浦亮相RT-Thread 20周年開發(fā)者大會

    日前,“開源向?qū)崱どa(chǎn)力進化啟示錄”全球峰會暨RT-Thread 20周年開發(fā)者大會在上海成功舉辦,恩智浦作為RT-Thread的緊密合作伙伴,在活動中重磅亮相,展示雙方在共建
    的頭像 發(fā)表于 01-26 09:07 ?540次閱讀

    第一財經(jīng):RT-Thread二十周年開發(fā)者大會見證開源生產(chǎn)力變革|媒體視角

    根據(jù)第一財經(jīng)對RT-Thread開發(fā)者大會的現(xiàn)場報道,本次盛會展現(xiàn)了開源技術(shù)從社區(qū)走向產(chǎn)業(yè)的完整路徑。視頻鏡頭捕捉到三個關(guān)鍵維度:RT-Thread
    的頭像 發(fā)表于 01-24 14:37 ?497次閱讀
    第一財經(jīng):<b class='flag-5'>RT-Thread</b>二十周年<b class='flag-5'>開發(fā)者</b>大會見證<b class='flag-5'>開源</b>生產(chǎn)力變革|媒體視角

    社區(qū)開發(fā)者RT-Thread 的不解之緣

    其實早在十幾年前,就已經(jīng)接觸過RT-Thread了。那時候,熊總還在公司任職,尚未獨立創(chuàng)業(yè)。作為一名資深電子愛好,經(jīng)常會組織其他電子愛好
    的頭像 發(fā)表于 01-13 17:38 ?721次閱讀
    <b class='flag-5'>社區(qū)</b><b class='flag-5'>開發(fā)者</b><b class='flag-5'>說</b>:<b class='flag-5'>我</b>與 <b class='flag-5'>RT-Thread</b> 的不解之緣

    開發(fā)者RT-Thread大會「實在」指南:技術(shù)、開發(fā)板與真誠的見面禮

    各位開發(fā)者感謝各位一直以來對RT-Thread社區(qū)的參與和支持,本周六我們將和大家一起迎來我們的20周年開發(fā)者大會。為了回饋一直以來與RT-Thre
    的頭像 發(fā)表于 01-13 17:38 ?418次閱讀
    給<b class='flag-5'>開發(fā)者</b>的<b class='flag-5'>RT-Thread</b>大會「實在」指南:技術(shù)、<b class='flag-5'>開發(fā)</b>板與真誠的見面禮

    月底開獎|「開源旅行團,組隊報名贏大獎」RT-Thread 20 周年暨開發(fā)者大會邀您參加 | 活動報名

    (周六)在上海舉行“RT-Thread二十周年慶典暨開發(fā)者大會”,在慶祝二十周歲生日之際,以“開源向?qū)崱?,打造“AI智能時代基礎(chǔ)軟件平臺”為核心議題,召集全球開發(fā)
    的頭像 發(fā)表于 12-25 14:58 ?456次閱讀
    月底開獎|「<b class='flag-5'>開源</b>旅行團,組隊報名贏大獎」<b class='flag-5'>RT-Thread</b> 20 周年暨<b class='flag-5'>開發(fā)者</b>大會邀您參加 | 活動報名

    RT-Thread 20周年開發(fā)者大會特別邀請:帶上的故事,遇見我們的傳奇?。顒訄竺?/a>

    僅是RT-Thread的成長史,更是每一位開發(fā)者共同書寫的故事。值此RT-Thread誕生20周年之際,我們誠摯邀請您——和我們一同走過這段旅程的開發(fā)者朋友,分享您與
    的頭像 發(fā)表于 12-04 17:43 ?1499次閱讀
    <b class='flag-5'>RT-Thread</b> 20周年<b class='flag-5'>開發(fā)者</b>大會特別邀請:帶上<b class='flag-5'>你</b>的故事,遇見我們的傳奇?。顒訄竺? />    </a>
</div>                              <div   id=

    2025開放原子開發(fā)者大會旋武開源社區(qū)Rust分論壇成功舉辦

    11月22日,2025開放原子開發(fā)者大會——旋武開源社區(qū)Rust分論壇在北京順利召開。論壇以“共建中國Rust生態(tài)”為核心主題,匯聚京東、華
    的頭像 發(fā)表于 11-27 14:55 ?657次閱讀

    社區(qū)之星】歐小龍——保護的好奇心:它是所有創(chuàng)造力的源泉

    / RT-Thread / FreeRTOS 等主流嵌入式操作系統(tǒng) 熟悉ARM/RISC-V芯片開發(fā) 熟悉車規(guī)功能安全流程認(rèn)證和產(chǎn)品認(rèn)證 熟悉車載CIS芯片開發(fā) 具備
    發(fā)表于 11-26 16:31

    RT-Thread榮膺開放原子開源先鋒項目,社區(qū)開發(fā)者斬獲“開源貢獻之星”|新聞速遞

    近日,2025開放原子開發(fā)者大會在京開幕。大會舉行了“中國開源創(chuàng)新力量致謝儀式”,向操作系統(tǒng)、數(shù)據(jù)庫、人工智能三大技術(shù)領(lǐng)域28個開源先鋒項目中作出卓越貢獻的47位
    的頭像 發(fā)表于 11-24 18:48 ?449次閱讀
    <b class='flag-5'>RT-Thread</b>榮膺開放原子<b class='flag-5'>開源</b>先鋒<b class='flag-5'>項目</b>,<b class='flag-5'>社區(qū)</b><b class='flag-5'>開發(fā)者</b>斬獲“<b class='flag-5'>開源</b>貢獻之星”|新聞速遞

    2025開放原子開發(fā)者大會旋武社區(qū)Rust分論壇即將啟幕

    在數(shù)字化轉(zhuǎn)型持續(xù)深化、系統(tǒng)安全與性能需求愈發(fā)迫切的當(dāng)下,Rust憑借強大的內(nèi)存安全、高并發(fā)性能和卓越的開發(fā)者體驗,正成為重塑軟件開發(fā)疆界的關(guān)
    的頭像 發(fā)表于 11-13 10:00 ?586次閱讀

    2025年RT-Thread開發(fā)者巡回培訓(xùn)報名正式啟動!

    親愛的RT-Thread社區(qū)成員們:新程再啟,共赴熱愛!2025年RT-Thread開發(fā)者巡回培訓(xùn)正式啟動報名!今年,我們選擇了西安、武漢、北京、杭州、深圳、上海、成都這7座城市,為大
    的頭像 發(fā)表于 09-27 10:39 ?1959次閱讀
    2025年<b class='flag-5'>RT-Thread</b><b class='flag-5'>開發(fā)者</b>巡回培訓(xùn)報名正式啟動!

    9.20上海見!RT-Thread睿賽德將亮相具身智能上海開發(fā)者Meetup,解讀異構(gòu)通信與虛擬化技術(shù)|活動預(yù)告

    9月20日下午,AGIROS開源社區(qū)將聯(lián)合智元開發(fā)者社區(qū),于上海模速空間舉辦開發(fā)者Meetup,聚焦具身智能與機器人
    的頭像 發(fā)表于 09-16 22:12 ?769次閱讀
    9.20上海見!<b class='flag-5'>RT-Thread</b>睿賽德將亮相具身智能上海<b class='flag-5'>開發(fā)者</b>Meetup,解讀異構(gòu)通信與虛擬化技術(shù)|活動預(yù)告

    RT-Thread 遇上 Rust安全內(nèi)核 RusT-Thread 的誕生

    大家好,我們是中國科學(xué)技術(shù)大學(xué)操作系統(tǒng)原理與設(shè)計(H)課oooooS小組。這個項目是我們的課程大作業(yè):參考RT-Thread架構(gòu),使用Rust搭建一個原生的嵌入式操作系統(tǒng)內(nèi)核。初識Rust
    的頭像 發(fā)表于 08-02 11:03 ?3533次閱讀
    <b class='flag-5'>RT-Thread</b> 遇上 <b class='flag-5'>Rust</b>:<b class='flag-5'>安全</b>內(nèi)核 <b class='flag-5'>RusT-Thread</b> 的誕生

    RT-Thread榮獲2025優(yōu)秀開源項目 | 新聞速遞

    6月底,RT-Thread睿賽德受邀參與由上海開源信息技術(shù)協(xié)會主辦的2025上海開源創(chuàng)新精英薈。上海市商委副主任杰出席會議并致辭。RT-Threa
    的頭像 發(fā)表于 07-04 09:04 ?2635次閱讀
    <b class='flag-5'>RT-Thread</b>榮獲2025優(yōu)秀<b class='flag-5'>開源</b><b class='flag-5'>項目</b> | 新聞速遞

    RT-Thread審核團招募: 深度參與開源RTOS社區(qū)治理與演進

    開源實時操作系統(tǒng),正持續(xù)優(yōu)化社區(qū)協(xié)作流程,現(xiàn)面向全球開發(fā)者招募審核團(ReviewTeam)成員,共同維護代碼質(zhì)量,推動RT-Thread生態(tài)繁榮發(fā)展!什么是
    的頭像 發(fā)表于 05-21 18:02 ?1250次閱讀
    <b class='flag-5'>RT-Thread</b>審核團招募: 深度參與<b class='flag-5'>開源</b>RTOS<b class='flag-5'>社區(qū)</b>治理與演進